- Collections: Card, Account, Mobile money, Bank Transfers, USSD, Barter, NQR.
- Payouts and Beneficiaries.
- Recurring payments: Tokenization and Subscriptions.
- Split payments
- Card issuing
- Transactions dispute management: Refunds.
- Transaction reporting: Collections, Payouts, Settlements, and Refunds.
- Bill payments: Airtime, Data bundle, Cable, Power, Toll, E-bills, and Remitta.
- Identity verification: Resolve bank account, resolve BVN information.
Requirements
- Flutterwave for business API Keys
- Acceptable PHP versions: >= 7.4.0. for older versions of PHP use the Legacy Branch
Installation
Installation via Composer.
To install the package via Composer, run the following command.Initialization
Create a .env file and follow the format of the.env.example file
Save your PUBLIC_KEY, SECRET_KEY, ENV in the .env file
.env file should look this.
Render Payment Modal
The SDK provides two easy methods of making collections via the famous payment modal. Learn moreGet Started
Edit thepaymentForm.php and processPayment.php files to suit your purpose. Both files are well documented.
Simply redirect to the paymentForm.php file on your browser to process a payment.
In this implementation, we are expecting a form encoded POST request to this script.
The request will contain the following parameters.
paymentProcess.php handles the request data via the PaymentController. If you are using a Framework like Laravel or CodeIgniter you might want to take a look at the PaymentController
Configuration settings
Create a .env file and add the bootstrap method first before initiating a charge.Usage
Charge
- Account Charge
- ACH Charge
- Card Charge
- Mobile Money
- FawryPay
- GooglePay
- ApplePay
- Mpesa
- BankTransfer
- USSD
- eNaira
Resources
- Banks
- Beneficiaries
- Payment Plans
- Collection Subaccounts
- Payout Subaccounts
- Subscriptions
- Transfers
- Transactions
- Virtual Cards
- Virtual Account
- Misc
Testing
All of the SDK’s tests are written with PHP’sphpunit module. The tests currently test:
Account,
Card,
Transfer,
Preauth,
Collection Subaccount,
Payout Subaccount,
Subscriptions and
Paymentplan
They can be run like so:
NOTE: If the test fails for creating a subaccount, just change theaccount_numberaccount_bankandbusinesss_emailto something different
NOTE: The test may fail for account validation - Pending OTP validation depending on whether the service is down or not
Debugging Errors
We understand that you may run into some errors while integrating our library. You can read more about our error messages here. Forauthorization and validation error responses, double-check your API keys and request. If you get a server error, kindly engage the team for support.