API overview
This section will guide you through the process of setup the APOLLO, and how the POS integration works with the APOLLO. From that you can start building your App integration that supports contactless, contact card, and digital wallet payments.
Overview
The payment API uses JSON messages to communicate with the terminal. The message outlined in the API reference.
Your apps can communicate with the APOLLO over the local network.
Before you start
Before you start, you can request an APOLLO Developer Kit (DevKit) by contacting us.
Please refer APOLLO device spec for the hardware spec.
Endpoint
The endpoint for local communication use the format:
http://{{baseUrl}}/{{module}}/{{apiVersion}}/{{request}}
baseUrl
: the IP of the APOLLO terminalmodule
:sp
for POS APIapiVersion
: the current version of APIv1
request
:payment
,enquiry
,settlement
,receipt
available
Request type
There are 4 main POS API request types:
Payment -
payment
Enquiry -
enquiry
Settlement -
settlement
Receipt -
receipt
Payment flow
Throughout the API document, we assume that the following entities are:
- POS - your app that integrated on/ with APOLLO SmartPOS system
- Sale App & Payment Core - the built-in applications for handling request, processing transaction, handling card reader, camera for QR wallet, cardholder verification and connection to the acquirer host.
- Merchant - the user that uses APOLLO for accepting payment from their customer.
The payment flow as follows:
- The merchant uses the POS app to set the charging amount. In addition to that, the merchant can also specify the preferred payment method.
- The POS app send a
PaymentRequest
to Sale App and the Sale App retrieve necessary data before passing it to the Payment Core. - On the APOLLO, it switches the screen for transaction processing, connecting to the host and cardholder verification if necessary.
- When the transaction is done, the app returns a
PaymentResponse
to the POS app.
As shown in the following diagram: