Saltearse al contenido

SageCreateDocument

Crea un documento fiscal en Sage X3 (Factura o Nota de Credito) insertando registros en las tres tablas contables de Sage: cabecera (YFACTERCAB), linea (YFACTERLIN) y analitica (YFACTERAN). Usa una conexion SQL Server y ejecuta todos los inserts dentro de una transaccion atomica.

El nodo mapea el pais a la configuracion correcta de Sage (planta, tercero, regimen fiscal, cuentas) basandose en los procedimientos EQZ_MigracionTP_Sage y EQZ_MigracionEcomm_Sage.

CampoTipoRequeridoDescripcion
credentials_idcredentialsSiCredencial Sage SQL Server (MSSQL)
contatotextareaNoJSON del contacto: {nome, pais, nif}. Si vacio, usa data.contato del nodo anterior
tipificacaoselectNoTipo documento: FT (Factura), FR (Factura-Recibo), NC (Nota de Credito). Default: FT
produtostextareaNoArray JSON de productos. Si vacio, usa data.produtos del nodo anterior
invoice_datetextNoFecha YYYY-MM-DD. Si vacio, usa fecha actual
sage_schematextNoSchema de base de datos Sage (default: LIVE)
currencytextNoDivisa ISO (default: EUR)
canaltextNoEje analitico CAN (default: E-COMMERCE)
delegaciontextNoEje analitico DEL (default: 06)
descripciontextNoDescripcion del documento. Soporta variables {{}}. Auto-generada si vacia
sage_usertextNoValor del campo CREUSR (default: ADMIN)
timeouttextNoTimeout de la consulta en milisegundos (default: 30000)

Este modulo requiere una credencial tipo sageCreateDocument (SQL Server) con:

  • host: Hostname o IP del SQL Server
  • user: Usuario de base de datos
  • password: Contrasena
  • database: Nombre de la base de datos
  • port: Puerto (default: 1433)
  • sage_schema: Nombre del schema (default: LIVE)
PaisPlantaTipoTerceroRegimen IVACuentaCodigo IVA
PT22_PTTPE03CT-000028PORT700050PT023
ES22_ESTPE01CT-000001ESPA700000ES021
{
"success": true,
"idRegistro": 1234,
"schema": "LIVE",
"tercero": "CT-000028",
"planta": "22_PT",
"total": 19.90,
"descripcion": "Ventas Ecomm 05/04/2026",
"pais": "PT",
"tipificacao": "FT",
"fecha": "2026-04-05",
"message": "Documento Sage creado (ID: 1234) en LIVE.YFACTERCAB"
}

Flujo tipico: Webhook Shopify → Decision (pais) → EditFields (mapeo) → SageCreateDocument

{
"credentials_id": "5",
"tipificacao": "FT",
"invoice_date": "{{created_at}}",
"sage_schema": "LIVE",
"canal": "E-COMMERCE",
"delegacion": "06"
}

El nodo lee automaticamente contato y produtos de la salida del nodo anterior.

  • Los tres inserts (YFACTERCAB, YFACTERLIN, YFACTERAN) se ejecutan en una sola transaccion con rollback si falla
  • El nodo calcula el total desde el array de productos (suma de preco_unitario * quantidade)
  • Las Notas de Credito (NC) usan INVTYP_0 = 2 en vez de 1
  • Los ejes analiticos son: PAI (pais), CAN (canal), DEL (delegacion), CLI (cliente)
  • Si el pais no esta en el mapeo, usa la configuracion de Portugal por defecto