This is a Flutterwave integration for ERPNext. In order to use this app, you need to have a Flutterwave account.
- Go to Flutterwave Settings (Flutterwave Integration > Flutterwave Settings)
- Click 'New' to create a new record.
- Fill the form and click save. All the fields are compulsory:
- Payment Gateway Name: A name to identify the flutterwave record. E.g Develop
- Flutterwave Merchant ID: A Flutterwave Merchant ID. This can be gotten from the flutterwave dashboard
- Public Key: A Flutterwave API public key. This can be gotten from the flutterwave dashboard.
- Secret Key: A Flutterwave API secret key. This can be gotten from the flutterwave dashboard.
- If all your information was correct, A Payment Gateway and a Payment Gateway Account will be automatically created for you.
- Navigate to the Payment Gateway Account created for you (Accounting > Settings > Payment Gateway Account).
- Edit the 'Default Payment Request Message' field to suit you. Do make sure you add the checkout link that will be created. It will be available as the context variable -
payment_url
. It means you will be able to use it like<a href="{{ payment_url }}"> click here to pay </a>
. - That's all. You are good to go.
What happens if I do not add payment_url
to the 'Default Payment Request Message' field in the Payment Gateway Account?
Nothing. The app works something like this:
- Attempt to create a Flutterwave transaction.
- If attempt is successful, store the checkout link generated by Flutterwave.
- Pass the checkout link to the customer. When the customer visits the link, it will display a payment form and Flutterwave will notify us if the payment is successful.
If you do not add it in Payment Gateway Account, you can add it in the Payment Request. If you do not add it both of them, the recipient of the email generated from the Payment Request will not get the checkout link.
You can still retrieve the checkout link by navigating to the Flutterwave Link Log doctype.
It is 99% likely that your flutterwave credentials are wrong or invalid.
Flutterwave Integration will attempt to create a Payment Entry for the reference document.
My customer has paid. I can see the record of the payment in Flutterwave but there was no Payment Entry. Why?
Two possible reasons for such to happen are:
- Your ERPNext instance was unable to respond to the request from Flutterwave (e.g server was down, domain name issues, etc)
- The amount paid by the customer was less than the amount requested for in the Payment Request. In this case
For cases like these, you will need to manually create the payment entries.
MIT