Procesamiento de pedidos cXML (por ejemplo, de SAP Ariba®)

Este video está incrustado en el modo de privacidad mejorada de YouTube, que bloquea el establecimiento de cookies de YouTube hasta que se haga clic en el botón de reproducción. Al hacer clic en el botón de reproducción, da su consentimiento para que YouTube coloque cookies en el dispositivo que está utilizando, las cuales pueden ser utilizadas para analizar el comportamiento de uso con fines de investigación de mercado y marketing. Más detalles sobre el uso de cookies por parte de YouTube pueden encontrarse en la política de cookies de Google en https://policies.google.com/technologies/types?hl=es.

Introducción

Con el módulo de pedidos revisados de PunchCommerce, puede recibir de forma segura pedidos entrantes de diferentes sistemas - especialmente en formato cXML - y reenviarlos sin problemas a sus sistemas de destino.

Los pedidos se confirman automáticamente como recibidos tras su recepción. A continuación, tiene dos opciones:

1) Solicitud vía REST API - usted integra el módulo de forma flexible en sus propios sistemas. 2) Reenvío automático - por ejemplo, a Shopware 6 u otros sistemas de tienda.

Esto reduce significativamente el esfuerzo manual, se evitan errores de transmisión y la colaboración con los sistemas de e-procurement de sus clientes se hace más eficiente.

Tenga en cuenta que las funciones para definir sus propios formatos de datos y para gestionar varios perfiles de pedido sólo están disponibles actualmente para determinados clientes en el marco de nuestros contratos Enterprise**.


Creación de un perfil de pedido

Los perfiles de pedido son el núcleo de nuestro módulo de pedidos. Aquí tiene la opción de definir su propio modelo de datos y ponerlo a disposición a través de una API REST. Un perfil de pedido puede asignarse a uno o varios clientes.

1) Vaya al área Perfiles de pedido y haga clic en Crear nuevo perfil de pedido. 2) Asigne un nombre a su perfil.

  1. cargue un archivo cXML del tipo OrderRequest.
  2. PunchCommerce genera una propuesta de modelo de datos basada en el modelo de datos cXML, que puede personalizar si lo desea.

Transmisión de pedidos desde sistemas de terceros

Los sistemas de aprovisionamiento como Ariba® o Coupa pueden configurarse para que los nuevos pedidos de sus clientes se transmitan automáticamente como cXML-OrderRequest a la siguiente dirección:

https://<instance>.enterprise.punchcommerce.de/api/v1/orders/cxml

El endpoint espera un documento cXML-OrderRequest según la especificación del capítulo 7 de la Guía de Referencia cXML.

Importante: Sólo se pueden recibir pedidos de clientes a los que haya asignado un perfil de pedido. Los pedidos para clientes desconocidos o clientes sin perfil se rechazan automáticamente y no están disponibles para su procesamiento a través de nuestra API.

Ejemplo de documento

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE cXML SYSTEM "http://xml.cxml.org/schemas/cXML/1.2.014/cXML.dtd">
<cXML xml:lang="en-US" payloadID="93369535150910.10.57.136" timestamp="2000-08-03T08:49:11+07:00">
  <cabecera>
    ...
  </header>
  <Solicitud>
    <OrderRequest>
      <OrderRequestHeader orderID="DO102880" orderDate="2012-08-03T08:49:09+07:00" type="new">
        ...
      </OrderRequestHeader>
      <ItemOut quantity="2" lineNumber="1">
        ...
      </ItemOut>
    </OrderRequest>
  </OrderRequest>
</cXML>

Ejemplo de respuesta

Si no se produce ningún error al procesar el pedido, nuestro sistema responde con la siguiente respuesta como confirmación de recepción. En este paso no surge ninguna obligación comercial:

<cXML payloadID="9949494" xml:lang="en" timestamp="1999-03-12T18:39:09-08:00">
  <Respuesta>
    <status code="200" text="OK"/>
  </response>
</cXML>

Acceso a los pedidos a través de nuestra API REST

Para cada perfil de pedido se generan datos de acceso individuales en forma de token y una URL para nuestra API REST.

Lista de todos los pedidos de un perfil.

GET {{punchcommerce_host}}/api/v1/profile/{{profile_id}}

Response:

{
  "data": {
    "id": "4a152855-1a26-4059-a637-4d56cc151d9e",
    "name": "adsd",
    "clientes": [
      {
        "uuid": "69f14942-178d-4d57-b6d5-fdd9d4aee407",
        "name": "Mraz Inc"
      }
    ],
    "orders": [
      {
        "id": "cb074373-60d9-4c1b-9453-988602da457e",
        "customer_id": "69f14942-178d-4d57-b6d5-fdd9d4aee407",
        "cliente": "Mraz Inc",
        "created_at": "2022-10-03T13:21:16.000000Z",
        "link": "https://punchcommerce.local/api/v1/profile/4a152855-1a26-4059-a637-4d56cc151d9e/order/cb074373-60d9-4c1b-9453-988602da457e"
      },
      ...
    ]
  }
}

Detalles de un pedido

La respuesta depende del modelo de datos que haya configurado para el perfil de pedido correspondiente en nuestro sistema.

GET {{punchcommerce_host}}/api/v1/profile/{{profile_id}}/order/{order_id}}

Ejemplo de respuesta:

