Skip to main content

Add support for Caisse-AP payment protocol used in France

Project description

Beta License: AGPL-3 OCA/l10n-france Translate me on Weblate Try me on Runboat

This module adds support for the Caisse AP protocol over IP in the Odoo Point of Sale.

The Caisse AP protocol is a vendor-independent protocol used in France to communicate between a point of sale and a payment terminal. It is implemented by Ingenico payment terminals, Verifone payment terminal and other brands of payment terminals. This protocol is designed by a French association called Association du paiement, abbreviated as AP. Note that the Caisse-AP protocol is used by Ingenico payment terminals deployed in France, but not by the same model of Ingenico payment terminals deployed in other countries!

This module support a bi-directionnal link with the payment terminal:

  1. it sends the amount to the payment terminal

  2. it waits for the end of the payment transaction

  3. it parses the answer of the payment terminal which gives the payment status: in case of success, the payment line is automatically validated ; in case of failure, an error message is displayed and the Odoo user can retry or delete the payment line.

The Caisse-AP protocol was initially written for serial and USB. Since the Caisse AP protocol version 3.x, it also supports IP. When used over IP, the client (point of sale) and the server (payment terminal) exchange simple text data encoded as ASCII over a raw TCP socket.

The Caisse-AP protocol has one important drawback: as it uses a raw TCP socket, it cannot be used from pure JS code. So the JS code of the point of sale cannot generate the query to send the amount to the payment terminal by itself. In this module, the JS code of the point of sale sends a query to the Odoo server that opens a raw TCP socket to the payment terminal. It implies that, if the Odoo server is not on the LAN but somewhere on the Internet and the payment terminal has a private IP on the LAN, you will need to setup a TCP port forwarding rule on the firewall to redirect the TCP connection of the Odoo server to the payment terminal.

Table of contents

Configuration

In the menu Point of sale > Configuration > Payment Method, on the payment method that correspond to a payment by card:

  • select the appropriate journal, which should be a bank journal (and not a cash journa, otherwise the field Use a payment terminal is invisible)

  • field Use a payment terminal: select Caisse AP over IP (France only)

  • field Caisse-AP Payment Terminal IP Address: set the IP address of the payment terminal,

  • field Caisse-AP Payment Terminal Port: set the TCP port of the payment terminal (8888 by default),

  • field Payment Mode: set Card (the value Check is for the Check payment method if you use a check printer connected to the payment terminal such as Ingenico i2200)

Bug Tracker

Bugs are tracked on GitHub Issues. In case of trouble, please check there if your issue has already been reported. If you spotted it first, help us to smash it by providing a detailed and welcomed feedback.

Do not contact contributors directly about support or help with technical issues.

Credits

Authors

  • Akretion

Contributors

Other credits

The development of this module has been financially supported by Camptocamp.

Maintainers

This module is maintained by the OCA.

Odoo Community Association

OCA, or the Odoo Community Association, is a nonprofit organization whose mission is to support the collaborative development of Odoo features and promote its widespread use.

Current maintainer:

alexis-via

This module is part of the OCA/l10n-france project on GitHub.

You are welcome to contribute. To learn how please visit https://odoo-community.org/page/Contribute.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distribution

File details

Details for the file odoo14_addon_l10n_fr_pos_caisse_ap_ip-14.0.1.0.1.dev5-py3-none-any.whl.

File metadata

File hashes

Hashes for odoo14_addon_l10n_fr_pos_caisse_ap_ip-14.0.1.0.1.dev5-py3-none-any.whl
Algorithm Hash digest
SHA256 78a5728c050ea8c087eaa818d008e90a8aa21e302e2f92db19ede88eb86cddd2
MD5 d24105a1b817fc7d43b246cfbcdec47e
BLAKE2b-256 1251d02cd4088cfc587b9b3e541dc38c88e02395124f516e8a9d4165e2d43210

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page