diff --git a/dictionary/paymentsGetPixPaymentsPaymentId_v3.csv b/dictionary/paymentsGetPixPaymentsPaymentId_v3.csv
index 9c73a2115..4288d8359 100644
--- a/dictionary/paymentsGetPixPaymentsPaymentId_v3.csv
+++ b/dictionary/paymentsGetPixPaymentsPaymentId_v3.csv
@@ -110,7 +110,7 @@ SCHD";1;1;"";Não permitido;string;PDNG;
- CONTAS_ORIGEM_DESTINO_IGUAIS - Indica uma tentativa de pagamento onde a conta origem e a conta de destino são iguais.
-O rejectionReason FALHA_INFRAESTRUTURA não será excluído, apenas deixará de ser utilizado, permitindo assim, retro compatibilidade e integridade entre os participantes.
+O rejectionReason FALHA_INFRAESTRUTURA não será excluído, apenas deixará de ser utilizado, permitindo assim, retrocompatibilidade e integridade entre os participantes.
";Texto;;Obrigatório;;"SALDO_INSUFICIENTE
VALOR_ACIMA_LIMITE
VALOR_INVALIDO
@@ -236,7 +236,7 @@ Segue descrição de cada valor do ENUM.
";Texto;;Obrigatório;;"CACC
SVGS
TRAN";1;1;"";Não permitido;string;CACC;
-/data/authorizationFlow;authorizationFlow;"Campo condicional utilizado para identificar o fluxo de autorização em que o pagamento foi solicitado.
+/data/authorisationFlow;authorisationFlow;"Campo condicional utilizado para identificar o fluxo de autorização em que o pagamento foi solicitado.
[Restrição] Caso o campo não esteja presente no payload, subentende-se que o fluxo de autorização utilizado é o HYBRID_FLOW.
";Texto;;Condicional;;"HYBRID_FLOW
diff --git a/dictionary/paymentsPatchPixPaymentsPaymentId_v3.csv b/dictionary/paymentsPatchPixPaymentsPaymentId_v3.csv
index abb14547f..6bc9db843 100644
--- a/dictionary/paymentsPatchPixPaymentsPaymentId_v3.csv
+++ b/dictionary/paymentsPatchPixPaymentsPaymentId_v3.csv
@@ -110,7 +110,7 @@ SCHD";1;1;"";Não permitido;string;PDNG;
- CONTAS_ORIGEM_DESTINO_IGUAIS - Indica uma tentativa de pagamento onde a conta origem e a conta de destino são iguais.
-O rejectionReason FALHA_INFRAESTRUTURA não será excluído, apenas deixará de ser utilizado, permitindo assim, retro compatibilidade e integridade entre os participantes.
+O rejectionReason FALHA_INFRAESTRUTURA não será excluído, apenas deixará de ser utilizado, permitindo assim, retrocompatibilidade e integridade entre os participantes.
";Texto;;Obrigatório;;"SALDO_INSUFICIENTE
VALOR_ACIMA_LIMITE
VALOR_INVALIDO
@@ -237,7 +237,7 @@ Segue descrição de cada valor do ENUM.
SLRY
SVGS
TRAN";1;1;"";Não permitido;string;CACC;
-/data/authorizationFlow;authorizationFlow;"Campo condicional utilizado para identificar o fluxo de autorização em que o pagamento foi solicitado.
+/data/authorisationFlow;authorisationFlow;"Campo condicional utilizado para identificar o fluxo de autorização em que o pagamento foi solicitado.
[Restrição] Caso o campo não esteja presente no payload, subentende-se que o fluxo de autorização utilizado é o HYBRID_FLOW.
";Texto;;Condicional;;"HYBRID_FLOW
diff --git a/dictionary/paymentsPostPixPayments_v3.csv b/dictionary/paymentsPostPixPayments_v3.csv
index 3d673fae0..255deed8c 100644
--- a/dictionary/paymentsPostPixPayments_v3.csv
+++ b/dictionary/paymentsPostPixPayments_v3.csv
@@ -110,7 +110,7 @@ SCHD";1;1;"";Não permitido;string;PDNG;
- CONTAS_ORIGEM_DESTINO_IGUAIS - Indica uma tentativa de pagamento onde a conta origem e a conta de destino são iguais.
-O rejectionReason FALHA_INFRAESTRUTURA não será excluído, apenas deixará de ser utilizado, permitindo assim, retro compatibilidade e integridade entre os participantes.
+O rejectionReason FALHA_INFRAESTRUTURA não será excluído, apenas deixará de ser utilizado, permitindo assim, retrocompatibilidade e integridade entre os participantes.
";Texto;;Obrigatório;;"SALDO_INSUFICIENTE
VALOR_ACIMA_LIMITE
VALOR_INVALIDO
@@ -205,7 +205,7 @@ Segue descrição de cada valor do ENUM.
";Texto;;Obrigatório;;"CACC
SVGS
TRAN";1;1;"";Não permitido;string;CACC;
-/data/authorizationFlow;authorizationFlow;"Campo condicional utilizado para identificar o fluxo de autorização em que o pagamento foi solicitado.
+/data/authorisationFlow;authorisationFlow;"Campo condicional utilizado para identificar o fluxo de autorização em que o pagamento foi solicitado.
[Restrição] Caso o campo não esteja presente no payload, subentende-se que o fluxo de autorização utilizado é o HYBRID_FLOW.
";Texto;;Condicional;;"HYBRID_FLOW
diff --git a/swagger-apis/payments/3.0.0-beta.1.yml b/swagger-apis/payments/3.0.0-beta.1.yml
index 3ceabe88f..299d8c4c9 100644
--- a/swagger-apis/payments/3.0.0-beta.1.yml
+++ b/swagger-apis/payments/3.0.0-beta.1.yml
@@ -138,7 +138,7 @@ info:
5.2 **Momentos de validação dos rejectionReasons de acordo com o funil de consentimentos.**
```
|----------------------------------|------------------------------|
- | Etapas do funil de consentimento | RejectionReason/code |
+ | Etapas do funil de consentimento | rejectionReason/code |
|----------------------------------|------------------------------|
| Início da autenticação | FALHA_INFRAESTRUTURA |
| | TEMPO_EXPIRADO_AUTORIZACAO |
@@ -835,7 +835,7 @@ components:
O campo ibgetowncode no arranjo PIX, tem o mesmo comportamento que o campo codMun descrito no item 1.6.6 do manual do PIX, conforme segue:
1. Caso a informação referente ao município não seja enviada; o PSP do recebedor assumirá que não existem feriados estaduais e municipais no período em questão;
- authorizationFlow:
+ authorisationFlow:
type: string
enum:
- HYBRID_FLOW
@@ -1389,7 +1389,7 @@ components:
- CONTAS_ORIGEM_DESTINO_IGUAIS - Indica uma tentativa de pagamento onde a conta origem e a conta de destino são iguais.
- O rejectionReason FALHA_INFRAESTRUTURA não será excluído, apenas deixará de ser utilizado, permitindo assim, retro compatibilidade e integridade entre os participantes.
+ O rejectionReason FALHA_INFRAESTRUTURA não será excluído, apenas deixará de ser utilizado, permitindo assim, retrocompatibilidade e integridade entre os participantes.
EnumPaymentCancellationReasonType:
type: string
enum:
@@ -1667,16 +1667,6 @@ components:
description: Tipo do documento do usuário pagador responsável pelo cancelamento do pagamento.
example: CPF
pattern: '^[A-Z]{3}$'
- authorizationFlow:
- type: string
- enum:
- - HYBRID_FLOW
- - CIBA_FLOW
- example: HYBRID_FLOW
- description: |
- Campo condicional utilizado para identificar o fluxo de autorização em que o pagamento foi solicitado.
-
- [Restrição] Caso o campo não esteja presente no payload, subentende-se que o fluxo de autorização utilizado é o HYBRID_FLOW.
PatchPixPaymentCancellation:
type: object
description: |
@@ -2174,7 +2164,7 @@ components:
$ref: '#/components/schemas/PatchPixPaymentCancellation'
debtorAccount:
$ref: '#/components/schemas/DebtorAccount'
- authorizationFlow:
+ authorisationFlow:
type: string
enum:
- HYBRID_FLOW
@@ -2335,7 +2325,7 @@ components:
$ref: '#/components/schemas/PaymentsCreditorAccount'
debtorAccount:
$ref: '#/components/schemas/PaymentsDebtorAccount'
- authorizationFlow:
+ authorisationFlow:
type: string
enum:
- HYBRID_FLOW
@@ -2471,7 +2461,7 @@ components:
$ref: '#/components/schemas/PixPaymentCancellation'
debtorAccount:
$ref: '#/components/schemas/PaymentsDebtorAccount'
- authorizationFlow:
+ authorisationFlow:
type: string
enum:
- HYBRID_FLOW
diff --git a/swagger-apis/payments/3.0.0-beta.2.yml b/swagger-apis/payments/3.0.0-beta.2.yml
new file mode 100644
index 000000000..6628c1d09
--- /dev/null
+++ b/swagger-apis/payments/3.0.0-beta.2.yml
@@ -0,0 +1,2888 @@
+openapi: 3.0.0
+info:
+ title: API Payment Initiation - Open Finance Brasil
+ description: |
+ API de Iniciação de Pagamentos, responsável por viabilizar as operações de iniciação de pagamentos para o Open Finance Brasil.
+ Para cada uma das formas de pagamento previstas é necessário obter prévio consentimento do cliente através dos `endpoints` dedicados ao consentimento nesta API.
+
+ # Orientações
+ No diretório de participantes duas `Roles` estão relacionadas à presente API:
+ - `CONTA`, referente às instituições detentoras de conta participantes do Open Finance Brasil;
+ - `PAGTO`, referente às instituições iniciadoras de pagamento participantes do Open Finance Brasil.
+ Os tokens utilizados para consumo nos endpoints de consentimentos devem possuir o scope `payments` e os `endpoints` de pagamentos devem possuir os `scopes`, `openid` e `payments`.
+ Esta API não requer a implementação de `permissions` para sua utilização. Todas as requisições e respostas devem ser assinadas seguindo o protocolo estabelecido na sessão Assinaturas do guia de segurança.
+
+ ## Regras do arranjo Pix
+ A implementação e o uso da API de Pagamentos Pix devem seguir as regras do arranjo Pix do Banco Central, que podem ser encontradas no link abaixo:
+ [https://www.bcb.gov.br/estabilidadefinanceira/pix?modalAberto=regulamentacao_pix](https://www.bcb.gov.br/estabilidadefinanceira/pix?modalAberto=regulamentacao_pix)
+
+ ## Assinatura de payloads
+
+ No contexto da API Payment Initiation, os `payloads` de mensagem que trafegam tanto por parte da instituição iniciadora de transação de pagamento quanto por parte da instituição detentora
+ de conta devem estar assinados. Para o processo de assinatura destes `payloads` as instituições devem seguir as especificações de segurança publicadas no Portal do desenvolvedor:
+
+ - Certificados exigidos para assinatura de mensagens:
+ [Padrões de certificados digitais Open Finance Brasil](https://github.com/OpenBanking-Brasil/specs-seguranca/blob/main/open-banking-brasil-certificate-standards-1_ID1.md#certificado-de-assinatura-certificadoassinatura)
+
+ - Como assinar o payload JWS: [https://openfinancebrasil.atlassian.net/wiki/spaces/OF/pages/18055279/Como+Assinar+o+Payload+-+v2.0.0-rc1.0+-+Pagamentos](https://openfinancebrasil.atlassian.net/wiki/spaces/OF/pages/18055279/Como+Assinar+o+Payload+-+v2.0.0-rc1.0+-+Pagamentos)
+
+ ## Controle de acesso
+
+ O endpoint de consulta de pagamento GET /pix/payments/{paymentId} deve suportar acesso a partir de access_token emitido por meio de um grant_type do tipo `client credentials`, como opção do uso do token vinculado ao consentimento (hybrid flow).
+
+ Para evitar vazamento de informação, a detentora deve validar que o pagamento consultado pertence ao ClientId que o criou e, caso haja divergências, retorne um erro HTTP 400.
+
+ Para o caso de QR Code estático e dinâmico a detentora deverá obrigatoriamente realizar validações sobre o conteúdo dos campos recebidos. Entretanto, a escolha do momento desta validação na criação do consentimento ou no pagamento, fica a cargo da detentora.
+
+ ## Aprovações de múltipla alçada
+
+ Para o caso de Pix imediato, todas as aprovações necessárias devem ser realizadas nos canais da detentora até às 23:59 (horário de Brasília) da data de solicitação do pagamento.
+ Já para o caso de Pix agendado, todas as aprovações devem ser realizadas até a data/hora limite suportada pela detentora.
+
+ ## Validações
+ **Validações** (*após o processo de DCR e obtenção de token client credential*– não escopo dessa documentação)
+ Durante a jornada de iniciação de pagamento, diferentes validações são necessárias pela instituição detentora
+ de conta e devem ocorrer conforme a seguir:
+
+ 1. Na criação do consentimento (*POST /consents*);
+ 2. Na criação do pagamento - Síncrono (*POST /payments*);
+ 3. Validações na consulta do pagamento (*GET /pix/payments/{paymentId}*);
+ 4. Demais validações executadas durante o processamento assíncrono do pagamento pela detentora, poderão ser consultados pela iniciadora através do endpoint (*GET /pix/payments/{paymentId}*) previstos com retorno HTTP Code 200 - OK com status RJCT (Rejected) e rejectionReason;
+ 5. Demais validações executadas durante o processamento assíncrono do consentimento pela detentora poderão ser consultados pela iniciadora através do endpoint (*GET /consents/{consentId}*) previstos com retorno HTTP Code 200 – OK com status REJECTED e rejectionReason
+
+ **Os tipos de validações dispostas abaixo não determinam a ordem em que as instituições devem implementá-las**
+
+ 1. **Validações na criação do consentimento (_POST /consents_)**
+ 1.1 **Orientações Iniciais**
+ 1.1.1 Não devem ser retornadas informações associadas ao usuário/cliente (ex. insuficiência de saldo, conta inexistente/bloqueada), uma vez que o cliente ainda não autorizou o consentimento / consumo de seus dados para o pagamento.
+ 1.1.2 Não devem ser executadas validações no DICT (Diretório de Identificadores de Contas Transacionais do Pix), a partir dos dados compartilhados nesse *endpoint*. Tais validações podem ocorrer somente na criação do pagamento;
+ 1.2 **Casos de erro relacionados às permissões de segurança para acesso à API (ex. certificado, access_token, jwt, assinatura)**
+ 1.2.1 Validação de Certificado: Valida utilização de certificado correto durante processo de DCR - HTTP Code 401 (INVALID_CLIENT);
+ 1.2.2 Validação de Access_Token: Verifica se Access_Token utilizado está correto - HTTP Code 401 (UNAUTHORIZED);
+ 1.2.3 Validação de assinatura da mensagem: Valida se assinatura das mensagens enviadas está correta – HTTP Code 400 (BAD_SIGNATURE);
+ 1.2.4 Validação de Claims (exceto data);
+ 1.2.4.1 Valida se dados (aud, iss, iat e jti) são válidos - HTTP status code 403 – (INVALID_CLIENT);
+ 1.2.4.2 Valida reuso de jti - HTTP Code 403 (INVALID_CLIENT).
+ 1.3 **Casos de erro sintáticos e semânticos, previstos com retorno HTTP Code 422 - Unprocessable Entity (detalhamento adicional na documentação técnica da API):**
+ 1.3.1 **Sintáticos**
+ 1.3.1.1 Envio de campos obrigatórios: Valida se todos os campos obrigatórios são informados (PARAMETRO_NAO_INFORMADO);
+ 1.3.1.2 Formatação de parâmetros: Valida se parâmetros informados obedecem a formatação especificada (PARAMETRO_INVALIDO).
+ 1.3.2 **Semânticos**
+ 1.3.2.1 Forma de pagamento: Valida se a forma de pagamento é suportada pela detentora (FORMA_PAGAMENTO_INVALIDA) **Obs. No detalhe do erro, a variável “modalidade” deve ser comunicada pela detentora da forma mais clara possível - ex. modalidade de pagamento não suportada (_localInstrument_ - QRES) ou tipo de arranjo pagamento não suportado (_type_ – ex. Pix / TED – previsto para inclusão futura);**
+ 1.3.2.2 Data de pagamento: Valida se a data de pagamento enviada é válida para a forma de pagamento selecionada (DATA_PAGAMENTO_INVALIDA);
+ 1.3.2.3 Detalhes do pagamento: Valida se determinado parâmetro informado obedece às regras de negócio (DETALHE_PAGAMENTO_INVALIDO);
+ 1.3.2.4 Demais validações não explicitamente informadas (ex. suspeita de fraude): (NAO_INFORMADO);
+ 1.3.2.5 Idempotência: Valida se há divergência entre chave de idempotência e informações enviadas (ERRO_IDEMPOTENCIA).
+
+ 2. **Validações na criação do pagamento - Síncrono (_POST /payments_)**
+ 2.1 **Casos de erro relacionados às permissões de segurança para acesso à API (ex. certificado, access_token, jwt, assinatura)**
+ 2.1.1 Validação de Certificado: Valida utilização de certificado correto durante processo de DCR - HTTP Code 401 (INVALID_CLIENT);
+ 2.1.2 Validação de Access_Token: Verifica se Access_Token utilizado está correto - HTTP Code 401 (UNAUTHORIZED);
+ 2.1.3 Validação de assinatura da mensagem: Valida se assinatura das mensagens enviadas está correta – HTTP Code 400 (BAD_SIGNATURE);
+ 2.1.4 Validação de Claims (exceto data);
+ 2.1.4.1 Valida se dados (aud, iss, iat e jti) são válidos - HTTP status code 403 – (INVALID_CLIENT);
+ 2.1.4.2 Valida reuso de jti - HTTP Code 403 (INVALID_CLIENT).
+ 2.2 **Casos de erro sintáticos e semânticos, previstos com retorno HTTP Code 422 - Unprocessable Entity (detalhamento adicional na documentação técnica da API):**
+ 2.2.1 **Sintáticos**
+ 2.3.1.1 Envio de campos obrigatórios: Valida se todos os campos obrigatórios são informados (PARAMETRO_NAO_INFORMADO);
+ 2.3.1.2 Formatação de parâmetros: Valida se parâmetros informados obedecem a formatação especificada (PARAMETRO_INVALIDO).
+ 2.2.2 **Semânticos**
+ 2.2.2.1 Saldo do usuário: Valida se a conta selecionada possui saldo suficiente para realizar o pagamento (SALDO_INSUFICIENTE);
+ 2.2.2.2 Limites da transação: Valida se valor (ou quantidade de transações) ultrapassa faixa de limite parametrizada na detentora (VALOR_ACIMA_LIMITE);
+ 2.2.2.3 Valor informado (QR Code): Valida se valor enviado é válido para o QR Code informado (VALOR_INVALIDO);
+ 2.2.2.4 Cobrança inválida: Valida expiração, vencimento e status (COBRANCA_INVALIDA);
+ 2.2.2.5 Status Consentimento: Valida se status de consentimento é diferente de “AUTHORISED” (CONSENTIMENTO_INVALIDO);
+ 2.2.2.6 Divergência entre pagamento e consentimento: Valida se dados do pagamento são diferentes dos dados do consentimento (PAGAMENTO_DIVERGENTE_CONSENTIMENTO)
+ 2.2.2.7 Recusado pela detentora: Valida se pagamento foi recusado pela detentora (PAGAMENTO_RECUSADO_DETENTORA), com a descrição do motivo de recusa (ex. chave Pix inválida, QRCode inválido, conta bloqueada);
+ 2.2.2.8 Detalhes do pagamento: Valida se determinado parâmetro informado obedece às regras de negócio (DETALHE_PAGAMENTO_INVALIDO);
+ 2.2.2.9 Demais validações não explicitamente informadas (ex. suspeita de fraude): (NAO_INFORMADO);
+ 2.2.2.10 Idempotência: Valida se há divergência entre chave de idempotência e informações enviadas (ERRO_IDEMPOTENCIA).
+ 2.3 **Casos de erro para validações síncronas no DICT**
+ Nesse cenário, o pagamento não é criado, porém o consentimento deve ser alterado para o status CONSUMED Retorno esperado do endpoint POST/Payments: HTTP Code 422 - Unprocessable Entity:
+ • Erro por dados inválidos: Conforme item **2.2.2.8**
+ • Erro por suspeita de fraude: Conforme item **2.2.2.9**
+
+ 3. **Validações na consulta do pagamento (_GET /pix/payments/{paymentId}_)**
+ 3.1 **Casos de erro relacionados às permissões de segurança para acesso à API (ex. certificado, access_token)**
+ 3.1.1 Validação de Certificado: Valida utilização de certificado correto durante processo de DCR - HTTP Code 401 (INVALID_CLIENT);
+ 3.1.2 Validação de Access_Token: Verifica se Access_Token utilizado está correto - HTTP Code 401 (UNAUTHORIZED).
+
+ 4. **Demais validações executadas durante o processamento assíncrono do pagamento pela detentora, poderão ser consultados pela iniciadora através do endpoint _GET /pix/payments/{paymentId}_ previstos com retorno HTTP Code 200 - OK com status RJCT (Rejected) e rejectionReason conforme abaixo (detalhamento adicional na documentação técnica da API):**
+ 4.1 **Demais validações durante processamento assíncrono**
+ 4.1.1 Saldo do usuário: Valida se a conta selecionada possui saldo suficiente para realizar o pagamento (SALDO_INSUFICIENTE);
+ 4.1.2 Limites da transação: Valida se valor (ou quantidade de transações) ultrapassa faixa de limite parametrizada na detentora (VALOR_ACIMA_LIMITE);
+ 4.1.3 Valor informado (QR Code): Valida se valor enviado é válido para o QR Code informado (VALOR_INVALIDO);
+ 4.1.4 Cobrança inválida: Valida expiração, vencimento e status (COBRANCA_INVALIDA);
+ 4.1.5 Divergência entre pagamento e consentimento: Valida se dados do pagamento são diferentes dos dados do consentimento (PAGAMENTO_DIVERGENTE_CONSENTIMENTO);
+ 4.1.6 Recusado pela detentora: Valida se pagamento foi recusado pela detentora (PAGAMENTO_RECUSADO_DETENTORA), com a descrição do motivo de recusa (ex. chave Pix inválida, QRCode inválido, conta bloqueada);
+ 4.1.7 Detalhes do pagamento: Valida se determinado parâmetro informado obedece às regras de negócio (DETALHE_PAGAMENTO_INVALIDO);
+ 4.1.8 Demais validações não explicitamente informadas (ex. suspeita de fraude): (NAO_INFORMADO);
+ 4.1.9 Validação SPI: Externaliza validações no SPI (PAGAMENTO_RECUSADO_SPI);
+ 4.2 **Casos de erro para validações assíncronas no DICT**
+ Neste cenário o pagamento é criado com sucesso (status RCVD) e o consentimento é consumido (status CONSUMED), porém, as validações contra o DICT só ocorrerão de forma assíncrona e em caso de negativa será percebido pela iniciadora na consulta do pagamento (GET /Payments).
+ Retorno esperado do endpoint GET /Payments: HTTP Code 200 - OK.
+ Status do Pagamento: RJCT (Rejected), com as seguintes opções rejectionReason:
+ • Erro por dados inválidos: Conforme item **4.1.7**;
+ • Erro por suspeita de fraude: Conforme item **4.1.8**.
+
+ 5. **Demais validações executadas durante o processamento assíncrono do consentimento pela detentora poderão ser consultados pela iniciadora através do endpoint _GET /consents/{consentId}_ previstos com retorno HTTP Code 200 – OK com status REJECTED e rejectionReason conforme abaixo:**
+ 5.1 **Validações durante o processamento assíncrono**
+ 5.1.1 - Falha de infraestrutura: Ocorreu algum erro interno na detentora durante processamento da criação do consentimento (FALHA_INFRAESTRUTURA)
+ 5.1.2 - Tempo de autorização expirado: O usuário não confirmou o consentimento e o mesmo expirou (TEMPO_EXPIRADO_AUTORIZACAO);
+ 5.1.3 - Rejeitado pelo usuário: O usuário explicitamente rejeitou a autorização do consentimento (REJEITADO_USUARIO);
+ 5.1.4 - Mesma conta origem/destino: A conta indicada pelo usuário para recebimento é a mesma selecionada para o pagamento (CONTAS_ORIGEM_DESTINO_IGUAIS);
+ 5.1.5 - Tipo de conta inválida: A conta indicada não permite operações de pagamento (CONTA_NAO_PERMITE_PAGAMENTO);
+ 5.1.6 - Saldo do usuário: Valida se a conta selecionada possui saldo suficiente para realizar o pagamento (SALDO_INSUFICIENTE);
+ 5.1.7 - Limites da transação: Valida se o valor ultrapassa o limite estabelecido [na instituição/no arranjo/outro] para permitir a realização de transações pelo cliente (VALOR_ACIMA_LIMITE);
+ 5.1.8 - QRCode inválido: O QRCode utilizado para a iniciação de pagamento não é válido (QRCODE_INVALIDO).
+ 5.2 **Momentos de validação dos rejectionReasons de acordo com o funil de consentimentos.**
+ ```
+ |----------------------------------|------------------------------|
+ | Etapas do funil de consentimento | rejectionReason/code |
+ |----------------------------------|------------------------------|
+ | Início da autenticação | FALHA_INFRAESTRUTURA |
+ | | TEMPO_EXPIRADO_AUTORIZACAO |
+ | | NAO_INFORMADO |
+ |----------------------------------|------------------------------|
+ | Conclusão da autenticação | FALHA_INFRAESTRUTURA |
+ | | TEMPO_EXPIRADO_AUTORIZACAO |
+ | | REJEITADO_USUARIO |
+ | | NAO_INFORMADO |
+ |----------------------------------|------------------------------|
+ | Autorização do cliente | FALHA_INFRAESTRUTURA |
+ | | CONTAS_ORIGEM_DESTINO_IGUAIS |
+ | | CONTA_SALARIO |
+ | | SALDO_INSUFICIENTE |
+ | | VALOR_ACIMA_LIMITE |
+ | | QRCODE_INVALIDO |
+ | | VALOR_INVALIDO |
+ | | NAO_INFORMADO |
+ |----------------------------------|------------------------------|
+ | Authorisation code emitido | FALHA_INFRAESTRUTURA |
+ | | TEMPO_EXPIRADO_CONSUMO |
+ | | NAO_INFORMADO |
+ |----------------------------------|------------------------------|
+ ```
+ version: '3.0.0-beta.2'
+ license:
+ name: Apache 2.0
+ url: 'https://www.apache.org/licenses/LICENSE-2.0'
+ contact:
+ name: Governança do Open Finance Brasil – Especificações
+ email: gt-interfaces@openbankingbr.org
+ url: 'https://openbanking-brasil.github.io/areadesenvolvedor/'
+servers:
+ - url: 'https://api.banco.com.br/open-banking/payments/v2'
+ description: Servidor de Produção
+ - url: 'https://apih.banco.com.br/open-banking/payments/v2'
+ description: Servidor de Homologação
+tags:
+ - name: Pagamentos
+paths:
+ /consents:
+ post:
+ tags:
+ - Pagamentos
+ summary: Criar consentimento para a iniciação de pagamento.
+ operationId: paymentsPostConsents
+ description: Método de criação do consentimento para a iniciação de pagamento.
+ parameters:
+ - $ref: '#/components/parameters/Authorization'
+ - $ref: '#/components/parameters/xFapiAuthDate'
+ - $ref: '#/components/parameters/xFapiCustomerIpAddress'
+ - $ref: '#/components/parameters/xFapiInteractionId'
+ - $ref: '#/components/parameters/xCustomerUserAgent'
+ - $ref: '#/components/parameters/XIdempotencyKey'
+ requestBody:
+ content:
+ application/jwt:
+ schema:
+ $ref: '#/components/schemas/CreatePaymentConsent'
+ description: Payload para criação do consentimento para iniciação do pagamento.
+ required: true
+ responses:
+ '201':
+ $ref: '#/components/responses/201PaymentsConsentsConsentCreated'
+ '400':
+ $ref: '#/components/responses/BadRequestPayments'
+ '401':
+ $ref: '#/components/responses/Unauthorized'
+ '403':
+ $ref: '#/components/responses/Forbidden'
+ '404':
+ $ref: '#/components/responses/NotFound'
+ '405':
+ $ref: '#/components/responses/MethodNotAllowed'
+ '406':
+ $ref: '#/components/responses/NotAcceptable'
+ '415':
+ $ref: '#/components/responses/UnsupportedMediaType'
+ '422':
+ $ref: '#/components/responses/UnprocessableEntityConsents'
+ '429':
+ $ref: '#/components/responses/TooManyRequests'
+ '500':
+ $ref: '#/components/responses/InternalServerError'
+ '529':
+ $ref: '#/components/responses/SiteIsOverloaded'
+ default:
+ description: Erro inesperado.
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/ResponseError'
+ security:
+ - OAuth2ClientCredentials:
+ - payments
+ '/consents/{consentId}':
+ get:
+ tags:
+ - Pagamentos
+ summary: Consultar consentimento para iniciação de pagamento.
+ operationId: paymentsGetConsentsConsentId
+ description: Método para consulta do consentimento para a iniciação de pagamento.
+ parameters:
+ - $ref: '#/components/parameters/consentId'
+ - $ref: '#/components/parameters/Authorization'
+ - $ref: '#/components/parameters/xFapiAuthDate'
+ - $ref: '#/components/parameters/xFapiCustomerIpAddress'
+ - $ref: '#/components/parameters/xFapiInteractionId'
+ - $ref: '#/components/parameters/xCustomerUserAgent'
+ responses:
+ '200':
+ $ref: '#/components/responses/200PaymentsConsentsConsentIdRead'
+ '400':
+ $ref: '#/components/responses/BadRequest'
+ '401':
+ $ref: '#/components/responses/Unauthorized'
+ '403':
+ $ref: '#/components/responses/Forbidden'
+ '404':
+ $ref: '#/components/responses/NotFound'
+ '405':
+ $ref: '#/components/responses/MethodNotAllowed'
+ '406':
+ $ref: '#/components/responses/NotAcceptable'
+ '429':
+ $ref: '#/components/responses/TooManyRequests'
+ '500':
+ $ref: '#/components/responses/InternalServerError'
+ '529':
+ $ref: '#/components/responses/SiteIsOverloaded'
+ default:
+ description: Erro inesperado.
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/ResponseError'
+ security:
+ - OAuth2ClientCredentials:
+ - payments
+ /pix/payments:
+ post:
+ tags:
+ - Pagamentos
+ summary: Criar iniciação de pagamento.
+ operationId: paymentsPostPixPayments
+ description: Método para criar uma iniciação de pagamento.
+ parameters:
+ - $ref: '#/components/parameters/Authorization'
+ - $ref: '#/components/parameters/xFapiAuthDate'
+ - $ref: '#/components/parameters/xFapiCustomerIpAddress'
+ - $ref: '#/components/parameters/xFapiInteractionId'
+ - $ref: '#/components/parameters/xCustomerUserAgent'
+ - $ref: '#/components/parameters/XIdempotencyKey'
+ requestBody:
+ content:
+ application/jwt:
+ schema:
+ $ref: '#/components/schemas/CreatePixPayment'
+ description: Payload para criação da iniciação do pagamento Pix.
+ required: true
+ responses:
+ '201':
+ $ref: '#/components/responses/201PaymentsInitiationPixPaymentCreated'
+ '400':
+ $ref: '#/components/responses/BadRequestPixPayments'
+ '401':
+ $ref: '#/components/responses/Unauthorized'
+ '403':
+ $ref: '#/components/responses/Forbidden'
+ '404':
+ $ref: '#/components/responses/NotFound'
+ '405':
+ $ref: '#/components/responses/MethodNotAllowed'
+ '406':
+ $ref: '#/components/responses/NotAcceptable'
+ '415':
+ $ref: '#/components/responses/UnsupportedMediaType'
+ '422':
+ $ref: '#/components/responses/UnprocessableEntityPixPayment'
+ '429':
+ $ref: '#/components/responses/TooManyRequests'
+ '500':
+ $ref: '#/components/responses/InternalServerError'
+ '529':
+ $ref: '#/components/responses/SiteIsOverloaded'
+ default:
+ description: Erro inesperado.
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/ResponseError'
+ security:
+ - OAuth2AuthorizationCode:
+ - openid
+ - 'consent:consentId'
+ - payments
+ '/pix/payments/{paymentId}':
+ get:
+ tags:
+ - Pagamentos
+ summary: Consultar iniciação de pagamento.
+ operationId: paymentsGetPixPaymentsPaymentId
+ description: Método para consultar uma iniciação de pagamento.
+ parameters:
+ - $ref: '#/components/parameters/paymentId'
+ - $ref: '#/components/parameters/Authorization'
+ - $ref: '#/components/parameters/xFapiAuthDate'
+ - $ref: '#/components/parameters/xFapiCustomerIpAddress'
+ - $ref: '#/components/parameters/xFapiInteractionId'
+ - $ref: '#/components/parameters/xCustomerUserAgent'
+ responses:
+ '200':
+ $ref: '#/components/responses/200PaymentsInitiationPixPaymentIdRead'
+ '400':
+ $ref: '#/components/responses/BadRequest'
+ '401':
+ $ref: '#/components/responses/Unauthorized'
+ '403':
+ $ref: '#/components/responses/Forbidden'
+ '404':
+ $ref: '#/components/responses/NotFound'
+ '405':
+ $ref: '#/components/responses/MethodNotAllowed'
+ '406':
+ $ref: '#/components/responses/NotAcceptable'
+ '429':
+ $ref: '#/components/responses/TooManyRequests'
+ '500':
+ $ref: '#/components/responses/InternalServerError'
+ '529':
+ $ref: '#/components/responses/SiteIsOverloaded'
+ default:
+ description: Erro inesperado.
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/ResponseError'
+ security:
+ - OAuth2ClientCredentials:
+ - payments
+ patch:
+ tags:
+ - Pagamentos
+ summary: Cancelar iniciação de pagamento.
+ operationId: paymentsPatchPixPaymentsPaymentId
+ description: |
+
+ Esse endpoint deve ser usado para cancelar, a pedido do cliente pagador, as transações que estejam em uma das seguintes situações: Agendada com sucesso (SCHD), retida para análise (PDNG) ou aguardando autorização de múltiplas alçadas (PATC).
+
+ - Caso a requisição seja bem sucedida, a transação vai para a situação CANC.
+
+ - Caso o status do pagamento seja diferente de SCHD/PDNG/PATC ou alguma outra regra de negócio impeça o cancelamento, a requisição PATCH retorna HTTP Status 422 com o code PAGAMENTO_NAO_PERMITE_CANCELAMENTO.
+
+ - Caso receba um 422, a iniciadora deve fazer uma requisição GET no pagamento para verificar a situação atual dele, bem como detalhes associados.
+
+ O cancelamento de pagamento agendado (SCHD) pode ser enviado até 23:59 (Horário de Brasília) do dia anterior à data de efetivação do pagamento.
+ parameters:
+ - $ref: '#/components/parameters/paymentId'
+ - $ref: '#/components/parameters/Authorization'
+ - $ref: '#/components/parameters/xFapiAuthDate'
+ - $ref: '#/components/parameters/xFapiCustomerIpAddress'
+ - $ref: '#/components/parameters/xFapiInteractionId'
+ - $ref: '#/components/parameters/xCustomerUserAgent'
+ requestBody:
+ content:
+ application/jwt:
+ schema:
+ $ref: '#/components/schemas/PatchPixPayment'
+ description: Payload para cancelamento do pagamento.
+ required: true
+ responses:
+ '200':
+ $ref: '#/components/responses/200PatchPixPayments'
+ '400':
+ $ref: '#/components/responses/BadRequest'
+ '401':
+ $ref: '#/components/responses/Unauthorized'
+ '403':
+ $ref: '#/components/responses/Forbidden'
+ '404':
+ $ref: '#/components/responses/NotFound'
+ '405':
+ $ref: '#/components/responses/MethodNotAllowed'
+ '406':
+ $ref: '#/components/responses/NotAcceptable'
+ '422':
+ $ref: '#/components/responses/UnprocessableEntityPixPayments'
+ '429':
+ $ref: '#/components/responses/TooManyRequests'
+ '500':
+ $ref: '#/components/responses/InternalServerError'
+ '529':
+ $ref: '#/components/responses/SiteIsOverloaded'
+ default:
+ description: Erro inesperado.
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/ResponseError'
+ security:
+ - OAuth2ClientCredentials:
+ - payments
+components:
+ schemas:
+ 422ResponseErrorCreateConsent:
+ type: object
+ required:
+ - errors
+ properties:
+ errors:
+ type: array
+ minItems: 1
+ maxItems: 3
+ items:
+ type: object
+ required:
+ - code
+ - title
+ - detail
+ properties:
+ code:
+ type: string
+ enum:
+ - FORMA_PAGAMENTO_INVALIDA
+ - DATA_PAGAMENTO_INVALIDA
+ - DETALHE_PAGAMENTO_INVALIDO
+ - PARAMETRO_NAO_INFORMADO
+ - PARAMETRO_INVALIDO
+ - ERRO_IDEMPOTENCIA
+ - NAO_INFORMADO
+ example: FORMA_PAGAMENTO_INVALIDA
+ description: |
+ Códigos de erros previstos na criação de consentimento para a iniciação de pagamentos:
+ • FORMA_PAGAMENTO_INVALIDA: Forma de pagamento inválida.
+ • DATA_PAGAMENTO_INVALIDA: Data de pagamento inválida.
+ • DETALHE_PAGAMENTO_INVALIDO: Detalhe do pagamento inválido.
+ • PARAMETRO_NAO_INFORMADO: Parâmetro não informado.
+ • PARAMETRO_INVALIDO: Parâmetro inválido.
+ • ERRO_IDEMPOTENCIA: Erro idempotência.
+ • NAO_INFORMADO: Não informado.
+ title:
+ type: string
+ maxLength: 255
+ pattern: '[\w\W\s]*'
+ example: Forma de pagamento inválida.
+ description: |
+ Título específico do erro reportado, de acordo com o código enviado:
+ • FORMA_PAGAMENTO_INVALIDA: Forma de pagamento inválida.
+ • DATA_PAGAMENTO_INVALIDA: Data de pagamento inválida.
+ • DETALHE_PAGAMENTO_INVALIDO: Detalhe do pagamento inválido.
+ • PARAMETRO_NAO_INFORMADO: Parâmetro não informado.
+ • PARAMETRO_INVALIDO: Parâmetro inválido.
+ • ERRO_IDEMPOTENCIA: Erro idempotência.
+ • NAO_INFORMADO: Não informado.
+ detail:
+ type: string
+ maxLength: 2048
+ pattern: '[\w\W\s]*'
+ example: 'Forma de pagamento [Modalidade] não suportada.'
+ description: |
+ Descrição específica do erro de acordo com o código reportado:
+ • FORMA_PAGAMENTO_INVALIDA: Forma de pagamento [Modalidade] não suportada.
+ • DATA_PAGAMENTO_INVALIDA: Data de pagamento inválida para a forma de pagamento selecionada.
+ • DETALHE_PAGAMENTO_INVALIDO: Parâmetro [nome_campo] não obedece às regras de negócio.
+ • PARAMETRO_NAO_INFORMADO: Parâmetro [nome_campo] obrigatório não informado.
+ • PARAMETRO_INVALIDO: Parâmetro [nome_campo] não obedece as regras de formatação esperadas.
+ • ERRO_IDEMPOTENCIA: Conteúdo da mensagem (claim data) diverge do conteúdo associado a esta chave de idempotência (x-idempotency-key).
+ • NAO_INFORMADO: Não reportado/identificado pela instituição detentora de conta.
+ meta:
+ $ref: '#/components/schemas/Meta'
+ 422ResponseErrorCreatePixPayments:
+ type: object
+ required:
+ - errors
+ properties:
+ errors:
+ type: array
+ minItems: 1
+ maxItems: 9
+ items:
+ type: object
+ required:
+ - code
+ - title
+ - detail
+ properties:
+ code:
+ $ref: '#/components/schemas/EnumErrorsCreatePayment'
+ title:
+ type: string
+ maxLength: 255
+ pattern: '[\w\W\s]*'
+ example: Saldo insuficiente.
+ description: |
+ Título específico do erro reportado, de acordo com o código enviado:
+
+ • SALDO_INSUFICIENTE: Saldo insuficiente.
+
+ • VALOR_ACIMA_LIMITE: Acima do limite estabelecido.
+
+ • VALOR_INVALIDO: Valor inválido.
+
+ • COBRANCA_INVALIDA: Cobrança inválida.
+
+ • CONSENTIMENTO_INVALIDO: Consentimento inválido.
+
+ • PARAMETRO_NAO_INFORMADO: Parâmetro obrigatório não informado.
+
+ • PARAMETRO_INVALIDO: Parâmetro com valor inválido.
+
+ • NAO_INFORMADO: Não informado.
+
+ • PAGAMENTO_DIVERGENTE_CONSENTIMENTO: Divergência entre pagamento e consentimento.
+
+ • DETALHE_PAGAMENTO_INVALIDO: Detalhe do pagamento inválido.
+
+ • PAGAMENTO_RECUSADO_DETENTORA: Pagamento recusado pela detentora de conta.
+
+ • PAGAMENTO_RECUSADO_SPI: Pagamento recusado no Sistema de Pagamentos Instantâneos (SPI).
+
+ • ERRO_IDEMPOTENCIA: Erro idempotência.
+ detail:
+ type: string
+ maxLength: 2048
+ pattern: '[\w\W\s]*'
+ example: A conta selecionada não possui saldo suficiente para realizar o pagamento.
+ description: |
+ Descrição específica do erro de acordo com o código reportado:
+
+ • SALDO_INSUFICIENTE: A conta selecionada não possui saldo suficiente para realizar o pagamento.
+
+ • VALOR_ACIMA_LIMITE: O valor (ou quantidade de transações) ultrapassa a faixa de limite parametrizada na detentora para permitir a realização de transações pelo cliente.
+
+ • VALOR_INVALIDO: O valor enviado não é válido para o QR Code informado.
+
+ • COBRANCA_INVALIDA: Validação de expiração, validação de vencimento ou Status Válido.
+
+ • CONSENTIMENTO_INVALIDO: Consentimento inválido (status diferente de "AUTHORISED" ou está expirado).
+
+ • PARAMETRO_NAO_INFORMADO: endToEndId
+
+ • PARAMETRO_INVALIDO: endToEndId
+
+ • NAO_INFORMADO: Não reportado/identificado pela instituição detentora de conta.
+
+ • PAGAMENTO_DIVERGENTE_CONSENTIMENTO: Dados do pagamento divergentes dos dados do consentimento.
+
+ • DETALHE_PAGAMENTO_INVALIDO: Parâmetro [nome_campo] não obedece às regras de negócio.
+
+ • PAGAMENTO_RECUSADO_DETENTORA: [descrição do motivo de recusa].
+
+ • PAGAMENTO_RECUSADO_SPI: [código de erro conforme tabela de domínios reason PACS.002].
+
+ • ERRO_IDEMPOTENCIA: Conteúdo da mensagem (claim data) diverge do conteúdo associado a esta chave de idempotência (x-idempotency-key).
+ meta:
+ $ref: '#/components/schemas/Meta'
+ 422ResponseErrorCreatePixPayment:
+ type: object
+ required:
+ - errors
+ properties:
+ errors:
+ type: array
+ minItems: 1
+ maxItems: 9
+ items:
+ type: object
+ required:
+ - code
+ - title
+ - detail
+ properties:
+ code:
+ $ref: '#/components/schemas/EnumErrorsCreatePixPayment'
+ title:
+ type: string
+ maxLength: 255
+ pattern: '[\w\W\s]*'
+ example: Pagamento não permite cancelamento.
+ description: |
+ Título específico do erro reportado, de acordo com o código enviado:
+
+ • PAGAMENTO_NAO_PERMITE_CANCELAMENTO: Pagamento não permite cancelamento
+ detail:
+ type: string
+ maxLength: 2048
+ pattern: '[\w\W\s]*'
+ example: Pagamento não permite cancelamento.
+ description: |
+ Descrição específica do erro de acordo com o código reportado:
+
+ • PAGAMENTO_NAO_PERMITE_CANCELAMENTO: Pagamento não permite cancelamento
+ meta:
+ $ref: '#/components/schemas/Meta'
+ BusinessEntity:
+ type: object
+ description: 'Usuário (pessoa jurídica) que encontra-se logado na instituição Iniciadora de Pagamento. [Restrição] Preenchimento obrigatório se usuário logado na instituição Iniciadora de Pagamento for um CNPJ (pessoa jurídica).'
+ required:
+ - document
+ properties:
+ document:
+ type: object
+ required:
+ - identification
+ - rel
+ properties:
+ identification:
+ type: string
+ maxLength: 14
+ description: Número do documento de identificação oficial do titular pessoa jurídica.
+ example: '11111111111111'
+ pattern: '^\d{14}$'
+ rel:
+ type: string
+ maxLength: 4
+ description: Tipo do documento de identificação oficial do titular pessoa jurídica.
+ example: CNPJ
+ pattern: '^[A-Z]{4}$'
+ CreatePaymentConsent:
+ type: object
+ required:
+ - data
+ properties:
+ data:
+ type: object
+ description: Objeto contendo as informações de consentimento para a iniciação de pagamento individual.
+ required:
+ - loggedUser
+ - creditor
+ - payment
+ properties:
+ loggedUser:
+ $ref: '#/components/schemas/LoggedUser'
+ businessEntity:
+ $ref: '#/components/schemas/BusinessEntity'
+ creditor:
+ $ref: '#/components/schemas/Identification'
+ payment:
+ type: object
+ description: Objeto contendo dados de pagamento para consentimento.
+ required:
+ - type
+ - currency
+ - amount
+ - details
+ properties:
+ type:
+ $ref: '#/components/schemas/EnumPaymentType'
+ schedule:
+ oneOf:
+ - $ref: '#/components/schemas/Schedule'
+ date:
+ type: string
+ format: date
+ maxLength: 10
+ pattern: '^(\d{4})-(1[0-2]|0?[1-9])-(3[01]|[12][0-9]|0?[1-9])$'
+ example: '2021-01-01'
+ description: |
+ [Restrição] Mutuamente excludente com o objeto schedule.
+
+ Este campo é obrigatório no caso de pagamento único.
+
+ Neste caso, o objeto schedule não deve ser informado.
+ currency:
+ type: string
+ maxLength: 3
+ pattern: '^([A-Z]{3})$'
+ example: BRL
+ description: |
+ Código da moeda nacional segundo modelo ISO-4217, ou seja, 'BRL'.
+ Todos os valores monetários informados estão representados com a moeda vigente do Brasil.
+ amount:
+ type: string
+ minLength: 4
+ maxLength: 19
+ pattern: '^((\d{1,16}\.\d{2}))$'
+ example: '100000.12'
+ description: |
+ Valor da transação com 2 casas decimais. O valor deve ser o mesmo enviado no consentimento.
+
+ Para QR Code estático com valor pré-determinado no QR Code ou para QR Code dinâmico com indicação de que o valor não pode ser alterado: O campo amount deve ser preenchido com o valor estabelecido no QR Code.
+ Caso seja preenchido com valor divergente do QR Code, deve ser retornado um erro HTTP Status 422.
+ ibgeTownCode:
+ type: string
+ minLength: 7
+ maxLength: 7
+ pattern: '^\d{7}$'
+ example: '5300108'
+ description: |
+ O campo ibgetowncode no arranjo PIX, tem o mesmo comportamento que o campo codMun descrito no item 1.6.6 do manual do PIX, conforme segue:
+
+ 1. Caso a informação referente ao município não seja enviada; o PSP do recebedor assumirá que não existem feriados estaduais e municipais no período em questão;
+ details:
+ $ref: '#/components/schemas/Details'
+ debtorAccount:
+ $ref: '#/components/schemas/DebtorAccount'
+ CreatePixPayment:
+ type: object
+ required:
+ - data
+ properties:
+ data:
+ $ref: '#/components/schemas/CreatePixPaymentData'
+ CreatePixPaymentData:
+ type: object
+ description: Objeto contendo dados do pagamento e do recebedor (creditor).
+ required:
+ - endToEndId
+ - localInstrument
+ - payment
+ - creditorAccount
+ - cnpjInitiator
+ properties:
+ endToEndId:
+ $ref: '#/components/schemas/EndToEndIdWithoutRestriction'
+ localInstrument:
+ $ref: '#/components/schemas/EnumLocalInstrument'
+ payment:
+ $ref: '#/components/schemas/PaymentPix'
+ creditorAccount:
+ $ref: '#/components/schemas/PaymentsCreditorAccount'
+ remittanceInformation:
+ type: string
+ maxLength: 140
+ pattern: '[\w\W\s]*'
+ example: Pagamento da nota XPTO035-002.
+ description: |
+ Deve ser preenchido sempre que o usuário pagador inserir alguma informação adicional em um pagamento, a ser enviada ao recebedor.
+ qrCode:
+ type: string
+ maxLength: 512
+ pattern: '[\w\W\s]*'
+ example: |
+ 00020104141234567890123426660014BR.GOV.BCB.PIX014466756C616E6F32303139406578616D706C652E636F6D27300012
+ BR.COM.OUTRO011001234567895204000053039865406123.455802BR5915NOMEDORECEBEDOR6008BRASILIA61087007490062
+ 530515RP12345678-201950300017BR.GOV.BCB.BRCODE01051.0.080450014BR.GOV.BCB.PIX0123PADRAO.URL.PIX/0123AB
+ CD81390012BR.COM.OUTRO01190123.ABCD.3456.WXYZ6304EB76
+ description: |
+ Sequência de caracteres que corresponde ao QR Code disponibilizado para o pagador.
+ É a sequência de caracteres que seria lida pelo leitor de QR Code, e deve propiciar o retorno dos dados do pagador após consulta na DICT.
+ Essa funcionalidade é possível tanto para QR Code estático quanto para QR Code dinâmico.
+ No arranjo do Pix esta é a mesma sequência gerada e/ou lida pela funcionalidade Pix Copia e Cola.
+ Este campo deverá ser no formato UTF-8.
+ [Restrição] Preenchimento obrigatório para pagamentos por QR Code, observado o tamanho máximo de 512 bytes.
+ proxy:
+ type: string
+ maxLength: 77
+ pattern: '[\w\W\s]*'
+ example: '12345678901'
+ description: |
+ Chave cadastrada no DICT pertencente ao recebedor. Os tipos de chaves podem ser: telefone, e-mail, cpf/cnpj ou chave aleatória.
+ No caso de telefone celular deve ser informado no padrão E.1641.
+ Para e-mail deve ter o formato xxxxxxxx@xxxxxxx.xxx(.xx) e no máximo 77 caracteres.
+ No caso de CPF deverá ser informado com 11 números, sem pontos ou traços.
+ Para o caso de CNPJ deverá ser informado com 14 números, sem pontos ou traços.
+ No caso de chave aleatória deve ser informado o UUID gerado pelo DICT, conforme formato especificado na RFC41223.
+ Se informado, a detentora da conta deve validar o proxy no DICT quando localInstrument for igual a DICT, QRDN ou QRES e validar o campo creditorAccount.
+ Esta validação é opcional caso o localInstrument for igual a INIC.
+ [Restrição] Se localInstrument for igual a MANU, o campo proxy não deve ser preenchido. Se localInstrument for igual INIC, DICT, QRDN ou QRES, o campo proxy deve ser sempre preenchido com a chave Pix.
+ cnpjInitiator:
+ type: string
+ pattern: '^\d{14}$'
+ maxLength: 14
+ example: '50685362000135'
+ description: CNPJ do Iniciador de Pagamento devidamente habilitado para a prestação de Serviço de Iniciação no Pix.
+ transactionIdentification:
+ type: string
+ pattern: '^[a-zA-Z0-9]{1,35}$'
+ maxLength: 35
+ example: E00038166201907261559y6j6
+ description: |
+ Trata-se de um identificador de transação que deve ser retransmitido intacto pelo PSP do pagador ao gerar a ordem de pagamento. Essa informação permitirá ao recebedor identificar e correlacionar a transferência, quando recebida, com a apresentação das instruções ao pagador.
+ Os caracteres permitidos no contexto do Pix para o campo txid (EMV 62-05) são:
+ - Letras minúsculas, de ‘a’ a ‘z’
+ - Letras maiúsculas, de ‘A’ a ‘z’
+ - Dígitos decimais, de ‘0’ a ‘9’
+
+ [Restrição] Preenchimento condicional de acordo com o conteúdo do campo localInstument:
+
+ – MANU - O campo transactionIdentification não deve ser preenchido.
+ – DICT - O campo transactionIdentification não deve ser preenchido.
+ – INIC - O campo transactionIdentification deve ser preenchido obrigatoriamente e deve conter até 25 caracteres alfanuméricos ([a-z|A-Z|0-9]).
+ – QRES - Caso o QR Code estático possua o dado <TxId> preenchido, o campo transactionIdentification deverá ser preenchido com este valor, caso o QR Code não possua o <TxId> o campo transactionIdentification não deverá ser preenchido. O <TxId> deve conter até 25 caracteres alfanuméricos ([a-z|A-Z|0-9]).
+ – QRDN - Será obrigatório seu preenchimento com o <TxId> do payload JSON do QR Code dinâmico. O <TxId> deve conter entre 26 e 35 caracteres alfanuméricos ([a-z|A-Z|0-9]).
+
+ A detentora de conta deve validar se a condicionalidade e o formato do campo foram atendidas pela iniciadora de pagamento.
+ ibgeTownCode:
+ type: string
+ minLength: 7
+ maxLength: 7
+ pattern: '^\d{7}$'
+ example: '5300108'
+ description: |
+ O campo ibgetowncode no arranjo PIX, tem o mesmo comportamento que o campo codMun descrito no item 1.6.6 do manual do PIX, conforme segue:
+
+ 1. Caso a informação referente ao município não seja enviada; o PSP do recebedor assumirá que não existem feriados estaduais e municipais no período em questão;
+ authorisationFlow:
+ type: string
+ enum:
+ - HYBRID_FLOW
+ - CIBA_FLOW
+ example: HYBRID_FLOW
+ description: |
+ Campo condicional utilizado para identificar o fluxo de autorização em que o pagamento foi solicitado.
+
+ [Restrição] Caso o campo não esteja presente no payload, subentende-se que o fluxo de autorização utilizado é o HYBRID_FLOW.
+ CreditorAccount:
+ type: object
+ description: |
+ Objeto que contém a identificação da conta de destino do beneficiário/recebedor.
+ required:
+ - ispb
+ - number
+ - accountType
+ properties:
+ ispb:
+ type: string
+ minLength: 8
+ maxLength: 8
+ pattern: '^[0-9]{8}$'
+ example: '12345678'
+ description: |
+ Deve ser preenchido com o ISPB (Identificador do Sistema de Pagamentos Brasileiros) do participante do SPI (Sistema de pagamentos instantâneos) somente com números.
+ issuer:
+ type: string
+ minLength: 1
+ maxLength: 4
+ pattern: '^[0-9]{1,4}$'
+ example: '1774'
+ description: |
+ Código da Agência emissora da conta sem dígito.
+ (Agência é a dependência destinada ao atendimento aos clientes, ao público em geral e aos associados de cooperativas de crédito,
+ no exercício de atividades da instituição, não podendo ser móvel ou transitória).
+ [Restrição] Preenchimento obrigatório para os seguintes tipos de conta: CACC (CONTA_DEPOSITO_A_VISTA), SVGS (CONTA_POUPANCA) e SLRY (CONTA_SALARIO).
+ number:
+ type: string
+ minLength: 1
+ maxLength: 20
+ pattern: '^[0-9]{1,20}$'
+ example: '1234567890'
+ description: |
+ Deve ser preenchido com o número da conta do usuário recebedor, com dígito verificador (se este existir),
+ se houver valor alfanumérico, este deve ser convertido para 0.
+ accountType:
+ $ref: '#/components/schemas/EnumAccountPaymentsType'
+ PaymentsCreditorAccount:
+ type: object
+ description: |
+ Objeto que contém a identificação da conta de destino do beneficiário/recebedor.
+ required:
+ - ispb
+ - number
+ - accountType
+ properties:
+ ispb:
+ type: string
+ minLength: 8
+ maxLength: 8
+ pattern: '^[0-9]{8}$'
+ example: '12345678'
+ description: |
+ Deve ser preenchido com o ISPB (Identificador do Sistema de Pagamentos Brasileiros) do participante do SPI (Sistema de pagamentos instantâneos) somente com números.
+ issuer:
+ type: string
+ minLength: 1
+ maxLength: 4
+ pattern: '^[0-9]{1,4}$'
+ example: '1774'
+ description: |
+ Código da Agência emissora da conta sem dígito.
+ (Agência é a dependência destinada ao atendimento aos clientes, ao público em geral e aos associados de cooperativas de crédito,
+ no exercício de atividades da instituição, não podendo ser móvel ou transitória).
+ [Restrição] Preenchimento obrigatório para os seguintes tipos de conta: CACC (CONTA_DEPOSITO_A_VISTA), SVGS (CONTA_POUPANCA) e SLRY (CONTA_SALARIO).
+ number:
+ type: string
+ minLength: 1
+ maxLength: 20
+ pattern: '^[0-9]{1,20}$'
+ example: '1234567890'
+ description: |
+ Deve ser preenchido com o número da conta do usuário recebedor, com dígito verificador (se este existir),
+ se houver valor alfanumérico, este deve ser convertido para 0.
+ accountType:
+ $ref: '#/components/schemas/EnumPaymentsAccountPaymentsType'
+ DebtorAccount:
+ type: object
+ description: |
+ Objeto que contém a identificação da conta de origem do pagador.
+ As informações quanto à conta de origem do pagador poderão ser trazidas no consentimento para a detentora, caso a iniciadora tenha coletado essas informações do cliente. Do contrário, será coletada na detentora e trazida para a iniciadora como resposta à criação do pagamento.
+ required:
+ - ispb
+ - number
+ - accountType
+ properties:
+ ispb:
+ type: string
+ minLength: 8
+ maxLength: 8
+ pattern: '^[0-9]{8}$'
+ example: '12345678'
+ description: |
+ Deve ser preenchido com o ISPB (Identificador do Sistema de Pagamentos Brasileiros) do participante do SPI (Sistema de pagamentos instantâneos) somente com números.
+ issuer:
+ type: string
+ minLength: 1
+ maxLength: 4
+ pattern: '^[0-9]{1,4}$'
+ example: '1774'
+ description: |
+ Código da Agência emissora da conta sem dígito.
+ (Agência é a dependência destinada ao atendimento aos clientes, ao público em geral e aos associados de cooperativas de crédito,
+ no exercício de atividades da instituição, não podendo ser móvel ou transitória).
+ [Restrição] Preenchimento obrigatório para os seguintes tipos de conta: CACC (CONTA_DEPOSITO_A_VISTA), SVGS (CONTA_POUPANCA) e SLRY (CONTA_SALARIO).
+ number:
+ type: string
+ minLength: 1
+ maxLength: 20
+ pattern: '^[0-9]{1,20}$'
+ example: '1234567890'
+ description: |
+ Deve ser preenchido com o número da conta transacional do usuário pagador, com dígito verificador (se este existir),
+ se houver valor alfanumérico, este deve ser convertido para 0.
+ accountType:
+ $ref: '#/components/schemas/EnumAccountPaymentsType'
+ PaymentsDebtorAccount:
+ type: object
+ description: |
+ Objeto que contém a identificação da conta de origem do pagador.
+ As informações quanto à conta de origem do pagador poderão ser trazidas no consentimento para a detentora, caso a iniciadora tenha coletado essas informações do cliente. Do contrário, será coletada na detentora e trazida para a iniciadora como resposta à criação do pagamento.
+ required:
+ - ispb
+ - number
+ - accountType
+ properties:
+ ispb:
+ type: string
+ minLength: 8
+ maxLength: 8
+ pattern: '^[0-9]{8}$'
+ example: '12345678'
+ description: |
+ Deve ser preenchido com o ISPB (Identificador do Sistema de Pagamentos Brasileiros) do participante do SPI (Sistema de pagamentos instantâneos) somente com números.
+ issuer:
+ type: string
+ minLength: 1
+ maxLength: 4
+ pattern: '^[0-9]{1,4}$'
+ example: '1774'
+ description: |
+ Código da Agência emissora da conta sem dígito.
+ (Agência é a dependência destinada ao atendimento aos clientes, ao público em geral e aos associados de cooperativas de crédito,
+ no exercício de atividades da instituição, não podendo ser móvel ou transitória).
+ [Restrição] Preenchimento obrigatório para os seguintes tipos de conta: CACC (CONTA_DEPOSITO_A_VISTA), SVGS (CONTA_POUPANCA) e SLRY (CONTA_SALARIO).
+ number:
+ type: string
+ minLength: 1
+ maxLength: 20
+ pattern: '^[0-9]{1,20}$'
+ example: '1234567890'
+ description: |
+ Deve ser preenchido com o número da conta transacional do usuário pagador, com dígito verificador (se este existir),
+ se houver valor alfanumérico, este deve ser convertido para 0.
+ accountType:
+ $ref: '#/components/schemas/EnumPaymentsAccountPaymentsType'
+ ConsentsDebtorAccount:
+ type: object
+ description: |
+ Objeto que contém a identificação da conta de origem do pagador.
+ As informações quanto à conta de origem do pagador poderão ser trazidas no consentimento para a detentora, caso a iniciadora tenha coletado essas informações do cliente.
+ No caso em que o cliente não preenche os dados na iniciadora, a detentora deverá persistir as informações da conta selecionada seguindo as condições abaixo.
+
+ [Restrição]
+ - AUTHORISED e CONSUMED: Para esses dois status, o preenchimento do campo deverá ser obrigatório.
+ - REJECTED: Para este status o preenchimento é condicional, dado que há cenários em que a detentora também não terá conhecimento da conta origem, pois a mesma não foi selecionada pelo usuário. Nos casos em que houver seleção, a conta deve ser preenchida obrigatoriamente.
+ required:
+ - ispb
+ - number
+ - accountType
+ properties:
+ ispb:
+ type: string
+ minLength: 8
+ maxLength: 8
+ pattern: '^[0-9]{8}$'
+ example: '12345678'
+ description: |
+ Deve ser preenchido com o ISPB (Identificador do Sistema de Pagamentos Brasileiros) do participante do SPI (Sistema de pagamentos instantâneos) somente com números.
+ issuer:
+ type: string
+ minLength: 1
+ maxLength: 4
+ pattern: '^[0-9]{1,4}$'
+ example: '1774'
+ description: |
+ Código da Agência emissora da conta sem dígito.
+ (Agência é a dependência destinada ao atendimento aos clientes, ao público em geral e aos associados de cooperativas de crédito,
+ no exercício de atividades da instituição, não podendo ser móvel ou transitória).
+ [Restrição] Preenchimento obrigatório para os seguintes tipos de conta: CACC (CONTA_DEPOSITO_A_VISTA), SVGS (CONTA_POUPANCA) e SLRY (CONTA_SALARIO).
+ number:
+ type: string
+ minLength: 1
+ maxLength: 20
+ pattern: '^[0-9]{1,20}$'
+ example: '1234567890'
+ description: |
+ Deve ser preenchido com o número da conta transacional do usuário pagador, com dígito verificador (se este existir),
+ se houver valor alfanumérico, este deve ser convertido para 0.
+ accountType:
+ $ref: '#/components/schemas/EnumAccountPaymentsType'
+ Details:
+ type: object
+ description: |
+ Objeto contendo os detalhes do pagamento.
+ required:
+ - localInstrument
+ - creditorAccount
+ properties:
+ localInstrument:
+ $ref: '#/components/schemas/EnumLocalInstrument'
+ qrCode:
+ type: string
+ maxLength: 512
+ pattern: '[\w\W\s]*'
+ example: |
+ 00020104141234567890123426660014BR.GOV.BCB.PIX014466756C616E6F32303139406578616D706C652E636F6D27300012
+ BR.COM.OUTRO011001234567895204000053039865406123.455802BR5915NOMEDORECEBEDOR6008BRASILIA61087007490062
+ 530515RP12345678-201950300017BR.GOV.BCB.BRCODE01051.0.080450014BR.GOV.BCB.PIX0123PADRAO.URL.PIX/0123AB
+ CD81390012BR.COM.OUTRO01190123.ABCD.3456.WXYZ6304EB76
+ description: |
+ Sequência de caracteres que corresponde ao QR Code disponibilizado para o pagador.
+ É a sequência de caracteres que seria lida pelo leitor de QR Code, e deve propiciar o retorno dos dados do pagador após consulta na DICT.
+ Essa funcionalidade é possível tanto para QR Code estático quanto para QR Code dinâmico.
+ No arranjo do Pix esta é a mesma sequência gerada e/ou lida pela funcionalidade Pix Copia e Cola.
+ Este campo deverá ser no formato UTF-8.
+ [Restrição] Preenchimento obrigatório para pagamentos por QR Code, observado o tamanho máximo de 512 bytes.
+ proxy:
+ type: string
+ maxLength: 77
+ pattern: '[\w\W\s]*'
+ example: '12345678901'
+ description: |
+ Chave cadastrada no DICT pertencente ao recebedor. Os tipos de chaves podem ser: telefone, e-mail, cpf/cnpj ou chave aleatória.
+ No caso de telefone celular deve ser informado no padrão E.1641.
+ Para e-mail deve ter o formato xxxxxxxx@xxxxxxx.xxx(.xx) e no máximo 77 caracteres.
+ No caso de CPF deverá ser informado com 11 números, sem pontos ou traços.
+ Para o caso de CNPJ deverá ser informado com 14 números, sem pontos ou traços.
+ No caso de chave aleatória deve ser informado o UUID gerado pelo DICT, conforme formato especificado na RFC41223.
+ Se informado, a detentora da conta deve validar o proxy no DICT quando localInstrument for igual a DICT, QRDN ou QRES e validar o campo creditorAccount.
+ Esta validação é opcional caso o localInstrument for igual a INIC.
+ [Restrição]
+ Se localInstrument for igual a MANU, o campo proxy não deve ser preenchido.
+ Se localInstrument for igual INIC, DICT, QRDN ou QRES, o campo proxy deve ser sempre preenchido com a chave Pix.
+ creditorAccount:
+ $ref: '#/components/schemas/CreditorAccount'
+ EndToEndId:
+ type: string
+ minLength: 32
+ maxLength: 32
+ pattern: '^([E])([0-9]{8})([0-9]{4})(0[1-9]|1[0-2])(0[1-9]|[1-2][0-9]|3[0-1])(2[0-3]|[01][0-9])([0-5][0-9])([a-zA-Z0-9]{11})$'
+ example: E9040088820210128000800123873170
+ description: |
+ Trata-se de um identificador único, gerado na instituição iniciadora de pagamento e recebido na instituição detentora de conta, permeando toda a jornada do pagamento Pix.
+
+ [Restrição] A detentora deve obrigatoriamente retornar o campo Com o mesmo valor recebido da iniciadora.
+ EndToEndIdWithoutRestriction:
+ type: string
+ minLength: 32
+ maxLength: 32
+ pattern: '^([E])([0-9]{8})([0-9]{4})(0[1-9]|1[0-2])(0[1-9]|[1-2][0-9]|3[0-1])(2[0-3]|[01][0-9])([0-5][0-9])([a-zA-Z0-9]{11})$'
+ example: E9040088820210128000800123873170
+ description: |
+ Deve ser preenchido no formato padrão ExxxxxxxxyyyyMMddHHmmkkkkkkkkkkk (32 caracteres; “case sensitive”, isso é, diferencia letras maiúsculas e minúsculas), sendo:
+
+ • “E” – fixo (1 caractere);
+
+ • xxxxxxxx – identificação do agente que gerou o ´EndToEndId´, podendo ser: o ISPB do participante direto ou o ISPB do participante indireto (8 caracteres numéricos [0-9]);
+
+ • yyyyMMddHHmm – data, hora e minuto (12 caracteres), seguindo o horário UTC, da submissão da ordem de pagamento, caso a liquidação seja prioritária, ou prevista para o envio da ordem ao sistema de liquidação, caso seja realizado um agendamento. Para ordens prioritárias e não prioritárias, aceita-se o preenchimento, pelo agente que gerou o ´EndToEndId´, com uma tolerância máxima de 12 horas, para o futuro e para o passado, em relação ao horário efetivo de processamento da ordem pelo SPI;
+
+ • kkkkkkkkkkk – sequencial criado pelo agente que gerou o ´EndToEndId´ (11 caracteres alfanuméricos [a-z/A-Z/0-9]). Deve ser único dentro de cada “yyyyMMddHHmm”.
+
+ Admite-se que o ´EndToEndId´ seja gerado pelo participante direto, pelo participante indireto ou pelo iniciador de pagamento.
+
+ Ele deve ser único, não podendo ser repetido em qualquer outra operação enviada ao SPI.
+
+ No caso de Pix agendamento, a iniciadora deverá, no que tange a composição do endToEndId, utilizar a data para a qual o Pix está sendo agendado e horário fixo 15:00 UTC, que dará para a detentora a janela de efetivação de 00:00 e 23:59 do horário de Brasília.
+ EnumAccountPaymentsType:
+ type: string
+ enum:
+ - CACC
+ - SLRY
+ - SVGS
+ - TRAN
+ example: CACC
+ description: |
+ Tipos de contas usadas para pagamento.
+ Modalidades tradicionais previstas pela Resolução 4.753, não contemplando contas vinculadas,
+ conta de domiciliados no exterior, contas em moedas estrangeiras e conta correspondente moeda eletrônica.
+ Segue descrição de cada valor do ENUM.
+
+ - CACC - Current - Conta Corrente.
+ - SLRY - Salary - Conta-Salário.
+ - SVGS - Savings - Conta de Poupança.
+ - TRAN - TransactingAccount - Conta de Pagamento pré-paga.
+ EnumPaymentsAccountPaymentsType:
+ type: string
+ enum:
+ - CACC
+ - SVGS
+ - TRAN
+ example: CACC
+ description: |
+ Tipos de contas usadas para pagamento.
+ Modalidades tradicionais previstas pela Resolução 4.753, não contemplando contas vinculadas,
+ conta de domiciliados no exterior, contas em moedas estrangeiras e conta correspondente moeda eletrônica.
+ Segue descrição de cada valor do ENUM.
+
+ - CACC - Current - Conta Corrente.
+ - SVGS - Savings - Conta de Poupança.
+ - TRAN - TransactingAccount - Conta de Pagamento pré-paga.
+ EnumAuthorisationStatusType:
+ type: string
+ enum:
+ - AWAITING_AUTHORISATION
+ - AUTHORISED
+ - REJECTED
+ - CONSUMED
+ example: AWAITING_AUTHORISATION
+ description: |
+ Retorna o estado do consentimento, o qual no momento de sua criação será AWAITING_AUTHORISATION.
+ Este estado será alterado depois da autorização do consentimento na detentora da conta do pagador (Debtor) para AUTHORISED ou REJECTED.
+ O consentimento fica no estado CONSUMED após ocorrer a iniciação do pagamento referente ao consentimento.
+ Em caso de consentimento expirado a detentora deverá retornar o status REJECTED.
+ Estados possíveis:
+ AWAITING_AUTHORISATION - Aguardando autorização
+ AUTHORISED - Autorizado
+ REJECTED - Rejeitado
+ CONSUMED - Consumido
+ EnumErrorsCreatePixPayment:
+ type: string
+ enum:
+ - PAGAMENTO_NAO_PERMITE_CANCELAMENTO
+ example: PAGAMENTO_NAO_PERMITE_CANCELAMENTO
+ description: |
+ Códigos de erros previstos na criação da iniciação de pagamento:
+
+ • PAGAMENTO_NAO_PERMITE_CANCELAMENTO: Pagamento não permite cancelamento
+ EnumErrorsCreatePayment:
+ type: string
+ enum:
+ - SALDO_INSUFICIENTE
+ - VALOR_ACIMA_LIMITE
+ - VALOR_INVALIDO
+ - COBRANCA_INVALIDA
+ - CONSENTIMENTO_INVALIDO
+ - PARAMETRO_NAO_INFORMADO
+ - PARAMETRO_INVALIDO
+ - NAO_INFORMADO
+ - PAGAMENTO_DIVERGENTE_CONSENTIMENTO
+ - DETALHE_PAGAMENTO_INVALIDO
+ - PAGAMENTO_RECUSADO_DETENTORA
+ - PAGAMENTO_RECUSADO_SPI
+ - ERRO_IDEMPOTENCIA
+ example: SALDO_INSUFICIENTE
+ description: |
+ Códigos de erros previstos na criação da iniciação de pagamento:
+
+ • SALDO_INSUFICIENTE: Esta conta não possui saldo suficiente para realizar o pagamento.
+
+ • VALOR_ACIMA_LIMITE: O valor (ou quantidade de transações) ultrapassa a faixa de limite parametrizada na detentora para permitir a realização de transações pelo cliente.
+
+ • VALOR_INVALIDO: O valor enviado não é válido para o QR Code informado.
+
+ • COBRANCA_INVALIDA: Validação de expiração, validação de vencimento, Status Válido.
+
+ • CONSENTIMENTO_INVALIDO: Consentimento inválido (status não é "authorised" ou está expirado).
+
+ • PARAMETRO_NAO_INFORMADO: Parâmetro não informado.
+
+ • PARAMETRO_INVALIDO: Parâmetro inválido.
+
+ • NAO_INFORMADO: Não informada pela detentora de conta.
+
+ • PAGAMENTO_DIVERGENTE_CONSENTIMENTO: Dados do pagamento divergentes dos dados do consentimento.
+
+ • DETALHE_PAGAMENTO_INVALIDO: Detalhe do pagamento inválido.
+
+ • PAGAMENTO_RECUSADO_DETENTORA: Pagamento recusado pela detentora de conta.
+
+ • PAGAMENTO_RECUSADO_SPI: Pagamento recusado no Sistema de Pagamentos Instantâneos (SPI).
+
+ • ERRO_IDEMPOTENCIA: Erro idempotência.
+ EnumLocalInstrument:
+ type: string
+ enum:
+ - MANU
+ - DICT
+ - QRDN
+ - QRES
+ - INIC
+ example: DICT
+ description: |
+ Especifica a forma de iniciação do pagamento:
+ - MANU - Inserção manual de dados da conta transacional
+ - DICT - Inserção manual de chave Pix
+ - QRDN - QR code dinâmico
+ - QRES - QR code estático
+ - INIC - Indica que o recebedor (creditor) contratou o Iniciador de Pagamentos especificamente para realizar iniciações de pagamento em que o beneficiário é previamente conhecido.
+ EnumPaymentCancellationStatusType:
+ type: string
+ enum:
+ - CANC
+ example: CANC
+ description: |
+ Utilizado para informar para qual estado deve ir o pagamento.
+ Atualmente o único valor possível é CANC.
+ EnumPaymentPersonType:
+ type: string
+ enum:
+ - PESSOA_NATURAL
+ - PESSOA_JURIDICA
+ description: |
+ Titular, pessoa natural ou juridica a quem se referem os dados de recebedor (creditor).
+ EnumPaymentStatusType:
+ type: string
+ enum:
+ - RCVD
+ - PATC
+ - CANC
+ - ACCP
+ - ACPD
+ - RJCT
+ - ACSC
+ - PDNG
+ - SCHD
+ example: PDNG
+ description: |
+ Estado atual da iniciação de pagamento. O estado evolui na seguinte ordem:
+
+ 1. RCVD (Received) - Indica que a requisição de pagamento foi recebida com sucesso pela detentora, mas ainda há validações a serem feitas antes de ser submetida para liquidação.
+
+ 2. PATC (Partially Accepted Technical Correct) - Indica que a transação precisa da confirmação de mais autorizadores para que o processamento do pagamento possa prosseguir.
+
+ 3. CANC (Cancelled) - Indica que a transação Pix pendente foi cancelada com sucesso pelo usuário antes que fosse confirmada (ACCP) ou rejeitada (RJCT) pela detentora.
+
+ 4. ACCP( Accepted Customer Profile) - Indica que todas as verificações necessárias já foram realizadas pela detentora e que a transação está pronta para ser enviada para liquidação (no SPI se for Pix para outra instituição ou internamente se for para outra conta na mesma instituição).
+
+ 5. ACPD (Accepted Clearing Processed) - Indica que a detentora já submeteu a transação para liquidação, mas ainda não tem a confirmação se foi liquidada ou rejeitada.
+
+ 6. RJCT (Rejected) Indica que a transação foi rejeitada pela detentora ou pelo SPI.
+
+ 7. ACSC (Accepted Settlement Completed Debitor Account) - Indica que a transação foi efetivada pela detentora ou pelo SPI.
+
+ 8. PDNG (Pending) - Indica que a detentora reteve temporariamente a transação Pix para análise.
+
+ 9. SCHD (Scheduled) - Indica que a transação Pix foi agendada com sucesso na detentora.
+
+ Em caso insucesso:
+
+ RJCT (REJECTED) - Instrução de pagamento rejeitada.
+ EnumPaymentType:
+ type: string
+ enum:
+ - PIX
+ example: PIX
+ description: |
+ Este campo define o tipo de pagamento que será iniciado após a autorização do consentimento.
+ EnumConsentRejectionReasonType:
+ type: string
+ enum:
+ - VALOR_INVALIDO
+ - NAO_INFORMADO
+ - FALHA_INFRAESTRUTURA
+ - TEMPO_EXPIRADO_AUTORIZACAO
+ - TEMPO_EXPIRADO_CONSUMO
+ - REJEITADO_USUARIO
+ - CONTAS_ORIGEM_DESTINO_IGUAIS
+ - CONTA_NAO_PERMITE_PAGAMENTO
+ - SALDO_INSUFICIENTE
+ - VALOR_ACIMA_LIMITE
+ - QRCODE_INVALIDO
+ example: SALDO_INSUFICIENTE
+ description: |
+ Define o código da razão pela qual o consentimento foi rejeitado
+ - VALOR_INVALIDO
+ - NAO_INFORMADO
+ - FALHA_INFRAESTRUTURA
+ - TEMPO_EXPIRADO_AUTORIZACAO
+ - TEMPO_EXPIRADO_CONSUMO
+ - REJEITADO_USUARIO
+ - CONTAS_ORIGEM_DESTINO_IGUAIS
+ - CONTA_NAO_PERMITE_PAGAMENTO
+ - SALDO_INSUFICIENTE
+ - VALOR_ACIMA_LIMITE
+ - QRCODE_INVALIDO
+ EnumRejectionReasonType:
+ type: string
+ enum:
+ - SALDO_INSUFICIENTE
+ - VALOR_ACIMA_LIMITE
+ - VALOR_INVALIDO
+ - COBRANCA_INVALIDA
+ - NAO_INFORMADO
+ - PAGAMENTO_DIVERGENTE_CONSENTIMENTO
+ - DETALHE_PAGAMENTO_INVALIDO
+ - PAGAMENTO_RECUSADO_DETENTORA
+ - PAGAMENTO_RECUSADO_SPI
+ - FALHA_INFRAESTRUTURA
+ - FALHA_INFRAESTRUTURA_SPI
+ - FALHA_INFRAESTRUTURA_DICT
+ - FALHA_INFRAESTRUTURA_ICP
+ - FALHA_INFRAESTRUTURA_PSP_RECEBEDOR
+ - FALHA_INFRAESTRUTURA_DETENTORA
+ - CONTAS_ORIGEM_DESTINO_IGUAIS
+ example: SALDO_INSUFICIENTE
+ description: |
+ Define o código da razão pela qual o pagamento foi rejeitado
+
+ - SALDO_INSUFICIENTE - A conta selecionada não possui saldo suficiente para realizar o pagamento.
+
+ - VALOR_ACIMA_LIMITE - O valor ultrapassa o limite estabelecido [na instituição/no arranjo/outro] para permitir a realização de transações pelo cliente.
+
+ - VALOR_INVALIDO - O valor enviado não é válido para o QR Code informado.
+
+ - COBRANCA_INVALIDA - Validação de expiração, validação de vencimento ou Status Válido.
+
+ - NAO_INFORMADO - Não reportado/identificado pela instituição detentora de conta.
+
+ - PAGAMENTO_DIVERGENTE_CONSENTIMENTO - Dados do pagamento divergentes dos dados do consentimento.
+
+ - DETALHE_PAGAMENTO_INVALIDO - Parâmetro [nome_campo] não obedecer às regras de negócio.
+
+ - PAGAMENTO_RECUSADO_DETENTORA - [Descrição do motivo de recusa].
+
+ - PAGAMENTO_RECUSADO_SPI - [Código de erro conforme tabela de domínios reason PACS.002].
+
+ - FALHA_INFRAESTRUTURA - [Descrição de qual falha na infraestrutura inviabilizou o processamento].
+
+ - FALHA_INFRAESTRUTURA_SPI - Indica uma falha no Sistema de Pagamentos Instantâneos (SPI).
+
+ - FALHA_INFRAESTRUTURA_DICT - Indica uma falha no Diretório de Identificadores de Contas Transacionais (DICT).
+
+ - FALHA_INFRAESTRUTURA_ICP - Indica uma falha na Infraestrutura de Chaves Públicas (ICP).
+
+ - FALHA_INFRAESTRUTURA_PSP_RECEBEDOR - Indica uma falha na infraestrutura do Prestador de Serviço de Pagamento (PSP) que recebe o pagamento.
+
+ - FALHA_INFRAESTRUTURA_DETENTORA - indica uma falha na infraestrutura da instituição detentora das informações ou recursos.
+
+ - CONTAS_ORIGEM_DESTINO_IGUAIS - Indica uma tentativa de pagamento onde a conta origem e a conta de destino são iguais.
+
+ O rejectionReason FALHA_INFRAESTRUTURA não será excluído, apenas deixará de ser utilizado, permitindo assim, retrocompatibilidade e integridade entre os participantes.
+ EnumPaymentCancellationReasonType:
+ type: string
+ enum:
+ - CANCELADO_PENDENCIA
+ - CANCELADO_AGENDAMENTO
+ - CANCELADO_MULTIPLAS_ALCADAS
+ example: CANCELADO_PENDENCIA
+ description: |
+ O preenchimento desse campo para retorno, deve ocorrer pela detentora de contas a partir do status em que o pagamento estiver no momento da solicitação do cancelamento (ex. Status de pagamento = PDNG, campo deve ser preenchido com enum CANCELADO_PENDENCIA)
+
+ Valores possíveis:
+
+ CANCELADO_PENDENCIA - Pagamento cancelado enquanto estava na situação PDNG
+
+ CANCELADO_AGENDAMENTO - Pagamento cancelado enquanto estava na situação SCHD
+
+ CANCELADO_MULTIPLAS_ALCADAS - Pagamento cancelado enquanto estava na situação PATC
+ EnumPaymentCancellationFromType:
+ type: string
+ enum:
+ - INICIADORA
+ - DETENTORA
+ example: INICIADORA
+ description: |
+ Campo utilizado para informar o meio pelo qual foi realizado o cancelamento.
+
+ Valores possíveis:
+
+ INICIADORA - Pagamento cancelado pelo usuário pagador nos canais da iniciadora
+
+ DETENTORA - Pagamento cancelado pelo usuário pagador nos canais da detentora
+ ConsentRejectionReason:
+ type: object
+ description: Motivo da rejeição do consentimento. Informações complementares sobre o motivo do status
+ required:
+ - code
+ - detail
+ properties:
+ code:
+ $ref: '#/components/schemas/EnumConsentRejectionReasonType'
+ detail:
+ type: string
+ pattern: '[\w\W\s]*'
+ maxLength: 2048
+ description: |
+ Contém informações adicionais ao consentimento rejeitado.
+ - FALHA_INFRAESTRUTURA: [Descrição de qual falha na infraestrutura inviabilizou o processamento].
+ - TEMPO_EXPIRADO_AUTORIZACAO: Consentimento expirou antes que o usuário pudesse confirmá-lo.
+ - REJEITADO_USUARIO: O usuário rejeitou a autorização do consentimento
+ - CONTAS_ORIGEM_DESTINO_IGUAIS: A conta selecionada é igual à conta destino e não permite realizar esse pagamento.
+ - CONTA_NAO_PERMITE_PAGAMENTO: A conta selecionada é do tipo [salario/investimento/liquidação/outros] e não permite realizar esse pagamento.
+ - SALDO_INSUFICIENTE: A conta selecionada não possui saldo suficiente para realizar o pagamento.
+ - VALOR_ACIMA_LIMITE: O valor ultrapassa o limite estabelecido [na instituição/no arranjo/outro] para permitir a realização de transações pelo cliente.
+ - QRCODE_INVALIDO: O QRCode utilizado para a iniciação de pagamento não é válido.
+ example: O usuário rejeitou a autorização do consentimento
+ RejectionReason:
+ type: object
+ description: |-
+ Motivo da rejeição do pagamento. Informações complementares sobre o motivo do status
+ [Restrição] Esse motivo deverá ser enviado quando o campo /data/status for igual a RJCT (REJECTED).
+ required:
+ - code
+ - detail
+ properties:
+ code:
+ $ref: '#/components/schemas/EnumRejectionReasonType'
+ detail:
+ type: string
+ pattern: '[\w\W\s]*'
+ maxLength: 2048
+ description: Contém informações adicionais ao pagamento rejeitado
+ Identification:
+ type: object
+ description: Objeto contendo os dados do recebedor (creditor).
+ required:
+ - personType
+ - cpfCnpj
+ - name
+ properties:
+ personType:
+ $ref: '#/components/schemas/EnumPaymentPersonType'
+ cpfCnpj:
+ type: string
+ minLength: 11
+ maxLength: 14
+ pattern: '^\d{11}$|^\d{14}$'
+ example: '58764789000137'
+ description: |
+ Identificação da pessoa envolvida na transação.
+ Preencher com o CPF ou CNPJ, de acordo com o valor escolhido no campo type.
+ O CPF será utilizado com 11 números e deverá ser informado sem pontos ou traços.
+ O CNPJ será utilizado com 14 números e deverá ser informado sem pontos ou traços.
+ name:
+ type: string
+ pattern: ^([A-Za-zÀ-ÖØ-öø-ÿ,.@:&*+_<>()!?/\\$%\d' -]+)$
+ maxLength: 120
+ example: Marco Antonio de Brito
+ description: |
+ Em caso de pessoa natural deve ser informado o nome completo do titular da conta do recebedor.
+ Em caso de pessoa jurídica deve ser informada a razão social ou o nome fantasia da conta do recebedor.
+ LoggedUser:
+ type: object
+ description: Usuário (pessoa natural) que encontra-se logado na instituição Iniciadora de Pagamento.
+ required:
+ - document
+ properties:
+ document:
+ type: object
+ required:
+ - identification
+ - rel
+ properties:
+ identification:
+ type: string
+ maxLength: 11
+ description: Número do documento de identificação oficial do usuário.
+ example: '11111111111'
+ pattern: '^\d{11}$'
+ rel:
+ type: string
+ maxLength: 3
+ description: Tipo do documento de identificação oficial do usuário.
+ example: CPF
+ pattern: '^[A-Z]{3}$'
+ Meta:
+ type: object
+ description: Meta informação referente a API requisitada.
+ required:
+ - requestDateTime
+ properties:
+ requestDateTime:
+ description: 'Data e hora da consulta, conforme especificação RFC-3339, formato UTC.'
+ type: string
+ maxLength: 20
+ format: date-time
+ example: '2021-05-21T08:30:00Z'
+ LinkSingle:
+ type: object
+ description: Referências para outros recusos da API requisitada.
+ required:
+ - self
+ properties:
+ self:
+ type: string
+ format: uri
+ maxLength: 2000
+ description: URI completo que gerou a resposta atual.
+ example: 'https://api.banco.com.br/open-banking/api/v1/resource'
+ pattern: '^(https:\/\/)?(www\.)?[-a-zA-Z0-9@:%._\+~#=]{2,256}\.[a-z]{2,6}\b([-a-zA-Z0-9@:%_\+.~#?&\/\/=]*)$'
+ PaymentConsent:
+ type: object
+ description: Objeto contendo dados de pagamento para consentimento.
+ required:
+ - type
+ - currency
+ - amount
+ - details
+ properties:
+ type:
+ $ref: '#/components/schemas/EnumPaymentType'
+ schedule:
+ oneOf:
+ - $ref: '#/components/schemas/Schedule'
+ date:
+ type: string
+ format: date
+ maxLength: 10
+ pattern: '^(\d{4})-(1[0-2]|0?[1-9])-(3[01]|[12][0-9]|0?[1-9])$'
+ example: '2021-01-01'
+ description: |
+ [Restrição] Mutuamente excludente com o objeto schedule.
+
+ Este campo é obrigatório no caso de pagamento único.
+
+ Neste caso, o objeto schedule não deve ser informado.
+ currency:
+ type: string
+ maxLength: 3
+ pattern: '^([A-Z]{3})$'
+ example: BRL
+ description: |
+ Código da moeda nacional segundo modelo ISO-4217, ou seja, 'BRL'.
+ Todos os valores monetários informados estão representados com a moeda vigente do Brasil.
+ amount:
+ type: string
+ minLength: 4
+ maxLength: 19
+ pattern: '^((\d{1,16}\.\d{2}))$'
+ example: '100000.12'
+ description: |
+ Valor da transação com 2 casas decimais.
+ ibgeTownCode:
+ type: string
+ minLength: 7
+ maxLength: 7
+ pattern: '^\d{7}$'
+ example: '5300108'
+ description: |
+ O campo ibgetowncode no arranjo PIX, tem o mesmo comportamento que o campo codMun descrito no item 1.6.6 do manual do PIX, conforme segue:
+
+ 1. Caso a informação referente ao município não seja enviada; o PSP do recebedor assumirá que não existem feriados estaduais e municipais no período em questão;
+ details:
+ $ref: '#/components/schemas/Details'
+ PaymentPix:
+ type: object
+ description: Objeto contendo dados do pagameto como moeda e valor.
+ required:
+ - amount
+ - currency
+ properties:
+ amount:
+ type: string
+ minLength: 4
+ maxLength: 19
+ pattern: '^((\d{1,16}\.\d{2}))$'
+ example: '100000.12'
+ description: |
+ Valor da transação com 2 casas decimais. O valor deve ser o mesmo enviado no consentimento.
+
+ Para QR Code estático com valor pré-determinado no QR Code ou para QR Code dinâmico com indicação de que o valor não pode ser alterado: O campo amount deve ser preenchido com o valor estabelecido no QR Code.
+ Caso seja preenchido com valor divergente do QR Code, deve ser retornado um erro HTTP Status 422.
+ currency:
+ type: string
+ maxLength: 3
+ pattern: '^([A-Z]{3})$'
+ example: BRL
+ description: |
+ Código da moeda nacional segundo modelo ISO-4217, ou seja, 'BRL'.
+ Todos os valores monetários informados estão representados com a moeda vigente do Brasil.
+ PatchPixPayment:
+ type: object
+ required:
+ - data
+ properties:
+ data:
+ $ref: '#/components/schemas/PatchPixPaymentData'
+ PatchPixPaymentData:
+ type: object
+ required:
+ - status
+ - cancellation
+ properties:
+ status:
+ $ref: '#/components/schemas/EnumPaymentCancellationStatusType'
+ cancellation:
+ type: object
+ description: |
+ Objeto que agrupa as informações de qual foi o usuário pagador que solicitou o cancelamento da transação.
+ Observação: este campo é necessário porque, em casos de múltiplas alçadas de autorização, é possível que o pagamento seja solicitado por um usuário pagador e cancelado por outro.
+ required:
+ - cancelledBy
+ properties:
+ cancelledBy:
+ type: object
+ description: Informação relacionada ao usuário pagador que solicitou o cancelamento do pagamento.
+ required:
+ - document
+ properties:
+ document:
+ type: object
+ description: Objeto que consolida os dados do documento do usuário que solicitou o cancelamento.
+ required:
+ - identification
+ - rel
+ properties:
+ identification:
+ type: string
+ maxLength: 11
+ description: Número do documento do usuário pagador responsável pelo cancelamento do pagamento.
+ example: '11111111111'
+ pattern: '^\d{11}$'
+ rel:
+ type: string
+ maxLength: 3
+ description: Tipo do documento do usuário pagador responsável pelo cancelamento do pagamento.
+ example: CPF
+ pattern: '^[A-Z]{3}$'
+ PatchPixPaymentCancellation:
+ type: object
+ description: |
+ Objeto que contém os dados referentes ao usuário pagador que solicitou o cancelamento, o canal utilizado por ele e o motivo.
+ required:
+ - cancelledAt
+ - cancelledBy
+ - reason
+ - cancelledFrom
+ properties:
+ reason:
+ $ref: '#/components/schemas/EnumPaymentCancellationReasonType'
+ cancelledFrom:
+ $ref: '#/components/schemas/EnumPaymentCancellationFromType'
+ cancelledAt:
+ type: string
+ description: 'Data e hora que foi realizado o cancelamento, conforme especificação RFC-3339, formato UTC.'
+ format: date-time
+ maxLength: 20
+ pattern: '^(\d{4})-(1[0-2]|0?[1-9])-(3[01]|[12][0-9]|0?[1-9])T(?:[01]\d|2[0123]):(?:[012345]\d):(?:[012345]\d)Z$'
+ example: '2021-05-21T08:30:00Z'
+ cancelledBy:
+ type: object
+ description: Informação relacionada ao usuário pagador que solicitou o cancelamento do pagamento.
+ required:
+ - document
+ properties:
+ document:
+ type: object
+ description: Objeto que consolida os dados do documento do usuário que solicitou o cancelamento.
+ required:
+ - identification
+ - rel
+ properties:
+ identification:
+ type: string
+ maxLength: 11
+ description: Número do documento do usuário pagador responsável pelo cancelamento do pagamento.
+ example: '11111111111'
+ pattern: '^\d{11}$'
+ rel:
+ type: string
+ maxLength: 3
+ description: Tipo do documento do usuário pagador responsável pelo cancelamento do pagamento.
+ example: CPF
+ pattern: '^[A-Z]{3}$'
+ PixPaymentCancellation:
+ type: object
+ description: |
+ Objeto que contém os dados referentes ao usuário pagador que solicitou o cancelamento, o canal utilizado por ele e o motivo.
+
+ [Restrição] O objeto cancellation será obrigatório apenas quando o valor do campo status for igual a CANC.
+ required:
+ - cancelledAt
+ - cancelledBy
+ - reason
+ - cancelledFrom
+ properties:
+ reason:
+ $ref: '#/components/schemas/EnumPaymentCancellationReasonType'
+ cancelledFrom:
+ $ref: '#/components/schemas/EnumPaymentCancellationFromType'
+ cancelledAt:
+ type: string
+ description: 'Data e hora que foi realizado o cancelamento, conforme especificação RFC-3339, formato UTC.'
+ format: date-time
+ maxLength: 20
+ pattern: '^(\d{4})-(1[0-2]|0?[1-9])-(3[01]|[12][0-9]|0?[1-9])T(?:[01]\d|2[0123]):(?:[012345]\d):(?:[012345]\d)Z$'
+ example: '2021-05-21T08:30:00Z'
+ cancelledBy:
+ type: object
+ description: Informação relacionada ao usuário pagador que solicitou o cancelamento do pagamento.
+ required:
+ - document
+ properties:
+ document:
+ type: object
+ description: Objeto que consolida os dados do documento do usuário que solicitou o cancelamento.
+ required:
+ - identification
+ - rel
+ properties:
+ identification:
+ type: string
+ maxLength: 11
+ description: Número do documento do usuário pagador responsável pelo cancelamento do pagamento.
+ example: '11111111111'
+ pattern: '^\d{11}$'
+ rel:
+ type: string
+ maxLength: 3
+ description: Tipo do documento do usuário pagador responsável pelo cancelamento do pagamento.
+ example: CPF
+ pattern: '^[A-Z]{3}$'
+ ResponseError:
+ type: object
+ required:
+ - errors
+ properties:
+ errors:
+ type: array
+ minItems: 1
+ maxItems: 13
+ items:
+ type: object
+ required:
+ - code
+ - title
+ - detail
+ properties:
+ code:
+ description: Código de erro específico do endpoint
+ type: string
+ pattern: '[\w\W\s]*'
+ maxLength: 255
+ title:
+ description: Título legível por humanos deste erro específico
+ type: string
+ pattern: '[\w\W\s]*'
+ maxLength: 255
+ detail:
+ description: Descrição legível por humanos deste erro específico
+ type: string
+ pattern: '[\w\W\s]*'
+ maxLength: 2048
+ meta:
+ type: object
+ description: Meta informações referente à API requisitada.
+ required:
+ - requestDateTime
+ properties:
+ requestDateTime:
+ description: 'Data e hora da consulta, conforme especificação RFC-3339, formato UTC.'
+ type: string
+ maxLength: 20
+ format: date-time
+ example: '2021-05-21T08:30:00Z'
+ ResponsePaymentConsent:
+ type: object
+ required:
+ - data
+ - links
+ - meta
+ properties:
+ data:
+ type: object
+ description: Objeto contendo as informações de resposta do consentimento para a iniciação de pagamento individual.
+ required:
+ - consentId
+ - statusUpdateDateTime
+ - creationDateTime
+ - expirationDateTime
+ - status
+ - loggedUser
+ - creditor
+ - payment
+ properties:
+ consentId:
+ type: string
+ maxLength: 256
+ pattern: '^urn:[a-zA-Z0-9][a-zA-Z0-9\-]{0,31}:[a-zA-Z0-9()+,\-.:=@;$_!*''%\/?#]+$'
+ example: 'urn:bancoex:C1DD33123'
+ description: |
+ Identificador único do consentimento criado para a iniciação de pagamento solicitada. Deverá ser um URN - Uniform Resource Name.
+ Um URN, conforme definido na [RFC8141](https://tools.ietf.org/html/rfc8141) é um Uniform Resource
+ Identifier - URI - que é atribuído sob o URI scheme "urn" e um namespace URN específico, com a intenção de que o URN
+ seja um identificador de recurso persistente e independente da localização.
+ Considerando a string urn:bancoex:C1DD33123 como exemplo para consentId temos:
+ - o namespace(urn)
+ - o identificador associado ao namespace da instituição transnmissora (bancoex)
+ - o identificador específico dentro do namespace (C1DD33123).
+ Informações mais detalhadas sobre a construção de namespaces devem ser consultadas na [RFC8141](https://tools.ietf.org/html/rfc8141).
+ creationDateTime:
+ description: 'Data e hora em que o consentimento foi criado. Uma string com data e hora conforme especificação RFC-3339, sempre com a utilização de timezone UTC(UTC time format).'
+ type: string
+ format: date-time
+ example: '2021-05-21T08:30:00Z'
+ pattern: '^(\d{4})-(1[0-2]|0?[1-9])-(3[01]|[12][0-9]|0?[1-9])T(?:[01]\d|2[0123]):(?:[012345]\d):(?:[012345]\d)Z$'
+ maxLength: 20
+ expirationDateTime:
+ description: |
+ Data e hora em que o consentimento da iniciação de pagamento expira, devendo ser sempre o creationDateTime mais 5 minutos. Uma string com data e hora conforme especificação RFC-3339, sempre com a utilização de timezone UTC (UTC time format).
+ O consentimento é criado com o status AWAITING_AUTHORISATION, e deve assumir o status AUTHORIZED ou REJECTED antes do tempo de expiração - 5 minutos. Caso o tempo seja expirado, o status deve assumir REJECTED.
+ Para o cenário em que o status assumiu AUTHORISED, o tempo máximo do expirationDateTime do consentimento deve assumir "now + 60 minutos". Este é o tempo para consumir o consentimento autorizado, mudando seu status para CONSUMED. Não é possível prorrogar este tempo e a criação de um novo consentimento será necessária para os cenários de insucesso.
+ O tempo do expirationDateTime é garantido com os 15 minutos do access token, sendo possível utilizar mais três refresh tokens até totalizar 60 minutos.
+ type: string
+ format: date-time
+ example: '2021-05-21T08:30:00Z'
+ pattern: '^(\d{4})-(1[0-2]|0?[1-9])-(3[01]|[12][0-9]|0?[1-9])T(?:[01]\d|2[0123]):(?:[012345]\d):(?:[012345]\d)Z$'
+ maxLength: 20
+ statusUpdateDateTime:
+ type: string
+ format: date-time
+ example: '2021-05-21T08:30:00Z'
+ pattern: '^(\d{4})-(1[0-2]|0?[1-9])-(3[01]|[12][0-9]|0?[1-9])T(?:[01]\d|2[0123]):(?:[012345]\d):(?:[012345]\d)Z$'
+ maxLength: 20
+ description: |
+ Data e hora em que o recurso foi atualizado. Uma string com data e hora conforme especificação RFC-3339, sempre com a utilização de timezone UTC(UTC time format).
+ status:
+ $ref: '#/components/schemas/EnumAuthorisationStatusType'
+ loggedUser:
+ $ref: '#/components/schemas/LoggedUser'
+ businessEntity:
+ $ref: '#/components/schemas/BusinessEntity'
+ creditor:
+ $ref: '#/components/schemas/Identification'
+ payment:
+ $ref: '#/components/schemas/PaymentConsent'
+ debtorAccount:
+ $ref: '#/components/schemas/ConsentsDebtorAccount'
+ rejectionReason:
+ $ref: '#/components/schemas/ConsentRejectionReason'
+ links:
+ $ref: '#/components/schemas/LinkSingle'
+ meta:
+ $ref: '#/components/schemas/Meta'
+ ResponseCreatePaymentConsent:
+ type: object
+ required:
+ - data
+ - links
+ - meta
+ properties:
+ data:
+ type: object
+ description: Objeto contendo as informações de resposta do consentimento para a iniciação de pagamento individual.
+ required:
+ - consentId
+ - statusUpdateDateTime
+ - creationDateTime
+ - expirationDateTime
+ - status
+ - loggedUser
+ - creditor
+ - payment
+ properties:
+ consentId:
+ type: string
+ maxLength: 256
+ pattern: '^urn:[a-zA-Z0-9][a-zA-Z0-9\-]{0,31}:[a-zA-Z0-9()+,\-.:=@;$_!*''%\/?#]+$'
+ example: 'urn:bancoex:C1DD33123'
+ description: |
+ Identificador único do consentimento criado para a iniciação de pagamento solicitada. Deverá ser um URN - Uniform Resource Name.
+ Um URN, conforme definido na [RFC8141](https://tools.ietf.org/html/rfc8141) é um Uniform Resource
+ Identifier - URI - que é atribuído sob o URI scheme "urn" e um namespace URN específico, com a intenção de que o URN
+ seja um identificador de recurso persistente e independente da localização.
+ Considerando a string urn:bancoex:C1DD33123 como exemplo para consentId temos:
+ - o namespace(urn)
+ - o identificador associado ao namespace da instituição transnmissora (bancoex)
+ - o identificador específico dentro do namespace (C1DD33123).
+ Informações mais detalhadas sobre a construção de namespaces devem ser consultadas na [RFC8141](https://tools.ietf.org/html/rfc8141).
+ creationDateTime:
+ description: 'Data e hora em que o consentimento foi criado. Uma string com data e hora conforme especificação RFC-3339, sempre com a utilização de timezone UTC(UTC time format).'
+ type: string
+ format: date-time
+ example: '2021-05-21T08:30:00Z'
+ pattern: '^(\d{4})-(1[0-2]|0?[1-9])-(3[01]|[12][0-9]|0?[1-9])T(?:[01]\d|2[0123]):(?:[012345]\d):(?:[012345]\d)Z$'
+ maxLength: 20
+ expirationDateTime:
+ description: |
+ Data e hora em que o consentimento da iniciação de pagamento expira, devendo ser sempre o creationDateTime mais 5 minutos. Uma string com data e hora conforme especificação RFC-3339, sempre com a utilização de timezone UTC (UTC time format).
+ O consentimento é criado com o status AWAITING_AUTHORISATION, e deve assumir o status AUTHORIZED ou REJECTED antes do tempo de expiração - 5 minutos. Caso o tempo seja expirado, o status deve assumir REJECTED.
+ Para o cenário em que o status assumiu AUTHORISED, o tempo máximo do expirationDateTime do consentimento deve assumir "now + 60 minutos". Este é o tempo para consumir o consentimento autorizado, mudando seu status para CONSUMED. Não é possível prorrogar este tempo e a criação de um novo consentimento será necessária para os cenários de insucesso.
+ O tempo do expirationDateTime é garantido com os 15 minutos do access token, sendo possível utilizar mais três refresh tokens até totalizar 60 minutos.
+ type: string
+ format: date-time
+ example: '2021-05-21T08:30:00Z'
+ pattern: '^(\d{4})-(1[0-2]|0?[1-9])-(3[01]|[12][0-9]|0?[1-9])T(?:[01]\d|2[0123]):(?:[012345]\d):(?:[012345]\d)Z$'
+ maxLength: 20
+ statusUpdateDateTime:
+ type: string
+ format: date-time
+ example: '2021-05-21T08:30:00Z'
+ pattern: '^(\d{4})-(1[0-2]|0?[1-9])-(3[01]|[12][0-9]|0?[1-9])T(?:[01]\d|2[0123]):(?:[012345]\d):(?:[012345]\d)Z$'
+ maxLength: 20
+ description: |
+ Data e hora em que o recurso foi atualizado. Uma string com data e hora conforme especificação RFC-3339, sempre com a utilização de timezone UTC(UTC time format).
+ status:
+ $ref: '#/components/schemas/EnumAuthorisationStatusType'
+ loggedUser:
+ $ref: '#/components/schemas/LoggedUser'
+ businessEntity:
+ $ref: '#/components/schemas/BusinessEntity'
+ creditor:
+ $ref: '#/components/schemas/Identification'
+ payment:
+ type: object
+ description: Objeto contendo dados de pagamento para consentimento.
+ required:
+ - type
+ - currency
+ - amount
+ - details
+ properties:
+ type:
+ $ref: '#/components/schemas/EnumPaymentType'
+ schedule:
+ oneOf:
+ - $ref: '#/components/schemas/Schedule'
+ date:
+ type: string
+ format: date
+ maxLength: 10
+ pattern: '^(\d{4})-(1[0-2]|0?[1-9])-(3[01]|[12][0-9]|0?[1-9])$'
+ example: '2021-01-01'
+ description: |
+ [Restrição] Mutuamente excludente com o objeto schedule.
+
+ Este campo é obrigatório no caso de pagamento único.
+
+ Neste caso, o objeto schedule não deve ser informado.
+ currency:
+ type: string
+ maxLength: 3
+ pattern: '^([A-Z]{3})$'
+ example: BRL
+ description: |
+ Código da moeda nacional segundo modelo ISO-4217, ou seja, 'BRL'.
+ Todos os valores monetários informados estão representados com a moeda vigente do Brasil.
+ amount:
+ type: string
+ minLength: 4
+ maxLength: 19
+ pattern: '^((\d{1,16}\.\d{2}))$'
+ example: '100000.12'
+ description: |
+ Valor da transação com 2 casas decimais. O valor deve ser o mesmo enviado no consentimento.
+
+ Para QR Code estático com valor pré-determinado no QR Code ou para QR Code dinâmico com indicação de que o valor não pode ser alterado: O campo amount deve ser preenchido com o valor estabelecido no QR Code.
+ Caso seja preenchido com valor divergente do QR Code, deve ser retornado um erro HTTP Status 422.
+ ibgeTownCode:
+ type: string
+ minLength: 7
+ maxLength: 7
+ pattern: '^\d{7}$'
+ example: '5300108'
+ description: |
+ O campo ibgetowncode no arranjo PIX, tem o mesmo comportamento que o campo codMun descrito no item 1.6.6 do manual do PIX, conforme segue:
+
+ 1. Caso a informação referente ao município não seja enviada; o PSP do recebedor assumirá que não existem feriados estaduais e municipais no período em questão;
+ details:
+ $ref: '#/components/schemas/Details'
+ debtorAccount:
+ $ref: '#/components/schemas/ConsentsDebtorAccount'
+ links:
+ $ref: '#/components/schemas/LinkSingle'
+ meta:
+ $ref: '#/components/schemas/Meta'
+ ResponsePixPayment:
+ type: object
+ required:
+ - data
+ - links
+ - meta
+ properties:
+ data:
+ $ref: '#/components/schemas/ResponsePixPaymentData'
+ links:
+ $ref: '#/components/schemas/LinkSingle'
+ meta:
+ $ref: '#/components/schemas/Meta'
+ ResponsePatchPixPayment:
+ type: object
+ required:
+ - data
+ - links
+ - meta
+ properties:
+ data:
+ $ref: '#/components/schemas/ResponsePatchPixPaymentData'
+ links:
+ $ref: '#/components/schemas/LinkSingle'
+ meta:
+ $ref: '#/components/schemas/Meta'
+ ResponsePatchPixPaymentData:
+ type: object
+ description: Objeto contendo dados do pagamento e da conta do recebedor (creditor).
+ required:
+ - paymentId
+ - endToEndId
+ - consentId
+ - creationDateTime
+ - statusUpdateDateTime
+ - status
+ - localInstrument
+ - payment
+ - creditorAccount
+ - cnpjInitiator
+ - debtorAccount
+ - cancellation
+ properties:
+ paymentId:
+ type: string
+ minLength: 1
+ maxLength: 100
+ pattern: '^[a-zA-Z0-9][a-zA-Z0-9\-]{0,99}$'
+ example: TXpRMU9UQTROMWhZV2xSU1FUazJSMDl
+ description: |
+ Código ou identificador único informado pela instituição detentora da conta para representar
+ a iniciação de pagamento individual. O `paymentId` deve ser diferente do `endToEndId`.
+ Este é o identificador que deverá ser utilizado na consulta ao status da iniciação de pagamento efetuada.
+ endToEndId:
+ $ref: '#/components/schemas/EndToEndId'
+ consentId:
+ type: string
+ maxLength: 256
+ pattern: '^urn:[a-zA-Z0-9][a-zA-Z0-9\-]{0,31}:[a-zA-Z0-9()+,\-.:=@;$_!*''%\/?#]+$'
+ example: 'urn:bancoex:C1DD33123'
+ description: |
+ Identificador único do consentimento criado para a iniciação de pagamento solicitada. Deverá ser um URN - Uniform Resource Name.
+ Um URN, conforme definido na [RFC8141](https://tools.ietf.org/html/rfc8141) é um Uniform Resource
+ Identifier - URI - que é atribuído sob o URI scheme "urn" e um namespace URN específico, com a intenção de que o URN
+ seja um identificador de recurso persistente e independente da localização.
+ Considerando a string urn:bancoex:C1DD33123 como exemplo para consentId temos:
+ - o namespace(urn)
+ - o identificador associado ao namespace da instituição transnmissora (bancoex)
+ - o identificador específico dentro do namespace (C1DD33123).
+ Informações mais detalhadas sobre a construção de namespaces devem ser consultadas na [RFC8141](https://tools.ietf.org/html/rfc8141).
+ creationDateTime:
+ type: string
+ format: date-time
+ pattern: '^(\d{4})-(1[0-2]|0?[1-9])-(3[01]|[12][0-9]|0?[1-9])T(?:[01]\d|2[0123]):(?:[012345]\d):(?:[012345]\d)Z$'
+ example: '2020-07-21T08:30:00Z'
+ description: |
+ Data e hora em que o recurso foi criado.
+ Uma string com data e hora conforme especificação RFC-3339,
+ sempre com a utilização de timezone UTC(UTC time format).
+ statusUpdateDateTime:
+ type: string
+ format: date-time
+ pattern: '^(\d{4})-(1[0-2]|0?[1-9])-(3[01]|[12][0-9]|0?[1-9])T(?:[01]\d|2[0123]):(?:[012345]\d):(?:[012345]\d)Z$'
+ example: '2020-07-21T08:30:00Z'
+ description: |
+ Data e hora da última atualização da iniciação de pagamento.
+ Uma string com data e hora conforme especificação RFC-3339,
+ sempre com a utilização de timezone UTC(UTC time format).
+ proxy:
+ type: string
+ maxLength: 77
+ pattern: '[\w\W\s]*'
+ example: '12345678901'
+ description: |
+ Chave cadastrada no DICT pertencente ao recebedor. Os tipos de chaves podem ser: telefone, e-mail, cpf/cnpj ou chave aleatória.
+ No caso de telefone celular deve ser informado no padrão E.1641.
+ Para e-mail deve ter o formato xxxxxxxx@xxxxxxx.xxx(.xx) e no máximo 77 caracteres.
+ No caso de CPF deverá ser informado com 11 números, sem pontos ou traços.
+ Para o caso de CNPJ deverá ser informado com 14 números, sem pontos ou traços.
+ No caso de chave aleatória deve ser informado o UUID gerado pelo DICT, conforme formato especificado na RFC41223.
+ Se informado, a detentora da conta deve validar o proxy no DICT quando localInstrument for igual a DICT, QRDN ou QRES e validar o campo creditorAccount.
+ Esta validação é opcional caso o localInstrument for igual a INIC.
+ [Restrição] Se localInstrument for igual a MANU, o campo proxy não deve ser preenchido. Se localInstrument for igual INIC, DICT, QRDN ou QRES, o campo proxy deve ser sempre preenchido com a chave Pix.
+ ibgeTownCode:
+ type: string
+ minLength: 7
+ maxLength: 7
+ pattern: '^\d{7}$'
+ example: '5300108'
+ description: |
+ O campo ibgetowncode no arranjo PIX, tem o mesmo comportamento que o campo codMun descrito no item 1.6.6 do manual do PIX, conforme segue:
+
+ 1. Caso a informação referente ao município não seja enviada; o PSP do recebedor assumirá que não existem feriados estaduais e municipais no período em questão;
+ status:
+ $ref: '#/components/schemas/EnumPaymentStatusType'
+ rejectionReason:
+ $ref: '#/components/schemas/RejectionReason'
+ localInstrument:
+ $ref: '#/components/schemas/EnumLocalInstrument'
+ cnpjInitiator:
+ type: string
+ pattern: '^\d{14}$'
+ maxLength: 14
+ example: '50685362000135'
+ description: CNPJ do Iniciador de Pagamento devidamente habilitado para a prestação de Serviço de Iniciação no Pix.
+ payment:
+ $ref: '#/components/schemas/PaymentPix'
+ transactionIdentification:
+ type: string
+ pattern: '^[a-zA-Z0-9]{1,35}$'
+ maxLength: 35
+ example: E00038166201907261559y6j6
+ description: |
+ Trata-se de um identificador de transação que deve ser retransmitido intacto pelo PSP do pagador ao gerar a ordem de pagamento.
+
+ [Restrição] A detentora deve obrigatoriamente retornar o campo com o mesmo valor recebido da iniciadora, caso ele tenha sido enviado na requisição da iniciação do pagamento.
+ remittanceInformation:
+ type: string
+ maxLength: 140
+ pattern: '[\w\W\s]*'
+ example: Pagamento da nota RSTO035-002.
+ description: |
+ Deve ser preenchido sempre que o usuário pagador inserir alguma informação adicional em um pagamento, a ser enviada ao recebedor.
+ creditorAccount:
+ $ref: '#/components/schemas/CreditorAccount'
+ cancellation:
+ $ref: '#/components/schemas/PatchPixPaymentCancellation'
+ debtorAccount:
+ $ref: '#/components/schemas/DebtorAccount'
+ authorisationFlow:
+ type: string
+ enum:
+ - HYBRID_FLOW
+ - CIBA_FLOW
+ example: HYBRID_FLOW
+ description: |
+ Campo condicional utilizado para identificar o fluxo de autorização em que o pagamento foi solicitado.
+
+ [Restrição] Caso o campo não esteja presente no payload, subentende-se que o fluxo de autorização utilizado é o HYBRID_FLOW.
+ ResponseCreatePixPayment:
+ type: object
+ required:
+ - data
+ - links
+ - meta
+ properties:
+ data:
+ type: object
+ description: Objeto contendo dados do pagamento e da conta do recebedor (creditor).
+ required:
+ - paymentId
+ - endToEndId
+ - consentId
+ - creationDateTime
+ - statusUpdateDateTime
+ - status
+ - localInstrument
+ - payment
+ - creditorAccount
+ - cnpjInitiator
+ - debtorAccount
+ properties:
+ paymentId:
+ type: string
+ minLength: 1
+ maxLength: 100
+ pattern: '^[a-zA-Z0-9][a-zA-Z0-9\-]{0,99}$'
+ example: TXpRMU9UQTROMWhZV2xSU1FUazJSMDl
+ description: |
+ Código ou identificador único informado pela instituição detentora da conta para representar
+ a iniciação de pagamento individual. O `paymentId` deve ser diferente do `endToEndId`.
+ Este é o identificador que deverá ser utilizado na consulta ao status da iniciação de pagamento efetuada.
+ endToEndId:
+ $ref: '#/components/schemas/EndToEndId'
+ consentId:
+ type: string
+ maxLength: 256
+ pattern: '^urn:[a-zA-Z0-9][a-zA-Z0-9\-]{0,31}:[a-zA-Z0-9()+,\-.:=@;$_!*''%\/?#]+$'
+ example: 'urn:bancoex:C1DD33123'
+ description: |
+ Identificador único do consentimento criado para a iniciação de pagamento solicitada. Deverá ser um URN - Uniform Resource Name.
+ Um URN, conforme definido na [RFC8141](https://tools.ietf.org/html/rfc8141) é um Uniform Resource
+ Identifier - URI - que é atribuído sob o URI scheme "urn" e um namespace URN específico, com a intenção de que o URN
+ seja um identificador de recurso persistente e independente da localização.
+ Considerando a string urn:bancoex:C1DD33123 como exemplo para consentId temos:
+ - o namespace(urn)
+ - o identificador associado ao namespace da instituição transnmissora (bancoex)
+ - o identificador específico dentro do namespace (C1DD33123).
+ Informações mais detalhadas sobre a construção de namespaces devem ser consultadas na [RFC8141](https://tools.ietf.org/html/rfc8141).
+ creationDateTime:
+ type: string
+ format: date-time
+ pattern: '^(\d{4})-(1[0-2]|0?[1-9])-(3[01]|[12][0-9]|0?[1-9])T(?:[01]\d|2[0123]):(?:[012345]\d):(?:[012345]\d)Z$'
+ example: '2020-07-21T08:30:00Z'
+ description: |
+ Data e hora em que o recurso foi criado.
+ Uma string com data e hora conforme especificação RFC-3339,
+ sempre com a utilização de timezone UTC(UTC time format).
+ statusUpdateDateTime:
+ type: string
+ format: date-time
+ pattern: '^(\d{4})-(1[0-2]|0?[1-9])-(3[01]|[12][0-9]|0?[1-9])T(?:[01]\d|2[0123]):(?:[012345]\d):(?:[012345]\d)Z$'
+ example: '2020-07-21T08:30:00Z'
+ description: |
+ Data e hora da última atualização da iniciação de pagamento.
+ Uma string com data e hora conforme especificação RFC-3339,
+ sempre com a utilização de timezone UTC(UTC time format).
+ proxy:
+ type: string
+ maxLength: 77
+ pattern: '[\w\W\s]*'
+ example: '12345678901'
+ description: |
+ Chave cadastrada no DICT pertencente ao recebedor. Os tipos de chaves podem ser: telefone, e-mail, cpf/cnpj ou chave aleatória.
+ No caso de telefone celular deve ser informado no padrão E.1641.
+ Para e-mail deve ter o formato xxxxxxxx@xxxxxxx.xxx(.xx) e no máximo 77 caracteres.
+ No caso de CPF deverá ser informado com 11 números, sem pontos ou traços.
+ Para o caso de CNPJ deverá ser informado com 14 números, sem pontos ou traços.
+ No caso de chave aleatória deve ser informado o UUID gerado pelo DICT, conforme formato especificado na RFC41223.
+ Se informado, a detentora da conta deve validar o proxy no DICT quando localInstrument for igual a DICT, QRDN ou QRES e validar o campo creditorAccount.
+ Esta validação é opcional caso o localInstrument for igual a INIC.
+ [Restrição] Se localInstrument for igual a MANU, o campo proxy não deve ser preenchido. Se localInstrument for igual INIC, DICT, QRDN ou QRES, o campo proxy deve ser sempre preenchido com a chave Pix.
+ ibgeTownCode:
+ type: string
+ minLength: 7
+ maxLength: 7
+ pattern: '^\d{7}$'
+ example: '5300108'
+ description: |
+ O campo ibgetowncode no arranjo PIX, tem o mesmo comportamento que o campo codMun descrito no item 1.6.6 do manual do PIX, conforme segue:
+
+ 1. Caso a informação referente ao município não seja enviada; o PSP do recebedor assumirá que não existem feriados estaduais e municipais no período em questão;
+ status:
+ $ref: '#/components/schemas/EnumPaymentStatusType'
+ rejectionReason:
+ $ref: '#/components/schemas/RejectionReason'
+ localInstrument:
+ $ref: '#/components/schemas/EnumLocalInstrument'
+ cnpjInitiator:
+ type: string
+ pattern: '^\d{14}$'
+ maxLength: 14
+ example: '50685362000135'
+ description: CNPJ do Iniciador de Pagamento devidamente habilitado para a prestação de Serviço de Iniciação no Pix.
+ payment:
+ type: object
+ description: Objeto contendo dados do pagameto como moeda e valor.
+ required:
+ - amount
+ - currency
+ properties:
+ amount:
+ type: string
+ minLength: 4
+ maxLength: 19
+ pattern: '^((\d{1,16}\.\d{2}))$'
+ example: '100000.12'
+ description: |
+ Valor da transação com 2 casas decimais. O valor deve ser o mesmo enviado no consentimento.
+
+ Para QR Code estático com valor pré-determinado no QR Code ou para QR Code dinâmico com indicação de que o valor não pode ser alterado: O campo amount deve ser preenchido com o valor estabelecido no QR Code.
+ Caso seja preenchido com valor divergente do QR Code, deve ser retornado um erro HTTP Status 422.
+ currency:
+ type: string
+ maxLength: 3
+ pattern: '^([A-Z]{3})$'
+ example: BRL
+ description: |
+ Código da moeda nacional segundo modelo ISO-4217, ou seja, 'BRL'.
+ Todos os valores monetários informados estão representados com a moeda vigente do Brasil.
+ transactionIdentification:
+ type: string
+ pattern: '^[a-zA-Z0-9]{1,35}$'
+ maxLength: 35
+ example: E00038166201907261559y6j6
+ description: |
+ Trata-se de um identificador de transação que deve ser retransmitido intacto pelo PSP do pagador ao gerar a ordem de pagamento.
+
+ [Restrição] A detentora deve obrigatoriamente retornar o campo com o mesmo valor recebido da iniciadora, caso ele tenha sido enviado na requisição da iniciação do pagamento.
+ remittanceInformation:
+ type: string
+ maxLength: 140
+ pattern: '[\w\W\s]*'
+ example: Pagamento da nota RSTO035-002.
+ description: |
+ Deve ser preenchido sempre que o usuário pagador inserir alguma informação adicional em um pagamento, a ser enviada ao recebedor.
+ creditorAccount:
+ $ref: '#/components/schemas/PaymentsCreditorAccount'
+ debtorAccount:
+ $ref: '#/components/schemas/PaymentsDebtorAccount'
+ authorisationFlow:
+ type: string
+ enum:
+ - HYBRID_FLOW
+ - CIBA_FLOW
+ example: HYBRID_FLOW
+ description: |
+ Campo condicional utilizado para identificar o fluxo de autorização em que o pagamento foi solicitado.
+
+ [Restrição] Caso o campo não esteja presente no payload, subentende-se que o fluxo de autorização utilizado é o HYBRID_FLOW.
+ links:
+ $ref: '#/components/schemas/LinkSingle'
+ meta:
+ $ref: '#/components/schemas/Meta'
+ ResponsePixPaymentData:
+ type: object
+ description: Objeto contendo dados do pagamento e da conta do recebedor (creditor).
+ required:
+ - paymentId
+ - endToEndId
+ - consentId
+ - creationDateTime
+ - statusUpdateDateTime
+ - status
+ - localInstrument
+ - payment
+ - creditorAccount
+ - cnpjInitiator
+ - debtorAccount
+ properties:
+ paymentId:
+ type: string
+ minLength: 1
+ maxLength: 100
+ pattern: '^[a-zA-Z0-9][a-zA-Z0-9\-]{0,99}$'
+ example: TXpRMU9UQTROMWhZV2xSU1FUazJSMDl
+ description: |
+ Código ou identificador único informado pela instituição detentora da conta para representar
+ a iniciação de pagamento individual. O `paymentId` deve ser diferente do `endToEndId`.
+ Este é o identificador que deverá ser utilizado na consulta ao status da iniciação de pagamento efetuada.
+ endToEndId:
+ $ref: '#/components/schemas/EndToEndId'
+ consentId:
+ type: string
+ maxLength: 256
+ pattern: '^urn:[a-zA-Z0-9][a-zA-Z0-9\-]{0,31}:[a-zA-Z0-9()+,\-.:=@;$_!*''%\/?#]+$'
+ example: 'urn:bancoex:C1DD33123'
+ description: |
+ Identificador único do consentimento criado para a iniciação de pagamento solicitada. Deverá ser um URN - Uniform Resource Name.
+ Um URN, conforme definido na [RFC8141](https://tools.ietf.org/html/rfc8141) é um Uniform Resource
+ Identifier - URI - que é atribuído sob o URI scheme "urn" e um namespace URN específico, com a intenção de que o URN
+ seja um identificador de recurso persistente e independente da localização.
+ Considerando a string urn:bancoex:C1DD33123 como exemplo para consentId temos:
+ - o namespace(urn)
+ - o identificador associado ao namespace da instituição transnmissora (bancoex)
+ - o identificador específico dentro do namespace (C1DD33123).
+ Informações mais detalhadas sobre a construção de namespaces devem ser consultadas na [RFC8141](https://tools.ietf.org/html/rfc8141).
+ creationDateTime:
+ type: string
+ format: date-time
+ pattern: '^(\d{4})-(1[0-2]|0?[1-9])-(3[01]|[12][0-9]|0?[1-9])T(?:[01]\d|2[0123]):(?:[012345]\d):(?:[012345]\d)Z$'
+ example: '2020-07-21T08:30:00Z'
+ description: |
+ Data e hora em que o recurso foi criado.
+ Uma string com data e hora conforme especificação RFC-3339,
+ sempre com a utilização de timezone UTC(UTC time format).
+ statusUpdateDateTime:
+ type: string
+ format: date-time
+ pattern: '^(\d{4})-(1[0-2]|0?[1-9])-(3[01]|[12][0-9]|0?[1-9])T(?:[01]\d|2[0123]):(?:[012345]\d):(?:[012345]\d)Z$'
+ example: '2020-07-21T08:30:00Z'
+ description: |
+ Data e hora da última atualização da iniciação de pagamento.
+ Uma string com data e hora conforme especificação RFC-3339,
+ sempre com a utilização de timezone UTC(UTC time format).
+ proxy:
+ type: string
+ maxLength: 77
+ pattern: '[\w\W\s]*'
+ example: '12345678901'
+ description: |
+ Chave cadastrada no DICT pertencente ao recebedor. Os tipos de chaves podem ser: telefone, e-mail, cpf/cnpj ou chave aleatória.
+ No caso de telefone celular deve ser informado no padrão E.1641.
+ Para e-mail deve ter o formato xxxxxxxx@xxxxxxx.xxx(.xx) e no máximo 77 caracteres.
+ No caso de CPF deverá ser informado com 11 números, sem pontos ou traços.
+ Para o caso de CNPJ deverá ser informado com 14 números, sem pontos ou traços.
+ No caso de chave aleatória deve ser informado o UUID gerado pelo DICT, conforme formato especificado na RFC41223.
+ Se informado, a detentora da conta deve validar o proxy no DICT quando localInstrument for igual a DICT, QRDN ou QRES e validar o campo creditorAccount.
+ Esta validação é opcional caso o localInstrument for igual a INIC.
+ [Restrição] Se localInstrument for igual a MANU, o campo proxy não deve ser preenchido. Se localInstrument for igual INIC, DICT, QRDN ou QRES, o campo proxy deve ser sempre preenchido com a chave Pix.
+ ibgeTownCode:
+ type: string
+ minLength: 7
+ maxLength: 7
+ pattern: '^\d{7}$'
+ example: '5300108'
+ description: |
+ O campo ibgetowncode no arranjo PIX, tem o mesmo comportamento que o campo codMun descrito no item 1.6.6 do manual do PIX, conforme segue:
+
+ 1. Caso a informação referente ao município não seja enviada; o PSP do recebedor assumirá que não existem feriados estaduais e municipais no período em questão;
+ status:
+ $ref: '#/components/schemas/EnumPaymentStatusType'
+ rejectionReason:
+ $ref: '#/components/schemas/RejectionReason'
+ localInstrument:
+ $ref: '#/components/schemas/EnumLocalInstrument'
+ cnpjInitiator:
+ type: string
+ pattern: '^\d{14}$'
+ maxLength: 14
+ example: '50685362000135'
+ description: CNPJ do Iniciador de Pagamento devidamente habilitado para a prestação de Serviço de Iniciação no Pix.
+ payment:
+ $ref: '#/components/schemas/PaymentPix'
+ transactionIdentification:
+ type: string
+ pattern: '^[a-zA-Z0-9]{1,35}$'
+ maxLength: 35
+ example: E00038166201907261559y6j6
+ description: |
+ Trata-se de um identificador de transação que deve ser retransmitido intacto pelo PSP do pagador ao gerar a ordem de pagamento.
+
+ [Restrição] A detentora deve obrigatoriamente retornar o campo com o mesmo valor recebido da iniciadora, caso ele tenha sido enviado na requisição da iniciação do pagamento.
+ remittanceInformation:
+ type: string
+ maxLength: 140
+ pattern: '[\w\W\s]*'
+ example: Pagamento da nota RSTO035-002.
+ description: |
+ Deve ser preenchido sempre que o usuário pagador inserir alguma informação adicional em um pagamento, a ser enviada ao recebedor.
+ creditorAccount:
+ $ref: '#/components/schemas/PaymentsCreditorAccount'
+ cancellation:
+ $ref: '#/components/schemas/PixPaymentCancellation'
+ debtorAccount:
+ $ref: '#/components/schemas/PaymentsDebtorAccount'
+ authorisationFlow:
+ type: string
+ enum:
+ - HYBRID_FLOW
+ - CIBA_FLOW
+ example: HYBRID_FLOW
+ description: |
+ Campo condicional utilizado para identificar o fluxo de autorização em que o pagamento foi solicitado.
+
+ [Restrição] Caso o campo não esteja presente no payload, subentende-se que o fluxo de autorização utilizado é o HYBRID_FLOW.
+ Schedule:
+ type: object
+ description: |
+ [Restrição] Mutuamente excludente com o campo date.
+
+ Este campo é obrigatório no caso de agendamento.
+
+ Neste caso, o campo date não deve ser informado.
+ required:
+ - single
+ properties:
+ single:
+ type: object
+ description: Define a política de agendamento único.
+ required:
+ - date
+ properties:
+ date:
+ type: string
+ format: date
+ maxLength: 10
+ pattern: '^(\d{4})-(1[0-2]|0?[1-9])-(3[01]|[12][0-9]|0?[1-9])$'
+ example: '2021-01-01'
+ description: |
+ Define a data alvo da liquidação do pagamento.
+
+ O fuso horário de Brasília deve ser utilizado para criação e racionalização sobre os dados deste campo.
+
+ Observação: Esse campo deverá sempre ser no mínimo D+1 corrido, ou seja, a data imediatamente posterior em relação a data do consentimento considerando o fuso horário de Brasília e deverá ser no máximo D+365 corridos a partir da data do consentimento considerando o fuso horário de Brasília
+ XFapiInteractionId:
+ type: string
+ pattern: '^[a-zA-Z0-9][a-zA-Z0-9\-]{0,99}$'
+ maxLength: 100
+ description: 'Um UID [RFC4122](https://tools.ietf.org/html/rfc4122) usado como um ID de correlação. Se fornecido, o transmissor deve "reproduzir" esse valor no cabeçalho de resposta.'
+ parameters:
+ consentId:
+ name: consentId
+ in: path
+ description: |
+ O consentId é o identificador único do consentimento e deverá ser um URN - Uniform Resource Name.
+ Um URN, conforme definido na [RFC8141](https://tools.ietf.org/html/rfc8141) é um Uniform Resource
+ Identifier - URI - que é atribuído sob o URI scheme "urn" e um namespace URN específico, com a intenção de que o URN
+ seja um identificador de recurso persistente e independente da localização.
+ Considerando a string urn:bancoex:C1DD33123 como exemplo para consentId temos:
+ - o namespace(urn)
+ - o identificador associado ao namespace da instituição transnmissora (bancoex)
+ - o identificador específico dentro do namespace (C1DD33123).
+ Informações mais detalhadas sobre a construção de namespaces devem ser consultadas na [RFC8141](https://tools.ietf.org/html/rfc8141).
+ required: true
+ schema:
+ type: string
+ pattern: '^urn:[a-zA-Z0-9][a-zA-Z0-9\-]{0,31}:[a-zA-Z0-9()+,\-.:=@;$_!*''%\/?#]+$'
+ maxLength: 256
+ paymentId:
+ name: paymentId
+ in: path
+ description: Identificador da operação de pagamento.
+ required: true
+ schema:
+ type: string
+ pattern: '^[a-zA-Z0-9][a-zA-Z0-9\-]{0,99}$'
+ maxLength: 100
+ Authorization:
+ name: Authorization
+ in: header
+ description: Cabeçalho HTTP padrão. Permite que as credenciais sejam fornecidas dependendo do tipo de recurso solicitado
+ required: true
+ schema:
+ type: string
+ pattern: '[\w\W\s]*'
+ maxLength: 2048
+ xCustomerUserAgent:
+ name: x-customer-user-agent
+ in: header
+ description: Indica o user-agent que o usuário utiliza.
+ required: false
+ schema:
+ type: string
+ pattern: '[\w\W\s]*'
+ minLength: 1
+ maxLength: 100
+ xFapiAuthDate:
+ name: x-fapi-auth-date
+ in: header
+ description: 'Data em que o usuário logou pela última vez com o receptor. Representada de acordo com a [RFC7231](https://tools.ietf.org/html/rfc7231).Exemplo: Sun, 10 Sep 2017 19:43:31 UTC'
+ required: false
+ schema:
+ type: string
+ pattern: '^(Mon|Tue|Wed|Thu|Fri|Sat|Sun), \d{2} (Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec) \d{4} \d{2}:\d{2}:\d{2} (GMT|UTC)$'
+ minLength: 29
+ maxLength: 29
+ xFapiCustomerIpAddress:
+ name: x-fapi-customer-ip-address
+ in: header
+ description: O endereço IP do usuário se estiver atualmente logado com o receptor.
+ required: false
+ schema:
+ type: string
+ pattern: '[\w\W\s]*'
+ minLength: 1
+ maxLength: 100
+ xFapiInteractionId:
+ name: x-fapi-interaction-id
+ in: header
+ description: 'Um UID [RFC4122](https://tools.ietf.org/html/rfc4122) usado como um ID de correlação. Se fornecido, o transmissor deve "reproduzir" esse valor no cabeçalho de resposta.'
+ required: true
+ schema:
+ type: string
+ pattern: '^[a-zA-Z0-9][a-zA-Z0-9\-]{0,99}$'
+ minLength: 1
+ maxLength: 100
+ XIdempotencyKey:
+ name: x-idempotency-key
+ in: header
+ description: Cabeçalho HTTP personalizado. Identificador de solicitação exclusivo para suportar a idempotência.
+ required: true
+ schema:
+ type: string
+ maxLength: 40
+ pattern: ^(?!\s)(.*)(\S)$
+ securitySchemes:
+ OpenId:
+ type: openIdConnect
+ openIdConnectUrl: 'https://auth.mockbank.poc.raidiam.io/.well-known/openid-configuration'
+ OAuth2ClientCredentials:
+ type: oauth2
+ description: |
+ Fluxo OAuth necessário para que a iniciadora possa iniciar pagamentos. Requer o processo de redirecionamento e autenticação do usuário.
+ Apenas pagamentos iniciados pela mesma iniciadora de pagamentos podem ser consultados ou cancelados através de modelo client credentials.
+ flows:
+ clientCredentials:
+ tokenUrl: 'https://authserver.example/token'
+ scopes:
+ payments: Escopo necessário para acesso à API Payment Initiation.
+ OAuth2AuthorizationCode:
+ type: oauth2
+ description: Fluxo OAuth necessário para que a iniciadora possa iniciar pagamentos. Requer o processo de redirecionamento e autenticação do usuário.
+ flows:
+ authorizationCode:
+ authorizationUrl: 'https://authserver.example/token'
+ tokenUrl: 'https://authserver.example/token'
+ scopes:
+ payments: Escopo necessário para acesso à API Payment Initiation.
+ responses:
+ BadRequest:
+ description: 'A requisição foi malformada, omitindo atributos obrigatórios, seja no payload ou através de atributos na URL.'
+ content:
+ application/json; charset=utf-8:
+ schema:
+ $ref: '#/components/schemas/ResponseError'
+ headers:
+ x-fapi-interaction-id:
+ description: |
+ Um UUID RFC4122 usado como um ID de correlação. O transmissor deve usar o mesmo valor recebido na requisição para o cabeçalho de resposta recebido na requisição, caso não tenha sido fornecido, deve se usar um UUID RFC4122.
+ schema:
+ $ref: '#/components/schemas/XFapiInteractionId'
+ BadRequestPayments:
+ description: 'Seguir as orientações presentes na descrição da API, subitem 1.2.3'
+ content:
+ application/json; charset=utf-8:
+ schema:
+ $ref: '#/components/schemas/ResponseError'
+ headers:
+ x-fapi-interaction-id:
+ description: |
+ Um UUID RFC4122 usado como um ID de correlação. O transmissor deve usar o mesmo valor recebido na requisição para o cabeçalho de resposta recebido na requisição, caso não tenha sido fornecido, deve se usar um UUID RFC4122.
+ schema:
+ $ref: '#/components/schemas/XFapiInteractionId'
+ BadRequestPixPayments:
+ description: 'Seguir as orientações presentes na descrição da API, subitem 2.1.3.'
+ content:
+ application/json; charset=utf-8:
+ schema:
+ $ref: '#/components/schemas/ResponseError'
+ headers:
+ x-fapi-interaction-id:
+ description: |
+ Um UUID RFC4122 usado como um ID de correlação. O transmissor deve usar o mesmo valor recebido na requisição para o cabeçalho de resposta recebido na requisição, caso não tenha sido fornecido, deve se usar um UUID RFC4122.
+ schema:
+ $ref: '#/components/schemas/XFapiInteractionId'
+ Forbidden:
+ description: O token tem escopo incorreto ou uma política de segurança foi violada
+ content:
+ application/json; charset=utf-8:
+ schema:
+ $ref: '#/components/schemas/ResponseError'
+ headers:
+ x-fapi-interaction-id:
+ description: |
+ Um UUID RFC4122 usado como um ID de correlação. O transmissor deve usar o mesmo valor recebido na requisição para o cabeçalho de resposta recebido na requisição, caso não tenha sido fornecido, deve se usar um UUID RFC4122.
+ schema:
+ $ref: '#/components/schemas/XFapiInteractionId'
+ InternalServerError:
+ description: Ocorreu um erro no gateway da API ou no microsserviço
+ content:
+ application/json; charset=utf-8:
+ schema:
+ $ref: '#/components/schemas/ResponseError'
+ headers:
+ x-fapi-interaction-id:
+ description: |
+ Um UUID RFC4122 usado como um ID de correlação. O transmissor deve usar o mesmo valor recebido na requisição para o cabeçalho de resposta recebido na requisição, caso não tenha sido fornecido, deve se usar um UUID RFC4122.
+ schema:
+ $ref: '#/components/schemas/XFapiInteractionId'
+ MethodNotAllowed:
+ description: O consumidor tentou acessar o recurso com um método não suportado
+ content:
+ application/json; charset=utf-8:
+ schema:
+ $ref: '#/components/schemas/ResponseError'
+ headers:
+ x-fapi-interaction-id:
+ description: |
+ Um UUID RFC4122 usado como um ID de correlação. O transmissor deve usar o mesmo valor recebido na requisição para o cabeçalho de resposta recebido na requisição, caso não tenha sido fornecido, deve se usar um UUID RFC4122.
+ schema:
+ $ref: '#/components/schemas/XFapiInteractionId'
+ NotAcceptable:
+ description: A solicitação continha um cabeçalho Accept diferente dos tipos de mídia permitidos ou um conjunto de caracteres diferente de UTF-8
+ content:
+ application/json; charset=utf-8:
+ schema:
+ $ref: '#/components/schemas/ResponseError'
+ headers:
+ x-fapi-interaction-id:
+ description: |
+ Um UUID RFC4122 usado como um ID de correlação. O transmissor deve usar o mesmo valor recebido na requisição para o cabeçalho de resposta recebido na requisição, caso não tenha sido fornecido, deve se usar um UUID RFC4122.
+ schema:
+ $ref: '#/components/schemas/XFapiInteractionId'
+ NotFound:
+ description: O recurso solicitado não existe ou não foi implementado
+ content:
+ application/json; charset=utf-8:
+ schema:
+ $ref: '#/components/schemas/ResponseError'
+ headers:
+ x-fapi-interaction-id:
+ description: |
+ Um UUID RFC4122 usado como um ID de correlação. O transmissor deve usar o mesmo valor recebido na requisição para o cabeçalho de resposta recebido na requisição, caso não tenha sido fornecido, deve se usar um UUID RFC4122.
+ schema:
+ $ref: '#/components/schemas/XFapiInteractionId'
+ SiteIsOverloaded:
+ description: 'O site está sobrecarregado e a operação foi recusada, pois foi atingido o limite máximo de TPS global, neste momento.'
+ content:
+ application/json; charset=utf-8:
+ schema:
+ $ref: '#/components/schemas/ResponseError'
+ TooManyRequests:
+ description: 'A operação foi recusada, pois muitas solicitações foram feitas dentro de um determinado período ou o limite global de requisições concorrentes foi atingido'
+ content:
+ application/json; charset=utf-8:
+ schema:
+ $ref: '#/components/schemas/ResponseError'
+ headers:
+ x-fapi-interaction-id:
+ description: |
+ Um UUID RFC4122 usado como um ID de correlação. O transmissor deve usar o mesmo valor recebido na requisição para o cabeçalho de resposta recebido na requisição, caso não tenha sido fornecido, deve se usar um UUID RFC4122.
+ schema:
+ $ref: '#/components/schemas/XFapiInteractionId'
+ Retry-After:
+ description: |
+ Cabeçalho que indica o tempo (em segundos) que o cliente deverá aguardar para realizar uma nova tentativa de chamada. Este cabeçalho deverá estar presente quando o código HTTP de retorno for 429 Too many requests.
+ schema:
+ description: |
+ Cabeçalho que indica o tempo (em segundos) que o cliente deverá aguardar para realizar uma nova tentativa de chamada. Este cabeçalho deverá estar presente quando o código HTTP de retorno for 429 Too many requests.
+ type: integer
+ UnprocessableEntityPixPayment:
+ description: 'Seguir as orientações presentes na descrição da API, itens 2.2 e 2.3 e seus subitens.'
+ content:
+ application/jwt:
+ schema:
+ $ref: '#/components/schemas/422ResponseErrorCreatePixPayments'
+ examples:
+ Saldo insuficiente:
+ summary: Saldo insuficiente
+ value:
+ errors:
+ - code: SALDO_INSUFICIENTE
+ title: Saldo insuficiente.
+ detail: A conta selecionada não possui saldo suficiente para realizar o pagamento.
+ meta:
+ requestDateTime: '2021-05-21T08:30:00Z'
+ headers:
+ x-fapi-interaction-id:
+ description: |
+ Um UUID RFC4122 usado como um ID de correlação. O transmissor deve usar o mesmo valor recebido na requisição para o cabeçalho de resposta recebido na requisição, caso não tenha sido fornecido, deve se usar um UUID RFC4122.
+ schema:
+ $ref: '#/components/schemas/XFapiInteractionId'
+ UnprocessableEntityConsents:
+ description: 'Seguir as orientações presentes na descrição da API, item 1.3 e seus subitens.'
+ content:
+ application/jwt:
+ schema:
+ $ref: '#/components/schemas/422ResponseErrorCreateConsent'
+ examples:
+ Forma de pagamento inválida:
+ summary: Forma de pagamento inválida
+ value:
+ errors:
+ - code: FORMA_PAGAMENTO_INVALIDA
+ title: Forma de pagamento inválida.
+ detail: 'Forma de pagamento [Modalidade] não suportada.'
+ meta:
+ requestDateTime: '2021-05-21T08:30:00Z'
+ headers:
+ x-fapi-interaction-id:
+ description: |
+ Um UUID RFC4122 usado como um ID de correlação. O transmissor deve usar o mesmo valor recebido na requisição para o cabeçalho de resposta recebido na requisição, caso não tenha sido fornecido, deve se usar um UUID RFC4122.
+ schema:
+ $ref: '#/components/schemas/XFapiInteractionId'
+ UnprocessableEntityPixPayments:
+ description: 'A requisição foi malformada, omitindo atributos obrigatórios, seja no payload ou através de atributos na URL.'
+ content:
+ application/jwt:
+ schema:
+ $ref: '#/components/schemas/422ResponseErrorCreatePixPayment'
+ examples:
+ Saldo insuficiente:
+ summary: Saldo insuficiente
+ value:
+ errors:
+ - code: PAGAMENTO_NAO_PERMITE_CANCELAMENTO
+ title: Pagamento não permite cancelamento
+ detail: Pagamento não permite cancelamento
+ meta:
+ requestDateTime: '2021-05-21T08:30:00Z'
+ headers:
+ x-fapi-interaction-id:
+ description: |
+ Um UUID RFC4122 usado como um ID de correlação. O transmissor deve usar o mesmo valor recebido na requisição para o cabeçalho de resposta recebido na requisição, caso não tenha sido fornecido, deve se usar um UUID RFC4122.
+ schema:
+ $ref: '#/components/schemas/XFapiInteractionId'
+ Unauthorized:
+ description: Cabeçalho de autenticação ausente/inválido ou token inválido
+ content:
+ application/json; charset=utf-8:
+ schema:
+ $ref: '#/components/schemas/ResponseError'
+ headers:
+ x-fapi-interaction-id:
+ description: |
+ Um UUID RFC4122 usado como um ID de correlação. O transmissor deve usar o mesmo valor recebido na requisição para o cabeçalho de resposta recebido na requisição, caso não tenha sido fornecido, deve se usar um UUID RFC4122.
+ schema:
+ $ref: '#/components/schemas/XFapiInteractionId'
+ UnsupportedMediaType:
+ description: O formato do payload não é um formato suportado.
+ content:
+ application/json; charset=utf-8:
+ schema:
+ $ref: '#/components/schemas/ResponseError'
+ headers:
+ x-fapi-interaction-id:
+ description: |
+ Um UUID RFC4122 usado como um ID de correlação. O transmissor deve usar o mesmo valor recebido na requisição para o cabeçalho de resposta recebido na requisição, caso não tenha sido fornecido, deve se usar um UUID RFC4122.
+ schema:
+ $ref: '#/components/schemas/XFapiInteractionId'
+ 201PaymentsConsentsConsentCreated:
+ description: Consentimento de pagamento criado com sucesso.
+ headers:
+ x-fapi-interaction-id:
+ description: |
+ Um UUID RFC4122 usado como um ID de correlação. O transmissor deve usar o mesmo valor recebido na requisição para o cabeçalho de resposta recebido na requisição, caso não tenha sido fornecido, deve se usar um UUID RFC4122.
+ schema:
+ $ref: '#/components/schemas/XFapiInteractionId'
+ content:
+ application/jwt:
+ schema:
+ $ref: '#/components/schemas/ResponseCreatePaymentConsent'
+ 200PaymentsConsentsConsentIdRead:
+ description: Dados do consentimento de pagamento obtidos com sucesso.
+ headers:
+ x-fapi-interaction-id:
+ description: |
+ Um UUID RFC4122 usado como um ID de correlação. O transmissor deve usar o mesmo valor recebido na requisição para o cabeçalho de resposta recebido na requisição, caso não tenha sido fornecido, deve se usar um UUID RFC4122.
+ schema:
+ $ref: '#/components/schemas/XFapiInteractionId'
+ content:
+ application/jwt:
+ schema:
+ $ref: '#/components/schemas/ResponsePaymentConsent'
+ 201PaymentsInitiationPixPaymentCreated:
+ description: Iniciação de pagamento Pix criada com sucesso.
+ headers:
+ x-fapi-interaction-id:
+ description: |
+ Um UUID RFC4122 usado como um ID de correlação. O transmissor deve usar o mesmo valor recebido na requisição para o cabeçalho de resposta recebido na requisição, caso não tenha sido fornecido, deve se usar um UUID RFC4122.
+ schema:
+ $ref: '#/components/schemas/XFapiInteractionId'
+ content:
+ application/jwt:
+ schema:
+ $ref: '#/components/schemas/ResponseCreatePixPayment'
+ 200PaymentsInitiationPixPaymentIdRead:
+ description: Dados de iniciação de pagamento Pix obtidos com sucesso.
+ headers:
+ x-fapi-interaction-id:
+ description: |
+ Um UUID RFC4122 usado como um ID de correlação. O transmissor deve usar o mesmo valor recebido na requisição para o cabeçalho de resposta recebido na requisição, caso não tenha sido fornecido, deve se usar um UUID RFC4122.
+ schema:
+ $ref: '#/components/schemas/XFapiInteractionId'
+ content:
+ application/jwt:
+ schema:
+ $ref: '#/components/schemas/ResponsePixPayment'
+ 200PatchPixPayments:
+ description: Iniciação de pagamento Pix cancelada com sucesso.
+ headers:
+ x-fapi-interaction-id:
+ description: |
+ Um UUID RFC4122 usado como um ID de correlação. O transmissor deve usar o mesmo valor recebido na requisição para o cabeçalho de resposta recebido na requisição, caso não tenha sido fornecido, deve se usar um UUID RFC4122.
+ schema:
+ $ref: '#/components/schemas/XFapiInteractionId'
+ content:
+ application/jwt:
+ schema:
+ $ref: '#/components/schemas/ResponsePatchPixPayment'
\ No newline at end of file
diff --git a/swagger-apis/payments/index.html b/swagger-apis/payments/index.html
index 42b4132b1..f3e681ce0 100644
--- a/swagger-apis/payments/index.html
+++ b/swagger-apis/payments/index.html
@@ -63,8 +63,9 @@
{"name": "1.1.0-rc1.0", "url": "./1.1.0-rc1.0.yml"},
{"name": "1.2.0", "url": "./1.2.0.yml"},
{"name": "2.0.0", "url": "./2.0.0.yml"},
- {"name": "3.0.0-beta.1", "url": "./3.0.0-beta.1.yml"}],
- "urls.primaryName": "3.0.0-beta.1", // default spec
+ {"name": "3.0.0-beta.1", "url": "./3.0.0-beta.1.yml"},
+ {"name": "3.0.0-beta.2", "url": "./3.0.0-beta.2.yml"}],
+ "urls.primaryName": "3.0.0-beta.2", // default spec
dom_id: '#swagger-ui',
deepLinking: true,
supportedSubmitMethods:[],