Test your Payouts integration in Sandbox and then Production before going live.

Sandbox Testing

When Test Mode is activated, you get access to powerful Sandbox Tools in the Dashboard. These let you simulate all key payout scenarios.

1. Test a refund

1

Initiate a refund

This can be done via API or manually by selecting the Order on the merchant dashboard.
2

Select the Order to open Sandbox Tools

In the merchant dashboard Orders table click the Order for a detailed view with Sandbox Tools.
3

Simulate refund success or failure

Use the toggle to set the outcome you want to test. Check the status and webhooks.
Sandbox tools for simulating order flows

Sandbox tools in the details view of an order

2. Test a customer payout

1

Initiate a payout via API

Create a payout via API either closed-loop based on an existing order or open-loop by defining the beneficiary.
2

Select the payout to open Sandbox Tools

In the merchant dashboard Payouts table select the payment for a detailed view with Sandbox Tools.
3

Simulate payout success and failure

Use the toggle to set the outcome you want to test. Check the status and webhooks.
Sandbox tools for simulating payout flows

Sandbox tools in the details view of a customer payout

3. Simulate Outgoing Transactions Manually

In the developer section under the Simulations tab, you can manually simulate outgoing transactions:

Outgoing transactions

  • Simulate a manual outgoing transaction with any amount, external reference, and status.
  • A valid external reference must start with one of: refund, payout, fee, userPayout, followed by your unique identifier.
Use these tools to test every edge case and webhook flow before going live.

Production Testing

Once you’ve thoroughly tested your integration in sandbox mode, you can move to production testing with real payouts. Toggle off test mode in the Dashboard and use your live API keys. Complete these test scenarios to ensure your payout integration works correctly:
Test CaseDescriptionExpected Outcome
€1 refund initiated via APIAutomatically instructed from your back end to IvyRefund processed successfully and webhooks received
Partial refund (€0.50) initiated via APIAutomatically instructed from your back end to IvyPartial refund processed and status of ‘partially refunded’
€1 refund initiated via dashboardManually execute a refund from the Ivy DashboardRefund processed and status updated to ‘refunded’
€0.50 Customer PayoutAutomatically instructed from your back end to IvyPayout processed successfully and webhooks received
€1 Automatically sent in daily settlement payoutTest the receipt of settlement payouts to your own accountSettlement payout received and reconciled in your system
€5 failed payout via APIMake this fail due to insufficient fundsPayout fails with appropriate error handling and webhooks
Test each scenario with small amounts first, then verify that your webhook endpoints receive the correct status updates for each test case.

What’s Next