pix_sicoob 1.1.9 pix_sicoob: ^1.1.9 copied to clipboard
Easy-to-use interface for integrating Flutter apps with Sicoob's Pix API.
Pix Sicoob - Easy to use interface for integrating with Sicoob Pix API in your Flutter Apps.
This package offers an easy-to-use interface for integrating with Sicoob Pix API. With this package, you can get transaction information quickly and efficiently in your Flutter apps.
Explore the docs »
Report Bug
·
Request Feature
Table of Contents
About The Project #
This package offers an easy-to-use interface for integrating with Sicoob's Pix API. With this package, you can get transaction information quickly and efficiently in your Flutter apps.
Pre Requirements #
- Key Pix registered with Sicoob
- Exclusive for legal entities
- Valid certificate issued by an external CAs complying with the international standard x.509
- Registration on the Sicoob Developers Portal
Getting Started #
To install This package in your project you can follow the instructions below:
a) Add in your pubspec.yaml:
dependencies:
pix_sicoob: <last-version>
b) or use:
dart pub add pix_sicoob
How To Use #
This package is ready for get transactions information quickly!
- First instantiate the class passing the appropriate parameters
- Second get the token
- Third fetch your Pix transactions quickly!
Instantiate the class #
final pixSicoob = PixSicoob(
clientID:'CLIENT_ID',
certificateBase64String: 'X509_Parsed_TO_BASE64_STRING',
/*
This package offer a method to parses file certificate to base64 String
Method:
final certBase64String = pixSicoob.certFileToBase64String(
pkcs12CertificateFile: File('test/cert/cert.pfx'),
);
*/
certificatePassword: 'CERTIFICATE_PASSWORD',
);
Get the token #
final token = await pixSicoob.getToken();
Fetch your Pix transacations Quickly! #
final listPix = await pixSicoob.fetchTransactions(
token: token,
);
//Returns the last 4 days transactions
For more examples, please refer to the Documentation
Features #
- PIX:
- ✅ Fetch received PIX transactions
- 🚧 Fetch specific pix transaction
- 🚧 Request return
- 🚧 Consult return
-
COB:
- ✅ Create an immediate charge
- 🚧 Review Immediate Billing
- 🚧 Consult Immediate Billing
- 🚧 Get the qrcode image of an immediate charge
- 🚧 Consult list of immediate charges
-
COBV:
- 🚧 Create billing due
- 🚧 Review billing due
- 🚧 Consult Billing due
- 🚧 Get qrcode image of a due charge
- 🚧 Consult list of due charges
-
LOTECOBV:
- 🚧 Create / Change batch of due charges
- 🚧 Review specific charges within a batch of due charges
- 🚧 Consult a specific batch of due charges
- 🚧 Consult batches of charges due
- WEBHOOK:
- 🚧 Configure PIX webhook
- 🚧 Display information about the PIX webhook
- 🚧 Cancel PIX webhook
- 🚧 Consult registered webhooks
Use cases #
Convert certificate file to Base64String #
final certBase64String = pixSicoob.certFileToBase64String(
pkcs12CertificateFile: File('test/cert/cert.pfx'));
Request a token #
final token = await pixSicoob.getToken();
Fetch Pix Transactions #
- Default Time Range
final listPix = await pixSicoob.fetchTransactions(
token: token,
);
//Returns the last 4 days transactions
- Custom Time Range
final listPix = await pixSicoob.fetchTransactions(
token: token,
dateTimeRange: DateTimeRange(
start: DateTime.now().subtract(Duration(days: 360)),
end: DateTime.now(),
);
);
//Returns the transactions of the specified date range
Handling errors #
This package provides some ways to map and handle different types of errors, Below are some of the errors that can be encountered when using this package:
- the-certificate-password-is-incorrect: A senha do certificado está incorreta.
- invalid-certificate-file: O arquivo de certificado é inválido
- invalid-certificate-base64string: A string base64 do certificado é inválida
- empty-certificate-password: A senha do certificado está vazia
- empty-certificate-base64string: A string base64 do certificado está vazia
- could-not-find-the-certificate-path: O caminho para o certificado não pôde ser encontrado
- client-id-cannot-be-empty: O ID do cliente não pode estar vazio.
- date-range-must-be-in-the-same-month: O intervalo de datas deve estar dentro do mesmo mês.
Contributing #
🚧 Contributing Guidelines - Currently being updated 🚧
Contributions are what make the open source community such an amazing place to learn, inspire, and create. Any contributions you make are greatly appreciated.
If you have a suggestion that would make this better, please fork the repo and create a pull request. You can also simply open an issue with the appropriate tag. Don't forget to give the project a star! Thanks again!
- Fork the Project
- Create your Feature Branch (
git checkout -b feature/AmazingFeature
) - Commit your Changes (
git commit -m 'Add some AmazingFeature'
) - Push to the Branch (
git push origin feature/AmazingFeature
) - Open a Pull Request
Remember to include a tag, and to follow Conventional Commits and Semantic Versioning when uploading your commit and/or creating the issue.
License #
Distributed under the MIT LICENSE.txt
for more information.
Architecture #
Check the architecture used in the project ARCHITECTURE.md
Aknowledgements #
Thank you to all the people who contributed to this project, whithout you this project would not be here today.
Maintaned by #
Built and maintained by AcxTech Sistemas.