Saltearse al contenido

Customers

El objeto Customer

{
"id": "cust_qrs456tuv789",
"external_id": "user_42",
"last_seen_at": "2026-05-02T14:32:11+00:00",
"last_seen_source": "payment",
"last_seen_provider": "dinelco",
"last_seen_name": "Juan",
"last_seen_lastname": "Pérez",
"last_seen_email": "juan@example.com",
"last_seen_phone": "+595981234567",
"last_seen_ruc": null,
"created_at": "2026-04-15T10:00:00+00:00"
}

Campos

CampoTipoNotas
idstringcust_xxx. Es el public_id que mandamos a proveedores.
external_idstringEl que vos pasaste como customer.customerId.
last_seen_atdatetime?Cuándo lo vimos por última vez en cualquier interacción.
last_seen_sourceenum?payment | card_registration | card_charge.
last_seen_providerenum?dinelco | bancard | transferencia.
last_seen_*string?Último valor visto de cada campo (name, email, phone, ruc).
created_atdatetimeCuándo se creó (auto-create en el primer pago/card).

Endpoints

Listar customers

GET /v1/customers

Query params:

ParamNotas
external_idFiltro exacto por external_id.
cursor, per_pagePaginación.

Obtener un customer

GET /v1/customers/{id}

{id} es el public_id (cust_xxx).

Cómo se actualizan los last_seen_*

Cada vez que pasás customer.customerId en POST /v1/payments o POST /v1/cards:

  1. Si el customer no existe, lo creamos con los campos que mandaste.
  2. Si existe, actualizamos los last_seen_* siguiendo la regla lo último gana, no pisa con null:
    • Si tu request manda name, lo actualizamos.
    • Si tu request no manda name, dejamos el viejo intacto (no lo borramos con null).

Esto te permite mandar payloads parciales (ej. solo customerId + email) sin perder datos viejos.

Lo que NO existe

EndpointPor qué
POST /v1/customersAuto-create implícito. No querés un endpoint de creación explícito.
PATCH /v1/customers/{id}El customer es read-only desde la API. Si querés actualizar, hacelo en tu próximo POST /v1/payments con los nuevos datos.
DELETE /v1/customers/{id}No lo soportamos para mantener integridad referencial con pagos históricos. Si necesitás “borrar” un customer, dejá de mandarlo en pagos nuevos.