id (cust_...) en transacciones, pagos y suscripciones.
Todas las solicitudes requieren el header x-api-key. Consulta Autenticación.
Endpoints
| Método | Ruta | Descripción |
|---|---|---|
POST | /customers | Crea un nuevo customer |
GET | /customers | Lista customers (paginado, con filtros) |
GET | /customers/:id | Busca un customer por ID |
PUT | /customers/:id | Actualiza un customer |
DELETE | /customers/:id | Elimina un customer (soft delete) |
El objeto Customer
Campos aceptados en la creación (POST) y actualización (PUT).
Nombre del cliente. Mínimo 2 caracteres.
Correo electrónico del cliente. Debe ser un email válido.
Tipo de cliente. Valores aceptados:
individual, company.Documento del cliente (CPF, CNPJ o pasaporte). Mínimo 6 caracteres.
Tipo de documento. Valores aceptados:
cpf, cnpj, passport. Por defecto: cpf.Teléfono del cliente. No puede estar vacío.
Dirección del cliente (opcional). Todos los campos internos son strings y pueden ser
null.En
address, cada campo es obligatorio dentro del objeto, pero acepta null. Es decir: si
envías address, incluye las 8 claves (usa null donde no tengas el dato). Si no tienes la
dirección, simplemente omite el objeto address completo.Crear customer
POST /customers — responde 201 Created.Idempotency-Key con un valor único
por solicitud para evitar crear customers duplicados en caso de reintento. Consulta
Convenciones.
Tu clave de API. Consulta Autenticación.
Clave única para garantizar la idempotencia de la solicitud (opcional).
Resposta 201
Listar customers
GET /customers — responde 200 OK con lista paginada.Parámetros de query
Todos los filtros son opcionales y se pasan como query string. Cuando se especifican, los valores de texto realizan búsqueda parcial.Filtra por nombre.
Filtra por correo electrónico.
Filtra por documento.
Filtra por tipo de documento:
cpf, cnpj o passport.Filtra por teléfono.
Filtra por tipo de cliente:
individual o company.Búsqueda libre.
Búsqueda combinada (ILIKE) en
name, email y document del cliente.Fecha de inicio del intervalo de creación. Formato ISO 8601 con timezone (ej:
2026-01-01T00:00:00Z).Fecha de fin del intervalo de creación. Formato ISO 8601 con timezone (ej:
2026-01-31T23:59:59Z).Campo de ordenación. Valores:
name, createdAt, updatedAt.Dirección de ordenación. Valores:
asc, desc.Paginación
Número de página (mínimo 1).
Cantidad de ítems por página (mínimo 1, máximo 100).
Los parámetros de fecha deben usar ISO 8601 con timezone. Fechas solo con día (
YYYY-MM-DD) o en
formato DD/MM/YYYY son rechazadas. Consulta Convenciones.Resposta 200
Los metadatos de paginación vienen anidados en un objeto
pagination (page, limit, total y
totalPages). Este envelope es el estándar de la plataforma — consulta Convenciones.Buscar customer por ID
GET /customers/:id — responde 200 OK.ID del customer (ej:
cust_8f3k2m9q1w7r5t0y).Resposta 200
Actualizar customer
PUT /customers/:id — responde 200 OK.ID del customer a actualizar.
Resposta 200
Eliminar customer
DELETE /customers/:id — responde 200 OK.deletedAt completado.
Este endpoint es idempotente.
ID del customer a eliminar.
Resposta 200
Ver también
Transactions
Crea transacciones usando el customer como comprador.
Payments
Pagos vinculados a las transacciones del customer.
Suscripciones
Cobros recurrentes para un customer.
Convenciones
Paginación, idempotencia y formatos de fecha.

