Skip to Content
Pagar ProveedoresResumen

Pagar Proveedores (PAYOUT)

Aprende cómo enviar pagos desde tu saldo virtual a cuentas bancarias externas.

¿Qué es PAYOUT?

PAYOUT es el tipo de orden utilizado para enviar fondos desde tu cuenta de saldo virtual a cuentas bancarias externas (proveedores, vendedores, contratistas, etc.).


Casos de Uso

🏢Pagos a Vendedores

Pagar a proveedores y vendedores por bienes y servicios

👔Pagos a Contratistas

Enviar pagos a freelancers y contratistas

↩️Reembolsos

Devolver pagos a clientes

🤝Liquidaciones Marketplace

Pagar a vendedores en tu plataforma marketplace


Cómo Funciona

Flujo de Alto Nivel

Verifica tu saldo virtual

Asegúrate de tener fondos suficientes

Crea contacto de proveedor

Almacena información del proveedor y cuenta bancaria

Crea orden PAYOUT

Especifica monto y cuenta bancaria de destino

Fondos son debitados

Dinero es inmediatamente reservado de tu cuenta virtual

Transferencia bancaria iniciada

Koywe inicia transferencia al banco del proveedor

Proveedor recibe fondos

Tiempo de liquidación varía por país (instantáneo a 24 horas)

Recibes confirmación

Notificación webhook cuando la transferencia se completa

Diagrama de Flujo Detallado


Prerequisitos

Antes de hacer payouts:

Requerido:

  • ✅ Fondos suficientes en cuenta virtual
  • ✅ Contacto de proveedor creado
  • ✅ Cuenta bancaria de proveedor vinculada
  • ✅ Detalles de cuenta bancaria verificados

Crítico: Siempre verifica el saldo de tu cuenta virtual antes de crear una orden PAYOUT. Las órdenes fallarán si no tienes fondos suficientes.


Países Soportados

El lado payout de cada corredor. Para la cobertura de payin, las monedas y el rail local detrás de cada uno, ver Corredores y Monedas Soportadas.

Colombia 🇨🇴

  • Método: ACH Colombia, Bre-B
  • Moneda: COP
  • Liquidación: ACH opera por ciclos; Bre-B se liquida en segundos
  • Bancos: Todos los bancos colombianos
  • Destinos Bre-B: declara rail: "BREB" en la cuenta de destino y pon la llave en accountNumber — ver Rieles de Pago

Brasil 🇧🇷

  • Método: Transferencia PIX
  • Moneda: BRL
  • Liquidación: Instantánea
  • Bancos: Todos los bancos brasileños con PIX

México 🇲🇽

  • Método: Transferencia SPEI
  • Moneda: MXN
  • Liquidación: Instantánea ⚡
  • Bancos: Todos los bancos mexicanos

Chile 🇨🇱

  • Método: Archivo de pagos masivos
  • Moneda: CLP
  • Liquidación: Prácticamente instantánea. Las transacciones sobre CLP 7.000.000 se dividen en partes
  • Bancos: Todos los bancos chilenos

Argentina 🇦🇷

  • Método: Transferencia a un CVU nominativo
  • Moneda: ARS
  • Liquidación: 1-2 días hábiles
  • Bancos: Todos los bancos argentinos. Solo cuentas nominativas — la identidad del beneficiario debe coincidir

Perú 🇵🇪

  • Método: Transferencia bancaria
  • Moneda: PEN, USD
  • Liquidación: 1-2 días hábiles
  • Bancos: Todos los bancos peruanos

Bolivia 🇧🇴

  • Método: Transferencia bancaria
  • Moneda: BOB
  • Liquidación: 1-2 días hábiles
  • Bancos: Todos los bancos bolivianos

Venezuela 🇻🇪

  • Método: Transferencia bancaria
  • Moneda: VES
  • Liquidación: 1-2 días hábiles
  • Bancos: Todos los bancos venezolanos
  • Límite diario de pago: $3,500 USD equivalente por día

