Before this commit the neutralize system introduced in v16 was using ORM
methods in order to change appropriate records. Although flexible, this approach
could lead to call some methods with side effects while neutralizing
(eg: overloads of write).
This patch converts the neutralize system to a safer "inert" SQL based approach
by migrating the generic method _neutralize to SQL files exposed in the
data folder.
Task id: 2961687
closes odoo/odoo#102792
X-original-commit: e5dbded9bb363351feff7ca8a56c7f8a6860f492
Related: odoo/enterprise#32580
Signed-off-by: Fabien Meghazi <fme@odoo.com>
Razorpay
Implementation details
Supported features
- Payment with redirection flow
- Manual capture
- Partial refunds
- Several payment methods such as debit/credit cards, netbanking, UPI, and others.
- Webhook.
In addition, Razorpay also allows to implement tokenization but requires passing the card secret for each transaction.
API and gateway
We choose to integrate with Razorpay Hosted Checkout. The other gateways were ruled out. See the task's dev notes for the details on the other gateways.
The version of the API implemented by this module is v1.
Merge details
The first version of the module was specified in task
2800823 and merged with PR
odoo/odoo#92848 in saas-15.5.
Testing instructions
The partner's phone number must be a valid Indian phone number. Example: +91123456789
See https://razorpay.com/docs/payments/payments/test-card-upi-details/ for the list of test payment details.