Skip to content

Commit 8d3efe6

Browse files
committed
[ADD] pos_qfpay: Add QFPay payment terminal
closes #14191 Related: odoo/odoo#220059 Related: odoo/enterprise#93585 Signed-off-by: fja-odoo <[email protected]>
1 parent b206e4e commit 8d3efe6

File tree

2 files changed

+69
-0
lines changed

2 files changed

+69
-0
lines changed

content/applications/sales/point_of_sale/payment_methods/terminals.rst

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -26,6 +26,7 @@ To activate a payment terminal and allow processing payments with it, follow the
2626
- :doc:`Adyen <terminals/adyen>`
2727
- :doc:`Ingenico <terminals/ingenico>`
2828
- :doc:`Mercado Pago <terminals/mercado_pago>`
29+
- :doc:`QFPay configuration <terminals/qfpay>`
2930
- :doc:`Razorpay <terminals/razorpay>`
3031
- :doc:`SIX <terminals/six>`
3132
- :doc:`Stripe <terminals/stripe>`
@@ -57,6 +58,7 @@ Once the transaction is successful, the payment is automatically validated in Po
5758
terminals/adyen
5859
terminals/ingenico
5960
terminals/mercado_pago
61+
terminals/qfpay
6062
terminals/razorpay
6163
terminals/six
6264
terminals/stripe
Lines changed: 67 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,67 @@
1+
=====
2+
QFPay
3+
=====
4+
5+
QFPay is a payment service that offers payment solutions through the `HaoJin App
6+
<https://qfpay.global/products/merchant-app/>`_ for customer transactions with a physical terminal.
7+
8+
.. important::
9+
- QFPay payment terminals do not require an :doc:`IoT Box </applications/general/iot>` to
10+
operate.
11+
- QFPay terminals are exclusively for Hong Kong.
12+
13+
.. _pos/qfpay/configuration:
14+
15+
QFPay configuration
16+
===================
17+
18+
To configure a QFPay payment terminal, follow these steps:
19+
20+
#. Create a QFPay account on the `QFPay website <https://qfpay.global/products/qfpay-pos-api/>`_.
21+
#. Request activation of `Asynchronous Notifications
22+
<https://sdk.qfapi.com/docs/common-api/asynchronous-notification/>`_ from the application email.
23+
#. Provide the Odoo server address on the QFPay portal, followed by `/qfpay/notify`, and copy the
24+
notification key provided by QFPay.
25+
#. Set up the QFPay terminal by connecting the HaoJin App to the QFPay account as instructed by
26+
QFPay, then copy the terminal's IP address.
27+
#. Request a self-signed certificate from QFPay linked to the terminal's IP address, and import it
28+
into the relevant POS in Odoo.
29+
#. Generate a :guilabel:`POS-KEY` from the HaoJin App: go to :menuselection:`Haojin App --> My -->
30+
Settings --> Pos Call Up Key --> Reset Key`. Then, copy the generated :guilabel:`POS-KEY`.
31+
32+
.. note::
33+
- The **Asynchronous Notifications** are automated messages confirming successful payments or
34+
refunds by QFPay.
35+
- Write the server address as follows: `https://yourdomain.odoo.com/qfpay/notify`.
36+
- If the terminal's IP address changes, update it in the :ref:`Odoo POS settings
37+
<configuration/settings>` and request a new self-signed certificate from QFPay.
38+
- If a QFPay account already exists, contact `[email protected]` with the merchant
39+
information and server address.
40+
41+
.. tip::
42+
Alternatively, retrieve the POS-KEY from the `MMS (Merchant Management System) portal
43+
<https://merchant.qfpay.global/>`_: go to :menuselection:`MMS portal --> Settings --> Device
44+
Settings`.
45+
46+
.. _pos/qfpay/odoo-configuration:
47+
48+
Odoo POS configuration
49+
======================
50+
51+
To connect the QFPay terminal with Odoo Point of Sale, follow these steps:
52+
53+
#. Go to :menuselection:`Point of Sale --> Configuration --> Settings`, scroll down to the
54+
:guilabel:`Payment Terminals` section, enable the :guilabel:`QFPay` terminal, and click
55+
:guilabel:`Save`.
56+
#. Go to :menuselection:`Point of Sale --> Configuration --> Payment Methods` and :doc:`create a
57+
payment method <../../payment_methods>`.
58+
#. Set the :guilabel:`Journal` field to :guilabel:`Bank`.
59+
#. Select the desired point of sale in the :guilabel:`Point of Sale` field.
60+
#. Set the :guilabel:`Integration` field to :guilabel:`Terminal`.
61+
#. Set the :guilabel:`Integrate with` field to :guilabel:`QFPay`.
62+
#. Paste the copied information from :ref:`QFPay <pos/qfpay/configuration>` into the corresponding
63+
fields:
64+
65+
- :guilabel:`Terminal IP`
66+
- :guilabel:`POS Key`
67+
- :guilabel:`Notification Key`

0 commit comments

Comments
 (0)