Skip to content

🌅 🌇 A tool to generate fixed-width CNAB240 files to perform bulk payments

License

Notifications You must be signed in to change notification settings

vintasoftware/aurorae

Repository files navigation

aurorae

PyPi version PyPI - Python Version CI Coverage Status Documentation Status License: MIT

aurorae is a tool to generate fixed-width CNAB240 files to perform bulk payments.

aurorae does...

  • Generates CNAB240 files for bulk payments
  • Allows easy extension of different types of input files

aurorae does not...

  • Address charge or as Brazilian banks call "cobrança"
  • Address payments by PIX, we only support payments through bank information

But, pull requests are welcomed.

How It Works

aurorae uses Python type hinting for data validation and generation of fixed-width CNAB 240 files. The library receives as inputs an spreadsheet that must be a match of the Pydantic model Spreadsheet, a general handler parses the initial data to an intermediary representation used by the CNAB240 module to generate files. Different types of inputs are supported by library through the creation of new providers, check the spreadsheet provider for an example.

The historic and architecture details can be found on the project's ADRs.

Requirements

  • Python (>3)
  • openpyxl (3.0.7)
  • pydantic (>1.8.2)

Installation

pip install aurorae

Usage

To run aurorae with test data:

generate_cnab_sample

To run aurorae with your own data use:

generate_cnab ~/source_spreadsheet.xlsx

Documentation

https://aurorae.readthedocs.io

Security

We take aurorae's security and our users' trust seriously, therefore we do not save any information (from payments or not) sent by users. If you believe you have found a security issue, please responsibly disclose by contacting: flavio at vinta.com.br

Releases

See CHANGELOG.md.

Credits

This project is maintained by open-source contributors and Vinta Software.

Commercial Support

Vinta Software is always looking for exciting work, so if you need any commercial support, feel free to get in touch: [email protected]