Área | Depto. I+D+i | Ambiente | Producción |
Fecha Actualización | 10-06-2024 | Administrador | Camilo Palacio |
Integrar diferentes sistemas de información como carritos de compra, sitios web, aplicaciones móviles, páginas web, entre otros, ofreciendo a los clientes la facilidad de tener toda su información sincronizada con el sistema SAG® ERP.
El Servicio Web SAG® permite integrar el SAG® ERP con otros aplicativos, en tiempo real y de una manera fácil y segura, por SOAP. El Servicio Web SAG® siempre le entrega al usuario una respuesta a la petición, ya sea positiva o negativa.
La URL del servicio para consumir por SOAP es:
https://wssagpya.azurewebsites.net/ServiceSagWeb.svc?wsdl
El token de prueba para el servicio es: t0k3n1
consultaSagXml()
- consultaSagJson()
- consultaSagJson2()
Permiten consultar cualquier información almacenada en la base de datos del SAG® ERP...
Permiten consultar cualquier información almacenada en la base de datos del SAG® ERP. Con estos métodos se podrá; por ejemplo, consultar la lista de precios y/o existencias de los productos, para cargar en el carrito de compras o también consultar la cartera de los clientes para un aplicativo móvil. La diferencia entre los métodos es la siguiente:
Ejemplos de uso:
Diferencias entre los métodos:
consultaSagXml()
→ SOAP. Devuelve XML.consultaSagJson()
→ SOAP. Devuelve JSON.consultaSagJson2()
→ SOAP. Devuelve JSON segmentado.Entrada:
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:tem="http://tempuri.org/">
<soapenv:Header/>
<soapenv:Body>
<tem:consultaSagJson>
<tem:a_s_token>t0k3n1</tem:a_s_token>
<tem:a_s_consulta>SELECT TOP 10 n_nit AS Documento, sc_nombre AS Nombre FROM v_clientes</tem:a_s_consulta>
</tem:consultaSagJson>
</soapenv:Body>
</soapenv:Envelope>
Respuesta JSON:
[
{"Documento":102043531,"Nombre":"CINDY JOHANA ATEHORTUA"},
{"Documento":1036779941,"Nombre":"LUZ MERCEDES LOPEZ MEJIA"},
{"Documento":1040740897,"Nombre":"MONICA MARIA MOSQUERA CORDOBA"},
{"Documento":890900938,"Nombre":"CORPORACION EDUCATIVA COLOMBO BRITANICO"},
{"Documento":999,"Nombre":"VENTAS DE CONTADO"},
{"Documento":890900840,"Nombre":"CAJA DE COMPENSACION FAMILIAR CAMACOL"},
{"Documento":890900842,"Nombre":"CAJA DE COMPENSACION COMFENALCO"},
{"Documento":890900841,"Nombre":"CAJA DE COMPENSACION COMFAMA"},
{"Documento":112842385,"Nombre":"PORRAS CASTAÑO LINA MARCELA"},
{"Documento":15264230,"Nombre":"ANDRES ALBERTO GONZALEZ GUERRA"}
]
Respuesta XML (consultaSagXml):
<NewDataSet>
<Consultas>
<Documento>102043531</Documento>
<Nombre>CINDY JOHANA ATEHORTUA</Nombre>
</Consultas>
<Consultas>
<Documento>1036779941</Documento>
<Nombre>LUZ MERCEDES LOPEZ MEJIA</Nombre>
</Consultas>
<Consultas>
<Documento>1040740897</Documento>
<Nombre>MONICA MARIA MOSQUERA CORDOBA</Nombre>
</Consultas>
</NewDataSet>
insercionSag()
Este método se utiliza para grabar o actualizar maestros y documentos en el sistema SAG® ERP. Por ejemplo: crear clientes, pedidos, facturas, artículos, entre otros.
La salida dependerá de cómo se consuma el servicio (XML o JSON).
Entrada | Salida |
|
XML
|
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:tem="http://tempuri.org/">
<soapenv:Header/>
<soapenv:Body>
<tem:insercionSag>
<tem:a_s_token>t0k3n1</tem:a_s_token>
<tem:a_s_tipo>1</tem:a_s_tipo>
<tem:a_s_xml><clientes><cliente ... /></clientes></tem:a_s_xml>
</tem:insercionSag>
</soapenv:Body>
</soapenv:Envelope>
Parámetro | Descripción | Tipo | Obligatorio | Ejemplo |
a_s_token |
Token de Seguridad asignado por P&A | String | Sí | t0k3n1 |
a_s_tipo |
Tipo de acción definida por PYA | String | Sí | 1 |
a_s_xml |
Cadena XML con los datos a grabar | String | Sí | <clientes>...</clientes> |
a_s_tipo
Tipo | Descripción | Procedimiento almacenado |
---|---|---|
1 |
Crear clientes | sp_grabar_cliente_xml |
2 |
Crear documentos (pedidos, facturas, pagos de contado) | sp_grabar_documento_xml |
3 |
Crear terceros | sp_act_datos_tercero_xml |
4 |
Actualizar terceros | sp_grabar_proveedor_xml |
5 |
Crear artículos | sp_grabar_articulo_basico_xml |
6 |
Recibos de caja, egresos o movimiento contable | sp_grabar_movimientos_referencias_xml |
28 |
Crear documentos de cualquier tipo | sp_web_grabar_documento |
<s:Envelope xmlns:s="http://schemas.xmlsoap.org/soap/envelope/">
<s:Body>
<insercionSagResponse xmlns="http://tempuri.org/">
<insercionSagResult
xmlns:a="http://schemas.datacontract.org/2004/07/ws.logica.general"
xmlns:i="http://www.w3.org/2001/XMLSchema-instance">
<a:clsGenerales>
<a:s_estado>OK</a:s_estado>
<a:s_fuente i:nil="true"/>
<a:s_identificador i:nil="true"/>
<a:s_l_movimiento i:nil="true"/>
<a:s_mensaje>DOCUMENTO CREADO CORRECTAMENTE</a:s_mensaje>
<a:s_num_documento i:nil="true"/>
</a:clsGenerales>
</insercionSagResult>
</insercionSagResponse>
</s:Body>
</s:Envelope>
Parámetro | Descripción |
s_estado |
Estado de la operación. Puede ser OK o FALLIDO |
s_fuente |
Código de la fuente asociada al documento |
s_identificador |
Identificador interno del registro |
s_l_movimiento |
Lista o detalle del movimiento |
s_mensaje |
Mensaje descriptivo de la operación (éxito o error) |
s_num_documento |
Número del documento creado |
Este XML debe enviarse como valor del campo a_s_xml
cuando a_s_tipo = 1
.
Nodo/Atributo | Descripción | Tipo | Obligatorio | Ejemplo |
---|---|---|---|---|
<clientes> | Contenedor principal de los clientes | Contenedor | Sí | |
<cliente> | Contenedor de los datos de un cliente | Contenedor | Sí | |
actividadComercial | Actividad Comercial según maestro de SAG® | String | Sí | PAPELERÍA |
codigoDaneCiudad | Código o nombre de ciudad (según DANE) | String | Sí | 05003 |
Naturaleza | J = Jurídica / N = Natural | String | Sí | J |
tipoDocumento | Tipo de documento (A, C, N, etc.) | String | Sí | A |
Documento | Número de identificación del cliente | Numeric | Sí | 890900300 |
digitoVerificacion | Dígito de verificación (si aplica) | Numeric | No | 2 |
Nombre | Razón social o nombre completo | String | Sí | ALMACÉN JJ S.A.S. |
direccion | Dirección del cliente | String | Sí | Diag. 75c # 32 e 68 |
tipoTercero | Tipo de contribuyente (C, S, G, etc.) | String | Sí | C |
telefonoPpal | Teléfono principal | String | Sí | +57 4 4486859 |
telefonoAlterno | Teléfono Alterno | String | No | +57 4 3123213323 |
Email del cliente | String | Sí | ventas@pya.com.co | |
activoFijo | Debe enviarse siempre como “N” | String | Sí | N |
formaPago | Forma de pago según maestro | String | Sí | CONTADO |
zona | Zona comercial del cliente | String | Sí | MEDELLIN Y AREA METROPOLITANA |
retenedor | ¿Es agente de retención? (S/N) | String | Sí | S |
iva | ¿Está sujeto a IVA? (S/N) | String | Sí | S |
activoComercial | ¿Reportado a centrales de riesgo? (S/N) | String | Sí | S |
activo | Estado del cliente (S/N) | String | Sí | S |
tipoCliente | Clasificación del cliente | String | No | E-COMMERCE |
comisionVentas | % de comisión por ventas | Numeric | No | 0 |
comisionCobros | % de Comisión por Recaudo | Numeric | Si | 0 |
descuento | % de Descuento Comercial fijo | Numeric | Si | 0 |
descuentoPp | % de Descuento Pronto Pago fijo | Numeric | Si | 0 |
precioVenta | Lista de precios (0 = ninguna) | String | Sí | 1 |
reteFuente | Código de la Retención en la Fuente por defecto que aplica el Cliente | String | No | V1 |
otraRetencion | Código del ReteCREE por defecto que aplica | String | No | |
claseClienteNiff | Clasificación del Cliente para NIIF | String | No | RIESGO I |
nitVendedor | Cédula del Vendedor asignado | String | No | 70100100 |
cupoMaximo | Límite de crédito autorizado | Numeric | Sí | 999999999 |
Nodo/Atributo | Descripción | Tipo | Obligatorio | Ejemplo |
---|---|---|---|---|
apellido1 | Primer Apellido del Cliente (si es Persona Natural) | String | No | López |
apellido2 | Segundo Apellido del Cliente (si es Persona Natural) | String | No | Ortiz |
nombre1 | Primer Nombre del Cliente (si es Persona Natural) | String | No | Juan |
nombre2 | Segundo Nombre del Cliente (si es Persona Natural) | String | No | José |
codigoPostal | Código Postal (Zip Code) | String | No | 050030 |
habeasData | Marca que indica si aceptó tratamiento de datos personales (S/N) | String | No | S |
centroCosto | Código del centro de costo ligado al cliente | String | No | 01 |
generafacelectronica | Marca que indica si maneja factura electrónica (S/N) | String | No | S |
emailFacElectronica | Email que recibe la factura electrónica | String | No | compras@pya.com.co |
responsabilidadFiscal | Código de la responsabilidad fiscal del cliente | String | No | R-99-PN |
fechaAproboFacElectronica | Fecha de aprobación de la factura electrónica | Date | No | 2024-01-15 |
Al procesar el XML de creación de clientes, el sistema realiza las siguientes validaciones:
Código | Mensaje | Descripción |
---|---|---|
FALLIDO |
EL CLIENTE YA EXISTE | Se está intentando insertar un cliente con NIT ya registrado. |
FALLIDO |
CIUDAD NO EXISTE | El código de ciudad enviado no se encuentra en el maestro de ciudades. |
FALLIDO |
CAMPOS OBLIGATORIOS VACÍOS | Uno o más campos requeridos están vacíos o mal formateados. |
FALLIDO |
TIPO DE CLIENTE INVÁLIDO | El tipo de cliente enviado no existe en la configuración. |
FALLIDO |
TIPO DE DOCUMENTO INVÁLIDO | El tipo de documento no está configurado o es incorrecto. |
<s:Envelope xmlns:s="http://schemas.xmlsoap.org/soap/envelope/">
<s:Body>
<insercionSagResponse xmlns="http://tempuri.org/">
<insercionSagResult xmlns:a="http://schemas.datacontract.org/2004/07/ws.logica.general"
xmlns:i="http://www.w3.org/2001/XMLSchema-instance">
<a:clsGenerales>
<a:s_estado>FALLIDO</a:s_estado>
<a:s_mensaje>EL CLIENTE YA EXISTE</a:s_mensaje>
<a:s_identificador i:nil="true"/>
<a:s_num_documento i:nil="true"/>
</a:clsGenerales>
</insercionSagResult>
</insercionSagResponse>
</s:Body>
</s:Envelope>
<clientes>
<cliente
actividadComercial="SECTOR PUBLICO"
codigoDaneCiudad="MEDELLIN"
naturaleza="J"
tipoDocumento="A"
documento="811040859"
digitoVerificacion="2"
nombre="PyA Soluciones Integradas SAS"
direccion="Diag. 75c # 32 e 68"
tipoTercero="J"
telefonoPpal="4486859"
email="info@pya.com.co"
activoFijo="N"
formaPago="CONTADO"
zona="MEDELLIN Y AREA METROPOLITANA"
retenedor="S"
iva="S"
activoComercial="S"
activo="S"
rut="14051451"
tipoCliente="E-COMMERCE"
comisionVentas="0"
comisionCobros="0"
descuento="0"
descuentoPp="0"
precioVenta="1"
cupoMaximo="999999999"
apellido1=""
apellido2=""
nombre1=""
nombre2=""/>
</clientes>
Nodo | Descripción | Tipo | Oblig | Ejemplo |
---|---|---|---|---|
<Terceros> | Contiene todos los Terceros a crear. | |||
<tercero> | Contiene los datos de un Tercero en particular. | |||
tipoDocumento | Tipo de Documento de Identificación del Tercero. A = Nit B = Certificado Cabildo C = Cédula de Ciudadanía E = Cédula de Extranjería F = Tarjeta Profesional L = Servicio Nacional de Pruebas M = Menor sin identificación N = Número por Secretaría de Educación O = Número de Identificación Personal P = Pasaporte R = Registro Civil S = Adulto sin Identificación T = Cédula del Tutor U = Número Único de Identificación V = Visa X = Tercero del Exterior sin ID (43) Z = Tercero del Exterior con ID (42) |
String | Sí | A |
documentoActual | Número de la Cédula o NIT del Tercero (o su número de identificación) | Numeric | Sí | 890900300 |
documentoActualizar | Número de la Cédula o NIT a actualizar (si cambió) | Numeric | No | 890900300 |
digitoVerificacion | Dígito de Verificación | Numeric | No | 2 |
codigoAlterno | Código Alterno o Alias | String | No | JJ |
nombre | Nombre Completo o Razón Social del Tercero Si el tercero es para actualizar, el campo NO es obligatorio. |
String | Sí | ALMACÉN JJ S.A.S. |
representanteLegal | Nombre del Representante Legal | String | No | Juan José Peláez |
naturaleza | Indica si es Persona Natural o Jurídica. N = Natural J = Jurídica Si el tercero es para actualizar, el campo NO es obligatorio. |
String | Sí | J |
direccion | Dirección del Tercero | String | No | Diag. 75c # 32 e 68 |
direccion2 | Segunda dirección | String | No | Vereda Quirama |
codigoDaneCiudad |
Código de la Ciudad asignado por el DANE. También, se puede enviar el nombre de la ciudad. Debe ser
igual al Maestro de Ciudades del SAG®. Si el tercero es para actualizar, el campo NO es obligatorio. |
String | Sí | 05360 |
tipoTercero |
Tipo de Contribuyente. C = Régimen Común S = Régimen Simplificado G = Gran Contribuyente O = Empresa Oficial N = Clientes Natural L = Entidad sin Ánimo de Lucro J = Sociedad Extranjera R = No Responsable de IVA E = Empresa del Estado |
String | No | C |
telefonoPpal | Teléfono Principal | String | No | +57 4 4486859 |
telefonoAlterno | Teléfono Alterno | String | No | |
telefonoFax | Fax o Tercer Teléfono | String | No | |
String | No | ventas@pya.com.co | ||
email2 | Segundo Email | String | No | ventas@pya.com.co |
paginaWeb | Sitio Web del Tercero | String | No | www.pya.com.co |
idExterior | Número de Identificación del Tercero del Exterior | String | No | R-120222-1 |
codActividadEconomica | Actividad Económica según la DIAN | String | No | 6120 |
NOTA: Cuando se usa el método de insercionSagXml()
para actualizar un tercero,
no es necesario mandar toda la estructura. Solo se requieren las etiquetas <terceros>
,
<tercero>
, nitActual
y las etiquetas de los campos que se vayan a
actualizar, por ejemplo <email>
, <dirección>
, etc.
Nodo | Descripción | Tipo | Oblig | Ejemplo |
---|---|---|---|---|
<articulos> | Contiene todos los Artículos a crear. | |||
<articulo> | Contiene los datos de un Artículo en particular. | |||
codigo | Código del Artículo | String | Sí | 1001 |
descripcion | Nombre o descripción del Artículo | String | Sí | CHAQUETA STAR |
descripcion2 | Descripción adicional | String | No | JACKET STAR |
referencia | Referencia del Artículo | String | No | ST01 |
codBarras | Código de Barras | String | No | 7704040123456 |
grupo | Grupo del Artículo | String | Sí | VESTUARIO |
subGrupo | Subgrupo | String | No | DAMA |
linea | Línea o Marca | String | No | BON JOVI |
unidad | Unidad de manejo | String | Sí | UNIDAD |
manejaKardex | Inventariable (S/N) | Char | Sí | S |
manejaLote | Manejo de lote o serial N / V / E / S |
Char | Sí | N |
manejaTallaColor | Manejo de Talla/Color S / N / I |
Char | Sí | N |
talla | Código de la Talla | String | No | 36 |
color | Código del Color | String | No | NG |
codBarrasSKU | Código de Barras SKU | String | No | 7704040145456 |
activo | Activo (S/N) | Char | Sí | S |
bloqueado | Bloqueado (S/N) | Char | Sí | N |
clase | Clasificación: A/S/G/O | Char | Sí | A |
tarifaIVA | Código de la tarifa de IVA | String | Sí | IVA19 |
porcentajeIVA | % de IVA | Numeric | Sí | 19 |
incluidoIVA | IVA incluido (S/N) | Char | Sí | N |
PV1 | Precio de Venta 1 hasta PV8 | Numeric | No | 50000 |
PV1TC | Precio de Venta Talla Color 1 hasta PV8TC | Numeric | No | 50000 |
costoSTD | Composición | Numeric | No | 0 |
cantMaxima | Cantidad Máxima permitida | Numeric | No | 0 |
cantMinima | Cantidad Minima permitida | Numeric | No | 0 |
tiendaVirtual | Indica si el Artículo está habilitado para la venta por eCommerce (S/N) | Char | No | N |
composicion | Composición | String | No | Pol/Alg |
adquisicion | Adquisición | String | No | Importado |
otroDato1 | Otros Datos 1 hasta Otro dato 10 | String | No | Rayas |
<articulos>
<articulo
codigo="1001"
descripcion="CHAQUETA STAR"
descripcion2="STAR JACKET"
referencia="ST01"
codBarras="7704040123456"
grupo="VESTUARIO DAMA"
subgrupo="BON JOVI"
unidad="UNIDAD"
manejaKardex="S"
manejaLote="N"
manejaTallaColor="S"
talla="36"
color="NG"
codBarrasSKU="7704567123401"
activo="S"
bloqueado="N"
clase="A"
tarifaIVA="IVA19"
porcentajeIVA="19"
incluidoIVA="N"
PV1="50000"
PV2="40000"
composicion="Pol/Alg"
adquisicion="Importado"
otroDato1="Rayas" />
</articulos>
Nodo | Descripción | Tipo | Oblig | Ejemplo |
---|---|---|---|---|
<Movimientos> | Contiene todos los Documentos a crear. | |||
<Movimiento> | Contiene los datos de un Documento en particular. | |||
MovimientoId | Número Interno del Documento | Numeric | Sí | 213012 |
FechaDocumento | Fecha del Documento. Formato YYYY/MM/DD | Date | Sí | 2020/04/30 |
NumeroDocumento | Número del Documento. Si llega en 0 el SAG® asigna el consecutivo siguiente | Numeric | Sí | 0 |
NumeroDocumento2 | Número2 | String | No | OC-400 |
CodigoFuente | Código de la Fuente | String | Sí | PD |
ClaseComprobante | Clase de Comprobante, si aplica | String | No | PED |
Nit | Nit del cliente / proveedor al que se le realiza el documento | Numeric | Sí | 10202455 |
NitVendedor | Cédula del Vendedor | Numeric | No | 70100200 |
CentroCosto | Centro de Costos | String | No | 04 |
Prefijo | Prefijo del Documento, si aplica | String | No | 02 |
CiudadEntrega | Ciudad de Entrega del Pedido | String | No | Cali |
DireccionEntrega | Dirección de Entrega del Pedido | String | No | Calle 25 # 12-29 |
Observaciones | Observaciones del Documento | String | No | Dejar en Portería |
Moneda | Moneda de Negociación | String | No | PESOS |
Trm | TRM | Numeric | No | 1 |
Pedido | Número del Pedido/OC del Cliente o Proveedor. Informativo. Ej: FV-1122 | String | No | OC-201 |
Remision | Número de Remisión | String | No | RM-112 |
LoginUsuario | Login del Usuario logueado en la aplicación origen. | String | Si | WTORO |
Otros | Código Sucursal del Cliente. Debe iniciar por ! | String | No | !1 |
Impreso | Indicador de si el documento fue impreso (S/N) | Char | No | N |
Generado | Indicador de si el documento fue generado automáticamente (S/N) | Char | No | N |
EsRemision | Indicador de si el documento es una Remisión (S/N) | Char | No | N |
Facturado | Indicador de si el documento (remisión) fue facturado (S/N) | Char | No | N |
VistoBueno | Indicador de si el documento fue modificado manualmente por contabilidad (S/N) | Char | No | N |
Autorizado | Indicador de si el documento está autorizado (S/N) | Char | No | N |
Incoterm | El código del Incoterm debe existir en la base de datos | Varchar | No | CFR, CIF |
RealizarCommit | Indica si se realiza el Commit en la BD al grabar el Documento (S/N) | Char | Sí | S |
Accion | Indica la acción a realizar en el sistema | Char | No | I = Insertar |
FechaOriginal | La fecha con la que se graba el documento | Date | No | 2025-05-28 |
Beneficiario | Nombre del Beneficiario | String | No | Juan Pérez |
CodigoCuentaBanco | Es el código de la cuenta del banco, solo se utiliza para los recibos y egresos. Es obligatorio para los documentos tipos recibos de caja y/o egresos | String | No | 110505 |
TrmMe | Es la TRM de la moneda extranjera | Decimal | No | 0 |
PagoContado | Indica si el documento va a realizar un pago de contado | Char | No | S = Sí / N = No |
PorcentajeComisionVentas | Indica el % de comisiones de un vendedor sobre esa venta | Decimal | No | 0 por defecto hasta el 99% |
FechaVencimiento | Indica la fecha de vencimiento del documento | Date | No | 2025-05-28 |
DiasPp1 | Días para el cálculo del pronto pago (Hasta DiasPp3) | Decimal | No | 0 |
FechaPp1 | Fecha del primer pronto pago (Hasta FechaPp3) | Date | No | 2025-06-08 |
DescripcionFormaPago | Descripción de la forma de pago | String | No | 30 días, debe estar en el maestro de formas de pago del SAG (formas_pagos) |
ManejaCuota | Indica si el documento maneja cuotas | Char | No | S = Sí, N = No |
PorcentajeRefteManual | Indica el % de la retención para retenciones manuales (personas naturales) | Decimal | No | 0 hasta el 99.9% |
ValorRetefteManual | Valor de la retención manual | Decimal | No | 10000 |
SistemaOrigen | Indica el sistema del que llega el documento | String | No | SagWeb |
AsignarImpuestosPorDefecto | Indica si se van a asignar los impuestos teniendo en cuenta el maestro de terceros | Char | No | S = Sí, N = No |
AsignarVendedorPorDefecto | Indica si se va a asignar el vendedor teniendo en cuenta el maestro de terceros | Char | No | S = Sí, N = No |
AsignarMonedaPorDefecto | Indica si se asigna la moneda de la empresa por defecto | Char | No | S = Sí, N = No |
NitPaciente | Graba en el documento el número de documento del paciente (Empresas de salud) | Int | No | 1053854678 |
DocumentoCerrado | Indica si se va a dejar cerrado el documento o no | Char | No | S = Sí, N = No |
CausalDevolucion | El código de la causal de devolución solo aplica para notas de devolución. Debe existir en el maestro de causales de devolución del SAG (causal_devolucion) | String | No | 01 |
Nodo | Descripción | Tipo | Oblig | Ejemplo |
---|---|---|---|---|
<MovimientoDetalle> | El detalle del Item a enviar dentro del Movimiento. | <Movimientos>
<Movimiento … <MovimientoDetalle … > </Movimiento> </Movimientos> | ||
MovimientoId | Número Interno del Documento | Numeric | Sí | 213012 |
MovimientoDetalleId | Consecutivo del Ítem | Numeric | Sí | 1 |
CualPrecio | Lista de Precios a Tomar. 1..8 | String | No | 1 |
CodigoArticulo | Código del Artículo. Si maneja T/C, puede enviarse separado o como Código de Barras Ref-Talla-Color | String | Sí | 2002 |
Talla | Talla | String | No | L |
Color | Color | String | No | NG |
Cantidad | Cantidad Pedida | Numeric | Sí | 6 |
ValorUnitario | Valor Unitario antes de IVA (usar -9999999 para costo promedio) | Numeric | Sí | 15000 |
Iva | % de IVA | Numeric | Sí | 19 |
Descuento | % de Descuento Comercial | Numeric | Sí | 5 |
Descuento2 | % de 2° Descuento Comercial | Numeric | Sí | 5 |
PorcentajeIva | % de Iva al producto | Numeric | No | 5 |
CantidadUnidadCompraMayor | Cantidad Unidad de Compra x Mayor. Ej: Docena | Numeric | No | 5 |
FechaEntrega | Fecha de entrega estimada | Date | No | 2024-01-05 |
CodigoBin | Código Bin del artículo | String | No | |
ValorUnitarioCompraMayor | Valor Unitario Unidad de Compra x Mayor | Numeric | No | 200000 |
DetalleAdicional | Detalle adicional por ítem | String | No | ASESORÍA PRESENCIAL |
BodegaOrigen | Código de la Bodega Origen (requerido para traslados) | String | No | 01 |
BodegaDestino | Código de la Bodega Destino (requerido para traslados) | String | No | 02 |
Bodega | Es obligatoria para documentos tipo factura o inventario, indica cual es el codigo de la bodega (Debe existir en el maestro de bodegas) | String | No | 02 |
Lote | Número de Lote o Serial | String | No | AB3545R |
Campo01Detalle | Detalle opcional (Hasta Campo04Detalle) | String | No | Detalle del item personal |
PorcentajeBase | 0 hasta 99.9 | Numeric | No | 10 |
ValorBase | Valor base de la cuenta contable (Necesaria para un asiento contable) | Numeric | No | Ejemplo valor base de la retención en la fuente o el iva |
CodigoCuentaContable | El numero de la cuenta contable que esta en el maestro de cuentas contables | String | No | ADM |
CodigoValorPosible | Codigo del valor posible | String | No | Ejemplo
99 para indicar que es el
total 90 IVA 70 ReteFUENTE 80 ReteIVA |
CodigoFlujoCaja | Codigo flujo caja que esta en el maestro de flujo de caja | String | No | 01 Que hace referencia a ingresos |
FuentePedido | Fuente del documento de pedido | String | No | OG |
NumeroPedido | Número del documento del pedido | String | No | 33670 |
FechaPedido | Fecha del documento relacionado | Date | No | 2025-05-21 |
CodigoCentroCostoItem | Código del centro de costo del maestro centro costo | String | No | ADM |
ObservacionesItem | Permite agregar una observación sobre el item | String | No | Escribir observación |
Campo01Detalle | Se puede usar hasta el detalle 08 | String | No | Escribir observación |
FuenteRemision | Indica la fuente de la remisión asociar el item, queda como el documento relacionado | String | No | OC |
NumeroRemision | Indica el número de documento de la remisión asociar el item, queda como el documento relacionado | Int | No | 14574 |
TipoComponente | Indica si el artículo o item es un componente | Char | No | S |
NitTercero | Cédula o nit del tercero | String | No | 9001458793 |
NitVendedorAnticipo | Relaciona el Vendedor que realiza el anticipo | Int | No | 9001458793 |
CodigoCuentaMas | Código de la cuenta más que aplica solo para Recibos de Caja y Egresos | String | No | Debe existir en el maestro de plan de cuentas del SAG |
CodigoCuentaMenos | Código de la cuenta menos que aplica solo para Recibos de Caja y Egresos | String | No | Debe existir en el maestro de plan de cuentas del SAG |
CodigoCuentaDifCambio | Código de la cuenta diferencia en cambio que aplica solo para Recibos de Caja y Egresos | String | No | Debe existir en el maestro de plan de cuentas del SAG |
ValorDiferenciaCambio | Es el valor de la diferencia en cambio | Decimal | No | 10000 |
CodigoCuentaDifCambioMe | Es el valor de la diferencia en cambio para moneda extranjera | String | No | Debe existir en el maestro de plan de cuentas del SAG |
CodigoCuentaReteiva | Código de la cuenta reteiva, aplica solo para Recibos de Caja y Egresos | String | No | Debe existir en el maestro de plan de cuentas del SAG |
CodigoCuentaReteFte | Indica cuál es el código de la retención en la fuente para el Item | String | No | C10 |
CodigoCuentaDifCambioniif | Código de la cuenta de cambio para Nif, aplica solo para Recibos de Caja y Egresos | String | No | Debe existir en el maestro de SAG |
ValorDifCambioNiif | Indica el valor de diferencia de cambio para el Niff | Decimal | No | 5000 |
ValorMe | Indica el valor de cambio en Moneda extranjera | Decimal | No | 5200 |
CodigoBinOrigen | Código de localización cuando maneja Bin (Solo aplica para traslados entre bodegas) | String | No | Debe existir en el maestro de bodegas bines de SAG |
CodigoBinDestino | Código de localización cuando maneja Bin (Solo aplica para traslados entre bodegas) | String | No | Debe existir en el maestro de bodegas bines de SAG |
CualPrecio | Indica cuál lista de precio se utiliza | Char | No | 1 = Precio 1 |
CodigoCausal | Indica el codigo de la causal de devolución para el item, para las Notas | String | No | Debe existir en el maestro de SAG (causal_devolucion) |
NumeroCheque | Indica cuál lista de precio se utiliza | String | No | 12345678 |
Nodo | Descripción | Tipo | Oblig | Ejemplo |
---|---|---|---|---|
<MovimientosOtrosDatos> | Otros Datos del documento. | <Movimientos>
<Movimiento … <MovimientosOtrosDatos … > </Movimiento> </Movimientos> | ||
MovimientoId | Número Interno del Documento | Numeric | Sí | 213012 |
Dato1 | Más Datos 1 - 30 | String | No | Dato1, Dato8 … Dato30 |
<Movimientos>
<Movimiento MovimientoId="1"
CodigoFuente="TR"
NumeroDocumento="0"
FechaDocumento="2023/06/30"
Nit="72257656"
CentroCosto="8000"
Observaciones="Pruebas"
Moneda="PESOS"
LoginUsuario="ADMON"
SistemaOrigen="SQL">
<MovimientoOtrosDatos MovimientoId="1"
Dato1="Dato1"
Dato2="Dato2"
Dato3="Dato3"
Dato4="Dato4"
Dato5="Dato5"
Dato15="Dato15" />
<MovimientoDetalle MovimientoDetalleId="1"
MovimientoId="1"
CodigoArticulo="CAMISA01"
BodegaOrigen="A"
BodegaDestino="B"
Cantidad="1"
Descuento="0"
Iva="1"
ValorUnitario="0"
ValorPrecioVenta="300"
Talla="S"
Color="RJ"
PorcentajeIva="19"
PorcentajeDescuento="0"
DetalleAdicional="Detalle"/>
</Movimiento>
</Movimientos>
<Movimientos>
<Movimiento MovimientoId="1"
CodigoFuente="FV"
Prefijo="FE"
NumeroDocumento="0"
FechaDocumento="2024/10/31"
CentroCosto="8000"
Generado="N"
Beneficiario="90000"
ClaseComprobante=""
Observaciones="Pruebas Observaciones"
RealizarCommit="N"
Moneda="PESOS"
LoginUsuario="ADMON"
SistemaOrigen="NOMBRE EMPRESA QUE GEENRA EL DOCUMENTO">
<MovimientoOtrosDatos MovimientoId="1" Dato01="Dato1" />
<MovimientoDetalle MovimientoDetalleId="1"
MovimientoId="1"
CodigoCuentaContable="41201401"
NitTercero="123456789"
CodigoCentroCosto="8000"
Valor="1000"
PorcentajeBase="0"
ValorBase="0"/>
<MovimientoDetalle MovimientoDetalleId="2"
MovimientoId="1"
CodigoCuentaContable="24080105"
NitTercero="123456789"
Valor="-1000"
PorcentajeBase="1"
ValorBase="1000000"
DetalleAdicional="Detalle"/>
</Movimiento>
</Movimientos>
<Movimientos>
<Movimiento MovimientoId="1"
FechaDocumento="2025-05-22"
NumeroDocumento="0"
NumeroDocumento2="HRN"
CentroCosto="A"
LoginUsuario="WMS"
FechaVencimiento="2025-06-21"
FechaPp1="2025-05-22"
RealizarCommit="S"
CodigoFuente="EA"
Nit="890911700"
Moneda="PESOS"
Pedido="OG-33670"
Observaciones="Prueba Integración WMS">
<MovimientoDetalle MovimientoId="1"
MovimientoDetalleId="1"
Cantidad="1"
ValorUnitario="6700"
Iva="0"
Descuento="0"
CodigoArticulo="CR506H"
Bodega="AG01"
FuentePedido="OG"
NumeroPedido="33670"
FechaPedido="2025-05-21"
DetalleAdicional="Nota item"/>
<MovimientoDetalle MovimientoId="1"
MovimientoDetalleId="2"
Cantidad="1"
ValorUnitario="140"
Iva="0"
Descuento="0"
CodigoArticulo="CR804GB"
Bodega="AG01"
FuentePedido="OG"
NumeroPedido="33670"
FechaPedido="2025-05-21"
DetalleAdicional="Nota item"/>
</Movimiento>
</Movimientos>
Nodo | Descripción | Tipo | Oblig | Ejemplo |
---|---|---|---|---|
<Movimientos> | Contenedor general de todos los movimientos del documento. |
<Movimientos> <Movimiento ... > <MovimientoDetalle ... /> <MovimientoMediosPagos ... /> </Movimiento> </Movimientos> |
||
MovimientoMediosPagos | Información de los medios de pago asociados al movimiento. | Nodo interno del Movimiento con los medios de Pago | ||
MovimientoId | Identifica el consecutivo del medio de pago dentro del Movimiento. | String | Si | 1 |
CodigoMedioPago | Codigo del Medio de Pago a enviar, que debe existir en el maestro de Medios de pago | String | Si | 01 |
Valor | Valor cancelado con el medio de pago | Numeric | Si | 10000 |
CodigoTransaccion | Código de la transacción en caso de que se haya realizado una transaccion | string | Si | 10000 |
<Movimientos>
<Movimiento MovimientoId="1"
FechaDocumento="2025-06-25"
NumeroDocumento="14516"
Prefijo="PR"
LoginUsuario="ADMON"
RealizarCommit="S"
CodigoFuente="FV"
NitTercero="900011412" >
<MovimientoDetalle MovimientoId="1"
MovimientoDetalleId="1"
CualPrecio="1"
Cantidad="21"
ValorUnitario="5000"
Iva="0"
Descuento="0"
CodigoArticulo="1"
Bodega="01" />
<MovimientoMediosPagos
Movimientold="1"
CodigoMedioPago="01"
EsFacturaPos="S"
Valor="90000" />
<MovimientoMediosPagos
Movimientold="1"
CodigoMedioPago="03"
CodigoTransaccion="12"
NumeroTransaccion="1313"
EsFacturaPos="S"
Valor="15000" />
</Movimiento>
</Movimientos>
<Movimientos>
<Movimiento MovimientoId="1"
FechaDocumento="2025-06-25"
NumeroDocumento="14516"
CentroCosto="6"
Prefijo="PR"
NitVendedor="472"
LoginUsuario="ADMON"
FechaVencimiento="2025-09-08"
DiasPp1="12"
FechaPp1="2025-07-07"
PorcentajeDescuentoPp1="12"
FormaPago="28"
Zona="19"
RealizarCommit="S"
CodigoFuente="FV"
NitTercero="416"
Moneda="PESOS">
<MovimientoDetalle MovimientoId="1"
MovimientoDetalleId="1"
CualPrecio="1"
Cantidad="20"
ValorUnitario="12000"
Iva="19"
Descuento="20"
CodigoCentroCostoItem="0"
CodigoArticulo="40077"
Bodega="1"/>
</Movimiento>
</Movimientos>