Comunicaiones de baja
Para anular o dar de baja un comprobante electr贸nico, SUNAT ha definido un esquema XML nombrado como VoidedDocuments
. En este documento se pueden informar varios comprobantes siempre que hayan sido emitidos en la misma fecha.
Versi贸n UBL
Aunque este documento (VoidedDocuments
) no forma parte del est谩ndar UBL, SUNAT ha decido asignarle la version UBL 2.0
#
Comprobantes permitidosLos tipos de comprobantes principales que pueden darse de baja utilizando este documento, son los siguientes.
Tipo | Descripci贸n |
---|---|
01 | Facturas |
07 | Nota de cr茅dito relacionada a facturas |
08 | Nota de d茅bito relacionada a facturas |
Baja de Boletas
Las boletas y notas de cr茅dito/d茅bito relacionadas deben darse de baja utilizando el documento de resumen diario.
#
Informaci贸n requeridaNecesitamos incluir la siguiente informaci贸n por cada comprobante a dar de baja.
- Tipo de comprobante
- Serie del comprobante
- Correlativo del comprobante
- Motivo de baja
Adicionalmente necesitamos un identificador de este documento, que sigue el siguiente patr贸n:
RA-<Fecha>-<Correlativo>
RA
: Valor constante<Fecha>
: Fecha de la comunicaci贸n de baja en formatoYYYYMMDD
.<Correlativo>
: Correlativo definido por el emisor, puede contener hasta 5 digitos.
#
EjemploEn este ejemplo daremos de baja una factura y una nota de cr茅dito relacionada a factura.
Datos de los comprobantes
N掳 | Fecha emisi贸n | Tipo | Serie | Correlativo | Motivo |
---|---|---|---|---|---|
1 | 2020-10-15 | 01 | F001 | 111 | ERROR DE SISTEMA |
2 | 2020-10-15 | 07 | FC01 | 23 | ERROR EN RUC |
#
XMLEl estructura del XML para una comunicacion de baja.
#
FirmaSeguiremos la gu铆a de la secci贸n firma, el resultado del documento firmado se puede descargar aqu铆.
#
Envio a SUNAT.Primero definiremos la nomenclatura de este documento, tendremos en cuenta la referencia de la seccion anterior de webservices.
{RUC}-RA-{FECHA}-{CORRELATIVO}.xml
Sigla | Descripci贸n |
---|---|
RUC | Ruc del emisor |
FECHA | Fecha generaci贸n del documento (formato: YYYYMMDD ) |
CORRELATIVO | Correlativo del documento (m谩xima longitud: 5 ) |
El proceso de comunicar a SUNAT es un proceso as铆ncrono, eso quiere decir que no obtendremos la respuesta de SUNAT en la petici贸n inicial sino que tendremos que hacer una segunda petici贸n para saber el resultado.
Los m茅todos SOAP
a utilizar son:
sendSummary
: Env铆o de la comunicaci贸n de baja.getStatus
: Obtener el resultado de la comunicaci贸n de baja.
Realizaremos la compresi贸n del archivo xml, con nombre: 20123456789-RA-20201018-1.zip
, y
a continuaci贸n la incluiremos en la trama SOAP, muy similar al env铆o de factura.
Ahora invocaremos el servicio SOAP utilizando curl
.
Obtendr茅mos como resultado un n煤mero de ticket
= 1603058796047, que nos servir谩 para consultar el CDR de la comunicaci贸n de baja, con la siguiente trama:
Invocando el servicio SOAP.
El resultado ser谩 el siguiente.
Referencia sobre statusCode
:
statusCode | Descripcion |
---|---|
0 | Proceso correctamente, el campo content contendr谩 el resultado |
98 | En proceso, necesitas volver a consultar |
99 | Proceso con errores, el campo content contendr谩 el resultado |
Guardamos el valor de la marca ZIP_BASE64_RESPONSE
en un archivo response.txt
, para proceder a decodificarlo y obtener el ZIP que contiene la respuesta.
En result.zip
ubicaremos el XML del CDR donde nos indicar que el documento fue aceptado. M谩s informacion sobre CDR en la secci贸n de webservices.