[IMP] payment_acquirers: revamp online payment providers' documentation

task-2654702

closes odoo/documentation#1061

Signed-off-by: Antoine Vandevenne (anv) <anv@odoo.com>
This commit is contained in:
Demesmaeker 2021-07-09 13:29:30 +00:00 committed by Antoine Vandevenne (anv)
parent b28e34b357
commit 3a2bbc028b
36 changed files with 604 additions and 389 deletions

View File

@ -1,19 +1,25 @@
:show-content: :show-content:
================================================ =================================================
Payment Acquirers (Credit Cards, Online Payment) Payment acquirers (credit cards, online payments)
================================================ =================================================
.. toctree:: .. toctree::
:titlesonly: :titlesonly:
payment_acquirers/wire_transfer payment_acquirers/wire_transfer
payment_acquirers/adyen
payment_acquirers/alipay
payment_acquirers/authorize payment_acquirers/authorize
payment_acquirers/buckaroo
payment_acquirers/mollie
payment_acquirers/ogone
payment_acquirers/paypal payment_acquirers/paypal
payment_acquirers/sips
payment_acquirers/stripe payment_acquirers/stripe
Odoo embeds several **payment acquirers** that allow your customers to pay on their *Customer Odoo embeds several **payment acquirers** that allow your customers to pay on their *Customer
Portals* or your *eCommerce website*. They can pay Sales Orders, invoices, or subscriptions with Portals* or your *eCommerce website*. They can pay sales orders, invoices, or subscriptions with
recurring payments with their favorite payment methods such as **Credit Cards**. recurring payments with their favorite payment methods such as **Credit Cards**.
Offering several payment methods increases the chances of getting paid in time, or even immediately, Offering several payment methods increases the chances of getting paid in time, or even immediately,
@ -28,13 +34,13 @@ trust.
Odoo apps delegate the handling of sensitive information to the certified payment acquirer so Odoo apps delegate the handling of sensitive information to the certified payment acquirer so
that you don't ever have to worry about PCI compliance. that you don't ever have to worry about PCI compliance.
This means that no sensitive information (such as credit card numbers or credentials) is stored This means that no sensitive information (such as credit card numbers) is stored on Odoo servers
on Odoo servers or Odoo databases hosted elsewhere. Instead, Odoo apps use a unique reference or Odoo databases hosted elsewhere. Instead, Odoo apps use a unique reference number to the data
number to the data stored safely in the payment acquirers' systems. stored safely in the payment acquirers' systems.
.. _payment_acquirers/acquirers: .. _payment_acquirers/acquirers:
Payment Acquirers Payment acquirers
================= =================
From an accounting perspective, we can distinguish two types of payment acquirers: the payments that From an accounting perspective, we can distinguish two types of payment acquirers: the payments that
@ -43,7 +49,7 @@ acquirers that are third-party services and require you to follow another accoun
.. _payment_acquirers/bank_payments: .. _payment_acquirers/bank_payments:
Bank Payments Bank payments
------------- -------------
- | :doc:`Wire Transfer <payment_acquirers/wire_transfer>` - | :doc:`Wire Transfer <payment_acquirers/wire_transfer>`
@ -51,43 +57,58 @@ Bank Payments
approve the payment manually once you have received it on your bank account. approve the payment manually once you have received it on your bank account.
- | SEPA Direct Debit - | SEPA Direct Debit
| Your customers can sign a SEPA Direct Debit mandate online and get their bank account charged | Your customers can sign a SEPA Direct Debit mandate online and get their bank account charged
directly. :doc:`Click here <../finance/accounting/receivables/customer_payments/batch_sdd>` for more directly. :doc:`Click here <../finance/accounting/receivables/customer_payments/batch_sdd>` for
information about this payment method. more information about this payment method.
.. _payment_acquirers/online_providers: .. _payment_acquirers/online_providers:
Online Payment Providers Online payment providers
------------------------ ------------------------
+-------------------------------------+----------------------+-----------+------------+-----------------+ +-------------------------------+----------------------+------------+-----------------+-----------+
| | Redirection to | Payment | Save Cards | Capture Amount | | | Payment flow | Save cards | Capture amount | Refund |
| | the acquirer website | from Odoo | | Manually | | | | | manually | from Odoo |
+=====================================+======================+===========+============+=================+ +===============================+======================+============+=================+===========+
| Adyen | ✔ | | | | | :doc:`Adyen | Payment from Odoo | |V| | | |V| |
+-------------------------------------+----------------------+-----------+------------+-----------------+ | <payment_acquirers/adyen>` | | | | |
| Alipay | ✔ | | | | +-------------------------------+----------------------+------------+-----------------+-----------+
+-------------------------------------+----------------------+-----------+------------+-----------------+ | :doc:`Alipay | Redirection to the | | | |
| :doc:`Authorize.Net | ✔ | ✔ | ✔ | ✔ | | <payment_acquirers/alipay>` | acquirer website | | | |
| <payment_acquirers/authorize>` | | | | | +-------------------------------+----------------------+------------+-----------------+-----------+
+-------------------------------------+----------------------+-----------+------------+-----------------+ | :doc:`Authorize.Net | Payment from Odoo | |V| | |V| | |
| Buckaroo | ✔ | | | | | <payment_acquirers/authorize>`| | | | |
+-------------------------------------+----------------------+-----------+------------+-----------------+ +-------------------------------+----------------------+------------+-----------------+-----------+
| Ingenico | ✔ | ✔ | ✔ | | | :doc:`Buckaroo | Redirection to the | | | |
+-------------------------------------+----------------------+-----------+------------+-----------------+ | <payment_acquirers/buckaroo>` | acquirer website | | | |
| :doc:`PayPal | ✔ | | | | +-------------------------------+----------------------+------------+-----------------+-----------+
| <payment_acquirers/paypal>` | | | | | | :doc:`Mollie | Redirection to the | | | |
+-------------------------------------+----------------------+-----------+------------+-----------------+ | <payment_acquirers/mollie>` | acquirer website | | | |
| PayUMoney | ✔ | | | | +-------------------------------+----------------------+------------+-----------------+-----------+
+-------------------------------------+----------------------+-----------+------------+-----------------+ | :doc:`Ogone | Redirection to the | |V| | | |
| SIPS | ✔ | | | | | <payment_acquirers/ogone>` | acquirer website | | | |
+-------------------------------------+----------------------+-----------+------------+-----------------+ +-------------------------------+----------------------+------------+-----------------+-----------+
| Stripe | ✔ | ✔ | ✔ | | | :doc:`PayPal | Redirection to the | | | |
+-------------------------------------+----------------------+-----------+------------+-----------------+ | <payment_acquirers/paypal>` | acquirer website | | | |
+-------------------------------+----------------------+------------+-----------------+-----------+
| PayU Latam | Redirection to the | | | |
| | acquirer website | | | |
+-------------------------------+----------------------+------------+-----------------+-----------+
| PayUMoney | Redirection to the | | | |
| | acquirer website | | | |
+-------------------------------+----------------------+------------+-----------------+-----------+
| :doc:`SIPS | Redirection to the | | | |
| <payment_acquirers/sips>` | acquirer website | | | |
+-------------------------------+----------------------+------------+-----------------+-----------+
| :doc:`Stripe | Redirection to the | |V| | | |
| <payment_acquirers/stripe>` | acquirer website | | | |
+-------------------------------+----------------------+------------+-----------------+-----------+
.. |V| replace::
.. note:: .. note::
Some of these Online Payment Providers can also be added as :doc:`Bank Accounts Some of these online payment providers can also be added as :doc:`bank accounts
<../finance/accounting/bank/setup/bank_accounts>`, but this is **not** the same process as adding them <../finance/accounting/bank/setup/bank_accounts>`, but this is **not** the same process as adding
as Payment Acquirers. Payment Acquirers allow customers to pay online, and Bank Accounts are them as payment acquirers. Payment acquirers allow customers to pay online, and bank accounts are
added and configured on your Accounting app to do a bank reconciliation, which is an accounting added and configured on your Accounting app to do a bank reconciliation, which is an accounting
control process. control process.
@ -96,15 +117,15 @@ Online Payment Providers
Configuration Configuration
============= =============
Some of the features described in this section are available only with some Payment Acquirers. Refer Some of the features described in this section are available only with some payment acquirers. Refer
to :ref:`the table above <payment_acquirers/online_providers>` for more details. to :ref:`the table above <payment_acquirers/online_providers>` for more details.
.. _payment_acquirers/add_new: .. _payment_acquirers/add_new:
Add a new Payment Acquirer Add a new payment acquirer
-------------------------- --------------------------
To add a new Payment acquirer and make it available to your customers, go to To add a new payment acquirer and make it available to your customers, go to
:menuselection:`Accounting --> Configuration --> Payment Acquirers`, look for your payment acquirer, :menuselection:`Accounting --> Configuration --> Payment Acquirers`, look for your payment acquirer,
install the related module, and activate it. To do so, open the payment acquirer and change its install the related module, and activate it. To do so, open the payment acquirer and change its
state from *Disabled* to *Enabled*. state from *Disabled* to *Enabled*.
@ -124,11 +145,11 @@ state from *Disabled* to *Enabled*.
Credentials tab Credentials tab
~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~
If not done yet, go to the **Online Payment Provider**'s website, create an account, and make sure If not done yet, go to the online payment provider website, create an account, and make sure to have
to have the credentials required for third-party use. Odoo requires these credentials to communicate the credentials required for third-party use. Odoo requires these credentials to communicate with
with the Payment Acquirer and get the confirmation of the *payment authentication*. the payment acquirer.
The form in this section is specific to the Payment Acquirer you are configuring. Please refer to The form in this section is specific to the payment acquirer you are configuring. Please refer to
the related documentation for more information. the related documentation for more information.
.. _payment_acquirers/configuration_tab: .. _payment_acquirers/configuration_tab:
@ -136,66 +157,66 @@ the related documentation for more information.
Configuration tab Configuration tab
~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~
You can change the Payment Acquirer front-end appearance by modifying its name under the **Displayed You can change the payment acquirer's front-end appearance by modifying its name under the
as** field and which credit card icons to display under the **Supported Payment Icons** field. **Displayed as** field and which credit card icons to display under the **Supported Payment Icons**
field.
.. _payment_acquirers/save_cards: .. _payment_acquirers/save_cards:
Save and reuse Credit Cards Save and reuse credit cards
*************************** ***************************
With the **Save Cards** feature, Odoo can store **Payment Tokens** in your database, which can be With the **Save Cards** feature, Odoo can store **Payment Tokens** in your database, which can be
used for subsequent payments, without having to reenter the payment details. This is particularly used for subsequent payments, without having to reenter the payment details. This is particularly
useful for subscriptions' recurring payments. useful for the eCommerce conversion rate and subscriptions' recurring payments.
.. _payment_acquirers/capture_amount: .. _payment_acquirers/capture_amount:
Place a hold on a card Place a hold on a card
********************** **********************
If the **Capture Amount Manually** field is enabled, the funds are reserved for a few days on the If you wish to manually capture an amount instead of having an immediate capture, you can enable the
customer's card, but not charged yet. You must then go to the related Sales Order and manually manual capture. Capturing payments manually has many advantages:
- Receive the payment confirmation and wait until the order is shipped to capture the payment.
- Review and verify that orders are legitimate before the payment is completed and the fulfillment
process starts.
- Avoid potentially high credit card fees in the event of overselling or cancelled orders.
The **Capture Amount Manually** field is under the **Configuration** tab. If enabled, the funds are
reserved for a few days on the customer's card, but not charged yet. Please refer to your acquirer's
documentation for the exact reservation duration.
.. image:: payment_acquirers/media/capture_manually.png
:align: center
:alt: Configuration tab on Odoo
To capture the payment, you must then go to the related sales order or invoice and manually
*capture* the funds before its automatic cancellation, or *void the transaction* to unlock the funds *capture* the funds before its automatic cancellation, or *void the transaction* to unlock the funds
from the customer's card. from the customer's card.
.. _payment_acquirers/payment_flow: .. image:: payment_acquirers/media/capture.png
:align: center
Payment Flow :alt: Hold the credit card payment until you capture or revoke it on Odoo
************
Choose in the **Payment Flow** field if to redirect the user to the payment acquirer's portal to
authenticate the payment, or if to stay on the current page and authenticate the payment from Odoo.
.. note:: .. note::
Some features are available only if you select *Redirection to the acquirer website*. Odoo may not yet support the manual capture for all acquirers, but some acquirers allow managing
the capture from their interfaces.
.. _payment_acquirers/countries: .. _payment_acquirers/countries:
Countries Countries
********* *********
Restrict the use of the Payment Acquirer to a selection of countries. Leave this field blank to make Restrict the use of the payment acquirer to a selection of countries. Leave this field blank to make
the Payment Acquirer available to all countries. the payment acquirer available to all countries.
.. _payment_acquirers/journal: .. _payment_acquirers/journal:
Payment Journal Payment journal
*************** ***************
The **Payment Journal** selected for your Payment Acquirer must be a *Bank* journal. The **Payment journal** selected for your payment acquirer must be a *Bank* journal.
.. important::
In many cases, Odoo automatically creates a new **Journal** and a new **Account** when you
activate a new Payment Acquirer. Both of them are preset to work out-of-the-box, but we strongly
recommend you to make sure these fields are correctly set according to your accounting needs, and
adapt them if necessary.
.. _payment_acquirers/messages:
Messages tab
~~~~~~~~~~~~
Change here the messages displayed by Odoo after a payment's confirmation or failure.
.. _payment_acquirers/accounting: .. _payment_acquirers/accounting:
@ -207,33 +228,30 @@ reconciliation workflows. However, payments recorded with **Online Payment Provi
to consider how you want to record your payments' journal entries. We recommend you to ask your to consider how you want to record your payments' journal entries. We recommend you to ask your
accountant for advice. accountant for advice.
Odoo default method is to record the payments on a *Current Assets Account*, on a dedicated *Bank You need to select a *Payment Journal* on your acquirer configuration to record the payments,
Journal*, once the *Payment Authentication* is confirmed. At some point, you transfer the funds from on a **Outstanding Account**. The Journal's **type** must be *Bank Journal*.
the *Payment Acquirer* to your *Bank Account*.
Here are the requirements for this to work: You can use a single journal for many payment methods. And for each payment method, you can either:
- Bank Journal - Define an **Accounting Account** to separate these payments from another payment method.
- Leave blank to fallback on the default account, which you can see or change in the settings.
- The Journal's **type** must be *Bank Journal*. .. image:: payment_acquirers/media/bank_journal.png
- Select the right **Default Debit Account** and **Default Credit Account**. :align: center
- | Under the *Advanced Settings* tab, make sure that **Posting** is set as *Post At Payment :alt: A bank journal in the "Incoming Payments Tab".
Validation*.
| This implies that the Journal Entry is recorded directly when your Odoo database receives the
confirmation of the *Payment Authentication* from the Online Payment Provider.
- Current Asset Account You can have the same bank account for the whole company, or for some journals only, or a single
payment method... What best suit your needs.
- The Account's **type** is *Current Assets*
- The Account must **Allow Reconciliation**
.. note::
In many cases, Odoo automatically creates a new **Journal** and a new **Current Asset Account**
when you activate a new Payment Acquirer. You can modify them if necessary.
.. seealso:: .. seealso::
- :doc:`../finance/accounting/receivables/customer_payments/recording`
- :doc:`payment_acquirers/wire_transfer` - :doc:`payment_acquirers/wire_transfer`
- :doc:`payment_acquirers/adyen`
- :doc:`payment_acquirers/alipay`
- :doc:`payment_acquirers/authorize` - :doc:`payment_acquirers/authorize`
- :doc:`payment_acquirers/buckaroo`
- :doc:`payment_acquirers/mollie`
- :doc:`payment_acquirers/ogone`
- :doc:`payment_acquirers/paypal` - :doc:`payment_acquirers/paypal`
- :doc:`payment_acquirers/sips`
- :doc:`payment_acquirers/stripe`
- :doc:`../websites/ecommerce/shopper_experience/payment_acquirer`

