Service Layer vs DI API: ¿cuál usar para integrar SAP Business One?

Diferencias entre Service Layer y DI API de SAP Business One, cuándo conviene cada una y por qué nunca debes escribir directo en la base de datos.

Cuando conectas SAP Business One con otro sistema, una de las primeras decisiones técnicas es por dónde entra y sale la información. SAP ofrece dos caminos oficiales: Service Layer y DI API. Elegir bien define qué tan fácil será mantener la integración en el futuro.

Por qué no escribir directo en la base de datos

Antes de comparar, una regla importante: nunca se debe escribir directamente en las tablas de SAP Business One. Hacerlo se salta las validaciones del sistema, puede dejar documentos incompletos o descuadrados y deja tu instalación fuera del soporte de SAP.

Leer datos con consultas a la base de datos sí es válido para reportes y análisis. Para crear o modificar documentos, siempre se usa una de las interfaces oficiales.

Qué es DI API

DI API (Data Interface API) es la interfaz clásica de SAP Business One. Es una librería que se instala en una computadora con Windows y que los programas usan para conectarse a una compañía de SAP y crear, leer o actualizar objetos como clientes, artículos, pedidos o facturas.

Conviene cuando:

  • Desarrollas un add-on que corre dentro del cliente de SAP Business One.
  • Tienes un proceso de escritorio o un servicio de Windows en la misma red que SAP.
  • Necesitas usar objetos o funciones que aún no están disponibles en Service Layer.

Considera que:

  • Requiere instalar componentes en la máquina que hace la integración.
  • No está pensada para ser consumida desde internet, apps móviles o servicios en la nube.

Qué es Service Layer

Service Layer es la interfaz web moderna de SAP Business One. Expone los objetos de SAP como un servicio REST basado en OData: los sistemas se comunican con peticiones HTTP y datos en JSON, desde cualquier lenguaje o plataforma.

Conviene cuando:

  • Integras SAP con una tienda en línea, un CRM, una app móvil o cualquier sistema en la nube.
  • Quieres una integración que no dependa de instalar nada en una computadora específica.
  • Necesitas que varias aplicaciones se conecten al mismo tiempo de forma ordenada.

Considera que:

  • Funciona con sesiones: la aplicación inicia sesión, trabaja y la cierra, por lo que conviene reutilizar sesiones en lugar de abrir una por cada operación.
  • Permite agrupar varias operaciones en una sola petición (batch), algo útil cuando se cargan muchos documentos.

Comparación rápida

DI API Service Layer
Tipo Librería instalada en Windows Servicio web REST (OData)
Formato Objetos en código HTTP y JSON
Ideal para Add-ons y procesos locales Integraciones web, móviles y en la nube
Se consume desde La misma red, con componentes instalados Cualquier sistema que haga peticiones HTTP

¿Cuál elegimos nosotros?

En la mayoría de integraciones nuevas, especialmente las que conectan SAP con sistemas externos o apps, Service Layer es la primera opción por su flexibilidad y facilidad de mantenimiento. Usamos DI API cuando el proyecto vive dentro del ecosistema de escritorio de SAP o necesita algo que Service Layer todavía no ofrece.

Muchas veces la respuesta correcta combina ambas: Service Layer para el flujo principal y consultas directas de solo lectura para reportes rápidos.

En resumen

Service Layer y DI API no compiten: resuelven necesidades distintas. Lo importante es elegir la interfaz oficial correcta para tu caso y no tomar atajos con la base de datos. Si estás por conectar SAP con otro sistema, revisa cómo trabajamos las integraciones SAP Business One o cuéntanos tu proyecto de desarrollo a la medida.

Servicios relacionados

Te ayudamos a ponerlo en práctica

Sigue leyendo

Más artículos del blog

Contacto

¿Tienes un proyecto parecido?

Cuéntanos qué necesitas y te respondemos con el siguiente paso, sin compromiso.

Lunes a sábado, de 8:00 a 21:00 · Respondemos en menos de 3 horas

Te responde una persona, no un buzón

Uno de nuestros ejecutivos revisa cada solicitud y te contacta en menos de 3 horas.

Agenda una videollamada¿Prefieres hablar ya? Elige día y hora; te llega la invitación de Microsoft Teams.

Paso 1 de 3¿En qué te podemos ayudar?

Elige un tema para continuar.

Paso 2 de 3Cuéntanos un poco más

Escribe un mensaje breve para continuar.

Paso 3 de 3¿Cómo te contactamos?
Prefiero que me contacten por

Te respondemos en menos de 3 horas · Lunes a sábado, de 8:00 a 21:00

Al enviar aceptas nuestro aviso de privacidad. Solo usamos tus datos para atender tu solicitud.