Cobros
Tres formas de cobrar, según cuánta fricción quieras: mandarle la solicitud a la app del cliente, enseñarle un QR, o aceptar que te mande el comprobante de una transferencia. Las dos primeras se concilian solas; la tercera la revisa una persona.
Pago push a Nequi
La forma con menos fricción: el cliente recibe la solicitud en su app y solo aprueba. No hay que mandarle enlaces ni que copie nada.
# ¿Está disponible en esta organización?
curl "https://api.mosend.dev/organizations/${ORG_ID}/billing/nequi/enabled" -H "X-Api-Key: ${API_KEY}"
# Enviar la solicitud al celular
curl -X POST "https://api.mosend.dev/organizations/${ORG_ID}/billing/nequi/push" \
-H "X-Api-Key: ${API_KEY}" -H "Content-Type: application/json" \
-d '{ "phone": "3001234567", "amountCents": 4500000 }'
# Consultar el estado (verifica en vivo contra Nequi si sigue pendiente)
curl "https://api.mosend.dev/organizations/${ORG_ID}/billing/nequi/${PAYMENT_ID}/status" \
-H "X-Api-Key: ${API_KEY}"Si el cliente cierra el modal o se arrepiente, POST /billing/nequi/:paymentId/cancel cierra el pago pendiente en vez de dejarlo colgando.
QR dinámico
POST /billing/nequi/qr genera un QR por el monto exacto. Sirve cuando no tienes el número del cliente o cuando cobras en mostrador: se muestra en pantalla y el cliente lo escanea.
Conciliación: escucha, no preguntes
Consultar el estado en bucle funciona, pero desperdicia llamadas y llega tarde. Wompi avisa cuando el pago se confirma:
POST /webhooks/wompi— endpoint general.POST /webhooks/wompi/:orgId— URL propia por organización, útil si cada una configura su cuenta en Wompi.
Los dos validan la firma del proveedor antes de tocar nada, y reconcilian el pago con la orden. No hace falta que los llames tú: se los das a Wompi.
Comprobantes Bre-B / QR
Para pagos que llegan por transferencia, el cliente reporta el comprobante y alguien de Mosend lo verifica:
GET /billing/payment-reports/breb-info— la llave Bre-B y el QR de cobro, para enseñárselos al cliente.POST /billing/payment-reports— sube el comprobante.GET /billing/payment-reports— historial, y/:id/receiptdevuelve una URL firmada del archivo.
Este camino no acredita el saldo solo: queda pendiente de verificación humana. Es la diferencia con Nequi y Wompi.
Detalles que evitan sorpresas
- Los montos van en centavos (
amountCents): 45.000 COP son4500000. Es la fuente número uno de cobros por cien veces el precio. - Nequi puede no estar habilitado en el servidor. Comprueba
/billing/nequi/enabledantes de ofrecerlo en tu interfaz, en vez de descubrirlo con un error delante del cliente. - Un pago pendiente que nadie cancela queda ocupando la orden. Cierra el modal con
/cancel. - Para vender licencias, el cobro ya va incluido en el checkout del módulo — no hace falta orquestarlo a mano. Ver licencias digitales.
Referencia completa en API · nequi-payments y API · payment-reports.