P2Pix ITP oracle backend
Variáveis de ambiente necessárias no arquivo .env
:
-
BB_CLIENT_ID
,BB_CLIENT_SECRET
, eDEV_APP_KEY
: Fornecidas pelo Banco do Brasil -
PRIVATE_KEY
: Chave privada Ethereum (em formato hexadecimal com prefixo '0x') que vai assinar as liberações de pagamento)
Endpoints
POST /register
Registra um participante.
Chamado pelo vendedor antes de fazer deposit
no smart contract.
Parametros requeridos:
chainID
tipoDocumento
numeroDocumento
numeroConta
tipoConta
codigoIspb
curl --request POST \
--url http://localhost:5000/register \
--header 'content-type: application/json' \
--data '{
"chainID": "1337",
"tipoDocumento": 1,
"numeroDocumento": 12345678900,
"numeroConta": 1234567890123456,
"numeroAgencia": 123,
"tipoConta": 1,
"codigoIspb": 0
}'
Retorna em formato JSON:
numeroParticipante
(usado nodeposit
do SC comopixTarget
)
POST /request
Solicitação de Pagamento
Chamado pelo comprador após o lock
no smart contract.
Parametros requeridos:
amount
pixTarget
curl -X POST http://localhost:5000/request \
-H "Content-Type: application/json" \
-d '{
"amount": 100.00,
"pixTarget": 123
}'
Retorna em formato JSON:
numeroSolicitacao
: usado para chamar/release
depoistextoQrCode
: usado para gerar o QR PIX
GET /release/{numeroSolicitacao}
Liberação de Pagamento
Chamado pelo comprador após pagar o Pix
curl http://localhost:5000/release/123
Retorna em formato JSON:
chainid
-pixTarget
amount
: valor em weipixTimestamp
signature
: assinatura ethereum compatível
Observações
- O ambiente de produção requer autenticação mTLS
- Para ambiente de desenvolvimento use
DEBUG=true
- Em produção, o servidor usa Waitress como servidor WSGI
- Para mais informações, consulte a documentação oficial: https://developers.bb.com.br/
Description
Languages
Python
100%