Saltearse al contenido

Lista links de pago

GET
/v1/pagos/links

Listado paginado de los links de cobro de la cuenta. Los filtros están documentados uno por uno en los parámetros de query.

Estados posibles: borrador, pendiente, en_verificacion, pagada, expirada, anulada, fallida.

en_verificacion NO significa fallido: es un cobro cuyo resultado real todavía se está confirmando contra la red de pagos. Nunca lo trates como impago.

Para encontrar el link de una orden tuya, filtrá por referenciaIntegrador (igualdad exacta) en vez de paginar el listado.

Alcance requerido: pagos:leer. Si la credencial no lo tiene, la respuesta es 403 API_ALCANCE_INSUFICIENTE con la lista en error.requerido. Las credenciales creadas antes del modelo de alcances (alcances: null) conservan acceso total.

La empresa sale de la credencial. No hay ningún parámetro ni campo de cuerpo que la elija: cada API_KEY opera sobre su propia EFacturaCuenta. La ÚNICA excepción es la cabecera x-cuenta-id de una credencial de revendedor, que apunta a una subcuenta de su cartera. Si integrás empresas que no son de tu cartera, usá una API_KEY por empresa.

pagina

Página, desde 1

integer
>= 1
Ejemplo
1

Página, desde 1

porPagina

Filas por página (máx. 200)

integer
>= 1 <= 200
Ejemplo
20

Filas por página (máx. 200)

ordenarPor

Campo por el que ordenar

string
<= 64 characters

Campo por el que ordenar

orden
string
Allowed values: asc desc
busqueda

Búsqueda parcial libre

string
<= 255 characters

Búsqueda parcial libre

desde

Fecha desde, YYYY-MM-DD

string
Ejemplo
2026-09-01

Fecha desde, YYYY-MM-DD

hasta

Fecha hasta, YYYY-MM-DD

string
Ejemplo
2026-09-30

Fecha hasta, YYYY-MM-DD

estado
string
Allowed values: borrador pendiente en_verificacion pagada expirada anulada fallida
clienteId
string format: uuid
moneda

Moneda del cobro (ISO-4217). Se procesan únicamente UYU y USD: cualquier otra devuelve 422 PAGOS_MONEDA_NO_SOPORTADA.

string
Allowed values: UYU USD
Ejemplo
UYU

Moneda del cobro (ISO-4217). Se procesan únicamente UYU y USD: cualquier otra devuelve 422 PAGOS_MONEDA_NO_SOPORTADA.

referenciaIntegrador

Referencia del cobro en TU sistema (orden, carrito, socio). Filtra por igualdad exacta, no parcial: es el camino para responder “¿cuál es el cobro de mi orden 12345?”. Para búsqueda parcial está busqueda, que también la mira.

string
<= 128 characters
Ejemplo
orden-12345

Referencia del cobro en TU sistema (orden, carrito, socio). Filtra por igualdad exacta, no parcial: es el camino para responder “¿cuál es el cobro de mi orden 12345?”. Para búsqueda parcial está busqueda, que también la mira.

x-cuenta-id
string format: uuid
Ejemplo
0199d1b0-0000-7000-8000-000000000000

Sólo para credenciales de cuenta proveedora (revendedor). UUID de la subcuenta de la cartera sobre la que se quiere operar: la cuenta efectiva del request pasa a ser esa.

Una credencial que no es de proveedor, o una subcuenta que no está en su cartera, recibe 403 API_CUENTA_FUERA_DE_CARTERA. Sin la cabecera, la cuenta es siempre la de la credencial.

x-branch-id
string format: uuid

Sucursal contra la que operar, cuando la credencial es global. Si la credencial está fijada a una sucursal y esta cabecera indica otra, la respuesta es 403 API_ACCESS_BRANCH_MISMATCH. Sin la cabecera se asume la casa central.

x-point-id
string format: uuid

Punto de emisión dentro de la sucursal resuelta. Obligatorio cuando la sucursal tiene 2 o más puntos activos (400 PUNTO_EMISION_REQUERIDO si falta); con uno solo se selecciona automáticamente.

Links de la cuenta

object
Ejemplos
{
"data": [
{
"id": "8f14e45f-ceea-467a-9f5a-2b1c3d4e5f60",
"referenciaExterna": 1042,
"referenciaIntegrador": "orden-12345",
"estado": "pagada",
"monto": "1234.56",
"moneda": "UYU",
"clienteId": "7e6d5c4b-3a2f-4e1d-9c8b-7a6f5e4d3c2b",
"cfeEmitidoId": null,
"politicaFiscal": "facturar_al_cobrar",
"descripcion": "Orden 12345",
"medios": [
"cards"
],
"redirectUrl": "https://pagos.ejemplo.com/checkout/abc123",
"expiraEn": "2026-09-19T23:59:59.000-03:00",
"tieneBorrador": true,
"createdAt": "2026-09-12T10:25:00.000-03:00"
}
],
"meta": {
"paginacion": {
"pagina": 1,
"porPagina": 20,
"totalFilas": 1,
"totalPaginas": 1
}
}
}

No autenticado. La API_KEY no fue enviada, no es válida o la credencial está desactivada.

