Fluxo de Iniciação de Pagamentos
Quando o desenvolvedor deseja testar as APIs destinadas a Informações de Conta, é necessário criar um aplicativo em seu painel do tipo de produto BRAZIL PISP
- O cliente consente com seu parceiro que gostaria de compartilhar suas informações bancárias e escolhe o PSP
-
O desenvolvedor contata o PSP e envia uma solicitação de consentimento de conta
- O PSP verifica se o Id do aplicativo do desenvolvedor (client_id) tem as autorizações necessárias
- PSP usa as informações e cria recursos de consentimento e inicializa o processo, alterando o status para
AwaitingAuthorisation
- O PSP responde ao desenvolvedor com uma resposta de consentimento, que também instrui o desenvolvedor sobre como proceder com a autenticação e autorização
- O desenvolvedor redireciona o cliente do PSP para o site do PSP para autenticação e confirmação de consentimento
- Após as verificações necessárias, o PSP envia o token de acesso ao desenvolvedor, que por sua parte, o utiliza para recuperar as informações da conta do Usuário
Teste através do Portal do Desenvolvedor
Os seguintes passos devem ser realizados para a Iniciação de Pagamentos
1. Selecionar APP
Clique Test
para o APP selecionado, sendo redirecionado ao Swagger UI
2. Autenticação do Desenvolvedor
Primeiro passo no fluxo é a autenticação do App-Id do desenvolvedor. Clique no botão Autorizar e preencha o APP secret para obter o token de acesso específico para o Desenvolvedor
3. Chamada de Solicitação de Consentimento para Informações de Conta
O bearer token obtido pelo passo anterior deve ser preenchido no Endpoint de Iniciação de Pagamentos - POST /payments/v1/consents
Como exemplo, use a chave privada abaixo para assinar a solicitação (corresponde aos JWKs fornecidos em App creation), cole no campo application signing private key
acima do botão Autorizar
-----BEGIN PRIVATE KEY-----
MIIEvgIBADANBgkqhkiG9w0BAQEFAASCBKgwggSkAgEAAoIBAQCDSUWD3VyDcGfB
hCP7sKCv15w2k/fptUxilGZsELw7hBlUk4iYib03iadEKNzPIlF+tGEX55Yu4IoJ
NldkLhDHHPTj6WhAxXPewMUeisG9QIPwd48mcG3pdIz5iKmaitA/dGIWpYH47I33
KOjOs9DFVl35FGjHts8fPye/qpovoAE/80Y8iXB1cU78BUhjFqpJ7iXNbR96iSgF
Dd1KuTW0eFbNAM14FFjhT7V3KBIAYwg3RpqYe9K0h48UN/oaxd7aHUQaCLJf4rbW
oYpcUHLr8VL2wpozXCxFLHyFWLninW2Wwi0xap/62U7R4RHnXPYLtATo5KWPS9AB
O4vrjNXnAgMBAAECggEAKVnQvWHhm7yx0W/vbX0Kf5gnqcEdWs0xy/L195+lyhEn
cU4uvezUXkPLHVrJgaxLgt8Jnd/hm845bAFjsTgZLL3gHFEN9yi6ADUzYRVPRG6n
n/voaLEMzXVaWdZDpVuHkBT2OC/VKjRH2stV2JUmcqFrY+Kbxhu8TRk1SddQTSNg
lQiMGOo1lVe0lo/su8A3yBVs+Ic/kdC4Na0xkTbgn7zYUcbNaYTd6p9eTAzAezF5
+Z0xsQNMPm8drt3bjTQzZH4+zb8ImzWH2lvJZryEs4QOQJkyLEuL7FR66XjrSYHZ
Y9fd5QEolWjwhlKCn81eVdhJk13Vq/7PiAXLz4Px8QKBgQDhDheQkra938nPSR8k
DwK5IGZJPoXGo0igM4qh96w5jqGiGniTWEMVzDqDqSzme5gxH7/cxaDNcaZOqSpO
RjJYv7XLyCkw8TuXJiNO5N62Flga38ycWZBR2SMABGmoOLa+m+w57y9vfJiduKXi
IDrJ308trQSnVe7ChB+xvESSkwKBgQCVVodv5Z8GbU6tYlR0AJOWkzRok4O1fp/g
Q4sHjcfVfvDGIHLbMjfoO3zpof2xgm+/BMjzkiesatjEbJjQuarOpUj+rp3SHbEI
OfXQezcodSbmuaGMxszRXsMT6BhO7Hw26JCHFBueimM+ifn3OKkaf4DzXZ2OPK5j
5RHiGwuf3QKBgQCcyy+Zts2ALZixRNVgTuDrz2nT365d/MaNbjtIqoAfvYJYqK6W
oShj2Fxv+/5fOX6HwwHtsvZcC7D9Hpht3jQXZsEmj3Y7NeX5YUW6InQTUi/h0UgB
KdkFXQ0oZuqhm5md5I3Isx5OQvUk9U8E4sVyfZTxUphqaNEmTdyy/GKd5wKBgAz0
TZlaTNos3zdRIUxSxHq6WEB+E13KFypIEaZdGSme8lntdKkpCQp/Jo3JvI0KaJEk
ZB4k3oYpWpZnaTYp9PQqCFP3Z79TTgkNphIorhc3WmGHVsk0cY3z724povotr3S/
5dGh3+d3z7YcF+/nHVwsFU6HH2S4RNRriYqYmACNAoGBALtl7uReDG1CrRwP6UzU
SRfPiHu6kj1OOMzXD5gkIphkxFd6pD7bKS22W6zEU+y3yQDyenO/TgYB1wqJaXMH
f2pv/4mSmTT64sPqwp/ersa8Lfv/iO1cabiytuKxrrYgOc/QdzAx0obJlOpz+ntS
B5+JIYmrBX0iKq4JCATMDbFk
-----END PRIVATE KEY-----
- O valor exclusivo deve ser fornecido para o campo
x-idempotency-key
- Utilize o payload abaixo para enviar requisições de iniciação de pagamentos.
- Substitua o valor da data de pagamento por uma data futura. Substitua também os valores de CNPJ e CPF com base nos detalhes do usuário da PSU
{
"data": {
"businessEntity": {
"document": {
"identification": "11111111111111",
"rel": "CNPJ"
}
},
"loggedUser": {
"document": {
"identification": "11111111111",
"rel": "CPF"
}
},
"creditor": {
"name": "Marco Antonio de Brito",
"cpfCnpj": "58764789000137",
"personType": "PESSOA_NATURAL"
},
"payment": {
"date": "2025-03-01",
"amount": "10.12",
"currency": "BRL",
"details": {
"proxy": "1f212beb-d25c-44c5-aca7-3a046d921d46",
"localInstrument": "DICT",
"creditorAccount": {
"number": "1234567890",
"accountType": "CACC",
"ispb": "12345678",
"issuer": "1774"
}
},
"type": "PIX",
"ibgeTownCode": "5300108"
}
}
}
Se a solicitação for bem sucedida, o desenvolvedor receberá a seguinte resposta.A resposta do servidor será exibida no formato JWT.
Você pode analisar esse token JWT no site do JWT e visualizar a resposta JSON e obter o ID de consentimento.
4. Autenticação de Usuário
Clique em Autorizar
no topo para iniciar a autenticação do Usuário.
O botão Authorizar
é utilizado para autenticar o Usuário. Após login e captura de consentimento, o token do Usuário já estará disponível para acesso a informações de conta.
5. Consultar consentimento para iniciação de pagamento
GET /payments/v1/consents/{consentId}
- Insira o valor consentId obtido do endpoint de criação de consentimento.
- A resposta do servidor será exibida como JWT.
- Você pode analisar este JWT e o status de consentimento deve ser 'AUTORIZADO'.
6. Chamadas para a API de Pagamentos
O desenvolvedor pode usar o access_token
do Usuário para obter detalhes sobre o status do pagamento. Um pagamento pode ter um ou mais autorizadores. Com access_token
, o PSIP pode recuperar o status de todas as autorizações. Ele também pode obter o status do pagamento em si.
Submit payment instruction
POST /payments/v1/pix/payments
Use o abaixo Payload
{
"data": {
"endToEndId": "E00000000202301241741qiWXx73Jy67",
"localInstrument": "DICT",
"payment": {
"amount": "10.12",
"currency": "BRL"
},
"creditorAccount": {
"ispb": "12345678",
"issuer": "1774",
"number": "1234567890",
"accountType": "CACC"
},
"remittanceInformation": "Pagamento da nota XPTO035-002.",
"proxy": "1f212beb-d25c-44c5-aca7-3a046d921d46",
"cnpjInitiator": "50685362000135",
"ibgeTownCode": "5300108"
}
}
A resposta do servidor será exibida
Você pode analisar esta resposta JWT e obter o PaymentId, ConsentId.