Start receiving donations for your hard work by adding a Donation button to your website.
Update: Define goals to reach by donation, and show the progress
The payments are processed by Mollie which accepts major creditcards, paypal, ideal and much more. They handle all PCI compliant stuff, so you only have to signup, activate your account, insert the page-snippet anywhere on your page and start receiving donations :)
Currently this plugin is in Beta Use it at your own risk :)
Donate via Mollie
Start receiving donations for your hard work. And add a Donation button to your website.
The payments are processed by Mollie which accepts major creditcards, paypal, ideal and much more. They handle all PCI compliant stuff, so you only have to signup, activate your account, insert the page-snippet anywhere on your page and start receiving donations :)
Currently this plugin is in Beta Use it at your own risk :)
Installation
Installation is pretty simple and straightforward
1. Signup at Mollie
Signup with the folks of Mollie for your free account. They only charge you a small fee when a successful transaction is made. (like € 0.29 for an iDeal transaction)
2. Install plugin
Duh ;)
3. Set the settings
Provide the correct credentials in the settings tab.
API Key
The key found in the dashboard of Mollie. It either starts with live_
or test_
Redirect URL:
This is the url in you domain where the customer is redirected to after completing the payment. Either successfull or un-successfull. Should be a fully qualified URL. The tag [uid] will be replaced with the Unique ID of this donation. You have to produce a cms-page with the correct Component in it (see #6)
WebhookURL:
The servers of Mollie will asynchronously provide feedback about the transaction to your October installation. So this is a server-2-server contact without any interference of the visitor/donator.
The plugin provides a route for /donation_webhook
to handle this s2s-contact.
Payment description
Speaks for itself.
4. Set one or more Goals (optional)
You are able to define Goals for your donations. In the components (#5) you will be able to select these goals as a destination for your donation.
5. Put a donate button on a page
You can either drop in a component in a CMS page/partial or a page-snippet in a static page. You can choose between two flavours of buttons:
1- Simple button with an adjustable fixed amount; or
2- A radio-list giving amount options for the donation. The options are configurable within the component/pagesnippet by means of a comma separated list.
6. create a donation-status page
After the donator visited his/her payment-website Mollie will redirect him/her to the redirectUrl
. This is the donation-status page.
You'll have to create such a route yourself in the CMS area with the :uuid
url parameter. Eg: /donation-status/:uuid
On the page, just drop in the Donation Status-component to show a 'paid/cancelled/expired'-label
7. Show off the progress off your goals
As you might have created a goal, you certainly want to show the progress to your visitors! We have component for that :) Just drop it in a page and style it.
Styling
Both the buttons as the donations status don't have any styling applied to them. The buttons and list are encapsulated with a section.donate-env
to simplify direct styling.
The buttons have a class .donate-button
.
The donation Status component is encapsulated with a section with the class .donate-status-env
.
The status label itself is called '.status-label' and gets a .status-paid
, .status-open
, .status-expired
or .status-cancelled
But off course you could always look into the source to see the exact builtup. Or you can even overwrite the whole component by dropping in a partial in: [theme_name]/partials/[componentName]/default.htm
Custom implementations
Under the hood there is a /do_donate
route which accepts a 'amount'-parameter as a POST request.
If you somehow sent that parameter to that route, it will automatically redirect you to Mollie. This can come in handy if you would like to extend an existing form or something.
-
Flo
Found the plugin useful on 30 Oct, 2017
Hi. How would I be able to store the value (of the selected amount in the list) in a database once the payment status is 'paid'. I've created a database table for this use, but nothing gets written to it once payment is complete. Need this functionality to be able to add all donations together, then use their sum in frontend functionality (progress bar). Thanks in advance!
-
Richard author
Replied on 31 Oct, 2017
Hi Flo! Thanks for using the plugin. You've got an interesting use case: goal management for a charity of some sort with a progress bar. At least, if I understood this correctly.
I'll try to implement this in the plugin as soon as I can find some time; it should be a simple addition: extra field in the table, defining goals, and a new component which displays the goal's progress. You could send me your precise use case at support@vannut.nl and I'll try to match the plugin with your requirements.
Regards Richard
-
Monroe Jeanniton
Found the plugin useful on 10 Jul, 2017
Hi! Thank you for the plugin. How can I setup the route for the webhook?
-
Richard author
Replied on 10 Jul, 2017
Hi Monroe, Thanks for trying out my plugin!
By default the plugin already provides a
/donation_webhook
route. Its already baked into to plugin. So the only thing you need to setup is set the settingWebhookURL
to/donation_webhook
Hope this helps! If not, don't hesitate to contact me!
-
1.0.4 |
The plugin now contains Goals Nov 02, 2017 |
---|---|
1.0.3 |
Totally forgot to include the webhook route in the Dontate class. Whoops... Sep 02, 2017 |
1.0.2 |
created Basic Tables Jul 01, 2017 |
1.0.1 |
Initial Commit Jul 01, 2017 |
As of 1.0.4 it's not necessary to do a composer require ...
to include the SDK.
If you're upgrading you might need to remove the top-level inclusion of the sdk.