Saltar al contenido principal
POST
/
endpoint
Importar pedidos
curl --request POST \
  --url https://api.example.com/endpoint
Este endpoint permite importar una lista de pedidos de transacciones en su cuenta de Kameleoon. También puede usar este endpoint para actualizar los pedidos y sus propiedades si ya existen en nuestra base de datos. Los datos deben enviarse como una cadena JSON en el cuerpo de la solicitud.

Solicitud HTTP

POST https://api.products.kameleoon.com/sync/orders

Lista de parámetros de consulta

ParámetroTipoObligatorioDescripción
shop_idStringTrueSu Store Key. Puede encontrarla en Recommendations > Settings > Store settings en la aplicación Kameleoon. También puede contactar con su Customer Success Manager para obtener la clave.
shop_secretStringTrueSu Secret Key. Puede encontrarla en Recommendations > Settings > Store settings en la aplicación Kameleoon. También puede contactar con su Customer Success Manager para obtener la clave.
ordersArrayTrueLista de pedidos. Encuentre en esta tabla los parámetros requeridos para orders.

Lista de parámetros para el objeto orders

ParámetroTipoObligatorioDescripción
idStringTrueID del pedido
external_idStringTrueEs un identificador único asociado a un usuario en su sistema o CRM. (Para garantizar la correspondencia precisa con el VisitorCode de Kameleoon, el ID debe almacenarse primero como un custom data de Kameleoon. Al configurar este custom data, asegúrese de activar la opción Use this custom data as a unique identifier for cross-device matching para garantizar que el ID se utiliza para vincular las actividades del usuario en ambos sistemas.)
statusStringTrueEstado del pedido (por ejemplo, Processing, Out for delivery, Delivered)
channelStringTrueMedio utilizado para el pedido (por ejemplo, Website, App, In-store)
dateIntegerTrueMarca de tiempo Unix en segundos del momento en que se realizó o actualizó el pedido
offlineBooleanFalseMarca los pedidos como offline. Por defecto está establecido en false
location_idStringTrueID de la ubicación (ciudad) del usuario
promocodeStringFalseCódigo promocional usado en el pedido
delivery_typeStringFalseTipo de entrega (por ejemplo, Courier, Pickup in-store)
delivery_addressStringFalseDirección de destino para CRM
delivery_dateDateFalseFecha de entrega prevista. Formato: “YYYY-MM-DD”
delivery_timeTimeFalseHora de entrega prevista. Formato: “HH:MM”
payment_typeStringFalseTipo de pago (por ejemplo, Cash, Card, Wire)
tax_freeBooleanFalseIndica si el artículo está libre de impuestos
bank_issuerStringFalseBanco emisor
bank_pos_processorStringFalseIndica qué sistema/terminal de punto de venta (POS) se utilizó en el momento del pago
bank_loyalty_programStringFalsePrograma de fidelidad bancario
bank_total_installmentIntegerFalseCuotas totales que deben pagarse a través del banco
payment_card_providerStringFalseProveedor de la tarjeta de pago
gift_packageBooleanFalseIndica si el artículo se entregará en un paquete de regalo
valueObjectTrueTotal general del pedido. Encuentre el parámetro requerido para value en esta tabla.
payment_structureObjectTrueUn desglose del pago (por ejemplo, pagos en efectivo, descuentos, gastos de envío). Encuentre los parámetros requeridos para payment_structure en esta tabla.
itemsObjectTrueTodo lo que se incluye en el pedido. Encuentre los parámetros requeridos para items en esta tabla.

Lista de parámetros para el objeto value

ParámetroTipoObligatorioDescripción
TotalNumericTrueTotal del pedido

Lista de parámetros para el objeto payment_structure

ParámetroTipoObligatorioDescripción
cashNumericFalseIndica qué parte del total del pedido se pagó en efectivo
bonusesNumericFalseIndica qué parte del total del pedido se pagó con bonificaciones
deliveryNumericFalseIndica el coste de la entrega del pedido
discountNumericFalseIndica el valor descontado del pedido
Asegúrese de que value.total == payment_structure.cash + payment_structure.bonuses + payment_structure.delivery - payment_structure.discount

