thegreenter / greenter

Facturación Electrónica - SUNAT - PE :four_leaf_clover:
https://greenter.dev
MIT License
269 stars 138 forks source link

ERROR: 3127, El XML no contiene el tag o no existe información del Codigo de BBSS de detracción para el tipo de operación #107

Closed zcastle closed 4 years ago

zcastle commented 4 years ago

Estimados,

Desde el 1 de julio la sunat empezó a rechazar mis facturas e indica el error 3127 con descripcion "El XML no contiene el tag o no existe información del Codigo de BBSS de detracción para el tipo de operación", luego de revisar la documentacion en https://cpe.sunat.gob.pe/node/88 actualizado el 29-05-2020 vi que es necesario añadir algunas lineas al xml de la factura, a continuación comparto el cambio que hice por si le es de utilidad a alguien:

{% if doc.detraccion %}
    {% set detr = doc.detraccion %}
    <cac:PaymentMeans>
        <cbc:PaymentMeansCode>{{ detr.codMedioPago }}</cbc:PaymentMeansCode>
        <cac:PayeeFinancialAccount>
            <cbc:ID>{{ detr.ctaBanco }}</cbc:ID>
        </cac:PayeeFinancialAccount>
    </cac:PaymentMeans>
    <cac:PaymentTerms>
        <cbc:PaymentMeansID>{{ detr.codBienDetraccion }}</cbc:PaymentMeansID>
        <cbc:PaymentPercent>{{ detr.percent }}</cbc:PaymentPercent>
        <cbc:Amount currencyID="PEN">{{ detr.mount|n_format }}</cbc:Amount>
    </cac:PaymentTerms>
    {% endif %}

Añadir <cbc:ID>Detraccion</cbc:ID> dentron de <cac:PaymentMeans> y <cac:PaymentTerms>

{% if doc.detraccion %}
    {% set detr = doc.detraccion %}
    <cac:PaymentMeans>
        <cbc:ID>Detraccion</cbc:ID>
        <cbc:PaymentMeansCode>{{ detr.codMedioPago }}</cbc:PaymentMeansCode>
        <cac:PayeeFinancialAccount>
            <cbc:ID>{{ detr.ctaBanco }}</cbc:ID>
        </cac:PayeeFinancialAccount>
    </cac:PaymentMeans>
    <cac:PaymentTerms>
        <cbc:ID>Detraccion</cbc:ID>
        <cbc:PaymentMeansID>{{ detr.codBienDetraccion }}</cbc:PaymentMeansID>
        <cbc:PaymentPercent>{{ detr.percent }}</cbc:PaymentPercent>
        <cbc:Amount currencyID="PEN">{{ detr.mount|n_format }}</cbc:Amount>
    </cac:PaymentTerms>
    {% endif %}

Espero les sea de utilidad

giansalex commented 4 years ago

Gracias @zcastle , se tendrá en cuenta para una próxima actualización.