1. Online Payments
Español
  • English
  • Español
  • Docs de API 🇲🇽
  • Online Payments
    • Errores ISO
    • Errores del API de Kushki
    • Notas de versión
    • Card Payments
      • Solicitar un token de tarjeta
      • Hacer un cargo o cargo diferido
      • Crear pago (sin token)
      • Solicitar opciones de diferido
      • Reembolsar una transacción
      • Autorizar pagos
      • Preautorización (sin token)
      • Anular una transacción
      • Reautorizar pagos
      • Capturar un pago autorizado
      • Información de BIN V2
      • Información de BIN
      • Validar OTP
    • One-Click and Scheduled Payments
      • Solicitar un token de cargo recurrente
      • Crear un cargo recurrente
      • Hacer un pago One-click
      • Actualizar los datos de la tarjeta del cargo recurrente
      • Cancelar un cargo recurrente
      • Actualizar un cargo recurrente
      • Agregar un cargo o descuento temporal
      • Autorizar pagos
      • Capturar un pago autorizado
      • Consultar información del cargo recurrente
    • Transfer in
      • Consultar lista de bancos
      • Solicitar un token de Transfer In
      • Iniciar transacción
      • Consultar estado
    • Transfer Out
      • Consultar lista de bancos
      • Consultar lista de bancos V2
      • Solicitar un token de Transfer Out
      • Iniciar transacción
      • Consultar estado
      • Saldo para payouts
    • Smartlinks
      • Crear un Smartlink
      • Consultar un Smartlink
      • Eliminar un Smartlink
      • Actualizar un Smartlink
    • Payment Button
      • Crear un Payment Button
    • Analytics
      • Consultar listado de transacciones v2
    • Chargebacks
      • Consultar chargebacks
      • Solicitar exportación de chargebacks
    • Commissions
      • Consultar configuración de comisiones
    • Payment Credentials
      • Crear una credencial
      • Activar o desactivar
      • Eliminar credencial
      • Regenerar una credencial
      • Actualizar credencial
      • Búsqueda avanzada
      • Buscar credenciales
    • Platform Status
      • Consultar estado de la plataforma
      • Consultar estado del gateway
    • Settlement
      • Consultar liquidación
    • Subscription Transactions
      • Consultar transacciones de suscripción
    • Fraud Report
      • Consultar alertas de fraude
  • Card Present Billpocket
    • Notas de versión
    • Notas de versión del SDK de Android
    • Notas de versión de la app de Android
    • Notas de versión de la app de iOS
    • Get Started
      • Crear una cuenta
      • User Token
      • API Keys
    • Webhooks
      • Webhooks — Transferencia de fondos a tu cuenta bancaria
      • Errores de transferencia de fondos
    • Terminals
      • App Review
      • Splash Screen
    • Card not Present Billpocket Services
      • 3DS Checkout
        • Crear checkout
        • Consultar detalles del checkout
      • E-commerce Flex
        • Obtener token
        • Validar token
        • Cobrar pagos
        • Reembolso
        • Capturar un pago autorizado
        • Consultar estado
    • Catalogs
      • Estados
      • Municipios
      • Empresas de impuestos
      • Actividades comerciales
    • Accounts
      • Clabe Account Setup
        • Agregar cuenta CLABE
      • Deposit Accounts
        • Agregar o actualizar cuenta CLABE
    • User Settings
      • Crear usuario
    • Card Present Payment Services
      • Cloud Terminal API
        • Cobrar pagos con tarjeta
        • Imprimir ticket
        • Cancelar notificación push
        • Consultar estado de la transacción
        • Cobrar pagos con tarjeta v2
      • App-to-App
        • Android intents
        • App to App — iOS
        • App to App — Mobile Web
      • Terminal SDK
        • Terminal SDK Android
        • Errores del SDK de Android
    • Transactions
      • Transaction List
        • Obtener token
        • Consultar listado de transacciones
        • Consultar listado de transacciones v2
        • Consultar listado de transacciones v3
        • Consultar listado de transacciones v4
      • Cancel Payments
        • Códigos de error de cancelación
        • Cancelar pagos
  • API Raw Card Present
    • El objeto Amount
    • Catálogo de errores
    • Proceso de intercambio de llaves
    • Notas de versión
    • Datos de prueba
    • One-time payments
      • Pago único
    • Two-step-payments
      • Autorización y captura
    • Voids & Refunds
      • Reembolsar una transacción
      • Anular y reversar
    • Card information
      • Consultar información de BIN
      • Información de BIN V2
      • Solicitar opciones de diferido
    • Query Transactions
      • Búsqueda de transacciones
    • Webhooks
      • Webhooks — Pagos con tarjeta
      • Webhooks — Reembolsos
      • Webhooks — Introducción
      • Buenas prácticas
      • Revisa tus webhooks
    • Chargebacks
      • Consultar chargebacks
      • Solicitar exportación de chargebacks
    • Fraud Report
      • Consultar alertas de fraude
  • Kushki One
    • Error Catalog
    • Release notes
    • Transaction Examples
    • Webhooks
    • Cloud Services
      • Payment
        • Sync
          • Charge
          • Authorization (Pre-auth)
          • Capture
          • Re-authorization
          • Post-tip
          • Void
          • Abort
        • Async
          • Charge (Async)
          • Authorization — Pre-auth (Async)
          • Capture (Async)
          • Re-authorization (Async)
          • Post-tip (Async)
          • Void (Async)
        • Search
          • Transaction Search
      • Print
        • Create Print Job
        • Get Print Job Status
      • Diagnostics
        • Terminal info
        • Connection test
    • Local Services
      • Payment
        • Sync
          • Charge
          • Authorization (Pre-auth)
          • Capture
          • Re-authorization
          • Post-tip
          • Void
          • Abort
        • Async
          • Charge (Async)
          • Authorization — Pre-auth (Async)
          • Capture (Async)
          • Re-authorization (Async)
          • Post-tip (Async)
          • Void (Async)
          • Abort (Async)
        • Search
          • Transaction Search — Online
          • Transaction Search — Local
      • Print
        • Create Print Job
        • Get Print Job Status
        • Print Job Webhook (inbound — implemented by your POS)
      • Diagnostics
        • Connection test
        • Terminal info
  • Appian - Submerchant Register
    • Release Notes
    • Submerchant Validation in Batch
    • Query submerchant status by requestId/submerchantId
    • Submerchant Document Upload
    • Get submerchantIds
    • Get credentials for submerchants
  • Schemas
    • RequestBodies
      • one-and-two-step-payment
    • Card
    • Channel
    • Amount-cash-in
    • ChargebackListResponse
    • TransactionResponse
    • PrintJobRequest
    • one-and-two-step-payment-2
    • Card Present (CP)
    • one-and-two-step-payment-2
    • SubscriptionTransactionsResponse
    • FraudAlertRequest
    • StatusComponent
    • SettlementDateRangeRequest
    • amount
    • ChargebackItem
    • SubscriptionTransaction
    • extra_taxes
    • RawResponse
    • CommandText
    • Card Not Present (CNP)
    • Deferred
    • networkToken
    • FraudAlertResponse
    • ErrorResponse400
    • SettlementRecord
    • card
    • CardData
    • CommandColumns
    • FraudAlertRecord
    • SettlementResponse
    • currency
    • webhooksItem
    • ErrorResponse
    • Country
    • ErrorResponse401
    • LinkFailure
    • ColumnItem
    • ValidationError
    • Amount
    • card_details
    • ErrorResponse403
    • enc_tlv
    • CommandDivider
    • TransactionEvent
    • extraTaxes
    • payment_method
    • ErrorResponse500
    • CommandFeed
    • TransactionStatus
    • deferred
    • CommandSpace
    • ReadingType
    • pos_details
    • ContactDetails
    • sub_merchant
    • CommandCut
    • FailureReason
    • contact_details
    • Subscription
    • metadata
    • CommandImage
    • EventTerminal
    • documentType
    • orderDetails
    • Language
    • TransactionSearchRequest
    • CommandQR
    • EventOperation
    • Shipping Address
    • payment_submethod
    • CommandBarcode
    • EventAmount
    • Billing-Address
    • SubscriptionUpdate
    • EventExtraTaxes
    • PrintJobAccepted
    • PrinterError
    • EventMetadata
    • SubscriptionAdjustmentRequest
    • product
    • AmountWithTaxes
    • PrintJobStatus
    • PrintJobStatusRequest
    • threeDomainSecure
    • AmountCore
    • webhooks
    • headers
    • ExtraTaxes
    • PrintWebhookPayload
    • webhooksChargeback
    • Metadata
    • AmountWithTip
    • citMit
    • TransactionSearchBody
    • TransactionSearchOnlineBody
    • network
    • binInfo
    • AmountWithOptionalTip
    • TransactionSearchLocalBody
    • TransactionEvent_2
    • messageFields
    • UnexpectedErrorResponse
    • FailureReason_2
    • transactionType
    • ExternalReferenceId
    • EventTerminal_2
    • ExternalSubscriptionId
    • EventOperation_2
    • EventAmount_2
    • EventExtraTaxes_2
    • EventMetadata_2
    • SettlementTicketRequest
