question

s1mar avatar image
s1mar asked Emily L answered

Custom tender & Payment Connector, using Pre-Auth and Capture payment

After the pre-auth and the capture payment process, the clover app responsible for handling the card payment shows my adjusted amount, but when I close my custom tender app and go back to the sales app, it still shows the old amount. In the transactions app, I can see one as NOT CLOSED and the successful payment has the old non adjusted amount against it.

P.S: I am setting the result as OK and passing in an object which has:
data.putExtra(Intents.EXTRA_AMOUNT, response.getAmount());
data.putExtra(Intents.EXTRA_SERVICE_CHARGE_AMOUNT, this.mServiceFee * 100);
data.putExtra(Intents.EXTRA_CLIENT_ID, randomID);
data.putExtra(Intents.EXTRA_TENDER,response.getAmount());
PaymentConnector
10 |2000

Up to 2 attachments (including images) can be used with a maximum of 512.0 KiB each and 1.0 MiB total.

1 Answer

Emily L avatar image
Emily L answered
You can’t make pre-authorization or auth/completion transactions with custom tenders. If you make a payment with a custom tender, the amount can’t later be adjusted like with a credit card. In this way, custom tenders are more like cash: if you want to give a tip at a restaurant, you could add the extra amount after your card was processed if you were using a card, but you would pay the full order total (including tip) all at once if you were using cash.

Considering what you’re adding to your extras, though, if you’re only trying to adjust the order total to include the service charge, that would happen earlier in the ordering process. For example, in the Register App or if you call ACTION_CLOVER_PAY, the merchant has the option to add a service charge. If they do, the total is automatically updated to reflect the change before a tender type is even chosen. So, once ACTION_MERCHANT_TENDER or ACTION_CUSTOMER_TENDER calls your custom tender app, any service charge would already have been applied.

In the result you send back, EXTRA_AMOUNT is the only required extra. Note that this is the amount the customer is paying, which can be less than, but cannot exceed the order total amount.

EXTRA_NOTE and EXTRA_CLIENT_ID are optional extras you can apply. Any other extras, like EXTRA_SERVICE_CHARGE_AMOUNT, will be ignored.
10 |2000

Up to 2 attachments (including images) can be used with a maximum of 512.0 KiB each and 1.0 MiB total.

Welcome to the
Clover Developer Community