Saltar al contenido principal

Clientes

Los clientes son los destinatarios finales que registrás bajo tu PaymentHub. Cada cliente recibe un CVU dedicado — un número de cuenta bancaria argentino que mapea exclusivamente a ese cliente. Cuando llega una transferencia a ese CVU, Basilic identifica automáticamente al cliente y puede enviar un webhook a la URL de callback que configuraste.

Qué podés hacer

  • Crear clientes y provisionar un CVU dedicado en una sola llamada a la API.
  • Actualizar datos del cliente, incluyendo la URL de callback para notificaciones de transferencias entrantes.
  • Ver el historial de transacciones — cada acreditación y débito registrado para el cliente — con un resumen financiero (total acreditado, total debitado, total facturado y saldo actual).
  • Crear y actualizar facturas asignadas a cada cliente para registrar lo que deben.

Provisionamiento del CVU dedicado

Cuando creás un cliente, Basilic provisiona automáticamente un par CVU/alias específico para ese cliente. El provisionamiento ocurre en línea — la respuesta incluye el CVU y el alias una vez que están disponibles.

Tu llamada → POST /api/v1/clients

Basilic crea la fila en billing_clients

Basilic provisiona el CVU/alias

Respuesta: cliente + cvu + alias

El campo cvuStatus refleja el estado actual del provisionamiento del CVU:

EstadoSignificado
not_provisionedTodavía no se solicitó el CVU
provisioningLa solicitud del CVU está en proceso
activeEl CVU está listo para recibir transferencias
provisioning_failedFalló la solicitud del CVU; contactá a soporte
disabledEl CVU está deshabilitado

Callback de acreditación (cash-in)

Configurá un cashinCallbackUrl en el cliente para recibir una notificación POST cada vez que llegue una transferencia al CVU de ese cliente.

Modelo de entrega:

  • Hasta 3 intentos de entrega con reintentos en caso de falla.
  • El evento se registra en el log interno de Basilic con estado pending → retrying → delivered / failed.

Payload del webhook:

{
"eventId": "uuid",
"clientId": "uuid",
"eventType": "client.cashin",
"taxId": "30-12345678-9",
"amount": 4970.00,
"total": 5000.00,
"totalWithoutTaxes": 4970.00,
"taxes": 30.00,
"currency": "ARS",
"cvu": "0000726100000000014782",
"alias": "ACMESA.HUB1",
"operationId": "internal-op-id",
"createdAt": "2026-05-18T12:00:00Z"
}

Campos de impuestos:

CampoDescripción
amountMonto neto acreditado después de impuestos (lo que efectivamente recibió el cliente)
totalMonto bruto antes de impuestos
totalWithoutTaxesIgual que amount — monto neto después de retenciones, disponible para mayor claridad
taxesMonto de impuestos retenidos por el proveedor. total - taxes = amount

En la mayoría de las transferencias no hay retenciones y total === amount con taxes === 0. Para transferencias argentinas que incluyen retenciones impositivas, estos campos contienen el desglose.

Headers enviados por Basilic:

HeaderValor
Content-Typeapplication/json
User-AgentBasilic-Client-Callback/1.0
X-Basilic-Event-IdUUID del evento
X-Basilic-Event-Typeclient.cashin

Tu endpoint debe devolver HTTP 2xx para confirmar la entrega.

Resumen financiero

GET /api/v1/clients/{id}/balance devuelve el resumen financiero completo del cliente:

CampoFórmula
totalCashInSuma de todas las entradas cash_in (montos positivos)
totalCashOutSuma absoluta de todas las entradas debit (montos negativos)
totalInvoicedSuma del total_amount de todas las facturas del cliente
balancetotalCashIn - totalCashOut - totalInvoiced

Esto te permite saber de un vistazo si un cliente cubrió sus facturas con las transferencias recibidas. Para el historial paginado de movimientos, usá GET /api/v1/clients/{id}/transactions.

Requisitos

  • El PaymentHub debe tener CVUs de clientes dedicados habilitados (dedicated_client_cvus_enabled = true).
  • Cada cliente puede tener como máximo un CVU por PaymentHub (relación 1:1 aplicada a nivel de API).
  • El taxId (CUIT) del cliente debe ser único dentro de tu cuenta.