Este documento descreve a API PIX, que padroniza serviços oferecidos por PSPs recebedores no contexto de geração de cobranças, recebimentos, conciliações e devoluções de transações PIX. A API PIX viabiliza o recebimento de cobranças de forma imediata, para por exemplo, pontos de venda em lojas físicas e soluções para comércio eletrônico.
A API segue os padrões determinados pelo Banco Central do Brasil.
Documentação oficial |
---|
https://github.com/bacen/pix-api/releases/tag/2.1.0 |
Recursos
Funções Disponíveis |
---|
Criação de uma Cobrança |
Atualização de uma Cobrança |
Consulta de uma ou mais Cobranças |
Remoção de uma Cobrança |
Consulta de um ou mais Recebimentos |
Solicitação de Devolução Total |
Consulta de Devoluções |
Gerenciamento de Notificações |
Ambientes
Essa documentação aponta por padrão para o nosso ambiente de sandbox, o que significa que, para utilizá-lo você precisará de um usuário neste ambiente, bem como suas chaves de autenticação.
Nas chamadas de API, o ambiente sendo utilizado é determinado pela URL.
Ambiente | URLs |
---|---|
Sandbox | https://secure.sandbox.api.pagseguro.com/instant-payments |
Produção | https://secure.api.pagseguro.com/instant-payments |
Versão
As requests na API PIX devem ser acompanhadas da versão pertinente. A última versão que está documentada aqui é a 2.1.0, considerando os endpoints compatíveis com a 2.0.0.
QRCode
No contexto da API-PIX a geração do QRCode fica sob responsabilidade do usuário recebedor, que deve seguir o padrão BRCode especificado pelo BACEN. Manuais disponíveis em:
https://www.bcb.gov.br/estabilidadefinanceira/arranjosintegrantesspb
https://www.emvco.com/emv-technologies/qrcodes/
O payload de um BR Code consiste em uma sequência de objetos “ID, tamanho, conteúdo”. O ID de um objeto é representado por dois caracteres numéricos, seguidos do tamanho, também representado por dois caracteres numéricos que indicam a quantidade de caracteres que o conteúdo deste objeto possui. Todos os caracteres após o tamanho, representam o conteúdo em sí.
Exemplo:
QR Code text
00020126830014br.gov.bcb.pix2561api.pagseguro.com/pix/v2/210387E0-A6BF-45D1-80B5-CFEB9BBCEE2F5204899953039865802BR5921Pagseguro Internet SA6009SAO PAULO62070503***63047E6D
000201
2683
0014br.gov.bcb.pix
2561api.pagseguro.com/pix/v2/210387E0-A6BF-45D1-80B5-CFEB9BBCEE2F
52048999
5303986
5802BR
5921Pagseguro Internet SA
6009SAO PAULO
62070503***
63047E6D
ID | Tamanho | Conteúdo | Descrição |
---|---|---|---|
00 | 02 | 01 | Bloco inicial, padrão 1 |
26 | 83 | - | Padrão Arranjo Pix |
00 | 14 | br.gov.bcb.pix | GUI do arranjo Pix, padrão br.gov.bcb.pix |
25 | 61 | api.pagseguro.com/pix/v2/210387E0-A6BF-45D1-80B5-CFEB9BBCEE2F | Representa o Location da cobrança |
52 | 04 | 8999 | MCC do Recebedor |
53 | 03 | 986 | Representa a moeda, sempre padrão 986 que é o código do real |
58 | 02 | BR | Representa o código do País, sempre padrão BR |
59 | 21 | Pagseguro Internet SA | Nome do Recebedor |
60 | 09 | SAO PAULO | Cidade do Recebedor |
62 | 07 | 0503*** | TXId, sempre ***, no contexto do QR Code Dinâmico ele deve ser obtido do Location |
63 | 04 | 7E6D | O CRC16 é uma soma de verificação (checksum) do conteúdo completo do QR Code. O checksum deverá ser calculado usando o polinômio ‘1021’ (hex) e valor inicial ‘FFFF’ (hex). O checksum deverá ser calculado considerando todo o conteúdo do payload do QR Code, seus IDs, Tamanhos e Conteúdos, em ordem, assim como o ID e Tamanho do próprio CRC, porém desconsiderando o seu conteúdo, que é o cálculo em sí. |