Welcome to BigLedger Knowledge Center!

Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Version History

« Previous Version 55 Next »

Installation & Testing

  1. Build and run the Backend Wavelet POS Software.

  2. Connect POS Terminal to the SAME Wi-Fi Network as the device running the Backend Wavelet POS Software. Note down the IPv4 Address of the POS Terminal.

    image-20241217-075034.png
  3. From the POS Terminal, go to Management > Config and then do the following:

    1. Input the System Administrator Password (This will vary, but at the time of writing was ‘88888888’)

    2. Go to EDC

    3. Scroll down to TCP/IP and note down the TCP/IP Port (Again, this will vary, but at the time of writing it was 8080).

  4. Install Postman from this link

    image-20241217-065332.png
  5. Create a WebSocket request

    1. Click on New > WebSocket

      image-20241217-065627.pngimage-20241217-081249.png
    2. Paste the URL as ws://localhost:[INSERT-YOUR-PORT-NUMBER-HERE]/revenue-terminal-websocket?terminalId=[INSERT-TERMINAL-ID-HERE] where [INSERT-YOUR-PORT-NUMBER-HERE] denotes the Port Number of the Backend Console and [INSERT-TERMINAL-ID-HERE] denotes the unique identifier for that POS Terminal.

      image-20241217-081406.png

    3. Click Connect

  6. Create HTTP requests for each endpoint.

    1. Click on New > HTTP

      image-20241217-065627.pngimage-20241217-065641.png
    2. Select the appropriate request method and enter the specific endpoint prefixed with http://localhost:[INSERT-YOUR-PORT-NUMBER-HERE] where [INSERT-YOUR-PORT-NUMBER-HERE] denotes the Port Number of the Backend Console

      image-20241217-065826.png
  7. For each of the HTTP requests created in Postman, do the following:

    1. Set the terminalIp parameter to the IPv4 Address of the POS Terminal

    2. Set the terminalPort parameter to the TCP/IP Port of the POS Terminal

    3. Set the terminalId Parameter to the unique identifier for that specific POS Terminal

    4. If there are any additional parameters for that specific HTTP request, add them.

  8. Send the respective HTTP request.

API Documentation

GET /ping

/revenue-terminals/ping

Pings the terminal to establish a WebSocket connection.

Parameters

terminalIp: The IP address of the terminal

terminalPort: The port number of the terminal for the connection

terminalId: An identifier for the terminal

WebSocket Response (OK)

{
  "pay_resp_error_desc":"OK",
  "pay_function":"05"
}

WebSocket Response (CARD INSERT)

{
  "pay_resp_error_desc":"Card Insert",
  "pay_function":"05"
}

POST /card-sale

/revenue-terminals/card-sale

Processes a card sale transaction.

Parameters

terminalIp: The IP address of the terminal

terminalPort: The port number of the terminal for the connection

terminalId: An identifier for the terminal

payAmount: The monetary amount of the card sale transaction (in decimal format)

WebSocket Response

{
  "pay_resp_issuer_id":"01",
  "pay_resp_error_desc":"APPROVED",
  "pay_function":"01",
  "pay_resp_qr_txn_id":"",
  "pay_resp_invoice_no":"3",
  "pay_resp_scheme":"VISA",
  "pay_resp_batch_no":"1",
  "pay_resp_txn_date":"190902",
  "pay_resp_txn_time":"141130",
  "pay_print_receipt_id":"Y",
  "pay_resp_qr_wallet_id":"",
  "pay_resp_code":"00",
  "pay_resp_card_app_cryptogram":"8B76DB79FBAB8C56",
  "pay_resp_app_label":"VISACREDIT",
  "pay_resp_card_ref_num":"123456789012",
  "pay_camera_mode":"",
  "pay_resp_card_auth_code":"111111",
  "pay_resp_card_aid":"A0000000031010",
  "pay_resp_merch_info":"DEFAULT\n\n\n\n\n",
  "pay_resp_mid":"048800001467398",
  "pay_resp_tid":"50009643",
  "pay_resp_tvr":"0880048000",
  "pay_resp_customer_id":"",
  "pay_type":"01",
  "pay_resp_trace_no":"7",
  "pay_resp_cvm_desc":"PIN VERIFIED\nNOSIGNATURE REQUIRED",
  "pay_resp_card_no":"450920******0252",
  "pay_amount":"100"
}