View File

@ -0,0 +1,103 @@
=====
Adyen
=====
`Adyen <https://www.adyen.com/>`_ is a Dutch-based company that offers several online payment
possibilities.
Configuration
=============
.. seealso::
- :ref:`payment_acquirers/add_new`
Credentials tab
---------------
Odoo needs your **API Credentials** to connect with your Adyen account, which comprise:
- **Merchant Account**: The code of the merchant account to use with Adyen.
- :ref:`API Key <adyen/api_and_client_keys>`: The API key of the webservice user.
- :ref:`Client Key <adyen/api_and_client_keys>`: The client key of the webservice user.
- :ref:`HMAC Key <adyen/hmac_key>`: The HMAC key of the webhook.
- :ref:`Checkout API URL <adyen/urls>`: The base URL for the Checkout API endpoints.
- :ref:`Recurring API URL <adyen/urls>`: The base URL for the Recurring API endpoints.
You can copy your credentials from your Adyen account, and paste them in the related fields under
the **Credentials** tab.
.. important::
If you are trying Adyen as a test, with a *test account*, change the **State** to *Test Mode*. We
recommend doing this on a test Odoo database, rather than on your main database.
.. _adyen/api_and_client_keys:
API Key and Client Key
~~~~~~~~~~~~~~~~~~~~~~
In order to retrieve the API Key and the Client Key, log into your Adyen account, go to
:menuselection:`Developers --> API Credentials`.
- If you already have an API user, open it.
- If you don't have an API user yet, click on **Create new credential**.
Go to :menuselection:`Authentication` and get or generate your **API Key** and **Client Key**. Be
careful to copy your API key as you'll not be allowed to get it later without generating a new one.
This is also the place where you'll :ref:`allow payments to be made from your website
<adyen/allowed_origins>`.
.. _adyen/hmac_key:
HMAC key
~~~~~~~~
In order to retrieve the HMAC Key, you'll need to configure a `Standard Notification` webhook. For
this, log into your Adyen account then go to :menuselection:`Developers --> Webhooks --> Add webhook
--> Add Standard notification`.
.. image:: media/adyen_add_webhook.png
:align: center
:alt: Configure a webhook.
There, in :menuselection:`Transport --> URL`, enter your server address followed by
`/payment/adyen/notification`.
.. image:: media/adyen_webhook_url.png
:align: center
:alt: Enter the notification URL.
Then continue in :menuselection:`Additional Settings --> HMAC Key --> Generate new HMAC key`. Be
careful to copy it as you'll not be allowed to get it later without generating a new one.
You have to save the webhook to finalize its creation.
.. _adyen/urls:
URLs
~~~~
To retrieve the URLs, log into your Adyen account, go to :menuselection:`Developers --> API URLs`.
Pick one of the URLs listed next to **Recurring** as your **Recurring API URL** and one of the URLs
listed next to **Checkout API** as your **Checkout API URL**.
.. image:: media/adyen_api_urls.png
:align: center
:alt: Get the links for the different API.
Adyen Account
-------------
.. _adyen/allowed_origins:
Allow payments from a specific origin
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
To allow payment originated from your website, follow the steps in :ref:`adyen/api_and_client_keys`
to navigate to your API user and go to :menuselection:`Allowed Origins`, then add the URLs from
where payments will be made (the URLs of the servers hosting your Odoo instances).
.. image:: media/adyen_allowed_origins.png
:align: center
:alt: Allows payments originated from a specific domain.
.. seealso::
- :doc:`../payment_acquirers`

View File

@ -0,0 +1,36 @@
======
Alipay
======
`Alipay <https://www.alipay.com/>`_ is an online payments platform established in China by Alibaba
Group.
Configuration
=============
.. seealso::
- :ref:`payment_acquirers/add_new`
Credentials tab
---------------
Odoo needs your **API Credentials** to connect with your Alipay account, which comprise:
- **Account**: Depending on where you are situated
- `Express Checkout` if your are a Chinese Merchant.
- `Cross-border` if you are not.
- **Alipay Seller Email**: Your public Alipay partner email (for express checkout only).
- **Merchant Partner ID**: The public partner ID solely used to identify the account with Alipay.
- **MD5 Signature Key**: The signature key.
You can copy your credentials from your Alipay account, and paste them in the related fields under
the **Credentials** tab.
To retrieve them, log into your Alipay account, they are on the front page.
.. important::
If you are trying Alipay as a test, in the *sandbox*, change the **State** to *Test Mode*. We
recommend doing this on a test Odoo database, rather than on your main database.
.. seealso::
- :doc:`../payment_acquirers`

