Every Nexo message supported by Aera, with all fields and full examples.
The Terminal API is how your ECR talks to Aera terminals. It uses Nexo Retailer messages: your ECR sends a request, and the terminal answers with a response. Use it to take payments, refunds and gift card payments, and to close the day.
How a payment works
- Open a session. Send Login when the ECR starts.
- Take the payment. Send Payment. While the customer pays, the terminal sends Display messages, so you can show the status to the cashier.
- Read the result. Use the Payment response. If you don't get one, ask with TransactionStatus before you charge the customer again.
- Close the day. Send Reconciliation.
sequenceDiagram
participant E as Your ECR
participant T as Aera terminal
E->>T: Login
T-->>E: Login response
E->>T: Payment
T-->>E: Display (status for the cashier)
T-->>E: Payment response
Note over E,T: No response? Send TransactionStatus
E->>T: Reconciliation (end of day)
T-->>E: Reconciliation response
All messages at a glance
| Message | Class | Used for |
|---|---|---|
| Message header | – | Header fields in every message |
| Login | Service | Open a session |
| Logout | Service | Close a session |
| Payment | Service | Purchase, loyalty, cashback, cash advance, cash deposit, refund |
| CardAcquisition | Service | Read the card before paying; identify or onboard customers |
| EnableService | Service | Stop after CardAcquisition |
| Abort | Service | Cancel a request in progress |
| Reversal | Service | Undo the last transaction |
| TransactionStatus | Service | Result of an earlier transaction |
| StoredValue | Service | Activate and load gift cards |
| BalanceInquiry | Service | Gift card balance |
| Reconciliation | Service | Close a period, get totals |
| Diagnosis | Service | Check connectivity |
| Display | Device | Status and result screens |
| PIN | Device | PIN entry controlled by the ECR |
| Input | Device | Customer or cashier input (onboarding, BankAxept backup) |
| Event | Event | Notifications from the terminal |
Service messages are requests from the ECR. Device messages control the terminal's screen and keypad. Event messages come from the terminal without being asked.
Before you start
| You need | Where |
|---|---|
| A connection from your ECR to the terminal | Connect your ECR |
| The fields every message starts with | Message header |
| What response codes mean | Response codes |
Field tables show nesting with indented ↳ names. A field belongs to the nearest less-indented row above it.
New to the Terminal API?Start with the guide: Implement the payment flow.