Git Product home page Git Product logo

bbboletowebservice's Introduction

Cliente WebService para registro de boletos no Banco do Brasil

A partir de 2017, a rede bancária brasileira traz uma nova plataforma de geração Boletos de Cobrança Registrada, buscando uma maior agilidade e segurança para toda sociedade.

Conforme divulgado pela Febraban, a implantação deve ser totalmente concluída a partir de dezembro/2017.

A solução desenvolvida pelo Banco do Brasil é baseada em Web Services e utiliza o protocolo OAuth 2.0 para autenticação e autorização das requisições.

O código-fonte proposto foi desenvolvido em PHP segundo a especificação para consumir o Web Service fornecido pelo Banco do Brasil.

Índice

Começando...

Você precisa ter as seguintes bibliotecas do PHP instaladas para usar esta implementação.

Pré-requisitos

  • Curl (php-curl)
  • Json (php-json)
  • XML (php-xml)

Exemplo

Baixe primeiramente a implementação:

$ git clone https://github.com/recovieira/bbboletowebservice minhaimplementacao
$ cd minhaimplementacao

Primeiramente, você deve modificar o arquivo "index.php" para atender às suas necessidades.

Atenção

A credencial ("Client Id" com "Secret Key") para registro no ambiente de produção é diferente daquela para registro no ambiente de testes (homologação). A tentativa de obter a token de acesso ("access token") usando uma credencial incompatível com o ambiente no qual a biblioteca foi configurada para tentar registrar o boleto ocasionará a emissão da mensagem "Identificador ou credencial inválidos" pelo Web Service do Banco do Brasil. Obtenha uma credencial para cada ambiente que você esteja tentando registrá-los.

Posteriormente, execute o exemplo contido seja pela Web ou pela CLI. Para executar pela linha de comando, dê o comando seguinte (neste caso, você precisará ter o pacote "php-cli" instalado):

$ php index.php

Estrutura de arquivos e pastas

Estrutura breve do conteúdo:

├── index.php						# contém um exemplo simples de uso
├── Nova Cobrança - Manual de Integração v1.4.pdf	# especificação do Banco do Brasil
└── lib							# pasta contendo a classe
    └── bb.php						# arquivo contendo a implementação da requisição do serviço

Changelog

V 1.0

Lançamento inicial.

V 1.1

Evita requisitar uma token toda vez que for registrar um boleto. Armazena a token em cache e requisita uma nova automaticamente quando ela estiver preste a expirar ou já tiver expirado.

V 1.2

Permite separar entre o ambiente de teste (pelo método "alterarParaAmbienteDeTestes()") ou de produção (pelo "alterarParaAmbienteDeProducao()"). O exemplo no arquivo "index.php" usa o ambiente de testes.

Autor

Reginaldo Coimbra Vieira ([email protected])

Licença

O Cliente WebService para registro de boletos no Banco do Brasil é licenciado sob a Licença MIT (MIT). Você pode usar, copiar, modificar, integrar, publicar, distribuir e/ou vender cópias dos produtos finais, mas deve sempre declarar que Reginaldo Coimbra Vieira ([email protected]) é o autor original destes códigos e atribuir um link para https://github.com/recovieira/bbboletowebservice.git.

bbboletowebservice's People

Contributors

recovieira avatar

Watchers

James Cloos avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.