1. Transferencia bancaria
Kushki Docs
Español
  • Español
  • English
  • Inicio
  • Inicio rápido
    • Preguntas frecuentes
    • Paso a producción
    • Política de cambios importantes del API
    • Códigos de error
    • Datos de prueba
    • Últimas novedades
  • Glosario de pagos
    • Glosario de pagos
  • Pagos únicos con tarjeta (Online)
    • Network Tokens
    • Marcas de tarjeta soportadas
    • Funcionalidades por modelo de negocio
    • Pagos en un paso
      • ¿Cómo funcionan los pagos con tarjeta?
      • Acepta pagos únicos con OTP
      • Códigos de error autenticación OTP
      • Códigos de error pagos únicos con tarjeta
      • Cargo directo (sin token)
      • Acepta un pago con tarjeta
    • Pagos en dos pasos
      • ¿Cómo funcionan los pagos únicos con autorización y captura?
      • Recibe pagos con autorización y captura
    • Devoluciones
      • Devoluciones, anulaciones y reembolsos
    • Autenticación 3DS
      • Integración 100% API de 3DS
      • Integración 3DS con librería kushki.js
      • Códigos de error autenticación 3DS
      • Integración 3DS API + librería kushki.js
      • Introducción a 3DS
    • Pagos con Apple Pay
      • Configuración de Apple Pay
      • Pruebas en Sandbox Apple Pay
  • Pagos recurrentes con tarjeta (Online)
    • Autentica tus suscripciones con 3DS
    • Apple Pay en Suscripciones
    • Acepta pagos one click con 3DS
    • Funcionalidades por modelo de negocio
    • Códigos de error en cargos recurrentes
    • Suscripciones externas a Kushki
    • Pagos calendarizados
      • Crea un cargo recurrente
      • Maneja tus cargos calendarizados
      • ¿Cómo funcionan los cargos recurrentes con tarjeta?
    • Pagos OneClick
      • ¿Cómo funcionan los pagos OneClick con autorización y captura?
      • Genera pagos one click
      • Recibe pagos OneClick con autorización y captura
  • Pagos con tarjeta presente
    • Datos de prueba
    • Acepta pagos con tarjeta presente
    • Webhooks para tarjeta presente
    • Raw card-present API
      • Introducción a Raw card-present API
      • Script de ejemplo para cifrar información
      • Intercambio de claves criptográficas
      • Preguntas frecuentes
      • Códigos de error para transacciones con tarjeta presente
      • Acepta pagos
    • Transacciones
      • Anula un pago
      • Transacciones
    • Kushki One
      • Autenticación y Cifrado de Requests
      • Realiza cobros con Kushki One
      • Servicios asíncronos y webhooks
      • Formato de montos en Kushki ONE
      • Catálogo Unificado de Errores — Kushki ONE Connect
      • Primeros Pasos
      • Impresión en terminal SmartPOS
    • Kushki One App de Pagos
      • Descripción general
      • Devoluciones y PreAuth & Capture
      • Pago Dividido en la terminal
      • Configuración del terminal
      • Consulta tus transacciones
      • Procesa un cobro
  • Pagos con transferencias
    • Consulta el estado de una transacción
    • Experiencias de compra y detalles de operación para pagos con transferencia bancaria
    • Recibe transferencias bancarias
  • Pagos en efectivo
    • Puntos de recaudo
    • Códigos de error para transacciones declinadas en efectivo
    • Acepta un pago en efectivo
  • Métodos alternativos de pago (APM)
    • ¿Cómo funcionan los pagos con APM?
    • Acepta pagos con Yape
  • Dispersión de dinero
    • Transferencia bancaria
      • ¿Cómo funciona la dispersión por transferencia bancaria?
      • Códigos de error para dispersiones por transferencia
      • Dispersa a cuentas bancarias
    • Tarjeta
      • ¿Cómo funciona el envío de fondos a tarjetas?
      • Envía dinero a una tarjeta
      • Códigos de error
  • Plugins
    • Shopify
      • Operación del Plugin
      • Shopify
    • Vtex
      • Guía de integración VTEX
  • Links de pago
    • Smartlinks
  • Formularios y botones de pago
    • Kajita
      • Kajitas de pago
      • ¿Cómo funciona?
    • Botón de pago
      • ¿Cómo funciona el botón de pago?
      • Genera un botón de pago
  • Administración de sucursales
    • ¿Cómo realizar el onboarding de subcomercios vía API?
  • Notificaciones
    • Buenas prácticas
    • Consulta tus webhooks
    • Webhooks para pagos únicos
      • Webhook para pagos únicos con tarjeta
      • Webhook para pagos únicos con transferencia bancaria
      • Webhook para pagos únicos con efectivo
    • Webhooks para pagos recurrentes
      • Webhook para pagos recurrentes con tarjeta
    • Webhooks para dispersiones
      • Webhook para dispersión de dinero con Transferencia
      • Webhook para dispersión con tarjeta
    • Webhooks para smartlinks
      • Webhooks con Smartlinks
    • Webhooks para botón de pagos
      • Webhooks con Botón de pago
    • Webhooks para devoluciones
      • Webhook para devoluciones
      • Webhook para contracargos
