Minstrel

Pagamentos

Relatorios e indicadores

A visao geral do periodo - volume, aprovacao, vendas recuperadas, recusas pela ABECS, desempenho por conector, mix, recorrencia e alertas.

GET /v1/analytics/overview reune numa chamada so os indicadores da tela inicial do painel. Exige o escopo reports:read e vale para o ambiente da credencial.

curl "http://localhost:3333/v1/analytics/overview?period=7d" \
  -H "Authorization: Bearer $MINSTREL_API_KEY"

Periodos

periodJanelaSerie
todayHoje, da meia-noite ate agoraPor hora
7dOs 6 dias anteriores inteiros mais hoje ate agoraPor dia
30d (padrao)Os 29 dias anteriores inteiros mais hoje ate agoraPor dia
90dOs 89 dias anteriores inteiros mais hoje ate agoraPor dia

Os dias sao os do fuso da organizacao (veja Configuracoes): uma venda as 22h de Brasilia e do mesmo dia para quem vende, embora ja seja o dia seguinte em UTC. Cada total vem com o periodo anterior, que e a mesma janela deslocada em dias inteiros: em 7d, hoje ate as 14h compara com o mesmo dia da semana passada ate as 14h. Comparar com as ultimas 168 horas corridas faria a variacao oscilar com a hora da consulta, e nao com o negocio.

Valores em centavos; taxas em basis points (9240 = 92,40%).

Blocos da resposta

BlocoConteudo
periodA janela usada: from, to, previousFrom, previousTo, granularidade e fuso.
totalscurrent e previous: transacoes, aprovadas, recusadas, em andamento, approvalRateBps, volume capturado, ticket medio, vendas recuperadas e estornos.
seriesUm ponto por hora ou dia, com o periodo atual e o anterior lado a lado (segunda com segunda).
declinesRecusas do periodo por motivo.
connectorsDesempenho de cada conta de conector.
mixDivisao por bandeira (brands), meio de pagamento (methods) e parcelamento (installments: single, 2-6, 7-12).
recurringO retrato da recorrencia agora.
alertsO que pede acao.
setupContas que autorizam, fluxos publicados, endpoints de webhook e se ja houve pagamento. complete e verdadeiro com ao menos uma conta que autoriza e um fluxo publicado.
recentPaymentsAs 8 vendas mais recentes. So vem para credencial com payments:read; sem ele, null.

Os totais usam as mesmas definicoes de Transacoes:

  • aprovado e o pagamento que o emissor aprovou em algum momento, inclusive se foi estornado, contestado ou cancelado depois;
  • a taxa de aprovacao e aprovados sobre aprovados mais recusados - o que ainda esta em andamento fica fora - e vem null sem nenhuma decisao;
  • volume e o valor capturado;
  • recuperado separa fallback (aprovado em outra tentativa do mesmo pagamento) de retry (aprovado numa fatura cuja cobranca anterior falhou);
  • estornos contam pela data do estorno, nao da venda.

Recusas

Cada item de declines.reasons traz o motivo canonico (reason), o rotulo e a acao recomendada pela tabela ABECS (label, retryAction), quantidade, valor, a quantidade no periodo anterior e a participacao no total (shareBps). O campo kind separa tres origens que pedem leituras diferentes:

kindSignificado
issuerO emissor recusou, com motivo classificado.
technicalHouve tentativa, mas o conector falhou: nao ha motivo do emissor.
flowO proprio fluxo barrou antes do adquirente: regra, antifraude ou revisao recusada.

A reversibilidade vem do que foi gravado em cada recusa, porque a mesma situacao muda de classe conforme a bandeira (o 57 e irreversivel na Visa e na Elo, reversivel na Mastercard). Quando as bandeiras divergem dentro do motivo, mixedReversibility vem true. Veja Retentativa e codigos de recusa.

Conectores

Contado por tentativa, e nao por pagamento: e o que mostra o adquirente que recusa mais, inclusive quando o fallback salvou a venda em outro. Cada conta traz tentativas, aprovadas, recusadas, falhas tecnicas, recuperadas, approvalRateBps contra previousApprovalRateBps, volume, latencia media, saude (health) e circuitOpen. Contas que autorizam aparecem mesmo sem tentativa; contas removidas aparecem enquanto tiverem tentativas no periodo.

Recorrencia

recurring nao depende do periodo: e a foto de agora. Traz o MRR (assinaturas active e past_due, convertidas para mes), o ARR (MRR vezes 12), as assinaturas por situacao (paying soma ativas e em atraso) e as faturas em aberto, a vencer em 7 dias, vencidas e incobraveis, com quantidade e valor. Sao as mesmas regras de GET /v1/billing/summary, em Assinaturas.

Alertas

alerts lista o que pede acao, do mais grave para o mais leve. A API devolve codigos, e nao textos: o painel monta a frase, e a sua integracao pode montar a dela.

typeSeveridadeQuando aparece
connector_circuit_opencriticalUma conta habilitada esta com o circuito aberto por falhas seguidas.
connector_unavailablecriticalUma conta habilitada esta indisponivel.
connector_degradedwarningUma conta habilitada esta degradada.
connector_approval_dropwarningA aprovacao de uma conta caiu 5 pontos ou mais, com ao menos 20 tentativas em cada periodo.
approval_dropwarningA aprovacao geral caiu 3 pontos ou mais, com ao menos 30 decisoes em cada periodo.
webhook_endpoints_disabledcriticalHa endpoints de webhook desligados automaticamente por falhas.
webhook_deliveries_exhaustedcriticalEntregas esgotaram as tentativas nos ultimos 7 dias: o evento nao chegou.
webhook_deliveries_failingwarningEntregas aguardam nova tentativa nos ultimos 7 dias.
reviews_pendingwarningHa pagamentos parados em revisao manual.
invoices_past_duewarningHa faturas vencidas.
subscriptions_past_duewarningHa assinaturas em atraso (past_due ou unpaid).
cards_invalidatedwarningCartoes de assinaturas vivas foram invalidados pelo emissor.
cards_expiredwarningCartoes de assinaturas vivas ja venceram.
cards_expiringinfoCartoes de assinaturas vivas vencem ate o fim do mes que vem.
invoices_uncollectibleinfoHa faturas dadas como incobraveis.

Cada alerta traz count, e conforme o tipo: amount (valor envolvido), deltaBps (a variacao, nos alertas de queda), secondaryCount (quantos endpoints foram afetados, nos de webhook) e subject (a conta de conector).

Os limites minimos de volume existem de proposito: abaixo de cerca de 30 decisoes, uma recusa a mais move a taxa em pontos inteiros, e o alerta viraria ruido.

Outros indicadores

A visao geral nao substitui os resumos de cada assunto, que aceitam outros recortes:

EndpointOnde esta
GET /v1/payments/summaryTransacoes: periodo livre de ate 400 dias.
GET /v1/billing/summaryAssinaturas: MRR, churn e faturas.
GET /v1/recipients/summarySplit: volume dividido e total a repassar.
GET /v1/webhooks/summaryWebhooks: entregas e taxa de sucesso em 24 horas.
GET /v1/platform-billing/overviewFinanceiro da plataforma: o que voce paga ao Minstrel.