POST /{paymentProvider}/card-sale

/revenue-terminals/{paymentProvider}/card-sale

Processes a card sale transaction for a specified payment provider.

Parameters

paymentProvider: The specified payment provider (refer to here for the format)

terminalIp: The IP address of the terminal

terminalPort: The port number of the terminal for the connection

terminalId: An identifier for the terminal

payAmount: The monetary amount of the card sale transaction (in decimal format)

POST /cancel-sale

/revenue-terminals/cancel-sale

Cancels the current sale transaction.

Parameters

terminalIp: The IP address of the terminal

terminalPort: The port number of the terminal for the connection

terminalId: An identifier for the terminal

WebSocket Response

{
  "pay_function":"07",
  "pay_resp_code":"00"
}

POST /void-sale

/revenue-terminals/void-card-sale

Voids the current sale transaction.

Parameters should be passed as query parameters.

terminalIp

The IP address of the terminal

terminalPort

The port number of the terminal for the connection

terminalId

An identifier for the terminal

traceNo

The trace number of the transaction to be voided

payAmount

The monetary amount of the sale transaction to be voided (in decimal format)

WebSocket Response

{
  "pay_resp_issuer_id":"01",
  "pay_resp_error_desc":"APPROVED",
  "pay_function":"02",
  "pay_resp_qr_txn_id":"",
  "pay_resp_invoice_no":"3",
  "pay_resp_scheme":"VISA",
  "pay_resp_batch_no":"1",
  "pay_resp_txn_date":"190902",
  "pay_resp_txn_time":"141638",
  "pay_print_receipt_id":"Y",
  "pay_resp_qr_wallet_id":"",
  "pay_resp_code":"00",
  "pay_resp_card_app_cryptogram":"8B76DB79FBAB8C56",
  "pay_resp_app_label":"VISACREDIT",
  "pay_resp_card_ref_num":"123456789012",
  "pay_resp_card_auth_code":"111111",
  "pay_resp_merch_info":"DEFAULT\n\n\n\n\n",
  "pay_resp_mid":"048800001467398",
  "pay_resp_tid":"50009643",
  "pay_resp_tvr":"0880048000",
  "pay_resp_customer_id":"",
  "pay_type":"01",
  "pay_resp_trace_no":"9",
  "pay_resp_cvm_desc":"NO PIN\nNO SIGNATUREREQUIRED",
  "pay_resp_card_no":"450920******0252",
  "pay_amount":"100"
}

POST /settlement

/revenue-terminals/settlement

Processes a settlement request.

Parameters should be passed as query parameters.

terminalIp

The IP address of the terminal

terminalPort

The port number of the terminal for the connection

terminalId

An identifier for the terminal

POST /qr-sale

/revenue-terminals/qr-sale

Processes a QR sale transaction.

Parameters should be passed as query parameters.

terminalIp

The IP address of the terminal

terminalPort

The port number of the terminal for the connection

terminalId

An identifier for the terminal

payAmount

The monetary amount of the QR sale transaction (in decimal format)

WebSocket Response

{
  "pay_resp_issuer_id":"80",
  "pay_resp_error_desc":"SUCCESS",
  "pay_function":"01",
  "pay_resp_qr_txn_id":"2020090222001476870501103854",
  "pay_resp_invoice_no":"2",
  "pay_resp_scheme":"ASP",
  "pay_resp_batch_no":"1",
  "pay_resp_txn_date":"190902",
  "pay_resp_txn_time":"143023",
  "pay_print_receipt_id":"Y",
  "pay_resp_qr_wallet_id":"202009021430236557",
  "pay_resp_code":"00",
  "pay_resp_card_app_cryptogram":"",
  "pay_resp_app_label":"",
  "pay_resp_card_ref_num":"",
  "pay_camera_mode":"02",
  "pay_resp_card_auth_code":"",
  "pay_resp_card_aid":"",
  "pay_resp_merch_info":"DEFAULT\n\n\n\n\n",
  "pay_resp_mid":"000000000000189",
  "pay_resp_tid":"88880001",
  "pay_resp_tvr":"",
  "pay_resp_customer_id":"",
  "pay_type":"02",
  "pay_resp_trace_no":"11",
  "pay_resp_cvm_desc":"SIGNATURE ISREQUIRED",
  "pay_resp_card_no":"284424********2767",
  "pay_amount":"10"
}

