Fluxo de uma etapa: compra
UsePOST /payment/purchase quando você puder atender o pedido imediatamente — downloads digitais, assinaturas SaaS e qualquer produto entregue no momento em que o pagamento é concluído. Uma única ida e volta reserva os fundos e os liquida de uma vez. A resposta traz status: "captured" e um id — o identificador do pagamento.
Fluxo de duas etapas: autorizar → capturar
UsePOST /payment/authorization para reservar fundos sem liquidá-los. É o fluxo certo quando você precisa confirmar a disponibilidade antes de atender — por exemplo, produtos físicos que podem esgotar, ou reservas de hotel em que você confirma o quarto antes de cobrar.
id (um UUID). Esse id é como você endereça
o pagamento em toda operação de acompanhamento — passe-o como o segmento de caminho {id}.
Algumas regras se aplicam:
- A janela de autorização costuma ser de 7 dias, embora alguns adquirentes permitam janelas mais curtas ou mais longas. Se você não capturar dentro da janela, a autorização expira e os fundos são liberados automaticamente.
- A captura parcial é compatível. Você pode capturar qualquer valor até o valor autorizado. Por exemplo, autorize 80 se um item estiver esgotado.
- Depois que um pagamento é capturado você não pode capturar de novo — use o reembolso para qualquer ajuste.
Reembolso
ChamePOST /payment/{id}/refund para devolver fundos de um pagamento capturado. Os reembolsos podem ser totais ou parciais, e você pode emitir vários reembolsos parciais desde que o total acumulado não ultrapasse o valor capturado originalmente.
refunded assim que um reembolso total é processado.
Cancelar
ChamePOST /payment/{id}/cancel para anular um pagamento autorizado antes que ele seja capturado. Os fundos são liberados imediatamente e o cliente nunca é cobrado. Você não pode cancelar um pagamento que já foi capturado — chame POST /payment/{id}/refund em vez disso.
Cancelamento ou reembolso automático
Se você não tem certeza se um pagamento está no estadoauthorized ou captured, chame POST /payment/{id}/cancel_or_refund. O Therius verifica o estado atual e realiza a operação correta automaticamente — um cancelamento se o pagamento está autorizado, um reembolso total se está capturado.
Status do pagamento
Máquina de estados
id, paymentCode e orderCode
orderCode e paymentCode são apenas campos de referência — são retornados nas respostas e nos webhooks. A Consulta aceita o id ou o paymentCode no caminho. Mas capture, refund, cancel e cancel_or_refund aceitam somente o id. Sempre armazene o id da resposta de autorização/compra e use-o nessas chamadas.
