Overview
The PIX OUT flow allows you to transfer funds from your Owem account to any bank account in Brazil using a PIX key.Complete Flow
Step 1: Validate Balance
Before sending, check if there’s sufficient balance:Step 2: Send Transfer
Important Parameters
| Field | Description |
|---|---|
pixKey | Destination PIX key (CPF, CNPJ, email, phone, random key) |
amount | Amount in BRL (> 0, two decimal places) |
description | Transfer description (max 140 characters) |
externalId | Your unique identifier for idempotency |
Step 3: Track Status
The initial response may come asprocessing. Use one of the options below to track:
Option A: Webhook (Recommended)
Configure webhook forpix_out:processing. The final status will be succeeded or failed.
Option B: Direct Query
Option C: Ledger Query
Error Handling
| HTTP | Cause | Action |
|---|---|---|
| 400 | Invalid PIX key | Check key format |
| 404 | Account not found | Verify accountId |
| 422 | Insufficient balance | Check balance before sending |
| 422 | Limit exceeded | Check account limits |
| 429 | Rate limit | Wait and retry |
Timeout Handling
If the request results in a timeout (connection interrupted before response), the order may have been processed successfully even without you receiving confirmation. Recommended flow in case of timeout:- Wait 10-20 seconds after timeout
- Query by the
externalIdyou sent:
- Interpret the result:
- 200 with data: The order was processed successfully, use the returned
endToEndId - 400 with “Entry not found”: The order is still being processed or didn’t reach the system
- If after 2-3 minutes it still returns “Entry not found”, the order was not received and you can try again
- 200 with data: The order was processed successfully, use the returned
Best Practices
Always use externalId
Always use externalId
Ensures idempotency and facilitates reconciliation in your system.
Validate balance before sending
Validate balance before sending
Avoids 422 errors and improves user experience.
Use webhooks for confirmation
Use webhooks for confirmation
Don’t rely only on synchronous response. Configure webhooks to receive final
status.
Implement retry with backoff
Implement retry with backoff
In case of timeout or 5xx error, implement retry with exponential backoff.
Related Webhook Events
| Event | When it occurs |
|---|---|
pix_out:processing | Transfer registered/confirmed |
pix_out:refunded_processing | Return initiated |