HomeMexico 🇲🇽Ecuador 🇪🇨Chile 🇨🇱Colombia 🇨🇴Peru 🇵🇪
HomeMexico 🇲🇽Ecuador 🇪🇨Chile 🇨🇱Colombia 🇨🇴Peru 🇵🇪
Status
Soporte / Support
Español
  • Español
  • English
  1. Transferencia bancaria

Dispersa a cuentas bancarias

Reparte tu dinero a las cuentas bancarias de tus clientes
El proceso para dispersar pagos con transferencia consiste en entregar dinero a las cuentas de tus clientes. En otras palabras, si dispones de la información bancaria de estos, puedes usar tu cuenta de dispersión de Kushki y por medio de transferencia enviar el dinero a sus cuentas, usando la lógica que prefieras.
Ideal para:
Pago a proveedores o vendedores
Marketplaces
Aplicaciones de delivery
Importante
Ten en cuenta que, debido a nuestras políticas de riesgo, los medios de pago disponibles y el tipo de integración pueden variar al momento en que formalices la afiliación. Te indicaremos cómo proceder en caso de que este proceso aplique para tu comercio.

Detalles de operación#

El proceso de dispersión en Perú se realiza a través del siguiente flujo: Comercio > Kushki > Procesador > Usuario.
ParámetroDetalle
Horario de procesamientoLunes a viernes de 7:00 a.m. – 8:00 p.m. Sábados de 7:00 a.m. – 2:30 p.m. Domingos y feriados: no se procesa.
Días de procesamientoLunes a sábado
Tiempo hasta abono en cuenta destino (BCP)Hasta 40 minutos después de que el pago haya sido procesado por BCP.
Tiempo hasta abono en cuenta destino (otros bancos)- Monto < S/. 420 000:
• Instruida antes de las 12:00 m.: abono mismo día.
• Instruida después de las 12:00 m.: abono al siguiente día hábil.
- Monto ≥ S/. 420 000:
• Instruida antes de las 12:30 p.m.: abono mismo día.
• Instruida después de las 12:30 p.m.: abono al siguiente día hábil.
Notificación de estado finalEl banco notifica cuando los fondos han sido abonados (máx. 40 minutos tras el procesamiento).
Monto mínimo por transacciónS/. 1.00
Monto máximo por transacciónA cuentas BCP: sin límite
A otros bancos: S/. 420 000
Tipos de cuenta destinatariasCuentas de persona natural y de empresa

Monedas soportadas#

El servicio de transfer out en Perú se encuentra disponible en moneda local (PEN).

Flujo#

El flujo que integrarás es el siguiente:
Flujo transfer out
Aquí aprenderás cómo integrar las dispersiones de dinero con transferencia.

1. Obtén el listado de bancos asociados#

