purchase.approved
Disparado quando uma compra é aprovada — pagamento com cartão aprovado na hora ou PIX confirmado.
dica
Para PIX, o evento purchase.approved só é enviado após a confirmação do pagamento. Enquanto o PIX está pendente, é enviado apenas o evento pix.generated.
Quando é disparado
- Pagamento com cartão de crédito aprovado pela adquirente.
- Pagamento PIX confirmado (webhook ou polling da adquirente).
Exemplo de payload
{
"event": "purchase.approved",
"data": {
"transactionId": "uuid-da-transacao",
"productId": "uuid-do-produto",
"productName": "Nome do Produto",
"amount": 97.00,
"currency": "BRL",
"customer": {
"email": "cliente@email.com",
"name": "Nome do Cliente",
"document": "12345678900",
"phone": "11999999999"
},
"paymentProvider": "rapdyn",
"gatewayTransactionId": "id-transacao-no-gateway",
"status": "paid",
"createdAt": "2025-01-28T12:00:00.000Z",
"tracking": {
"utm_source": "google",
"utm_campaign": "blackfriday",
"utm_medium": "cpc",
"utm_content": "banner-1",
"cid": "clique-123",
"src": "facebook"
}
},
"timestamp": "2025-01-28T12:00:00.000Z",
"webhookId": "uuid-do-webhook"
}
Campos do data
| Campo | Tipo | Descrição |
|---|---|---|
transactionId | string | ID da transação no TukanoPay. |
productId | string | ID do produto. |
productName | string | Nome do produto. |
amount | number | Valor em reais (ex.: 97.00). |
currency | string | Moeda (ex.: BRL). |
customer | object | Dados do comprador. |
customer.email | string | E-mail do cliente. |
customer.name | string | Nome do cliente. |
customer.document | string | CPF/CNPJ (sem formatação). |
customer.phone | string | Telefone. |
paymentProvider | string | Gateway usado (ex.: rapdyn, cielo, asaas). |
gatewayTransactionId | string | ID da transação no gateway. |
status | string | Status da transação (ex.: paid, authorized). |
createdAt | string | Data de criação em ISO 8601. |
tracking | object | Parâmetros de rastreamento enviados no checkout (utm_source, utm_campaign, utm_medium, utm_content, cid, src). Sempre presente; pode ser {} se nenhum parâmetro foi passado. |