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)
      • Anular una transacción
      • Reembolsar una transacción
      • Solicitar opciones de diferido
      • Autorizar pagos
      • Preautorización (sin token)
      • Reautorizar pagos
      • Capturar un pago autorizado
      • Verificar cuenta
      • Validar OTP
      • Información de BIN V2
      • Información de BIN
      • Voucher
    • One-Click & Scheduled Payments
      • Solicitar un token de cargo recurrente
      • Crear un cargo recurrente
      • Actualizar los datos de la tarjeta del cargo recurrente
      • Hacer un pago One-click
      • 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
    • Card Async
      • Solicitar un token de Card Async
      • Iniciar transacción
      • Autorizar pagos
      • Capturar un pago autorizado
      • Consultar estado
    • Async Card Recurring Charges
      • Solicitar un token de cargo recurrente con tarjeta asíncrono
      • Iniciar un cargo recurrente con tarjeta asíncrono
      • Autorizar pagos
      • Capturar un pago autorizado
    • Chargebacks
      • Consultar chargebacks
      • Solicitar exportación de chargebacks
    • 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
    • Cash In
      • Solicitar un token de Cash In
      • Iniciar transacción
      • Estado de la transacción
    • Smartlinks V2
      • Crear un Smartlink
      • Consultar un Smartlink
      • Eliminar un Smartlink
      • Actualizar un Smartlink
    • Payment Button
      • Crear un Payment Button
    • Analytics
      • Consultar listado de transacciones v2
    • Status
      • Consultar estado de la plataforma
      • Consultar estado del gateway
    • Subscription Transactions
      • Consultar transacciones de suscripción
    • Payment Credentials
      • Crear una credencial
      • Buscar credenciales
      • Actualizar credencial
      • Regenerar una credencial
      • Eliminar credencial
      • Activar o desactivar
      • Búsqueda avanzada
    • Settlement
      • Consultar liquidación
    • Fraud Report
      • Consultar alertas de fraude
  • API Raw Card Present Payments 🇨🇱
    • Notas de versión
    • Catálogo de errores
    • Datos de prueba
    • Proceso de intercambio de llaves
    • El objeto Amount
    • 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
    • Chargebacks
      • Consultar chargebacks
      • Solicitar exportación de chargebacks
    • Webhooks
      • Introducción
      • Buenas prácticas
      • Reembolsos
      • Pagos con tarjeta
      • Revisa tus webhooks
    • 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
          • Refund
          • Abort
        • Search
          • Transaction Search
        • Async
          • Charge (Async)
          • Authorization — Pre-auth (Async)
          • Capture (Async)
          • Re-authorization (Async)
          • Post-tip (Async)
          • Void (Async)
      • Print
        • Create Print Job
        • Get Print Job Status
    • Local Services
      • Payment
        • Sync
          • Charge
          • Authorization (Pre-auth)
          • Capture
          • Re-authorization
          • Post-tip
          • Void
          • Refund
          • Abort
        • Search
          • Transaction Search — Online
          • Transaction Search — Local
        • Async
          • Charge (Async)
          • Authorization — Pre-auth (Async)
          • Capture (Async)
          • Re-authorization (Async)
          • Post-tip (Async)
          • Void (Async)
          • Abort (Async)
      • Print
        • Create Print Job
        • Get Print Job Status
        • Print Job Webhook (inbound — implemented by your POS)
  • 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
    • documentType
    • ChargebackListResponse
    • Channel
    • TransactionResponse
    • PrintJobRequest
    • one-and-two-step-payment-1
    • one-and-two-step-payment-1
    • Card Present (CP)
    • Card
    • Amount-cash-in
    • SubscriptionTransactionsResponse
    • SettlementDateRangeRequest
    • StatusComponent
    • FraudAlertRequest
    • amount
    • extra_taxes
    • ChargebackItem
    • SubscriptionTransaction
    • RawResponse
    • CommandText
    • Card Not Present (CNP)
    • one-and-two-step-payment-11
    • networkToken
    • FraudAlertResponse
    • card
    • ErrorResponse400
    • CardData
    • CommandColumns
    • FraudAlertRecord
    • Amount-CL
    • webhooks
    • SettlementResponse
    • webhooksItem
    • headers
    • ErrorResponse401
    • SettlementRecord
    • LinkFailure
    • ColumnItem
    • Amount
    • currency
    • ValidationError
    • card_details
    • transactionType
    • enc_tlv
    • ErrorResponse403
    • CommandDivider
    • TransactionEvent
    • ErrorResponse
    • Country
    • binInfo
    • ErrorResponse500
    • payment_method
    • CommandFeed
    • TransactionStatus
    • extraTaxes
    • Deferred
    • deferred
    • CommandSpace
    • ReadingType
    • SubscriptionUpdate
    • pos_details
    • ContactDetails
    • Language
    • sub_merchant
    • CommandCut
    • FailureReason
    • contact_details
    • metadata
    • CommandImage
    • EventTerminal
    • Subscription
    • orderDetails
    • TransactionSearchRequest
    • CommandQR
    • EventOperation
    • Shipping Address
    • payment_submethod
    • CommandBarcode
    • EventAmount
    • Billing-Address
    • EventExtraTaxes
    • PrintJobAccepted
    • PrinterError
    • EventMetadata
    • AmountWithTaxes
    • PrintJobStatus
    • PrintJobStatusRequest
    • threeDomainSecure
    • SubscriptionAdjustmentRequest
    • AmountCore
    • webhooksChargeback
    • ExtraTaxes
    • PrintWebhookPayload
    • Metadata
    • AmountWithTip
    • citMit
    • TransactionSearchBody
    • TransactionSearchOnlineBody
    • network
    • AmountWithOptionalTip
    • TransactionSearchLocalBody
    • TransactionEvent_2
    • messageFields
    • UnexpectedErrorResponse
    • FailureReason_2
    • EventTerminal_2
    • ExternalReferenceId
    • EventOperation_2
    • ExternalSubscriptionId
    • EventAmount_2
    • EventExtraTaxes_2
    • EventMetadata_2
    • product
    • SettlementTicketRequest
    • TransactionEvent_21
    • TransactionStatus2
    • ReadingType3
    • FailureReason_24
    • EventTerminal_25
    • EventOperation_26
    • EventAmount_27
    • EventMetadata_28
    • EventExtraTaxes_29
    • PrintWebhookPayload10
    • TransactionEvent11
    • FailureReason12
    • EventTerminal13
    • EventOperation14
    • EventAmount15
    • EventMetadata16
    • EventExtraTaxes17
    • TransactionEvent_22
    • TransactionStatus3
    • ReadingType4
    • FailureReason_25
    • EventTerminal_26
    • EventOperation_27
    • EventAmount_28
    • EventMetadata_29
    • EventExtraTaxes_210
    • PrintWebhookPayload11
    • TransactionEvent12
    • FailureReason13
    • EventTerminal14
    • EventOperation15
    • EventAmount16
    • EventMetadata17
    • EventExtraTaxes18