POST /{paymentProvider}/qr-sale

/revenue-terminals/{paymentProvider}/qr-sale

Processes a QR sale transaction for a specified payment provider.

Parameters should be passed as query parameters.

paymentProvider

The specified payment provider (refer to here for the format)

terminalIp

The IP address of the terminal

terminalPort

The port number of the terminal for the connection

terminalId

An identifier for the terminal

payAmount

The monetary amount of the QR sale transaction (in decimal format)

POST /qr-void

/revenue-terminals/qr-void

Voids a QR sale transaction.

Parameters should be passed as query parameters.

terminalIp

The IP address of the terminal

terminalPort

The port number of the terminal for the connection

terminalId

An identifier for the terminal

payAmount

The monetary amount of the QR sale transaction to be voided (in decimal format)

WebSocket Response

{
  "pay_resp_issuer_id":"80",
  "pay_resp_error_desc":"SUCCESS",
  "pay_function":"02",
  "pay_resp_qr_txn_id":"2020090222001476870501103854",
  "pay_resp_invoice_no":"2",
  "pay_resp_scheme":"ASP",
  "pay_resp_batch_no":"1",
  "pay_resp_txn_date":"190902",
  "pay_resp_txn_time":"143240",
  "pay_print_receipt_id":"Y",
  "pay_resp_qr_wallet_id":"202009021432433313",
  "pay_resp_code":"00",
  "pay_resp_card_app_cryptogram":"",
  "pay_resp_app_label":"",
  "pay_resp_card_ref_num":"",
  "pay_resp_card_auth_code":"",
  "pay_resp_merch_info":"DEFAULT\n\n\n\n\n",
  "pay_resp_mid":"000000000000189",
  "pay_resp_tid":"88880001",
  "pay_resp_tvr":"",
  "pay_resp_customer_id":"",
  "pay_type":"02",
  "pay_resp_trace_no":"12",
  "pay_resp_cvm_desc":"SIGNATURE IS REQUIRED",
  "pay_resp_card_no":"",
  "pay_amount":"10"
}

POST /qr-inquiry/trace-no

/revenue-terminals/qr-inquiry/trace-no

Processes a QR Sale Inquiry.

Parameters should be passed as query parameters.

terminalIp

The IP address of the terminal

terminalPort

The port number of the terminal for the connection

terminalId

An identifier for the terminal

payAmount

The monetary amount of the sale transaction (in decimal format)

(Optional) traceNo

The trace number of the transaction, if any

(Optional) invoiceNo

The invoice number of the transaction, if any

POST /my-debit-sale

/revenue-terminals/my-debit-sale

Processes a debit sale transaction.

Parameters should be passed as query parameters.

terminalIp

The IP address of the terminal

terminalPort

The port number of the terminal for the connection

terminalId

An identifier for the terminal

payAmount

The monetary amount of the my debit sale transaction (in decimal format)

payAddAmount

The monetary amount of the my debit sale transaction (in decimal format) to be added

POST /installment

/revenue-terminals/installment

Processes an installment sale transaction.

Parameters should be passed as query parameters.

terminalIp

The IP address of the terminal

terminalPort

The port number of the terminal for the connection

terminalId

An identifier for the terminal

installmentTenure

The length of time for which the sale transaction will be paid over in installments.

payAmount

The monetary amount of the sale transaction (in decimal format)

WebSocket Response

{
  "pay_resp_issuer_id":"",
  "pay_resp_error_desc":"APPROVED",
  "pay_function":"08",
  "pay_resp_qr_txn_id":"",
  "pay_resp_invoice_no":"3",
  "pay_resp_scheme":"VISA_IPP",
  "pay_resp_batch_no":"1",
  "pay_resp_txn_date":"190902",
  "pay_resp_txn_time":"165146",
  "pay_print_receipt_id":"Y",
  "pay_resp_qr_wallet_id":"",
  "pay_resp_code":"00",
  "pay_resp_card_app_cryptogram":"753DD5A7FC59B21B",
  "pay_resp_app_label":"VISACREDIT",
  "pay_first_amount":"0",
  "pay_resp_card_ref_num":"123456789012",
  "pay_camera_mode":"",
  "pay_resp_card_auth_code":"111111",
  "pay_resp_card_aid":"A0000000031010",
  "pay_monthly_amount":"0",
  "pay_resp_merch_info":"DEFAULT\n\n\n\n\n",
  "pay_resp_mid":"000000000000000",
  "pay_resp_tid":"00000000",
  "pay_resp_tvr":"0880048000",
  "pay_installment_tenure":"6",
  "pay_resp_customer_id":"",
  "pay_type":"",
  "pay_resp_trace_no":"16",
  "pay_resp_cvm_desc":"PIN VERIFIED\nNO SIGNATUREREQUIRED",
  "pay_resp_card_no":"490281******7095",
  "pay_amount":"50000"
}

