Skip to main content
The sandbox is an isolated environment for testing your integration without real charges. Everything works exactly like in production — including webhooks — but no transaction is actually processed.

API keys

Each project has two API keys:
Never use sk_live_* in frontend code, public repositories, or unprotected environment variables.

Simulating payments

In the sandbox, confirm a transaction without needing a real PIX:
cURL
After the simulation, the webhook configured on the project is fired automatically with the transaction.paid event.
Webhooks work normally in the sandbox — ideal for testing the full flow end to end.

Automatic outcome by cents

In the sandbox, the charge outcome is controlled by the last two digits of the amount — without needing to call the simulation endpoint: Ideal for automated tests: create three charges and validate all three webhook flows at once.

Identifying sandbox transactions

Transactions created with sk_test_* stay isolated from production ones. The isSandbox: true field is included in the webhook payload to make identification easier.

Next steps

Simulate a payment

Force the payment of a sandbox charge via the API.

Configure webhooks

Receive transaction.paid and transaction.expired at your endpoint.

Authentication

Understand the sk_test_ and sk_live_ keys.

Go to production

Run through the checklist before processing real payments.