What are Webhooks?
Webhooks are HTTP notifications sent by Owem to your application when important events occur. Instead of constant polling, you receive data as soon as something happens.Real Time
Receive notifications instantly.
Reliable
Automatic retry system on failures.
Secure
Validate origin by IP and headers.
Flexible
Configure which events you want to receive.
How It Works
1
Configure Webhook
Register your endpoint URL in the dashboard or via API.
2
Event Occurs
A payment is confirmed, transfer completed, etc.
3
Owem Sends
We POST to your URL with the event data.
4
You Process
Your application processes the event and responds with 200 OK.
Event Catalog
| Event | Trigger |
|---|---|
pix_in:qrcode_paid | Payment made via QR Code (PIX IN). |
pix_in:credited | Credit received via PIX key. |
pix_in:refunded_processing | PIX IN refund initiated (returns succeeded/failed). |
pix_in:refunded_med_processing | PIX IN refund initiated by MED (returns succeeded/failed). |
pix_out:processing | PIX OUT transfer registered (returns succeeded/failed). |
pix_out:refunded_processing | PIX OUT refund initiated (returns succeeded/failed). |
med:received | MED (Special Refund Mechanism) received. |
Payload Structure
Top-Level Fields
| Field | Type | Description |
|---|---|---|
webhookId | string | Webhook configuration ID that originated the event. |
userId | string | Owner user. |
accountId | string | Account related to the event. |
event | string | Event type (e.g., pix_out:processing). |
object | object | Event-specific data. |
object Fields — PIX events
| Field | Type | Description |
|---|---|---|
id | string | Entry identifier. |
externalId | string | Client-defined ID (idempotency/reconciliation). |
idempotencyKey | string | Entry idempotency key. |
type | enum | credit or debit. |
reason | enum | Accounting reason (e.g., pix_out:processing). |
status | enum | processing, succeeded, failed. |
grossAmount | number | Gross amount. |
feeAmount | number | Applied fee. |
netAmount | number | Net amount. |
endToEndId | string | PIX E2E identifier. |
parentEndToEndId | string | Original E2E in refunds/returns. |
payer | object | Payer data (ispb, cpfCnpj, name, agency, accountNumber). |
receiver | object | Receiver data. |
createdAt | number | Epoch millis (creation). |
updatedAt | number | Epoch millis (last update). |
Example — pix_out:processing
object Fields — med:received event
| Field | Type | Description |
|---|---|---|
endToEndId | string | E2E identifier related to the MED. |
details | string | MED reason description. |
medId | string | Unique MED ID. |
dtHrCreationReason | string | ISO-8601 date/time of MED creation. |
entryId | string | Linked txId (paid QR). |
Example — med:received
Security
IP Validation
Validate that the webhook came from Owem by checking the source IP:| Owem IP |
|---|
34.134.50.53 |
35.238.101.57 |
HTTPS Required
Your endpoint must use HTTPS with a valid certificate.Delivery and Timeout
- Respond within 3 seconds with HTTP 2xx (200/201/204) to confirm receipt.
- Responses > 3s or 4xx/5xx codes count as delivery failure.
- On failure, Owem applies redelivery with exponential backoff.
Callback Authentication
If anauthHeader is configured in your webhook configuration, Owem will send that value in the Authorization header on all calls.
Endpoint Requirements
| Requirement | Description |
|---|---|
| Protocol | HTTPS required |
| Method | Accept POST |
| Timeout | Respond within 3 seconds |
| Response | Status 2xx for success |
| Content-Type | Accept application/json |
Related Endpoints
Create Webhook
POST /v4/i/webhooks/configList Webhooks
GET /v4/i/webhooks/configUpdate Webhook
PUT /v4/i/webhooks/config/{configId}Activate/Deactivate
POST /v4/i/webhooks/config/{configId}/activateHandler Example
Best Practices
Respond Quickly
Process in background and respond 200 immediately.
Be Idempotent
Handle duplicate webhooks without side effects.
Log Everything
Record all webhooks for debugging.
Monitor Failures
Track success rate of your endpoints.