La API de SiNube expone un método POST para agregar / timbrar un CFDI 4.0, con el fin de que se puedan realizar dicha tarea desde aplicaciones externas a SiNube.
Atributo para especificar el sistema desde el que se manda la factura, sirve para para determinar el origen de factura y para delimitar los sistemas que usen el proceso, tal que los sistemas que lo usen deben estar dados de alta en la lista de sistemas válidos.
Uso
Requerido
Tipo
String
Valores
Personalizado por RFC
Atributo
generar
Descripción
Atributo para especificar si se genera una factura de ingreso (Factura) o de egreso (Nota credito). No debe ir si usarParametrosAutofacturacion = 1, de lo contrario es requerido.
Uso
Condicional
Tipo
String
Valores
“Factura”, “Nota credito”, “Traslado”
Atributo
rfcEmisor
Descripción
Atributo para especificar el RFC del emisor, éste debe coincidir con el parámetro empresa
Uso
Requerido
Tipo
String
Atributo
sucursal
Descripción
Atributo para especificar la sucursal en la que se guardará la factura, este debe coincidir con el parámetro sucursal.
Uso
Requerido
Tipo
String
Atributo
usarParametrosAutofacturacion
Descripción
Atributo para especificar que se usarán los parámetros de autofacturación. Esto hace que el atributo folioNotaVenta sea requerido, y que no deban ir los parámetros: generar, codigoReporte, nomArchivoDescarga, noCertificado, serie, folio,saltarFolio, formaDePago, condicionesDePago, metodoDePago, referencia, en impuestos solo se permite IVA Trasladado, y no se permite cliente extranjero, addenda, CFDIs relacionados ni depósito.
Uso
Opcional
Tipo
Integer
Valores
0 = No, 1 = Si
Atributo
codigoReporte
Descripción
Atributo para especificar el código del reporte que se usará para generar la Url de descarga del PDF de la factura. El código debe existir en los formatos de CFDI 3.3 en SiNube. No debe ir si usarParametrosAutofacturacion = 1, de lo contrario es requerido.
Uso
Condicional
Tipo
String
Atributo
nomArchivoDescarga
Descripción
Atributo para especificar el nombre del archivo XML y PDF de las URL de descargas, y debe actualizarse para cada comprobante. Si no se especifica, se usará el nombre default que usa SiNube. No debe ir si usarParametrosAutofacturacion = 1.
Uso
Opcional
Tipo
String
Atributo
permiteAgregarProductosNoInv
Descripción
Atributo para especificar si se dan de alta los productos que no existan como no inventariables. De lo contrario marcará el error de que no existe el producto en SiNube.
Uso
Requerido
Tipo
Integer
Valores
0, 1
Atributo
noCertificado
Descripción
Atributo para especificar el certificado que se usará para generar la factura. El certificado debe existir en SiNube en la sucursal en la que se genera la factura. No debe ir si usarParametrosAutofacturacion = 1, de lo contrario es requerido.
Uso
Condicional
Tipo
String
Atributo
serie
Descripción
Atributo para especificar la serie con la que se generará la factura. La serie debe existir en el certificado que se especificó. No debe ir si usarParametrosAutofacturacion = 1, de lo contrario es requerido.
Uso
Condicional
Tipo
String
Atributo
folio
Descripción
Atributo para especificar el folio con el que se generará la factura. El folio debe corresponder con el folio siguiente en la serie, o bien especificar saltarFolio. No debe ir si usarParametrosAutofacturacion = 1, de lo contrario es requerido.
Uso
Condicional
Tipo
Long
Atributo
saltarFolio
Descripción
Atributo para permitir generar folios no consecutivos. No debe ir si usarParametrosAutofacturacion = 1.
Uso
Opcional
Tipo
Integer
Valores
0, 1 (predeterminado = 0)
Atributo
formaDePago
Descripción
Atributo para especificar la forma de pago y debe ser un valor del catálogo c_FormaPago emitido por el SAT. No debe ir si usarParametrosAutofacturacion = 1, de lo contrario es requerido.
Uso
Condicional
Tipo
String
Atributo
condicionesDePago
Descripción
Atributo para especificar las condiciones de pago de la factura. No debe ir si usarParametrosAutofacturacion = 1, de lo contrario es requerido.
Uso
Condicional
Tipo
String
Atributo
metodoDePago
Descripción
Atributo para especificar el método de pago y debe ser un valor del catálogo c_MetodoPago emitido por el SAT. No debe ir si usarParametrosAutofacturacion = 1, de lo contrario es requerido.
Uso
Condicional
Tipo
String
Atributo
observacion
Descripción
Atributo para especificar una observación en la factura.
Uso
Opcional
Tipo
String
Atributo
referencia
Descripción
Atributo para especificar una referencia en la factura. No debe ir si usarParametrosAutofacturacion = 1.
Uso
Opcional
Tipo
String
Atributo
fechaPagoProbable
Descripción
Atributo para especificar la fecha probable de pago de la factura.
Uso
Opcional
Tipo
Integer
Formato
milisegundos
Por ejemplo:
Fecha local: 12/10/2021 12:54:39 PM
Fecha milisegundos: 1634061279000
Atributo
subtotal
Descripción
Atributo para especificar el subtotal de la factura, y debe ser igual a la suma de los importes de los conceptos.
Uso
Requerido
Tipo
Double
Decimales
0 a 2
Atributo
descuento
Descripción
Atributo para especificar el descuento de la factura y debe ser igual a la suma de los descuentos de los conceptos.
Uso
Requerido
Tipo
Double
Decimales
0 a 2
Atributo
porcentajeIVA
Descripción
Atributo para especificar el porcentaje de IVA de la factura, y debe ser un valor del catálogo c_TasaOCuota emitido por el SAT.
Uso
Requerido
Tipo
Double
Decimales
0 a 2
Atributo
montoIVA
Descripción
Atributo para especificar el monto de IVA de la factura, y debe ser igual a la suma de los montos de IVA de los conceptos.
Uso
Requerido
Tipo
Double
Decimales
0 a 2
Atributo
desglosaIEPS
Descripción
Atributo para especificar si se desglosa el IEPS en el XML. Siempre se debe mandar el IEPS aún si no se desglosa. No debe ir si usarParametrosAutofacturacion = 1.
Uso
Opcional
Tipo
Integer
Decimales
0, 1
Atributo
montoIEPS
Descripción
Atributo para especificar el monto de IEPS de la factura, y debe ser igual a la suma de los montos de IEPS de los conceptos.No debe ir si usarParametrosAutofacturacion = 1.
Uso
Opcional
Tipo
Double
Decimales
0 a 2
Atributo
montoIVARetenido
Descripción
Atributo para especificar el monto de IVA retenido de la factura, y debe ser igual a la suma de los montos de IVA retenido de los conceptos.No debe ir si usarParametrosAutofacturacion = 1.
Uso
Opcional
Tipo
Double
Decimales
0 a 2
Atributo
montoISRRetenido
Descripción
Atributo para especificar el monto de ISR retenido de la factura, y debe ser igual a la suma de los montos de ISR retenido de los conceptos.No debe ir si usarParametrosAutofacturacion = 1.
Uso
Opcional
Tipo
Double
Decimales
0 a 2
Atributo
folioNotaVenta
Descripción
Atributo para especificar el folio de Nota de Venta a la que se ligará la factura. Además la Nota de Venta se marcará como facturada.Si usarParametrosAutofacturacion = 1 es requerido.
Uso
Condicional
Tipo
Long
Atributo
total
Descripción
Atributo para especificar el el total de la factura, y debe ser igual a la suma del subtotal - descuento + impuestos trasladados - impuestos retenidos.
Uso
Requerido
Tipo
Double
Decimales
0 a 2
Atributo
monedaSinube
Descripción
Atributo para especificar la moneda y esta debe existir en el catálogo de monedas.
Uso
Requerido
Tipo
String
Atributo
monedaSAT
Descripción
Atributo para especificar la moneda SAT y esta debe existir en el catálogo c_Moneda emitido por el SAT.
Uso
Requerido
Tipo
String
Atributo
fechaManual
Descripción
Atributo para especificar si la fecha se asignará manualmente a la factura.
Uso
Opcional
Tipo
Booleano
Valores
0 = “No”, 1 = “Si”
Atributo
fechaFactura
Descripción
Atributo para especificar la fecha de la factura. Cuando el atributo fechaManual=“1”.
Se permite retrasar la fecha entre 30 minutos y 71 horas, y se valida que la fecha sea posterior a factura anterior en esa serie.
NOTA 1
Las facturas con fecha manual solo serán No Inventariables, por lo que no afectarán al inventario.
NOTA 2
Si la factura se emite con la fecha actual, no debe incluirse la fecha manual.
Uso
Opcional
Tipo
Integer
Formato
milisegundos
Por ejemplo:
Fecha local: 12/10/2021 12:54:39 PM
Fecha milisegundos: 1634061279000
Atributo
tipoCambio
Descripción
Atributo para especificar el tipo de cambio de la factura. En el caso de que monedaSAT sea diferente de ‘MXN’ este atributo es requerido.
Uso
Condicional
Tipo
Double
Decimales
0 a 4
Atributo
difZonaHoraria
Descripción
Atributo para especificar la diferencia en horas de la zona horaria del lugar donde se está generando la factura. la cual debería coincidir con el Código Postal de la dirección para facturación guardado en los parámetros de la sucursal
Uso
Requerido
Tipo
Integer
Ejemplo
-5
Atributo
almacen
Descripción
Atributo condicional para especificar el almacén al que afectará la factura en los productos inventariables. Este atributo solo se debe usar si la empresa está configurada como multialmacén, y el almacén debe existir en el catálogo de almacenes.
Uso
Condicional
Tipo
String
Atributo
codigoAuxiliar
Descripción
Atributo condicional para especificar el código auxiliar de la factura, y este sirve para vincular la factura a sistemas externos para guardar la referencia a su registro.
Uso
Opcional
Tipo
String
Atributo
estimuloIva8
Descripción
Atributo opcional para especificar que la factura aplica el estímulo para la frontera norte (IVA al 8%). Es necesario activar el parámetro “Aplicar estímulo región fronteriza norte (IVA 8%)” en la sucursal.
Uso
Opcional
Tipo
Integer
Valores
0, 1 - (predeterminado = 0)
Atributo
agregarMoneda
Descripción
Atributo opcional para especificar si se agrega la moneda en el catálogo de monedas en el caso de que no exista.
Uso
Opcional
Tipo
Integer
Valores
0, 1 - (predeterminado = 0)
Atributo
version
Descripción
Atributo para especificar la versión del estándar de CFDI a emitir
Uso
Opcional, si se omite el valor por default será CFDI 3.3
Tipo
String
Valores
CFDI 3.3 (derogado), CFDI 4.0
Atributo
exportacion
Descripción
Atributo para expresar si el comprobante ampara una operación de exportación.
Atributo para especificar el Id o folio del cliente. Si se usa este valor el cliente debe existir y debe coincidir con el RFC y con la monedaSinube de la factura. Se puede usar este valor para evitar la posibilidad de duplicar clientes en el catálogo.
Uso
Opcional
Tipo
Long
Atributo
rfc
Descripción
Atributo para especificar el RFC del receptor de la factura.
Uso
Requerido
Tipo
String
Atributo
razonSocial
Descripción
Atributo para especificar la razón social del receptor de la factura.
Uso
Requerido
Tipo
String
Atributo
usoCFDI
Descripción
Atributo para especificar el uso CFDI de la factura y este debe existir en el catálogo c_UsoCFDI emitido por el SAT. Además el valor debe ser válido contra el tipo de cliente, Persona Física o Moral.
Uso
Requerido
Tipo
String
Atributo
esPersonaFisica
Descripción
Atributo para especificar si el receptor es persona física o moral.
Uso
Requerido
Tipo
Integer
Valores
0, 1
Atributo
nombre
Descripción
Atributo para especificar el nombre del receptor. Para el caso de personas físicas el campo es requerido.
Uso
Condicional
Tipo
String
Atributo
apellidoPaterno
Descripción
Atributo para especificar el apellido paterno del receptor. Para el caso de personas físicas el campo es requerido.
Uso
Condicional
Tipo
String
Atributo
apellidoMaterno
Descripción
Atributo para especificar el apellido paterno del receptor. Para el caso de personas físicas el campo es opcional.
Uso
Opcional
Tipo
String
Atributo
residenciaFiscal
Descripción
Atributo para especificar la clave del país de residencia cuando se trate de un cliente extranjero.
Uso
Condicional
Tipo
String
Atributo
numRegIdTrib
Descripción
Atributo para especificar el número de registro de identidad fiscal cuando se trate de un cliente extranjero.
Uso
Condicional
Tipo
String
Atributo
regimenFiscal
Descripción
Atributo para especificar el régimen fiscal del receptor
Uso
Condicional para CFDI 4.0. Si se agrega el atributo cliente del nodo receptor se da la opción de tomar este valor del catálogo de clientes. en caso de que no se agregue el atributo cliente, este se vuelve requerido para CFDI 4.0
Nodo opcional para expresar la dirección del cliente.
Uso
Opcional
Atributos
Atributo
pais
Descripción
Atributo para especificar el país del domicilio del receptor.
Uso
Opcional
Tipo
String
Atributo
codigoPostal
Descripción
Atributo para especificar el código postal del domicilio del receptor.
Uso
Condicional para CFDI 4.0. Si se agrega el atributo cliente del nodo receptor, se da la opción de tomar este valor del catálogo de clientes. En caso de que no se agregue el atributo cliente, es requerido para CFDI 4.0.
Tipo
String
Atributo
estado
Descripción
Atributo para especificar el Estado o entidad federativa del domicilio del receptor.
Uso
Opcional
Tipo
String
Atributo
municipio
Descripción
Atributo para especificar el Municipio del domicilio del receptor.
Uso
Opcional
Tipo
String
Atributo
localidad
Descripción
Atributo para especificar la localidad del domicilio del receptor.
Uso
Opcional
Tipo
String
Atributo
colonia
Descripción
Atributo para especificar la colonia del domicilio del receptor.
Uso
Opcional
Tipo
String
Atributo
noInterior
Descripción
Atributo para especificar el número interior del domicilio del receptor.
Uso
Opcional
Tipo
String
Atributo
noExterior
Descripción
Atributo para especificar el número exterior del domicilio del receptor.
Uso
Opcional
Tipo
String
Atributo
calle
Descripción
Atributo para especificar la calle del domicilio del receptor.
Atributo para especificar el código de producto del catálogo de productos de Sinube. Si se especifica el atributo permiteAgregarProductosNoInv = 1 y el producto no existe en el catálogo, este se dará de alta como no inventariable.
Uso
Requerido
Tipo
String
Atributo
productoSAT
Descripción
Atributo para especificar el código del concepto del catálogo c_ClaveProdServ emitido por el SAT.
Uso
Requerido
Tipo
String
Atributo
descripcion
Descripción
Atributo para especificar la descripción del concepto.
Uso
Requerido
Tipo
String
Longitud
Min: 1, Máx: 1000
Atributo
cantidad
Descripción
Atributo para especificar la cantidad.
Uso
Requerido
Tipo
Cantidad
Decimales
0 a 4
Atributo
unidadSinube
Descripción
Atributo para especificar la unidad del catálogo de unidades de Sinube.
Uso
Requerido
Tipo
String
Atributo
unidadSAT
Descripción
Atributo para especificar la unidad del catálogo c_ClaveUnidad emitido por el SAT.
Uso
Requerido
Tipo
String
Atributo
valorUnitario
Descripción
Atributo para especificar el valor unitario del concepto.
Uso
Requerido
Tipo
Double
Decimales
0 a 6
Atributo
descuento
Descripción
Atributo para especificar el monto de descuento del concepto.
Uso
Requerido
Tipo
Double
Decimales
0 a 2
Atributo
tipoIVA
Descripción
Atributo para especificar el tipo de IVA del concepto.
Uso
Requerido
Tipo
String
Valores
“Causa IVA”, “IVA 0%”, “IVA Exento”
Atributo
montoBaseIVA
Descripción
Atributo para especificar el monto base del IVA trasladado del concepto.
Uso
Requerido
Tipo
Double
Decimales
0 a 2
Atributo
montoIVA
Descripción
Atributo para especificar el monto de IVA trasladado del concepto.
Uso
Requerido
Tipo
Double
Decimales
0 a 2
Atributo
montoBaseIEPS
Descripción
Atributo para especificar el monto base del IEPS del concepto.
Uso
Opcional
Tipo
Double
Decimales
0 a 2
Atributo
esPorcentajeIEPS
Descripción
Atributo para especificar si el IEPS es por porcentaje (= 1) o por monto (= 0).
Uso
Opcional
Tipo
Integer
Valores
0, 1
Atributo
porcentajeIEPS
Descripción
Atributo para especificar el porcentaje IEPS o bien el monto unitario, dependiendo del valor del atributo esPorcentajeIEPS.
Uso
Opcional
Tipo
Double
Decimales
0 a 4
Atributo
montoIEPS
Descripción
Atributo para especificar el monto de IEPS del concepto.
Uso
Opcional
Tipo
Double
Decimales
0 a 2
Atributo
montoBaseRetencionIVA
Descripción
Atributo para especificar el monto base de la retención de IVA del concepto.
Uso
Opcional
Tipo
Double
Decimales
0 a 2
Atributo
porcentajeRetencionIVA
Descripción
Atributo para especificar el porcentaje de retención de IVA del concepto.
Uso
Opcional
Tipo
Double
Decimales
0 a 4
Atributo
montoRetencionIVA
Descripción
Atributo para especificar el monto de retención de IVA del concepto.
Uso
Opcional
Tipo
Double
Decimales
0 a 2
Atributo
montoBaseRetencionISR
Descripción
Atributo para especificar el monto base de la retención de ISR del concepto.
Uso
Opcional
Tipo
Double
Decimales
0 a 2
Atributo
porcentajeRetencionISR
Descripción
Atributo para especificar el porcentaje de retención de ISR del concepto.
Uso
Opcional
Tipo
Double
Decimales
0 a 4
Atributo
montoRetencionISR
Descripción
Atributo para especificar el monto de retención de ISR del concepto.
Uso
Opcional
Tipo
Double
Decimales
0 a 2
Atributo
importe
Descripción
Atributo para especificar el importe del concepto. El SAT lo define como valorUnitario * cantidad.
Uso
Requerido
Tipo
Double
Decimales
0 a 2
Atributo
subtotalDet
Descripción
Atributo para especificar el subtotal del concepto. Debe ser igual a importe - descuento.
Uso
Requerido
Tipo
Double
Decimales
0 a 2
Atributo
estimuloIva8
Descripción
Atributo opcional para especificar que el concepto aplica el estímulo para la frontera norte (el porcentaje de IVA será del 8% para este concepto).
Uso
Opcional
Tipo
Integer
Valores
0, 1 (predeterminado = 0)
Atributo
cuentaPredial
Descripción
Atributo opcional para especificar la cuenta predial.
Uso
Opcional
Tipo
String
Atributo
objetoImp
Descripción
Atributo para especificar si la operación es objeto o no de impuesto
Atributo para especificar el nombre del campo adicional.
Uso
Requerido
Tipo
String
Atributo
tipo
Descripción
Atributo para especificar el tipo de dato del campo adicional.
Uso
Requerido
Tipo
String
Valores
“Cadena”, “Fecha”, “Entero”, "Decimal”
Atributo
valor
Descripción
Atributo para especificar el valor del campo adicional.
Uso
Requerido
Tipo
String
*Es importante señalar que cuando el campo es de tipo “Fecha”, el valor debe expresarse en milisegundos. Por ejemplo, para indicar la fecha “31/01/2019 10:35:41”, el valor será: “1548930941000”
Atributo para especificar el nombre del campo adicional.
Uso
Requerido
Tipo
String
Atributo
tipo
Descripción
Atributo para especificar el tipo de dato del campo adicional.
Uso
Requerido
Tipo
String
Valores
“Cadena”, “Fecha”, “Entero”, "Decimal”
Atributo
valor
Descripción
Atributo para especificar el valor del campo adicional.
Uso
Requerido
Tipo
String
Es importante señalar que cuando el campo es de tipo “Fecha”, el valor debe expresarse en milisegundos. Por ejemplo, para indicar la fecha “31/01/2019 10:35:41”, el valor será: “1548930941000”