Facturación (WSFEv1)
Emitir factura
Emitir factura A, B o C con CAE mediante WSFEv1.
Emite una factura electrónica (tipo A, B o C) y devuelve el CAE asignado por ARCA.
Endpoint
POST /api/wsfe/facturasRequest
curl -X POST https://arca.api.com.ar/api/wsfe/facturas \
-H "Authorization: Bearer ak_TuSecretoAqui" \
-H "Content-Type: application/json" \
-H "Idempotency-Key: pedido-uuid-1234" \
-d '{
"environment": "homologacion",
"representada": "27111111118",
"cbteTipo": 6,
"ptoVta": 1,
"docTipo": 80,
"docNro": "30999888777",
"concepto": 1,
"condicionIvaReceptorId": 1,
"items": [
{
"cantidad": 2,
"descripcion": "Servicio de consultoría",
"precioUnitario": 10000.00,
"alicuotaIva": 21
}
]
}'Parámetros
| Campo | Tipo | Descripción |
|---|---|---|
environment | "homologacion" | "produccion" | Entorno de ARCA |
representada | string (11 dígitos) | CUIT representado que emite |
cbteTipo | number | Tipo de comprobante: 1 (Fac A), 6 (Fac B), 11 (Fac C) |
ptoVta | number | Punto de venta |
docTipo | number | Tipo de documento del receptor (ej. 80 = CUIT, 96 = DNI) |
docNro | string | Número de documento del receptor |
concepto | number | 1 = Productos, 2 = Servicios, 3 = Productos y servicios |
condicionIvaReceptorId | number | Condición IVA del receptor |
items | array | Lista de ítems (ver debajo) |
cbteFch | string (opcional) | Fecha del comprobante YYYYMMDD (default: hoy) |
moneda | string (opcional) | Código de moneda (default: "PES") |
cotizacion | number (opcional) | Cotización (default: 1) |
fchServDesde | string (obligatorio si concepto = 2 o 3) | Fecha inicio servicio YYYYMMDD |
fchServHasta | string (obligatorio si concepto = 2 o 3) | Fecha fin servicio YYYYMMDD |
fchVtoPago | string (obligatorio si concepto = 2 o 3) | Fecha vencimiento de pago YYYYMMDD |
Ítems (items[])
| Campo | Tipo | Descripción |
|---|---|---|
cantidad | number | Cantidad de unidades |
descripcion | string | Descripción del ítem |
precioUnitario | number | Precio unitario neto (sin IVA) |
alicuotaIva | number | Alícuota de IVA en porcentaje: 0, 2.5, 5, 10.5, 21, 27 |
El sistema calcula automáticamente ImpNeto, ImpIVA, ImpTotal y el desglose de IVA por alícuota. Para factura tipo C, no se discrimina IVA y alicuotaIva es ignorado.
Idempotencia
Podés enviar el header Idempotency-Key con cualquier string único (UUID, ID de tu sistema, etc.). Si reenviás la misma solicitud con la misma key, el sistema devuelve el comprobante ya emitido sin volver a llamar a ARCA.
Idempotency-Key: pedido-uuid-1234Respuesta exitosa
{
"resultado": "A",
"cae": "75050000000001",
"caeFchVto": "20251225",
"cbteNro": 42,
"ptoVta": 1,
"cbteTipo": 6,
"observaciones": [],
"errores": [],
"pdfUrl": null
}Comprobante rechazado
Si ARCA rechaza el comprobante devuelve HTTP 422:
{
"resultado": "R",
"cae": null,
"caeFchVto": null,
"cbteNro": null,
"ptoVta": 1,
"cbteTipo": 6,
"observaciones": [
{ "code": 10048, "msg": "El importe no coincide con el calculado" }
],
"errores": [],
"pdfUrl": null
}Errores
| Status | Descripción |
|---|---|
400 | Parámetro inválido o cbteTipo no soportado |
401 | API key ausente o inválida |
402 | Cuota de facturación agotada (solo en producción) |
403 | CUIT representado no encontrado o sin certificado en ese entorno |
422 | ARCA rechazó el comprobante (ver observaciones) |
502 | Error de comunicación con ARCA |