Capture
Authentication
Bearer authentication of the form Bearer <token>, where token is your auth token.
Bearer authentication of the form Bearer <token>, where token is your auth token.
The capture request is the second step the merchant POS will call when the customer hangs up the pump and the fuel transaction is completed.
Ensure the transaction_id and payment_code pair match a previously authorized transaction.
The transaction_time_ms should be the epoch time in millis of when the customer completed the transaction.
The amounts (volume and retail costs) are within the bounds of the authorization response.
If the volume or retail costs are outside of the authorization response amounts, the capture will be declined.
A transaction may only be captured once. Additional captures will error out (except in the case where the request body is identical).
Duplicate requests for the same transations and capture amounts will return identical responses.
Since pumps are not precise instruments, we suggest that the volume and cost amounts are capped (i.e. via min(auth_volume, actual_volume)), and the pump hardware is configured to release less than the authorized amounts (e.g. 0.5G less).
Using the Merchant Initiated Flag
You may do a capture without an explicit authorization by using the merchant_initiatedflag. This is useful in cases when there’s an overfill, or as part of a refund + recapture flow. To ensure this works correctly, send the same payment_code as original transaction but a new transaction_id.