Skip to main content
Crea un cliente, prepara una cartera reutilizable y ejecuta el flujo de sandbox que necesites.

1. Configura el sandbox

Utiliza una clave de API de sandbox desde tu backend:
La clave selecciona el entorno de sandbox en el host compartido de la API.

2. Crea un cliente

Crea un cliente individual con POST /v3/customers:
Guarda data.id como CUSTOMER_ID.

3. Elige el resultado

  • Cobro (pay-in): recibe USD y liquida USDC en la cartera emitida del cliente.
  • Pago (payout): envía USDC desde la cartera emitida del cliente a una cuenta bancaria propiedad del cliente.
  • Cuenta bancaria emitida: emite una cuenta ACH/USD que se liquida en la cartera emitida del cliente.
Para un pago a un tercero, sigue Destinatarios o Enviar fondos.

4. Encuentra una capacidad elegible

Lista las capacidades soportadas con GET /v3/customers/{customerId}/capabilities/supported:
Elige una entrada de respuesta con availability en available o beta, eligibility.eligible en true, los directions y method necesarios y el accountType correspondiente. Utiliza la cartera emitida del cliente como destino del cobro, origen del pago o cuenta de liquidación de la cuenta bancaria; utiliza la cuenta propiedad del cliente como destinationId para esta ruta de pago. Si se devuelven institutions, utiliza únicamente una elección de institución devuelta. Guarda el id de la entrada como CAPABILITY_ID; no fijes en el código un ID de capacidad universal.

5. Solicita la capacidad

Solicita la capacidad seleccionada con POST /v3/customers/{customerId}/capabilities/{capabilityId}:
Guarda data.status como CAPABILITY_STATUS y data.openTaskIds como TASK_IDS.

6. Completa el onboarding en sandbox

Si TASK_IDS no está vacío, completa cada requisito actual mediante Capacidades y tareas. Para este recorrido, establece la capacidad en ready con POST /v3/sandbox/customers/{customerId}/capabilities/{capabilityId}/status:
Este control de prueba no es el onboarding de producción. Vuelve a consultar con GET /v3/customers/{customerId}/capabilities/{capabilityId}:
Actualiza CAPABILITY_STATUS y TASK_IDS a partir de data.status y data.openTaskIds. Continúa solo cuando CAPABILITY_STATUS sea ready.

7. Construye el flujo seleccionado

Crea una cartera USDC emitida en Base con POST /v3/customers/{customerId}/accounts:
Guarda data.id como FLOW_WALLET_ID, data.status como FLOW_WALLET_STATUS y data.openTaskIds como FLOW_WALLET_TASK_IDS. Si FLOW_WALLET_TASK_IDS no está vacío, completa las tareas actuales mediante Capacidades y tareas. Vuelve a consultar la cartera con GET /v3/customers/{customerId}/accounts/{accountId}:
Actualiza FLOW_WALLET_STATUS y FLOW_WALLET_TASK_IDS a partir de data.status y data.openTaskIds. Continúa solo cuando FLOW_WALLET_STATUS sea ready.
Crea una cotización USD a USDC con POST /v3/quotes:
Guarda data.id como QUOTE_ID y luego ejecútala con POST /v3/transfers:
Guarda data.id como TRANSFER_ID. Obtén las instrucciones con GET /v3/transfers/{transferId}/instructions:
La respuesta contiene data.transferId y data.instructions. Guarda data.transferId como TRANSFER_ID y data.instructions como FUNDING_INSTRUCTIONS.
Para cobros y pagos, monitorea TRANSFER_ID con GET /v3/transfers/{transferId}:

Cobro

Construye el flujo completo de cobro.

Pago

Construye la gestión de pagos en producción.

Cuenta bancaria emitida

Gestiona el aprovisionamiento y los datos.
A continuación, añade webhooks. Cada solicitud anterior ya enlaza con su esquema y su página de estado completa en la Referencia de la API.