Brazil — PIX Pay-in (BRL)
Base URL
https://api.transacty.ai
Summary
Brazil PIX pay-in lets your customers pay in BRL. Your server creates a
pay-in via POST /v1/br/payins; you render paymentInfo (PIX copy-and-paste code,
QR string, or hosted content depending on type). When the payment completes,
Transacty credits your BRL wallet and sends a webhook.
Brazil is a separate market from Bangladesh (BDT), India (USDT), and Europe (USDC). Enabling Brazil does not affect other rails.
Settlement wallet & balances
- Pay-ins settle to your BRL wallet pocket on success.
- The BRL pocket is separate from other currencies — do not sum unlike currencies into one headline number.
- On
GET /v1/balance:availableBalanceis spendable;pendingBalanceis in-flight pay-ins (not yet spendable). - Transactions appear on the
brazilrail withrailLabelsuch as Brazil (PIX).
Enable the Brazil market first. Each market has its own KYB approval. Until Brazil
is approved, /v1/br/* returns 403 (market_not_enabled), and your BRL wallet
pocket is provisioned only once the market is approved.
Limits
- Minimum amount: 10.00 BRL
- Maximum amount: 15,000.00 BRL per transaction
Required headers
Every request uses HMAC authentication (same scheme as all /v1/* endpoints):
X-Transacty-KeyX-Transacty-Timestamp(Unix seconds)X-Transacty-Signature=HMAC-SHA256(secret, "{timestamp}.{rawBody}")Content-Type: application/json
Optional: Idempotency-Key to safely retry creates.
Required scope
payin:create
Pay-in flow
| Step | Merchant server | Transacty API |
|---|---|---|
| 1 | Create the pay-in | POST /v1/br/payins |
| 2 | Show paymentInfo (PIX code / QR / redirect) | — |
| 3 | Customer pays via PIX | — |
| 4 | Poll status or wait for webhook | GET /v1/payins/:id |
| 5 | BRL wallet credited on success | — |
Webhook events
When a webhook URL is configured, Transacty sends:
payin.completedpayin.failed
See Webhooks for signature verification.