Sale Order Payment Link Generator
by Kitworks Systems| Odoo Apps Dependencies | sale |
| Technical Name | kw_generate_payment_link_so |
| License | LGPL-3 |
| Website | https://kitworks.systems/ |
| Versions | 13.0 14.0 15.0 16.0 17.0 18.0 19.0 |
Payment-link generator for Sale Orders
A developer-toolkit module that adds a generate_payment_link() method on sale.order. Builds an HMAC-SHA256 signed URL pointing at the standard Odoo /payment/pay endpoint — works with any payment acquirer the company has activated. Reuse from custom buttons, email templates, chatbots or scheduled actions.
Signed payment URL
Builds /payment/pay?reference=...&amount=...&access_token=... with an HMAC-SHA256 token derived from partner, amount and currency.
Provider-agnostic
Reuses the standard /payment/pay flow — whichever Odoo payment acquirer is activated will be available on the page (Stripe, PayPal, custom UA acquirers, etc.).
Developer building block
No buttons, no actions, no UI. Call so.generate_payment_link() from any custom module — email template, chatbot, share dialog, scheduled job.
Tamper-resistant
Token is HMAC-signed with the database secret. Modifying amount or currency in the URL invalidates the token; the standard endpoint rejects the request.
How it works
- Method, not field. Call
so.generate_payment_link()— it stores the access token on the SO and returns the URL string. - No payment-provider integration. The module does not implement Stripe, PayPal or any specific UA acquirer — that is the standard Odoo payment stack's responsibility.
- No UI surfacing. The user does not see anything until you wire up a button, an email body or another consumer.
Part of the Ukrainian Accounting Suite
Pair with the invoice-side variant or the lightweight payment page.
Questions or feedback?
Kitworks Systems supports the Ukrainian Accounting Suite. Reach out for installation help, bug reports or custom integrations.
Contact us