PHPackages                             aryelgois/bank-interchange - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Utility &amp; Helpers](/categories/utility)
4. /
5. aryelgois/bank-interchange

ActiveLibrary[Utility &amp; Helpers](/categories/utility)

aryelgois/bank-interchange
==========================

Generate Bank Billets and Shipping Files, and read Return Files to interact with Banks

v0.2.0(8y ago)0122MITPHPPHP ^7.0

Since Nov 28Pushed 8y ago1 watchersCompare

[ Source](https://github.com/aryelgois/bank-interchange)[ Packagist](https://packagist.org/packages/aryelgois/bank-interchange)[ RSS](/packages/aryelgois-bank-interchange/feed)WikiDiscussions master Synced 2w ago

READMEChangelog (2)Dependencies (8)Versions (4)Used By (0)

Bank Interchange
================

[](#bank-interchange)

Index:

- [Intro](#intro)
    - [pt\_BR](#pt_br) | [en\_US](#en_us)
- [Setup](#setup)
- [TODO](#todo)
- [Documentation](doc/README.md)
- [Changelog](CHANGELOG.md)

Intro
-----

[](#intro)

#### pt\_BR

[](#pt_br)

Esse pacote implementa as especificações do CNAB240 e do CNAB400, definido pelo FEBRABAN, e contém geradores de boleto para diversos bancos, em PHP.

> O CNAB permite a comunicação entre empresas e bancos, organizando as informações em arquivos de texto com uma estrutura predefinida

O objetivo desse pacote é automatizar a criação de Boletos bancários e Arquivos Remessa, e facilitar a leitura de Arquivos Retorno em um servidor web:

1. Quando o cliente realiza uma compra, por exemplo, um Título bancário é criado

    - Esse Título pode ser representado como um boleto, em PDF
2. Um Arquivo Remessa, contendo um ou mais Títulos, é gerado e enviado ao banco antes que o cliente efetue o pagamento
3. O banco envia um Arquivo Retorno informando se o Título foi aceito, pago, tem algum erro, ou alguma outra ocorrência
4. Após o administrador conferir o resultado, o banco de dados é atualizado com novos dados

#### en\_US

[](#en_us)

This package implements CNAB240 and CNAB400 specifications, defined by FEBRABAN (a Brazilian organization), and contains bank billet generators for various banks, in PHP.

> The CNAB allows a comunication between enterprises and banks, organizing the information in text files with a predefined layout

This package aims to automate the generation of bank billets and Shipping Files, and to help reading Return Files in a web server:

1. When your client buys something, for exemple, a banking Title is created

    - This Title can be rendered as a bank billet, in PDF
2. A Shipping File, containing one or more Titles, is generated and sent to the bank before the client makes the payment
3. The bank sends a Return File informing if the Title was accepted, paid, has an error, or some other occurrence
4. After the administrator checks the result, the database is updated with new data

Setup
-----

[](#setup)

1. Clone with Git
2. Create a web server with PHP 7 or higher

    - Using Apache is recommended because the `.htaccess` files are already created

        - Enable the `AllowOverride` directive
    - Set the Document Root to `public/`
    - If you are using HTTPS, uncomment the line with `SSLRequireSSL` directive in `public/.htaccess`. It is highly recommended that you use SSL
3. Build the databases and run the generated SQL: *see [YASQL-PHP](https://github.com/aryelgois/yasql-php)*

```
composer yasql-build && cat build/*.sql | mysql -u root -p
```

4. Change the database credentials in `config/medools.php`*see [Medools](https://github.com/aryelgois/Medools)*
5. Configure the Authentication secret in `config/router.yml`*see [Medools Router](https://github.com/aryelgois/medools-router)*

    - You also need to register users in the `authentications` table and add their `authorizations`
6. Now you can develop inside `public/`

    - Make your app ajax request from server's `/api/`

TODO
----

[](#todo)

- Real world tests
- A nice web interface

[Documentation](doc/README.md)
------------------------------

[](#documentation)

[Changelog](CHANGELOG.md)
-------------------------

[](#changelog)

###  Health Score

23

—

LowBetter than 26% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity7

Limited adoption so far

Community9

Small or concentrated contributor base

Maturity50

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 100% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~185 days

Total

2

Last Release

2950d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/0f95855ecc3be665cdac87d201a24f763b0abb9c0fea4297b5f0bab4bff5e3b0?d=identicon)[aryelgois](/maintainers/aryelgois)

---

Top Contributors

[![aryelgois](https://avatars.githubusercontent.com/u/21041013?v=4)](https://github.com/aryelgois "aryelgois (600 commits)")

---

Tags

bancobankbilletboletocnab240cnab400febrabanticketBankcnab240cnab400ticketfebrabanbillet

### Embed Badge

![Health badge](/badges/aryelgois-bank-interchange/health.svg)

```
[![Health](https://phpackages.com/badges/aryelgois-bank-interchange/health.svg)](https://phpackages.com/packages/aryelgois-bank-interchange)
```

###  Alternatives

[friendsoftypo3/content-blocks

TYPO3 CMS Content Blocks - Content Types API | Define reusable components via YAML

101466.4k45](/packages/friendsoftypo3-content-blocks)[rcsofttech/audit-trail-bundle

Enterprise-grade, high-performance Symfony audit trail bundle. Automatically track Doctrine entity changes with split-phase architecture, multiple transports (HTTP, Queue, Doctrine), and sensitive data masking.

1175.2k](/packages/rcsofttech-audit-trail-bundle)[mapbender/mapbender

Mapbender library

10418.0k7](/packages/mapbender-mapbender)[altis/local-server

Local Server module for Altis

18217.0k2](/packages/altis-local-server)[hackzilla/ticket-bundle

This Bundle provides multilingual ticketing functionality for Symfony applications.

6429.3k1](/packages/hackzilla-ticket-bundle)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
