- API v1
- API v2
- Armario de fotos: Activar EasyFlor Scan
- Configuración de impresora
- Configuración Pi
- DataLogic DL-AXIST / MEMOR 1 / MEMOR 10
- DataLogic Heron / Gryphon / QuickScan (Nuevos dispositivos)
- Instalar EasyFlor en Android
- Instalar EasyFlor en Chromebook / Chromebox / Chromebit
- Instalar EasyFlor en iPhone
- Instalar EasyFlor en Windows / Mac / Linux
- Los correos electrónicos de EasyFlor no llegan
- Opticon OPN2006
- Probar el escáner
- Zebra EC30
- Zebra TC21 / TC26
- Zebra TC25
API v2
Índice
Primeros pasos
Datos maestros
Artículos y productos
Tienda online
Pedidos y compras
Facturación - Débito
- Invoice
- DebetInvoicePurchaseItem
- DebetInvoiceCustomItem
- DebetInvoicePackagingItem
- DebetInvoiceTrolleyItem
Facturación - Crédito
Pagos y carros
Pronóstico
Logística
Referencia de modelos
Changelog
| Versión | Descripción | Fecha | Autor |
|---|---|---|---|
| 2.0.4 | Añadido endpoint TransportScheduleRouteEtag para rutas de transporte con paradas embebidas | 2026-05-03 | DDH |
| 2.0.3 | Añadido endpoint PrognosesReservation para reservas de pronóstico | 2026-03-09 | DDH |
| 2.0.2 | Cambiadas rutas ListPreOrderGroupItemEtag: Count/ y / | 2026-01-09 | DDH |
| 2.0.1 | Añadidos endpoints Count a todos los endpoints (excepto ShopFavorites) para totales de registros | 2026-01-08 | DDH |
| 2.0.0 | Primera versión V2 de la API con sincronización basada en Etag | 2026-01-08 | DDH |
Primeros pasos
Introducción
La API V2 utiliza sincronización basada en Etag para una recuperación incremental eficiente de datos. Cada registro contiene un valor Etag — simplemente pase el Etag del último registro para obtener el siguiente lote de registros nuevos o modificados.
Mejoras clave en V2:
- Paginación basada en Etag para sincronización incremental fiable
- Todos los endpoints soportan sincronización incremental
La autorización funciona igual que en V1 — necesita estar autorizado para cada base de datos a la que se conecta. Si no está autorizado, recibirá el estado HTTP 401 (Unauthorized).
Las secciones siguientes describen:
- Información general sobre formatos JSON, códigos de estado y Etags
- Todos los endpoints GET disponibles organizados por categoría
- Especificaciones detalladas de modelos
General
JSON
Información sobre tipos específicos y su formateo en JSON.
Formato DateTime
| Símbolo | Descripción | Ejemplo |
|---|---|---|
| yyyy | año | 2026 |
| MM | mes | 01 |
| dd | día | 31 |
| HH | hora | 13 |
| mm | minuto | 01 |
| ss | segundos | 22 |
| tttttt | zona horaria | +02:00 |
| Z | zona UTC | Z |
Date
- Formato:
yyyy-MM-dd - Ejemplo:
2026-12-30
DateTime
- Formato:
yyyy-MM-dd\THH:mm:ssttttttt - Ejemplo:
2026-12-30T13:40:20+02:00 - Observaciones: Usar zona horaria del deudor
LanguageValue
Objeto que contiene todos los idiomas disponibles (ISO-639-1).
{
"nl": "Designación holandesa",
"de": "Designación alemana",
"fr": "Título francés"
}
Valor Null
No envíe parámetros sin valor.
Mal:
{
"RequiredParameter": "text",
"OptionalParameter": null
}
Bien:
{
"RequiredParameter": "text"
}
Codificación
UTF-8
ETags (Entity Tags)
La API V2 usa ETags para sincronización incremental eficiente. Cada registro contiene un valor Etag que se incrementa con cada cambio.
Cómo funciona la sincronización Etag
- Sincronización inicial: Llamar al endpoint sin parámetro Etag para obtener el primer lote
- Obtener último Etag: Tomar el Etag del último registro de la respuesta
- Próxima sincronización: Pasar este Etag como parámetro para obtener el siguiente lote
- Repetir: Hasta recibir un array vacío
Ejemplo de flujo
# Primera petición - sin Etag
GET /api/v2/ArticleEtag
# Devuelve 2000 registros, el último tiene Etag: "a1b2c3d4-..."
# Segunda petición - usar último Etag
GET /api/v2/ArticleEtag/a1b2c3d4-...
# Devuelve siguientes 2000 registros, último Etag: "e5f6g7h8-..."
# Tercera petición
GET /api/v2/ArticleEtag/e5f6g7h8-...
# Devuelve [] - sincronización completa
Al almacenar y reutilizar el último Etag, solo recibirá registros nuevos o modificados en sincronizaciones posteriores.
Importante: Manejo de actualizaciones
Los registros pueden aparecer múltiples veces en diferentes peticiones de sincronización cuando son modificados.
Cuando reciba un registro con un ID que ya existe en su base de datos local, sobrescriba el registro existente con los nuevos datos. Esto es una actualización, no un duplicado.
Escenario de ejemplo:
- La sincronización inicial devuelve Article con Id "articles/123" y Name "Red Roses"
- El artículo se modifica en EasyFlor (nombre cambiado a "Red Roses Premium")
- La próxima sincronización incremental devuelve el mismo Id "articles/123" con Name actualizado "Red Roses Premium"
- Acción: Sobrescriba su registro local con Id "articles/123"
Principio clave: El campo Id es el identificador único. Si recibe un registro con un Id que ya tiene, es una actualización — reemplace el registro antiguo completamente con los nuevos datos.
Códigos de estado
| Código | Descripción |
|---|---|
| 200 | OK - Petición exitosa |
| 400 | BadRequest - Objeto con error |
| 401 | Unauthorized - Autenticación requerida o fallida |
| 404 | NotFound - Recurso no encontrado |
| 500 | ServerError - Error procesando mensaje |
Formato de respuesta de error:
{
"error": "<error>",
"message": "<error legible>"
}
Consejos
- El orden de propiedades en JSON no está garantizado - parsee por nombre de propiedad, no por posición
- Cualquier propiedad no requerida puede ser NULL
- Use siempre el Etag del último registro en la respuesta para su próxima petición
- Una respuesta de array vacío significa que la sincronización está completa
- Todos los endpoints tienen un endpoint
/Countpara comprobar el número total de registros
Endpoints Count
Cada endpoint V2 tiene un endpoint Count correspondiente para recuperar el número total de registros sin obtener los datos:
Formato: GET /api/v2/{EndpointName}/Count
Ejemplos:
GET /api/v2/PurchaseEtag/Count- Devuelve total de comprasGET /api/v2/DebtorEtag/Count- Devuelve total de deudoresGET /api/v2/ListPreOrderGroupItemEtag/Count/{id}- Devuelve total de items en grupo específico
Devuelve: Entero representando el total
Nota: ShopFavoritesEtag no tiene endpoint Count debido a su lógica compleja de agregación.
Recomendaciones de frecuencia de sincronización
Diferentes endpoints tienen diferentes frecuencias de sincronización recomendadas según la frecuencia con que cambian los datos:
Endpoints de datos en tiempo real (intervalo de 5 minutos recomendado)
Estos endpoints proporcionan datos transaccionales que cambian frecuentemente:
- PreOrder
- Purchase
- DistributedPurchase
- DistributedPurchaseOrderable
- Invoice
- DebetInvoicePurchaseItem
- DebetInvoiceCustomItem
- DebetInvoicePackagingItem
- DebetInvoiceTrolleyItem
- CreditInvoicePurchaseItem
- CreditInvoiceCustomItem
- CreditInvoiceDepositItem
- Payment
- DistributedTrolley
- Supplier
- Debtor
- ListPreOrderGroupItem
- ListArticleSort
- PrognosesReservation
Recomendación: Sincronizar cada 5 minutos durante horario laboral.
Endpoints de datos horarios (intervalo de 1 hora recomendado)
Estos endpoints proporcionan datos logísticos que cambian moderadamente:
- TransportScheduleRoute
Recomendación: Sincronizar una vez por hora durante el horario operativo.
Endpoints de datos maestros (sincronización diaria recomendada)
Estos endpoints proporcionan datos maestros relativamente estáticos:
- Administration
- Country
- Currency
- Location
- MarkupCategory
- Remark
- ListGroup
- Employee
- Article
- ArticleSort
- ArticleGroup
- ShopDebtorSession
- ShopFavorites
- PrognosePrice
- PrognoseQuantity
Recomendación: Sincronizar una vez al día. Para distribuir la carga del servidor, aleatorizar la hora de sincronización de cada endpoint a lo largo del día en lugar de sincronizar todos los endpoints a la misma hora fija.
Autorización / iniciar sesión
Autorización basada en Cookie
Comando: api/authorization
Tras autorización exitosa, recibirá una cookie con una sesión. Adjunte esta cookie a cualquier otra llamada que haga. La sesión está vinculada al usuario y expirará cuando se haga otra llamada con el mismo nombre de usuario en caso de inicio de sesión válido.
Al recibir el código HTTP 401, reautorice.
Parámetros Post
| Nombre de propiedad | Descripción | Tipo de datos | Requerido |
|---|---|---|---|
| Username | Nombre de usuario en la base de datos a conectar | string | sí |
| Password | Contraseña del usuario en la base de datos | string | sí |
| Database | La base de datos a la que conectar | string | sí |
Ejemplo Post
POST https://api.easyflor.eu/api/authorization
{
"Username": "api",
"Password": "wouldntyouliketoknow",
"Database": "EasyFlor-Demo"
}
Devuelve: 200 OK / 401 Unauthorized
Autorización basada en JWT Bearer Token
Comando: api/authorizationtoken
Tras autorización exitosa, recibirá un modelo con un Token. Añada este token como cabecera a cualquier otra llamada. El token está vinculado al usuario y expirará después de la fecha de expiración.
Al recibir el código HTTP 401, reautorice.
Parámetros Post
| Nombre de propiedad | Descripción | Tipo de datos | Requerido |
|---|---|---|---|
| Username | Nombre de usuario en la base de datos | string | sí |
| Password | Contraseña del usuario | string | sí |
| Database | La base de datos | string | sí |
Ejemplo Post
POST https://api.easyflor.eu/api/authorizationtoken
{
"Username": "api",
"Password": "wouldntyouliketoknow",
"Database": "EasyFlor-Demo"
}
Devuelve: 200 OK / 401 Unauthorized
| Nombre de propiedad | Descripción | Tipo de datos |
|---|---|---|
| Token | Token usado para autenticación en cada petición | string |
| Expiration | Fecha de expiración tras la cual el Token deja de ser válido | DateTime |
Ejemplo de petición autorizada
curl --location --request GET 'https://api.easyflor.eu/api/v2/ArticleEtag' \
--header 'Accept: application/json' \
--header 'Authorization: Bearer ##TOKEN##'
Cierre de sesión
Nota: El cierre de sesión solo se usa para autorización basada en Cookie. Con autorización basada en JWT Bearer Token, el token expirará por sí solo después de un tiempo determinado.
Comando: api/unauthorization
Cierre de sesión basado en cookie. Al enviarse, la cookie que inició la sesión queda inválida y cualquier comando posterior recibirá una excepción 401 unauthorized.
Parámetros Post: Ninguno
Ejemplo Post:
POST https://api.easyflor.eu/api/unauthorization
Devuelve: Nada
Datos maestros
Debtors
Endpoints:
GET /api/v2/DebtorEtag/{etag?}- Obtener deudoresGET /api/v2/DebtorEtag/Count- Obtener total
Una empresa o persona a la que se entregan bienes y se envían facturas.
Frecuencia de sincronización: Datos en tiempo real, sincronizar cada 5 minutos
Parámetros
| Parámetro | Descripción | Requerido |
|---|---|---|
| etag | Etag de la petición anterior para sincronización incremental | no |
Ejemplo
# Sincronización inicial
GET https://api.easyflor.eu/api/v2/DebtorEtag
# Sincronización incremental
GET https://api.easyflor.eu/api/v2/DebtorEtag/a1b2c3d4-e5f6-7890-abcd-ef1234567890
Devuelve
Array de objetos DebtorEtagResult (máx. 2000 por petición)
Suppliers
Endpoints:
GET /api/v2/SupplierEtag/{etag?}- Obtener proveedoresGET /api/v2/SupplierEtag/Count- Obtener total
Una empresa o persona que entrega bienes a la empresa cuya base de datos consulta.
Frecuencia de sincronización: Datos en tiempo real, sincronizar cada 5 minutos
Devuelve
Array de objetos SupplierEtagResult (máx. 2000 por petición)
Employee
Endpoints:
GET /api/v2/EmployeeEtag/{etag?}- Obtener empleadosGET /api/v2/EmployeeEtag/Count- Obtener total
Un empleado que trabaja en la empresa cuya base de datos consulta.
Frecuencia de sincronización: Cambia poco, sincronizar una vez al día
Devuelve
Array de objetos EmployeeEtagResult (máx. 1000 por petición)
Countries
Endpoints:
GET /api/v2/CountryEtag/{etag?}- Obtener paísesGET /api/v2/CountryEtag/Count- Obtener total
Un país almacenado en nuestra base de datos. Vinculado a deudores, facturas, proveedores, etc.
Frecuencia de sincronización: Cambia poco, sincronizar una vez al día
Devuelve
Array de objetos CountryEtagResult (máx. 1000 por petición)
Currencies
Endpoints:
GET /api/v2/CurrencyEtag/{etag?}- Obtener divisasGET /api/v2/CurrencyEtag/Count- Obtener total
Divisas usadas en el sistema.
Frecuencia de sincronización: Cambia poco, sincronizar una vez al día
Devuelve
Array de objetos CurrencyEtagResult (máx. 1000 por petición)
Administrations
Endpoints:
GET /api/v2/AdministrationEtag/{etag?}- Obtener administracionesGET /api/v2/AdministrationEtag/Count- Obtener total
Administraciones almacenadas en nuestra base de datos. Vinculadas a deudores, ubicaciones, etc.
Frecuencia de sincronización: Cambia poco, sincronizar una vez al día
Devuelve
Array de objetos AdministrationEtagResult (máx. 1000 por petición)
Locations
Endpoints:
GET /api/v2/LocationEtag/{etag?}- Obtener ubicacionesGET /api/v2/LocationEtag/Count- Obtener total
Ubicaciones almacenadas en nuestra base de datos. Vinculadas a deudores, compras, etc.
Frecuencia de sincronización: Cambia poco, sincronizar una vez al día
Devuelve
Array de objetos LocationEtagResult (máx. 1000 por petición)
Artículos y productos
Article
Endpoints:
GET /api/v2/ArticleEtag/{etag?}- Obtener artículosGET /api/v2/ArticleEtag/Count- Obtener total
Un artículo, como rosas rojas.
Frecuencia de sincronización: Cambia poco, sincronizar una vez al día
Devuelve
Array de objetos ArticleEtagResult (máx. 2000 por petición)
ArticleSort
Endpoints:
GET /api/v2/ArticleSortEtag/{etag?}- Obtener ArticleSortsGET /api/v2/ArticleSortEtag/Count- Obtener total
Una variación de un artículo. Por ejemplo rosas rojas con un ArticleSort de 50cm y 60cm.
Frecuencia de sincronización: Cambia poco, sincronizar una vez al día
Devuelve
Array de objetos ArticleSortEtagResult (máx. 2000 por petición)
ArticleGroup
Endpoints:
GET /api/v2/ArticleGroupEtag/{etag?}- Obtener grupos de artículosGET /api/v2/ArticleGroupEtag/Count- Obtener total
Una categoría para artículos. Las categorías pueden anidarse. Por ejemplo, la categoría Rosas cae bajo la categoría Flores.
Frecuencia de sincronización: Cambia poco, sincronizar una vez al día
Devuelve
Array de objetos ArticleGroupEtagResult (máx. 2000 por petición)
Markup Categories
Endpoints:
GET /api/v2/MarkupCategoryEtag/{etag?}- Obtener categorías de margenGET /api/v2/MarkupCategoryEtag/Count- Obtener total
Categorías de margen usadas para cálculos de precios.
Frecuencia de sincronización: Cambia poco, sincronizar una vez al día
Devuelve
Array de objetos MarkupCategoryEtagResult (máx. 1000 por petición)
Remarks
Endpoints:
GET /api/v2/RemarkEtag/{etag?}- Obtener observacionesGET /api/v2/RemarkEtag/Count- Obtener total
Observaciones de artículos almacenadas en la base de datos.
Frecuencia de sincronización: Cambia poco, sincronizar una vez al día
Devuelve
Array de objetos RemarkEtagResult (máx. 1000 por petición)
Tienda online
ListGroup
Endpoints:
GET /api/v2/ListGroupEtag/{etag?}- Obtener ListGroupsGET /api/v2/ListGroupEtag/Count- Obtener total
Un ListGroup es una colección de listas mostradas bajo una cabecera en la tienda.
Frecuencia de sincronización: Cambia poco, sincronizar una vez al día
Devuelve
Array de objetos ListGroupEtagResult (máx. 1000 por petición)
ListArticleSort
Endpoints:
GET /api/v2/ListArticleSortEtag/{etag?}- Obtener ListArticleSortsGET /api/v2/ListArticleSortEtag/Count- Obtener total
Un ArticleSort ofrecido en una lista de la tienda online.
Frecuencia de sincronización: Datos en tiempo real, sincronizar cada 5 minutos
Devuelve
Array de objetos ListArticleSortEtagResult (máx. 1000 por petición)
ListPreOrderGroupItem
Endpoints:
GET /api/v2/ListPreOrderGroupItemEtag/{id}- Obtener items (sincronización inicial)GET /api/v2/ListPreOrderGroupItemEtag/{etag}/{id}- Obtener items (sincronización incremental)GET /api/v2/ListPreOrderGroupItemEtag/Count/{id}- Obtener total
Items en un ListPreOrderGroup específico.
Frecuencia de sincronización: Datos en tiempo real, sincronizar cada 5 minutos
Nota: El parámetro ID es una ruta catch-all porque los IDs de RavenDB contienen barras (ej.,
ListPreOrderGroups/123).
Parámetros
| Parámetro | Descripción | Requerido |
|---|---|---|
| id | ID del ListPreOrderGroup (ej., ListPreOrderGroups/123) |
sí |
| etag | Etag de la petición anterior | no |
Devuelve
Array de objetos ListPreOrderGroupItemEtagResult (máx. 2000 por petición)
Favorites
Endpoint: GET /api/v2/ShopFavoritesEtag/{etag?}
Artículos favoritos por deudor para la tienda online.
Frecuencia de sincronización: Cambia poco, sincronizar una vez al día
Devuelve
Array de objetos ShopFavoritesEtagResult (máx. 1000 por petición)
DebtorSessions
Endpoints:
GET /api/v2/ShopDebtorSessionEtag/{etag?}- Obtener sesiones de deudorGET /api/v2/ShopDebtorSessionEtag/Count- Obtener total
Registros de sesión de deudor con últimas actividades conocidas.
Frecuencia de sincronización: Cambia poco, sincronizar una vez al día
Devuelve
Array de objetos ShopDebtorSessionEtagResult (máx. 1000 por petición)
Pedidos y compras
PreOrder
Endpoints:
GET /api/v2/PreOrderEtag/{etag?}- Obtener PreOrdersGET /api/v2/PreOrderEtag/Count- Obtener total
La solicitud (demanda) de un ArticleSort específico de un deudor.
Frecuencia de sincronización: Datos en tiempo real, sincronizar cada 5 minutos
Devuelve
Array de objetos PreOrderEtagResult (máx. 2000 por petición)
Purchase
Endpoints:
GET /api/v2/PurchaseEtag/{etag?}- Obtener comprasGET /api/v2/PurchaseEtag/Count- Obtener total
Una compra es una acción de compra de la empresa cuya base de datos consulta, de un proveedor.
Frecuencia de sincronización: Datos en tiempo real, sincronizar cada 5 minutos
Devuelve
Array de objetos PurchaseEtagResult (máx. 2000 por petición)
DistributedPurchase
Endpoints:
GET /api/v2/DistributedPurchaseEtag/{etag?}- Obtener compras distribuidasGET /api/v2/DistributedPurchaseEtag/Count- Obtener total
Un DistributedPurchase representa bienes de una compra que han sido asignados/vendidos a un deudor específico.
Frecuencia de sincronización: Datos en tiempo real, sincronizar cada 5 minutos
Devuelve
Array de objetos DistributedPurchaseEtagResult (máx. 1024 por petición)
DistributedPurchaseOrderable
Endpoints:
GET /api/v2/DistributedPurchaseOrderableEtag/{etag?}- Obtener compras distribuidas pediblesGET /api/v2/DistributedPurchaseOrderableEtag/Count- Obtener total
Compras distribuidas pedibles.
Frecuencia de sincronización: Datos en tiempo real, sincronizar cada 5 minutos
Devuelve
Array de objetos DistributedPurchaseOrderableEtagResult (máx. 2000 por petición)
Facturación - Débito
Invoice
Endpoints:
GET /api/v2/InvoiceEtag/{etag?}- Obtener facturasGET /api/v2/InvoiceEtag/Count- Obtener total
Una factura creada para un deudor (tanto facturas de crédito como de débito).
Frecuencia de sincronización: Datos en tiempo real, sincronizar cada 5 minutos
Devuelve
Array de objetos InvoiceEtagResult (máx. 2000 por petición)
DebetInvoicePurchaseItem
Endpoints:
GET /api/v2/DebetInvoicePurchaseItemEtag/{etag?}- Obtener items de compra de facturas débitoGET /api/v2/DebetInvoicePurchaseItemEtag/Count- Obtener total
Flores y plantas vendidas a un deudor y luego facturadas.
Frecuencia de sincronización: Datos en tiempo real, sincronizar cada 5 minutos
Devuelve
Array de objetos DebetInvoicePurchaseItemEtagResult (máx. 2000 por petición)
DebetInvoiceCustomItem
Endpoints:
GET /api/v2/DebetInvoiceCustomItemEtag/{etag?}- Obtener items personalizados de facturas débitoGET /api/v2/DebetInvoiceCustomItemEtag/Count- Obtener total
Líneas personalizadas en facturas de débito creadas por el usuario sin vínculo a una compra.
Frecuencia de sincronización: Datos en tiempo real, sincronizar cada 5 minutos
Devuelve
Array de objetos DebetInvoiceCustomItemEtagResult (máx. 2000 por petición)
DebetInvoicePackagingItem
Endpoints:
GET /api/v2/DebetInvoicePackagingItemEtag/{etag?}- Obtener items de embalaje de facturas débitoGET /api/v2/DebetInvoicePackagingItemEtag/Count- Obtener total
Embalaje (Holandés: fust) que es facturado.
Frecuencia de sincronización: Datos en tiempo real, sincronizar cada 5 minutos
Devuelve
Array de objetos DebetInvoicePackagingItemEtagResult (máx. 2000 por petición)
DebetInvoiceTrolleyItem
Endpoints:
GET /api/v2/DebetInvoiceTrolleyItemEtag/{etag?}- Obtener items de carro de facturas débitoGET /api/v2/DebetInvoiceTrolleyItemEtag/Count- Obtener total
Carros (Holandés: karren) que son facturados.
Frecuencia de sincronización: Datos en tiempo real, sincronizar cada 5 minutos
Devuelve
Array de objetos DebetInvoiceTrolleyItemEtagResult (máx. 2000 por petición)
Facturación - Crédito
CreditInvoicePurchaseItem
Endpoints:
GET /api/v2/CreditInvoicePurchaseItemEtag/{etag?}- Obtener items de compra de facturas créditoGET /api/v2/CreditInvoicePurchaseItemEtag/Count- Obtener total
Flores y plantas vendidas a un deudor, luego facturadas y luego acreditadas.
Frecuencia de sincronización: Datos en tiempo real, sincronizar cada 5 minutos
Devuelve
Array de objetos CreditInvoicePurchaseItemEtagResult (máx. 2000 por petición)
CreditInvoiceCustomItem
Endpoints:
GET /api/v2/CreditInvoiceCustomItemEtag/{etag?}- Obtener items personalizados de facturas créditoGET /api/v2/CreditInvoiceCustomItemEtag/Count- Obtener total
Líneas personalizadas en facturas de crédito creadas por el usuario sin vínculo a una compra.
Frecuencia de sincronización: Datos en tiempo real, sincronizar cada 5 minutos
Devuelve
Array de objetos CreditInvoiceCustomItemEtagResult (máx. 2000 por petición)
CreditInvoiceDepositItem
Endpoints:
GET /api/v2/CreditInvoiceDepositItemEtag/{etag?}- Obtener items de depósito de facturas créditoGET /api/v2/CreditInvoiceDepositItemEtag/Count- Obtener total
Embalaje (Holandés: fust) y carros (Holandés: karren) con precio de depósito devueltos por el deudor.
Frecuencia de sincronización: Datos en tiempo real, sincronizar cada 5 minutos
Devuelve
Array de objetos CreditInvoiceDepositItemEtagResult (máx. 2000 por petición)
Pagos y carros
Payment
Endpoints:
GET /api/v2/PaymentEtag/{etag?}- Obtener pagosGET /api/v2/PaymentEtag/Count- Obtener total
Pagos registrados para facturas (transacciones bancarias, pagos en efectivo, cheques).
Frecuencia de sincronización: Datos en tiempo real, sincronizar cada 5 minutos
Devuelve
Array de objetos PaymentEtagResult (máx. 2000 por petición)
DistributedTrolley
Endpoints:
GET /api/v2/DistributedTrolleyEtag/{etag?}- Obtener carros distribuidosGET /api/v2/DistributedTrolleyEtag/Count- Obtener total
Registros de distribución de carros.
Frecuencia de sincronización: Datos en tiempo real, sincronizar cada 5 minutos
Devuelve
Array de objetos DistributedTrolleyEtagResult (máx. 2000 por petición)
Pronóstico
PrognosePrice
Endpoints:
GET /api/v2/PrognosePriceEtag/{etag?}- Obtener precios de pronósticoGET /api/v2/PrognosePriceEtag/Count- Obtener total
Pronósticos de precios por artículo, semana y año. Solo devuelve datos del año actual y siguiente.
Frecuencia de sincronización: Cambia poco, sincronizar una vez al día
Devuelve
Array de objetos PrognosePriceEtagResult (máx. 2000 por petición)
PrognoseQuantity
Endpoints:
GET /api/v2/PrognoseQuantityEtag/{etag?}- Obtener cantidades de pronósticoGET /api/v2/PrognoseQuantityEtag/Count- Obtener total
Pronósticos de cantidad por artículo, semana y año. Incluye distribución por día de la semana. Solo devuelve datos del año actual y siguiente.
Frecuencia de sincronización: Cambia poco, sincronizar una vez al día
Devuelve
Array de objetos PrognoseQuantityEtagResult (máx. 2000 por petición)
PrognosesReservation
Endpoints:
GET /api/v2/PrognosesReservationEtag/{etag?}- Obtener reservas de pronósticoGET /api/v2/PrognosesReservationEtag/Count- Obtener total
Reservas de pronóstico por deudor, con componentes de artículo, asignaciones diarias y detalles PreOrder. Usado para gestionar cantidades de pronóstico reservadas por semana y año.
Frecuencia de sincronización: Datos en tiempo real, sincronizar cada 5 minutos
Devuelve
Array de objetos PrognosesReservationEtagResult (máx. 2000 por petición)
Logística
TransportScheduleRoute
Endpoints:
GET /api/v2/TransportScheduleRouteEtag/{etag?}- Obtener rutas de transporteGET /api/v2/TransportScheduleRouteEtag/Count- Obtener total
Rutas de transporte planificadas por día, incluyendo conductor, vehículo y paradas embebidas con información logística calculada (horas de llegada, distancia, duración). Cada ruta pertenece a un TransportSchedule (un schedule por día) y contiene una lista ordenada de paradas. Las paradas pueden ser paradas Debtor (entrega a uno o más clientes) o Vehicle (recogida/entrega de vehículo). Los objetos Info en rutas y paradas contienen valores producidos por el motor de optimización.
Frecuencia de sincronización: Datos en tiempo real, sincronizar cada hora
Devuelve
Array de objetos TransportScheduleRouteEtagResult (máx. 1000 por petición)
Modelos
Todos los modelos están listados a continuación con sus propiedades. Los nombres de propiedades, tipos de datos y estructuras se mantienen en inglés según convención de la API.
Para la definición completa de todos los modelos (AdministrationEtagResult, ArticleEtagResult, ArticleSortEtagResult, ArticleGroupEtagResult, CountryEtagResult, CreditInvoice, CurrencyEtagResult, DebetInvoice*, DebtorEtagResult, DistributedPurchase*, DistributedTrolleyEtagResult, EmployeeEtagResult, InvoiceEtagResult, ListArticleSortEtagResult, ListGroupEtagResult, ListPreOrderGroupItemEtagResult, LocationEtagResult, MarkupCategoryEtagResult, PaymentEtagResult, PreOrderEtagResult, PrognosePriceEtagResult, PrognoseQuantityEtagResult, PrognosesReservationEtagResult, PurchaseEtagResult, RemarkEtagResult, ShopDebtorSessionEtagResult, ShopFavoritesEtagResult, SupplierEtagResult, TransportScheduleRouteEtagResult), consulte la versión inglesa de esta documentación que contiene todas las definiciones de propiedades detalladas.*
¿Tiene preguntas o necesita ayuda? No dude en contactarnos por teléfono al +31 (0)71 30 20 310 o envíe un correo electrónico a support@easyflor.nl.