Sandbox

Sandbox environment documentation

Sandbox Environment

A sandbox is an environment isolated from the production environment, but has the same behavior.

In this environment, you can test Mono and simulate different scenarios. The production environment is not affected by any change done here. Every functionality available in production is available for test in the sandbox.

You can access the sandbox at https://mi.sandbox.cuentamono.com/

Testing bank transfers

In the sandbox environment, you can simulate successful and declined bank transfers. To develop your system correctly, keep in mind that two validations occur before the money is credited to the payee's account.

📘

Note

  1. To simulate ACH or Turbo cases, please set the corresponding value option in the routing field.
  2. The simulation are evaluating the field payee.document_number.

ACH

These cases are available to simulate for ACH:

  1. Origin bank validations:

    • Description: the first validation is done by our bank partner to ensure you have enough balance, including the GMF tax, and that you haven't exceeded the origin account's transactional limits (any admin user can adjust these limits directly in the user interface). Origin bank declinations in production are usually informed in less than 10 minutes through a webhook.

    • Test case: payee.document_number starts with 888 and ends with 000 (e.g., 88814235000)

  2. Destination bank validations:

    • Description: the second validation is performed by the destination bank to check the account information and status. In production, these declinations take up to three ACH cycles, or around 12 working hours, to be received. In the sandbox, these are simulated in 2 minutes.

    • Test case: payee.document_number starts with 999 and ends with 000 (e.g., 99914235000)

  3. Successful ACH bank transfer:

    • Description: The transfer should be approved.

    • Test case: payee.document_number does not meet the criteria for any of the other test cases.

Turbo

These cases are available to simulate for Turbo:

  1. Global limit exceeded:

    • Description: The transfer exceeds the global limit allowed for the account.
    • Test case: payee.document_number starts with 777 and ends with 000 (e.g., 77714235000)
  2. Insufficient funds:

    • Description: The origin account doesn't have sufficient funds to complete the transfer.
    • Test cases:
      • payee.document_number starts with 777 and ends with 111 (e.g., 77714235111)
      • payee.document_number starts with 111 and ends with 000 (e.g., 11114235000)
  3. Turbo not supported:

    • Description: The destination bank doesn't support Turbo transfers (signer not found).
    • Test case: payee.document_number starts with 777 and ends with 222 (e.g., 77714235222)
  4. Transaction deadline exceeded:

    • Description: The transfer was rejected by the destination bank due to timeout.
    • Test cases:
      • payee.document_number starts with 777 and ends with 333 (e.g., 77714235333)
      • payee.document_number starts with 100 and ends with 001 (e.g., 10014235001)
  5. Disabled account:

    • Description: The destination account is disabled.
    • Test case: payee.document_number starts with 777 and ends with 444 (e.g., 77714235444)
  6. Successful Turbo bank transfer:

    • Description: The transfer should be approved.
    • Test case: payee.document_number does not meet the criteria for any of the other test cases.

Transfiya

These cases are available to simulate for Transfiya:

  1. Global limit exceeded:

    • Description: The transfer exceeds the global limit allowed for the account.
    • Test case: payee.document_number starts with 555 and ends with 000 (e.g., 55514235000)
  2. Disabled account:

    • Description: The destination account is disabled.
    • Test case: payee.document_number starts with 555 and ends with 444 (e.g., 55514235444)
  3. Insufficient funds:

    • Description: The origin account doesn't have sufficient funds to complete the transfer.
    • Test case: payee.document_number starts with 555 and ends with 111 (e.g., 55514235111)
  4. Transaction deadline exceeded:

    • Description: The transfer was rejected by the destination bank due to timeout.
    • Test case: payee.document_number starts with 555 and ends with 222 (e.g., 55514235222)
  5. Transaction not completed by Transfiya:

    • Description: The user rejected or didn't complete the transaction through Transfiya.
    • Test case: payee.document_number starts with 555 and ends with 333 (e.g., 55514235333)
  6. Successful Transfiya transfer:

    • Description: The transfer should be approved.
    • Test case: payee.document_number does not meet the criteria for any of the other test cases.
📘

Important Note

"global_limit_exceeded" is the only case that allows routing simulation with a permitted error for fallbacks.

CoopCentral BREB

CoopCentral BREB provides instant transfers through the BREB network. The sandbox allows you to simulate different scenarios using specific patterns in the BREB key (for key lookups) and description field (for transaction operations).

BREB Transfer Process

A BREB transfer follows a three-step process:

  1. Key Lookup: First, the system validates the BREB key and retrieves the associated account information from the network.
  2. Transaction Initiation: Once the key is validated, the transfer is initiated with the destination participant.
  3. Status Verification: Finally, the transaction status is checked to confirm whether it was completed successfully or failed.

The simulation sections below correspond to each of these steps, allowing you to test different scenarios at each stage of the transfer process.

