SOAP y REST

Los métodos SOAP (Simple Object Access Protocol) y REST (Representational State Transfer) son dos enfoques ampliamente utilizados para el desarrollo de APIs.
En ZetaSoftware utilizamos ambos, aunque actualmente priorizamos REST, por su flexibilidad, compatibilidad y facilidad de integración con múltiples entornos.

A continuación, te explicamos las principales diferencias entre ambos y cómo comenzar a utilizar nuestras APIs REST, incluyendo la opción de descargar un archivo JSON listo para importar en Postman.

Enfoque SOAP (uso limitado y en proceso de descontinuación)

SOAP es un protocolo basado en XML que define reglas estrictas para estructurar mensajes y servicios web.
Cada mensaje incluye encabezados y cuerpo, y suele describirse mediante archivos WSDL (Web Services Description Language).

Características principales

  • Formato XML: estructura rígida y verbosa.
  • Seguridad WS-Security: alto nivel de control sobre encriptación y autenticación.
  • Enfoque empresarial: útil en sistemas internos o con requerimientos de transacciones complejas (por ejemplo, servicios financieros o gubernamentales).

Estado de soporte
ZetaSoftware mantiene compatibilidad con SOAP únicamente para integraciones existentes.

Importante: Este protocolo no recibirá nuevas actualizaciones y se encuentra en proceso de descontinuación progresiva.
Todas las integraciones nuevas deben realizarse utilizando APIs REST, que continuarán evolucionando y ampliando su cobertura funcional.

Enfoque REST (recomendado)

REST es el estándar actual para el desarrollo de APIs modernas.
Se basa en el uso de métodos HTTP estándar (GET, POST, PUT, DELETE) y en la transferencia de datos en formato JSON, lo que facilita su implementación, comprensión y prueba.

Ventajas clave

  • Simplicidad: cada recurso (cliente, factura, artículo, etc.) se accede mediante una URL única.
  • Ligereza: las respuestas se devuelven en formato JSON, más eficiente y legible.
  • Escalabilidad: las llamadas son independientes entre sí (stateless), lo que mejora el rendimiento.
  • Compatibilidad: puede integrarse fácilmente con aplicaciones web, móviles o servicios de terceros.

Ejemplo de uso
Un servicio REST típico puede consultarse así:

import requests, json

# === Variables a completar ===
desarrollador_codigo = "TU_CODIGO_DESARROLLADOR"
desarrollador_clave = "TU_CLAVE_DESARROLLADOR"
empresa_codigo = "TU_CODIGO_EMPRESA"
empresa_clave = "TU_CLAVE_EMPRESA"
cliente_codigo = "CODIGO_DE_CLIENTE_A_CONSULTAR"

# === Construcción del JSON ===
payload = {
    "QuerySaldosPendientesIn": {
        "Connection": {
            "DesarrolladorCodigo": desarrollador_codigo,
            "DesarrolladorClave": desarrollador_clave,
            "EmpresaCodigo": empresa_codigo,
            "EmpresaClave": empresa_clave,
            "RolCodigo": "1"
        },
        "Data": {
            "Page": "1",
            "Filters": {
                "ClienteCodigo": cliente_codigo
            }
        }
    }
}

# === Mostrar el JSON antes del envío ===
print("=== JSON que se enviará ===")
print(json.dumps(payload, indent=2, ensure_ascii=False))

# === Configurar la solicitud ===
url = "https://api.zetasoftware.com/rest/APIs/RESTFacturaClienteV4QuerySaldosPendientes"
headers = {"Content-Type": "application/json"}

# === Enviar solicitud POST ===
print("\n=== Enviando solicitud... ===")
r = requests.post(url, headers=headers, json=payload)

# === Mostrar resultado ===
print("\n=== Respuesta del servidor ===")
if r.ok:
    print(json.dumps(r.json(), indent=2, ensure_ascii=False))
else:
    print(f"Error {r.status_code}: {r.text}")

Y devolverá un resultado en formato JSON:

