Make a payment
Send a Payment request, show the terminal status to the cashier, and decide the outcome from the response.
Taking a payment is the core of every integration. Your ECR sends a Payment request, the terminal asks the customer for a card, and the response tells your ECR the result.
Requirements
| Requirement | Description |
|---|---|
| Integration | Local integration or Cloud integration |
| Before you start | Your ECR is connected and logged in. See Connect your ECR |
| Message | Payment |
How it works
- Your ECR sends a Payment request with the amount.
- The terminal asks the customer to present the card, and to enter the PIN if needed. Meanwhile it sends Display messages to your ECR.
- Your ECR shows the Display messages to the cashier.
- The terminal sends the Payment response with the result and the receipt data.
Make a payment request
Send a Payment request with these fields:
| Field | Value |
|---|---|
SaleData.SaleTransactionID.TransactionID | Your own transaction ID (max 35 characters) |
SaleData.SaleTransactionID.TimeStamp | When your ECR sent the request |
PaymentTransaction.AmountsReq.RequestedAmount | The amount |
PaymentData.PaymentType | Normal |
The example request and every field are on Payment.
Handle the result
Always use AeResponseCode to decide whether the payment went through. See Response codes. The acquirer's own code (AeAcquirerResponseCode) is for logging only.
AeResponseCode | Result | Meaning | What to do |
|---|---|---|---|
000 | Success | Approved | Complete the sale |
002 | Partial | Only part of the amount was approved. AuthorizedAmount shows the approved part | Collect the rest another way, for example with another payment |
| Any other code | Failure | Declined, aborted or failed | Don't complete the sale. Check ErrorCondition and the code's meaning in Response codes |
- Print receipts as they are. Don't parse the receipt text: it can change between software versions. See Generate receipts.
- Keep Aera's transaction ID (
POITransactionID) from the response. You need it for a Reversal.
Optional fields
- Pass product data to the acquirer in
AeSaleToHostData, such as a voucher product code or the purchased items. Use only keys Aera supports (VoucherProductcode,PurchasedItems). See Voucher product codes. - Ignore unknown data from the host. The response can carry
AeHostToSaleData. Skip any structure your ECR doesn't know. - Show a text on the approval screen with
AeDisplayText, such as "Loyalty registered". It is shown only for approved payments. - Turn on Accessibility mode for the customer with
AeAccessibilityMode=true. - Currency conversion (DCC) is handled by the terminal. Your messages don't change. Only the receipt text does.
Troubleshooting
- No response. The result is unknown: the payment may have been approved. Never charge twice. See Verify transaction status.
- Failure. Check
ErrorCondition,AeResponseCodeandAdditionalResponse. See Handle responses and timeouts.
Testing
Test that approved, declined, aborted and partly approved payments are all handled. See Test and get approved.
Updated 10 days ago
Did this page help you?