Saltar al contenido principal

kobana billing customers

Comandos de kobana billing customers. Toda opción global (Opciones globales) vale aquí.

ComandoHTTPDescripción
customers statement syncPOST /v1/customers/{id}/statement/syncReconstruir el extracto a partir del historial
customers statement listGET /v1/customers/{id}/statementListar extracto financiero del cliente
customers users listGET /v1/customers/{id}/usersListar usuarios del portal del cliente
customers users createPOST /v1/customers/{id}/usersInvitar usuario del portal
customers users invitePOST /v1/customers/{id}/users/inviteInvitar usuario del portal (verbo)
customers users getGET /v1/customers/{id}/users/{user_id}Obtener usuario del portal
customers users updatePATCH /v1/customers/{id}/users/{user_id}Actualizar usuario del portal
customers users deleteDELETE /v1/customers/{id}/users/{user_id}Eliminar usuario del portal
customers users email-previewGET /v1/customers/{id}/users/{user_id}/email-previewPrevisualizar correo del usuario del portal
customers users resendPOST /v1/customers/{id}/users/{user_id}/resendReenviar correo de invitación o verificación
customers listGET /v1/customersListar clientes
customers createPOST /v1/customersCrear cliente
customers updatePUT /v1/customersCrear o actualizar cliente
customers getGET /v1/customers/{id}Obtener cliente
customers deleteDELETE /v1/customers/{id}Eliminar cliente (soft delete)
customers recalculate-mrrPOST /v1/customers/{id}/recalculate-mrrRecalcular el MRR del cliente

customers statement sync​

Reconstruir el extracto a partir del historial

kobana billing customers statement sync [ID] [OPCIONES]

POST /v1/customers/{id}/statement/sync

Recrea los ítems del extracto a partir de las facturas, pagos y aplicaciones de crédito existentes. Devuelve el resumen de lo creado.

Argumentos de la ruta: id

Cuerpo de la solicitud

NombreTipoObligatorioDescripción
billing_account_idstring (uuid)noNecesario cuando el cliente tiene múltiples cuentas de cobro.

Otros campos y objetos anidados: kobana schema billing.customers.statement.sync.

Respuestas

HTTPDescripción
200Extracto reconstruido.
400El cuerpo de la solicitud falló en la validación.
404Recurso no encontrado en la organización actual.

customers statement list​

Listar extracto financiero del cliente

kobana billing customers statement list [ID] [OPCIONES]

GET /v1/customers/{id}/statement

Devuelve los movimientos del extracto (facturas, pagos, aplicaciones de crédito) de la cuenta de cobro del cliente. Cuando el cliente tiene múltiples cuentas, informa billing_account_id.

Argumentos de la ruta: id

Parámetros de consulta

NombreTipoObligatorioDescripción
pageintegernoPágina (comienza en 1). Por defecto: 1.
per_pageintegernoÍtems por página. Por defecto: 20. Máximo: 100.
sort_bystringnoCampo de ordenación. El valor por defecto depende del recurso.
sort_orderstringnoDirección de ordenación. Por defecto: desc. Valores: asc, desc.
billing_account_idstringnoNecesario cuando el cliente tiene múltiples cuentas de cobro.

Respuestas

HTTPDescripción
200Lista paginada de ítems del extracto.
400El cuerpo de la solicitud falló en la validación.
404Recurso no encontrado en la organización actual.

customers users list​

Listar usuarios del portal del cliente

kobana billing customers users list [ID] [OPCIONES]

GET /v1/customers/{id}/users

Devuelve los usuarios con acceso al portal vinculados a la cuenta de cobro del cliente.

Argumentos de la ruta: id

Parámetros de consulta

NombreTipoObligatorioDescripción
pageintegernoPágina (comienza en 1). Por defecto: 1.
per_pageintegernoÍtems por página. Por defecto: 20. Máximo: 100.
sort_bystringnoCampo de ordenación. El valor por defecto depende del recurso.
sort_orderstringnoDirección de ordenación. Por defecto: desc. Valores: asc, desc.
statusstringnoFiltra usuarios del portal por estado. Valores: active, pending_verification, pending_invitation, suspended, locked.

Respuestas

HTTPDescripción
200Lista paginada de usuarios del portal.
404Recurso no encontrado en la organización actual.

customers users create​

Invitar usuario del portal

kobana billing customers users create [ID] [OPCIONES]

POST /v1/customers/{id}/users

Crea una invitación de acceso al portal para el correo informado. La invitación expira en 7 días.

Argumentos de la ruta: id

Cuerpo de la solicitud

NombreTipoObligatorioDescripción
emailstringsíCorreo del invitado (obligatorio).
external_idstringnoIdentificador en su sistema externo, para idempotencia/sincronización.
custom_metadataobjectnoMetadatos arbitrarios definidos por el cliente (clave/valor).

Otros campos y objetos anidados: kobana schema billing.customers.users.create.

Respuestas

HTTPDescripción
201Invitación creada y correo encolado para envío.
400El cuerpo de la solicitud falló en la validación.
404Recurso no encontrado en la organización actual.
409Ya existe un usuario o invitación para este correo.

