Recaudo Docs

Pagos y clientes

Suscripciones

Las suscripciones te permiten cobrar de forma recurrente a tus clientes. Soportan periodos de prueba, pausas y cambios de plan.

POST /v1/subscriptions

Crear suscripción

Crea una nueva suscripción para un cliente. Puedes usar un método de pago almacenado o un token de recaudo.js.

Tokenización: Puedes usar el parámetro token con un token de recaudo.js (tok_xxx) en lugar de payment_method. El token será convertido automáticamente en un método de pago almacenado.

Parámetros

Parámetro Tipo Requerido Descripción
customer string (uuid) Sí ID del cliente
plan string (uuid) Sí ID del plan de suscripción
payment_method string (uuid) No* ID de método de pago almacenado. Requerido si no hay trial y no se usa token.
token string No* Token de recaudo.js (tok_xxx para Conekta, pm_xxx para Stripe). Alternativa a payment_method.
card object No Info de tarjeta de recaudo.js: { brand, last4, exp_month, exp_year }. Recomendado para mejor seguimiento
trial_days integer No Días de prueba (0-365)
amount numeric No Monto personalizado (reemplaza el del plan)
metadata object No Datos adicionales
curl -X POST https://recaudo.app/api/v1/subscriptions \
  -H "Authorization: Bearer sk_live_xxx" \
  -H "Content-Type: application/json" \
  -d '{
    "customer": "550e8400-e29b-41d4-a716-446655440000",
    "plan": "660e8400-e29b-41d4-a716-446655440001",
    "token": "tok_abc123def456",
    "card": {
      "brand": "visa",
      "last4": "4242",
      "exp_month": 12,
      "exp_year": 2027
    },
    "metadata": {
      "signup_source": "landing_page"
    }
  }'
curl -X POST https://recaudo.app/api/v1/subscriptions \
  -H "Authorization: Bearer sk_live_xxx" \
  -H "Content-Type: application/json" \
  -d '{
    "customer": "550e8400-e29b-41d4-a716-446655440000",
    "plan": "660e8400-e29b-41d4-a716-446655440001",
    "payment_method": "770e8400-e29b-41d4-a716-446655440002",
    "metadata": {
      "signup_source": "landing_page"
    }
  }'
Respuesta 201
{
  "id": "2b76a920-5381-4414-a2ae-34950faf16d7",
  "object": "subscription",
  "status": "active",
  "customer_id": "8e250c25-9d84-4892-98ec-d71fc1fcd3c7",
  "plan": {
    "id": "5f1c7b3e-2a94-4d18-b6c0-9e3f8a1d7c25",
    "name": "Premium Mensual",
    "amount": 299.00,
    "currency": "MXN",
    "interval": "month"
  },
  "current_period_start": "2024-01-15T00:00:00Z",
  "current_period_end": "2024-02-15T00:00:00Z",
  "trial_end": null,
  "cancel_at_period_end": false,
  "created_at": "2024-01-15T10:30:00Z"
}

Acciones de suscripción

POST /v1/subscriptions/:id/cancel Cancelar suscripción
curl -X POST https://recaudo.app/api/v1/subscriptions/2b76a920-5381-4414-a2ae-34950faf16d7/cancel \
  -H "Authorization: Bearer sk_live_xxx" \
  -d '{"cancel_at_period_end": true, "reason": "too_expensive"}'
POST /v1/subscriptions/:id/pause Pausar suscripción
curl -X POST https://recaudo.app/api/v1/subscriptions/2b76a920-5381-4414-a2ae-34950faf16d7/pause \
  -H "Authorization: Bearer sk_live_xxx"
POST /v1/subscriptions/:id/resume Reanudar suscripción
curl -X POST https://recaudo.app/api/v1/subscriptions/2b76a920-5381-4414-a2ae-34950faf16d7/resume \
  -H "Authorization: Bearer sk_live_xxx"
¿Te sirvió esta página? Gracias por avisarnos.
Esc