You can adjust tip for a Sale transaction two ways:

  1. Use DejavooResponseSale from Process Sale

  2. Prepare request with Tip Adjust transaction type

Use DejavooResponseSale

After Tip adjust process is completed then you get updated DejavooResponseSale, because Tip Adjust operation updates Sale record on a terminal so we use the same DB structure.

For Sale and Tip Adjust should be equal Reference ID, this ID can not be changed through Tip Adjust transaction

Request with Tip Adjust transaction type

DejavooPaymentType paymentType;
double amount;
double tip;
String refId;
String acntLast4;
String invoiceNumber;

// Preparing request
DejavooTransactionRequest request = new DejavooTransactionRequest();
request.setPaymentType(paymentType);
request.setTransactionType(DejavooTransactionType.TipAdjust);

request.setAmount(amount);
request.setTip((float) tip);
request.setReferenceId(refId);
request.setAcntLast4(acntLast4);
request.setTickerNumber(invoiceNumber);

DejavooTerminal terminal = getTerminal();

// Sending request
terminal.sendTransactionRequest(request, new IRequestCallback<DejavooTransactionResponse>() {
    @Override
    public void onResponse(DejavooTransactionResponse response) {

    }

    @Override
    public void onError(DejavooThrowable e) {

    }
});