Skip to Content
Documentación de integración del API de Ripei. ¿Dudas? soporte@pagosripei.com
EndpointsPlanes

Planes

Un plan define las reglas de facturación: el monto y cada cuánto se factura. Las suscripciones unen un cliente a un plan.

Depende de: configuración de cuotas (solo si el plan es por cuotas — se crea ANTES del plan). Lo necesitan: suscripciones.


Crear un plan

POST /plan/company

Scope requerido: plan.create

Cuerpo

CampoTipoRequeridoDescripción
namestringSíNombre del plan (ej. “Plan mensual escolar”). No puede ser vacío.
amountnúmeroSíMonto en USD por ciclo. No puede ser 0.
frequencystringNoDAILY, WEEKLY, BIWEEKLY, MONTHLY, QUARTERLY, SEMIANNUALLY, YEARLY. Determina cada cuánto se genera la factura.
enforceCustomRatebooleanNotrue para aplicar la tasa de cambio personalizada de tu empresa en lugar de la tasa BCV del día.
allowedPaymentCurrencystringNoUSD, VES o EUR. Limita el plan a métodos de pago de esa moneda. Omitirlo o enviar null = sin restricción.
planSettingsIdnúmeroNoID de la configuración de cuotas. Solo para planes por cuotas.

Si envías planSettingsId, la suma de las cuotas definidas en esa configuración debe coincidir exactamente con el amount del plan — si no, la API responde RIPEI-PLAN-005 indicando ambos montos.

Restringir con qué se puede pagar

allowedPaymentCurrency limita el plan a los métodos de pago de una sola moneda. Al cliente solo se le ofrecen esos métodos al pagar por WhatsApp, y si elige otro (por ejemplo, desde un mensaje viejo del chat) el pago se rechaza con una explicación.

La restricción aplica a lo que el cliente elige. Registrar un pago por este API no se bloquea: si alguien pagó por una vía distinta, puedes asentarlo igual.

Dos cosas a tener en cuenta:

  • Si tu empresa no tiene métodos de pago activos en esa moneda, el plan se crea igual pero nadie va a poder pagarlo por WhatsApp hasta que crees uno.
  • Los planes que ya existen quedan sin restricción; no cambia nada si no envías el campo.

Ejemplo

curl -X POST https://api.qa.pagosripei.com/plan/company \ -H "Authorization: Bearer $RIPEI_TOKEN" \ -H "company: 42" \ -H "Content-Type: application/json" \ -d '{ "name": "Plan mensual escolar", "amount": 50, "frequency": "MONTHLY" }'

Respuesta 201

{ "id": 88, "name": "Plan mensual escolar", "amount": 50, "frequency": "MONTHLY" }

Editar un plan

PUT /plan/:planId/company

Scope requerido: plan.update

Acepta los mismos campos, todos opcionales — solo se actualizan los enviados.

Para quitar la restricción de moneda envía "allowedPaymentCurrency": null. Omitir el campo la deja como estaba.

Errores

CódigoCausa
RIPEI-PLAN-001name vacío.
RIPEI-PLAN-002amount en cero.
RIPEI-PLAN-003Plan no encontrado (o pertenece a otra empresa).
RIPEI-PLAN-004planSettingsId no encontrado (o pertenece a otra empresa).
RIPEI-PLAN-005La suma de cuotas no coincide con el monto del plan.
Last updated on