El primer paso es consultar el listado de bancos disponibles para realizar la transferencia. Para ello, debes consumir este endpoint, el cual, te mostrará las instituciones bancarias disponibles para poder realizar la transacción.
JavaScript
Python
PHP
Como respuesta a esta llamada, recibirás el nombre (name) y el código (code) de los bancos disponibles. Este último debe ser enviado en la solicitud del token de transfer out.
A continuación un ejemplo de la respuesta a esta llamada:
[
  {
    "code": "093",
    "name": "FINANCIERA QAPAQ"
  },
  {
    "code": "023",
    "name": "BANCO DE COMERCIO"
  },
  {
    "code": "011",
    "name": "BBVA PERÚ"
  },
  {
    "code": "007",
    "name": "CITIBANK DEL PERÚ S.A."
  },
  {
    "code": "058",
    "name": "ALFIN BANCO S.A."
  },
  {
    "code": "808",
    "name": "CMAC HUANCAYO"
  },
  {
    "code": "038",
    "name": "BANCO INTERAMERICANO DE FINANZAS"
  },
  {
    "code": "096",
    "name": "FINANCIERA EFECTIVA"
  },
  {
    "code": "094",
    "name": "FINANCIERA OH"
  },
  {
    "code": "003",
    "name": "INTERBANK"
  },
  {
    "code": "009",
    "name": "SCOTIABANK PERÚ S.A.A."
  },
  {
    "code": "803",
    "name": "CMAC AREQUIPA"
  },
  {
    "code": "809",
    "name": "CMAC ICA"
  },
  {
    "code": "836",
    "name": "CAJA RAIZ"
  },
  {
    "code": "091",
    "name": "COMPARTAMOS FINANCIERA S.A."
  },
  {
    "code": "056",
    "name": "BANCO SANTANDER PERU"
  },
  {
    "code": "055",
    "name": "BANCO RIPLEY"
  },
  {
    "code": "062",
    "name": "BANK OF CHINA"
  },
  {
    "code": "805",
    "name": "CMAC SULLANA"
  },
  {
    "code": "049",
    "name": "MIBANCO, BANCO DE LA MICROEMPRESA S.A."
  },
  {
    "code": "002",
    "name": "BANCO DE CRÉDITO DEL PERÚ"
  },
  {
    "code": "800",
    "name": "CAJA METROPOLITANA"
  },
  {
    "code": "060",
    "name": "ICBC PERÚ BANK"
  },
  {
    "code": "813",
    "name": "CMAC TACNA"
  },
  {
    "code": "801",
    "name": "CMAC PIURA"
  },
  {
    "code": "806",
    "name": "CMAC CUSCO"
  },
  {
    "code": "035",
    "name": "BANCO PICHINCHA"
  },
  {
    "code": "099",
    "name": "FINANCIERA CONFIANZA"
  },
  {
    "code": "802",
    "name": "CMAC TRUJILLO"
  },
  {
    "code": "811",
    "name": "CMAC MAYNAS"
  },
  {
    "code": "043",
    "name": "CREDISCOTIA FINANCIERA S.A."
  },
  {
    "code": "053",
    "name": "BANCO GNB PERU"
  },
  {
    "code": "018",
    "name": "BANCO DE LA NACIÓN"
  },
  {
    "code": "054",
    "name": "BANCO FALABELLA PERÙ S.A."
  },
  {
    "code": "063",
    "name": "BANCO BCI PERU S.A."
  }
]

2. Tokeniza la información#

Una vez obtenido el código del banco al que está relacionada la cuenta bancaria para realizar la transferencia, deberás realizar la petición del token utilizando nuestro endpoint de solicitud de token de transferencia.

Tipo y número de documento#

En esta solicitud de token deberán incluir, entre otros datos el tipo (documentType) y número de documento (documentNumber) del destinatario:
CE: Cédula de extranjería. Con un máximo de 12 caracteres.
DNI: Documento de identidad de Perú, de 8 caracteres.
PAS: Pasaporte. Con un máximo de 12 caracteres.
RUC: Tax ID. Con un máximo de 11 caracteres.

Tipo y número de cuenta#

También deberás incluir el tipo de cuenta (accountType) y número de cuenta (accountNumber):
CC: cuenta corriente.
CA: cuenta de ahorros.
CM: cuenta maestra.