View File

@ -2,116 +2,46 @@
Authorize.Net Authorize.Net
============= =============
`Authorize.Net <https://www.authorize.net>`__ is a United States-based online payment solution `Authorize.Net <https://www.authorize.net>`_ is a United States-based online payment solution
provider, allowing businesses to accept **credit cards**. provider, allowing businesses to accept **credit cards**.
.. image:: media/authorize-net.png Configuration
:align: center =============
:alt: Authorize.Net logo
This Payment Acquirer offers additional options that are not available for other :doc:`Payment .. seealso::
Acquirers <../payment_acquirers>`, such as the ability to process your customer's payment after - :ref:`payment_acquirers/add_new`
delivery.
Authorize.Net account Credentials tab
===================== ---------------
If not done yet, choose a plan and `Sign Up for an Authorize.Net account
<https://www.authorize.net/sign-up.html>`__.
Odoo needs your **API Credentials & Keys** to connect with your Authorize.Net account, which Odoo needs your **API Credentials & Keys** to connect with your Authorize.Net account, which
comprise: comprise:
- API Login ID - **API Login ID**: The ID solely used to identify the account with Authorize.Net.
- Transaction Key - **API Transaction Key**
- Signature Key - **API Signature Key**
- **API Client Key**
To retrieve them, log into your Authorize.Net account, go to :menuselection:`Account --> Security To retrieve them, log into your Authorize.Net account, go to :menuselection:`Account --> Settings
Settings --> General Security Settings --> API Credentials & Keys`, and generate your **Transaction --> Security Settings --> API Credentials & Keys`, generate your **Transaction Key** and
Key** and **Signature Key**. **Signature Key**, and paste them on the related fields in Odoo. Then, click on **Generate Client
Key**.
.. image:: media/authorize-api-keys.png
:align: center
:alt: Generate your Transaction Key and Signature Key on your Authorize.Net account
.. seealso::
- `Authorize.Net: Getting Started Guide
<https://support.authorize.net/s/article/Authorize-Net-Getting-Started-Guide>`__
Payment Acquirer Configuration
==============================
To configure Authorize.Net as Payment Acquirer in Odoo, go to :menuselection:`Accounting -->
Configuration --> Payment Acquirers`, open **Authorize.Net**, and change the **State** to *Enabled*.
Don't forget to click on *Save* once you've set everything up.
.. note::
Please refer to the :doc:`Payment Acquirers documentation <../payment_acquirers>` to read how to
configure this payment acquirer.
Credentials
-----------
Copy your credentials from your Authorize.Net account (API Login Id, API Transaction Key, and API
Signature Key), paste them in the related fields under the **Credentials** tab, then click on
**Generate Client Key**.
.. note::
The **API Client Key** is necessary only if you select *Payment from Odoo* option as
:ref:`Payment Flow <payment_acquirers/payment_flow>`.
.. important:: .. important::
If you are trying Authorize.Net as a test, with a *sandbox account*, change the **State** to If you are trying Authorize.Net as a test, with a *sandbox account*, change the **State** to
*Test Mode*. We recommend doing this on a test Odoo database, rather than on your main database. *Test Mode*. We recommend doing this on a test Odoo database, rather than on your main database.
Payment Flow Configuration tab
------------ -----------------
The **Payment Flow** lets you decide if to redirect the user to the payment acquirer's portal to Place a hold on a card
authenticate the payment, or if to stay on the current page and authenticate the payment from Odoo. ~~~~~~~~~~~~~~~~~~~~~~
This field is under the **Configuration** tab.
If you select *Redirection to the acquirer website*, make sure you add a **Default Receipt URL** and With Authorize.net, you can enable the :ref:`manual capture <payment_acquirers/capture_amount>`. If
a **Default Relay Response URL** to your Authorize.net account. enabled, the funds are reserved for 30 days on the customer's card, but not charged yet.
To do so, log into your Authorize.Net account, go to :menuselection:`Account --> Transaction Format
Settings --> Transaction Response Settings --> Response/Receipt URLs`, and set the default links:
- | Default Receipt URL:
| *https://[yourcompany.odoo.com]*/**payment/authorize/return**
- | Default Relay Response URL:
| *https://[yourcompany.odoo.com]*/**shop/confirmation**
.. note::
| Failing to complete this step results in the following error:
| *The referrer, relay response or receipt link URL is invalid.*
Capture the payment after the delivery
--------------------------------------
The **Capture Amount Manually** field is under the **Configuration** tab. If enabled, the funds are
reserved for 30 days on the customer's card, but not charged yet.
.. image:: media/authorize-configuration.png
:align: center
:alt: Authorize.Net Configuration tab on Odoo
To capture the payment, go to the related Sales Order and click on *Capture Transaction*. If the
order is canceled, you can click on *Void Transaction* to unlock the funds from the customer's card.
.. image:: media/authorize-capture.png
:align: center
:alt: Hold the credit card payment until you capture or revoke it on Odoo
.. warning:: .. warning::
After **30 days**, the transaction is **voided automatically** by Authorize.net. After **30 days**, the transaction is **voided automatically** by Authorize.net.
.. note::
With other payment acquirers, you can manage the capture in their own interfaces, not from Odoo.
.. seealso:: .. seealso::
- `Authorize.Net: Getting Started Guide
<https://support.authorize.net/s/article/Authorize-Net-Getting-Started-Guide>`__
- :doc:`../payment_acquirers` - :doc:`../payment_acquirers`
- :doc:`../../websites/ecommerce/shopper_experience/payment_acquirer`

