Descripción general
Generá el link de pago de Mercado Pago de un comprobante emitido y detectá el pago por consulta.
Los cobros conectan un comprobante emitido con un link de pago de Mercado Pago: emitís la factura, generás el link, se lo pasás a tu cliente y consultás si te pagó.
Esto es vos cobrándole a tus clientes, no arca.api cobrándote a vos. La plata va directo a tu cuenta de Mercado Pago; nosotros sólo creamos la preferencia de Checkout Pro con tu autorización.
El flujo completo
1. Conectar Mercado Pago ← en el dashboard, una sola vez (no por API)
2. Emitir el comprobante POST /api/wsfe/facturas
3. Generar el link de cobro POST /api/wsfe/comprobante/cobro
4. Pasarle el link a tu cliente ← por tu canal
5. Consultar si pagó POST /api/wsfe/comprobante/cobro/estadoOperaciones disponibles
| Operación | Endpoint | Scope |
|---|---|---|
| Generar el link de cobro | POST /api/wsfe/comprobante/cobro | read_write |
| Consultar el estado del cobro | POST /api/wsfe/comprobante/cobro/estado | Cualquiera |
| Estado de la conexión | GET /api/cobros/estado | Cualquiera |
Que generar y consultar sean dos endpoints y no uno es deliberado: generar un link crea algo en Mercado Pago y exige read_write, mientras que preguntar si te pagaron no modifica nada. Con un solo endpoint, una key de solo lectura —justo la que le das a un sistema de monitoreo o a un agente— no podría consultar. Ver Scopes de API key.
Cuota
Ninguno de los tres consume cuota del plan: no llaman a ARCA. Sí quedan registrados como consumo en la sección Consumo del dashboard, para que puedas diagnosticarlos.
Límites del flujo
Ninguno de estos es deducible leyendo los endpoints, así que van explícitos.
Conectar Mercado Pago es un paso de dashboard
No se puede hacer por API. La conexión es un OAuth: requiere que una persona entre a Mercado Pago y autorice a arca.api a crear preferencias en su nombre. No hay forma de automatizarlo con una API key.
Se hace una sola vez, desde la sección Cobros del dashboard. Después, todo lo demás es por API. Podés verificar por API si la cuenta está conectada con GET /api/cobros/estado.
El link no viaja en la respuesta de la emisión
Cuando emitís con Mercado Pago conectado, el link se genera automáticamente… pero después de que te respondimos. Crear una preferencia son segundos contra un tercero, y nada puede demorar el CAE de tu comprobante.
Por eso la respuesta de POST /api/wsfe/facturas nunca trae el link, y por eso existe un endpoint dedicado: POST /api/wsfe/comprobante/cobro te devuelve el que ya se creó (status: "exists") o lo crea si todavía no existía.
No emitimos webhooks salientes
arca.api no te avisa cuando te pagan. No hay forma de registrar una URL tuya para recibir notificaciones.
Enterarte de un pago es por consulta: ver el patrón recomendado.
El webhook que sí existe es el entrante, de Mercado Pago hacia nosotros, que actualiza el estado del cobro en tu cuenta. Es interno: no lo configurás vos y no te llega nada. Ver Conciliación automática.
La moneda tiene que ser pesos
Mercado Pago Argentina cobra en pesos. Un comprobante emitido en otra moneda (moneda: "DOL", por ejemplo) no puede cobrarse por este camino: el pedido de link devuelve status: "skipped" con el motivo. Los comprobantes de exportación (WSFEX), que son en moneda extranjera, quedan naturalmente fuera.
Los entornos tienen que coincidir
El environment del comprobante y el de la cuenta de Mercado Pago conectada tienen que ser el mismo. No es que "homologación no cobra": homologación con una cuenta de prueba de Mercado Pago es exactamente donde se ejercita el circuito completo. Lo que no puede pasar es cruzarlos, porque las dos combinaciones hacen daño en direcciones opuestas:
| Comprobante | Cuenta de Mercado Pago | Qué pasaría |
|---|---|---|
| Homologación | Productiva | Le cobrás plata real por un comprobante sin valor fiscal |
| Producción | De prueba | Le mandás un link que parece bueno y no cobra nada |
Ninguna de las dos es recuperable una vez que el link salió, así que el cruce se rechaza con status: "skipped". Para saber en qué entorno está tu conexión, consultá GET /api/cobros/estado.
Autenticación
Todos los endpoints requieren una API key válida en el header Authorization: Bearer <key>. Ver API keys.
Errores
| Status | Descripción |
|---|---|
400 | El request no pasó la validación |
401 | API key ausente, inválida o revocada |
403 | La API key es de solo lectura (sólo al generar el link) |
403 | La representada no existe en tu cuenta o no tiene certificado en ese entorno |
404 | El comprobante no existe |
Un 200 no significa que el link se haya generado. Los desenlaces del pedido de link viajan en el campo status del body, no en el código HTTP: leelo siempre. Ver Generar el link de cobro.