While PayPal is fairly universally used worldwide, there is a plethora of online payment system that are far more localized, servicing a single country ( e.g. Bug 18968 ) or even a single city! Instead of adding support for each and every one of these payment options directly into Koha, it makes more sense to add the ability to create online payment plugins.
Created attachment 66414 [details] [review] Bug 19173 - Make OPAC online payments pluggable While PayPal is fairly universal, there is a plethora of online payment system that are far more localized, servicing a single country ( e.g. Bug 18968 ) or even a single city! Instead of adding support for each and every one of these payment options directly into Koha, it makes more sense to add the ability to create online payment plugins. Test Plan: 1) Apply this patch 2) Download and install the Kitchen Sink plugin version 2.1.1 or later https://github.com/bywatersolutions/koha-plugin-kitchen-sink/releases 3) In the plugin options, enable the opac payments option 4) Create a patron with one or more fines 5) Log into the opac as that patron, note you now have the option to pay online via KitchenSink ImaginaryPay 6) Make an online payment 7) Note the payment was processed correctly
Created attachment 66464 [details] [review] Bug 19173 - Make OPAC online payments pluggable While PayPal is fairly universal, there is a plethora of online payment system that are far more localized, servicing a single country ( e.g. Bug 18968 ) or even a single city! Instead of adding support for each and every one of these payment options directly into Koha, it makes more sense to add the ability to create online payment plugins. Test Plan: 1) Apply this patch 2) Download and install the Kitchen Sink plugin version 2.1.1 or later https://github.com/bywatersolutions/koha-plugin-kitchen-sink/releases 3) In the plugin options, enable the opac payments option 4) Create a patron with one or more fines 5) Log into the opac as that patron, note you now have the option to pay online via KitchenSink ImaginaryPay 6) Make an online payment 7) Note the payment was processed correctly Signed-off-by: Magnus Enger <magnus@libriotech.no> Awesome enhancement! I know we want to add at least one Norwegian payment service at some point. I followed the test plan and everything works as advertised. Turning off the "opac payments option" makes the option dissappear cleanly from the OPAC. I have *not* looked at the code or done any considerations about security.
Idea for improvement: On <intranet>/cgi-bin/koha/plugins/plugins-home.pl?method=tool there is a dropdown to limit the list of plugins by type. "OPAC payment" could be added to this list.
Created attachment 66472 [details] [review] Bug 19173 [Followup] - Add opac payment and marc conversion plugins to the pulldown filter list
Created attachment 66473 [details] [review] Bug 19173 [Followup] - Add opac payment and marc conversion plugins to the pulldown filter list
Created attachment 66474 [details] [review] Bug 19173 [Followup] - Add opac payment and marc conversion plugins to the pulldown filter list Signed-off-by: Magnus Enger <magnus@libriotech.no> New categories are added to the pulldown and work as expected.
Created attachment 66839 [details] [review] Bug 19173 - Make OPAC online payments pluggable While PayPal is fairly universal, there is a plethora of online payment system that are far more localized, servicing a single country ( e.g. Bug 18968 ) or even a single city! Instead of adding support for each and every one of these payment options directly into Koha, it makes more sense to add the ability to create online payment plugins. Test Plan: 1) Apply this patch 2) Download and install the Kitchen Sink plugin version 2.1.1 or later https://github.com/bywatersolutions/koha-plugin-kitchen-sink/releases 3) In the plugin options, enable the opac payments option 4) Create a patron with one or more fines 5) Log into the opac as that patron, note you now have the option to pay online via KitchenSink ImaginaryPay 6) Make an online payment 7) Note the payment was processed correctly Signed-off-by: Magnus Enger <magnus@libriotech.no> Awesome enhancement! I know we want to add at least one Norwegian payment service at some point. I followed the test plan and everything works as advertised. Turning off the "opac payments option" makes the option dissappear cleanly from the OPAC. I have *not* looked at the code or done any considerations about security.
Created attachment 66840 [details] [review] Bug 19173 [Followup] - Add opac payment and marc conversion plugins to the pulldown filter list Signed-off-by: Magnus Enger <magnus@libriotech.no> New categories are added to the pulldown and work as expected.
Created attachment 66841 [details] [review] Bug 19173 - Make OPAC online payments pluggable While PayPal is fairly universal, there is a plethora of online payment system that are far more localized, servicing a single country ( e.g. Bug 18968 ) or even a single city! Instead of adding support for each and every one of these payment options directly into Koha, it makes more sense to add the ability to create online payment plugins. Test Plan: 1) Apply this patch 2) Download and install the Kitchen Sink plugin version 2.1.1 or later https://github.com/bywatersolutions/koha-plugin-kitchen-sink/releases 3) In the plugin options, enable the opac payments option 4) Create a patron with one or more fines 5) Log into the opac as that patron, note you now have the option to pay online via KitchenSink ImaginaryPay 6) Make an online payment 7) Note the payment was processed correctly Sponsored-by: Washoe County Library System Signed-off-by: Kyle M Hall <kyle@gmail.com> Signed-off-by: Magnus Enger <magnus@libriotech.no> Awesome enhancement! I know we want to add at least one Norwegian payment service at some point. I followed the test plan and everything works as advertised. Turning off the "opac payments option" makes the option dissappear cleanly from the OPAC. I have *not* looked at the code or done any considerations about security.
Created attachment 66842 [details] [review] Bug 19173 [Followup] - Add opac payment and marc conversion plugins to the pulldown filter list Signed-off-by: Magnus Enger <magnus@libriotech.no> New categories are added to the pulldown and work as expected.
Created attachment 67047 [details] [review] Bug 19173: Make OPAC online payments pluggable While PayPal is fairly universal, there is a plethora of online payment system that are far more localized, servicing a single country ( e.g. Bug 18968 ) or even a single city! Instead of adding support for each and every one of these payment options directly into Koha, it makes more sense to add the ability to create online payment plugins. Test Plan: 1) Apply this patch 2) Download and install the Kitchen Sink plugin version 2.1.1 or later https://github.com/bywatersolutions/koha-plugin-kitchen-sink/releases 3) In the plugin options, enable the opac payments option 4) Create a patron with one or more fines 5) Log into the opac as that patron, note you now have the option to pay online via KitchenSink ImaginaryPay 6) Make an online payment 7) Note the payment was processed correctly Sponsored-by: Washoe County Library System Signed-off-by: Kyle M Hall <kyle@gmail.com> Signed-off-by: Magnus Enger <magnus@libriotech.no> Awesome enhancement! I know we want to add at least one Norwegian payment service at some point. I followed the test plan and everything works as advertised. Turning off the "opac payments option" makes the option dissappear cleanly from the OPAC. I have *not* looked at the code or done any considerations about security. Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Created attachment 67048 [details] [review] Bug 19173: Add opac payment and marc conversion plugins to the pulldown filter list Edit: fixed tab-for-space errors (tcohen). Signed-off-by: Magnus Enger <magnus@libriotech.no> New categories are added to the pulldown and work as expected. Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Nice addition, Kyle! This is the right use of the plugins system IMHO! Many local payment methods exist that wouldn't make sense to bake into Koha
Pushed to master for 17.11, thanks to everybody involved!
Hi Kyle, Could you add documentation about how people can develop payment plugins? Would it make sense to move the existing paypal method to a plugin? Thanks!
(In reply to Jonathan Druart from comment #15) > Hi Kyle, > Could you add documentation about how people can develop payment plugins? > Would it make sense to move the existing paypal method to a plugin? > Thanks! I think those are both capital ideas! I'll see what I can do. Kyle
Enhancement not pushed to 17.05.x