Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Revisão página: Diagrama de Sequência #8

Open
wants to merge 8 commits into
base: main
Choose a base branch
from
Open
Changes from 6 commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
72 changes: 4 additions & 68 deletions diagrama.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,64 +7,6 @@
1. Debtor (Usuário) inicia o processo de pagamento na iniciadora.

2. Na iniciadora, o debtor seleciona a detentora e os dados de pagamentos: **Observação**: não serão ofertados, no primeiro momento, **Pix Saque e Pix troco**. Também não será possível agendamentos para **Pix QR Codes Dinâmico com vencimento**. [Aqui referências a regulamentação relacionada ao Pix](https://www.bcb.gov.br/estabilidadefinanceira/pix?modalAberto=regulamentacao_pix "https://www.bcb.gov.br/estabilidadefinanceira/pix?modalAberto=regulamentacao_pix").

1. Se transação por Chave Pix ou QR Code Estático:

1. É realizada consulta ao DICT (diretório de contas).
**Observação**: se a Iniciadora for um participante direto, detentora ou não de conta, no ecossistema do Pix, ele fará a consulta de forma direta ao DICT. Se a iniciadora for um participante indireto, será necessário consulta por meio de uma instituição com acesso direto com a qual a iniciadora possua relacionamento.

2. A iniciadora recebe as informações consultadas:

1. Dados de chave

2. Nome do creditor

3. Instituição detentora da conta do creditor

4. CPF / CPNJ do creditor

2. Se transação por QR Code Dinâmico:

1. É realizada consulta dos dados do QR code do creditor:

1. CNPJ / CPF

2. Data de vencimento

3. Nome Instituição

4. Endereço (logradouro, cidade, UF e CEP)

5. Identificador

6. Chave Pix

7. Valor Original

8. Valor Final

9. Vencimento

10. Expiração

3. Se transação por dados manuais (agência e conta):

1. Insere-se dados:

1. Instituição financeira

2. Agência

3. Conta

4. Nome

5. CPF / CNPJ

2. **Observação**: não é realizada consulta no creditor ou no DICT.

3. Após consultas, a iniciadora segue para o fluxo de autorização e consentimento.


#### Estabelece TLS

Expand All @@ -84,11 +26,11 @@ Em caso de sucesso da validação, o Servidor de Autorização da Instituição

#### Access\_token (scope: payments, openid)

O Servidor de Autorização da Instituição Detentora da Conta deverá responder à requisição com o _access\_token_ conforme padrões a serem definidos pelo GT de Segurança.
O Servidor de Autorização da Instituição Detentora da Conta deverá responder à requisição com o _access\_token_ conforme padrões definidos pelo GT de Segurança.

#### POST /payments/consents

Para a criação de consentimento, considerando o requerido para FAPI - Loding Intent ([Financial\_API\_Lodging\_Intent.md](https://bitbucket.org/openid/fapi/src/master/Financial_API_Lodging_Intent.md "https://bitbucket.org/openid/fapi/src/master/Financial_API_Lodging_Intent.md")), após a obtenção do token de acesso, a Instituição Iniciadora deverá usar esse token de acesso para fazer a requisição POST de consentimento. A criação do consentimento encontra-se detalhada na seção das APIs para Pagamentos (Open Finance Brasil).
Para a criação de consentimento, considerando o requerido para FAPI - Lodging Intent ([Financial\_API\_Lodging\_Intent.md](https://bitbucket.org/openid/fapi/src/master/Financial_API_Lodging_Intent.md "https://bitbucket.org/openid/fapi/src/master/Financial_API_Lodging_Intent.md")), após a obtenção do token de acesso, a Instituição Iniciadora deverá usar esse token de acesso para fazer a requisição POST de consentimento. A criação do consentimento encontra-se detalhada na seção das APIs para Pagamentos (Open Finance Brasil).

#### 201 Created

Expand All @@ -100,7 +42,7 @@ No caso do consentimento ter sido criado com sucesso, a Instituição Iniciadora

#### Validações de negócios (Detentora)

Ao receber o POST /payments/v1/pix/payments é importante observar que a Detentora deverá validar as informações passadas pela Iniciadora nos campos do payload de envio do consentimento e do pagamento (como, por exemplo, valores e dados do creditado), além de ser necessário decodificar o código para os casos de pagamentos iniciados a partir de um Pix QRCode, a fim de que a Detentora carregue as informações complementares (como, por exemplo, o TxID) na mensageria do Pix (atenção para a PACS008 e as [regulamentações do Pix](https://www.bcb.gov.br/estabilidadefinanceira/pix?modalAberto=regulamentacao_pix "https://www.bcb.gov.br/estabilidadefinanceira/pix?modalAberto=regulamentacao_pix")). A Detentora deve validar as informações de detalhes do payload com os dados de detalhes do consentimento, de acordo com a forma de pagamento. Caso os dados do detalhe informados no consentimento sejam diferente dos dados enviados na iniciação de pagamento, a Detentora de retornar erro HTTP 422 Unprocessable Entity, com o code BENEFICIARIO\_INCOMPATIVEL.
Ao receber `POST /payments/<version>/consents` ou `POST /payments/<version>/pix/payments` é importante observar que a Detentora deverá validar as informações passadas pela Iniciadora nos campos do payload de envio do consentimento e do pagamento (como, por exemplo, valores e dados do creditado), além de caso veja necessidade, decodificar o payload para validar outras informações (atenção para a PACS008 e as [regulamentações do Pix](https://www.bcb.gov.br/estabilidadefinanceira/pix?modalAberto=regulamentacao_pix "https://www.bcb.gov.br/estabilidadefinanceira/pix?modalAberto=regulamentacao_pix")). A Detentora deve validar as informações de detalhes do payload com os dados de detalhes do consentimento, de acordo com a forma de pagamento. Caso os dados do detalhe informados no consentimento sejam diferente dos dados enviados na iniciação de pagamento, a Detentora de retornar erro HTTP 422 Unprocessable Entity, com o code BENEFICIARIO\_INCOMPATIVEL.

#### Efetivação do pagamento<<Async>>

Expand All @@ -116,12 +58,6 @@ Durante o período de polling a Iniciadora deverá consultar o status da transa

#### Exibe comprovante de iniciação de pagamento

Caso a Iniciadora identifique que a transação de pagamento foi aprovada pela Detentora de Conta (status “ACCC”), poderá ser exibido o comprovante da **efetivação** da Transação de Pagamento. Caso o status do pagamento seja diferente de “ACCC” e/ou “RJCT”, deverá ser apresentada a efetivação da **solicitação** de Iniciação de Pagamento, apresentando as informações ([segundo Guia de Usuário TPP](https://openfinancebrasil.atlassian.net/wiki/spaces/DraftOF/pages/7997165/Guia+do+Usu+rio "https://openfinancebrasil.atlassian.net/wiki/spaces/DraftOF/pages/7997165/Guia+do+Usu+rio") – “Etapa 6: Efetivação da Solicitação):

* Forma de pagamento (de acordo com os arranjos de pagamento vigentes e Circular 4.015);

* Valor da transação de pagamento (opcional para transações sucessivas);

* Informações referentes ao Recebedor da Transação de Pagamento;
Caso a Iniciadora identifique que a transação de pagamento foi aprovada pela Detentora de Conta, poderá ser exibido o comprovante da **efetivação** da Transação de Pagamento. Caso o status do pagamento seja diferente de aprovado ou rejeitado, deverá ser apresentada a efetivação da **solicitação** de Iniciação de Pagamento, apresentando as informações [segundo Guia de Usuário](https://openfinancebrasil.atlassian.net/wiki/spaces/DraftOF/pages/7997165/Guia+do+Usu+rio "https://openfinancebrasil.atlassian.net/wiki/spaces/DraftOF/pages/7997165/Guia+do+Usu+rio").

Os possíveis status de uma transação de iniciação de pagamento estão detalhados na documentação (Open Finance Brasil).