ARCA {API}
Facturación (WSFEv1)

Notas de crédito y débito

Emitir notas de crédito y débito A, B o C con comprobantes asociados.

Las notas de crédito y débito deben incluir el comprobante original al que hacen referencia mediante comprobantesAsociados.

Nota de crédito

POST /api/wsfe/notas-credito

Tipos soportados: 3 (NC A), 8 (NC B), 13 (NC C), y 203 / 208 / 213 para las MiPyME.

Nota de débito

POST /api/wsfe/notas-debito

Tipos soportados: 2 (ND A), 7 (ND B), 12 (ND C), y 202 / 207 / 212 para las MiPyME.

Request

curl -X POST https://arca.api.com.ar/api/wsfe/notas-credito \
  -H "Authorization: Bearer ak_TuSecretoAqui" \
  -H "Content-Type: application/json" \
  -H "Idempotency-Key: nc-uuid-5678" \
  -d '{
    "environment": "homologacion",
    "representada": "27111111118",
    "cbteTipo": 8,
    "ptoVta": 1,
    "docTipo": 80,
    "docNro": "30999888777",
    "concepto": 1,
    "condicionIvaReceptorId": 1,
    "items": [
      {
        "cantidad": 1,
        "descripcion": "Devolución parcial",
        "precioUnitario": 5000.00,
        "alicuotaIva": 21
      }
    ],
    "comprobantesAsociados": [
      {
        "tipo": 6,
        "ptoVta": 1,
        "nro": 42,
        "cuit": "27111111118"
      }
    ]
  }'

Parámetros adicionales

Igual que emitir factura, más:

CampoTipoDescripción
comprobantesAsociadosarray (requerido)Comprobantes originales a los que refiere esta nota

El campo email funciona igual que en las facturas: si lo mandás y la nota se aprueba, se le envía al destinatario con el PDF adjunto (el asunto y el cuerpo dicen "nota de crédito" o "nota de débito", según el cbteTipo). Ver Envío por email.

Los ítems también aceptan condicionIva ("gravado", "exento" o "no_gravado"): si la factura original tenía un ítem exento, la nota que la acredita tiene que llevarlo igual, o los importes de la nota no van a espejar los del comprobante que corrige.

comprobantesAsociados[]

CampoTipoDescripción
tiponumberTipo del comprobante original
ptoVtanumberPunto de venta del comprobante original
nronumberNúmero del comprobante original
cuitstring (11 dígitos)CUIT del emisor del comprobante original
cbteFchstring (opcional)Fecha del comprobante original YYYYMMDD

Notas sobre una Factura de Crédito Electrónica MiPyME

La nota mantiene la familia y la letra del comprobante que corrige: una FCE A (201) se acredita con una 203 y se debita con una 202.

Lo importante es que la nota no repite los datos de la factura: los tiene prohibidos. Los requisitos son casi el espejo de los del comprobante que corrige:

CampoEn la factura (201/206/211)En la nota (202/203/…/213)
fce.cbu, fce.aliasCbu, fce.opcionTransferenciaObligatorio el cbuProhibidos — los datos del cobro viajan en la factura
fce.anulacionNo aplicaObligatorio (true / false)
fchVtoPagoObligatorioProhibido
comprobantesAsociados[].cbteFchObligatorio (en el resto de las notas es opcional)

Mandar un campo donde no va devuelve 400 antes de llamar a ARCA, con el motivo escrito.

fce.anulacion

Declara qué es la nota: true si anula la factura asociada, false si es una nota común sobre ella (una devolución parcial, un ajuste). No tiene default y no lo suponemos — es la diferencia entre corregir un comprobante y dejarlo sin efecto, y una vez que ARCA otorga el CAE no se deshace.

Una anulación sólo procede mientras el comprador no haya aceptado la factura. Si ya la aceptó, ARCA la rechaza:

10154 · PtoVta:1 - Tipo:201 - Nro:1 - OK - Comprobante electronico autorizado,
        NO rechazado por el Comprador.
curl -X POST https://arca.api.com.ar/api/wsfe/notas-credito \
  -H "Authorization: Bearer ak_TuSecretoAqui" \
  -H "Content-Type: application/json" \
  -d '{
    "environment": "homologacion",
    "representada": "27111111118",
    "cbteTipo": 203,
    "ptoVta": 1,
    "docTipo": 80,
    "docNro": "30999888777",
    "concepto": 1,
    "condicionIvaReceptorId": 1,
    "fce": { "anulacion": false },
    "items": [
      { "cantidad": 1, "descripcion": "Devolución parcial", "precioUnitario": 45000.00, "alicuotaIva": 21 }
    ],
    "comprobantesAsociados": [
      { "tipo": 201, "ptoVta": 1, "nro": 7, "cuit": "27111111118", "cbteFch": "20260210" }
    ]
  }'

Desde el dashboard las notas MiPyME todavía no se generan: el formulario no tiene dónde preguntar si la nota anula la factura. Se emiten por acá, donde fce.anulacion viaja explícito.

Anular o corregir una FCE corre contra los plazos del régimen, que los fija ARCA y no nosotros: si el comprobante ya está fuera de término, el rechazo viene de ARCA y te lo devolvemos tal cual. El resto del circuito —aceptación, rechazo y transferencia al Agente de Depósito Colectivo— no pasa por esta API.

Emitir por referencia (clienteId / productoId)

Las notas comparten el contrato de emisión de las facturas, así que también aceptan clienteId en el comprobante y productoId en cada ítem, con exactamente las mismas reglas:

curl -X POST https://arca.api.com.ar/api/wsfe/notas-credito \
  -H "Authorization: Bearer ak_TuSecretoAqui" \
  -H "Content-Type: application/json" \
  -d '{
    "environment": "homologacion",
    "representada": "27111111118",
    "cbteTipo": 8,
    "ptoVta": 1,
    "concepto": 1,
    "clienteId": "8f1c2b3a-4d5e-6f70-8192-a3b4c5d6e7f8",
    "items": [
      { "productoId": "c3e5a7b9-1d2f-4068-8a9b-0c1d2e3f4a5b", "cantidad": 1 }
    ],
    "comprobantesAsociados": [
      { "tipo": 6, "ptoVta": 1, "nro": 42, "cuit": "27111111118" }
    ]
  }'

comprobantesAsociados no se ve afectado: sigue siendo obligatorio y se escribe siempre a mano. Lo natural es referenciar al mismo cliente al que le emitiste la factura original.

Valen las mismas reglas que en las facturas —el campo explícito gana, el comprobante guarda valores y no punteros, y los mismos errores de resolución con 400 antes de llamar a ARCA—: ver Emitir por referencia.

Respuesta exitosa

{
  "resultado": "A",
  "cae": "75050000000002",
  "caeFchVto": "20251225",
  "cbteNro": 1,
  "ptoVta": 1,
  "cbteTipo": 8,
  "observaciones": [],
  "errores": [],
  "pdfUrl": null
}

Errores

Antes de reintentar una emisión, leé Reintentar sin duplicar el comprobante: un 502 no significa que el comprobante no se haya emitido.

En esta página