Stage Payout Completion
Introduction
The Payout Stage API module enables in-store applications to payout a transaction in cash to the intended receive customer from a staged transaction. Virtual wallets can also use the payout endpoints to "receive and redirect" a transaction and move funds into the receive customer's wallet.
API sequence
The Payout Staged API module comprises of three synchronous endpoints. There are two general models for paying out funds and the API sequence is as follows:
This is the standard model for paying out a staged transaction and consists of a three-part API call sequence: retrieve, update and commit a staged transaction. In this model, the transaction can look up a staged transaction for payout, before updating it with consumer and transactional information. The transaction is finally committed and funds are paid out to the customer.
- Retrieve a Staged transaction |
GET /payout/v1/stagedtransactions
GET /payout/v1/stagedtransactionsTo retrieve a staged transaction for payout, the application must use referenceNumber as a query parameter to retrieve the transaction. The endpoint returns a 200 OK HTTP Status the transactionId resource, status and transactional information. This is to be validated by the in-store associate and receive customer for KYC purposes.
A
NOTE: The referenceNumber is a eight-digit string and is
generated at the
time of transfer. It's the customer's unique identifier of the transaction. The receive
customer typically enters the reference number in the application to lookup and retrieve a
transaction for payout.
- Update a staged transaction |
PUT /payout/v1/stagedtransactions/{transactionId}
PUT /payout/v1/stagedtransactions/{transactionId}The application must use the transactionId resource as a path parameter and update it with information about the recieve customer. The endpoint will validate all details and successfully respond with a 200 OK HTTP status and transaction summary.
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 a pass or fail scenario. The application must build to handle various error codes scenarios and allow the user to correct all errors. Learn more
- Commit a staged transaction |
PUT /payout/v1/stagedtransactions/{transactionId}/commit
PUT /payout/v1/stagedtransactions/{transactionId}/commit
The application must use the commit API to execute the payout and the endpoint will successfully
respond with a 200
OK HTTP status
For in-store applications, the funds can be paid out in cash. For digital transactions, the
funds can be redirected to a bank account/wallet. The transaction status will move to "RECEIVED"
and funds will be marked for settlement.
This is an advanced model for paying out a staged transaction that uses the ‘Payout Staged With Additional Data Request’ endpoint to securely provide data to the partner for regulatory purposes. This model is to be used only in countries where regulation stipulates additional transactional information is needed at time of payout. The API is only available upon business request and must be called in the following sequence:
- Retrieve a transaction |
GET /payout/v1/stagedtransactions
GET /payout/v1/stagedtransactionsTo retrieve a staged transaction for payout, the application must use referenceNumber as a query parameter to retrieve the transaction. The endpoint returns a 200 OK HTTP status the transactionId resource, status and transactional information. This is to be validated by the in-store associate and receive customer for KYC purposes.
NOTE: The referenceNumber is a eight-digit string and is
generated at the
time of transfer. It's the customer's unique identifier of the transaction. The receive
customer typically enters the reference number in the application to look up and retrieve a
transaction for payout.
- Update a staged transaction |
PUT /payout/v1/stagedtransactions/{transactionId}
PUT /payout/v1/stagedtransactions/{transactionId}The application must use the transactionId resource as a path parameter and update it with information about the recieve customer. The endpoint will validate all details and successfully respond with a 200 OK HTTP status and transaction summary.
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 a pass or fail scenario. The application must build to handle various error codes scenarios and allow the user to correct all errors. Learn more
- Commit a staged transaction |
PUT /payout/v1/stagedtransactions/{transactionId}/commit
PUT /payout/v1/stagedtransactions/{transactionId}/commitThe application must use the commit API to execute the payout and the endpoint will successfully respond with a 200 OK HTTP status For in-store applications, the funds can now be paid out in cash. For digital transactions, the funds can be redirected to bank account/wallet. The transaction status will move to "RECEIVED" and funds will be marked for settlement.
