[Koha-bugs] [Bug 15654] Integrating a cash register system into Koha: An Example

bugzilla-daemon at bugs.koha-community.org bugzilla-daemon at bugs.koha-community.org
Mon Jan 25 15:24:57 CET 2016


http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=15654

--- Comment #1 from Lari Taskula <larit at student.uef.fi> ---
Created attachment 47256
  -->
http://bugs.koha-community.org/bugzilla3/attachment.cgi?id=47256&action=edit
Bug 15654: Integrate cash register system into Koha (An Example: case CPU)

Integrates Koha with cash register system.

Adds "payments_transactions" and "payments_transactions_accountlines"
database tables to hold the cash register system payments.

Adds REST API endpoints
  - /api/v1/pos/cpu/100 GET information about a payment
  - /api/v1/pos/cpu/100/report POST to tell Koha that payment is
    completed / cancelled.

Adds some configurations for the integration to koha-conf.

Intranet template modifications for the integration. After payment is
sent to the cash register server, a loading screen is shown until the
payment is either completed or cancelled at the cash register.

Adds system preferences to enable/disable the integration and to map
Koha fines to codes recognized by the cash register (as YAML-config).

Ability to set SSL certificates for the connection between Koha server
and the cash register server.

-----------------------------------------------------------------------

Step by step how it works:
- Borrower wants to pay fines.
- Librarian confirms to pay the fines.
- Payment is created into payments_transactions. The selected
  accountlines related to this payment are stored into
  payments_transactions_accountlines.
- A new loading screen opens. An Ajax call is made to Koha server.
- Koha receives the call and starts to go through the selected payments.
- Koha "translates" Koha-fine-types (accounttypes) into codes recognized
  by the cash register and forms a JSON object for the payment.
- JSON is sent as a long polling request to cash register server.
- Librarian completes payment at cash register. Koha receives a response.
- Ajax call gets an response and tells the librarian whether the payment
  was completed/cancelled.
- REST API receives a message from the cash register server. The message
  tells whether the payment was completed/cancelled. According to this
  information, the payment at "payments_transactions" table gets an
  updated status.
- Librarian is forwarded into Account tab of Borrower's Fines. If the
  payment was paid, it should be now shown.

-----------------------------------------------------------------------

THIS PATCH ONLY SUPPORTS OUR LOCAL PROVIDER. It is provided as an example
in hope to start discussion whether a feature like this is wanted in the
Koha community. This patch cannot easily be tested with the actual cash
register server, because the server is not open source. However, if you
wish to proceed into actually testing the integration, leave a comment
in Bug 15654 and we can discuss it further. One possibility would be
to create a simple script that responds the way the integration expects.

-- 
You are receiving this mail because:
You are watching all bug changes.
You are the assignee for the bug.


More information about the Koha-bugs mailing list