Información importante para actualizar desde 3.1 a 4.0s de la API.
Por favor asegúrate de haber migrado primero a 3.1 antes de migrar a 4.0s 3.1 Guía de migración
4.0 Simple (4.0s) es una presentación de la misma API /api/v4/ documentada en 4.0, escrita para integraciones que abordan registros por sus propios identificadores.
No es una versión separada de la API: no hay una URL /api/v4s/, y una solicitud construida a partir de estas páginas es una solicitud ordinaria 4.0.
What differs is the presentation: these pages identify records by externalId and keep the flat customer structure, which makes the move from 3.1 smaller in scope than the full 4.0.
externalId es un identificador aceptado en lugar de uno requerido, y 4.0 también lo acepta: cada punto final de 4.0 acepta _id, globalRecordId o externalId.
Cambios Incompatibles
POST
{base_url}/api/v4/
Actualizar solicitudes a .../api/v4/... En lugar de .../api/v3.1/... .
Valores monetarios
El dinero ahora se envía y se devuelve como un número entero de centavos. En 3.1 los mismos campos tomaban dólares decimales, por lo que 45.99 en 3.1 se convierte en 4599 en 4.0s.
This applies to money fields generally, including invoice totals, taxes, discounts, line item unit prices and totals, payment amounts, allocations, item unit prices, and every other amount you send or receive, not just a single field.
Este es un cambio silencioso: el mismo payload es aceptado en ambas versiones sin error, y significa una cantidad cien veces diferente. Es fácil equivocarse en ambas direcciones.
Enviar valores de 3.1 sin cambios a 4.0s cobra cien veces de menos: un 45.99 que significaba $45.99 se lee como centavos y solo cobra alrededor de $0.46.
Leer una respuesta de 4.0s como dólares cobra cien veces de más: un 4599 devuelto son $45.99 en centavos, pero leído como dólares se convierte en $4599.00.
El notification_options Campo ha sido eliminado del Cliente.
Productos → Artículos
El punto final de Productos ha sido renombrado a Artículos. Actualiza las solicitudes a site/{site_id}/item/addUpdate En lugar de site/{site_id}/product/addUpdate .
Afectando
POST
{base_url}/api/v4/site/{site_id}/item/addUpdate
Archivos Adjuntos
El attachments El campo (una lista simple de URL) ha sido reemplazado por el attachmentRefs Objeto, que organiza adjuntos en internal , external ,
y sourcePdf sub-campos.