Lista de parámetros para el objeto items

ParámetroTipoObligatorioDescripción
idStringTrueID del producto comprado
priceNumericTruePrecio de una unidad del producto
quantityIntegerTrueCantidad total de los productos elegidos
statusStringTrueEstado del artículo; solo puede ser: created, invoiced, shipped, delivered, cancelled, refunded
original_priceNumericFalsePrecio original del producto
discount_productNumericFalsePrecio del producto con descuento
discount_bonusesNumericFalseBonificaciones de descuento del producto
delivery_companyStringFalseServicio postal que entregó el artículo
barcodeStringFalseCódigo de barras del producto
line_idStringFalseID único para la posición de este producto (línea de pedido) en el sistema de pedidos de su tienda.
cancel_reasonStringFalseMotivo de la cancelación
El objeto items es obligatorio cuando se crea un pedido. Puede enviarlo como un array vacío cuando actualice el estado de un pedido.

Ejemplo de solicitud JSON


{
  "shop_id": "DvLWN2ZTMZ",
  "shop_secret": "EIxTuot8sj",
  "orders": [
    {
      "id": "yKsvZbWpCL",
      "external_id":"jhfakfkadak",
      "status": "Processing",
      "channel": "In-store",
      "date": 1602338740,
      "offline": false,
      "location_id": "7701123",
      "promocode": "vxawxSi9Uy",
      "delivery_type": "courier",
      "delivery_address": "111 Peter Street, Toronto, ON, M5V 2H1",
      "delivery_date": "2021-12-21",
      "delivery_time": "15:00",
      "tax_free": false,
      "bank_issuer": "Scotiabank",
      "bank_pos_processor": "Clover",
      "bank_loyalty_program": "PC Optimum",
      "bank_total_installment": 0,
      "payment_card_provider": "Visa"
      "gift_package":true,
      "value": {
        "total": 200.13,
      },
      "payment_structure": {
        "cash": 190,
        "bonuses": 15,
        "delivery": 20,
        "discount": 24.87
      },
      "items": [
        {
          "id": "ITEM-ID-1",
          "price": 205,
          "quantity": 1,
          "status": "created",
          "original_price": 230,
          "discount_product": 30,
          "discount_bonuses": 20,
          "delivery_company": "Canada Post",
          "barcode_id": "195204003541",
          "line_id": "195204003541-22323443-123434",
          "cancel_reason": "none",
        },
}
        ...
      ]
    },
    ...
  ]
}

Cancelar un pedido

Dado que el endpoint Import orders se utiliza tanto para crear como para actualizar pedidos, puede usarlo para registrar un pedido cancelado. Para registrar un pedido cancelado, proporcione lo siguiente:

Parámetros de consulta

ParámetroTipoObligatorioDescripción
shop_idStringTrueSu Store Key. Puede encontrarla en Recommendations > Settings > Store settings en la aplicación Kameleoon. También puede contactar con su Customer Success Manager para obtener la clave.
shop_secretStringTrueSu Secret Key. Puede encontrarla en Recommendations > Settings > Store settings en la aplicación Kameleoon. También puede contactar con su Customer Success Manager para obtener la clave.
ordersArrayTrueLista de pedidos. Proporcione los pedidos que desea registrar como cancelados.

Parámetros del objeto orders

ParámetroTipoObligatorioDescripción
idStringTrueID del pedido
statusStringTrueEstado del pedido (establecido en cancelled)

Ejemplo de solicitud JSON de cancelación

{
  "shop_id": "DvLWN2ZTMZ",
  "shop_secret": "EIxTuot8sj",
  "orders": [
    {
      "id": "yKsvZbWpCL",
      "status": "Cancelled"
    },
    ...
  ]
}