---
title: "Prévia de cotação (não cria ordem)"
method: POST
path: "/cash-outs/preview"
tags: ["Cash-out"]
---

# Prévia de cotação (não cria ordem)

`POST /cash-outs/preview`

## Request

- Base URL: `https://api.luniumpay.com`
- URL: `https://api.luniumpay.com/cash-outs/preview`
- Auth: API key in header `X-API-Key`

Prévia de conversão por amount, brl_amount ou br_code, sem criar ordem e sem pix_key. Não reserva saldo, limite ou endereço. Envie exatamente um dos três campos. A criação/aceite aplicam gates adicionais, incluindo limite do recebedor e mandate. A disponibilidade de br_code é validada na prévia e na criação em produção. Sucesso da prévia não garante que a ordem será aceita. Aceita também asset DEPIX na rede liquid (venda de DePix): a conta é da casa, a resposta traz fee_bps, fee_fixed_cents, fee_total_cents, net_cents, min_amount_cents e max_amount_cents. Disponível também no sandbox, com a mesma fórmula da venda e paridade BRL, sem carteira ou destinatário na prévia.

## Request body

- object
  - `asset` string, required: Ativo vendido. Use o id EXATO do GET /catalog (ex.: "usdt"). Combine com network — o par (asset, network) precisa existir no catálogo.
  - `network` string, required: Rede de entrada cripto publicada em GET /catalog. Não confundir com as redes de entrega de /cashin/catalog.
  - `amount` string: Quantidade de cripto em string decimal ("50"), nunca float. Não combine com brl_amount ou br_code. Na criação da ordem, este modo exige pix_key.
  - `brl_amount` string: Alvo em reais para cotação reversa, em string decimal com até 2 casas ("250.00"). Não combine com amount ou br_code. Na criação da ordem, este modo exige pix_key. A resposta informa a quantidade exata de cripto a depositar e o valor efetivo em reais, que pode diferir do alvo por arredondamento. Mostre os valores retornados antes do aceite. Mínimos e limites dependem da rota, da chave e do recebedor; consulte os valores vigentes. (en) Target BRL amount; review the effective quoted BRL and exact crypto deposit amount before accepting.
  - `token_address` string: Endereço/mint exato. Necessário para tokens do `/catalog/dex`, onde símbolos se repetem.
  - `br_code` string: PIX copia e cola de uma COBRANÇA com valor. A prévia decodifica o QR e devolve amount, brl_amount (= valor do QR), merchant_name e a chave mascarada — sem criar ordem. Com br_code não envie amount nem brl_amount. Mesmas regras de POST /cash-outs: USDT ou USDC em rota compatível do catálogo. O amount inclui o reserva de R$ 1,00 do Copia e Cola (reserve_brl; equivalente em USDT em copia_e_cola_buffer_usd). Se o cliente colou ou escaneou um QR com valor — estático ou dinâmico — envie o br_code inteiro, nunca pix_key + brl_amount extraídos dele: só assim o PIX sai no valor exato e como pagamento daquela cobrança (com o txid). Pago por chave, o valor pode diferir em centavos e o recebedor não reconhece.
  - `sandbox_scenario` 'success' | 'delayed' | 'failed' | 'expired' | 'refunded' | 'settlement_uncertain' | 'provider_unavailable' | 'route_unavailable' | 'no_deposit': Somente DePix/Liquid no sandbox. Prevalece sobre gatilhos dos centavos. Sem cenário explícito, gatilhos .01 a .08 continuam ativos. Chave de produção retorna 403 sandbox_only. Veja GET /sandbox para cenários por fluxo.

## Response `200`

Prévia calculada (nenhuma ordem criada).

- object
  - `preview` true, required
  - `asset` string, required
  - `network` string, required
  - `path` 'FAST' | 'DEX' | 'CONVERT' | 'simulated': Trilho que a venda usaria.
  - `amount` string, required: Cripto a enviar (decimal em string).
  - `brl_amount` string, required: Valor do PIX em reais.
  - `expires_at` string, date-time: Validade que a cotação teria.
  - `merchant_name` string, nullable: Só com br_code: nome do recebedor da cobrança.
  - `copia_e_cola_buffer_usd` string, nullable: Equivalente em USDT da reserva operacional de R$1, convertido na cotacao e ja incluido no total; nao somar novamente. Ordens antigas mantem seu valor original. / USDT equivalent of the BRL 1 operational reserve, converted at quote time and already included in the total; do not add it again. Existing orders retain their original value.
  - `pix_key` string, nullable: Só com br_code: chave do recebedor, mascarada.
  - `pix_key_type` string, nullable
  - `partner_fee_bps` integer: Sub fee do parceiro que entrou nesta cotacao (bps).
  - `fee_bps` integer: Percentual da venda de DePix em pontos-base.
  - `fee_fixed_cents` integer: Parcela fixa da venda de DePix, em centavos.
  - `fee_total_cents` integer: Taxa total, em centavos; disponível na cotação DePix e na ordem simulada.
  - `net_cents` integer: PIX líquido, em centavos; disponível na cotação DePix e na ordem simulada.
  - `pix_key_reserve_usd` string, nullable: Equivalente em USDT da reserva operacional de R$1, convertido na cotacao e ja incluido no total; nao somar novamente. Ordens antigas mantem seu valor original. / USDT equivalent of the BRL 1 operational reserve, converted at quote time and already included in the total; do not add it again. Existing orders retain their original value.
  - `reserve_brl` string, nullable: Reserva operacional fixa de R$1 nas novas ordens, ja incluida no total. Legado preserva a reserva original. / Fixed BRL 1 operational reserve on new orders, already included in the total; existing orders keep their original reserve.

## Other responses

- `400`: Pedido inválido ou rede indisponível.
- `401`: X-API-Key ausente, desconhecida ou incorreta.
- `403`: sandbox_scenario exige chave de teste; nenhuma ordem criada.
- `422`: Parametros semanticamente invalidos.
- `503`: Serviço indisponível; no cenário de teste provider_unavailable, nenhuma ordem é criada.

---

[API](https://skmtc.dev/luniumpay/apis/lunium-crypto-pix-settlement-brazil.md) · [All operations](https://skmtc.dev/luniumpay/apis/lunium-crypto-pix-settlement-brazil/llms.txt) · [OpenAPI document](https://skmtc.dev/luniumpay/apis/lunium-crypto-pix-settlement-brazil/revisions/0b5a340fa9dd?raw)
