Development Considerations
See Maya Partner Journey for the development activities you need to consider.
States of Cash-in to Maya Wallet
Transfer in Maya can have four (4) states: CREATED
, PROCESSING
, APPROVED
, and DECLINED
. You can start by creating intents to transfer and then execute after your validation.
State | Description |
---|---|
CREATED | The initial state of the transfer intent in Maya upon the successful call of the Initiate a Transfer |
PROCESSING | Transfer intent in Maya will transition to this state upon triggering the Execute Transfer |
APPROVED | The transfer intent in Maya will be transitioned to this state when the funds are credited to the target Maya wallet |
DECLINED | The transfer intent will be transitioned to this state when the crediting of funds to Maya wallet has failed |
Cash-in Validity
At present, there is no time restriction for executing a transfer intent after it has been created. However, if you choose not to proceed, you can discard the transferId
and handle the customer management on your end.
NOTE: Change in this behavior may be imposed in the future.
Handling of ambiguous errors in Cash-in to Maya Wallet
Maya recommends calling the Retrieve a Transfer endpoint to validate the request status before proceeding with the next steps. This is required, but not limited to, the following scenarios:
- No response from the Cash-in to Maya Wallet endpoints
- Gateway errors, timeouts, or anything unparsable in the Cash-in to Maya Wallet endpoints
Validate the result of the Retrieve a Transfer:
Retrieve a Transfer Result | What to Do |
---|---|
If the Retrieve a Transfer response indicates that the transfer intent is in a PROCESSING state… | Wait a few seconds and continue monitoring by calling again the Retrieve a Transfer endpoint until the transfer intent transitions to a final state—either APPROVED or DECLINED |
If the Retrieve a Transfer response indicates that the transfer intent is in a CREATED state... | Your application may retrigger the Execute Transfer by providing the transferId associated with the transfer for processing |
If Retrieve a Transfer response indicates that the transfer intent is in the final state—either APPROVED or DECLINED | Notify the customer on the state of the transfer |
See also Cash-in to Maya Wallet Errors for the list of errors and handling.
Rate Limiting of Cash-in to Maya Wallet
Maya applies rate limiting to its endpoints. We recommend implementing exponential back-off or incrementing delays between requests to Maya endpoints if you receive an HTTP 429
response.