pix_bb 1.0.2
pix_bb: ^1.0.2 copied to clipboard
Easy-to-use interface for integrating with Banco do Brasil's Pix API.
Pix BB - Easy to use interface for integrating with Banco do Brasil's Pix API in your Flutter Apps.
![Logo](https://raw.githubusercontent.com/AcxTechSistemas/pix_bb/main/images/package-logo.png)
This package offers an easy-to-use interface for integrating with Banco do Brasil's Pix API. With this package, you can get transaction information quickly and efficiently in your Flutter apps.
Explore the docs »
Report Bug
·
Request Feature
[v1.0.0] Breaking Changes #
-
Changed variable name in PixBB Instantiate :
- dev_app_key => developerApplicationKey
-
Changed the way to use the fetchTransaction method:
- Before
final listPix = await pixBB.fetchRecentReceivedTransactions(
accessToken: token.accessToken,
);
- After
final listPix = await pixBB.fetchTransactions(
token: token,
);
//Returns the last 4 days transactions
final listPix = await pixBB.fetchTransactions(
token: token,
dateTimeRange: DateTimeRange(
start: DateTime.now().subtract(Duration(days: 1)),
end: DateTime.now(),
);
);
//Returns the transactions of the specified date range
// Attention the maximum difference between the dates must be 4 days
Table of Contents
About The Project #
This package offers an easy-to-use interface for integrating with Banco do Brasil's Pix API. With this package, you can get transaction information quickly and efficiently in your Flutter apps.
Pre Requirements #
- Key Pix registered with Banco do Brasil
- Exclusive for legal entities
- Registration on the BB 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_bb: <last-version>
b) or use:
dart pub add pix_bb
How To Use #
This package is ready for get transactions information quickly!
First instantiate the class passing the appropriate parameters
final pixBB = PixBB(
ambiente: Ambiente.homologacao,
basicKey:'BASIC_KEY',
applicationDeveloperKey: 'APP_DEV_KEY',
);
Make a request to the API with request a list of transactions received from the last 4 days
await pixBB.getToken().then((token) {
pixBB
.fetchTransactions(token: token)
.then((response) {
print(response); // it's a List<Pix>.
}).catchError((e) {
print(e);
// It's a PixException.
//This package provides several ways to handle errors that may occur.
//see the docs!
});
});
For more examples, please refer to the Documentation
Features #
- ✅ Queries
- ✅ Get Recent Transactions
- ✅ Get Transactions By Date
- 🚧 Dynamic QR Code configuration: Creation of Pix billing with unique identification;
- 🚧 Receipt Verification: Status verification of generated charges;
- 🚧 Review: Allows you to change the generated billing data;
- 🚧 Return (request and consultation): Allows Pix to be returned to the payer in partial or full amount and that returns can be consulted.
Use cases #
Request an access token #
Request a token
final token = await pixBB.getToken();
Fetch Pix Transactions #
- Default Time Range
final listPix = await pixBB.fetchTransactions(
token: token,
);
//Returns the last 4 days transactions
- Custom Time Range
final listPix = await pixBB.fetchTransactions(
token: token,
dateTimeRange: DateTimeRange(
start: DateTime.now().subtract(Duration(days: 1)),
end: DateTime.now(),
);
);
//Returns the transactions of the specified date range
// Attention the maximum difference between the dates must be 4 days
Handling errors #
- This package provides several ways to handle errors that may occur.
try {
// Code that may throw an exception
} on BBDateException catch (e) {
// Handle error in date range
print('BB Date error: ${e.message}');
} on BBApiException catch (e) {
// Handle error response from Banco do Brasil's API
print('BB API error: ${e.message}');
} on BBCertificateException catch (e) {
// Handle error with Pix certificate
print('Pix certificate error: ${e.message}');
} on BBHttpException catch (e) {
// Handle HTTP request error
print('HTTP request error: ${e.message}');
} on BBUnknownException catch (e) {
// Handle unknown error
print('Unknown error: ${e.message}');
} catch (e) {
// Handle other types of exceptions
print('Unexpected error: $e');
}
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.
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.