This is mostly a cleaning/refactoring change.
The current API for init hooks (pre, post, uninstall) is to pass
`cr, registry`.
But the first thing which was done by most
post init and uninstall hooks was to create an env using
the cr passed
e.g.
`env = api.Environment(cr, SUPERUSER_ID, {})`
and the `registry` argument was unused in all these hooks,
completely.
By changing the API of hooks to pass `env` instead
of `cr, registry`, we gain in average two lines in every
hooks:
- the line creating the env `env = api.Environment(cr, SUPERUSER_ID, {})`
- the line importing `api` and `SUPERUSER_ID`
Therefore removing ~250 lines of repeated code lines accross odoo/odoo and
odoo/enterprise.
In addition to these lines removed,
it also ease the API of init hooks for Odoo developers,
who are used to that `env` and not so much how to create an `env`
from a cursor.
Part-of: odoo/odoo#108254
AsiaPay
Implementation details
Supported features
- Payment with redirection flow.
- Webhook.
- Several payment methods including credit cards, chinese payment methods such as Alipay, and others.
In addition, AsiaPay also allows to implement manual capture, refunds, express checkout, and multi-currency processing.
API and gateway
We choose to integrate with the Client Post Through Browser gateway which covers the best our needs, out of the three that AsiaPay offers as of August 2022.
The entire API reference and the integration guides can be found on the [Integration Guide] (https://www.paydollar.com/pdf/op/enpdintguide.pdf).
The version of the API implemented by this module is v3.67.
Merge details
The first version of the module was specified in task
2845428 and merged with PR
odoo/odoo#98441 in saas-15.5.
Testing instructions
Card Number: 4335900000140045
Expiry Date: 07/2030
Name: testing card
CVC: 123
3DS Password: password