Major release to improve overall application's performance.
A partir de agora temos uma aplicação super otimizada para processar 30x o volume processado atualmente. Esta performance foi aferida através de teste de carga com 1000 usuários simultâneos, atingindo picos de 200 RPS e 5000 RPM. Entre os ajustes implementados para melhoria de performance podemos destacar: Separação dos serviços de processamento assincrono de notificações de status do serviço de processamento das requisições, permitindo escalar de maneira independente processamento sincrono de assincrono.
- Atualização do middleware de processamento das requisições nos serviços do core transacional, 3x mais performático;
- Implementação de divisão de carga nas operações de escrita e leitura no banco nos serviços do core transacional, nos permite escalar leitura sem sobrecarregar escrita;
- Otimização nos healthchecks e criação de novos alarmes para monitorar saúde geral dos serviços;
Adicionamos também suporte a filtros no serviço de listagem de charges, através do qual os clientes podem buscar facilmente transações, combinando os seguintes filtros, todos opcionais:
limit: quantidade de registros por página 1-100
page: numero da pagina ativa
sort: ordenação DESC/ASC
merchantId: id do merchant processado na cobrança
id: id da cobrança
originalAmount: valor em centavos da cobrança
status: pending, pre_authorized, authorized, voided, canceled, charged_back
paymentType: credit, pix ou boleto
orderId: id da cobrança gerado pelo cliente
Ex de requisição com filtros:
GET /v1/charges?limit=10&page=1&sort=DESC&merchantId=${merchantId}&id=${chargeId}&originalAmount=1000&status=pre_authorized&paymentType=credit&orderId=32432432
Versão 25-03-202
Features
- PE-597: Padronizando o contrato da listagem para ter os mesmos campos da rota /v1/charges/${id} e inclusão de novos filtros
- PE-814: Inclusão dos dados do customer nas cobranças PIX pagarme, para permitir consulta dos dados no lado do provedor
- PE-865: Adicionar o atributo cardHolder name no serviço de detalhe de card por id GET /v1/cards/${cardId}
Bugs
- PE-583: Tratando retorno de erro 500 ao cancelar uma transação falhada
- PE-751: Validação do client_id responsável pelo merchant_id na criação do charge
- Corrigir nome do país em lowercase para fraudanalysis no adapter da pagarme
- Salvar corretamente campo description nas cobranças pix e boleto
- Recuperar detalhes de pix e boleto no get de charges quando cobrança aprovada não retornava dados