{
  "QuerySaldosPendientesOut": {
    "IsLastPage": true,
    "Response": [
      {
        "ClienteCodigo": "C123",
        "ClienteNombre": "Cliente prueba API",
        "ClienteRazonSocial": "Cliente prueba API",
        "ComprobanteAbreviacion": "e-Vta.Cred",
        "ComprobanteCodigo": 701,
        "ComprobanteNombre": "Venta Crédito (CFE)",
        "ComprobanteTipo": 1,
        "ComprobanteTipoNombre": "Venta Crédito",
        "CondicionCodigo": "",
        "CondicionNombre": "",
        "Emitido": "N",
        "Fecha": "2025-07-10",
        "LocalCodigo": 1,
        "LocalNombre": "Casa Central",
        "MonedaCodigo": 1,
        "MonedaNombre": "Pesos",
        "MonedaSimbolo": "$",
        "Notas": "",
        "Numero": "0",
        "RegistroId": "5469",
        "Saldo": "61.00",
        "SaldoSigno": "61.00",
        "Serie": "",
        "Total": "61.00",
        "TotalSigno": "61.00"
      },
      {
        "ClienteCodigo": "C123",
        "ClienteNombre": "Cliente prueba API",
        "ClienteRazonSocial": "Cliente prueba API",
        "ComprobanteAbreviacion": "e-Vta.Cred",
        "ComprobanteCodigo": 701,
        "ComprobanteNombre": "Venta Crédito (CFE)",
        "ComprobanteTipo": 1,
        "ComprobanteTipoNombre": "Venta Crédito",
        "CondicionCodigo": "",
        "CondicionNombre": "",
        "Emitido": "N",
        "Fecha": "2025-07-10",
        "LocalCodigo": 1,
        "LocalNombre": "Casa Central",
        "MonedaCodigo": 1,
        "MonedaNombre": "Pesos",
        "MonedaSimbolo": "$",
        "Notas": "Comprobante prueba Postman",
        "Numero": "0",
        "RegistroId": "5472",
        "Saldo": "610.00",
        "SaldoSigno": "610.00",
        "Serie": "",
        "Total": "610.00",
        "TotalSigno": "610.00"
      }
    ],
    "Succeed": true
  }
}

 

Cómo usar nuestras APIs en Postman

  • Descargá la colección JSON:
    Descargar archivo JSON para Postman
  • Importá la colección:
    En Postman, seleccioná File → Import → Upload Files y elegí el archivo descargado.
  • Probá los endpoints disponibles:
    Encontrarás las solicitudes agrupadas por tema (Factura Clientes, Articulos, Cajas, etc.).
    Podés ejecutar las llamadas directamente completando los datos de la consulta y ver las respuestas en formato JSON.
Nota: Los métodos relacionados con “Finanzas” no deben ser considerados para integraciones externas.

Conclusión

En ZetaSoftware priorizamos el uso de APIs REST por su eficiencia, flexibilidad y compatibilidad con entornos modernos.
Las integraciones SOAP seguirán funcionando temporalmente para clientes que ya las utilizan, pero no recibirán nuevas versiones ni mantenimiento futuro.

Todas las nuevas implementaciones deben realizarse sobre REST, que continuará siendo el estándar oficial y soportado por ZetaSoftware.
Podés comenzar de inmediato descargando la colección Postman en formato JSON para explorar, probar e integrar fácilmente nuestras APIs con tus sistemas.


Compartir

SOAP y REST

O copia el enlace

CONTENIDO

Proceso de Cierre de Ejercicio Contable

El cierre de ejercicio contable comprende una serie de pasos que deben ejecutars

01 – Enero

Contabilidad » Edición de Asientos Se simplificó y consolidó la edición de asien

2026

¿Cómo configurar un nuevo Local Comercial?

En ZetaSoftware Gestión, la creación de un nuevo local comercial puede responder

11 – Noviembre

Lunes 17 Contabilidad » Importación de asientos con notas desde Excel Se incorpo

Sucursales de Contactos

La API de Sucursales de Contactos permite administrar las sucursales (direccione

10 – Octubre

Martes 28 Gestión PyME » Identificación de artículos inactivos en el reporte de

09 – Setiembre

Jueves 24 Gestión y Facturación » Libro de Ventas Al exportar el Libro de Ventas

08 – Agosto

Jueves 24 Contabilidad » Libros Diarios en dos monedas Ahora es posible emitir e

07 – Julio

Jueves 24 Gestión » Fecha de Endosado basada en documento origen A partir de est

Ver Todos los Recibos

La opción Ver todos los recibos permite consultar en una sola grilla todos los r

Ver Todas las Facturas

La opción Ver todas las facturas muestra en una sola grilla todos los comprobant

Chat Icon Close Icon