[Bug 17705] New: Payments with cards through payment terminal
https://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=17705 Bug ID: 17705 Summary: Payments with cards through payment terminal Change sponsored?: --- Product: Koha Version: master Hardware: All OS: All Status: NEW Severity: enhancement Priority: P5 - low Component: Circulation Assignee: koha-bugs@lists.koha-community.org Reporter: rbit@rbit.cz QA Contact: testopia@bugs.koha-community.org CC: gmcharlt@gmail.com, kyle.m.hall@gmail.com Allow patrons to pay their fees cashlessly using cards in payment terminals. -- You are receiving this mail because: You are the assignee for the bug. You are watching all bug changes.
https://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=17705 Radek Šiman (R-Bit Technology, s.r.o.) <rbit@rbit.cz> changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |black23@gmail.com, | |josef.moravec@gmail.com Assignee|koha-bugs@lists.koha-commun |rbit@rbit.cz |ity.org | -- You are receiving this mail because: You are the assignee for the bug. You are watching all bug changes.
https://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=17705 --- Comment #1 from Radek Šiman (R-Bit Technology, s.r.o.) <rbit@rbit.cz> --- Currently working on a solution for terminals Ingenico iCT220 provided by GPE (Global Payments Europe) -- You are receiving this mail because: You are watching all bug changes.
https://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=17705 Radek Šiman (R-Bit Technology, s.r.o.) <rbit@rbit.cz> changed: What |Removed |Added ---------------------------------------------------------------------------- Status|NEW |ASSIGNED -- You are receiving this mail because: You are watching all bug changes.
https://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=17705 --- Comment #2 from Radek Šiman (R-Bit Technology, s.r.o.) <rbit@rbit.cz> --- Created attachment 63499 --> https://bugs.koha-community.org/bugzilla3/attachment.cgi?id=63499&action=edit Bug 17705: Database structure update This patch creates neccessary table and updates systempreferences. Test plan: 1) Apply the patch 2) Check the presence of pos_terminal_transactions table 3) Observe new systempreferences' values - PosTerminalIP - PosTerminalPort - PosTerminalCurrencyCode -- You are receiving this mail because: You are watching all bug changes.
https://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=17705 --- Comment #3 from Radek Šiman (R-Bit Technology, s.r.o.) <rbit@rbit.cz> --- Created attachment 63500 --> https://bugs.koha-community.org/bugzilla3/attachment.cgi?id=63500&action=edit Bug 17705: Database schema objects updated Brings neccessary changes in the database schema. Test plan: 1) Apply the patch 2) Open Koha/Schema/Result 3) Observe new relation in Accountline.pm 4) Check presence of PosTerminalTransaction.pm -- You are receiving this mail because: You are watching all bug changes.
https://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=17705 Radek Šiman (R-Bit Technology, s.r.o.) <rbit@rbit.cz> changed: What |Removed |Added ---------------------------------------------------------------------------- Attachment #63499|0 |1 is obsolete| | --- Comment #4 from Radek Šiman (R-Bit Technology, s.r.o.) <rbit@rbit.cz> --- Created attachment 64526 --> https://bugs.koha-community.org/bugzilla3/attachment.cgi?id=64526&action=edit Bug 17705: Database structure update This patch creates neccessary table and updates systempreferences. Test plan: For the test plan please see commits above. -- You are receiving this mail because: You are watching all bug changes.
https://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=17705 Radek Šiman (R-Bit Technology, s.r.o.) <rbit@rbit.cz> changed: What |Removed |Added ---------------------------------------------------------------------------- Attachment #63500|0 |1 is obsolete| | --- Comment #5 from Radek Šiman (R-Bit Technology, s.r.o.) <rbit@rbit.cz> --- Created attachment 64527 --> https://bugs.koha-community.org/bugzilla3/attachment.cgi?id=64527&action=edit Bug 17705: Database schema objects updated Brings neccessary changes in the database schema. Test plan: 1) Apply the patch 2) Open Koha/Schema/Result 3) Observe new relation in Accountline.pm 4) Check presence of PosTerminalTransaction.pm -- You are receiving this mail because: You are watching all bug changes.
https://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=17705 --- Comment #6 from Radek Šiman (R-Bit Technology, s.r.o.) <rbit@rbit.cz> --- Created attachment 64528 --> https://bugs.koha-community.org/bugzilla3/attachment.cgi?id=64528&action=edit Bug 17705: payments using payment terminal This patch expects already installed and configured payment terminal, e.g Ingenico, provided by GPE (Global Payments Europe). This piece of code already acquired an official certification in GPE Headquarter, Prague, Czech Republic. Bank accounts connected to banks KB or CSOB should work perfectly. Other banks will probably require additional certifications and changes in the code. Test plan 1) Appy this patch 2) Connect and/or start terminal device 3) Go to administration setting and look for "PosTerminal" items 4) Setup desired values (IP and port) 5) Make patron to pay a single fine (eg. lost book) 6) Tick the box "Pay by card" and confirm the payment 7) Popup window will raise displaying transaction status 8) Let the patron pay his amount using the terminal 9) When transaction finishes, close popup window 10) Optional: try to refund an amount by clicking "Refund to card" button within fines overview (members/boraccount.pl). Steps 7-9 will repeat accordingly. -- You are receiving this mail because: You are watching all bug changes.
https://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=17705 --- Comment #7 from Radek Šiman (R-Bit Technology, s.r.o.) <rbit@rbit.cz> --- Created attachment 64529 --> https://bugs.koha-community.org/bugzilla3/attachment.cgi?id=64529&action=edit Bug 17705: Fixed forbidden patterns This patch only removes trailing space chars in Koha/PosTerminal/Message/Header.pm -- You are receiving this mail because: You are watching all bug changes.
https://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=17705 --- Comment #8 from Mike <black23@gmail.com> --- Anybody in other country need to pay in Koha via credit card? Please review code, maybe together we'll make solution universal for other terminals and payment providers. Feedback welcome. Thanks to Radek for great work. -- You are receiving this mail because: You are watching all bug changes.
https://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=17705 --- Comment #9 from Radek Šiman (R-Bit Technology, s.r.o.) <rbit@rbit.cz> --- Created attachment 64613 --> https://bugs.koha-community.org/bugzilla3/attachment.cgi?id=64613&action=edit Bug 17705: Fixed web installer problems This patch only fixes problems during web installation procedure Test plan: 1) Apply the patch 2) Go through all webinstaller's steps 3) No SQL errors should occur -- You are receiving this mail because: You are watching all bug changes.
https://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=17705 Marjorie Barry-Vila <marjorie.barry-vila@collecto.ca> changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |marjorie.barry-vila@collect | |o.ca -- You are receiving this mail because: You are watching all bug changes.
https://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=17705 Josef Moravec <josef.moravec@gmail.com> changed: What |Removed |Added ---------------------------------------------------------------------------- Attachment #64526|0 |1 is obsolete| | Attachment #64527|0 |1 is obsolete| | Attachment #64528|0 |1 is obsolete| | Attachment #64529|0 |1 is obsolete| | Attachment #64613|0 |1 is obsolete| | --- Comment #10 from Josef Moravec <josef.moravec@gmail.com> --- Created attachment 76366 --> https://bugs.koha-community.org/bugzilla3/attachment.cgi?id=76366&action=edit Bug 17705: Database structure update This patch creates neccessary table and updates systempreferences. Test plan: 1) Apply the patch 2) Check the presence of pos_terminal_transactions table 3) Observe new systempreferences' values - PosTerminalIP - PosTerminalPort - PosTerminalCurrencyCode -- You are receiving this mail because: You are watching all bug changes.
https://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=17705 --- Comment #11 from Josef Moravec <josef.moravec@gmail.com> --- Created attachment 76367 --> https://bugs.koha-community.org/bugzilla3/attachment.cgi?id=76367&action=edit Bug 17705: payments using payment terminal This patch expects already installed and configured payment terminal, e.g Ingenico, provided by GPE (Global Payments Europe). This piece of code already acquired an official certification in GPE Headquarter, Prague, Czech Republic. Bank accounts connected to banks KB or CSOB should work perfectly. Other banks will probably require additional certifications and changes in the code. Test plan 1) Appy this patch 2) Connect and/or start terminal device 3) Go to administration setting and look for "PosTerminal" items 4) Setup desired values (IP and port) 5) Make patron to pay a single fine (eg. lost book) 6) Tick the box "Pay by card" and confirm the payment 7) Popup window will raise displaying transaction status 8) Let the patron pay his amount using the terminal 9) When transaction finishes, close popup window 10) Optional: try to refund an amount by clicking "Refund to card" button within fines overview (members/boraccount.pl). Steps 7-9 will repeat accordingly. -- You are receiving this mail because: You are watching all bug changes.
https://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=17705 --- Comment #12 from Josef Moravec <josef.moravec@gmail.com> --- Created attachment 76368 --> https://bugs.koha-community.org/bugzilla3/attachment.cgi?id=76368&action=edit Bug 17705: Update Schema -- You are receiving this mail because: You are watching all bug changes.
https://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=17705 --- Comment #13 from Josef Moravec <josef.moravec@gmail.com> --- Comment on attachment 76367 --> https://bugs.koha-community.org/bugzilla3/attachment.cgi?id=76367 Bug 17705: payments using payment terminal Review of attachment 76367: --> (https://bugs.koha-community.org/bugzilla3/page.cgi?id=splinter.html&bug=17705&attachment=76367) ----------------------------------------------------------------- Radek, I just rebased your patches and have some comments on this patch: ::: Koha/PosTerminal/Client.pm @@ +15,5 @@
+# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with Koha; if not, see <http://www.gnu.org/licenses>. +
use Modern::Perl; @@ +19,5 @@
+ +use IO::Socket::INET; +use IO::Socket::Timeout; +use Koha::PosTerminal::Message; +use Errno qw(ETIMEDOUT EWOULDBLOCK);
You are adding some new dependencies here, you should add them to C4/Installer/PerlDependecies.pm, are they all available also for Debian in needed versions? ::: Koha/PosTerminal/Message.pm @@ +17,5 @@
+# You should have received a copy of the GNU General Public License +# along with Koha; if not, see <http://www.gnu.org/licenses>. + +use strict; +use warnings;
use Modern::Perl; @@ +22,5 @@
+ +use Digest::CRC; +use Koha::PosTerminal::Message::Header; +use Koha::PosTerminal::Message::Field; +use Data::Dumper qw( Dumper );
Don't forget to remove debug printing; @@ +178,5 @@
+ else { + $self->setValid(0); + } + } +# print Dumper($self);
Don't forget to remove debug printing; @@ +221,5 @@
+ my $msg = $self->getHeader()->dumpObject(); + + $msg .= "data:\n"; +# print Dumper($self); +#die();
Don't forget to remove debug printing; ::: Koha/PosTerminal/Message/Field.pm @@ +17,5 @@
+# You should have received a copy of the GNU General Public License +# along with Koha; if not, see <http://www.gnu.org/licenses>. + +use strict; +use warnings;
use Modern::Perl; ::: Koha/PosTerminal/Message/Header.pm @@ +17,5 @@
+# You should have received a copy of the GNU General Public License +# along with Koha; if not, see <http://www.gnu.org/licenses>. + +use strict; +use warnings;
use Modern::Perl; ::: koha-tmpl/intranet-tmpl/prog/en/modules/members/boraccount.tt @@ +75,5 @@
[% IF ( account.payment ) %] <a href="boraccount.pl?action=reverse&accountlines_id=[% account.accountlines_id %]&borrowernumber=[% account.borrowernumber %]" class="btn btn-default btn-xs"><i class="fa fa-undo"></i> Reverse</a> <a href="boraccount.pl?action=void&accountlines_id=[% account.accountlines_id %]&borrowernumber=[% account.borrowernumber %]" class="btn btn-default btn-xs"><i class="fa fa-ban"></i> Void</a> + [% IF (account.amountoutstanding+0 + account.amount+0 != 0 ) %] + <a href="boraccount.pl?action=reverse&accountlines_id=[% account.accountlines_id %]&borrowernumber=[% account.borrowernumber %]" class="btn btn-default btn-xs" onclick="refundPayment(this.href, [% account.accountlines_id %], [% -1*account.amount %]);return false;"><i class="fa fa-undo"></i> Refund to card</a>
Do not use onclick parameter ::: koha-tmpl/intranet-tmpl/prog/en/modules/members/paycollect.tt @@ +46,4 @@
[% END %]
[% IF ( pay_individual ) %] + <form name="payindivfine" id="payindivfine" method="post" onsubmit="return makePayment(this);" action="/cgi-bin/koha/members/paycollect.pl">
Do not use onsubmit parameter @@ +105,5 @@
+ <li> + <label for="bycard">Pay by card: </label> + <input type="checkbox" name="bycard" id="bycard" value="1"/> + </li> +[% END %]
Consider using PAYMENT_TYPE authorised value ::: svc/pos_terminal @@ +160,5 @@
+ + # send abort message + my $abort = new Koha::PosTerminal::Message(Koha::PosTerminal::Message::DIR_SENT); + my $hdrAbort = $abort->getHeader(); +die(Dumper($transaction ? $transaction->getHeader() : "BUBU"));
What does "BUBU" mean? :D -- You are receiving this mail because: You are watching all bug changes.
https://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=17705 Josef Moravec <josef.moravec@gmail.com> changed: What |Removed |Added ---------------------------------------------------------------------------- Status|ASSIGNED |Needs Signoff -- You are receiving this mail because: You are watching all bug changes.
https://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=17705 Josef Moravec <josef.moravec@gmail.com> changed: What |Removed |Added ---------------------------------------------------------------------------- Status|Needs Signoff |Failed QA -- You are receiving this mail because: You are watching all bug changes.
https://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=17705 Katrin Fischer <katrin.fischer@bsz-bw.de> changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |katrin.fischer@bsz-bw.de Component|Circulation |Fines and fees -- You are receiving this mail because: You are watching all bug changes.
https://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=17705 --- Comment #14 from Katrin Fischer <katrin.fischer@bsz-bw.de> --- I wonder if this would be better achieved with a payment type plugin nowadays (like PayPal) -- You are receiving this mail because: You are watching all bug changes.
https://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=17705 Marie-Luce Laflamme <marie-luce.laflamme@inlibro.com> changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |marie-luce.laflamme@inlibro | |.com Resolution|--- |MOVED Status|Failed QA |RESOLVED --- Comment #15 from Marie-Luce Laflamme <marie-luce.laflamme@inlibro.com> --- Paypal is no longer integrated in Koha. It's now uses a payment plugin. reference: https://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=23215 -- You are receiving this mail because: You are watching all bug changes.
https://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=17705 Marie-Luce Laflamme <marie-luce.laflamme@inlibro.com> changed: What |Removed |Added ---------------------------------------------------------------------------- Status|RESOLVED |REOPENED Resolution|MOVED |--- --- Comment #16 from Marie-Luce Laflamme <marie-luce.laflamme@inlibro.com> --- sorry... I've used the wrong status -- You are receiving this mail because: You are watching all bug changes.
participants (1)
-
bugzilla-daemon@bugs.koha-community.org