HomePerú 🇵🇪México 🇲🇽Ecuador 🇪🇨Colombia 🇨🇴Chile 🇨🇱
HomePerú 🇵🇪México 🇲🇽Ecuador 🇪🇨Colombia 🇨🇴Chile 🇨🇱
  1. Online Payments

Transfer Out

Transfer Out te permite enviar fondos directamente a la cuenta bancaria de un destinatario (ACH) en Chile 🇨🇱: 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 comercio o el operador de back-office 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.
{
  "documentType": "RUT",
  "documentNumber": "12345678-9",
  "accountType": "CC",
  "accountNumber": "00123456789",
  "bankId": "001",
  "totalAmount": 50000,
  "currency": "CLP",
  "name": "Catalina Fuentes",
  "mail": "user@example.com",
  "paymentDescription": "Pago proveedor"
}
Referencia de campos:
CampoObligatorioNotas
documentTypeOpcionalRUT: el único valor aceptado en Chile
documentNumberOpcionalNúmero de documento del destinatario
accountType✅Consulta la tabla de tipos de cuenta más abajo
accountNumber✅Número de cuenta bancaria del destinatario
bankIdOpcionalIdentificador del banco tomado de la lista de bancos
totalAmount✅Monto de la dispersión en CLP (entero)
currency✅CLP
nameOpcionalNombre completo del destinatario. En Chile no se permiten caracteres especiales.
mailOpcionalCorreo electrónico del destinatario
paymentDescriptionOpcionalDescripción de la transferencia. En Chile no se permiten caracteres especiales.
⚠️ Sin caracteres especiales: Chile no permite caracteres especiales en paymentDescription ni en name. Usa solo letras y números ASCII estándar.
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": 50000,
    "iva": 0
  },
  "webhooks": [
    {
      "events": ["approvedTransaction", "declinedTransaction"],
      "urls": ["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 de la dispersión. La transferencia puede tardar en procesarse según el banco del destinatario.
{
  "ticketNumber": "319228478889680318",
  "transactionStatus": "APPROVAL",
  "totalAmount": 50000,
  "currency": "CLP",
  "bankId": "001",
  "documentType": "RUT",
  "documentNumber": "12345678-9"
}

Moneda#

MonedaCódigoNotas
Peso chilenoCLPSolo montos enteros: sin decimales

Tipos de cuenta#

ValorDescripción
CCCuenta Corriente
CACuenta de Ahorro
CVCuenta Vista / RUT (Banco Estado)
ℹ️ CV — Banco Estado: envía el RUT del destinatario sin el dígito verificador. Para cualquier otro banco, envía el número de cuenta bancaria estándar.

Tipos de documento#

ValorDescripción
RUTRol Único Tributario 🇨🇱: el único tipo de documento aceptado en Chile

Valores de estado de la transacción#

EstadoDescripción
INITIALIZEDTransferencia creada: en proceso con el banco
APPROVALFondos dispersados correctamente
PROCESSINGEl banco está procesando la transferencia
DECLINEDTransferencia rechazada por el banco del destinatario

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": 500000,
  "currency": "CLP",
  "balanceDate": 1748520000000
}
balanceDate es un timestamp Unix (en milisegundos).
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": [
    {
      "events": ["approvedTransaction", "declinedTransaction"],
      "urls": ["https://yoursite.com/kushki/payout-notify"]
    }
  ]
}

Autenticación#


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 CLP.

¿Tienes una sugerencia sobre esta documentación? Escríbenos.
Modified at 2026-09-07 16:58:39
Previous
Consultar estado
Next
Consultar lista de bancos
Built with