Skip to content

GitLab

  • Projects
  • Groups
  • Snippets
  • Help
    • Loading...
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
    • Contribute to GitLab
  • Sign in
L
l10n_mx_payroll
  • Project overview
    • Project overview
    • Details
    • Activity
    • Releases
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
  • Issues 16
    • Issues 16
    • List
    • Boards
    • Labels
    • Service Desk
    • Milestones
  • Merge Requests 4
    • Merge Requests 4
  • CI / CD
    • CI / CD
    • Pipelines
    • Jobs
    • Schedules
  • Operations
    • Operations
    • Incidents
    • Environments
  • Analytics
    • Analytics
    • CI / CD
    • Repository
    • Value Stream
  • Members
    • Members
  • Activity
  • Graph
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
Collapse sidebar
  • l10n_mx
  • l10n_mx_payroll
  • Issues
  • #64

Closed
Open
Opened 10 months ago by Elías Méndez Vázquez@elias.mendezContributor
  • New issue

  • Report abuse

  • New issue

  • Report abuse

Error QR en recibo de nómina

Open

Error QR en recibo de nómina

Escenario

Dado que: Se tiene el PDF de un recibo de nómina.

Cuando: Se escanea el QR del recibo.

Entonces: Nos redirige a la página de "Verificación de comprobantes fiscales digitales por internet".

Y: Se llena los campos "Folio fiscal", "RFC emisor", "RFC receptor".

Y: Se puede verificar el CFDI

Estuve realizando varias pruebas y la razón por la cual en el QR se genera un total diferente con variación de un centésimo puede deberse a la regla salarial "Sueldo Neto".

En uno de los ejemplos que realice, el cálculo realizado por dicha regla da una total de 1774.15, como se puede observar a continuación

Total desde interfaz image

Total desde el PDF image

Total en el XML image

El cálculo de regla salarial "Sueldo Neto" se realiza de la siguiente manera: image

El cálculo para el XML es similar al PDF y QR, la única diferencia se encuentra en el total, este se formatea para que se muestre con dos decimales como se puede observar a continuación https://gitlab.openpyme.mx/l10n_mx/l10n_mx_payroll/-/blob/master/l10n_mx_hr_payroll/templates/hr_payslip.txt#L32

Please solve the reCAPTCHA

We want to be sure it is you, please confirm you are not a robot.

Edited 10 months ago
  1. Oh no!

    You are trying to upload something other than an image. Please upload a .png, .jpg, .jpeg, .gif, .bmp, .tiff or .ico.

    Incoming!

    Drop your designs to start your upload.

Linked issues
0


  • Elías Méndez Vázquez @elias.mendez added Bug label 10 months ago

    added Bug label

  • Elías Méndez Vázquez @elias.mendez changed the description 10 months ago

    changed the description

  • Agustín Cruz
    Agustín Cruz @agb80 · 9 months ago
    Owner

    Saludos @elias.mendez dejo aquí la solución técnica para este problema:

    Causa Raíz

    En el archivo XML se está realizando el cálculo del total de una forma diferente a la que se está realizando en el cálculo del recibo lo que introduce un error por las diferencias en redondeo entre una forma de cálculo y la otra.

    Dado que el total es un dato que ya tenemos calculado desde el proceso del cálculo del recibo, no debería ser necesario volver a realizar el cálculo en el XML.

    Lo que estoy viendo es que el proceso de cálculo del total en el recibo está considerando más decimales de los que se están mostrando en las cantidades que se ponen en las reglas, de ahí viene la diferencia y forza a que en el XML se tenga que realizar el cálculo nuevamente.

    Entonces, para evitar que se presenten discrepancias, lo que tenemos que hacer es repetir el mismo cálculo que estamos haciendo en el XML en el código QR para que los totales sean los mismos y entonces los datos concuerden.

    Para el tema del redondeo con el cálculo del recibo abro este issue para validar después en la versión 15 si se sigue presentando y si es necesario realizar algún tipo de correción al módulo.

    Solución propuesta

    • En el archivo ODT del reporte de la nómina cambiar la función que genera el código QR de:
    image: barcode(qrcode_string(o.cfdi_id.uuid or 'N/A', o.company_id.partner_id.vat_split, o.employee_id.vat, str(sumif(o.line_ids, 'total',[('category_id.code', '=', 'NETO')])), o.cfdi_id.sello or "N/A"), 'qrcode', options=dict(version=10, eclevel='M'), scale=1.4)

    a algo como esto:

    image: barcode(qrcode_string(o.cfdi_id.uuid or 'N/A', o.company_id.partner_id.vat_split, o.employee_id.vat, str(sumif(o.line_ids, 'total',[('category_id.code', '=', 'PERC')]) + sumif(o.line_ids, 'total',[('category_id.code', '=', 'OTROS')]) - sumif(o.line_ids, 'total',[('category_id.code', '=', 'DEDC')])), o.cfdi_id.sello or "N/A"), 'qrcode', options=dict(version=10, eclevel='M'), scale=1.4)

    Noten que se sustituye la regla NETO por la misma operación que se está haciendo en el XML para generar el campo Total.

    Edited by Agustín Cruz 9 months ago
  • You're only seeing other activity in the feed. To add a comment, switch to one of the following options.
Please register or sign in to reply
0 Assignees
None
Assign to
None
Milestone
None
Assign milestone
None
Time tracking
No estimate or time spent
None
Due date
None
1
Labels
Bug
Assign labels
  • No matching results
  • Manage project labels
Confidentiality
Not confidential
Lock issue
Unlocked
2
2 participants
user avatar
user avatar
Reference: l10n_mx/l10n_mx_payroll#64