Visão geral do dashboard do Merchant

O endpoint de estatísticas por trás da tela inicial do dashboard do merchant — volumes de pedidos, taxas de aprovação e falha, dados de tendência e pedidos recentes de uma janela de datas.

A tela inicial do dashboard do Merchant é alimentada por um único endpoint de estatísticas. Dada uma janela de datas, ele retorna os números agregados que o dashboard renderiza como blocos de destaque (total de pedidos, taxa de aprovação, taxa de falha), além dos conjuntos de dados por trás de seus gráficos: uma série de tendência de pedidos, uma distribuição por status e os pedidos mais recentes.

Todos os números são calculados sobre pedidos — o registro comercial que agrupa uma ou mais tentativas de cobrança — não sobre transações individuais. Um pedido que falhou no primeiro provedor e teve sucesso em um fallback conta uma única vez, como um pedido bem-sucedido. Consulte Pedidos para saber como os pedidos se relacionam com as transações.

Os endpoints do Dashboard alimentam a Tokeflow Dashboard UI. Eles são autenticados por sessão: faça login para obter um JWT e envie-o como um token bearer. Eles não aceitam chaves de API sk_ ou pk_ — para relatórios programáticos, use a API pública.

O objeto de estatísticas

A resposta é um único objeto de estatísticas (sem envelope):

CampoTipoDescrição
total_ordersnumberTodos os pedidos na janela, incluindo tentativas rejeitadas. Este é o denominador de approval_rate e failure_rate.
successful_ordersnumberPedidos que atingiram autorização — authorized, refunded, partially_refunded, charged_back e refund_pending. Exclui tentativas failed e canceled, e pedidos ainda em andamento.
approval_ratenumberPedidos autorizados / total, como uma porcentagem com 1 casa decimal.
failure_ratenumberPedidos com falha / total, como uma porcentagem com 1 casa decimal.
success_ratenumberAlias de approval_rate, mantido para compatibilidade com clientes. Sempre igual a approval_rate.
order_trendarraySérie temporal da atividade de pedidos ao longo da janela — um OrderTrendPointDto por ponto. Alimenta o gráfico de tendência do dashboard.
status_distributionarrayDistribuição dos pedidos por status — um StatusDistributionItemDto por grupo de status. Alimenta o gráfico de distribuição do dashboard.
recent_ordersarrayOs pedidos mais recentes na janela — um RecentOrderDto por pedido. Alimenta a lista de atividade recente do dashboard.

Os oito campos estão sempre presentes na resposta.

Um pedido conta como bem-sucedido assim que atinge autorização, mesmo que seja posteriormente estornado ou contestado — pedidos refunded, partially_refunded e charged_back ainda foram cobranças aprovadas. approval_rate e failure_rate não somam necessariamente 100: pedidos cancelados ou ainda em andamento não pertencem a nenhum dos dois grupos.

Endpoints

GET/api/v1/merchant/dashboard/stats

Merchant

Auth: Dashboard session (JWT bearer). É necessário ser membro do Merchant.

Retorna as estatísticas do dashboard do Merchant para a janela de datas solicitada.

Parâmetros de cabeçalho

CampoTipoObrigatórioDescrição
x-merchant-idstringSimO Merchant sobre o qual gerar o relatório, prefixado com mrc_. Seleciona o contexto de Merchant ativo quando sua conta pertence a mais de um Merchant.

Parâmetros de consulta

CampoTipoObrigatórioDescrição
date_fromstringSimInício da janela de relatório (timestamp ISO 8601, inclusivo).
date_tostringSimFim da janela de relatório (timestamp ISO 8601, inclusivo).

A interface do dashboard solicita predefinições comuns — últimos 7 dias, últimos 30 dias, mês até a data atual. Ao chamar o endpoint você mesmo, mantenha a janela o mais restrita possível para o seu caso de uso; os agregados são calculados sobre todos os pedidos no intervalo.

Exemplo de requisição

curl -G https://api.tokeflow.com/api/v1/merchant/dashboard/stats \
  -H "Authorization: Bearer eyJhbGciOiJIUzI1NiIs…" \
  -H "x-merchant-id: mrc_123" \
  --data-urlencode "date_from=2026-07-01T00:00:00Z" \
  --data-urlencode "date_to=2026-07-31T23:59:59Z"

Exemplo de resposta — 200 OK

{
  "total_orders": 59,
  "successful_orders": 42,
  "approval_rate": 71.2,
  "failure_rate": 8.5,
  "success_rate": 71.2,
  "order_trend": [],
  "status_distribution": [],
  "recent_orders": []
}

Os três arrays são exibidos vazios acima por brevidade. Em uma resposta real, order_trend traz um ponto por intervalo dentro da janela, status_distribution traz um grupo por status de pedido presente na janela, e recent_orders traz os pedidos mais recentes — cada item seguindo, respectivamente, os formatos OrderTrendPointDto, StatusDistributionItemDto e RecentOrderDto.

Neste exemplo, 42 de 59 pedidos atingiram autorização (42 / 59 = 71,2%) e 5 falharam completamente (5 / 59 = 8,5%); os pedidos restantes foram cancelados ou ainda estavam em andamento, portanto não contam para nenhuma das duas taxas.

Erros

HTTPCausa típica
400date_from / date_to ausente ou inválido.
401Token de sessão ausente, inválido ou expirado — faça login novamente.
403A conta da sessão não é membro do Merchant informado em x-merchant-id.

Consulte Erros para o formato de erro usado em toda a API.

Relacionados

Nesta página