API de transações
Leia os pagamentos feitos com os cartões do seu programa. As situações e as etapas estão em Ciclo da transação.
Esta página faz parte da referência da primeira versão da API da Web3Card, mantida aqui para consulta. A API v1 não recebe integrações novas: a API v2 a substitui, e a plataforma hoje funciona como descrito no resto deste manual.
GET /transactions
Lista as transações do programa inteiro. Filtros: userId, cardId, status, from, to. Paginada com limit e cursor.
// Response
{
"data": [
{
"id": "txn_c410",
"cardId": "card_3b7c",
"userId": "usr_9f4c",
"status": "settled",
"amount": "42.90",
"currency": "USDC",
"merchant": {
"name": "AIRLINE TICKETS LTD",
"category": "airlines",
"country": "US"
},
"authorizedAt": "2026-07-18T09:12:44Z",
"settledAt": "2026-07-19T02:03:10Z",
"settlementTxHash": "0x9c2f…e11a"
}
],
"nextCursor": null
}
settlementTxHash liga cada pagamento liquidado à liquidação verificável na rede.
GET /transactions/{id}
Consulta uma transação, com o histórico completo de eventos (autorização, captura, liquidação, estornos).
GET /transactions/dispute-reasons
Lista os códigos de motivo de disputa aceitos.
// Response
{
"data": [
{ "code": "fraud", "label": "Unauthorized transaction" },
{ "code": "not_received", "label": "Goods or services not received" },
{ "code": "duplicate", "label": "Duplicate charge" },
{ "code": "amount_differs", "label": "Charged amount differs" }
]
}
POST /transactions/{id}/disputes
Abre uma disputa sobre uma transação liquidada. Vale até 60 dias depois da liquidação.
// Request
{ "reason": "duplicate", "comment": "Charged twice for the same order." }
// Response
{ "id": "dsp_11ba", "transactionId": "txn_c410", "status": "open" }
O andamento da disputa chega pelos webhooks transaction.updated, com o objeto dispute dentro.