ARCA {API}
Exportación (WSFEX)

Emitir Factura E

Emitir una Factura electrónica de exportación (tipo 19) con CAE mediante WSFEX.

Emite una Factura E (tipo de comprobante 19) para exportación y devuelve el CAE asignado por ARCA.

Endpoint

POST /api/wsfex/facturas

Request

curl -X POST https://arca.api.com.ar/api/wsfex/facturas \
  -H "Authorization: Bearer ak_TuSecretoAqui" \
  -H "Content-Type: application/json" \
  -H "Idempotency-Key: expo-uuid-5678" \
  -d '{
    "environment": "homologacion",
    "representada": "27111111118",
    "cbteTipo": 19,
    "ptoVta": 1,
    "dstPais": 203,
    "tipoExpo": 2,
    "idioma": 1,
    "incoterms": "CIF",
    "incotermsDs": "Costo, seguro y flete",
    "moneda": "DOL",
    "monedaCtz": 1050.00,
    "cliente": "Acme Corp",
    "domicilioCliente": "123 Main St, New York, NY 10001",
    "cuitPaisCliente": 50000000016,
    "idImpositivo": "EIN-12-3456789",
    "fechaPago": "20250115",
    "items": [
      {
        "codigo": "SVC-001",
        "descripcion": "Servicio de software",
        "cantidad": 10,
        "unidadMedida": 7,
        "precioUnitario": 500.00
      }
    ]
  }'

Parámetros

CampoTipoDescripción
environment"homologacion" | "produccion"Entorno de ARCA
representadastring (11 dígitos)CUIT del exportador
cbteTipo19Tipo de comprobante Factura E
ptoVtanumberPunto de venta de exportación (obligatorio, ver debajo)
dstPaisnumberCódigo de país destino (ver tabla paises-destino)
tipoExponumberTipo de exportación (ver tabla tipos-exportacion): 1 = exportación definitiva, 2 = servicios
idiomanumberCódigo de idioma del comprobante (ver tabla idiomas): 1 = español
incotermsstringCódigo Incoterms (ver tabla incoterms)
incotermsDsstring (opcional)Descripción libre del Incoterm
monedastringCódigo de moneda (ver tabla monedas): ej. "DOL" para dólar
monedaCtznumberCotización de la moneda en ARS (debe ser mayor a 0)
clientestringRazón social del cliente extranjero
domicilioClientestringDomicilio del cliente extranjero
cuitPaisClientenumberCUIT del país del cliente (ver tabla cuits-destino)
idImpositivostringIdentificación fiscal del cliente en su país
itemsarrayLista de ítems de exportación (ver debajo)
cbteFchstring (opcional)Fecha del comprobante YYYYMMDD (default: hoy)
permisosarray (opcional)Permisos de embarque. Solo se admiten con tipoExpo: 1 (exportación definitiva de bienes); ARCA los rechaza en servicios y en notas
formaPagostring (opcional)Forma de pago
opcionalesarray (opcional)Datos opcionales [{ id, valor }]
fechaPagostringFecha de pago YYYYMMDD. Obligatoria con tipoExpo: 2 (servicios) y tipoExpo: 4 (otros)

Punto de venta

A diferencia de WSFEv1, acá ptoVta es obligatorio.

No es un olvido: los puntos de venta de exportación se dan de alta por separado en ARCA y no son los mismos que los del mercado interno. Un punto habilitado para factura electrónica no queda habilitado para exportación, así que el que configuraste en el dashboard no sirve para deducir éste — y usarlo produciría un rechazo, no un atajo.

Podés ver los tuyos con la tabla puntos-de-venta de parámetros, que consulta WSFEX y devuelve su lista, distinta de la de WSFEv1.

Ítems (items[])

CampoTipoDescripción
codigostring (opcional)Código del producto/servicio
descripcionstringDescripción del ítem
cantidadnumberCantidad
unidadMedidanumberCódigo de unidad de medida (ver tabla unidades-medida): ej. 7 = unidades
precioUnitarionumberPrecio unitario en la moneda declarada
productoIdstring (opcional)Id de un producto guardado. Completa descripcion y precioUnitario

Los comprobantes de exportación no llevan IVA. El sistema calcula Pro_total_item = cantidad × precioUnitario e Imp_total como su suma.

Emitir ítems por referencia

Podés referenciar tu catálogo de productos con productoId en cada ítem, igual que en WSFEv1, con dos límites propios de la exportación:

  • Sólo completa descripcion y precioUnitario. cantidad, unidadMedida y codigo los seguís mandando vos: ninguno es un atributo del catálogo. La alicuotaIva guardada se ignora, porque la exportación no discrimina IVA — un producto sin alícuota se referencia sin problema.
  • clienteId no aplica. El cliente guardado modela un receptor argentino (documento de ARCA y condición frente al IVA); un receptor de exportación necesita país de destino e identificación fiscal del exterior, que el modelo de clientes no tiene. Los campos cliente, domicilioCliente, cuitPaisCliente e idImpositivo se escriben siempre a mano.

Valen las mismas reglas: el valor explícito gana sobre el del catálogo, y una referencia que no se resuelve devuelve 400 antes de llamar a ARCA, sin consumir cuota ni numeración.

precioUnitario va en la moneda declarada del comprobante: el catálogo no guarda moneda, así que si emitís en dólares, un precio traído del catálogo se interpreta como dólares. Revisalo antes de referenciar productos en un comprobante que no sea en pesos.

Permisos de embarque (permisos[])

Solo para exportación de mercaderías (tipoExpo = 1):

CampoTipoDescripción
idPermisostringID del permiso de embarque
dstMercnumberPaís destino de la mercadería

Idempotencia

Idempotency-Key: expo-uuid-5678

Si reenviás la misma solicitud con la misma key, el sistema devuelve el comprobante ya emitido sin duplicar.

Respuesta exitosa

{
  "resultado": "A",
  "cae": "75050000000042",
  "caeFchVto": "20251225",
  "cbteNro": 15,
  "ptoVta": 1,
  "cbteTipo": 19,
  "observaciones": [],
  "errores": []
}

Comprobante rechazado

HTTP 422:

{
  "resultado": "R",
  "cae": null,
  "caeFchVto": null,
  "cbteNro": null,
  "ptoVta": 1,
  "cbteTipo": 19,
  "observaciones": [],
  "errores": [
    { "code": 704, "msg": "La moneda no es válida" }
  ]
}

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