Última modificación: 20/09/2018
La API de SiNube expone un método POST para agregar un producto al catálogo, con el fin de que se puedan realizar dicha tarea desde aplicaciones externas a SiNube.
Este método POST consta de dos partes: la comunicación y el cuerpo.
COMUNICACIÓN
Primero, se proporciona una URL para establecer la comunicación con SiNube. Y para delimitar el acceso a los datos, se piden 5 parámetros:
–URL
Las URL para acceder al POST son las siguientes:
FacturaNube (Ambiente de pruebas)
http://ep-dot-facturanube.appspot.com/blob
SiNube (Ambiente de producción)
http://ep-dot-si-nube.appspot.com/blob
EL POST permite http y https; y no requiere autenticación.
–Parámetros
Se requieren 5 datos, los cuales deben estar separados entre sí por enters, codificados en una cadena BASE64 y enviados en un parámetro llamado PAR
- tipo: el valor debe ser ‘12’.
- emp: RFC de la empresa en el que se quiere agregar el producto.
- suc: Sucursal válida dentro de la empresa.
- usu: E-mail de un usuario vigente y con acceso a la empresa-sucursal.
- pwd: Contraseña de comunicaciones, esta se encuentra en Parámetros de la empresa.
Ejemplo:
Parámetros:
tipo=12[enter]
emp=AAA010101AAA[enter]
suc=Matriz[enter]
usu=usuario@gmail.com[enter]
pwd=123456789
Convertidos a BASE64:
dGlwbz0xMg0KZW1wPUFBQTAxMDEwMUFBQQ0Kc3VjPU1hdHJpeg0KdXN1PWVqZW1wbG9Ac2ludWJlLm14DQpwd2Q9MTIz
CUERPO
El contenido o cuerpo del POST es un archivo XML que contiene los datos necesarios para generar el registro.
–XML
La estructura del Xml con los datos para agregar o actualizar producto es la siguiente:
Producto - Diagrama
Nodo: | Producto | Uso: | Requerido | |
---|---|---|---|---|
Atributo | Descripción | Uso | Tipo | Adicionales |
sistema | Identifica el sistema o software origen desde el que se manda el producto, sirve para delimitar las fuentes de conexión. Los sistemas que lo usen deben estar dados de alta en la lista de sistemas válidos. | Requerido | String | |
producto | Especifica el código de producto del catálogo de productos de Sinube. | Requerido | String | Longitud: 20 |
descripcion | Especifica la descripción del producto. | Requerido | String | Longitud: Mín: 1, Máx: 1000 |
unidad | Especifica la unidad del catálogo de unidades de Sinube. | Requerido | String | Longitud: 20 |
moneda | Especifica la moneda y esta debe existir en el catálogo de monedas. | Requerido | String | |
tipoIVA | Especifica el tipo de IVA del producto. | Requerido | String | Valores: “Causa IVA”, “IVA 0%”, “IVA Exento” |
productoSAT | Especifica el código del producto del catálogo c_ClaveProdServ emitido por el SAT. | Opcional | String | |
codigoAuxiliar | Especifica un código auxiliar al producto. | Opcional | String | |
activo | Especifica si el producto puede usarse o no. | Opcional | Integer | Valores: 1 = activo, 0 = inactivo |
enVenta | Especifica si el producto se utilizara para vender. | Opcional | Integer | Valores: 0,1 |
inventariable | Especifica si el producto se incluirá en el inventario y en movimientos de almacén. | Opcional | Integer | Valores: 0,1 |
loteSerieRequerido | Especifica si el producto utilizará lotes y/o número de serie. | Opcional | Integer | Valores: 0,1 |
compraDirecta | Especifica si el producto puede utilizarse en requisiciones directas(Módulo de compras). | Opcional | Integer | Valores: 0,1 |
compraGeneral | Especifica si el producto puede utilizarse en requisiciones generales(Módulo de compras). | Opcional | Integer | Valores: 0,1 |
compraCEDIS | Especifica si el producto puede utilizarse en requisiciones CEDIS(Módulo de compras). | Opcional | Integer | Valores: 0,1 |
tipoProducto | Especifica la clasificación por uso del producto. | Opcional | String | Valores: “PROD”, “MO”, “EQ” |
grupoProducto | Especifica el grupo de clasificación del producto, el cual debe existir dentro del catálogo de Grupos. | Opcional | String | |
precioUltimaCompra | Especifica el precio de la última compra que se realizó del producto. | Opcional | Double | Decimales: 0 a 2 |
costoEstandar | Especifica el costo estimado del producto. | Opcional | Double | Decimales: 0 a 2 |
porcentajeIEPS | Especifica el porcentaje (tasa) de IEPS para el producto. Si se asigna un porcentaje, el montoIEPS será cero. | Opcional | Double | Decimales: 0 a 4 |
montoIEPS | Especifica el monto (cuota) de IEPS para el producto. Si se asigna monto, el porcentajeIEPS será cero. | Opcional | Double | Decimales: 0 a 2 |
lineaProducto | Especifica una línea de producto del catálogo de líneas de producto. | Opcional | String | |
aplicaRetencionLocal | Indica si al producto se aplica retención local (Obra pública). | Opcional | Integer | Valores: 0,1 |
aplicaTrasladosLocal | Indica si al producto se aplica traslado local (Hotelería). | Opcional | Integer | Valores: 0,1 |
aplicaRetencionIVAFlete | Indica si al producto se aplica retención de IVA (Fletes). | Opcional | Integer | Valores: 0,1 |
cuentaIngreso | Especifica la cuenta contable de Ingreso, la cual debe existir dentro del catálogo de cuentas contables. | Opcional | String | |
cuentaGasto | Especifica la cuenta contable de gasto, la cual debe existir dentro del catálogo de cuentas contables. | Opcional | String | |
cuentaAlmacen | Especifica la cuenta contable de almacén, la cual debe existir dentro del catálogo de cuentas contables. | Opcional | String | |
marca | Especifica la marca del producto, la cual debe existir dentro del catálogo de Marcas. | Opcional | String | |
fichaTecnica | Especifica la ficha técnica del producto. | Opcional | String | Longitud: Mín: 1, Máx: 1000 |
A continuación se entrega la documentación completa con un ejemplo del XML.
POST PRODUCTO AGREGAR _ 20240905.pdf (197,4 KB)