HomePerú 🇵🇪México 🇲🇽
Ecuador 🇪🇨Colombia 🇨🇴Chile 🇨🇱
HomePerú 🇵🇪México 🇲🇽
Ecuador 🇪🇨Colombia 🇨🇴Chile 🇨🇱
Status
Soporte / Support
Español
  • English
  • Español
  1. Online Payments

Transfer Out

Transfer Out te permite enviar fondos directamente a la cuenta bancaria de un destinatario en México 🇲🇽: pagos a proveedores, payouts de marketplace, comisiones o cualquier flujo de dispersión.

Cómo funciona#

1
Obtén la lista de bancos
Llama a GET /payouts/transfer/v1/bankList (o al endpoint v2) para obtener la lista de bancos de destino disponibles. Muestra esta lista para que el operador pueda elegir el banco del destinatario.
2
Solicita un token de Transfer Out
Llama a POST /payouts/transfer/v1/tokens con los datos bancarios del destinatario y el monto de la dispersión. Devuelve un token.
{
  "name": "Juan Pérez",
  "documentType": "RFC",
  "documentNumber": "ND",
  "accountType": "CB",
  "accountNumber": "646180110400000007",
  "bankId": "0074",
  "totalAmount": 1000,
  "currency": "MXN",
  "paymentDescription": "Pago a proveedor"
}
Referencia de campos:
CampoObligatorioNotas
name✅Nombre completo del destinatario.
documentType✅CURP o RFC.
documentNumber✅Número de documento del destinatario. En caso de que no sepas el número de documento del destinatario, envía ND en el campo documentNumber.
accountType✅CB, TD o NC. Consulta la tabla de tipos de cuenta más abajo.
accountNumber✅Número de cuenta del destinatario: CLABE de 18 dígitos (CB), número de tarjeta de débito (TD) o número de celular (NC).
bankId✅Identificador del banco tomado de la lista de bancos.
totalAmount✅Monto de la dispersión en MXN.
currency✅MXN
paymentDescriptionOpcionalDescripción breve de la transferencia.
mailOpcionalCorreo electrónico del destinatario.
3
Inicia la dispersión
Llama a POST /payouts/transfer/v1/init con el token y el monto. Una respuesta exitosa devuelve un ticketNumber y un transactionReference.
{
  "token": "AbCDef123456Z7Ghi8901234jkLMNopQ",
  "amount": {
    "subtotalIva": 0,
    "subtotalIva0": 500,
    "iva": 0,
    "ice": 0,
    "currency": "MXN"
  },
  "webhooks": ["https://yoursite.com/kushki/payout-notify"],
  "fullResponse": "v2"
}
Respuesta:
{
  "ticketNumber": "319228478889680318",
  "transactionReference": "6f16659e-b711-4995-a9ae-161aecbd6521",
  "status": "INITIALIZED"
}
4
Consulta el estado de la dispersión
Llama a GET /payouts/transfer/v1/transaction/{ticketNumber} para consultar el estado actual. La transferencia puede tardar en procesarse según el banco del destinatario.
{
  "ticketNumber": "319228478889680318",
  "transactionStatus": "APPROVED",
  "totalAmount": 500,
  "currency": "MXN",
  "bankId": "001",
  "documentType": "CURP",
  "documentNumber": "GACJ800101HDFRRN09"
}

