[ http://issues.apache.org/jira/browse/OFBIZ-93?page=all ]
Jacopo Cappellato updated OFBIZ-93:
-----------------------------------
Attachment: ss-ba.jpg
Si,
could you please have a look at the attached screenshot?
It shows what happens when I approve a return of type "store credit": a new
billing account is created and an (credit) invoice is created and also a
payment to refund the amount to the client.
Then two payment applications are also created and associated to the billing
account (see screenshot):
one is applied to the (credit) invoice and the other is not applied to any
invoice.
I guess that the payment application with the null invoiceId represents the
amount available (refunded) to the client in the billing account.
My questions are: how should I use it? What do I have to do if I just need to
apply a part of that amount to a new invoice?
Thanks
> Support BillingAcct + PaymentMethod for Payment
> -----------------------------------------------
>
> Key: OFBIZ-93
> URL: http://issues.apache.org/jira/browse/OFBIZ-93
> Project: OFBiz (The Open for Business Project)
> Issue Type: Improvement
> Components: accounting
> Reporter: Si Chen
> Assigned To: Si Chen
> Attachments: ofbiz-93.patch, order_billingAccount_co.patch, ss-ba.jpg
>
>
> The requirement is that a customer be able to use a billing account plus
> another form of payment, such as a credit card, for payment on an order. The
> billing account is to be used first.
> This would require the following changes:
> 1. In PaymentGatewayServices.java captureOrderPayments method, if the
> billing account has a positive balance, then first create a Payment of the
> EXT_BILL_ACT type, then a PaymentApplication of amountApplied = min(billing
> account balance, amount to capture.) This PaymentApplication MUST have an
> invoiceId which is already supplied as a parameter of the service.
> (Otherwise, the billing account balance will go down by the
> PaymentApplication.amountApplied) If there is an amount left over to
> capture, then amountToCapture = amountToCapture - billingAccountBalance. We
> can then loop through the OrderPaymentPreference to try to capture the
> remaining amount.
> 2. In BillingAccountWorker.getBillingAccountBalance, we need to replace
> current code which just loops through all invoices which are not PAID or
> CANCELLED and adds up their unpaid balances with new code which would find
> all PaymentApplication for which there is a billingAccountId and add up the
> amountApplied. This must be done because otherwise, once an invoice has been
> marked PAID, there would be no way to record that a portion of the billing
> account has been used to pay that invoice and hence permanently decrease its
> amount.
> On the mailing list we had discussed making the order of payment capture
> configurable. I can't think of an easy way to do this, however, with the
> current data model. I propose that for now we have PaymentGatewayServices
> basically capture billing account first, then other payment methods, which is
> a standard B2C process. If you have a B2B customer who wants to pay with a
> credit card, then use the accounting module to record a Credit Card payment
> and apply it to the Billing Account to bring down its balance.
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira