Saltar al contenido principal
Developer API

Documentación Técnica: API de Integración ERP / TPV

1

Endpoint del API

Todas las peticiones deben enviarse por método POST a la URL de conexión de su entorno:

POST https://api.fideclien.com/v1/erp/purchases
2

Autenticación (Bearer Token)

Cabecera obligatoria: Authorization: Bearer <TU_TOKEN>

Ver parámetros →

Claves API registradas en su tienda:

Test TPV Integration Activo
token_live_E8W6A••••••••••••••••
IPs: Cualquiera Uso: Activo y verificado
3

Parámetros del Payload (JSON)

Campo Tipo Estado Descripción
customer.identifier string / int Obligatorio Teléfono del cliente (ej: "612345678") o su Nº de Socio de 8 dígitos ("00847192").
customer.type string Opcional Tipo de búsqueda: "phone", "client_number", "id" o "auto" (detecta por defecto).
amount decimal Obligatorio Importe total de la compra en euros (ej: 35.50). Debe ser mayor a 0.
category string Opcional Sección o categoría de venta (ej: "Alimentación").
ticket object Recomendado Mapa opcional con los artículos desglosados y código de barras para la app móvil.
• ticket.codigo_ticket string Req. con ticket Código único del ticket para generar el código de barras y control anti-duplicados.
• ticket.precio_final decimal Req. con ticket Total final impreso en el ticket.
• ticket.lista_articulos array Opcional Array de artículos que componen la compra para visualización digital en la app.
•• ticket.lista_articulos[].nombre string Obligatorio en artículo Nombre o descripción comercial del producto (ej: "Aceite de Oliva 1L").
•• ticket.lista_articulos[].cantidad number Obligatorio en artículo Cantidad o unidades adquiridas.
•• ticket.lista_articulos[].precio_unidad decimal Obligatorio en artículo Precio unitario con IVA incluido.
•• ticket.lista_articulos[].precio_total decimal Obligatorio en artículo Subtotal de la línea de producto.

Estructura Detallada de ticket.lista_articulos

Cada elemento dentro del array lista_articulos representa una línea del ticket que se mostrará en la app del cliente y debe contener exactamente estos 4 campos:

"nombre": (string) Nombre o descripción del producto tal como aparecerá en el ticket móvil.
"cantidad": (número) Unidades o peso vendido (ej: 2 o 1.5).
"precio_unidad": (decimal) Precio individual de venta en euros (ej: 15.00).
"precio_total": (decimal) Total de la línea (cantidad × precio_unidad, ej: 30.00).
"lista_articulos": [
  {
    "nombre": "Aceite de Oliva Virgen Extra 1L",
    "cantidad": 2,
    "precio_unidad": 15.00,
    "precio_total": 30.00
  },
  {
    "nombre": "Sal Marina 1kg",
    "cantidad": 1,
    "precio_unidad": 5.50,
    "precio_total": 5.50
  }
]
4

Ejemplos de Integración

curl -X POST "https://api.fideclien.com/v1/erp/purchases" \
     -H "Authorization: Bearer token_live_E8W6A••••••••••••••••••••••••••••••••" \
     -H "Content-Type: application/json" \
     -H "Accept: application/json" \
     -d '{
       "customer": {
         "identifier": "612345678",
         "type": "phone"
       },
       "amount": 35.50,
       "category": "Alimentación",
       "ticket": {
         "codigo_ticket": "TK-2026-99081",
         "precio_final": 35.50,
         "lista_articulos": [
           {
             "nombre": "Aceite de Oliva Virgen Extra 1L",
             "cantidad": 2,
             "precio_unidad": 15.00,
             "precio_total": 30.00
           },
           {
             "nombre": "Sal Marina 1kg",
             "cantidad": 1,
             "precio_unidad": 5.50,
             "precio_total": 5.50
           }
         ]
       }
     }'
201 Created

Compra Registrada con Éxito

{
  "status": "success",
  "message": "Compra registrada correctamente.",
  "data": {
    "purchase_id": 1420,
    "amount": 35.50,
    "ticket_registered": true
  }
}
200 OK

Idempotencia (Ticket ya registrado)

{
  "status": "success",
  "message": "Compra ya registrada previamente (Idempotencia).",
  "data": {
    "purchase_id": 1420,
    "amount": 35.50,
    "ticket_registered": true
  }
}