customers users invite​

Invitar usuario del portal (verbo)

kobana billing customers users invite [ID] [OPCIONES]

POST /v1/customers/{id}/users/invite

Equivalente a POST /customers/{id}/users. Disponible como ruta de verbo para SDKs que prefieren URLs descriptivas.

Argumentos de la ruta: id

Cuerpo de la solicitud

NombreTipoObligatorioDescripción
emailstringsíCorreo del invitado (obligatorio).
external_idstringnoIdentificador en su sistema externo, para idempotencia/sincronización.
custom_metadataobjectnoMetadatos arbitrarios definidos por el cliente (clave/valor).

Otros campos y objetos anidados: kobana schema billing.customers.users.invite.

Respuestas

HTTPDescripción
201Invitación creada.
400El cuerpo de la solicitud falló en la validación.
404Recurso no encontrado en la organización actual.

customers users get​

Obtener usuario del portal

kobana billing customers users get [ID] [USER_ID] [OPCIONES]

GET /v1/customers/{id}/users/{user_id}

El parámetro {user_id} acepta el UUID o el external_id del usuario.

Argumentos de la ruta: id, user_id

Respuestas

HTTPDescripción
200Detalle del usuario del portal.
404Recurso no encontrado en la organización actual.

customers users update​

Actualizar usuario del portal

kobana billing customers users update [ID] [USER_ID] [OPCIONES]

PATCH /v1/customers/{id}/users/{user_id}

Actualiza email, external_id, sso_only y status. Transiciones de estado permitidas: active ↔ suspended.

Argumentos de la ruta: id, user_id

Cuerpo de la solicitud

NombreTipoObligatorioDescripción
emailstringno
external_idstringno
sso_onlybooleanno
statusstringnoTransiciones permitidas: active ↔ suspended. Valores: active, suspended.
custom_metadataobjectnoMetadatos arbitrarios definidos por el cliente (clave/valor).

Otros campos y objetos anidados: kobana schema billing.customers.users.update.

Respuestas

HTTPDescripción
200Usuario actualizado.
400El cuerpo de la solicitud falló en la validación.
404Recurso no encontrado en la organización actual.

customers users delete​

Eliminar usuario del portal

kobana billing customers users delete [ID] [USER_ID] [OPCIONES]

DELETE /v1/customers/{id}/users/{user_id}

Elimina el usuario del portal (soft delete: deleted_at) — una invitación pendiente y un usuario activo por igual: pierde el acceso al instante, las sesiones y los enlaces pendientes dejan de valer, y el correo puede invitarse de nuevo. Exige el nivel de acceso delete. Hasta octubre de 2026 esta ruta borraba la invitación pendiente y solo suspendía al usuario activo.

Argumentos de la ruta: id, user_id

Respuestas

HTTPDescripción
200Usuario del portal eliminado.
404Recurso no encontrado en la organización actual.

customers users email-preview​

Previsualizar correo del usuario del portal

kobana billing customers users email-preview [ID] [USER_ID] [OPCIONES]

GET /v1/customers/{id}/users/{user_id}/email-preview

Devuelve el asunto y el mensaje del correo de invitación o verificación que se enviaría al usuario, sin disparar el envío. Disponible solo para usuarios pending_invitation o pending_verification.

Argumentos de la ruta: id, user_id

Respuestas

HTTPDescripción
200Previsualización del correo.
400El cuerpo de la solicitud falló en la validación.
404Recurso no encontrado en la organización actual.

customers users resend​

Reenviar correo de invitación o verificación

kobana billing customers users resend [ID] [USER_ID] [OPCIONES]

POST /v1/customers/{id}/users/{user_id}/resend

Reenvía el correo de invitación (para pending_invitation, con rotación de token) o de verificación (para pending_verification). Otros estados devuelven 400.

Argumentos de la ruta: id, user_id

Respuestas

HTTPDescripción
200Correo reenviado.
400El cuerpo de la solicitud falló en la validación.
404Recurso no encontrado en la organización actual.

customers list​

Listar clientes

kobana billing customers list [OPCIONES]

GET /v1/customers

Devuelve una lista paginada de los clientes de la organización actual.

Parámetros de consulta

NombreTipoObligatorioDescripción
pageintegernoPágina (comienza en 1). Por defecto: 1.
per_pageintegernoÍtems por página. Por defecto: 20. Máximo: 100.
sort_bystringnoCampo de ordenación. El valor por defecto depende del recurso.
sort_orderstringnoDirección de ordenación. Por defecto: desc. Valores: asc, desc.
searchstringnoBúsqueda textual libre por nombre, documento o correo.
kindstringnoFiltra por tipo de persona: natural (PF) o juridical (PJ). Valores: natural, juridical.

Respuestas

HTTPDescripción
200Lista paginada de clientes.
404Recurso no encontrado en la organización actual.

customers create​

Crear cliente

kobana billing customers create [OPCIONES]

POST /v1/customers

Crea un cliente y, por defecto, una cuenta de cobro asociada. Usa create_billing_account=false para crear solo el cliente.

Cuerpo de la solicitud

