A biblioteca interbank-go
é uma implementação em Go para interagir com a API do Banco Inter. Ela fornece funcionalidades para autenticação (Token de acesso gerenciado automaticamente (thread-safe)), operações bancárias, cobranças e transações PIX.
go get github.com/raniellyferreira/interbank-go
// Cria um cliente usando as variáveis de ambiente (INTERBANK_CLIENT_ID, INTERBANK_CLIENT_SECRET, INTERBANK_SCOPES e INTERBANK_TLS_PATH)
client, err := inter.NewClient()
// ...
// Use o ambiente sandbox (é o mesmo que client.SetURL("https://cdpj-sandbox.partners.uatinter.co"))
client.UseSandBox()
// Defina a conta corrente a ser usada (opcional)
client.SetAccountNumber("12345678")
// ConsultarSaldo
respSaldo, err := client.Banking.ConsultarSaldo(context.Background(), "2024-10-20")
// ...
log.Printf("Saldo: %+v", respSaldo.Disponivel)
- auth: Gerencia a autenticação e autorização.
- backend: Lida com as requisições HTTP e gerenciamento de tokens.
- banking: Fornece serviços relacionados a operações bancárias.
- cobranca: Gerencia a emissão e consulta de cobranças.
- pix: Implementa funcionalidades relacionadas ao sistema PIX.
- erros: Define estruturas para tratamento de erros.
- utils: Utilitários gerais para manipulação de dados e formatação.
Gerencia as credenciais necessárias para autenticação na API do Banco Inter. As credenciais incluem clientID
, clientSecret
, grantType
e scopes
.
Para configurar as credenciais padrão, defina as seguintes variáveis de ambiente:
INTERBANK_CLIENT_ID
: O ID do cliente obtido no detalhe da tela de aplicações no IB.INTERBANK_CLIENT_SECRET
: O segredo do cliente obtido no detalhe da tela de aplicações no IB.INTERBANK_SCOPES
: Deve ser uma lista separada por vírgulas dos escopos desejados.INTERBANK_TLS_PATH
: O caminho para a pasta onde o certificado TLS está localizado. O certificado deve ser nomeadotls.crt
e a chave privadatls.key
.INTERBANK_USE_SANDBOX
: Define se a aplicação deve usar o ambiente de sandbox.
NewCredentials
: Cria novas credenciais.NewDefaultCredentials
: Carrega credenciais padrão a partir de variáveis de ambiente.credential.SetTLS
: Configura o certificado TLS.credential.SetScopesFromString
: Define os escopos a partir de uma string.credential.LoadCertAndKeyFromPath
: Carrega o certificado TLS e a chave privada dos caminhos fornecidos.
Fornece métodos para consultar extratos e saldos.
ExportarExtrato
: Exporta o extrato da conta.ConsultarExtratoCompleto
: Consulta o extrato completo da conta.ConsultarSaldo
: Consulta o saldo da conta.
Gerencia a emissão de cobranças.
Emitir
: Emite uma nova cobrança.
Implementa funcionalidades para transações PIX, incluindo consultas e devoluções.
Consultar
: Consulta um pix através de um determinado EndToEndIdConsultarRecebidos
: Consulta PIX recebidos.SolicitarDevolucao
: Solicita a devolução de um PIX.ConsultarDevolucao
: Consulta a devolução de um PIX.
Gerencia cobranças imediatas via PIX.
CriarCobrancaImediata
: Cria uma cobrança imediata.CriarCobrancaImediataComTxID
: Cria uma cobrança imediata com TxID.EditarCobrancaImediata
: Edita uma cobrança imediata.ConsultarCobrancaImediata
: Consulta uma cobrança imediata.ConsultarCobrancasImediatas
: Consulta cobranças imediatas.
Gerencia cobranças com vencimento via PIX.
CriarCobrancaComVencimentoETxID
: Cria uma cobrança com vencimento e TxID.ConsultarCobrancaComVencimento
: Consulta uma cobrança com vencimento.ConsultarCobrancasComVencimento
: Consulta cobranças com vencimento.EditarCobrancaComVencimento
: Edita uma cobrança com vencimento.
- Go 1.23
- Dependências externas listadas no
go.mod
.
Esta biblioteca oferece uma interface robusta e fácil de usar para integrar aplicações Go com a API do Banco Inter, suportando operações bancárias, cobranças e transações PIX de forma segura e eficiente.