v2.63.0 — Sócio administrador conferido no POST da PJ
v2.63.0 — Sócio administrador conferido no POST da PJ
POST /v1/accreditations/pjpassa a exigir exatamente um sócio compartners[].isAdministrator: true. O liquidante aceita um único administrador por empresa e só dizia isso depois — com os links de biometria já emitidos, o reconhecimento facial de todos os sócios já feito e os PDFs societários já enviados. Mais de um administrador agora é recusado na hora, com400 invalid_field, mensagem nomeandopartners[].isAdministratore os índices marcados. Nenhum link é emitido e nada é cobrado da jornada.- A quantidade de sócios não mudou. O limite conta administradores: empresa com vários sócios e um único administrador segue passando normalmente.
- Nenhum administrador continua recusado com
400 invalid_payload, como já era antes. GET /v1/accreditations/{id}passa a devolver o blocopartnernas recusas vindas do liquidante — o mesmo que já ia no webhookaccreditation.failed. Antes, quem consultava a API via menos do que quem capturava o webhook. O campo é omitido quando não há recusa do parceiro.- A documentação de erros foi corrigida em dois pontos. O campo do motivo
chama-se
errorReason(a tabela diziareason), e o blocopartnerreflete o que o liquidante enviou:code,messageefieldsão todos opcionais, e há recusas que chegam só commessage— nesses casos o campo não é nomeado.
Atenção / ação necessária
- Se você monta o
partners[]marcando todos os sócios como administradores, a chamada passa a responder 400 em vez de ser aceita e falhar horas depois. Marque apenas o administrador da empresa e envie os demais comisAdministrator: false.
v2.64.0 — PIX out retido no banco liquidante: quem está segurando, e o desfecho tardio
v2.64.0 — PIX out retido no banco liquidante: quem está segurando, e o desfecho tardio
holddiz de quem é a espera. A consulta de pagamento (GET /v1/accounts/{accountId}/pix/payments/lookup) e o webhookpix.out.timeoutpassam a trazerhold, comowner: "partner"ereason(partner_authorization,partner_risk_analysisoupartner_unspecified), quando a ordem está retida no banco liquidante. Quando esse objeto aparece, não há nada a aprovar do seu lado nem do nosso.partnerStatusepartnerStatusIdtrazem o estado bruto no liquidante, para você anexar em ticket. São valores dele, fora do nosso vocabulário canônico: não use em comparação de status.statuscontinua igual.PENDING_APPROVALsegue com o mesmo valor de sempre — nenhuma integração que compara status precisa mudar. O campo é ambíguo de nascença (cobre a fila de autorização interna do liquidante e a análise de risco dele) e será desdobrado numa versão maior; até lá,holdé a resposta para “quem precisa agir”.TIMEOUTdeixou de ser o fim da linha. Quando a ordem fica retida, seguimos consultando o liquidante por até 7 dias. Se ele liquidar ou recusar nesse período, você recebepix.out.completedoupix.out.failedcomlate: truee o mesmopaymentIddopix.out.timeoutanterior — é a correção daquele desfecho, não um segundo pagamento. Antes, uma liberação tardia podia nunca chegar até você.- O evento tardio não duplica nada. O identificador do evento é o do pagamento, então confirmação tardia e reconciliação convergem para um único evento terminal por ordem.
- A mensagem de prazo na timeline agora diz o prazo real. O evento
pix_out.timeoutafirmava “prazo de 5 minutos” mesmo quando a espera foi de 25 minutos, e não dizia que a ordem estava retida no liquidante.
Atenção / ação necessária
- Se o seu sistema trata
pix.out.timeoutcomo desfecho final, ajuste para aceitar umpix.out.completed/pix.out.failedposterior com o mesmopaymentId(identifique-o porlate: true). Reprocessar o pagamento nesse caso duplicaria o valor.