Remessa Brasil → EUA
A jornada no app do parceiro e as chamadas por trás dela.
Jornada do cliente
- Escolhe o destinatário. O parceiro cadastra a conta de destino uma vez e reutiliza o
rcv_…. - Simula. A cada valor digitado, o parceiro cota e mostra o resultado.
- Confirma. O parceiro cria a transferência com uma
Idempotency-Keye o motivo (purpose). - Paga. O parceiro debita a conta do cliente e paga o PIX de entrada.
- Acompanha. Os webhooks movem o progresso no app até a entrega.
O que mostrar na simulação
| Na tela | Campo |
|---|---|
| Você envia | sourceAmount |
| O destinatário recebe | destinationAmount |
| Custo total | fees.total |
| VET | effectiveRate |
| Prazo | routing.estimatedDelivery |
| Preço válido até | expiresAt |
Chamadas
| Chamada | Quando |
|---|---|
POST /v1/customers | Primeira remessa do cliente |
POST /v1/customers/{id}/kyc-attestations | Após o cadastro e a cada renovação |
POST /v1/customers/{id}/receivers | Novo destinatário |
POST /v1/quotes | A cada simulação |
POST /v1/transfers | Na confirmação |
POST /v1/transfers/{id}/refund | Se algo der errado antes da entrega |
Webhooks transfer.* | Até o status final |
Casos a tratar
| Situação | Sinal | No app |
|---|---|---|
| Cotação expirada | 422 QUOTE_EXPIRED | Mostrar o novo valor e pedir nova confirmação |
| Conta recusada no destino | transfer.failed | Pedir para revisar os dados; o reembolso é automático |
| Cliente desistiu ou errou o destino, antes da entrega | Pedido no app | Chamar o reembolso e mostrar refund.amount |
| Reembolso concluído | transfer.refunded | Avisar que o valor voltou para a conta |
| Sem rota no momento | 422 ROUTE_UNAVAILABLE | Sugerir outro rail ou tentar mais tarde |