Venflow API
V1PlanesPor ID

Obtener un Plan

GET
/v1/plans/{id}
Api-Key<token>

Tu clave API privada (comienza con pvk_)

In: header

Organization<token>

Tu ID de organización

In: header

Path Parameters

idstring
Formatuuid

Response Body

application/json

application/json

application/json

application/json

application/json

application/json

curl -X GET "https://api.venflow.app/v1/plans/497f6eca-6276-4993-bfeb-53cbbbba6f08"
{
  "active": true,
  "apply_discount_to_additional_items": true,
  "billing_cycles": 0,
  "created": 0.1,
  "description": "string",
  "external_id": "string",
  "frequency": "hourly",
  "id": "string",
  "is_taxes_included": true,
  "livemode": true,
  "meter_id": "string",
  "name": "string",
  "object": "plan",
  "price": 0,
  "product_id": "string",
  "trial_days": 0,
  "type": "recurring",
  "updated": 0.1,
  "usage_pricing_model": "per_unit",
  "usage_tiers": [
    {
      "unit_amount": 0.1,
      "up_to": 0
    }
  ],
  "usage_type": "licensed",
  "usage_unit_amount": 0
}
{
  "code": "not_found",
  "details": {},
  "message": "string"
}
{
  "code": "not_found",
  "details": {},
  "message": "string"
}
{
  "code": "not_found",
  "details": {},
  "message": "string"
}
{
  "code": "not_found",
  "details": {},
  "message": "string"
}
{
  "code": "not_found",
  "details": {},
  "message": "string"
}

Crear un Plan POST

Crea un plan. Un plan define el precio y la frecuencia de cobro de una suscripción. **Planes flat (`usage_type: licensed`, valor por defecto):** - `price` es obligatorio y se cobra por adelantado en cada ciclo. - Los campos de uso (`meter_id`, `usage_pricing_model`, `usage_unit_amount`, `usage_tiers`) deben omitirse. **Planes por uso (`usage_type: metered`):** - `price` debe omitirse — el monto sale del consumo medido y se factura al cierre de cada período (en arrears). - `meter_id` y `usage_pricing_model` son obligatorios. - `usage_pricing_model: per_unit` requiere `usage_unit_amount` (precio en USD por unidad; admite micro-precios, ej. `0.0005`). - `usage_pricing_model: tiered` (graduado — cada tramo cobra su tarifa marginal) o `volume` (todas las unidades cobran la tarifa del tramo alcanzado) requieren `usage_tiers`: lista de `{ up_to, unit_amount }` donde el último tramo debe ser abierto (`up_to: null`). - `usage_type` y `meter_id` son **inmutables** después de crear el plan. - Un plan es flat O por uso, nunca ambos. Para "fee flat + por consumo", crea un plan flat que referencie un plan metered como plan item. - `trial_days` y `billing_cycles` (cuotas) son compatibles con planes metered: el uso durante el trial no se cobra, y la última cuota incluye el uso del período final. Crea un nuevo plan para tu organización. Los planes definen precios y frecuencia de facturación para suscripciones.

Actualizar un Plan PATCH

Actualiza un plan. Aplican las mismas reglas de consistencia que al crear: - `usage_type` y `meter_id` **no pueden modificarse** — enviarlos devuelve error. Para cambiar el medidor, crea un plan nuevo. - En planes metered puedes actualizar `usage_pricing_model`, `usage_unit_amount` y `usage_tiers` (mismas reglas de tramos: el último con `up_to: null`). - En planes metered `price` no es aceptado; en planes flat los campos de uso no son aceptados. Actualiza el plan especificado estableciendo los valores de los parámetros proporcionados. Los parámetros no proporcionados permanecerán sin cambios.