Moneda#

MonedaCódigoNotas
Peso mexicanoMXNDos decimales: los montos usan centavos (por ejemplo, 500.00)

Tipos de cuenta#

ValorDescripción
CBCuenta CLABE
TDTarjeta de Débito
NCNúmero Celular. El destinatario debe tener su número de celular asociado a su cuenta de depósito.
ℹ️ CB — Cuenta CLABE es el tipo de cuenta principal en México: un código bancario estandarizado de 18 dígitos que se usa en todas las transferencias interbancarias.

Tipos de documento#

ValorDescripción
CURPClave Única de Registro de Población 🇲🇽
RFCRegistro Federal de Contribuyentes 🇲🇽

Valores de estado de la transacción#

EstadoDescripción
INITIALIZEDTransferencia creada: en proceso con el banco
APPROVEDFondos dispersados correctamente
DECLINEDTransferencia rechazada por el banco del destinatario
FAILEDLa transferencia falló por un error de procesamiento

Consulta tu saldo para dispersiones#

Antes de iniciar dispersiones, verifica que tengas saldo suficiente en tu wallet de dispersiones de Kushki:
GET /wallet/v1/merchant/balance
{
  "currentBalance": 5000,
  "currency": "MXN",
  "balanceDate": "2026-06-02T12:00:00Z"
}
Saldo insuficiente
Las operaciones de Transfer Out se financian con el saldo de tu wallet de Kushki. Asegúrate de que tu saldo cubra la dispersión antes de llamar al endpoint del token.

Webhooks#

Incluye un array webhooks en la solicitud de init para recibir notificaciones de la dispersión en tiempo real:
{
  "webhooks": ["https://yoursite.com/kushki/payout-notify"]
}

Autenticación#

La solicitud del token (POST /payouts/transfer/v1/tokens) usa tu llave pública:
El init (POST /payouts/transfer/v1/init) usa tu llave privada:

Uso de la API#

🟢 Producción
🧪 Sandbox (UAT)
https://api.kushkipagos.com/

Endpoints disponibles#

Obtener lista de bancos
Obtén los bancos de destino disponibles para dispersiones.
Obtener lista de bancos V2
Lista de bancos ampliada con metadata adicional.
Solicitar un token de Transfer Out
Tokeniza los datos bancarios del destinatario y el monto de la dispersión.
Iniciar transacción
Inicia la dispersión por transferencia bancaria. Devuelve un ticketNumber para el seguimiento.
Consultar estado
Consulta el estado actual de una dispersión por ticketNumber.
Saldo del comercio
Consulta el saldo actual de tu wallet de dispersiones en MXN.

¿Tienes una sugerencia sobre esta documentación? Escríbenos.
Modified at 2026-10-05 20:32:29
Previous
Consultar estado
Next
Consultar lista de bancos
Built with