Endpoint: POST /sales/seller/{seller_id}/simulate
Autenticação: Publica (sem autenticacao, CSRF dispensado)
Dado um vendedor e um valor alvo, retorna a tabela de taxas por parcela/bandeira em duas visoes:
  • seller_liable — o comprador paga amount; o valor a receber e reduzido pela taxa. receivable_amount = amount * (1 - tax/100).
  • buyer_liable — o comprador paga amount + juros para que o recebivel se mantenha igual a amount. amount = receivable / (1 - tax/100).
Ambos os blocos sao indexados por type (ex.: credit, debit) → installment (1, 2, …, ate o maximo do plano) → brand (ex.: Visa, MasterCard, Hipercard…). O plano de split da conta fornece a tabela usada aqui; com is_online=true a tabela e filtrada para capture_mode='manually_keyed'. Se o vendedor nao tiver plano de split ou plano de adquirencia anexado, o endpoint retorna 400.

Pre-requisitos

  • O vendedor deve existir.
  • A conta do vendedor deve ter um plano de split configurado, e esse plano de split deve ter um plano de taxa anexado. Veja Planos e Splits.

Parametros de caminho

string
required
UUID unificado da conta.

Corpo da requisicao

string
required
Valor alvo em BRL como valor decimal em reais (ex.: "100.00"). Precisao de duas casas decimais; minimo 0.01.
boolean
default:"true"
Quando true, a simulacao usa capture_mode='manually_keyed' (taxas para pagamentos online sem presenca do cartao). Quando false, usa as taxas de pagamento presencial (captura por terminal).

Resposta

200 OK. Dois mapas aninhados com estrutura identica.
object
Comprador paga amount; vendedor absorve a taxa. Forma: type → installment → brand → { amount, receivable_amount, tax }. Todos os valores como strings decimais.
object
Comprador paga amount + juros; vendedor recebe amount. Forma: type → installment → brand → { amount, receivable_amount, tax }. Todos os valores como strings decimais.

Erros

Exemplos