View File

@ -0,0 +1,47 @@
========
Buckaroo
========
`Buckaroo <https://www.buckaroo.eu/>`_ is a Dutch-based company that offers several online payment
possibilities.
Configuration
=============
.. seealso::
- :ref:`payment_acquirers/add_new`
Credentials tab
---------------
Odoo needs your **API Credentials** to connect with your Buckaroo account, which comprise:
- :ref:`Website Key <buckaroo/website_key>`: The key solely used to identify the website with
Buckaroo.
- :ref:`Secret Key <buckaroo/secret_key>`: The secret key you entered on Buckaroo.
You can copy your credentials from your Buckaroo account, and paste them in the related fields under
the **Credentials** tab.
.. _buckaroo/website_key:
Website Key
~~~~~~~~~~~
In order to retrieve the Website Key, log into your Buckaroo account, go to
:menuselection:`Configuration --> Templates --> Your Website`.
.. _buckaroo/secret_key:
Secret Key
~~~~~~~~~~
In order to retrieve the Website Key, log into your Buckaroo account, go to
:menuselection:`Configuration --> Security --> Secret Key`.
.. important::
If you are trying Buckaroo in a test account, change the **State** to *Test Mode*. We
recommend doing this on a test Odoo database, rather than on your main database.
.. seealso::
- :doc:`../payment_acquirers`

