1. Métodos alternativos de pago (APM)
Kushki Docs
Español
  • Español
  • English
  • Inicio
  • Inicio rápido
    • Últimas novedades
    • Datos de prueba
    • Preguntas frecuentes
    • Paso a producción
    • Política de cambios importantes del API
    • Códigos de error
  • 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
      • Acepta un pago con tarjeta
      • Cargo directo (sin token)
      • ¿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
    • Pagos en dos pasos
      • Recibe pagos con autorización y captura
      • ¿Cómo funcionan los pagos únicos con autorización y captura?
    • Devoluciones
      • Devoluciones, anulaciones y reembolsos
    • Autenticación 3DS
      • Integración 3DS API + librería kushki.js
      • Introducción a 3DS
      • Integración 100% API de 3DS
      • Integración 3DS con librería kushki.js
      • Códigos de error autenticación 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
    • Suscripciones externas a Kushki
    • Acepta pagos one click con 3DS
    • Funcionalidades por modelo de negocio
    • Códigos de error en cargos recurrentes
    • Pagos calendarizados
      • Maneja tus cargos calendarizados
      • Crea un cargo calendarizado
      • ¿Cómo funcionan los cargos recurrentes con tarjeta?
    • Pagos OneClick
      • Recibe pagos OneClick con autorización y captura
      • Genera pagos one click
      • ¿Cómo funcionan los pagos OneClick con autorización y captura?
  • Pagos con tarjeta presente
    • Acepta pagos con tarjeta presente
    • Datos de prueba
    • Webhooks para tarjeta presente
    • Raw card-present API
      • Introducción a Raw card-present API
      • Script de ejemplo para cifrar información
      • Acepta pagos
      • Intercambio de claves criptográficas
      • Preguntas frecuentes
      • Códigos de error para transacciones con tarjeta presente
    • Kushki One
      • Primeros Pasos
      • Autenticación y Cifrado de Requests
      • Realiza cobros con Kushki One
      • Formato de montos en Kushki ONE
      • Impresión en terminal SmartPOS
      • Catálogo Unificado de Errores — Kushki ONE Connect
      • Servicios asíncronos y webhooks
    • Kushki One App de Pagos
      • Descripción general
      • Devoluciones y PreAuth & Capture
      • Pago Dividido en la terminal
      • Configuración del terminal
      • Procesa un cobro
      • Consulta tus transacciones
    • Transacciones
      • Transacciones
      • Anula un pago
  • Pagos con transferencias
    • Recibe transferencias bancarias
    • Códigos de error para transferencias
    • Consulta el estado de una transacción
    • Bancos y detalles de operación para pagos con transferencia bancaria
  • Pagos en efectivo
    • Acepta un pago en efectivo
    • ¿Cómo funcionan los pagos en efectivo?
    • Puntos de recaudo
    • Códigos de error para transacciones declinadas en efectivo
  • Métodos alternativos de pago (APM)
    • ¿Cómo funcionan los pagos con APM?
    • Acepta pagos con Bre-B
  • Dispersión de dinero
    • Recarga tu saldo para dispersiones
    • Transferencia bancaria
      • Dispersa a cuentas bancarias
      • Dispersa con Bre-B
      • Códigos de error para dispersiones por transferencia
      • ¿Cómo funciona la dispersión por transferencia bancaria?
    • Efectivo
      • Dispersa dinero en efectivo
      • Maneja tus dispersiones
      • ¿Cómo funciona la dispersión por efectivo?
  • Plugins
    • Shopify
      • Shopify
      • Operación del Plugin
    • Vtex
      • Guía de integración VTEX
  • Links de pago
    • Smartlinks
  • Formularios y botones de pago
    • Introducción
    • Kajita
      • Kajitas de pago
      • ¿Cómo funciona?
    • Botón de pago
      • Genera un botón de pago
      • ¿Cómo funciona el 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 smartlinks
      • Webhooks con Smartlinks
    • Webhooks para dispersiones
      • Webhook para dispersión de dinero con transferencia
      • Webhook para dispersión de dinero con efectivo
    • 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. Métodos alternativos de pago (APM)

¿Cómo funcionan los pagos con APM?

