Flujo
Paso a paso
1
Cobra al comprador en su moneda
Crea una orden con
POST /payment_orders (enlace de pago) o usa Direct Payment para mantener al comprador dentro de tu checkout. Consulta GET /payment_methods/{país} para mostrar solo los métodos disponibles en el país del comprador.2
Confirma el pago
Escucha el webhook
payment_order.paid y consulta GET /payment_orders/:id como respaldo. Libera el pedido solo con el estado paid.3
Convierte si hace falta
Si cobras en moneda local y pagas en dólares, usa
POST /transactions con transactions_type: "exchange" o configura el payin para que acredite directo en la moneda destino.4
Paga al vendedor
GET /prices y GET /withdrawal_rules para el país del vendedor, y luego POST /transactions con transactions_type: "withdrawal". Usa un order único por pago.Buenas prácticas
Guarda el
order de cada pago en tu base de datos antes de llamar a la API, para evitar duplicados si hay un timeout. Ver Idempotencia y reintentos.Valida al beneficiario con
POST /beneficiaries/validate_beneficiary antes de pagar para reducir rechazos.Concilia con
GET /transactions filtrando por tus order.Endpoints clave
Crear payin
POST /payment_ordersMétodos por país
GET /payment_methods/{country_iso_code}Crear payout
POST /transactions con transactions_type: "withdrawal"Validar beneficiario
POST /beneficiaries/validate_beneficiary