Skip to main content

Terminal — Card Refund

Sends a card refund event to the RM Terminal. The terminal processes the refund for the specified transaction.

When to Use

Use this endpoint when:

  • Refunding a card transaction at the same RM Terminal
  • Customer requests an in-store card refund
note

For e-wallet refunds, use Cancel Transaction — Refund via the server API instead.

How to Use

Endpoint
POST/v3/payment/terminal/quickpay

Step 1: Get the Transaction ID

Capture the transactionId from the original card payment.

Step 2: Send the Refund Event

POST with type: "REFUND" and the transaction ID, refund PIN, and email.

Step 3: Confirm Delivery

A "SUCCESS" code means the refund event was dispatched to the terminal.


Request Parameters

terminalIdSTRINGrequired

RM Terminal ID

typeSTRINGrequired

Event type. Set to "REFUND".

dataOBJECTrequired

Request data

transactionIdSTRINGrequired

Transaction ID to refund

receiptTypeINTEGER

Receipt setting: 1 = Print both copies, 2 = Print customer copy only, 3 = Do not print

reasonSTRING

Reason for the refund

emailSTRINGrequired

Email address matching the refund PIN

pinSTRINGrequired

Refund PIN

Response Parameters

itemOBJECT

Transaction response object

transactionIdSTRING

Revenue Monster's unique transaction ID

referenceIdSTRING

Reference ID from the payment provider

orderOBJECT

Order details

idSTRING

Order ID

titleSTRING

Order title

currencyTypeSTRING

Currency type

amountINTEGER

Order amount in cents

detailSTRING

Order detail

additionalDataSTRING

Additional data

storeOBJECT

Store details

currencyTypeSTRING

Currency type (MYR)

balanceAmountINTEGER

Remaining balance amount for initiating refund

finalAmountINTEGER

Amount after all deductions

platformSTRING

Transaction platform

typeSTRING

Transaction type

methodSTRING

Payment method

regionSTRING

Payment region

statusSTRING

Transaction status (SUCCESS, FAILED, IN_PROCESS, etc.)

transactionAtSTRING

Transaction date time (only when SUCCESS)

createdAtSTRING

Created date time

updatedAtSTRING

Last updated date time

codeSTRING

"SUCCESS" if the event was sent to terminal, otherwise an error code.

errorOBJECT

Error details

codeSTRING

Error code if the request failed.

messageSTRING

Error message if the request failed.

debugSTRING

Debug message (sandbox only).