> ## Documentation Index
> Fetch the complete documentation index at: https://docs.vitawallet.io/llms.txt
> Use this file to discover all available pages before exploring further.

# Agencias de viaje y turismo

> Cobra reservas en moneda local y paga a hoteles, operadores y aerolíneas internacionales con una sola integración.

Agencias, mayoristas, plataformas de reservas y aerolíneas cobran a viajeros en su país y pagan a hoteles, anfitriones y operadores en otros. El desfase de monedas y países es justo lo que la API simplifica.

## Flujo

```mermaid theme={null}
sequenceDiagram
  participant Traveler as Viajero
  participant Agency as Tu agencia
  participant Vita as Vita API
  participant Provider as Hotel / operador

  Traveler->>Agency: Reserva
  Agency->>Vita: POST /payment_orders
  Vita-->>Agency: payment_url (vence en 15 min)
  Traveler->>Vita: Paga
  Vita-->>Agency: Webhook payment_order.paid
  Agency->>Agency: Emite reserva
  Agency->>Vita: GET /prices
  Agency->>Vita: POST /transactions (withdrawal)
  Vita-->>Provider: Pago en moneda del destino
  Vita-->>Agency: Webhook transaction.completed
```

## Paso a paso

**1. Cobra la reserva en moneda local**

Enlace de pago con `POST /payment_orders` o checkout propio con **Direct Payment**.

> [!WARNING]
>
> El enlace de pago vence en **15 minutos**. Crea la orden recién cuando el viajero esté listo para pagar — no antes.

**2. Confirma y emite**

Con el webhook `payment_order.paid` confirma la reserva. Si el viajero abandona, el estado pasa a `expired` y puedes liberar el inventario.

**3. Paga al proveedor**

Calcula el monto con `GET /prices` y crea el pago con `POST /transactions` y `transactions_type: "withdrawal"` a la cuenta del proveedor en su país.

**4. Concilia**

Cruza cada reserva con su `order` en `GET /transactions` y con los eventos de `GET /events`.

## Buenas prácticas

> [!TIP]
>
> Usa un `order` por **reserva** (cobro) y otro por **pago al proveedor**. No reutilices el mismo identificador entre tramos.

> [!TIP]
>
> Los pagos de una misma cuenta se procesan en fila: **no dispares varios a la vez** ni reintentes con otro `order` si el primero sigue en curso.

> [!TIP]
>
> Si pagas a proveedores en dólares desde saldos en moneda local, revisa el paso previo de conversión en [Modelo de balances](https://docs.vitawallet.io/money-model.md).

## Endpoints clave

> [card] [Crear payin](https://docs.vitawallet.io/api-reference/payins/overview.md)
>
> `POST /payment_orders`

> [card] [Precios](https://docs.vitawallet.io/api-reference/vita-sent/overview.md)
>
> `GET /prices`

> [card] [Crear payout](https://docs.vitawallet.io/api-reference/bank-payouts/create-payout.md)
>
> `POST /transactions` con `transactions_type: "withdrawal"`

> [card] [Eventos](https://docs.vitawallet.io/api-reference/webhooks/overview.md)
>
> `GET /events`


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.