I think billing accounts are broken (or at least underimplemented).
Try this experiment.
1. Create a party with a billing account.
2. Sell something to him. (Use Account - Billing Accounts and check
available balance)
So far so good.
3. Quickship order. Again, so far so good.
4. Receive a payment.
5. Apply the payment to the invoice created above
You will note that the payment is not reflected in the available
balance.
6. Refund the entire order
You will note that neither the payment nor refund are reflected in the
available balance.
The opentaps folks have made some strides in making this better, but they
are still dealing with "legacy" Ofbiz code.
My customer needs to have this working and in a bullet-proof and intuitive
way. Every transaction on a billing account needs to be recorded and
reportable, especially including refunds and credits. I would like to go
back to the model shown on page 257 if the Data Model Resource Book.
Specifically, ofbiz makes use of the OrderPaymentPreferences entity which is
no where to be found in this model in relation to payments received, is
confusing and error prone.
I am going to write my own services to handle all this replacing much of the
code in BillingAccountWorker.java.
Is it possible to submit this back to Ofbiz so I can get updates in other
areas?
Skip