only check batch currency match when adding a financial_trxn #23741
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Overview
Fix for regression(?) on Gift Aid extension https://lab.civicrm.org/extensions/ukgiftaid/-/issues/30 resulting from #20884 .
Before
The check for currency match looks up a financial_trxn using the
entity_id
parameter. But this is only afinancial_trxn_id
in the case whereentity_table
is adding financial transactions to the batch.This leads to errors when batching contributions (e.g. https://lab.civicrm.org/extensions/ukgiftaid/-/issues/30#note_75292 ) and I imagine memberships too.
After
Only checks the currency matches when adding a
financial_trxn
.Comments
I'm not sure whether it makes sense to write a separate check that works for checking contribution currencies. For other entities that can be batched (memberships?) I don't think it would make any sense, but I'm not really sure how these are used.