Skip to content

Commit 65afe18

Browse files
updated new content for developer docs
1 parent 834689e commit 65afe18

File tree

8 files changed

+211
-119
lines changed

8 files changed

+211
-119
lines changed

.github/ISSUE_TEMPLATE/bug_report.md

Lines changed: 0 additions & 21 deletions
This file was deleted.

.github/ISSUE_TEMPLATE/feature_request.md

Lines changed: 0 additions & 18 deletions
This file was deleted.

.github/ISSUE_TEMPLATE/other_issues.md

Lines changed: 0 additions & 7 deletions
This file was deleted.

.github/PULL_REQUEST_TEMPLATE.md

Lines changed: 54 additions & 39 deletions
Original file line numberDiff line numberDiff line change
@@ -1,39 +1,54 @@
1-
<!--- Provide a general summary of your changes in the Title above -->
2-
3-
#### Description
4-
<!--- Describe your changes in detail -->
5-
6-
#### Related Issue
7-
<!--- This project only accepts pull requests related to open issues -->
8-
<!--- If suggesting a new feature or change, please discuss it in an issue first -->
9-
<!--- If fixing a bug, there should be an issue describing it with steps to reproduce -->
10-
<!--- Please link to the issue here: -->
11-
12-
#### Motivation and Context
13-
<!--- Why is this change required? What problem does it solve? -->
14-
15-
#### How Has This Been Tested?
16-
<!--- Please describe in detail how you tested your changes. -->
17-
<!--- Include details of your testing environment, and the tests you ran to -->
18-
<!--- see how your change affects other areas of the code, etc. -->
19-
20-
#### Types of changes
21-
<!--- What types of changes does your code introduce? Put an `x` in all the boxes that apply: -->
22-
- [ ] Bug fix (non-breaking change which fixes an issue)
23-
- [ ] Refactor (non-breaking change which improves implementation)
24-
- [ ] Performance (non-breaking change which improves performance. Please add associated performance test and results)
25-
- [ ] New feature (non-breaking change which adds functionality)
26-
- [ ] Breaking change (fix or feature that would cause existing functionality to change)
27-
- [ ] Non-functional change (xml comments/documentation/etc)
28-
29-
#### Checklist:
30-
<!--- The following is a checklist of items that MUST be completed before a PR is accepted -->
31-
<!--- If you're unsure about any of these, don't hesitate to ask. We're here to help! -->
32-
- [ ] My code follows the code style of this project.
33-
- [ ] I have read the **CONTRIBUTING** [document](https://github.com/QuantConnect/Lean/blob/master/CONTRIBUTING.md).
34-
- [ ] I have added tests to cover my changes. <!--- If not applicable, please explain why -->
35-
- [ ] All new and existing tests passed.
36-
- [ ] My branch follows the naming convention `bug-<issue#>-<description>` or `feature-<issue#>-<description>`
37-
38-
39-
@Flutterwave/Corvus97 What do you think about these updates?
1+
### Requirements for contributing to the library
2+
3+
* Fill out the template below. Any pull request that does not include enough information to be reviewed in a timely manner may be closed at the maintainers' discretion.
4+
* Include the issue link for bug fixes.
5+
* The pull request must include a test suite to demonstrate the changed functionality.
6+
* After you create the pull request, all status checks must pass before a maintainer reviews your contribution.
7+
8+
### Type of change
9+
[] Bug fix
10+
[] Performance improvement
11+
[] Documentation update
12+
13+
### Description of the change
14+
15+
<!--
16+
17+
We should understand the purpose of your change from this description. We would not review PRs with inadequate descriptions.
18+
19+
-->
20+
21+
22+
### Related issue
23+
24+
<!--
25+
26+
Link to the issue that your change relates to. For feature requests, send us an email at developers@flutterwavego.com
27+
28+
-->
29+
30+
31+
### Checklist
32+
33+
[] I have read the contribution document.
34+
[] I have added tests to cover my changes.
35+
[] All new and existing tests passed.
36+
37+
38+
### Release Notes
39+
40+
<!--
41+
42+
Please describe the changes in a single line that explains this improvement in
43+
a user-friendly manner. This text will be used in our release notes.
44+
45+
If said change is not user-facing or notable enough to be included in release notes
46+
you may use "N/A" here.
47+
48+
Examples:
49+
50+
- The GitHub package now allows you to charge XAF payments.
51+
- Fixed an issue where payment plan creation returns an error.
52+
- Increased the performance of searching paginated responses.
53+
54+
-->

.gitignore

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -21,4 +21,5 @@ franc_test.py
2121
build/
2222
dist/
2323
rave_python.egg-info/
24+
staging
2425

CONTRIBUTING.md

Lines changed: 91 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,91 @@
1+
Thank you for taking the time to contribute to our library🙌🏾.
2+
3+
In this section, we detail everything you need to know about contributing to this library.
4+
5+
6+
**[Code of Conduct](https://github.com/probot/template/blob/master/CODE_OF_CONDUCT.md)**
7+
8+
## **I don't want to contribute, I have a question**
9+
10+
Please don't raise an issue to ask a question. You can ask questions on our [forum](http://forum.flutterwave.com) or developer [slack](https://bit.ly/34Vkzcg). We have an army of Engineers on hand to answer your questions there.
11+
12+
## How can I contribute?
13+
14+
### Reporting a bug
15+
16+
Have you spotted a bug? Fantastic! Before raising an issue, here are some things to do:
17+
18+
1. Search to see if another user has reported the bug. For existing issues that are still open, add a comment instead of creating a new one.
19+
2. Check our forum and developer slack to confirm that we did not address it there.
20+
21+
When you report an issue, it is important to:
22+
23+
1. Explain the problem
24+
- Use a clear and descriptive title to help us to identify the problem.
25+
- Describe steps we can use to replicate the bug and be as precise as possible.
26+
- Include screenshots of the error messages.
27+
2. Include details about your configuration and setup
28+
- What version of the library are you using?
29+
- Did you experience the bug on test mode or live?
30+
- Do you have the recommended versions of the library dependencies?
31+
32+
<aside>
33+
34+
💡 Please make use of the issue template when reporting bugs.
35+
36+
</aside>
37+
38+
### Requesting a feature
39+
40+
If you need an additional feature added to the library, kindly send us an email at developers@flutterwavego.com. Be sure to include the following in your request:
41+
42+
1. A clear title that helps us to identify the requested feature.
43+
2. A brief description of the use case for that feature.
44+
3. Explain how this feature would be helpful to your integration.
45+
4. Library name and version.
46+
47+
### Submitting changes (PR)
48+
49+
Generally, you can make any of the following changes to the library:
50+
51+
1. Bug fixes
52+
2. Performance improvement
53+
3. Documentation update
54+
4. Functionality change (usually new features)
55+
56+
<aside>
57+
58+
💡 Changes that are cosmetic in nature and do not add anything substantial to the stability, functionality, or testability of the library will generally not be accepted.
59+
60+
</aside>
61+
62+
Follow these steps when making a pull request to the library:
63+
64+
1. Fork the repository and create your branch from master.
65+
2. For all types of changes (excluding documentation updates), add tests for the changes.
66+
3. If you are making a functionality change, update the docs to show how to use the new feature.
67+
4. Ensure all your tests pass.
68+
5. Make sure your code lints.
69+
6. Write clear log messages for your commits. one-liners are fine for small changes, but bigger changes should have a more descriptive commit message (see sample below).
70+
7. Use present tense for commit messages, "Add feature" not "Added feature”.
71+
8. Ensure that you fill out all sections of the PR template.
72+
9. Raise the PR against the `staging` branch.
73+
10. After you submit the PR, verify that all [status checks](https://docs.github.com/en/pull-requests/collaborating-with-pull-requests/collaborating-on-repositories-with-code-quality-features/about-status-checks) are passing
74+
75+
```markdown
76+
$ git commit -m "A brief summary of the commit
77+
>
78+
> A paragraph describing what changed and its impact."
79+
```
80+
81+
<aside>
82+
83+
💡 For your pull request to be reviewed, you need to meet the requirements above. We may ask you to complete additional tests, or other changes before your pull request can be ultimately accepted.
84+
85+
</aside>
86+
87+
We encourage you to contribute and help make the library better for the community. Got questions? send us a [message](https://bit.ly/34Vkzcg).
88+
89+
Thank you.
90+
91+
The Flutterwave team 🦋

README.md

Lines changed: 63 additions & 32 deletions
Original file line numberDiff line numberDiff line change
@@ -10,49 +10,56 @@
1010

1111

1212
## Introduction
13-
This is a Python wrapper around the [API](https://flutterwavedevelopers.readme.io/v2.0/reference) for [Rave by Flutterwave](https://rave.flutterwave.com).
14-
15-
#### Payment types implemented:
16-
* Card Payments
17-
* Bank Account Payments
18-
* Ghana Mobile Money Payments
19-
* Mpesa Payments
20-
* Rwanda Mobile Money Payments
21-
* Uganda Mobile Money Payments
22-
* Zambia Mobile Money Payments
23-
* Mobile Money Payments for Francophone countries
24-
* Subaccounts
25-
* Transfer
26-
* Subscription (Recurring Payments)
27-
* Bills payment
28-
* Payment Plan
29-
* USSD Payments (Still in Beta Mode)
30-
31-
#### Other features include:
32-
* Preauthorization charges
33-
* Refunds
34-
* Transaction Verification
35-
* Transfer Recipients
36-
* Virtual Cards
37-
* Virtual Accounts
13+
The Python library provides easy access to Flutterwave for Business (F4B) v2 APIs from Django, Flask, and other Python apps. It abstracts the complexity involved in direct integration and allows you to make quick calls to the APIs.
14+
15+
Available features include:
16+
17+
- Collections: Card, Account, Mobile money, Bank Transfers, USSD, Barter, NQR.
18+
- Payouts and Beneficiaries.
19+
- Recurring payments: Tokenization and Subscriptions.
20+
- Split payments
21+
- Card issuing
22+
- Transactions dispute management: Refunds.
23+
- Transaction reporting: Collections, Payouts, Settlements, and Refunds.
24+
- Bill payments: Airtime, Data bundle, Cable, Power, Toll, E-bills, and Remitta.
25+
- Identity verification: Resolve bank account, resolve BVN information.
26+
27+
## Table of Contents
28+
1. [Requirements](#requirements)
29+
2. [Installation](#installation)
30+
3. [Initialization](#initialization)
31+
4. [Usage](#usage)
32+
5. [Testing](#testing)
33+
6. [Debugging Errors](#debugging-errors)
34+
7. [Support](#support)
35+
8. [Contribution guidelines](#)
36+
9. [License](#)
37+
10. [Changelog](#)
38+
39+
## Requirements
40+
1. Flutterwave for business [API Keys](https://developer.flutterwave.com/docs/integration-guides/authentication)
41+
2. Acceptable Python versions: >=2.7, !=3.0.\*, !=3.1.\*, !=3.2.\*, !=3.3.\*, !=3.4.\*
42+
3843

3944
## Installation
40-
To install, run
45+
To install the library, run
4146

4247
```sh
4348
pip install rave_python
4449
```
4550

4651
Note: This is currently under active development
47-
## Import Package
52+
53+
54+
## Initialization
55+
56+
### Import Package
4857
The base class for this package is 'Rave'. To use this class, add:
4958

5059
```py
5160
from rave_python import Rave
5261
```
5362

54-
## Initialization
55-
5663
#### To instantiate in sandbox:
5764
To use Rave, instantiate the Rave class with your public key. We recommend that you store your secret key in an environment variable named, ```RAVE_SECRET_KEY```. Instantiating your rave object is therefore as simple as:
5865

@@ -75,7 +82,9 @@ To initialize in production, simply set the ```production``` flag to ```True```.
7582
rave = Rave("YOUR_PUBLIC_KEY", production=True)
7683
```
7784

78-
# Rave Objects
85+
86+
87+
# Usage
7988
This is the documentation for all of the components of rave_python
8089

8190
## ```rave.Card```
@@ -2775,7 +2784,8 @@ This call returns a dictionary. A sample response is:
27752784
```
27762785
<br>
27772786

2778-
## Run Tests
2787+
2788+
## Testing
27792789

27802790
All of the SDK's tests are written with Python's ```unittest``` module. The tests currently test:
27812791
```rave.Account```
@@ -2797,5 +2807,26 @@ python test.py
27972807
>**NOTE:** The test may fail for account validation - ``` Pending OTP validation``` depending on whether the service is down or not
27982808
<br>
27992809

2810+
2811+
## Debugging Errors
2812+
We understand that you may run into some errors while integrating our library. You can read more about our error messages [here](https://developer.flutterwave.com/docs/integration-guides/errors).
2813+
2814+
For `authorization` and `validation` error responses, double-check your API keys and request. If you get a `server` error, kindly engage the team for support.
2815+
2816+
2817+
28002818
## Support
2801-
For further assistance in using the SDK, you can contact the Developers on [Slack](https://join.slack.com/t/flutterwavedevelopers/shared_invite/enQtNTk3MjgxMjU3ODI5LWFkMjBkYTc0ZGJhM2Q5MTY3YjFkYzAyYmM1ZDZjZjUwMjE4YTc2NjQ1ZGM5ZWE4NDUxMzc4MmExYmI1Yjg5ZWU) and [Email](mailto:developers@flutterwavego.com). You can get more information about the amazing features here [here](https://developer.flutterwave.com/reference#introduction).
2819+
For additional assistance using this library, contact the developer experience (DX) team via [email](mailto:developers@flutterwavego.com) or on [slack](https://bit.ly/34Vkzcg).
2820+
2821+
You can also follow us [@FlutterwaveEng](https://twitter.com/FlutterwaveEng) and let us know what you think 😊.
2822+
2823+
2824+
## Contribution guidelines
2825+
Read more about our community contribution guidelines [here](/CONTRIBUTING.md)
2826+
2827+
2828+
## License
2829+
2830+
By contributing to this library, you agree that your contributions will be licensed under its [MIT license](/LICENSE).
2831+
2832+
Copyright (c) Flutterwave Inc.

setup.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5,10 +5,10 @@
55

66
setuptools.setup(
77
name="rave_python",
8-
version="1.2.15",
8+
version="1.2.16",
99
author="Flutterwave",
1010
author_email="developers@flutterwavego.com",
11-
description="Official Rave Python Wrapper By Flutterwave",
11+
description="Python library for Flutterwave for Business (F4B) v2 APIs.",
1212
long_description=long_description,
1313
long_description_content_type="text/markdown",
1414
url="https://github.com/Flutterwave/rave-python",

0 commit comments

Comments
 (0)