Binary file not shown.

After

Width:  |  Height:  |  Size: 13 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.6 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 15 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 7.6 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.0 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 19 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 10 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 6.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 21 KiB

View File

Before

Width:  |  Height:  |  Size: 4.7 KiB

After

Width:  |  Height:  |  Size: 4.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 10 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.9 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 58 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 9.9 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 28 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.7 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 5.2 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.9 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 5.1 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 6.1 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 17 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 6.3 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 6.4 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 10 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 4.0 KiB

View File

@ -0,0 +1,31 @@
======
Mollie
======
`Mollie <https://www.mollie.com/>`_ is an online payments platform established in the Netherlands.
Configuration
=============
.. seealso::
- :ref:`payment_acquirers/add_new`
Credentials tab
---------------
Odoo needs your **API Credentials** to connect with your Mollie account, which comprise:
- **API Key**: The test or live API Key depending on the configuration of the acquirer.
You can copy your credentials from your Mollie account, and paste them in the related fields under
the **Credentials** tab.
To retrieve your API key, log into your Mollie account, go to
:menuselection:`Developers --> API keys`, and copy your Test or Live **API Key**.
.. important::
If you are trying Mollie as a test, with the Test API key, change the **State** to *Test Mode*.
We recommend doing this on a test Odoo database, rather than on your main database.
.. seealso::
- :doc:`../payment_acquirers`

View File

