Adyen Payment Acquirer/Pay by Link Patch

payment_adyen_paybylink
REPOSITORY
REPOSITORYodoo/odoo
GIT
GIThttps://github.com/odoo/odoo.git
GIT FOLDER
GIT FOLDERhttps://github.com/odoo/odoo/tree/14.0/payment_adyen_paybylink
VERSION
VERSION 1.0
CATEGORY
CATEGORYAccounting/Payment
LICENSE
LICENSELGPL-3
APPLICATION
APPLICATIONNo
AUTO-INSTALLABLE
AUTO-INSTALLABLEYes
AUTHORS
AUTHORS
MAINTAINERS
MAINTAINERS
COMMITTERS
COMMITTERSAntoine Vandevenne (anv), Valentin Chevalier
WEBSITE
WEBSITE
LAST TRACKING UPDATE
LAST TRACKING UPDATE2026-07-06 00:14:31
ODOO DEPENDENCIES
ODOO DEPENDENCIES odoo/odoo:
    - payment_adyen
    - payment
    - account
    - base_setup
    - base
    - web
    - product
    - mail
    - bus
    - web_tour
    - uom
    - analytic
    - portal
    - web_editor
    - http_routing
    - auth_signup
    - digest
    - resource
PYTHON DEPENDENCIES
PYTHON DEPENDENCIES Not have
SYSTEM DEPENDENCIES
SYSTEM DEPENDENCIES Not have
DESCRIPTION
DESCRIPTION
This module migrates the Adyen implementation from the Hosted Payment Pages API to the Pay by Link
API.
    

Code Analysis

Views touched (1)
XML IDNameModelTypeStatus
acquirer_form_adyen acquirer.form.adyen payment.acquirer Inherits payment.acquirer_form
HTTP endpoints (1)
Route(s)HandlerAuthTypeMethodsFlags
(inherited route override) AdyenPayByLinkController.adyen_notification inherited http ALL sudo
Models touched (2)

New fields (5)
  • adyen_api_key Char
    groups='base.group_user' help='The API key of the webservice user' required_if_provider='adyen' string='API Key'
  • adyen_checkout_api_url Char
    help='The base URL for the Checkout API endpoints' required_if_provider='adyen' string='Checkout API URL'
  • adyen_hmac_key Char
    groups='base.group_user' help='The HMAC key of the webhook' required_if_provider='adyen' string='HMAC Key'
  • adyen_skin_code Char
    default='Do not use this field'
  • adyen_skin_hmac_key Char
    default='Do not use this field'
Public methods (4)
  • adyen_form_generate_values(self, values)
  • adyen_get_form_action_url(self)
    Override of adyen_get_form_action_url
  • create(self, values_list)
    @api.model_create_multi
  • write(self, values)

New fields (0)

No new fields.

Public methods (1)
  • adyen_create(self, values)
    @api.model
    When the customer lands on the `/payment/process` route, `/payment/process/poll` try to find the transaction whose `date` field is between yesterday and now. Since the `date` field is only set when the state of the transaction is changed, if the customer comes back before the webhook, he will see a "transaction not found" page because the value of the `date` field would be `False`.
REPOSITORY
REPOSITORYodoo/odoo
GIT
GIThttps://github.com/odoo/odoo.git
GIT FOLDER
GIT FOLDERhttps://github.com/odoo/odoo/tree/13.0/payment_adyen_paybylink
VERSION
VERSION 1.0
CATEGORY
CATEGORYAccounting/Payment
LICENSE
LICENSELGPL-3
APPLICATION
APPLICATIONNo
AUTO-INSTALLABLE
AUTO-INSTALLABLEYes
AUTHORS
AUTHORS
MAINTAINERS
MAINTAINERS
COMMITTERS
COMMITTERSAntoine Vandevenne (anv), Valentin Chevalier
WEBSITE
WEBSITE
LAST TRACKING UPDATE
LAST TRACKING UPDATE2026-07-06 00:06:44
ODOO DEPENDENCIES
ODOO DEPENDENCIES odoo/odoo:
    - payment_adyen
    - payment
    - account
    - base_setup
    - base
    - web
    - product
    - mail
    - bus
    - web_tour
    - uom
    - analytic
    - portal
    - web_editor
    - http_routing
    - auth_signup
    - digest
    - resource
PYTHON DEPENDENCIES
PYTHON DEPENDENCIES Not have
SYSTEM DEPENDENCIES
SYSTEM DEPENDENCIES Not have
DESCRIPTION
DESCRIPTION
This module migrates the Adyen implementation from the Hosted Payment Pages API to the Pay by Link
API.
    

Code Analysis

Views touched (1)
XML IDNameModelTypeStatus
acquirer_form_adyen acquirer.form.adyen payment.acquirer Inherits payment.acquirer_form
HTTP endpoints (1)
Route(s)HandlerAuthTypeMethodsFlags
(inherited route override) AdyenPayByLinkController.adyen_notification inherited http ALL sudo
Models touched (2)

New fields (5)
  • adyen_api_key Char
    groups='base.group_user' help='The API key of the webservice user' required_if_provider='adyen' string='API Key'
  • adyen_checkout_api_url Char
    help='The base URL for the Checkout API endpoints' required_if_provider='adyen' string='Checkout API URL'
  • adyen_hmac_key Char
    groups='base.group_user' help='The HMAC key of the webhook' required_if_provider='adyen' string='HMAC Key'
  • adyen_skin_code Char
    default='Do not use this field'
  • adyen_skin_hmac_key Char
    default='Do not use this field'
Public methods (4)
  • adyen_form_generate_values(self, values)
  • adyen_get_form_action_url(self)
    Override of adyen_get_form_action_url
  • create(self, values_list)
    @api.model_create_multi
  • write(self, values)

New fields (0)

No new fields.

Public methods (1)
  • adyen_create(self, values)
    @api.model
    When the customer lands on the `/payment/process` route, `/payment/process/poll` try to find the transaction whose `date` field is between yesterday and now. Since the `date` field is only set when the state of the transaction is changed, if the customer comes back before the webhook, he will see a "transaction not found" page because the value of the `date` field would be `False`.