Add funds currently is not available feature in clientexec .
But manually in admin area you can add funds ; client and admin could manage this funds and use it on generated invoices.
Yeah, it be nice to be able to do this via the API. I am finding the API very limited. The hooks looks okay although a list of them without any other documentation isn't allot to go on either. I intend to try writing a script to manipulate the admin interface to do what I want. Might be as simple as leveraging auto login to get the session key and then hitting the endpoint that the button would trigger. Failing that its manipulating the database directly
Regarding the automatic renewals via credit I think my work around will be to allow the package to be upgraded and downgraded to different contract durations so the user can just say pay for three months or downgrade to 1 month and get a credit I can manually refund or whatever.
I think there may also be a way to generate the next invoice upon request. At Least i've seen a button to do that in what I think is another instance of clientexec. Ill let you know what i come up with when i get that far