@ -0,0 +1,69 @@
=====
Ogone
=====
`Ogone <https://www.ingenico.com/>`_, also known as **Ingenico Payment Services** is a France-based
company that provides the technology involved in secure electronic transactions.
Configuration
=============
.. seealso::
- :ref:`payment_acquirers/add_new`
Credentials tab
---------------
Odoo needs your **API Credentials** to connect with your Ogone account, which comprise:
- **PSPID**: The ID solely used to identify the account with Ogone. You chose it when you opened
your account.
- :ref:`API User ID <ogone/api_user>`: The ID solely used to identify the user with Ogone.
- :ref:`API User Password <ogone/api_user>`: Value used to identify the user with Ogone.
- :ref:`SHA Key IN <ogone/sha_key_in>`: Key used in the signature Odoo send to Ogone.
- :ref:`SHA Key OUT <ogone/sha_key_out>`: Key used in the signature Ogone send to Odoo.
You can copy your credentials from your Ogone account, and paste them in the related fields under
the **Credentials** tab.
.. _ogone/api_user:
API User ID and Password
~~~~~~~~~~~~~~~~~~~~~~~~
If you already created a user and have both its ID and password, just copy them. You can also
generate a new password from :menuselection:`Configuration --> Users --> Your chosen user --> change
password`.
If you don't have a user, create one by going to :menuselection:`Configuration --> Users -->
New User`. Set your **User ID** to get your **password** when you save your new user.
.. image:: media/ogone_new_user.png
:align: center
:alt: Get your password when you save the new user.
.. _ogone/sha_key_in:
SHA Key IN
~~~~~~~~~~
In order to retrieve the SHA Key IN, log into your ogone account, go to
:menuselection:`Configuration --> Technical Information --> Data and origin verification -->
Checks for e-Commerce & Alias Gateway`, and retrieve **SHA Key IN**.
.. _ogone/sha_key_out:
SHA Key OUT
~~~~~~~~~~~
In order to retrieve the API Key and the Client Key, log into your ogone account, go to
:menuselection:`Configuration --> Technical Information --> Transaction feedback --> All transaction
submission modes`, and get or generate your **API Key** and **Client Key**. Be careful to copy your
API key as you'll not be allowed to get it later without generating a new one.
.. important::
If you are trying Ogone as a test, with the Test Account, change the **State** to *Test Mode*. We
recommend doing this on a test Odoo database, rather than on your main database.
.. seealso::
- :doc:`../payment_acquirers`

View File

@ -1,185 +1,123 @@
============================= ======
Configure your Paypal account Paypal
============================= ======
Paypal is available and popular worldwide. It doesnt charge any `Paypal <https://www.paypal.com//>` is available and popular worldwide. It doesn't charge any
subscription fee and creating an account is very easy. Thats why we subscription fee and creating an account is very easy. That's why we definitely recommend it for
definitely recommend it for starters in Odoo. It works as a seamless starters in Odoo. It works as a seamless flow where the customer is routed to Paypal website to
flow where the customer is routed to Paypal website to register the register the payment.
payment.
Paypal account
==============
A business account is needed to get paid with Paypal. Create a
`Paypal Business Account <https://www.paypal.com/us/merchantsignup/
applicationChecklist?signupType=CREATE_NEW_ACCOUNT&productIntentId=wp_standard>`_
or upgrade your Personal account to a Business account. Go to the Paypal
settings and click on *Upgrade to a Business account*.
Then follow the few configuration steps.
Settings in Paypal
==================
| First, lets see how to set up your Paypal account in order to build a
seamless customer experience with Odoo.
| Log in and open the settings. Go to :menuselection:`Products & Services -->
Website payments` and click **Update** on **Website preferences**.
.. image:: media/paypal01.png
:align: center
Auto Return
-----------
*Auto Return* automatically redirects your customers to Odoo once the
payment is processed. Check *Auto Return* and enter your domain name
with the suffix ``/shop/confirmation`` as *Return URL*
(e.g. ``https://yourcompany.odoo.com/shop/confirmation``).
This URL is requested in Paypal but not used in practice as Odoo
transmits it at each transaction. Dont worry if you manage several
sales channels or Odoo databases.
.. image:: media/paypal02.png
:align: center
Payment Data Transfer (PDT)
---------------------------
*Payment Data Transfer* delivers the payment confirmation to Odoo as
soon as it is processed. Without it, Odoo cannot end the sales flow.
This setting must be activated as well. When saving, an *Identity
Token* is generated. You will be later requested to enter it in Odoo.
.. image:: media/paypal03.png
:align: center
Paypal Account Optional
We advise you to not prompt customers to log in with a Paypal account
when they get to pay. Let them pay with debit/credit cards as well, or you might lose some deals. Make sure this setting is turned on.
.. image:: media/paypal04.png
:align: center
Instant Payment Notification (IPN)
----------------------------------
PDT sends order confirmations once and only once. As a result, your site
must be running when it happens; otherwise, it will never receive the
message. Thats why we advise to activate the *Instant Payment
Notification* (IPN) on top. With IPN, delivery of order confirmations
is virtually guaranteed since IPN resends a confirmation until your site acknowledges receipt.
| To activate IPN, get back to *Website payments* menu and click
*Update* in *Instant Payment Notification*.
| The *Notification URL* to set is your domain name +
“payment/paypal/ipn” (e.g. ``https://yourcompany.odoo.com/payment/paypal/ipn``).
.. image:: media/paypal05.png
:align: center
Payment Messages Format
-----------------------
If you use accented characters (or anything else than basic Latin characters)
for your customer names, addresses... you MUST configure the encoding format of
the payment request sent by Odoo to Paypal.
.. danger::
If you don't configure this setting, some transactions fail without notice.
To do so, open:
* `this page for a test account <https://sandbox.paypal.com/cgi-bin/customerprofileweb?cmd=_profile-language-encoding>`__
* `this page for a production account <https://www.paypal.com/cgi-bin/customerprofileweb?cmd=_profile-language-encoding>`__
Then, click *More Options* and set the two default encoding formats as **UTF-8**.
.. image:: media/paypal07.png
:align: center
.. image:: media/paypal08.png
:align: center
Your Paypal account is ready!
.. tip::
If you want your customers to pay without creating a Paypal account,
*Paypal Account Optional* needs to be turned on.
.. image:: media/paypal_account_optional.png
.. tip::
For Encrypted Website Payments & EWP_SETTINGS error,
please check the `Paypal documentation <https://developer.paypal.com/docs/
classic/paypal-payments-standard/integration-guide/encryptedwebpayments/
#encrypted-website-payments-ewp>`_.
Settings in Odoo Settings in Odoo
================ ================
Activation .. seealso::
---------- - :ref:`payment_acquirers/add_new`
Activate *Paypal* from the config bar of Sales, Invoicing and Credentials tab
eCommerce apps, or from the configuration menu of *Payment Acquirers*. ---------------
Credentials Odoo needs your **API Credentials** to connect with your PayPal account, which comprise:
-----------
Odoo requires three Paypal credentials: - **Email ID**: your login email address in Paypal.
- **Merchant ID**: the code of the merchant account used to identify your Paypal account.
- **Use IPN**: either you want to use Instant Payment Notification. Already checked, you don't have
to change it.
- *Email ID* is your login email address in Paypal. You can copy your credentials from your Paypal account, and paste them in the related fields under
- *Merchant ID* can be found in the settings of your Paypal account, in the **Credentials** tab.
:menuselection:`Account Settings --> Business information`.
- *Paypal PDT Token* is given in *Website payments* configuration as explained here above.
.. image:: media/paypal09.png To retrieve them, log into your Paypal account, and go to :menuselection:`Your account menu -->
:align: center Account settings --> Business Profile --> Business Information`
Transaction fees .. important::
---------------- If you are trying Paypal as a test, with a *sandbox account*, change the **State** to *Test
Mode*. We recommend doing this on a test Odoo database, rather than on your main database.
Configuration tab
-----------------
You can charge extra fees to your customers for paying with Paypal; You can charge extra fees to your customers for paying with Paypal;
This to cover the transaction fees Paypal charges you. Once redirected to Paypal, your customer sees an extra applied to the order amount. This to cover the transaction fees Paypal charges you. Once redirected to Paypal, your customer sees
an extra applied to the order amount.
To activate this, go to the Configuration tab of Paypal configuration in To activate this, go to the Configuration tab of Paypal configuration in Odoo and check *Add Extra
Odoo and check *Add Extra Fees*. Fees*.
.. image:: media/paypal10.png You can refer to `Paypal Fees <https://www.paypal.com/webapps/mpp/paypal-fees>`_ to set up fees.
:align: center
You can refer to `Paypal Fees <https://www.paypal.com/webapps/mpp/paypal-fees>`__ to set up
fees.
.. note:: .. note::
`Traders in the EU <https://europa.eu/youreurope/citizens/consumers/shopping/pricing-payments/ `Traders in the EU <https://europa.eu/youreurope/citizens/consumers/shopping/pricing-payments/
index_en.htm>`_ are not allowed to charge extra fees for paying with credit cards. index_en.htm>`_ are not allowed to charge extra fees for paying with credit cards.
Go live! Settings in Paypal
======== ==================
Your configuration is ready to roll. Make sure *Production* mode is First, lets see how to set up your Paypal account in order to build a seamless customer experience
on. Then publish the payment method by clicking the *Published* button right next to it. with Odoo.
.. image:: media/paypal11.png Log in and open the settings. Go to :menuselection:`Your account menu --> Account settings -->
:align: center Product & Services --> Website payments` and click **Update** on **Website preferences**.
.. image:: media/paypal12.png Auto Return
:align: Center -----------
Paypal is now available in your payment form available in eCommerce, *Auto Return* automatically redirects your customers to Odoo once the payment is processed. Check
Sales and Invoicing apps. Customers are redirected to Paypal website *Auto Return* and enter your domain name with the suffix ``/shop/confirmation`` as *Return URL*
when hitting *Pay Now*. They get back to a confirmation page in Odoo (e.g. `https://yourcompany.odoo.com/shop/confirmation`).
once the payment is processed.
.. image:: media/paypal13.png This URL is requested in Paypal but not used in practice as Odoo transmits it at each transaction.
:align: center Dont worry if you manage several sales channels or Odoo databases.
Payment Data Transfer (PDT)
---------------------------
*Payment Data Transfer* delivers the payment confirmation to Odoo as soon as it is processed.
Without it, Odoo cannot end the sales flow. This setting must be activated as well. When saving, an
*Identity Token* is generated. You will be later requested to enter it in Odoo.
Paypal Account Optional
-----------------------
We advise you to not prompt customers to log in with a Paypal account when they get to pay. Let them
pay with debit/credit cards as well, or you might lose some deals. Make sure this setting is turned
on.
Instant Payment Notification (IPN)
----------------------------------
PDT sends order confirmations once and only once. As a result, your site must be running when it
happens; otherwise, it will never receive the message. Thats why we advise to activate the *Instant
Payment Notification* (IPN) on top. With IPN, delivery of order confirmations is virtually
guaranteed since IPN resends a confirmation until your site acknowledges receipt.
| To activate IPN, get back to *Website payments* menu and click *Update* in *Instant Payment
Notification*.
| The *Notification URL* to set is your domain name + “payment/paypal/ipn” (e.g.
`https://yourcompany.odoo.com/payment/paypal/ipn`).
Payment Messages Format
-----------------------
If you use accented characters (or anything else than basic Latin characters) for your customer
names, addresses... you MUST configure the encoding format of the payment request sent by Odoo to
Paypal.
.. danger::
If you don't configure this setting, some transactions fail without notice.
To do so, open:
- `this page for a test account <https://sandbox.paypal.com/cgi-bin/customerprofileweb?cmd=_profile-language-encoding>`_
- `this page for a production account <https://www.paypal.com/cgi-bin/customerprofileweb?cmd=_profile-language-encoding>`_
Then, click *More Options* and set the two default encoding formats as **UTF-8**.
Your Paypal account is ready!
.. tip::
For Encrypted Website Payments & EWP_SETTINGS error, please check the `Paypal documentation
<https://developer.paypal.com/docs/classic/paypal-payments-standard/integration-guide/
encryptedwebpayments#encrypted-website-payments-ewp>`_.
Test environment Test environment
================ ================
@ -195,13 +133,10 @@ This will create two sandbox accounts:
- A default personal account (to use as shopper, e.g. `pp.merch01-buyer@example.com <mailto:pp.merch01-buyer@example.com>`__). - A default personal account (to use as shopper, e.g. `pp.merch01-buyer@example.com <mailto:pp.merch01-buyer@example.com>`__).
Log in to Paypal Sandbox with the merchant account and follow the same configuration instructions. Log in to Paypal Sandbox with the merchant account and follow the same configuration instructions.
Enter your sandbox credentials in Odoo and make sure Paypal is still Enter your sandbox credentials in Odoo and make sure Paypal is still set on *Test Mode*. We
set on *Test Environment*. Also, make sure the automatic invoicing recommend doing this on a test Odoo database, rather than on your main database.
is not activated in your eCommerce settings, to not generate invoices
when a fictitious transaction is completed.
Run a test transaction from Odoo using the sandbox personal account. Run a test transaction from Odoo using the sandbox personal account.
.. seealso:: .. seealso::
- :doc:`../payment_acquirers` - :doc:`../payment_acquirers`
- :doc:`../../websites/ecommerce/shopper_experience/payment_acquirer`

View File

@ -0,0 +1,32 @@
====
SIPS
====
`SIPS <https://sips.worldline.com/>`_ is an online payments solution from the multinational
Worldline.
Configuration
=============
.. seealso::
- :ref:`payment_acquirers/add_new`
Credentials tab
---------------
Odoo needs your **API Credentials** to connect with your SIPS account, which comprise:
- **Merchant ID**: The ID solely used to identify the merchant account with SIPS.
- **Secret Key**: The key to sign the merchant account with SIPS.
- **Secret Key Version**: The version of the key, pre-filled.
- **Interface Version**: Pre-filled, don't change it.
You can copy your credentials from your SIPS environment info documentation, in the section
**PROD**, and paste them in the related fields under the **Credentials** tab.
.. important::
If you are trying SIPS as a test, with the *TEST* credentials, change the **State** to *Test
Mode*. We recommend doing this on a test Odoo database, rather than on your main database.
.. seealso::
- :doc:`../payment_acquirers`

View File

@ -2,31 +2,48 @@
Stripe Stripe
====== ======
`Stripe <https://stripe.com/>`_ is a United States-based online payment solution `Stripe <https://stripe.com/>`_ is a United States-based online payment solution provider, allowing
provider, allowing businesses to accept **credit cards** and other payment methods. businesses to accept **credit cards** and other payment methods.
Enable Local Payment Methods Configuration
============================ =============
Local payment methods are payment methods that are only available for certain merchants .. seealso::
and customers countries and currencies. - :ref:`payment_acquirers/add_new`
The Stripe connector in Odoo supports the following local payment methods: Credentials tab
---------------
- Bancontact Odoo needs your **API Credentials** to connect with your Stripe account, which comprise:
- EPS
- Giropay
- iDeal:
- Przelewy24 (P24)
To enable specific Local Payment Methods with Stripe, list them as supported payment icons. - Publishable Key: The key solely used to identify the account with Stripe.
To do so, go to :menuselection:`Payment Acquirers --> Stripe --> Configuration` and add the desired payment methods in - Secret Key: The key to sign the merchant account with Stripe.
the **Supported Payment Icons** field. If the desired payment method is already listed, you don't have anything to do. - Webhook Signing Secret: If a webhook is enabled on your Stripe account
(:menuselection:`Developers --> webhooks`), this signing secret must be set to authenticate the
messages sent from Stripe to Odoo.
To retrieve the publishable and secret keys, log into your Stripe dashboard and go to
:menuselection:`Developers --> API Keys --> Standard Keys`
.. important::
If you are trying Stripe as a test, in the **test mode**, change the **State** to *Test
Mode*. We recommend doing this on a test Odoo database, rather than on your main database.
Enable local payment methods
****************************
Local payment methods are payment methods that are only available for certain merchants and
customers countries and currencies.
To enable specific local payment methods with Stripe, list them as supported payment icons. To do
so, go to :menuselection:`Payment Acquirers --> Stripe --> Configuration` and add the desired
payment methods in the **Supported Payment Icons** field. If the desired payment method is already
listed, you don't have anything to do. If a payment icon record doesn't exist in the database, its
related payment method is considered enabled with Stripe.
.. image:: media/stripe_enable_local_payment_method.png .. image:: media/stripe_enable_local_payment_method.png
:align: center :align: center
:alt: Select and add icons of payment methods you want to enable :alt: Select and add icons of the payment methods you want to enable
.. note:: .. seealso::
If a payment method icon doesn't exist at all in the database, the corresponding local payment method is always offered - :doc:`../payment_acquirers`
to customers.

View File

@ -2,41 +2,38 @@
How to get paid with wire transfers How to get paid with wire transfers
======================================= =======================================
**Wire Transfer** is the default payment method available. **Wire Transfer** is the default payment method available. The aim is providing your customers with
The aim is providing your customers with your bank details your bank details so they can pay on their own. This is very easy to start with but slow and
so they can pay on their own. inefficient process-wise. Opt for payment acquirers as soon as you can!
This is very easy to start with but slow and inefficient process-wise.
Opt for payment acquirers as soon as you can!
How to provide customers with payment instructions How to provide customers with payment instructions
================================================== ==================================================
Put your payment instructions in the **Thanks Message** of your payment method. Put your payment instructions in the **Thanks Message** of your payment method.
.. image:: media/payment_instructions.png .. image:: media/payment_instructions.png
:align: center :align: center
They will appear to the customers when they place an order. They will appear to the customers when they place an order.
.. image:: media/payment_customer_instructions.png .. image:: media/payment_customer_instructions.png
:align: center :align: center
How to manage an order once you get paid How to manage an order once you get paid
======================================== ========================================
Whenever a customer pays by wire transfer, the order stays in an Whenever a customer pays by wire transfer, the order stays in an intermediary stage **Quotation
intermediary stage **Quotation Sent** (i.e. unpaid order). Sent** (i.e. unpaid order). When you get paid, you confirm the order manually to launch the
When you get paid, delivery.
you confirm the order manually to launch the delivery.
How to create other manual payment methods How to create other manual payment methods
========================================== ==========================================
If you manage a B2B business, you can create other manually-processed If you manage a B2B business, you can create other manually-processed payment methods like paying by
payment methods like paying by check. check. To do so, just rename *Wire Transfer* or duplicate it.
To do so, just rename *Wire Transfer* or duplicate it.
.. image:: media/payment_check.png .. image:: media/payment_check.png
:align: center :align: center
.. seealso::
- :doc:`../payment_acquirers`