Introduction

The Disbursements refund API module enables the business partner to retrieve and refund a payment to the business. The ability to refund a transaction is needed if the business has placed a payment in error, cannot proceed with a payment or needs to discontinue the payment for other reasons. In each use case, the business partner can use the disbursements refund API module to execute a refund and return the funds back to the business.




API sequence

The Disbursements Refund API module comprises of three synchronous endpoints. The general process for refunding a transaction is as follows:

  1. Retrieve a transaction by transactionId | GET: /disbursement/refund/v1/transactions/{transactionId}
    The application can use the transactionId as a path parameter to retrieve the transaction for refund.

    OR

    Retrieve a transaction by referenceNumber | GET: /disbursement/refund/v1/transactions/?referenceNumber={referenceNumber}
    The application can use the reference number as a query parameter to retrieve the transaction for refund.

  2. Commit a transaction for refund | PUT: disbursement/refund/v1/transactions/{transactionId}/commit
    The application must use the HTTP PUT method to execute the refund.

Typically the business partner will develop a "Refund" feature within a wider transaction history UI experience. Once the transaction is retrieved, we recommend a transaction summary be displayed in the application UI. This helps the partner to validate the transaction details and the amount to be refunded before the refund is executed.


Refund Requests

📘

A refund can be submitted within 90 days of the transaction's send date.

After 90 days, the business partner will need to call MoneyGram at 1 (800) 926-9400 to request a refund.

  • Refunding Transaction Fees
    • MoneyGram will refund the transaction fee if a refund is completed on the same day - midnight cutoff (US CST) as the transaction was sent, regardless of the refundFee value.
    • If a refund is issued the day after the transaction was sent, the refundFee value will determine if the transaction fee is refunded.
  • Refund Fee Values
    • refundFee is empty (default) or set to false (recommended), the transaction fee will not be refunded. When the value is left empty, MoneyGram defaults it to false.
    • refundFee set to true the transaction fee will be refunded.



API sequence diagram


Business Refund - Sequence Diagram


Endpoints

NameMETHODURLDescription
Retrieve a TransactionGET/disbursement/refund/v1/transactions/{transactionID}Look up a transaction for refund using the transactionId as a path parameter
Retrieve a TransactionGET/disbursement/refund/v1/transactions/?referenceNumber={referenceNumber}Look up a transaction for refund using the reference number as a query parameter
Refund a TransactionPOST/disbursement/refund/v1/transactions/{transactionId}/commitThe Commit API executes the transactionId for refund and completes the return of funds.