Estados Unidos 🇺🇸

  • Método: Wire o ACH a una cuenta nominativa
  • Moneda: USD
  • Liquidación: 1-2 días hábiles
  • Bancos: Todos los bancos de EE.UU. (requiere routing number)
  • Nota: Requiere un onboarding KYB/KYC aparte

Ejemplo Rápido

Aquí hay un flujo PAYOUT simple:

// 1. Verificar saldo const balance = await getBalance(token, orgId, merchantId, 'COP'); console.log('Disponible:', balance.availableBalance); // ej., 1,000,000 COP // 2. Crear contacto de proveedor const provider = await createContact(token, orgId, merchantId, { firstName: 'Servicios ABC SAS', countrySymbol: 'CO', documentType: 'NIT', documentNumber: '900123456-1', businessType: 'COMPANY', type: 'BUSINESS', email: 'proveedor@ejemplo.com' }); // 3. Agregar cuenta bancaria const bankAccount = await addBankAccount(token, orgId, merchantId, provider.id, { name: 'Bancolombia COP', kind: 'BANK', isDefault: true, countrySymbol: 'CO', currencySymbol: 'COP', entity: 'BANCOLOMBIA', accountNumber: '1234567890', type: 'CHECKING' }); // 4. Crear orden PAYOUT const payout = await createPayoutOrder(token, orgId, merchantId, { type: 'PAYOUT', originCurrencySymbol: 'COP', destinationCurrencySymbol: 'COP', amountIn: 500000, // 500,000 COP contactId: provider.id, destinationAccountId: bankAccount.id, description: 'Pago por Factura #INV-001' }); console.log('Payout creado:', payout.id); console.log('Estado:', payout.status); // "PROCESSING"

Diferencias Clave vs PAYIN

CaracterísticaPAYINPAYOUT
DirecciónCliente → Tu cuentaTu cuenta → Proveedor
SaldoAcredita tu cuentaDebita tu cuenta
URL de PagoSí (para cliente)No
Cuenta BancariaOpcionalRequerida
ContactoOpcionalRecomendado
Verificación SaldoNo necesariaCrítica

Comparación de Flujo de Pago

PAYIN (Recibir)

Cliente paga → Fondos acreditados → Webhook → Cumplir orden

PAYOUT (Enviar)

Verificar saldo → Crear orden → Fondos debitados → Transferencia bancaria → Confirmación webhook

Requisitos de Saldo

Verificar Saldo Antes de PAYOUT

async function safeCreatePayout(token, orgId, merchantId, payoutData) { // 1. Obtener saldo actual const balances = await getMerchantBalances(token, orgId, merchantId); const balance = balances.find(b => b.currencySymbol === payoutData.currency); // 2. Verificar saldo disponible if (!balance || balance.availableBalance < payoutData.amount) { throw new Error( `Saldo insuficiente. Disponible: ${balance?.availableBalance || 0} ${payoutData.currency}, ` + `Requerido: ${payoutData.amount} ${payoutData.currency}` ); } console.log(`✓ Saldo suficiente: ${balance.availableBalance} ${payoutData.currency}`); // 3. Crear payout const payout = await createPayoutOrder(token, orgId, merchantId, payoutData); return payout; }

Tiempos de Liquidación

Comprender cuándo los proveedores reciben fondos:

PaísMétodoLiquidación Típica
ColombiaACH Colombia / Bre-BACH por ciclos; Bre-B en segundos
BrasilPIXInstantánea (24/7)
MéxicoSPEIInstantánea ⚡
ChileArchivo de pagos masivosPrácticamente instantánea
ArgentinaTransferencia a CVU nominativo1-2 días hábiles

Para todos los corredores de payout, incluidos Bolivia, Perú, Venezuela, Estados Unidos y la liquidación transfronteriza, ver Corredores y Monedas Soportadas.

Horas Hábiles: Para países con restricciones de horario hábil, las transferencias iniciadas fuera de horario o fines de semana pueden procesarse el próximo día hábil.


Próximos Pasos


Recursos Adicionales

Last updated on