Códigos posibles: API_AUTH_HEADER_MISSING, API_AUTH_HEADER_INVALID, API_ACCESS_INVALID.

object
error
required
object
code
required

Identificador estable del error en SCREAMING_SNAKE_CASE

string
message
required

Mensaje legible en español. No parsearlo: puede cambiar

string
details
Any of:
object
requerido

Sólo en 403 API_ALCANCE_INSUFICIENTE: alcances que habilitan la operación

Array<string>
Allowed values: cfe:emitir cfe:leer recibidos:leer consultas clientes:leer clientes:escribir pagos:leer pagos:cobrar pagos:tarjetas pagos:suscripciones pagos:configurar webhooks:gestionar
requestId

UUID de correlación; mismo valor que el header X-Request-ID

string format: uuid
Ejemplos

Falta header Authorization

{
"error": {
"code": "API_AUTH_HEADER_MISSING",
"message": "Se esperaba la cabecera Authorization con esquema Bearer"
},
"requestId": "5b2c7c8a-1f6e-4d29-9a0b-7c3a8d1e2f4c"
}

El módulo de cobros no está habilitado para esta cuenta, o la credencial no tiene el alcance que la operación exige. Son dos cosas distintas y se corrigen distinto:

CodeQué pasóCómo se corrige
PAGOS_NO_HABILITADOLa cuenta no tiene el módulo de cobrosEs una habilitación comercial: la hace administración, no se activa desde la API
API_ALCANCE_INSUFICIENTELa credencial no tiene el alcance (va en error.requerido)Editar la credencial en Integraciones → API
API_CUENTA_FUERA_DE_CARTERAx-cuenta-id apunta a una cuenta ajena a la carteraRevisar el UUID de la subcuenta

Ninguno se arregla reintentando.

object
error
required
object
code
required

Identificador estable del error en SCREAMING_SNAKE_CASE

string
message
required

Mensaje legible en español. No parsearlo: puede cambiar

string
details
Any of:
object
requerido

Sólo en 403 API_ALCANCE_INSUFICIENTE: alcances que habilitan la operación

Array<string>
Allowed values: cfe:emitir cfe:leer recibidos:leer consultas clientes:leer clientes:escribir pagos:leer pagos:cobrar pagos:tarjetas pagos:suscripciones pagos:configurar webhooks:gestionar
requestId

UUID de correlación; mismo valor que el header X-Request-ID

string format: uuid
Ejemplos

La cuenta no tiene el módulo de cobros

{
"error": {
"code": "PAGOS_NO_HABILITADO",
"message": "El módulo de pagos no está habilitado para esta cuenta. Es una habilitación comercial: la hace administración, no se activa desde la API."
},
"requestId": "4c5d6e7f-8a9b-4c0d-1e2f-3a4b5c6d7e8f"
}

Rate limit excedido. Esperá los segundos del header Retry-After. La cuota va por credencial: 60 req/min en cuentas estándar, 600 en cuentas proveedor.

object
error
required
object
code
required

Identificador estable del error en SCREAMING_SNAKE_CASE

string
message
required

Mensaje legible en español. No parsearlo: puede cambiar

string
details
Any of:
object
requerido

Sólo en 403 API_ALCANCE_INSUFICIENTE: alcances que habilitan la operación

Array<string>
Allowed values: cfe:emitir cfe:leer recibidos:leer consultas clientes:leer clientes:escribir pagos:leer pagos:cobrar pagos:tarjetas pagos:suscripciones pagos:configurar webhooks:gestionar
requestId

UUID de correlación; mismo valor que el header X-Request-ID

string format: uuid
Ejemplos

Excediste el rate limit

{
"error": {
"code": "API_RATE_LIMITED",
"message": "Se superó el límite de requests para esta API key"
},
"requestId": "5b2c7c8a-1f6e-4d29-9a0b-7c3a8d1e2f4c"
}
Retry-After
integer
Ejemplo
42

Segundos hasta que se libera la ventana de rate limit

No se pudo verificar la habilitación del módulo (PAGOS_ESTADO_INDETERMINADO), o falta la clave maestra de cifrado de secretos (PAGOS_CLAVE_MAESTRA_AUSENTE). Nada que corregir del lado del integrador: reintentar.

object
error
required
object
code
required

Identificador estable del error en SCREAMING_SNAKE_CASE

string
message
required

Mensaje legible en español. No parsearlo: puede cambiar

string
details
Any of:
object
requerido

Sólo en 403 API_ALCANCE_INSUFICIENTE: alcances que habilitan la operación

Array<string>
Allowed values: cfe:emitir cfe:leer recibidos:leer consultas clientes:leer clientes:escribir pagos:leer pagos:cobrar pagos:tarjetas pagos:suscripciones pagos:configurar webhooks:gestionar
requestId

UUID de correlación; mismo valor que el header X-Request-ID

string format: uuid
Ejemplos

No se pudo leer el flag de pagos

{
"error": {
"code": "PAGOS_ESTADO_INDETERMINADO",
"message": "No se pudo verificar si el módulo de pagos está habilitado para esta cuenta. Reintentá."
},
"requestId": "0f4a1c2e-5b6d-4e7f-8a9b-0c1d2e3f4a5b"
}