📘

Identity Validation

For successful BREB transfers in sandbox, when sending identity document information, you must use:

  • document_type: CC
  • document_number: 12345678

Important: If you send document identity information and it differs from these values, the transfer will generate errors. You can also choose not to send the document identity information to skip this validation.

BREB Key Lookup Simulation

These cases are available to simulate BREB key lookup by using specific BREB key patterns:

  1. Key not found:

    • Description: The BREB key doesn't exist in the network.
    • Test case: BREB key contains key_not_found (e.g., key_not_found@domain.com)
  2. Participant unavailable:

    • Description: The destination participant/bank is temporarily unavailable.
    • Test case: BREB key starts with key_unavailable (e.g., key_unavailable@domain.com)
  3. Key blocked or inactive:

    • Description: The BREB key is blocked or inactive in the network.
    • Test case: BREB key contains key_blocked (e.g., key_blocked@domain.com)
  4. Timeout:

    • Description: The key lookup request timed out.
    • Test case: BREB key contains key_timeout (e.g., key_timeout@domain.com)
  5. Successful key lookup:

    • Description: The BREB key lookup should succeed and return account information.
    • Test case: BREB key doesn't match any of the error patterns above (e.g., [email protected])

BREB Transaction Initiation Simulation

These cases are available to simulate BREB transaction initiation by using specific description patterns:

  1. Timeout during initialization:

    • Description: The transaction initiation request timed out.
    • Test case: Description contains tx_timeout (e.g., "tx_timeout payment for services")
  2. Disabled account:

    • Description: The destination account is disabled.
    • Test case: Description contains tx_disabled (e.g., "tx_disabled account transfer")
  3. Invalid BREB key:

    • Description: The provided BREB key is invalid.
    • Test case: Description contains tx_invalid_key (e.g., "tx_invalid_key test transfer")
  4. Daily amount limit exceeded:

    • Description: The transfer exceeds the daily amount limit.
    • Test case: Description contains tx_limit_daily_amount (e.g., "tx_limit_daily_amount exceeded test")
  5. Daily count limit exceeded:

    • Description: The account has exceeded the daily transaction count limit.
    • Test case: Description contains tx_limit_daily_count (e.g., "tx_limit_daily_count limit test")
  6. Fraud detected:

    • Description: The transaction was flagged as fraudulent.
    • Test case: Description contains tx_fraud (e.g., "tx_fraud detection test")
  7. Insufficient funds:

    • Description: The origin account doesn't have sufficient funds.
    • Test case: Description contains tx_insufficient (e.g., "tx_insufficient balance test")
  8. Monthly amount limit exceeded:

    • Description: The transfer exceeds the monthly amount limit.
    • Test case: Description contains tx_limit_monthly_amount (e.g., "tx_limit_monthly_amount test transfer")
  9. Monthly count limit exceeded:

    • Description: The account has exceeded the monthly transaction count limit.
    • Test case: Description contains tx_limit_monthly_count (e.g., "tx_limit_monthly_count exceeded")
  10. Invalid account:

    • Description: The destination account information is invalid.
    • Test case: Description contains tx_invalid_account (e.g., "tx_invalid_account test")
  11. Account blocked:

    • Description: The destination account is blocked.
    • Test case: Description contains tx_blocked (e.g., "tx_blocked account transfer")
  12. Unknown error:

    • Description: An unknown error occurred during processing.
    • Test case: Description contains tx_error (e.g., "tx_error processing payment")
  13. Successful transaction initiation:

    • Description: The transaction should be initiated successfully.
    • Test case: Description doesn't match any of the error patterns above (e.g., "payment for services")

BREB Transaction Status Simulation

These cases are available to simulate BREB transaction status checks by using specific BREB key patterns:

📘

Note

The transaction status simulation uses the same BREB key that was used during the key lookup step. The system validates the pattern of the BREB key to determine which status to return.

  1. Transaction not found:

    • Description: The transaction ID doesn't exist.
    • Test case: BREB key contains status_not_found (e.g., status_not_found@domain.com)
  2. Timeout during status check:

    • Description: The status check request timed out.
    • Test case: BREB key contains status_timeout (e.g., status_timeout@domain.com)
  3. Participant unavailable:

    • Description: The participant is unavailable for status checks.
    • Test case: BREB key contains status_unavailable (e.g., status_unavailable@domain.com)
  4. Failed transaction:

    • Description: The transaction has failed.
    • Test case: BREB key contains status_failed (e.g., status_failed@domain.com)
    • Status code: 91
  5. Pending transaction:

    • Description: The transaction is still pending.
    • Test case: BREB key contains status_pending (e.g., status_pending@domain.com)
  6. Successful transaction:

    • Description: The transaction has completed successfully.
    • Test case: BREB key doesn't match any of the patterns above (e.g., [email protected])
    • Status code: 00