Saturday, December 9, 2023
4 changes · 17.0
Miscellaneous changes
On deletion of records, foreign keys are updated. For larger tables (like account.move, account.bank.statement.line) this could take some time. adding a "not null btree index" on sparsely populated many2one fields significantly improves performance. In the analysis of deleting a bank statement line. Before: 7.4s to delete the bank statement line (missing index on suspense_statement_line_id consuming 99% of the execution time) 3.8s to delete the corresponding account move After: With the
Original PR description
On deletion of records, foreign keys are updated. For larger tables (like account.move, account.bank.statement.line) this could take some time. adding a "not null btree index" on sparsely populated many2one fields significantly improves performance. In the analysis of deleting a bank statement line. Before: 7.4s to delete the bank statement line (missing index on suspense_statement_line_id consuming 99% of the execution time) 3.8s to delete the corresponding account move After: With the indexes, a 700x performance improvement was found. This opportunity is taken to add an index on all many2one fields to account.move & bank.statement.line. Issue report by @tsb-odoo Forward-Port-Of: odoo/odoo#143852
SG Government has announced to change the GST-rate on 01 Jan 2024 MN from 8% to 9% Changes: - Added new taxes (8% -> 9%) - Added tax groups - Added migration script to l10n_sg to apply those changes task-3454556 Forward-Port-Of: odoo/odoo#145519 Forward-Port-Of: odoo/odoo#135105
Original PR description
SG Government has announced to change the GST-rate on 01 Jan 2024 MN from 8% to 9% Changes: - Added new taxes (8% -> 9%) - Added tax groups - Added migration script to l10n_sg to apply those changes task-3454556 Forward-Port-Of: odoo/odoo#145519 Forward-Port-Of: odoo/odoo#135105
The issue: the default currency for Montenegro is LYD (Libyan Dinar) instead of EUR The fix: Set it to EUR opw-3601783 Forward-Port-Of: odoo/odoo#145256
Original PR description
The issue: the default currency for Montenegro is LYD (Libyan Dinar) instead of EUR The fix: Set it to EUR opw-3601783 Forward-Port-Of: odoo/odoo#145256
Based on 50a91e0c531ec05a432cd8c468b74db27bd30985. By default pos_stripe does the authorization and capture in two steps. This is not supported for eftpos payments [1]. It can be supported in two ways: - always auth + capture in one step with the `automatic` `capture_method`, or - only auth + capture when manual isn't possible with the `manual_preferred` `capture_method` Although both could work, `manual_preferred` was chosen because: - it's a bit simpler to figure out whether to captu
Original PR description
Based on 50a91e0c531ec05a432cd8c468b74db27bd30985. By default pos_stripe does the authorization and capture in two steps. This is not supported for eftpos payments [1]. It can be supported in two…
Based on 50a91e0c531ec05a432cd8c468b74db27bd30985. By default pos_stripe does the authorization and capture in two steps. This is not supported for eftpos payments [1]. It can be supported in two ways:
- always auth + capture in one step with the `automatic` `capture_method`, or
- only auth + capture when manual isn't possible with the `manual_preferred` `capture_method`
Although both could work, `manual_preferred` was chosen because:
- it's a bit simpler to figure out whether to capture the payment in the frontend (we can just check card_present.brand),
- this keeps non-eftpos transactions the same, which is more in line with our stable policy
For completeness pos_restaurant_stripe was updated to not capture these eftpos payments, although this style of tipping isn't used in Australia.
To test similar steps as in 50a91e0c531ec05a432cd8c468b74db27bd30985 need to be taken:
1/ use an Australian Stripe account,
2/ allow discovery of simulated readers by passing {simulated: true}
to this.terminal.discoverReaders()
3/ manually simulating an eftpos payment via the browser
console (necessary per payment) [2]
To be safe this also guards against the possibility of there being no `charges` key on the payment intent. This was done elsewhere with 6a6057caf63d7e6a60dac190b2ea1ebb954d8f6a. It does seem that Stripe rolled back this change (maybe only for Stripe Terminal intents), because I always receive `charges` with the latest API version (2023-10-16). Additionally,
50a91e0c531ec05a432cd8c468b74db27bd30985 has been live for 3 months without issues, it would have caused errors if `charges` was missing.
[1] https://stripe.com/docs/terminal/payments/regional?integration-country=AU#integration-requirements
[2] posmodel.payment_methods[X].payment_terminal.terminal.setSimulatorConfiguration({testPaymentMethod: 'eftpos_au_debit'})
opw-3523604
Forward-Port-Of: odoo/odoo#145511
Forward-Port-Of: odoo/odoo#142603