documentation/content/applications/finance/payment_acquirers/authorize.rst
Antoine Vandevenne (anv) 91c20a2c03 [MOV] content/*: move resource files into their related page's directory
Since odoo/documentation#903, the guideline for the location of new
resource (images, downloadable files, RST includes...) files is to place
those inside the directory of the RST page that references them.

For example, if `doc1.rst` has a reference to `image.png` and to
`download.zip`, the file structure should look like this:

├── parent_doc/
│     └── doc1/
│     │     └── image.png
│     │     └── download.zip
│     └── doc1.rst
│     └── doc2.rst
├── parent_doc.rst

Before this commit, most of the resource files were still located inside
'media' directories holding all the resource files referenced by RST
pages located at the same level as these directories. In the example
above, a single 'media' directory would hold all the resource files
referenced by both `doc1.rst` and `doc2.rst`. Doing so prevented us from
figuring out easily which resource file was referenced by which RST page
and, thus, lead to unused resource files piling up in the repository. It
also made it more complicated to define codeowners regex rules because a
team could not simply be assigned to `/some_page.*` but needed to be
assigned to both `/some_page\.rst` and to the location of 'media'.

In order to help new content writers figure out the guideline when
taking examples from other RST pages, this commit retroactively applies
the guideline to existing resource files and 'media' directories. The
left-over resource files that are not referenced by any RST page are
removed.

task-2497965

Part-of: odoo/documentation#2026
2022-05-20 14:03:47 +02:00

123 lines
4.7 KiB
ReStructuredText

=============
Authorize.Net
=============
`Authorize.Net <https://www.authorize.net>`__ is a United States-based online payment solution
provider, allowing businesses to accept **credit cards**.
.. image:: authorize/authorize-net.png
:align: center
:alt: Authorize.Net logo
This Payment Acquirer offers additional options that are not available for other :doc:`Payment
Acquirers <../payment_acquirers>`, such as the ability to process your customer's payment after
delivery.
Authorize.Net account
=====================
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
comprise:
- API Login ID
- Transaction Key
- Signature Key
To retrieve them, log into your Authorize.Net account, go to :menuselection:`Account --> Security
Settings --> General Security Settings --> API Credentials & Keys`, and generate your **Transaction
Key** and **Signature Key**.
.. image:: authorize/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::
If you are trying Authorize.Net as a test, with a *sandbox account*, change the :guilabel:`State`
to :guilabel:`Test Mode`. We recommend doing this on a test Odoo database, rather than on your
main database.
If you set :guilabel:`Test Mode` on Odoo and use an authorize.net account instead of a
sandbox.authorize.net account, it results in the following error: *The merchant login ID or
password is invalid or the account is inactive*.
Payment Flow
------------
The **Payment Flow** lets you decide 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.
This field is under the **Configuration** tab.
If you select *Redirection to the acquirer website*, make sure you add a **Default Receipt URL** and
a **Default Relay Response URL** to your Authorize.net account.
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:: authorize/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:: authorize/authorize-capture.png
:align: center
:alt: Hold the credit card payment until you capture or revoke it on Odoo
.. warning::
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::
- `Authorize.Net: Getting Started Guide
<https://support.authorize.net/s/article/Authorize-Net-Getting-Started-Guide>`__
- :doc:`../payment_acquirers`
- :doc:`../../websites/ecommerce/shopper_experience/payment_acquirer`