Dispersión a BCP#

Si el BankId (el code, recibido el el paso anterior) es 002, corresponde al BCP o Banco de Crédito del Perú, deberás tener en cuenta las siguientes especificaciones:
Si el BankId es 002 y el accountType es CC, el accountNumber debe tener 13 dígitos de longitud.
Si el BankId es 002 y el accountType es CA, el accountNumber debe tener 14 dígitos de longitud.
Si el BankId es 002 (BCP), el campo name (nombre completo del destinatario) es obligatorio en la solicitud del token — sin él, la transacción es rechazada.

Dispersión a bancos diferentes a BCP#

Si el valor de BankId es distinto de 002, se requiere enviar el CCI (Código de Cuenta Interbancaria). Este debe contener exactamente 20 dígitos y presentarse sin espacios, guiones ni caracteres especiales.
¿Quieres enviar múltiples pagos?
Si requieres enviar un volumen grande de transacciones de dispersión, te recomendamos tokenizarlas usando múltiples threads, guardar los tokens y luego realizar la inicialización de estas en cola usando el endpoint de inicialización. Recuerda que cada token tiene una duración de 30 minutos.
JavaScript
Python
PHP

3. Inicializa la transacción#

En esta etapa, debes recibir el token obtenido e iniciar el proceso de dispersión con Kushki. Por lo tanto, necesitarás realizar una llamada a nuestro endpoint de inicialización para procesar el pago.
JavaScript
Python
PHP
Revisa nuestra Referencia de la API para mayor información.
La respuesta proporciona, un número de ticket e indica el estado de la transacción.
Importante
Una vez inicializada una dispersión con transferencia no será posible anularla.

4. Consulta el estado de la transacción (opcional)#

Ahora que la transferencia está próxima a procesarse, puedes conocer el estado de la transacción utilizando webhooks o consultando manualmente utilizando nuestra API.

Webhook#

El estado de la transacción se notifica automáticamente una vez el dinero ha sido liquidado.
Para configurar un webhook a tu comercio de prueba, es necesario que lo notifiques a nuestros agentes especificando la URL y el método de pago, mediante correo electrónico.

API#

Puedes utilizar en nuestra API, el endpoint Get Status para consultar manualmente el estado de una transacción específica.
En caso de que la transacción tenga el estado de "Inicializada", deberás volver a hacer una consulta del estado de la transacción 10 minutos después de que se inició.

5. Prueba tu integración#

El resultado final de estos datos de prueba depende de la configuración de tu comercio: requiere que el ambiente de pruebas (sandbox) esté activo en tu comercio y que el procesador asignado admita simular ciertos estados. Si no obtienes el resultado esperado, escribe a tu ejecutivo de Kushki o a soporte.
Existen números de identificación de prueba que puedes utilizar en el ambiente UAT para asegurarte de que tu integración está lista.
Número de cuenta: 00316301312597216937
Número de identificación: 70015100
Tipo de identificación: DNI
Tipo de cuenta: CA
Número de identificación del banco: 003
Importante
Para recargar fondos para la fase de pruebas, envíanos un correo y para la fase de producción, debes hacer una transferencia de fondos con los siguientes datos:
Recarga a cuenta bancaria en soles (PEN)
Cuenta Corriente Abierta del banco BCP, moneda (PEN) No. 191-9413468-0-33
Por favor, envíanos el comprobante por correo electrónico.

6. Prepara tu certificación#

Toma en consideración las siguientes pautas para aprobar la certificación técnica (requerida para obtener credenciales productivas):
Mostrar mensajes en pantalla de acuerdo con las respuestas de Kushki.
Guardar y registrar todas las respuestas de Kushki (requeridas en caso de necesitar soporte).
Si se reciben notificaciones por webhook correctamente, responder a la solicitud con un status 200.
Asegurarse que en el cuerpo de la petición se envíen todos los campos requeridos en la referencia API.

Acepta webhooks
Maneja eventos pospago de la manera correcta.
Modificado en 2026-10-09 22:23:51
Anterior
Códigos de error para dispersiones por transferencia
Siguiente
Tarjeta
Built with