I'm using GnuCash and not being able to easily do bulk changes or easily script it is quite annoying, for example after a slight mistake in a CSV import.
GnuCash has a scripting engine. If you have to do a specific correction very often, it might be worth it to implement something. If possible, the CSV should be preprocessed of course.
If nothing else works, a Gnucash file is XML. A bit annoying to work with, but quite possible.
Can you share a link to the docs for the scripting engine? I've seen conflicting information over the years and I'm not sure what the latest really is.
Internally, it uses Guile. I'm afraid there might not be a good user interface to edit the Guile source files, but at least Guile is much more pleasant to work with than C and offers way less paper cuts. I think it's mostly used for reports. You might have to create a plugin to expose your own scripts in the UI.
I feel like it could do with some tutorials and guides on Guile. I would have liked to be able to do reporting and invoicing with more control through scripts, but last time I looked at it I just gave up due to lack of docs.
Yeah, at some point I got the impression that I could use Guile to extend it, but then couldn't find any way to do it as an end user. Not sure if I was just wrong, or out of date.