eftpos for Unified Payments API
Last updated: September 16, 2026
To accept eftpos payments, you must request a payment using card details or tokenized card data.
Checkout.com prioritizes routing your transaction through eftpos when you use a co-branded card. If routing to eftpos fails, the transaction falls back to the signature scheme.
Call the Request a payment endpoint:
Note
Eftpos is a single message system, so it does not support delayed or partial capture. Always set capture to true in your payment request.
post
https://{prefix}.api.checkout.com/payments/
1{2"source": {3"type": "card",4"number": "4873400000000024",5"expiry_month": 12,6"expiry_year": 20277},8"3ds": {9"enabled": true,10"attempt_n3d": true11},12"amount": 1000,13"capture": true,14"currency": "AUD",15"payment_type": "Regular"16}
When you receive a payment_captured webhook, it indicates that the transaction completed successfully.
You can process merchant-initiated transactions (MITs) to store your customer's card details and use them for future payments.
Supported MIT transactions include:
- Recurring payments
- Installment payments
- Unscheduled payments
You can process recurring payments using eftpos. For example, to charge a subscription service.
- Perform an initial cardholder-initiated transaction (CIT) to store the debit card details. For requirements, see Store card details during an initial recurring transaction.
Provide"payment_type": "Recurring". - Process subsequent payments using any previous payment ID. For requirements, see Request a payment in a subsequent MIT.
1{2"source": {3"type": "token",4"token": "tok_4gzeau5o2uqubbk6fufs3m7p54"5},6"amount": 6500,7"currency": "AUD",8"payment_type": "Recurring",9"capture": true,10"merchant_initiated": false,11"3ds": {12"enabled": true,13"challenge_indicator": "challenge_requested_mandate"14}15}
1{2"source": {3"type": "token",4"token": "tok_4gzeau5o2uqubbk6fufs3m7p54"5},6"amount": 6500,7"currency": "AUD",8"payment_type": "Recurring",9"merchant_initiated": true,10"previous_payment_id": "pay_y3oqhf46bzujizoaad9dsdz2vw",11"3ds": {12"enabled": true,13"challenge_indicator": "challenge_requested_mandate"14}15}
After you've requested the payment, you can use the id returned in the payment response to retrieve details about the payment.
For more information, see Get payment details.
Eftpos supports full and partial refunds.
You can process refunds using the Dashboard or the Refund API.
Eftpos does not support voids, because it's a single message system that always uses auto-capture.
In Sandbox:
- Create a test payment request.
- Set
source.numberto any of the cards in the following table, depending on the outcome you want to simulate:
| PAN | Scheme | Issuer | Eftpos code | Eftpos meaning |
|---|---|---|---|---|
| Visa | CommBank |
| Approved |
| Visa | ANZ |
| Approved |
| Visa | Westpac |
| Approved |
Any PAN not listed will also return code 00 (Approved) via the default approval scenario.
Use any of the following card numbers to test the corresponding 3DS flow:
| PAN | Network | 3DS flow |
|---|---|---|
| eftpos | Successful authentication |
| eftpos |
|
| eftpos |
|
| eftpos | Authentication rejected |
| eftpos | Could not perform authentication |
| eftpos | Not authenticated |
| eftpos / Mastercard | Successful authentication |
| eftpos / Mastercard |
|
| eftpos / Mastercard |
|
| eftpos / Mastercard |
|
| eftpos / Mastercard | Authentication rejected |
| eftpos / Mastercard | Could not perform authentication |
| eftpos / Mastercard | Not authenticated |
| eftpos / Visa | Successful authentication |
| eftpos / Visa |
|
| eftpos / Visa |
|
| eftpos / Visa |
|
| eftpos / Visa | Authentication rejected |
| eftpos / Visa | Could not perform authentication |
| eftpos / Visa | Not authenticated |