Contenido de la documentación

/ Comprobantes

Notas de crédito

Corrige o anula comprobantes ya aceptados: devoluciones, descuentos posteriores y errores de datos.

Crear nota de crédito

POST/notas-credito

Una nota de crédito (tipo 07) modifica un comprobante ya emitido. Los ítems representan lo que se revierte y los montos van siempre en positivo. Para notas sobre facturas usa series FC01; sobre boletas, BC01.

Documento afectado y motivo

doc_afectado_tipostringObligatorio
01 factura, 03 boleta o 12 ticket.
doc_afectado_seriestringObligatorio
Serie del comprobante original.
doc_afectado_correlativostringObligatorio
Correlativo del comprobante original.
cod_motivostringObligatorio
Código del motivo (tabla siguiente).
des_motivostringObligatorio
Descripción libre, máx. 250.

Además llevan serie, fecha_emision, tipo_moneda, cliente e items, como en una factura.

Motivos (catálogo 09)

CódigoMotivo
01Anulación de la operación
02Anulación por error en el RUC
03Corrección por error en la descripción
04Descuento global
05Descuento por ítem
06Devolución total o parcial
07Bonificación
08Disminución en el valor
09Otros

El total de la nota no puede superar el del comprobante que modifica (en boletas, con 1 sol de tolerancia). Si lo supera, la API responde 422 con el error ERR-3286/3503.

curl -X POST "https://apifact.gavi-cloud.com/api/v1/notas-credito" \
  -H "X-Api-Key: TU_API_KEY" \
  -H "X-Api-Secret: TU_API_SECRET" \
  -H "Content-Type: application/json" \
  -d '{
    "serie": "FC01",
    "fecha_emision": "2026-10-05",
    "cliente": {
      "tipo_doc": "6",
      "num_doc": "20555666777",
      "razon_social": "ACME CORP SAC"
    },
    "doc_afectado_tipo": "01",
    "doc_afectado_serie": "F001",
    "doc_afectado_correlativo": "00000123",
    "cod_motivo": "06",
    "des_motivo": "Devolución por defecto de fábrica",
    "items": [
      {
        "descripcion": "LAPTOP HP PAVILION 15",
        "unidad": "NIU",
        "cantidad": 1,
        "precio_unitario": 2950,
        "tip_afe_igv": "10"
      }
    ]
  }'
Respuesta201 Created
{
  "estado": "exito",
  "mensaje": "Nota de crédito creada y encolada para envío a SUNAT.",
  "datos": {
    "id": 67,
    "tipo_documento": "07",
    "numero_completo": "FC01-67",
    "doc_afectado": {
      "tipo": "01",
      "numero_completo": "F001-123"
    },
    "cod_motivo": "06",
    "mto_imp_venta": "2950.00",
    "sunat_status": "pendiente"
  }
}

Casos frecuentes

SituaciónQué enviar
Anular una factura completacod_motivo: "01" con todos los ítems del original
Devolución parcialcod_motivo: "06" solo con lo devuelto
Descuento posteriorcod_motivo: "04" (global) o "05" (por ítem)
RUC mal digitadocod_motivo: "02" y luego emite una factura nueva con el RUC correcto

Listar notas de crédito

GET/notas-credito

Devuelve los comprobantes de tu empresa, paginados y filtrables.

Parámetros de consulta

searchstring
Búsqueda libre: razón social, documento, serie o correlativo.
seriestring
Serie exacta (F001) o con comodín (F0%).
client_num_docstring
RUC o DNI exacto del cliente.
sunat_statusstring
pendiente, enviado, aceptado, rechazado o anulado. Acepta varios separados por coma.
fecha_desdedate
Fecha de emisión mínima (yyyy-mm-dd).
fecha_hastadate
Fecha de emisión máxima.
monto_minnumber
Total mínimo.
monto_maxnumber
Total máximo.
sucursal_idinteger
Filtra por sucursal.
constring
Relaciones a incluir: items, payments.
ordenar_porstring
fecha_emision, correlativo, mto_imp_venta, created_at (por defecto).
ordenstring
desc (por defecto) o asc.
por_paginainteger
Por defecto 15, máximo 100.
curl "https://apifact.gavi-cloud.com/api/v1/notas-credito?sunat_status=aceptado&fecha_desde=2026-10-01&fecha_hasta=2026-10-31" \
  -H "X-Api-Key: TU_API_KEY" \
  -H "X-Api-Secret: TU_API_SECRET"
Respuesta200 OK
{
  "estado": "exito",
  "datos": {
    "datos": [
      "..."
    ],
    "paginacion": {
      "pagina_actual": 1,
      "ultima_pagina": 8,
      "por_pagina": 15,
      "total": 112
    }
  }
}

Ver nota de crédito

GET/notas-credito/{id}

Devuelve el comprobante con sus ítems, pagos, estado SUNAT y, si ya fue rechazado, el código y descripción del error.

curl "https://apifact.gavi-cloud.com/api/v1/notas-credito/123" \
  -H "X-Api-Key: TU_API_KEY" \
  -H "X-Api-Secret: TU_API_SECRET"

XML, CDR y PDF

Con el id de la nota de crédito descargas cada archivo. El PDF admite formato A4, A5 o ticket. El CDR está disponible cuando SUNAT aceptó el comprobante.

MétodoRutaDevuelve
GET/notas-credito/{id}/xmlXML firmado
GET/notas-credito/{id}/cdrCDR de SUNAT
GET/notas-credito/{id}/pdfRepresentación impresa
POST/notas-credito/{id}/reenviarReenvía a SUNAT un comprobante pendiente o rechazado
curl "https://apifact.gavi-cloud.com/api/v1/notas-credito/123/pdf" \
  -H "X-Api-Key: TU_API_KEY" \
  -H "X-Api-Secret: TU_API_SECRET"