POST /pre-auth

/revenue-terminals/pre-auth

Processes a pre-authorization request.

Parameters should be passed as query parameters.

terminalIp

The IP address of the terminal

terminalPort

The port number of the terminal for the connection

terminalId

An identifier for the terminal

payAmount

The monetary amount of the sale transaction (in decimal format)

POST /sale-completion

/revenue-terminals/sale-completion

Processes a sale completion.

Parameters should be passed as query parameters.

terminalIp

The IP address of the terminal

terminalPort

The port number of the terminal for the connection

terminalId

An identifier for the terminal

payAmount

The monetary amount of the sale transaction (in decimal format)

payAuthCode

The authorization code of the sale transaction

POST /sale-with-pos-txn-id

/revenue-terminals/sale-with-pos-txn-id

Processes a sale transaction with POS Transaction ID.

Parameters should be passed as query parameters.

terminalIp

The IP address of the terminal

terminalPort

The port number of the terminal for the connection

terminalId

An identifier for the terminal

payAmount

The monetary amount of the sale transaction (in decimal format)

posTxnId

The identifier for the POS Transaction

WebSocket Response

{
  "pay_amount":"14",
  "pay_add_amount":"",
  "pay_function":"01",
  "pay_type":"",
  "pay_camera_mode":"01",
  "pay_print_receipt_id":"Y",
  "pay_resp_txn_date":"",
  "pay_resp_txn_time":"",
  "pay_resp_invoice_no":"4",
  "pay_resp_trace_no":"6",
  "pay_resp_batch_no":"1",
  "pay_resp_scheme":"VISA",
  "pay_resp_tid":"80000092",
  "pay_resp_mid":"000018888888888",
  "pay_resp_card_auth_code":"111111",
  "pay_resp_card_ref_num":"123456789012",
  "pay_resp_card_no":"450920******0252",
  "pay_resp_issuer_id":"01",
  "pay_resp_card_aid":"A0000000031010",
  "pay_resp_card_app_cryptogram":"7B65CBF9C995D720",
  "pay_resp_qr_txn_id":"",
  "pay_resp_qr_wallet_id":"",
  "pay_resp_customer_id":"",
  "pay_resp_code":"00",
  "pay_resp_error_desc":"APPROVED",
  "pay_resp_merch_info":"OCBC TESTING V5 u3\nWISMA REVENUE\nNO.12, JALAN UDANG HARIMAU2\nKEPONGBUSINESSPARK\n51200 KUALA LUMPUR\n00.00.05_20200625",
  "pay_resp_tvr":"0000000000",
  "pay_resp_cvm_desc":"",
  "pay_resp_app_label":"VISA CREDIT"
}

Payment Provider Constants

Pay Issuer

Pay Issuer ID

VISA

1

VISA_06_INSTALLMENT

2

VISA_12_INSTALLMENT

3

VISA_18_INSTALLMENT

4

VISA_24_INSTALLMENT

5

VISA_36_INSTALLMENT

6

VISA_48_INSTALLMENT

7

MASTERCARD

8

MASTERCARD_06_INSTALLMENT

9

MASTERCARD_12_INSTALLMENT

10

MASTERCARD_18_INSTALLMENT

11

MASTERCARD_24_INSTALLMENT

12

MASTERCARD_36_INSTALLMENT

13

MASTERCARD_48_INSTALLMENT

14

MY_DEBIT

15

AMEX

16

JCB

17

DINERS

18

UNIONPAY

19

NETS

20

ALIPAY

80

WECHAT

81

UPIQR

82

TNG

83

BOOST

84

VCASH

85

GRAB

86

SHOPEE

88

DUIT_NOW

90

WANNA_PAY

91

SARAWAK_PAY

92

ALIPAY_PLUS

93

TNGCARD

94

GRAB_BUY_NOW_PAY_LATER

96

  • No labels