Para tener el historial de compra que han concretado los Comercios a lo largo de su relación con el cliente, se manejan sus Transacciones.
¿Qué es una transacción? Una Transacción en YOM representa una compra concretada del Comercio. Contiene información sobre el Comercio, los Productos que compró, los Precios, Descuentos, Impuestos, y más.
El endpoint de Transacciones permite a YOM acceder a información detallada sobre cada pedido completado.
GET /api/transactions
El endpoint debe soportan filtro sobre el campo date
, fecha del pedido o factura.
date_from
→ Fecha y hora desde la cual se quieren obtener los registros creados.
date_to
→ Fecha y hora hasta la cual se quieren obtener los registros creados.
GET /api/transactions?date_from=2024-01-01T00:00:00Z&date_to=2024-12-31T23:59:59Z
Campo | Tipo | Carácter | Descripción | Ejemplos |
---|---|---|---|---|
orderId |
📝 Texto | 🟢 Requerido | Identificador único del pedido (independiente del tipo de documento). | "TR12345" |
internalOrderId |
📝 Texto | 🟢 Requerido | Identificador del pedido hecho en YOM. (El que enviamos en la inyección hacia el ERP) | "YOM12345" |
productId |
📝 Texto | 🟢 Requerido | Identificador externo del producto | "PROD5678" |
commerceId |
📝 Texto | 🟢 Requerido | Identificador externo del comercio | "COM987" |
sellerId |
📝 Texto | 🟢 Requerido | Identificador externo del vendedor | "SEL987" |
sellerRouteId |
📝 Texto | 🟢 Requerido | Identificador externo de la ruta del vendedor | "ROUSEL987" |
date |
📅 Fecha | 🟢 Requerido | Fecha del pedido o factura. La fecha debe estar en formato ISO 8601. | "2018-10-22T00:00:00.000Z" |
documentType |
📝 Texto | 🟢 Requerido | Tipo de documento. | |
"order" → pedido |
||||
"invoice" → factura |
||||
"credit note" → nota de crédito |
||||
”debit note” → nota de débito |
Si el tipo de documento es nota de crédito, los valores deben ser negativos
| "order"
"invoice"
"credit note"
"debit note" |
| documentCode
| 📝 Texto | 🟢 Requerido | Código del documento, en caso de ser un pedido se repite orderId en este campo. | "12345" |
| quantity
| #️⃣ Número | 🟢 Requerido | Cantidad de unidades pedidas del producto. | 10 |
| netPricePerUnit
| #️⃣ Número flotante | 🟢 Requerido | Precio unitario sin descuento y sin impuesto del Producto. | 900 |
| discountedNetPricePerUnit
| #️⃣ Número flotante | 🟢 Requerido | Precio sin impuesto y con descuento del producto | 850 |
| taxPerUnit
| #️⃣ Número flotante | 🟢 Requerido | Monto del impuesto aplicado a cada unidad del Producto. | 190 |
| discountedTaxPerUnit
| #️⃣ Número flotante | 🟢 Requerido | Monto del impuesto con descuento aplicado a cada unidad del Producto. | 170 |
| discountPerUnit
| #️⃣ Número flotante | 🟢 Requerido | Descuento unitario sin impuesto aplicado al Producto. | 50 |
| grossPricePerUnit
| #️⃣ Número flotante | 🟢 Requerido | Precio con impuesto y sin descuento del producto | 1100 |
| discountedGrossPricePerUnit
| #️⃣ Número flotante | 🟢 Requerido | Precio con impuesto y con descuento del producto | 950 |
| currency
| 📝 Texto | 🟢 Requerido | Moneda en la que se realiza la venta.
"clp"
| "clp" |
| origin
| 📝 Texto | 🟢 Requerido | Origen de la Transacción. Esta es una definición propia del cliente | "carga inicial" |
| sourceChannel
| 📝 Texto | 🟢 Requerido | Canal de venta contacto | "app movil”,
”ecommerce |
| deliveryDate
| 📅 Fecha | 🟡 Recomendado | Fecha en que se entregó el pedido.
La fecha debe estar en formato ISO 8601. | "2018-10-22T00:00:00.000Z" |
| referenceCode
| 📝 Texto | 🟢 Requerido | Código del documento de referencia en caso de que documentType
sea "credit note"
o ”debit note”
. Normalmente el código hace referencia a una “invoice”
. | "REF123" |
| couponCode
| 📝 Texto | ⚪ Opcional | Código de cupón | "CUPON123" |
| isDeleted
| 🔘 Bool | ⚪ Opcional | ¿Fue eliminada la Transacción? | "true" |
| dispatchPricePerUnit
| #️⃣ Número flotante | ⚪ Opcional | Precio del despacho por unidad | 1100 |
La respuesta del endpoint de Transacciones devuelve un JSON que contiene la información detallada de cada orden registrado en el cliente (son las ordenes de YOM más los pedidos que puede crear el cliente desde algún sistema propio de ellos), incluyendo datos del cliente, productos, precios, y más.
{
"orderId": "TR12345",
"internalOrderId": "YOM12345",
"productId": "PROD5678",
"commerceId": "COM987",
"customerId": "CUS987",
"sellerId": "SEL987",
"sellerRouteId": "ROUSEL987",
"date": "2018-10-22T00:00:00.000Z",
"documentType": "order",
"documentCode": "12345",
"quantity": 10,
"netPricePerUnit": 900,
"discountedNetPricePerUnit": 850,
"taxPerUnit": 190,
"discountedTaxPerUnit": 170,
"discountPerUnit": 50,
"grossPricePerUnit": 1100,
"discountedGrossPricePerUnit": 950,
"currency": "clp",
"origin": "carga inicial",
"sourceChannel": "app movil",
"deliveryDate": "2018-10-22T00:00:00.000Z",
"referenceCode": "REF123",
"couponCode": "CUPON123",
"isDeleted": true,
"dispatchPricePerUnit": 1500
}
Pasos anteriores
<aside> <img src="/icons/arrow-left_gray.svg" alt="/icons/arrow-left_gray.svg" width="40px" /> Promociones
</aside>
Siguientes pasos
<aside> <img src="/icons/arrow-right_gray.svg" alt="/icons/arrow-right_gray.svg" width="40px" />
</aside>
Tabla de contenidos