Saltar al contenido
VeloraBlog
← Todos los artículos

13 de junio de 2026

Errores 10037, 10038 y 10039 ARCA: MonId y MonCotiz al facturar en WSFEv1

Todo comprobante de WSFEv1 lleva moneda (MonId) y cotización (MonCotiz), incluso si facturás en pesos. AFIP rechaza con error 10037 si MonId falta o no es un código válido de FEParamGetTiposMonedas, 10038 si MonCotiz no es mayor a 0, y 10039 si la moneda es pesos (MonId=PES) y MonCotiz no es exactamente 1.

MonId y MonCotiz van siempre, también en pesos

Un error típico de la primera integración: armás la factura en pesos y te olvidás de la moneda, porque "si es en pesos, ¿para qué?". Pero WSFEv1 exige MonId (código de moneda) y MonCotiz (cotización) en TODOS los comprobantes. Para una factura en pesos el valor es MonId='PES' y MonCotiz=1. Si faltan o están mal, FECAESolicitar devuelve Resultado="R" con uno de los códigos 10037, 10038 o 10039 — todas validaciones excluyentes que bloquean el CAE.

Qué valida cada código (textual del manual)

CódigoRegla
10037MonId es obligatorio y debe ser un valor devuelto por FEParamGetTiposMonedas
10038MonCotiz es obligatorio y mayor a 0
10039Si MonId=PES (pesos), MonCotiz debe ser igual a 1

Citas textuales del manual oficial de ARCA (WSFEv1):

  • 10037 → «El campo <MonId> es obligatorio y debe corresponder a algún valor devuelto por el método FEParamGetTiposMonedas».
  • 10038 → «El campo <MonCotiz> es obligatorio, mayor a 0».
  • 10039 → «El campo <MonCotiz> es obligatorio, e igual a 1 cuando se trate de <MonId>=PES».

Ejemplo: pesos vs. moneda extranjera

// Factura en pesos: SIEMPRE MonId 'PES' y MonCotiz 1
const enPesos = { MonId: 'PES', MonCotiz: 1 };

// Factura en dólares: MonCotiz = cotización del día (> 0).
// 'DOL' es el código habitual del dólar, pero confirmá los códigos
// válidos con FEParamGetTiposMonedas — no los inventes (evita 10037).
const enDolar = { MonId: 'DOL', MonCotiz: 1250.5 };

Checklist:

  1. MonId presente y tomado de FEParamGetTiposMonedas → evita 10037.
  2. MonCotiz > 0 → evita 10038.
  3. Si MonId === 'PES' entonces MonCotiz === 1 → evita 10039.