Facturar ventas de Mercado Libre con ARCA en n8n
Tutorial para conectar órdenes de Mercado Libre con Afip SDK en n8n y emitir facturas electrónicas de ARCA con control de datos fiscales e idempotencia.
Descargá el workflow mercadolibre-arca-invoice.json para importarlo en n8n y adaptarlo a tu cuenta de Mercado Libre.
Mercado Libre requiere más cuidado que una tienda propia: las notificaciones sirven para enterarte de cambios, pero la factura debe salir después de consultar la orden, el pago, el envío y los datos de facturación disponibles.
La integración recomendada usa notificaciones de Mercado Libre, API de órdenes/pagos y Afip SDK en n8n.
Documentación útil:
- Developers Mercado Libre: https://developers.mercadolibre.com.ar/
- Órdenes y ventas: https://developers.mercadolibre.com.ar/es_ar/gestiona-ventas
- Notificaciones: https://developers.mercadolibre.com.ar/es_ar/notificaciones
- Facturación en Mercado Libre: https://developers.mercadolibre.com.ar/es_ar/facturacion
- Nodo Afip SDK para n8n: https://n8n.io/integrations/afip-sdk/
Cómo funciona la integración
- Mercado Libre notifica una novedad de orden.
- n8n recibe la notificación en un nodo Webhook.
- n8n consulta la orden por API usando el
resourcerecibido. - n8n consulta pagos y envío si la orden lo requiere.
- n8n valida si la venta está pagada y lista para facturar.
- n8n arma el payload fiscal.
- Afip SDK emite la factura electrónica.
- n8n guarda el resultado en un backoffice, ERP o sistema de control.
Paso 1: recibir notificaciones
En Mercado Libre, configurá la aplicación para recibir notificaciones del recurso de órdenes. El payload suele traer un resource que después tenés que consultar con API.
En n8n:
- Nodo Webhook con método
POST. - Nodo IF para descartar eventos que no sean de órdenes.
- Nodo HTTP Request para consultar el
resource.
No emitas factura con el payload de la notificación. Usalo sólo para saber qué recurso cambió.
Paso 2: consultar la orden
Con el access token del vendedor:
GET https://api.mercadolibre.com{{ $json.resource }}
Authorization: Bearer {{ $env.MELI_ACCESS_TOKEN }}
Revisá:
status.paid_amount.payments.order_items.buyer.shipping.- Si pertenece a un pack.
Para packs, el recurso puede agrupar varias órdenes o envíos. Tu workflow debe decidir si factura por orden, por pack o desde el ERP que consolida la venta.
Paso 3: validar si corresponde facturar
Agregá un nodo IF antes de Afip SDK:
- La orden debe estar paga.
- No debe tener factura emitida previamente en tu registro.
- No debe estar cancelada.
- Debe tener datos fiscales suficientes o una regla de consumidor final.
Mercado Libre puede no entregar todos los datos fiscales que necesitás en el mismo recurso. Si tu operación necesita CUIT y razón social, pedilos por mensajería, formulario externo o integrá tu ERP como fuente de datos fiscales.
Paso 4: mapear items
Desde order_items, armá líneas fiscales:
const order = $json;
const items = order.order_items.map((line) => ({
description: line.item.title,
quantity: line.quantity,
unitPrice: line.unit_price,
sku: line.item.seller_sku,
}));
return [{
json: {
externalId: `meli:${order.id}`,
buyerId: order.buyer.id,
paymentIds: order.payments?.map((payment) => payment.id) || [],
totalAmount: order.paid_amount,
items,
},
}];
No sumes comisiones de Mercado Libre ni costos internos de marketplace como parte de la venta al comprador.
Paso 5: datos fiscales
Definí una política:
- Si el comprador informó CUIT y razón social, emití factura A o B según corresponda.
- Si no hay CUIT y aplica consumidor final, usá factura B con los datos permitidos por tu operación.
- Si faltan datos obligatorios, pausá el flujo y notificá.
Guardá siempre:
- Order id.
- Pack id, si existe.
- Buyer id.
- Payment ids.
- Número de comprobante ARCA.
- CAE y vencimiento.
Paso 6: emitir con Afip SDK
El tramo Afip SDK es:
- Autorización para
wsfe. FECompUltimoAutorizado.FECAESolicitar.- Generar el PDF con el template de Afip SDK.
Usá como clave de idempotencia meli:{order.id} o meli-pack:{pack_id} según tu definición operativa.
Paso 7: guardar o subir la factura
Mercado Libre tiene flujos propios de facturación y carga/descarga de documentos según país, cuenta y tipo de operación. Si no vas a subirla a Mercado Libre desde API, al menos guardá el comprobante en tu ERP o panel interno y enviá el PDF al cliente por el canal permitido.
Errores comunes
- Facturar apenas llega una notificación sin consultar estado actual.
- Duplicar facturas por notificaciones repetidas.
- Facturar un pack dos veces.
- No diferenciar total cobrado, envío, descuentos y cargos internos.
- Asumir que Mercado Libre siempre trae CUIT y condición fiscal completa.
Cierre
En Mercado Libre, n8n debe ser conservador: recibir notificaciones, consultar estado actual, validar datos y recién después llamar a Afip SDK. La trazabilidad entre orden, pago, pack y comprobante es lo más importante.