Batch Transfer

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 without quote model consists of a two-part API call sequence - "create and commit" - for faster transaction processing. This model is applicable to partners who are a "transation processor" and don’t require MoneyGram to provide a consumer quote. In this model, the partner simply creates a transaction by providing consumer and transactional information, before finally committing the transaction.

  1. Create a transaction | POST /transfer/v1/transactions

To create a transaction, the application must include the sender, receiver and all required 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 that is ready for commit.

NOTE: The create endpoint generates a transactionId resource. The application must use the this transactionId to commit the resource to MoneyGram.

  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 2



Endpoints

Take a more detailed view of the transfer API endpoints:


NameHTTP methodEndpointsDescription
Create a transactionPOST/transfer/v1/transactionsCreates payout transaction with specific payout option and verifies whether the information collected about the sender is sufficient for identification and regulatory purposes. It returns a unique transactionId that needs to be submitted with subsequent update and commit call.
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.