Pix BB - Fast and Robust Banco do Brasil Pix Integration
O pacote pix_bb fornece uma interface simplificada e robusta para integração com a API de Pix do Banco do Brasil. Totalmente refatorado seguir os princípios de Clean Architecture e SOLID.
Explore a documentação »
Reportar Bug
·
Solicitar Recurso
🚀 Versão 3.0.0 (Principais Mudanças)
- Clean Architecture: Reestruturação interna completa para maior estabilidade e manutenibilidade.
- SOLID: Todas as implementações agora seguem inversão de dependência e segregação de interfaces.
- Result Pattern: Erros são tratados de forma previsível usando
result_dart. - Bug Fixes: Correção de erros 403 (Auth) e 500 (API) comuns na integração com o BB.
📋 Pré-requisitos
- Chave Pix cadastrada no Banco do Brasil.
- Acesso exclusivo para Pessoas Jurídicas.
- Cadastro no Portal de Desenvolvedores BB.
⚙️ Começando
Instale o pacote via terminal:
flutter pub add pix_bb
Ou no seu pubspec.yaml:
dependencies:
pix_bb: ^3.0.0
📖 Como Usar
1. Instanciação
Configure a classe principal com suas credenciais.
import 'package:pix_bb/pix_bb.dart';
final pixBB = PixBB(
ambiente: Ambiente.producao, // OU Ambiente.homologacao
basicKey: 'SUA_BASIC_KEY',
developerApplicationKey: 'SUA_APP_DEV_KEY',
);
2. Autenticação (Get Token)
Obtenha o token de acesso de forma assíncrona.
try {
final token = await pixBB.getToken();
print('Token extraído: ${token.accessToken}');
} catch (e) {
print('Erro na autenticação: $e');
}
3. Listagem de Transações Pix
Busque transações recebidas com filtros de data (máximo 4 dias de intervalo).
// Busca as transações dos últimos 4 dias (padrão)
final transactions = await pixBB.fetchTransactions(token: token);
// Com range customizado
final customTransactions = await pixBB.fetchTransactions(
token: token,
dateTimeRange: DateTimeRange(
start: DateTime.now().subtract(Duration(days: 1)),
end: DateTime.now(),
),
);
🔒 Segurança de Credenciais
Para manter suas credenciais seguras durante o desenvolvimento do seu exemplo, criamos um padrão de arquivo credentials.dart que é automaticamente ignorado pelo Git.
- No diretório
example/lib, crie um arquivocredentials.dart. - Adicione suas chaves nele.
- Certifique-se de que ele está no
.gitignore.
🏗️ Arquitetura e Contribuição
Para detalhes sobre como o pacote é construído internamente, veja o arquivo ARCHITECTURE.md.
Se desejar contribuir, por favor faça um fork do projeto e envie um Pull Request. Todas as contribuições são bem-vindas!
📄 Licença
Distribuído sob a licença MIT. Veja LICENSE para mais informações.
Built and maintained by AcxTech Sistemas.