Not able to register payment for Invoice on Advance Payment

Hi Team,

I have created a Sale Quotation after activating advance payment option.
I tried to create invoice for advance payment by clicking on « Invoice an Advance Payment » button:

This is successfully generating the invoice for me and I am also able to validate it. But I am not able to register payment for that invoice.

While confirming Payment on Payment Voucher it gives below error:
image

I am trying to add pay line manually using below option in Payment voucher:

As you can see I am not able to add amounts to pay line as they are not editable. After adding payline if I try to confirm payment it gives me below exception:
image
Below is the stack trace of Null Pointer exception:

←[2;39m2021-05-17 19:06:30.042←[m ←[31mERROR←[m ←[35m25484←[m ←[2;39m—←[m ←[2;39m[nio-8082-exec-3]←[m ←[36mc.a.exception.service.TraceBackService ←[m ←[2;39m:←[m java.lang.NullPointerException
at com.axelor.apps.account.service.payment.paymentvoucher.PaymentVoucherConfirmService.createMoveAndConfirm(PaymentVoucherConfirmService.java:230)
at com.google.inject.persist.jpa.JpaLocalTxnInterceptor.invoke(JpaLocalTxnInterceptor.java:56)
at com.axelor.apps.account.service.payment.paymentvoucher.PaymentVoucherConfirmService.confirmPaymentVoucher(PaymentVoucherConfirmService.java:144)
at com.google.inject.persist.jpa.JpaLocalTxnInterceptor.invoke(JpaLocalTxnInterceptor.java:64)
at com.axelor.apps.account.web.PaymentVoucherController.confirmPaymentVoucher(PaymentVoucherController.java:139)
at sun.reflect.GeneratedMethodAccessor2388.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at com.axelor.meta.ActionHandler.call(ActionHandler.java:185)
at com.axelor.meta.schema.actions.ActionMethod.evaluate(ActionMethod.java:76)
at com.axelor.meta.schema.actions.Action.execute(Action.java:98)
at com.axelor.meta.schema.actions.Action.wrap(Action.java:107)
at com.axelor.meta.schema.actions.ActionGroup.evaluate(ActionGroup.java:230)
at com.axelor.meta.schema.actions.Action.execute(Action.java:98)
at com.axelor.meta.schema.actions.Action.wrap(Action.java:107)
at com.axelor.meta.schema.actions.ActionGroup.evaluate(ActionGroup.java:230)

Can anyone please help me out with how to use/configure Advance Payment option in axelor ?

Hello,

Check if the account of this customer has the option « reconcile »

accounting > configuration > finance > account accounting
« used to be sold of customer » and « reconcile » as to be check

(sorry for bad key word, I have the french version)

Hello @dtneo ,

Thanks for looking into this. I can see that the reconcile option for this partner (customer) account is enabled. I am still facing this issue.

I did some further digging and it seems that the « Validate » action on invoice is not generating Invoice Set for advance payments of invoice. I validated it by checking records in database as follows:

  • Invoice record in account_invoice table has status as validated
  • But this invoice don’t have any corresponding set invoices. (Checked this in account_invoice_advance_payment_invoice_set)

It seems like I have missed some configuration. Do you know how can I correctly setup Advance Payments?

I try to help because sometimes I’m facing weird situation.
I hope to be useful.

Thank you for checking the reconcile, and maybe this was useless because we see on your third images, there is an invoice line, so in accounting you have possibility to join lines.

But the invoice is with 0 on amount. Do you define a % of advance payment ?


Apps configuration > Manage Apps > Accounting > Accont configuration > Product with advance paiment.

But to be honest, I used it and failed totally my work.
Use for test.

Hi @dtneo

I was finally able to resolve this issue.
I had accidently enabled below option:
App Management -> Account Config -> Payment vouchers on invoice

This caused issues while registering payment as it tried to generate voucher for that invoice.

We didn’t have requirement for vouchers so disabling this option resolved the issue for us.

1 J'aime