Guía: Crear empresa, clínica y asignar plan
Esta guía describe el flujo de onboarding de una empresa en Salud 360 (PHOQO): crear la empresa, crear sus clínicas y asignarle un plan de facturación.1.
Crear empresa → POST /v1/companies
2.
Crear clínica(s) para esa empresa → POST /v1/companies/{company_id}/clinics
3.
Asignar un plan a la empresa → POST /v2/billing/subscriptions/assign
1. Crear empresa#
Crea la empresa (tenant). Es el primer paso del onboarding.Body#
| Campo | Tipo | Requerido | Descripción |
|---|
identificationNumber | string | Sí | Identificador tributario (ej. RUT 77534515-2) |
businessName | string | Sí | Razón social |
status | string | Sí | active | inactive |
activeServices | object | Sí | Servicios activos (habilitación legacy) |
acteco | integer | No | Código actividad económica (facturación) |
business | string | No | Giro actividad económica (facturación) |
Ejemplo#
{
"identificationNumber": "77534515-2",
"businessName": "SERVICIOS TECNOLÓGICOS SALUD 360 SPA",
"status": "active",
"activeServices": {}
}
Respuesta (200)#
{
"company": {
"identificationNumber": "18331089-5",
"businessName": "Claudio Miranda",
"status": 1,
"id": "6a0bb063-587b-4d24-960d-31030db1255f",
"createAt": "2022-03-29 15:47:16.302664",
"trackingId": "cb25770b-e86b-4b05-8b65-693e01e2b35b"
},
"codigo": 10,
"mensaje": "Acción realizada satisfactoriamente",
"fecha": "2022-03-29 12:47:16",
"seguimientoId": "cb25770b-e86b-4b05-8b65-693e01e2b35b",
"duracion": 405
}
Guarda company.id: es el company_id para crear clínicas y el companyId para asignar el plan.
2. Crear clínica#
POST /v1/companies/{company_id}/clinicsCrea una clínica (grupo) dentro de la empresa. Repetir por cada clínica.Path params#
| Param | Tipo | Requerido | Descripción |
|---|
company_id | string | Sí | UUID de la empresa creada en el paso 1 |
Body#
| Campo | Tipo | Requerido | Descripción |
|---|
identification | string | Sí | Identificador de la clínica (ej. RUT) |
name | string | Sí | Nombre de la clínica |
Ejemplo#
{
"identification": "18331089-5",
"name": "Clinica 1"
}
Respuesta (200)#
{
"clinic": {
"identification": "18331089-5",
"name": "Clinica 1",
"id": "8f788fe3-1ef9-4e4a-bcaa-bcc337d3437e",
"company": "ed5ea557-248a-46a8-8524-0a57eaabb78d",
"status": "active",
"createdAt": "2022-05-23 15:20:13.254990",
"trackingId": "589440b6-d22b-4e34-8331-f518f7fd772e"
},
"codigo": 10,
"mensaje": "Acción realizada satisfactoriamente",
"fecha": "2022-05-23 11:20:13",
"seguimientoId": "589440b6-d22b-4e34-8331-f518f7fd772e",
"duracion": 1239
}
El clinic.id corresponde al grupo usado como contexto en el resto de la API.
3. Asignar plan a la empresa#
POST /v2/billing/subscriptions/assignAsigna un plan a una empresa creando/actualizando sus suscripciones por feature (pozo de tokens del período + almacenamiento acumulado). Es idempotente respecto al consumo: preserva el used.Obtener el planId#
Los planes se gestionan en el módulo billing. Para conocer los IDs disponibles:GET /v2/billing/plans — listar planes activos
GET /v2/billing/plans/{plan_id} — obtener un plan
POST /v2/billing/plans — crear plan
PUT /v2/billing/plans/{plan_id} — actualizar plan
| Header | Requerido | Descripción |
|---|
empresa | Sí | UUID de la empresa/tenant. Define el contexto |
grupo | No | UUID del grupo/clínica activo |
x-application | No | Aplicación de origen (ej. PHOQO) |
Body#
| Campo | Tipo | Requerido | Descripción |
|---|
planId | string | Sí | ID del plan a asignar (ej. plan_pro) |
companyId | string | No | ID de la empresa. Si se omite, usa la empresa del header empresa |
Ejemplo#
{
"planId": "plan_pro",
"companyId": "d6baef78-d4f0-457a-a119-7ebbbd4cdee8"
}
Respuesta (200)#
{
"companyId": "d6baef78-d4f0-457a-a119-7ebbbd4cdee8",
"planId": "plan_pro",
"planType": "...",
"billingPeriod": "...",
"tokenPool": {},
"storage": {}
}
Errores#
| Código | Caso |
|---|
| 400 | Falta planId |
| 404 | El plan no existe |
Diferencia entre activeServices (V1) y el plan de billing (V2)#
El campo activeServices del POST /v1/companies es un mecanismo legacy de habilitación de servicios a nivel de empresa.
La asignación de plan se hace con el endpoint de billing V2 (POST /v2/billing/subscriptions/assign), que gestiona suscripciones por feature (tokens + almacenamiento). Este es el mecanismo vigente para asignar el plan a una empresa.
Modificado en 2026-10-21 17:50:30