{
  "data": {
    "meta": {
      "request_id": "1637737323553.569506334.000002897@IrwnYChEL2oZa48FesaJ62+R18I=",
      "cxml_version": "1.2.044",
      "language": "en-US"
    },
    "order": {
      "total": "17",
      "currency": "EUR",
      "date": "2021-11-23T23:01:59-08:00",
      "referencia": "EP686328",
      "versión": 1,
      "facturación": {
        "empresa": "FOOBAR GMBH - RECHNUNGSPRUEFUNG",
        "calle": "Walter-Flex-Str. 27",
        "código postal": "24000",
        "ciudad": "Hamburgo",
        "país": "Alemania"
      },
      "envío": {
        "empresa": "FOOBAR GMBH",
        "calle": "Walter-Flex-Str. 27",
        "código postal": "65428",
        "ciudad": "Rüsselsheim",
        "país": "Alemania"
      },
      "artículos": [
        {
          "index": 1
          "número de pedido": "FOOBAR_VK-deutsch_up",
          "quantity": 100
          "name": "Tarjeta de visita FOOBAR (alemán)",
          "unit_price": "0.17",
          "unit": "EA"
        }
      ]
    }
  }
}

Reenvío de pedidos

Además de la recuperación pura a través de la API REST, los pedidos también se pueden reenviar automáticamente a los sistemas de la tienda. Actualmente soportamos Shopware 6 en particular. Otros sistemas están en preparación.

Funcionalidad

  1. Recepción de un pedido (p. ej. cXML).
  2. PunchCommerce transforma los datos en un formato estándar interno.
  3. el sistema de destino configurado (Shopware 6) se suministra a través de la Admin API. 4) PunchCommerce tiene en cuenta los fallbacks para métodos de pago, métodos de envío, divisas y tipos impositivos.

Configuración

  • Seleccione el sistema de destino en el perfil del pedido (p. ej. Shopware).
  • Almacene los datos de acceso: URL, ID de cliente (clave de acceso), secreto de cliente.
  • Probar la conexión (PunchCommerce comprueba la autenticación y carga los métodos de pago, métodos de envío, divisas, tipos impositivos).
  • Configure los valores predeterminados si no pueden deducirse claramente del pedido.

Resultado

  • El pedido aparece directamente en el backend de Shopware con el prefijo PUNCH- en el número de pedido.
  • Los productos que faltan pueden ser ignorados o tratados como errores, dependiendo de la configuración.
  • El proceso es transparente: el éxito y los errores se registran en la interfaz de PunchCommerce.

Nota: Los ID de métodos de pago o métodos de envío que se hayan eliminado en Shopware pueden provocar errores. Vuelva a probar y guardar la conexión en PunchCommerce después de realizar cambios en Shopware.


Operación y Control de Calidad

  • Compruebe regularmente los mensajes de éxito en la interfaz de PunchCommerce.
  • Mantenga actualizados los datos maestros (productos, divisas, impuestos).
  • Defina una regla clara para los productos que faltan (ignorar o cancelar).

Lista de comprobación para la puesta en marcha

  • Prueba de conexión satisfactoria
  • [ ] Métodos de pago, métodos de envío, divisas, tipos impositivos actualizados en Shopware
  • Campos adicionales establecidos y guardados en PunchCommerce
  • El remitente cXML reconoce el punto final y la autenticación correctos.
  • Proceso definido para productos que faltan
  • Pedido de prueba creado correctamente

Preguntas más frecuentes (FAQ)

**¿Por qué no hay opciones visibles después de una recarga? Las listas sólo se cargan después de hacer clic en "Probar". Sin embargo, se conservan los valores guardados.

**¿Puedo configurar varios sistemas de destino? Sí, un sistema de destino por perfil. Es posible configurar varios perfiles.

**¿Tengo que rellenar todos los campos adicionales? No, pero es recomendable. Los valores por defecto hacen que el proceso sea más robusto.

**¿Por qué "PUNCH-" en el número de pedido? Esto facilita la identificación de los pedidos de PunchCommerce en el backend de Shopware.

**¿Qué seguridad tienen mis datos? Los secretos se almacenan de forma confidencial, sólo se permiten conexiones cifradas (HTTPS).


Solución de problemas (búsqueda de errores)

  • La prueba de conexión falla:
    • ¿La URL es correcta? ¿Accesible vía HTTPS?
    • ¿Clave/secreto de acceso correctos y con derechos suficientes?
    • ¿El cortafuegos/proxy ha bloqueado POST /api/oauth/token?
  • Opciones (pago/envío/divisa/impuestos) vacías:
    • Ejecutar "Test"; las entidades correspondientes deben existir y estar activas en Shopware.
  • El pedido se rechaza en Shopware debido a ID no válidos:
    • ¿Identificadores antiguos guardados en PunchCommerce? Haga clic en "Probar", seleccione las nuevas opciones y guarde.
  • El cXML llega, pero faltan productos:
    • Configure la opción "Ignorar productos no existentes" en función de los requisitos del proceso. Compruebe los datos maestros del producto en Shopware.
  • Se agota el tiempo de espera:
    • Compruebe la red; inténtelo de nuevo. Con tablas de opciones grandes, la primera prueba puede tardar un poco más.

Nota técnica: La prueba de conexión recoge éxitos parciales. Puede tener "éxito" aunque no se hayan cargado listas de opciones individuales. Las notas en el resultado proporcionan detalles.

Esté preparado para cualquier consulta de soporte:

  • Versión de Shopware y URL de la tienda
  • Hora y mensaje de error
  • Capturas de pantalla de la configuración (sin secreto)
  • Ejemplo de un pedido cXML (anónimo)

Esto nos permite ayudarle de forma rápida y precisa.

PunchCommerce® ist ein Produkt der Netzdirektion GmbH