Skip to main content

Topup Balance Offline (QuickPay)

Top up a loyalty member's credit balance offline using a Quick Pay scan.

When to Use

Use this endpoint when:

  • Member tops up their loyalty balance at a physical store
  • Driving the top-up flow from the merchant terminal app

How to Use

Endpoint
POST/v3/loyalty/member/{memberId}/topup-offline

POST /v3/loyalty/member/{memberId}/topup-offline with the scanned authCode and amount.


Request Parameters

authCodeSTRINGrequired

Auth code of QR code/barcode being scanned. Length: 18

Example: "134850717797247290"

orderOBJECTrequired

Object of order

idSTRINGrequired

Order ID (from Merchant), max: 24

Example: "134850717797247290"

currencyTypeSTRINGrequired

Currency notation (currently only support MYR)

Example: "MYR"

amountINTEGERrequired

Amount of order in cent (min RM 0.10 or amount: 10)

Example: 100

storeIdSTRINGrequired

ID of the store

Example: "6170506694335521334"

memberIdSTRINGrequired

Member id

Example: "1626838502220135674"

Response Parameters

itemOBJECT

Transaction object

storeOBJECT

Store object

idSTRING

Store ID

Example: "6170506694335521334"

nameSTRING

Store Name

Example: "REVENUE MONSTER"

addressLine1STRING

Store Address 1

Example: "B-5-30, 5th Floor, Block Bougainvillea,"

addressLine2STRING

Store Address 2

Example: "PJU 6A, Lebuhraya SPRINT, 10 Boulevard,"

postCodeSTRING

Postcode of store

Example: "47400"

citySTRING

City of store

Example: "Petaling Jaya"

stateSTRING

State of store

Example: "Selangor"

countrySTRING

Country of store

Example: "Malaysia"

countryCodeSTRING

Country code of store contact number

Example: "60"

phoneNumberSTRING

Phone number of store

Example: "377334080"

geoLocationOBJECT

Geo Location (latitude and longitude) of store

Example: {"latitude": 3.1349857, "longitude": 101.6136659 }

statusSTRING

Current status of store

Example: "ACTIVE"

createdAtDATETIME

Creation date time of store

Example: "2018-02-12T08:53:13Z"

updatedAtDATETIME

Last update date time of store

Example: "2018-02-12T08:53:13Z"

referenceIdSTRING

Reference ID (from WeChat server)

Example: ""

transactionIdSTRING

Transaction ID (from RM server)

Example: "152161448229438994"

orderOBJECT

Order object

idSTRING

Order ID (from Merchant), max: 24

Example: "134850717797247290"

titleSTRING

Order title, max: 32

Example: "Sales"

detailsSTRING

Order details, max: 600

Example: "1 x iPhone X; 2 x SAMSUNG S8"

amountINTEGER

Amount of order in cent (min RM 0.10 or amount: 10)

Example: 100

payeeOBJECT

Object of userID made payment (payment sender)

Example: {"userId": "o74f0wjjzv9eKRu1fccrZswVFnOQ"}

currencyTypeSTRING

Currency notation (currently only support MYR)

Example: "MYR"

platformSTRING

Currently only support "OPEN_API"

Example: "OPEN_API"

methodSTRING

RM currently supported method

Example: ALL

typeSTRING

Currently only support "QUICKPAY"

Example: "QUICKPAY"

statusSTRING

Status returned from WeChat server

Example: "SUCCESS"

regionSTRING

Region of wallet, "MALAYSIA" or "CHINA"

Example: "MALAYSIA"

errorSTRING

(Refer Appendix: Error Codes)

Example: {}

createdAtDATETIME

Creation date time of transaction

Example: "2018-03-21T06:41:22Z"

updatedAtDATETIME

Last update date time of transaction

Example: "2018-03-21T06:41:22Z"

codeSTRING

Successfully call this endpoint. If fail, will return error code object (Refer Appendix 1: Error Codes)

Example: "SUCCESS"