Skip to main content
GET
/
payment-requests
/
{payment_request_id}
Consultar estado de un cobro
curl --request GET \
  --url https://api.tupana.ai/v1/payment-requests/{payment_request_id}/ \
  --header 'Authorization: <api-key>'
{
  "payment_request_id": 1042,
  "status": "paid",
  "payment_url": "https://www.tupana.ai/pagos/tok_xyz",
  "expires_at": "2026-04-06T12:30:00Z",
  "created_at": "2026-04-06T12:00:00Z",
  "amount": 50000,
  "target_dte_type": "39",
  "auto_issue": true,
  "external_id": "booking_abc123",
  "metadata": {},
  "issued_document_id": null,
  "document_ids": []
}

¿Para qué se usa?

Obtiene el estado actual y los detalles completos de una sesión de cobro. Útil como fallback cuando el webhook todavía no llegó pero el usuario ya regresó a tu sitio por redirect.

Qué hace

  • Retorna el estado actual de la sesión (pending, paid, expired).
  • Incluye todos los campos de la sesión: monto, tipo de DTE, auto_issue, external_id y metadata.

Ejemplos de uso

  • Verificar el estado al regresar del redirect: El usuario vuelve a tu sitio y quieres confirmar si pagó antes de mostrarle la pantalla de confirmación.
  • Polling de respaldo: Si por alguna razón no recibiste el webhook, puedes consultar el estado directamente.

Consideraciones importantes

Webhooks son la fuente primaria

El GET es un mecanismo de respaldo. El flujo recomendado es:
  1. Recibir el webhook payment_request.paid y actualizar tu sistema.
  2. Si no llegó el webhook en un tiempo razonable, consulta el GET.
El campo issued_document_id apunta al DTE emitido y puede usarse para consultar el documento en la API de Facturación.

Authorizations

Authorization
string
header
required

API Key para autenticación. Formato: Api-Key YOUR-API-KEY

Path Parameters

payment_request_id
integer
required

ID numérico de la sesión de cobro.

Response

Datos de la sesión de cobro

payment_request_id
integer

ID único de la sesión de cobro.

Example:

1042

status
enum<string>
Available options:
pending,
paid,
issued,
failed,
expired,
refunded
Example:

"pending"

payment_url
string<uri>

URL a la que debes redirigir al usuario para que complete el pago.

Example:

"https://www.tupana.ai/pagos/tok_xyz"

expires_at
string<date-time>

Fecha y hora en que vence la sesión (UTC).

Example:

"2026-04-06T12:30:00Z"

created_at
string<date-time>

Fecha y hora de creación de la sesión (UTC).

Example:

"2026-04-06T12:00:00Z"

amount
number

Monto del cobro en CLP.

Example:

50000

target_dte_type
string | null

Tipo de DTE que se emitirá al pagarse. null en modo cobro directo (no hay DTE a emitir).

Example:

"39"

auto_issue
boolean | null

Si el DTE se emite automáticamente al confirmarse el pago. null en modo cobro directo.

Example:

true

external_id
string | null

Tu ID propio para esta sesión.

Example:

"booking_abc123"

metadata
object

Datos adicionales que enviaste al crear la sesión.

issued_document_id
integer | null

ID del DTE emitido. null mientras la sesión no haya emitido el DTE. Siempre null en modo cobro directo.

Example:

9871

document_ids
integer[]

IDs de los documentos que esta sesión cobra. Lista vacía en modo emisión (donde el DTE se emite al pagarse).

Example:
[9871, 9872]