# Sandbox testing

Test the complete payment flow with a funded test account and coordinated payout scenarios.

Product: Payment API
Guides follow API reference 0.1.0 and event reference 0.1.0.
Canonical page: https://docs.axiym.io/payment-api/integration-guide/sandbox-testing

The sandbox lets you test the complete payment flow without moving real funds.
When your sandbox is configured, Axiym provides credentials and a funded test
Axiym account. Sandbox credentials, accounts, balances, and payouts are
separate from production.

You can discover corridors, create payouts, review and confirm them, receive
webhook notifications, and reconcile the resulting test account movements.

## Coordinated payout scenarios

Axiym coordinates sandbox payout scenarios with your team, controlling status
transitions and triggering the corresponding notifications. This lets you
verify how your integration handles payment progression and the agreed
success or failure outcomes.

Create, review, and confirm payouts through the API as usual. Share the
returned `paymentId` with Axiym and agree on the scenario and timing. Axiym
coordinates subsequent simulated progression; this does not replace your
confirmation request. Your integration tracks the payout through the same API
and webhook interfaces used in production.
Status progression follows the coordinated scenario rather than live bank
processing times.

Sandbox payouts do not move real funds or credit a recipient's bank account.

## What to validate

* OAuth authentication and network allowlisting;
* resource isolation between integrations and environments;
* corridor discovery and destination requirement handling;
* Payment Data Map storage, field mapping, and value translations, if used;
* destination validation and supporting-document encoding during creation;
* commercial-term expiry and both fixed-amount modes (`sourceAmount` and `destinationAmount`);
* payout creation in `PENDING_CONFIRMATION`, with no reservation;
* review and confirmation, including reservation of `sourceAmount`;
* insufficient funds at confirmation, leaving the payout awaiting confirmation;
* idempotent retries after timeouts or ambiguous responses;
* asynchronous success and unsuccessful outcomes;
* webhook signature verification and event de-duplication; and
* payout-to-account-statement reconciliation.

## Test Payment Data Maps

**Payment Data Maps are optional.** This section applies only if your integration
uses a saved map with `POST /payouts/mapped`.

Test representative payments in Sandbox and review the prepared result before
confirmation. Check that fields and translated values are correct, documents
remain associated with the right people or payment, and missing or invalid data
is reported. Include the variations your integration will send.

[How it works](/payment-api/tools#test-map) explains how to review the mapping
in the tool. The [mapped payout API reference](/payment-api/api-reference/payouts/createMappedPayout)
covers request formats and validation errors for Sandbox testing.

## Run the scenarios

Start with [Make your first payout](/payment-api/integration-guide/quickstart).
Agree on test recipient details and payout scenarios with Axiym, then exercise
the payment use cases your integration supports. For each scenario, verify
the returned status, webhook handling, and corresponding account movements.

Test validation failures and commercial-term expiry alongside the coordinated payout
scenarios. Include timeouts, ambiguous responses, and missed, duplicate, or
out-of-order notifications in your own integration tests to verify retry and
recovery behavior.

Never place real personal data, production documents, or real funds into the
sandbox environment. Use synthetic data or test data agreed with Axiym.

## Before production

Before production, repeat all environment-specific setup with production
credentials, allowlists, accounts, corridors, and webhook endpoints. Complete
the [production-ready checklist](/payment-api/integration-guide#production-ready-checklist)
and confirm the required test scenarios have been covered with Axiym.