NombreTipoObligatorioDescripción
namestringsíNombre del cliente (obligatorio).
public_idstring (uuid)noUUID público del cliente. Se genera cuando se omite; envíelo solo para conservar un identificador de su sistema. Debe ser único.
external_idstringnoIdentificador externo del cliente en el sistema de origen.
nicknamestringno
legal_namestringnoRazón social (para persona jurídica).
document_numberstringnoCPF o CNPJ. El document_type se infiere por la longitud (≤11 → cpf, si no cnpj).
kindstringnoValores: natural, juridical.
birthdaystringnoFecha de nacimiento (ISO 8601).
emailstringnoCorreo principal de contacto.
phonestringno
notesstringno
addressesarray<object>no
phonesarray<object>no
emailsarray<object>no
websitesarray<object>no
tagsarray<string>no
custom_metadataobjectno
create_billing_accountbooleannoCuando es false, no crea cuenta de cobro automáticamente. Por defecto: true.
billing_emailstringnoCorreo para envío de facturas. Por defecto: usa email cuando se omite.
payment_terms_daysintegernoPlazo de vencimiento de factura en días. Por defecto: el plazo predeterminado configurado en la organización (10 cuando no está configurado).
auto_collectionbooleannoCobro automático en la cuenta creada. Por defecto: true.

Otros campos y objetos anidados: kobana schema billing.customers.create.

Respuestas

HTTPDescripción
201Cliente creado.
400El cuerpo de la solicitud falló en la validación.
404Recurso no encontrado en la organización actual.

customers update​

Crear o actualizar cliente

kobana billing customers update [OPCIONES]

PUT /v1/customers

Recibe el mismo cuerpo del POST y deduplica por id, public_id, external_id y document_number, en ese orden, deteniéndose en la primera clave que encuentre un cliente. Si lo encuentra, lo actualiza y responde 200; si no, lo crea y responde 201. La actualización es parcial: los campos ausentes conservan su valor.

Cuerpo de la solicitud

NombreTipoObligatorioDescripción
namestringsíNombre del cliente. Obligatorio solo cuando ningún cliente es encontrado por las claves de deduplicación.
public_idstring (uuid)noUUID público del cliente. Localiza el registro y, cuando no se encuentra ninguno, se guarda en el cliente creado.
external_idstringnoIdentificador externo del cliente en el sistema de origen.
nicknamestringno
legal_namestringnoRazón social (para persona jurídica).
document_numberstringnoCPF o CNPJ. El document_type se infiere por la longitud (≤11 → cpf, si no cnpj).
kindstringnoValores: natural, juridical.
birthdaystringnoFecha de nacimiento (ISO 8601).
emailstringnoCorreo principal de contacto.
phonestringno
notesstringno
addressesarray<object>no
phonesarray<object>no
emailsarray<object>no
websitesarray<object>no
tagsarray<string>no
custom_metadataobjectno
create_billing_accountbooleannoCuando es false, no crea cuenta de cobro automáticamente. Por defecto: true.
billing_emailstringnoCorreo para envío de facturas. Por defecto: usa email cuando se omite.
payment_terms_daysintegernoPlazo de vencimiento de factura en días. Por defecto: el plazo predeterminado configurado en la organización (10 cuando no está configurado).
auto_collectionbooleannoCobro automático en la cuenta creada. Por defecto: true.
idstring (uuid)noUUID del cliente. Se usa solo para localizar el registro — nunca se guarda.
custom_metadata_modestringnoCómo se reconcilia el custom_metadata enviado con el valor almacenado. replace (por defecto) reemplaza todo el objeto; merge hace un deep merge sobre el valor actual — los objetos anidados se combinan recursivamente, los escalares y arrays reemplazan la clave, y las claves null se mantienen (no eliminan la clave). Aceptado solo en la actualización. Valores: replace, merge.

Otros campos y objetos anidados: kobana schema billing.customers.update.

Respuestas

HTTPDescripción
200Cliente actualizado.
201Cliente creado.
400El cuerpo de la solicitud falló en la validación.
404Recurso no encontrado en la organización actual.

customers get​

Obtener cliente

kobana billing customers get [ID] [OPCIONES]

GET /v1/customers/{id}

El parámetro {id} acepta el UUID del cliente o el external_id.

Argumentos de la ruta: id

Respuestas

HTTPDescripción
200Detalle del cliente.
404Recurso no encontrado en la organización actual.

customers delete​

Eliminar cliente (soft delete)

kobana billing customers delete [ID] [OPCIONES]

DELETE /v1/customers/{id}

Marca el cliente como eliminado sin borrar registros históricos.

Argumentos de la ruta: id

Respuestas

HTTPDescripción
200Confirmación de soft delete.
404Recurso no encontrado en la organización actual.

customers recalculate-mrr​

Recalcular el MRR del cliente

kobana billing customers recalculate-mrr [ID] [OPCIONES]

POST /v1/customers/{id}/recalculate-mrr

Recalcula el MRR (Monthly Recurring Revenue) de las cuentas de cobro del cliente a partir de las suscripciones activas.

Argumentos de la ruta: id

Respuestas

HTTPDescripción
200MRR recalculado.
404Recurso no encontrado en la organización actual.