🚧 Early Release — Beta
Este producto está en acceso temprano. Los parámetros, estructuras de respuesta y comportamientos pueden cambiar sin previo aviso. No uses esta versión en producción sin coordinarlo previamente con el equipo de integraciones de Kushki.
Te explicamos cómo funcionan los métodos alternativos de pago (APM) y el flujo multiprocesador en Kushki
Los métodos alternativos de pago (APM) permiten a tus clientes pagar sin tarjeta, con rieles de pago en tiempo real. En Colombia hoy puedes aceptar pagos con Bre-B: el cliente escanea un código QR desde su app bancaria y autoriza el pago al instante.
Los APM funcionan con un flujo multiprocesador: una sola integración con la API de Kushki, en la que el procesador que uses en cada transacción define cómo integras y cómo paga tu cliente. Tu comercio puede tener habilitado uno o varios procesadores, y a medida que se habiliten más, tu integración no cambia: solo consultas qué procesadores tienes y armas el token según cada uno.
¿Buscas pagos con PSE?
PSE es la integración tradicional de transferencias bancarias y no cambia. Consulta Recibe transferencias bancarias.
Disponible solo para integraciones 100% API
El flujo multiprocesador aplica a integraciones directas con la API: el token se solicita desde tu backend. Kajita y Kushki.js aún no soportan el objeto processor.

El modelo: consulta tus procesadores#

Toda integración APM empieza por la misma pregunta: ¿qué procesadores tiene mi comercio? La respuesta vive en un solo lugar:
GET /transfer/v1/config (con tu credencial pública) → processors[]
Cada entrada de la respuesta te dice cómo continuar:
La entrada elegida...Es un procesador de...El token se arma...
Con supportedFlows (Bre-B)Flujos de pago APMCon processor: { name, flowType }, copiado tal cual de la respuesta; solo amount y currency siguen requeridos.
Sin supportedFlows (PSE)Redirección bancaria (tradicional)Sin el objeto processor. Sigue la guía de transferencias bancarias.
Si tu comercio tiene varios procesadores, usa supportedFlows de cada entrada para saber cómo armar el token con cada uno. Si tiene uno solo puedes omitir la consulta, pero intégrala desde el inicio: es la regla del producto a medida que se habilitan más procesadores y flujos.

El flujo, de punta a punta#

Procesadores disponibles#

Bre-B — pago con código QR en tiempo real#

1.
Consultas tus procesadores y eliges la entrada de Bre-B — no necesitas listado de bancos.
2.
Solicitas el token con el objeto processor y luego inicias la transacción.
3.
Kushki responde con un código QR (base64) que muestras a tu cliente.
4.
Tu cliente lo escanea desde su app bancaria y autoriza el pago en tiempo real. El QR vence en 10 minutos y puedes cancelar la transacción mientras no tenga estado final.
5.
Recibes el estado final por webhook o consultándolo con Get Status.
La guía completa está en Acepta pagos con Bre-B.

Arma el token según el procesador#

CasoprocessorRequeridosNotas
Bre-B QR{ "name": "Bre-B Credibanco Processor", "flowType": "QR" }amount, currency, processorbankId no aplica; los demás campos son opcionales.
El objeto processor no admite propiedades adicionales (produce 400) y flowType no tiene valor por defecto: sus valores se copian de la consulta de procesadores, sin alias.

Reglas condicionales para COP#

Aplican siempre que envíes estos campos opcionales:
CondiciónRegla
userType: "1" (persona jurídica)documentType debe ser "NIT".
userType: "0" (persona natural)documentType no puede ser "NIT".
documentType: "PP" (pasaporte)documentNumber alfanumérico, mínimo 6 (^[0-9a-zA-Z]{6,}$).
Cualquier otro documentTypedocumentNumber solo dígitos, mínimo 6 (^[0-9]{6,}$).

Compatibilidad token ↔ procesador#

El token queda ligado al procesador con el que fue generado; POST /transfer/v1/init lo valida:
Token generadoProcesador del comercioResultado
Con processor Bre-BBre-BContinúa (la respuesta trae qr).
Con processorOtro procesador422 E046.
Sin processorBre-B422 E046.
Con processor Bre-BBre-B sin llaves configuradas404 E049.
Si recibes E046, revisa la consulta de procesadores y regenera el token con el procesador correcto. Los errores de cada caso están en la sección Errores de la guía Acepta pagos con Bre-B.

Integra cada procesador#

Acepta pagos con Bre-B
Integración del pago con código QR en tiempo real
Modificado en 2026-10-21 18:00:07
Anterior
Métodos alternativos de pago (APM)
Siguiente
Acepta pagos con Bre-B
Built with