Card Payment Refund
Trigger a card refund event on the RM Terminal from a POS system. Refunds a specific card transaction by its transactionId.
When to Use
▾
Use this endpoint when:
- Refunding a card transaction from your POS app
- Customer requests an in-store card refund processed via terminal
How to Use
▾
Method: POST
URL: https://open.revenuemonster.my/v3/event/terminal
Sandbox URL: https://sb-open.revenuemonster.my/v3/event/terminal
Step 1: Get the Transaction ID
▾
Capture the transactionId of the original card payment to refund.
Step 2: Send the Refund Event
▾
POST with type: "REFUND", the transaction ID, email, and pin.
Step 3: Confirm the Refund
▾
The response confirms refund status — "FULL_REFUNDED" indicates success.
Request Parameters
▾
Terminal ID
Example: "1582107209454501456"
Request type
Example: "REFUND"
(Refer data )
Example: {}
Transaction ID generated from Revenue Monster.
Example: "1582107209454501456"
1 : Print Merchant Copy and Customer copy 2 : Print Customer copy 3 : Do not print Merchant Copy & Customer Copy
Example: 1
Refund reason
Example: "Wrong Item"
Refund email
Example: "[email protected]"
Refund pin
Example: "321123"
1curl --location --request POST "https://sb-open.revenuemonster.my/v3/event/terminal" \2--header "Content-Type: application/json" \3--header "Authorization: Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6IjIwMTgtMDMtMTMiLCJ0eXAiOiJKV1QifQ.eyJhdWQiOlsiYXBpX2NsaWVudEBFaGNLQzA5QmRYUm9RMnhwWlc1MEVNV1Z4NF9UbE5MZEZRIl0sImV4cCI6MTU4NjMzNzc1OCwiaWF0IjoxNTgzNzQ1NzU4LCJpc3MiOiJodHRwczovL3NiLW9hdXRoLnJldmVudWVtb25zdGVyLm15IiwianRpIjoiRWh3S0VFOUJkWFJvUVdOalpYTnpWRzlyWlc0UXlKSG9qb2VNcHYwViIsIm5iZiI6MTU4Mzc0NTc1OCwic3ViIjoiRWhRS0NFMWxjbU5vWVc1MEVKWFZ6ZDN3cmFxVE9SSVFDZ1JWYzJWeUVJeUpxSXp2eU1QVmNRIn0.FfBkCb7fjCKJdcy_DS06dKgEtcAvukPio0HyDRtH2UovhZsLFSqD_8oo21u094XSor_mqFg4hqXmLaHjX-h92Wz3kHl7OwiKQb16x8Rnl5OdyPHtMqIZqP8ab8Ch0RHEZ33VchK1zBTnG6Xosrb1B44tWqJ0_kdTtbRZN4rG821C8i4sb6sx8GaxgluJ5q7CEifMTBFJam_Jub9LfAfukq8YyIl0Bykp7B3A_su2QoELL9L_ElJdV9FuwFPHcKr9bxLvVSrEdyrFg7IBm_tJHxSl8gTh3j4b6lWZrBCfMSLraXaYRNzz1ddbVnwYD4aRuSyRmQeMYTUj0cInktnKUA" \4--header "X-Signature: sha256 GohuT2QTUXJV3MZh2OoEE9qW9wcfakOU9iVLmkTjM12NQuV6IcWMRQDz9NdxAOVIrh5MssfYCLDlafb2illXxgQMpmZkZ38NT6NQsMeMfGbHBS1Kc+BUtU7o1TMLUzk55J1tA6f0Z95oEuBlCeLm6VsgCG30wFm5YmgssJ0weIwMcW355r2sFl7QcKOuRqynoGtmmr/aGfOk1HjiFLoFzSd38O7rRjwGrekYwuYUD1N/Wp5GFXRjtaaPkzAERPbXEmnh/taLME8VeAhky6dAVGZE6gHKnP5WvvVjUE+KLtj3D32YIHzxhzEW9x3JEObqgvm5Q2oRZNxoh6/MvqwkVA==" \5--header "X-Nonce-Str: bfdgdjgtjhmnbmmjmdfdghghffj" \6--header "X-Timestamp: 1546850694" \7--data-raw {8 "terminalId": "1582107209454501456",9 "type": "REFUND",10 "data": {11 "transactionId": "210215083727100327507906",12 "receiptType": 3,13 "reason": "Testing",14 "email": "[email protected]",15 "pin": "321123"16 }17}
Response Parameters
▾
Amount of order in cent
Example: 10
Creation date time of store
Example: "2020-02-13T07:08:56Z"
Currency notation (currently only support MYR)
Example: "MYR"
(Refer to extraInfo)
Example: {}
Object of card Info
Type of card payment
Example: "NFC"
Masked card no
Example: "XXXX-XXXX-XXXX-9081"
Card payment ref on server
Example: "104974001774"
Card payment ref on terminal
Example: "001774"
RM currently supported method
Example: "CARD"
(Refer to order)
Example: {}
Amount of order in cent (min RM 0.10 or amount: 10)
Example: 10
Order ID (from Merchant), max: 24
Example: "201919250001"
Order title, max: 32
Example: "SALE"
Order details, max: 600
Example: "XXXX-XXXX-XXXX-3121"
For merchant's remark, max 128
Example: "000008"
Only "TERMINAL"
Example: "TERMINAL"
Transaction ID (from server)
Example: "00000000000791320002737201919250001"
Region of wallet
Example: "MALAYSIA"
Status returned from WeChat server
Example: "SUCCESS"
Transaction date time of store
Example: "2020-10-25T04:35:22Z"
Transaction ID generated from Revenue Monster.
Example: "200213070856100322408442"
"QUICKPAY" or "BANK_CARD"
Example: "BANK_CARD"
Last update date time of store
Example: "2020-02-13T07:08:56Z"
Successfully call this endpoint. If fail, will return error code object (Refer Appendix 1: Error Codes)
Example: "SUCCESS"
(Refer Appendix: Error Codes)
Example: {}
1{2"code": "SUCCESS",3"item": {4 "balanceAmount": 0,5 "createdAt": "2021-02-17T17:43:59Z",6 "currencyType": "MYR",7 "extraInfo": {8 "card": {9 "inputType": "NFC",10 "maskNo": "XXXX-XXXX-XXXX-9081",11 "referenceId": "104974001774",12 "secondaryReferenceId": "001774"13 }14 },15 "method": "CARD",16 "order": {17 "additionalData": "In store payment",18 "amount": 10,19 "detail": "[Terminal app] Pay to Mountain Food - Utropolis",20 "id": "1613583839549PE24191B504",21 "title": "In store payment"22 },23 "platform": "TERMINAL",24 "referenceId": "00000000000550520003236104974001774",25 "region": "MALAYSIA",26 "status": "FULL_REFUNDED",27 "transactionAt": "2021-02-17T17:44:02Z",28 "transactionId": "210217174359100325085446",29 "type": "BANK_CARD",30 "updatedAt": "2021-02-17T17:44:30Z"31}32}