Sale Adjustment
Change the authorized sale amount before batch closure.
Adjust allows you to modify the previous transaction amount, either by increasing or decreasing it. Adjustments help reduce declines and improve customer experience by avoiding multiple holds on funds.
Note: You need to specify the entire new Sale amount and not the difference.
When to Use Sale Adjustment
- Pricing Corrections: A discount, coupon, or promotion is applied after checkout.
- Order Changes: An item is removed or replaced before the transaction settles.
- Manual Review Fixes: A pricing or tax error is identified shortly after the sale is created.
Industry Example: US Restaurants – Tips
A restaurant processes a sale for $45 when the customer pays their bill. The customer later adds a $10 tip on the receipt. Before the transaction settles, the restaurant adjusts the sale amount to $55 to include the tip.
Sale can not be adjusted once it has moved to
SETTLEDstatus. The Sale must be inAPPROVEDstatus and its associated Batch is inOPENstatus. So, before attempting an adjustment -
- Use GET
/checkout/v3/payment/{id}endpoint to verify that the payment is inAPPROVEDstatus; OR- Use GET
/checkout/v3/batch/{id}?echo=trueendpoint to verify the batch is inOPENstatus.
How it Works
-
To adjust a Sale, make a PUT request to
/checkout/v3/payment/{id}endpoint that includes:Parameter Description ternderTypeSet to CARDfor card transactions.paymentTokenSecure payment token for the authorization to be adjusted. amountNew amount (in US currency units). Can be higher or lower than the previously mentioned amount. merchantIdMerchant's unique identifier. -
Once the payment request is submitted, our system performs a series of system-level validations before sending the transaction to the card network. These validations check for:
- Missing or invalid required fields
- Incorrect parameter formats or values
- Merchant configuration or permission issues.
If any validation fails, the request is rejected immediately, and an error response is returned. You must correct the issue and resubmit the request. For a complete list of validation errors and how to resolve them, refer to the System Error Codes guide.
-
If all system-level validations pass, our system authorizes the payment with the issuer, captures the funds instantly. The GET
/checkout/v3/payment/{id}endpoint gives a response with new amount.amount: New amount as specified in the Adjust API.status: Status of the payment. You will also receive the result in a webhook.
-
Wait for the Adjust webhook to learn the outcome of the request. You can store the
idandpaymentTokenfor:- Retrieving payment details later.
- Voiding the payment (if needed).
- Issuing partial or full refunds.
If the card has insufficient funds, the network returns a Declined status with the response:
"responseStatus": "Decline - Insufficient funds"
Updated 7 days ago