El objetivo de este artículo es compartir con los usuarios cómo filtrar las transacciones del SAT (facturas, o bien, más técnicamente hablando CFDIs) que sincronicen por medio de Sync. Esto es posible mediante una herramienta de filtrado que nos ofrece Sync llamada Keywords, esta herramienta de filtrado se puede utilizar tanto en los endpoints de GET /attachments como GET /transactions. A continuación se explica en qué consiste dicha herramienta.
Keywords para CFDI
En México existen diferentes documentos fiscales cuya emisión es obligatoria para un contribuyente dependiendo de su régimen fiscal, los principales documentos fiscales son los siguientes:
- Facturas
- Recibo de Honorarios
- Recibos de Pago
- Recibo de Arrendamiento
- Recibo de Donativos
- Nota de Cargo
- Nota de Crédito
- Nota de Devolución
- Carta Porte
- Recibo de Nómina
- Etcétera
Con la finalidad de estandarizar estos documentos el SAT definió una estructura denominada CFDI (Comprobante Fiscal Digital por Internet), es un documento XML que contiene los elementos siguientes:
Nodo Principal: cfdi:Comprobante
Nodo Secundario: cfdi:Emisor
Nodo Secundario: cfdi:Receptor
Nodo Secundario: cfdi:Conceptos
Nodo Secundario: cfdi:Impuestos
Nodo Secundario: cfdi:Complemento
Cada nodo tiene una serie de atributos y de nodos hijo que pueden ser obligatorios u opcionales, lo que diferencia a un documento fiscal de otro son los valores que aparecen en atributos representativos o la presencia de nodos hijo. Por ejemplo:
- Un Recibo de Nómina CFDI 3.2 tiene el nodo hijo nomina:Nomina dentro del nodo secundario cfdi:Complemento y en el atributo tipoDeComprobante el valor egreso.
- Una Carta Porte tiene la palabra “traslado” dentro del atributo tipoDeComprobante del nodo cfdi:Comprobante.
Cuando tratamos de responder la pregunta ¿Cuáles son los valores y nodos propios de cada documento fiscal? encontramos que no hay reglas definidas por el SAT para todos ellos, al menos para los más coloquiales, son más que nada una convención y de hecho podemos encontrar que las condiciones (en ocasiones) están en función del criterio de cada contador,
por esto Paybook Sync optó por el uso de Keywords los cuales son extraídos de atributos y nodos representativos del CFDI y através de ellos se puede inferir si un CFDI puede ser clasificado como un determinado documento fiscal.
Así pues, los keywords de cada transacción son extraídos de las siguientes fuentes:
- Del portal del SAT se extraen los valores “emitidas”, “recibidas”, “vigente” y
- “cancelada”.
- Atributo version del CFDI, los valores que puede tomar son “2,2”,”3.2” y “3.3”. Resulta importante especificar la versión ya que es probable que las condiciones de cada documento fiscal cambien en función de la versión.
- Atributo TipoDeComprobante del CFDI, los valores posibles son “ingreso”, “egreso” y “traslado”.
- Atributo “impuesto” del nodo “cfdi:Retencion”, por ejemplo de la factura descrita en la figura de abajo obtendremos los keywords “IVA” e “ISR”.
- Cada uno de los nombres de los nodos que aparecen dentro de “cfdi:Complemento”.
A continuación se listan las propuestas de Sync para filtrar los documentos fiscales más populares al realizar una consulta de transacciones:
Recibo de Honorarios
https://sync.paybook.com/v1/transactions?token={{token}}&keywords=3.2,ingreso,iva,isr
Recibo de Donativos
Versión 1.0 https://sync.paybook.com/v1/transactions?token={{token}}&keywords=3.2,ingreso,donat Versión 1.1 https://sync.paybook.com/v1/transactions?token={{token}}&keywords=3.2,ingreso,donat11
Nota de Crédito
https://sync.paybook.com/v1/transactions?token={{token}}&keywords=3.2,egreso,iva&skip_key words=nomina
Carta Porte
https://sync.paybook.com/v1/transactions?token={{token}}&keywords=3.2,traslado
Recibo de Nómina
https://sync.paybook.com/v1/transactions?token={{token}}&keywords=3.2,egreso,nomina
Facturas de Instituciones Educativas
https://sync.paybook.com/v1/transactions?token={{token}}&keywords=3.2,egreso,iedu
Los keywords además permiten filtrar las facturas por su comportamiento fiscal, por ejemplo:
Listar sólo todas las facturas recibidas con IVA Trasladado
https://sync.paybook.com/v1/transactions?token={{token}}&keywords=3.2,ingreso,traslados,iva
Listar sólo todas las facturas excepto los recibos de nómina
https://sync.paybook.com/v1/transactions?token={{token}}&keywords=3.2,ingreso&skip_keywor ds=nomina
Listar sólo los recibos de nómina
https://sync.paybook.com/v1/transactions?token={{token}}&keywords=3.2,nomina