Introduction

The Transfer API module enables in-store and online applications to transfer funds peer-to-peer, across 200+ countries and in multiple currencies. Funds can be transferred for payout in cash at a MoneyGram store, or deposited directly to a bank account or digital wallet. Crypto wallets can also use the Transfer API module to ramp on/off at a MoneyGram location.




API Sequence

Transfer with quote is the standard model for transferring funds and consists of a three-part API call sequence: quote, update and commit a transaction. In this model, MoneyGram will provide a consumer quote which will typically comprise of a fee, foreign exchange rate, currencies and service options. The customer will then update the transaction with consumer and transactional information before finally committing/executing the transfer of funds.

  1. Quote a transaction | POST /transfer/v1/transactions/quote

To quote a transaction, the application must include the destination country and the amount in the API request. The endpoint will successfully respond with an array of quotes, typically containing send amounts, receive amounts, fees, guaranteed FX rates , and totals.

NOTE: The quote endpoint creates a transactionId resource for each quote listed in the response. Once the customer has selected a quote, the application must use the corresponding transactionId to update and commit the resource to MoneyGram.

  1. Update a transaction | PUT /transfer/v1/transactions/{transactionId}

The application must continue with one quote and update the transactionId resource with sender, receiver and transactional information. If the transaction is to be deposited to a bank, wallet, or card, the target account information must also be provided. The endpoint will validate all the details and successfully respond with a confirmed transaction quote.

NOTE: MoneyGram will perform real-time validation and compliance screening upon the submitted request. Depending on the results of the validation, the endpoint will respond with pass or fail scenarios. The application must build to handle these error code scenarios and allow the user to correct all errors.

  1. Commit a transaction | PUT /transfer/v1/transactions/{transactionId}/commit

The application must use the commit API to execute the transfer. The endpoint will successfully respond with the transaction reference number, which can be used by the customer to pick up the funds in cash or track the progress of their transfer. The funds will also be marked for settlement.


API Sequence Diagram

Transfer sequence diagram 1



Endpoints

Take a more detailed view of the transfer API endpoints:

NameHTTP methodEndpointsDescription
Quote a transactionPOST/transfer/v1/transactions/quoteThe quote API creates a transactionId resource and determines the service options, currencies and pricing available to a destination country.
Update a transactionPUT/transfer/v1/transactions/{transactionId}The update API determines what information to collect from the customer, validates the data for compliance purposes and updates the transactionId resource with the data gathered.
Commit a transactionPUT/transfer/v1/transactions/{transactionId}/commitThe commit API executes the trasnsactionId and completes the transfer of funds.



Example User Journey

1 - Get a quote

A transaction can be quoted by send or receive amount. MoneyGram provides payment and payout options, competitive transfer fees and a foreign exchange rate. MoneyGram also allows for promo codes to discount fees.

2 - Enter transaction details

The customer enters the transaction information, such as name, address, identification type and number.

3 - Fund the transaction

The customer funds their transfer with a credit or debit card, or an online bank account.

4 - Transaction summary

A transaction summary is provided and is ready to be committed. Validation checks are done to ensure compliance rules are met.

5 - Transaction complete

MoneyGram completes the transaction and provides a receipt with the reference number and transfer details.

1 - Get a quote

The cashier quotes the transaction by a send or receive amount. MoneyGram provides payment and payout options, competitive transfer fees and a foreign exchange rate. MoneyGram also allows for promo codes to discount fees.

2 - Enter transaction details

The cashier enters the required transaction information, such as sender name, address, identification type, number and receiver information.

3 - Transaction summary

A transaction summary is provided, and is ready to be committed. Validation checks are done to ensure compliance rules are met. The cashier collects funds from the customer.

4 - Transaction complete

MoneyGram completes the transaction and provides a receipt with the reference number and transfer details.

1 - Select cryptocurrency to purchase

From the customer's wallet app, they select the cryptocurrency to purchase. Exchange rates are provided for each cryptocurrency.

2 - Payment method and purchase amount

The customer selects the purchase country, payment method and purchase amount.

3 - Enter transaction details

The customer enters the transaction information, such as name, address, identification type and number.

4 - Transaction summary

A transaction summary is provided, and is ready to be committed. Validation checks are done to ensure compliance rules are met.

5 - Ready for payment

The transaction is placed in a “Ready for Payment” status; a MoneyGram location finder can be provided for the customer to find the best payment location.

6 - Pay in-store

If cash is selected as the payment method, the customer travels to a MoneyGram location and pays for the transaction.

1 - Select cryptocurrency to sell

From the customer's wallet app, they select the cryptocurrency to sell. Exchange rates are provided for each cryptocurrency.

2 - Select withdraw method

The customer selects the sell country, withdraw method and sell amount.

3 - Enter transaction details

The customer enters the transaction information, such as name, address, identification type and number.

4 - Transaction summary

A transaction summary is provided, and is ready to be committed. Validation checks are done to ensure compliance rules are met.

5 - Ready for pick up

The transaction is placed in an “Available” status; a MoneyGram location finder can be provided for the customer to find the best location to pick up the funds.

6 - Pick up cash at a location

The customer travels to a MoneyGram location to pick up the funds in cash.