This document contains the developer guide for third party POS to integrate their POS system with AppsPOS customer loyalty programs/Rewards systems for mobile app users to perform over the counter transactions including voucher redemption and digital payments.
There are a total of 8 APIs that will be made available to third party POS for mobile app integration as listed below:
| API No. | API Description | API Name |
|---|---|---|
| API 1 | Order API | voucher_to_add_cart_from_pos |
| API 2 | Proceed to Payment API | order_to_release_payment |
| API 3 | Payment Status API | check_paid_status |
| API 4 | Cancel Transaction API | cancel_transaction |
| API 5 | Remove Voucher API | remove_voucher_from_pos |
| API 6 | Refund API | refund |
| API 7 | Complete Transaction | payment_completed |
| API 8 | Get Bill Info | order_update_discount_svc_gst |
You can reach out to us at contact@appspos.com if you need technical support on API integration matters.
This API allow mobile app users to receive order details from third-party POS after the QR code from mobile app is scanned and read by third-party POS.
API name: voucher_to_add_cart_from_pos
{
"transaction_qrcode": "QR-20191218-724B-0000005",
"branch_code": "B1",
"invoice_no": "64",
"api_key": "fff426a0-3ddf-43f6-93f9-8a63ce29cb76",
"language_code": "en",
"pos_name": "20171004124370",
"request_signature": "c4661a88d3e68c69690563eeed266c2f761e1aff63a5ba17cd67c9dda61dc8a1",
"data": [
{
"price": -2.00,
"qty": 1,
"special_comment": "",
"product_code": "ITEM01",
"product_name": "Item Discount",
"category_code": "APOSDUM01",
"category_name": "Dummy",
"product_type": "1"
}
]
}{
"status": "1",
"message": "Item(s) added to cart successfully",
"server_time": "2019-12-19 13:44:09",
"data": {
"total_final_amount": 2.34,
"is_zero_dollar_pay": false,
"stop_loading_this_api": false,
"request_signature": "c4661a88d3e68c69690563eeed266c2f761e1aff63a5ba17cd67c9dda61dc8a1",
"response_signature": "e5629be69ea8687ec9a6dc9e501e43fec95a06d0716b0ee5a8b4c177afd4a593",
"last_pos_request_unique_number": "APOS-20191219-76BA-0000001"
}
}| Field name | Data Type | Required | Description |
|---|---|---|---|
| transaction_qrcode | string(50) | M | The QR code value |
| branch_code | string(50) | M | The identification number of the outlet assigned by third party POS |
| invoice_no | string(50) | M | The identification number of invoice |
| api_key | string(50) | M | The code to authenticate the user or calling program to an API |
| language_code | string(2) | M | The language code, set to en for English by default |
| pos_name | string(50) | M | The identification number of the machine assigned by third party POS |
| request_signature | string(500) | M | Digital signature for request verification |
This API allows POS to send additional bill information like discount, service charge, GST, Round Off.
API name: order_update_discount_svc_gst
{
"api_key": "86712516-1668-4169-8440-81db5f5edf1e",
"transaction_qrcode": "QR-20211019-17F4-0000027",
"branch_code": "OCK_AMK",
"invoice_no": "OCK_AMK-19102021065355",
"language_code": "en",
"pos_name": "20210120115451",
"discount": "0.52",
"svc": "1",
"gst": "1",
"round_off": "-0.08",
"request_signature": "28e71c9d306ef7ef339615004bcc06cd51b643a2124a51ec4034414ae7b59e71"
}{
"status": "1",
"show_status": "0",
"message": "MsgResticed",
"server_time": "2021-10-19 16:13:07",
"data": {
"request_signature": "28e71c9d306ef7ef339615004bcc06cd51b643a2124a51ec4034414ae7b59e71",
"response_signature": "82e31e7baa24f55b3af7e6a48ddc618410b84f480884863ecf80f0b5dd8f889d",
"stop_loading_this_api": false,
"calculation_details": {
"sub_total": 3.2,
"gst": 1,
"svc": 1,
"discount": "0.52",
"round_off": "-0.08",
"total_payable": "4.6"
}
}
}This API is to verify that the received total payable matched with POS and to allow user to proceed to payment page.
API name: order_to_release_payment
{
"transaction_qrcode": "QR-20191218-724B-0000005",
"branch_code": "B1",
"api_key": "fff426a0-3ddf-43f6-93f9-8a63ce29cb76",
"language_code": "en",
"pos_name": "20171004124370",
"request_signature": "7563696a7e565a263ba4ae393b835e979e4c026c5752c3c8bd22bf46331d6b8c",
"can_release_for_payment": 1
}{
"status": "1",
"show_status": "1",
"message": "successful",
"server_time": "2019-12-19 13:51:37",
"data": {}
}This API is to check the status of payment upon successful Cart Verification API request. The API will call and time out in 2 mins.
API name: check_paid_status
{
"api_key": "fff426a0-3ddf-43f6-93f9-8a63ce29cb76",
"transaction_qrcode": "QR-20200130-4D03-0000002",
"language_code": "en",
"branch_code": "B1",
"pos_name": "20171004124370",
"payment_status_reference_no": "150",
"request_signature": "ef8f87a3f9be3da6aae98fefe01bc9c2509aca348b17fd218dd0e6dff79b41d7"
}{
"status": "1",
"show_status": "1",
"message": "Payment made sucessfully",
"server_time": "2020-03-05 13:06:28",
"data": {
"request_id": "dbssg-test-registercc-20200203080713",
"transaction_id": "b5dff350-1df6-4594-94e7-b15da43328e7",
"paid_amount": 2.00,
"refund_id": "05032020103628",
"payment_status_reference_no": "150"
}
}This API allow the cancellation of the transaction from third party POS.
API name: cancel_transaction
{
"transaction_qrcode": "QR-20191219-FF99-0000001",
"api_key": "fff426a0-3ddf-43f6-93f9-8a63ce29cb76",
"language_code": "en",
"branch_code": "B1",
"pos_name": "20171004124370",
"request_signature": "ef1740be8c6b03b0eec0d28cf90a5aa3d52598b761679aee84dfd026d5fa1fc5"
}{
"status": "1",
"show_status": "1",
"message": "successful",
"server_time": "2019-12-19 13:56:34",
"data": {}
}This API allows the removal of voucher applied.
API name: remove_voucher_from_pos
{
"transaction_qrcode": "QR-20191219-FF99-0000001",
"api_key": "fff426a0-3ddf-43f6-93f9-8a63ce29cb76",
"language_code": "en",
"branch_code": "B1",
"pos_name": "20171004124370",
"invoice_no": "B1",
"request_signature": "bbe4c18cc50c016dc206bdb1e4f7535fc83d9fc294c6db93046ff7b93ab2507e"
}{
"status": "1",
"show_status": "1",
"message": "successful",
"server_time": "2019-12-19 13:56:34",
"data": {}
}This API allows the reversal of a completed transaction.
API name: refund
{
"api_key": "a5552c47-85e4-4044-a67f-9f3e4a4e5522",
"refund_request_no": "20200512-58A9-0000002",
"branch_code": "OCK_CSM",
"language_code": "zh",
"pos_name": "20171004124370",
"request_signature": "be23d1754c4654286e6505ca24ee4541df4ac4d5e1663f70763cf1e0294248ed"
}{
"status": "1",
"show_status": "1",
"message": "Refund sucessfull",
"server_time": "2020-05-12 13:49:39",
"data": {}
}This API allows to tell AppsPOS that the transaction is completed once we got successful payment (status 1 in payment status API).
API name: payment_completed
{
"api_key": "a5552c47-85e4-4044-a67f-9f3e4a4e5522",
"transaction_qrcode": "QR-20200512-58A9-0000002",
"refund_id": "05032020103628",
"transaction_id": "b5dff350-1df6-4594-94e7-b15da43328e7",
"branch_code": "OCK_CSM",
"language_code": "zh",
"pos_name": "20171004124370",
"request_signature": "be23d1754c4654286e6505ca24ee4541df4ac4d5e1663f70763cf1e0294248ed"
}{
"status": "1",
"show_status": "1",
"message": "Transaction completed successfully",
"server_time": "2020-05-12 13:49:39",
"data": {}
}Need help with API integration? Our technical team is here to assist you.
Email:contact@appspos.com
Response Time:Within 24 hours