ingadhoc / odoo-argentina

Una Localización Argentina de Odoo amigable
http://www.odooargentina.com
GNU Affero General Public License v3.0
103 stars 186 forks source link

AFIP Validation Error. 10197: Si el comprobante es Debito o Credito, enviar estructura CbteAsoc o PeriodoAsoc. #493

Closed emavarela closed 3 years ago

emavarela commented 3 years ago

AFIP Validation Error. 10197: Si el comprobante es Debito o Credito, enviar estructura CbteAsoc o PeriodoAsoc.

Version affectada:

  • 12.0

Pasos para reproducir:

  1. Crear un diario de venta electrónica que use Webserive de AFIP Mercado interno -sin detalle- RG2485 (WSFEv1).
  2. Usando este diario crear una factura para un cliente responsable inscripto ( Factura A ) con un artículo cualquiera.
  3. Luego, usando este mismo diario, crear una factura rectificativa por el mismo importe al mismo cliente.
  4. Dar click en el botón Validar en HOMOLOGACION
  5. Se exhibe el mensaje Odoo Server Error - Warning: AFIP Validation Error. 10197: Si el comprobante es Debito o Credito, enviar estructura CbteAsoc o PeriodoAsoc.

Lo que pasa actualmente:

  • Se exhibe el mensaje Odoo Server Error - Warning: AFIP Validation Error. 10197: Si el comprobante es Debito o Credito, enviar estructura CbteAsoc o PeriodoAsoc.

Lo que debe pasar:

  • Se valida la factura rectificativa

Analisis profunda:

  • Yo cre que la causa raiz es el reciente cambio en el servicio de la AFIP WSFEv1 que exige la información de los documentos asociados.
  • Por lo que veo en /l10n_ar_afipws_fe/models/invoice.py el ampo CbteAsoc se agrega solo para wsfex u otros y no para wsfe
    • Adjunto los printscreen de la pantalla previo a dar click en Validar Homologacion factura rectificativa
jobiols commented 3 years ago

Esta mañana un cliente reportó el mismo error en odoo V8, esto pasa en produccion al validar una nota de credito. Evidentemente algo cambio en AFIP

screenshot-18 221 188 110-2021 04 05-16_16_29

NahuelVarela commented 3 years ago

Acabo de encontrar en este grupo mas gente reportando el issue. Por lo que veo de AFIP este campo estaba como opcional desde el 18 de Junio, pero ahora lo implementaron como requerido.

jjscarafia commented 3 years ago

buenas @emavarela gracias por el detallado reporte. por lo que veo en v12 se está pasando el comprobante asociado sin importar el ws https://github.com/ingadhoc/odoo-argentina/blob/12.0/l10n_ar_afipws_fe/models/invoice.py#L757 Ahora bien, es importante que se obtenga el comprobante asociado, esto suele ser a través del campo origen (aunque tmb intentamos adivinarlo desde la venta) Este es el método que intenta encontrar el comprobante asociado

Entiendo que estaría todo funcionando e implementado. Si queda algún error o se me pasó algo por alto por favor re-abrí el ticket.

Saludos!

emavarela commented 3 years ago

Para el resto de la comunidad dejo el comentario por si le sirve a alguien:

Si con este cambio de AFIP no pueden hacer notas de crédito desde el POS, instalen los módulos pos_order_mgmt y pos_order_return de OCA.

Luego en /pos_order_return/models/pos_order.py reemplazar:

'origin': self.returned_order_id.invoiceid.number, 'name': ( 'Return of %s' % self.returned_order_id.invoice_id.number), 'refund_invoice_id': self.returned_order_id.invoice_id.id,

Por:

'origin': _self.returned_order_id.invoice_id.documentnumber, 'name': _( 'Return of %s' % _self.returned_order_id.invoice_id.documentnumber), 'refund_invoice_id': self.returned_order_id.invoice_id.id,

O bueno, hacen su propio módulo que herede el anterior y le hacen la modificación.

Luego dentro del POS, el proceso de devolución lo inician desde el icono del changuito en el POS:

changuito

Slds.

santcosta commented 3 years ago

Y que pasa cuando el comprobante asociado no se encuentra en el sistema ? Por ser una factura vieja . Salds