Skip to main content

Un endpoint, múltiples canales

Todos los cobros se crean con el mismo endpoint POST /payments. Lo que cambia es qué campos envías, y eso determina cómo le llega el cobro a tu cliente.
Puedes combinar varios campos en una misma solicitud. Por ejemplo, enviar phone + email + reference para que el cobro llegue por todos los canales simultáneamente.

Cobrar por WhatsApp

Envía el campo phone con el número en formato E.164. OnePay envía automáticamente un mensaje de WhatsApp con el link de pago.
Resultado: El cliente recibe un mensaje de WhatsApp con el link de pago y los detalles del cobro. Al hacer clic, se abre la página de pago.

Cobrar por Email

Envía el campo email. OnePay envía automáticamente un correo electrónico con el link de pago.
Resultado: El cliente recibe un correo electrónico con el link de pago y puede completar el pago desde ahí.
Si no necesitas enviar el cobro por WhatsApp ni email, simplemente crea el cobro con amount y title. Recibirás un payment_link que puedes compartir por el canal que prefieras (chat, redes sociales, SMS, etc.).
Respuesta:
Resultado: El cliente abre el link y ve el monto predefinido. Solo debe elegir el método de pago y completar la transacción.
Si necesitas que el cliente decida cuánto pagar (donaciones, aportes voluntarios, pagos parciales), omite el campo amount.
Resultado: El cliente abre el link y puede ingresar el monto que desee antes de completar el pago.

Referencia para el portal de pagos

Si usas el portal de pagos, envía el campo reference para que el cliente pueda buscar su cobro por referencia en el portal.
Resultado: El cliente ingresa al portal de pagos, busca la referencia APTO-401-ENE-2025 y puede pagar directamente desde ahí.
El portal de pagos se configura desde el administrador de OnePay. Puedes personalizar la imagen, textos y branding.

Combinar canales

Puedes enviar múltiples campos para que el cobro llegue por varios canales a la vez:
Resultado:
  • El cliente recibe el cobro por WhatsApp
  • También recibe el cobro por email
  • Puede buscar la referencia en el portal de pagos
  • Al pagar, es redirigido a redirect_url

Resumen: ¿Qué campo uso?

Configurar métodos de pago disponibles

Usa el campo allows para controlar qué métodos de pago verá el cliente en el link:

Escuchar el resultado

Independientemente del canal que uses, el resultado del pago se notifica por webhook:

Cobrar con QR Bre-B

Bre-B es el sistema de pagos inmediatos del Banco de la República. Con POST /charges/bre-b generas un código QR que el cliente escanea desde su aplicación bancaria para aprobar el pago al instante.
Este caso de uso usa un endpoint diferente (POST /charges/bre-b) en lugar de POST /payments.
Respuesta:

Mostrar el QR al cliente

El campo qr.image contiene la imagen en base64. Muéstrala directamente en tu frontend:

Flujo

  1. Tu sistema llama a POST /charges/bre-b para generar el QR
  2. Muestras el QR al cliente (en pantalla, impreso, etc.)
  3. El cliente escanea el QR desde su app bancaria
  4. El banco procesa el pago en segundos
  5. OnePay te notifica el resultado por webhook

Expiración del QR

Una vez expirado, el QR ya no puede usarse y el cargo se marca como failed. Para más detalles del endpoint, consulta la referencia de QR Bre-B.

¿Necesitas debitar directamente?

Si ya tienes la tarjeta o cuenta bancaria autorizada del cliente y quieres cobrar sin que el cliente interactúe con un link, consulta los casos de uso de débitos automáticos para ver el flujo completo con tarjetas, cuentas bancarias, Nequi y Daviplata.