Saltar al contenido
Integraciones

Conectar un ERP: SAP, Dynamics 365, NetSuite y Odoo

Configure un mapeo del hub de integración que mantenga productos y pasaportes alineados con su ERP, con los ajustes exactos de cada sistema compatible.

Equipo editorial de DPP Shield · Actualizado:

En Integration hub, cree un mapeo a partir de la plantilla de su ERP, apúntelo a la API de productos del ERP o a un archivo exportado, previsualice los cambios, aplíquelos y programe el flujo. La plantilla ya nombra los campos estándar del ERP; usted solo los comprueba en su propia instalación.

Qué hace la conexión

Un mapeo de ERP lee artículos - número de artículo, descripción, GTIN y cualquier atributo mapeado - y los escribe en los productos y pasaportes correspondientes. La correspondencia se hace por SKU o GTIN, así que los SKU de sus productos deben escribirse exactamente como los números de artículo del ERP. Aplicar una ejecución crea una nueva versión del pasaporte validada por el esquema solo cuando un valor cambia, y cada campo modificado registra el mapeo y la ejecución que lo escribió.

Los propietarios y administradores crean y editan mapeos; los editores pueden ejecutarlos. Una ejecución lee hasta 5000 registros y una fuente de hasta 10 MB: reparta un catálogo grande en varios mapeos o envíelo por lotes.

Configurar el mapeo

  1. Abra Integration hub, elija New mapping y parta de la plantilla de su sistema.
  2. Compruebe la ruta de los registros (dónde está la lista de artículos en la respuesta) y la clave: el campo de origen que contiene su SKU o GTIN.
  3. Revise las reglas. Cada una copia un campo de origen a un campo de producto (product.name, product.gtin, product.brand…) o a una ruta de datos del pasaporte como data.materials.0.recycled_percent, con una transformación si hace falta - número con coma decimal o factor de unidad, entero, sí/no, fecha, código de país, mayúsculas o minúsculas - y una tabla de equivalencias opcional.
  4. Guarde y suba una exportación de ejemplo o use Test feed para ver qué devuelve la fuente.
  5. Ejecute una vista previa: muestra, por registro, los campos que cambiarían; todavía no se escribe nada.
  6. Aplique la ejecución y programe el flujo cada hora o cada día si la fuente es un flujo.

SAP S/4HANA: API Product

Plantilla: SAP S/4HANA product master (OData API_PRODUCT_SRV). URL del flujo https://<host>/sap/opu/odata/sap/API_PRODUCT_SRV/A_Product?$format=json&$expand=to_Description&$top=5000, ruta d.results, clave Product.

Autentíquese con un usuario de comunicación autorizado en la API Product (credenciales basic), o con OAuth 2.0 client credentials si su entorno emite tokens. ProductStandardID contiene el GTIN solo cuando el tipo de identificador estándar del producto es un GTIN: compruébelo antes de mapearlo. Se usa la primera descripción: filtre to_Description por idioma si los productos tienen varias.

SAP ECC o S/4HANA: IDoc MATMAS

Plantilla: SAP material master IDoc (MATMAS, XML). Ruta IDOC.E1MARAM, clave MATNR, con E1MAKTM.MAKTX como nombre y EAN11 como GTIN. MATNR es el número de material tal como lo guarda SAP, a menudo con ceros a la izquierda, y sus SKU deben usar la misma forma.

Entregue el XML por SFTP desde una carpeta de salida - el flujo fija la clave de host del servidor - o suba el archivo. Se rechaza el XML con declaración de tipo de documento (DOCTYPE).

SAP Business One

Plantilla: SAP Business One items (exportación del Service Layer), ruta value, clave ItemCode, con ItemName y BarCode. El Service Layer exige una sesión que un flujo programado no puede mantener: exporte GET /b1s/v1/Items?$select=ItemCode,ItemName,BarCode a un archivo y súbalo, o haga que su plataforma de integración envíe el resultado al punto de entrada push del mapeo.

Microsoft Dynamics 365 Business Central

Plantilla: Dynamics 365 Business Central items (API v2.0). URL https://api.businesscentral.dynamics.com/v2.0/<tenant>/<environment>/api/v2.0/companies(<company id>)/items, ruta value, clave number, con displayName y gtin.

Registre una aplicación en Microsoft Entra ID con el permiso de API de Business Central y use OAuth 2.0 client credentials: punto de token https://login.microsoftonline.com/<tenant>/oauth2/v2.0/token, scope https://api.businesscentral.dynamics.com/.default. Para Finance and Operations, use la entidad ReleasedProductsV2 con ItemNumber como clave.

Oracle NetSuite

Plantilla: NetSuite items (SuiteQL). Envía SELECT itemid, displayname, upccode FROM item WHERE isinactive = 'F' a https://<account>.suitetalk.api.netsuite.com/services/rest/query/v1/suiteql?limit=1000, ruta items, clave itemid. SuiteQL devuelve los nombres de columna en minúsculas.

La API REST de NetSuite se autentica con firmas (basadas en token u OAuth 2.0 de máquina a máquina) que un flujo no puede producir. Ejecute la consulta en un script programado que envíe el resultado al punto de entrada push del mapeo, o suba una exportación de búsqueda guardada.

Odoo

Plantilla: Odoo products (exportación compatible con importación), clave default_code (la referencia interna), con name y barcode. Exporte los productos con «Quiero actualizar datos (exportación compatible con importación)» para que las columnas lleven los nombres de campo de Odoo.

También funciona un flujo JSON-RPC: envíe una llamada search_read a /jsonrpc y escriba {{credential}} donde va la clave de API, que así se guarda cifrada en lugar de ir en el cuerpo de la solicitud.

Comprobar qué hizo una ejecución

El historial muestra cada ejecución con su origen - manual, programada o push - y, por registro, si se actualizó, quedó igual, no tuvo correspondencia o falló. «Sin correspondencia» suele significar que la clave se escribe distinto en ambos sistemas, por ejemplo con o sin ceros a la izquierda. Repetir la ejecución con los mismos datos no cambia nada, y un valor de origen vacío nunca borra un campo ya relleno.