Skip to content

Calcula a quebra do reembolso por forma de devolução (estorno × vale-compra)

Request

Dado o conjunto de itens devolvidos e as transações de pagamento do pedido original, calcula quanto vai para cada destino: estorno no meio de pagamento, estorno automático, vale-compra, frete e cashback.

Por que existe

Um pedido pago com dois cartões + um vale-compra não tem "um valor de reembolso": tem uma distribuição. As regras que definem essa distribuição (o que pode voltar automaticamente ao cartão, qual o teto do estorno automático, o que sobra e vira vale, como o bônus percentual entra) são complexas e específicas de cada conta. Este endpoint entrega o resultado já calculado, no mesmo formato que a Genius usará ao executar o estorno.

Campos mais importantes da resposta

CampoSignificado
estornoTotal a devolver no meio de pagamento original
estornoAutomaticoParte do estorno que pode ser executada automaticamente
sobraEstornoAutomaticoO que excede o teto automático e exigirá ação manual
valeComprasTotal a ser convertido em vale-compra
freteParcela de frete incluída no reembolso
possuiEstornoAutomatico / isAutoRefundAllowedSe o estorno automático se aplica
dataExpiracaoValidade do vale-compra que seria gerado

Como o front Genius usa

É o endpoint que alimenta a tela de reembolso quando a conta opera com estorno por item (HabilitarEstornoPorItem). O front monta o request a partir do pedido em sessão (EstornoPorItemValores) e usa a resposta para exibir, lado a lado, quanto o consumidor recebe no cartão e quanto receberia em vale-compra.

Observações

  • Consultivo: nada é estornado nem gerado nesta chamada.
  • Envie em Transacoes as transações do pedido como retornadas pela consulta de pedido; elas determinam o que é elegível a estorno automático.
Security
BearerAuth
Query
lojaVirtualIdinteger or null, (int64)

Id da loja virtual (subconta), quando a conta opera múltiplas lojas.

Bodyapplication/jsonrequired
SkusArray of objects(SkuInputDTO)required

Itens que estão sendo devolvidos, com preço e quantidade. Envie apenas os selecionados pelo consumidor.

TransacoesArray of objects(TransacaoEcommDTO)required

Transações de pagamento do pedido original, como retornadas pela consulta de pedido. Determinam o que pode ser estornado automaticamente e em qual meio.

QuantidadeItensinteger

Quantidade total de itens do pedido original (base para cálculos proporcionais).

FreteTipoEstornointeger(EPedidoItemEstorno)

Tipo de estorno do item do pedido: ValeCompras = 0, Estorno = 1, EstornoAutomático = 2.

Enum:012
ValorFretenumber, (double)

Valor do frete a considerar no cálculo. Envie 0 quando a regra da conta não devolver frete.

ValorPedidonumber, (double)

Valor total do pedido original.

ValeComprasBonusboolean

true aplica a definição de vale-compra com bônus (ordem 2) em vez da definição principal.

DataPermitidastring or null, (date-time)

Data-limite para estorno automático no meio de pagamento (normalmente a data da compra somada ao prazo do conector). Após ela, o estorno deixa de ser automático.

curl -i -X POST \
  'https://apidocs.geniusreturns.com.br/_mock/openapi/v1/pvt/financeiro/calcular-valores-estorno-por-item?lojaVirtualId=0' \
  -H 'Authorization: Bearer <YOUR_JWT_HERE>' \
  -H 'Content-Type: application/json' \
  -d '{
    "Skus": [
      {
        "SkuId": "SKU-1",
        "Preco": 199.9,
        "Quantidade": 1,
        "QuantidadeTotal": 1,
        "TipoProcesso": 1
      }
    ],
    "Transacoes": [
      {
        "tid": "1234567890abc",
        "ativa": true,
        "pagamentos": [
          {
            "valor": 219.8,
            "tipoPagamento": 1
          }
        ]
      }
    ],
    "QuantidadeItens": 1,
    "FreteTipoEstorno": 0,
    "ValorFrete": 19.9,
    "ValorPedido": 219.8,
    "ValeComprasBonus": false,
    "DataPermitida": "2026-11-30T00:00:00Z"
  }'

Responses

Valores calculados.

Bodyapplication/json
dataHoraRespostastring, (date-time)

Data e hora da resposta, em UTC.

registrosinteger, (int32)

Quantidade de registros retornados em entidade.

httpStatusstring

Código HTTP da resposta, em texto.

erroCodigostring or null

Código do erro, quando houver.

erroDescricaostring or null

Mensagem do erro, quando houver.

erroDetalhadostring or null

Detalhamento técnico do erro, quando houver.

erroTipostring or null

Classificação do erro. Útil para distinguir falha de integração com a plataforma de e-commerce (04) de erro de domínio ou erro comum (00).

entidadeobject(TransactionSystemCalculationsModel)

Distribuição do reembolso calculada pelo motor financeiro da Genius. Mostra quanto vai para cada destino considerando os meios de pagamento do pedido original.

Response
{ "dataHoraResposta": "2026-09-18T13:38:45.881Z", "registros": 1, "httpStatus": "200", "entidade": { "estorno": 219.8, "estornoAutomatico": 200, "sobraEstornoAutomatico": 19.8, "valorMaximoEstornoAutomatico": 200, "possuiEstornoAutomatico": true, "isAutoRefundAllowed": true, "valeCompras": 241.78, "frete": 19.9, "cashback": null, "freteTipoEstorno": 0, "dataExpiracao": "2026-12-17T00:00:00Z", "ajusteCentavosAutoRefund": 0 } }