PayZuDocs
Sandbox

Trigger amounts for each outcome: canceled, pending or completed withdrawal, refund with provider error, canceled or completed, deterministic fixtures and per-credential limits.

Differences from production

ItemProductionSandbox
Hostapi.payzu.processamento.compix.sandbox.payzu.dev
CredentialAccount token, issued after approvalsbx_... issued by e-mail and code, valid for 24 hours
Charge (POST /v1/pix)Paid when the payer completes the PixStarts PENDING and becomes COMPLETED 10 seconds later, firing the webhook signed as in production
Withdrawal by key (POST /v1/withdraw)Depends on the providerBelow R$ 10.00 CANCELED; from R$ 10.00 to R$ 100.00 COMPLETED immediately; above R$ 100.00 PENDING, completes in 10 seconds
Refund (POST /v1/refund/{transactionId})Depends on the providerBelow R$ 1.00 provider error; below R$ 10.00 CANCELED; from R$ 10.00 COMPLETED
DICT and QR readingReal lookupDeterministic fixtures: the same id always returns the same response
Infractions (MED)Your account's12 samples per credential, open (OPEN)
Registered webhookDelivers right awayDelivers only after proving ownership of the endpoint (Webhooks in the sandbox)
LimitsPer account60 requests per minute and 2,000 per day per credential; 3 codes per hour per e-mail
ResetNot applicableThere is no reset route and no route to force a status. A clean environment is a new credential

The withdrawal cut-off amounts exist so you can test the three paths (canceled, pending, completed) without an admin route: just pick the amount. For refunds, the cut-offs test provider error, canceled and completed; there is no pending refund. The rest of the contract (fields, enums, pagination, error envelope) is identical to production.

Withdrawal < R$ 10CANCELED
R$ 10 to R$ 100COMPLETED right away
Withdrawal > R$ 100PENDING, completes in 10s

Refund by amount range

curl -X POST https://pix.sandbox.payzu.dev/v1/refund/$TRANSACTION_ID \
  -H "Authorization: Bearer $SANDBOX_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"amount":25.00,"description":"Teste de estorno"}'

From R$ 10.00 the refund completes (COMPLETED) and the original charge becomes REFUNDED when the amount is the full one. Below R$ 10.00 the refund is canceled; below R$ 1.00 the simulated provider returns an error.

On this page