Comments (6)
Serializing CiviBanking transactions was necessary because there are not many distinct fields and there might be a lot of custom data per transaction.
I understand that, but perhaps APIv4 support would still be useful?
You should not rely on bank transactions for fundraising statistics anyway.
The transaction date is not of interest for our fundraising but for accounting purposes.
Would you be able to give my suggestion a try implementing?
Of course! I would suggest implementing it as a field in the configuration of the Existing Contribution Matcher. How about preserve_receive_date
?
from org.project60.banking.
Keep in mind this matcher can be configured to be in cancellation mode as well.
Yes, but I think it's fine to use the booking_date
as the cancel_date
in cancellation mode, as it shouldn't overwrite any existing information.
from org.project60.banking.
I'd suggest making it optionally configurable to not overwrite the date for keeping backwards compatibility. In general, the receive_date
semantically represents the "physical" booking date, as the money is not in your account until the actual transfer is completed, so the date which is being overwritten in your case seems to be more of an announcement date …?
from org.project60.banking.
Well, it is the date on which the donation is made. From a fundraising perspective, this information is more valuable. The actual booking date is important for our accounting department to reconcile with the bank accounts. However, this date is already available in the transaction.
Unfortunately, it is a pity that the transactions are stored in serialized form in the database and cannot be retrieved via APIv4, as otherwise it would be easy to create SearchKits that could display the donations combined with the data of the assigned transaction(s).
from org.project60.banking.
Serializing CiviBanking transactions was necessary because there are not many distinct fields and there might be a lot of custom data per transaction. You should not rely on bank transactions for fundraising statistics anyway.
Would you be able to give my suggestion a try implementing? I guess that's what @bjendres would have been suggested as well. Your workaround with value_propagation
also sounds practicable.
from org.project60.banking.
Sounds good, I think both interpretations make sense, depending on the setup. Therefore an additional configuration parameter for that matcher seems the right way forward. Keep in mind this matcher can be configured to be in cancellation mode as well.
However, the priority should always be not to break existing setups.
from org.project60.banking.
Related Issues (20)
- [DOCS] Merge and update old wiki style with docs.civicrm.org
- Search for account number under /civicrm/banking/search only leads to results when no spaces are included
- Only set bank account reference matching probability when contact is not found in other ways
- Existing contributions matcher: Partial and incorrect payments are closing existing contributions HOT 1
- Documentation updates
- Bug in `lookup_contactbyname` algorithm HOT 1
- delete permission HOT 1
- [PHP 8.1] Dashboard: Undefined array key
- Bug in settings form: jsoneditor mode is stored as integer instead of text HOT 1
- empty "name" or "_party_IBAN" breaks contribution HOT 1
- accounts tab always visible HOT 9
- Search for account number with Searchkit HOT 5
- [5.93] getTemplateVars instead of get_template_vars HOT 1
- CSV Importer action 'amountparse' broken HOT 3
- Just a thought: Use modern AI for reconciling transactions? HOT 3
- SmartyV3 compatibility (on CiviCRM 5.69.5 + PHP 8.1) HOT 10
- CiviBanking - module configuration not saved if json is invalid
- Linking a transaction to a transferred contribution
- Documentation: lookup_contact_by_name with quickfind (API) mode, or no mode set fails: Contact getquick is removed as of CiviCRM 5.66
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from org.project60.banking.