Amend an invoice will create a new one?

HI there,

i’m testing amend on sales invoice, I noticed that when done it create a new sales invoice named SI-00001-1. Is that by design?

I think it’s not correct. Moreover, invoice number is created in draft mode, so if it will never be submitted you will get “hole” in the sequence and that’she not allowed by law either.

How can be solved?

Yes it is by design.

you can create new one, there is duplicate option for the same instead of amend it.

If you think so then change it and send PR.

1 Like

So, you’re telling me that if i have to modify an invoice it’s need to duplicate? I’m not getting your point. Clearly SI-00001-1 is another series than SI-00001. I still think its a wrong design.

You forgot to answer the following:

Are you aware that to send a PR for this its needed to refactor Frappe ORM? A little more than 30 lines … :grin:

you [quote=“JoEz, post:3, topic:25127”]
So, you’re telling me that if i have to modify an invoice it’s need to duplicate?

you can modify any document still it is in Draft state. after submit you can’t modify it.
So, cancel it and create another, there is three options to do-

  1. Amend it, but it will save as SI-00001-1 to indicate amended document of SI-00001.
  2. Or use duplicate it. So, it will be SI-00002
  3. Or simply create new one.

Hope this answer your question.

[edit] :

you can create github issue for the same :smile:

Well …i am not accountant …feedback I have feedback from them:

  1. Amending has to modify same invoice and not create new one. Invoice number shouldn’t be changed

  2. Invoice number must be assigned when invoice is submitted and not in draft mode.

There are multiple discussions about this behavior throughout the forums, but no one has actually come up with a spec on how this should be taken forward.

Someone will have to come up with a spec and post on github.

Some links of previous discussions on this:

Why would you want to change an accounting document that has been cancelled? I agree with ERPNext’s approach. When the invoice is still ‘Draft’, you can change it. If it’s ‘Submitted’, you can no longer change it.[quote=“JoEz, post:5, topic:25127”]
Amending has to modify same invoice and not create new one. Invoice number shouldn’t be changed
I am yet to find any strong argument to support this claim.

You should view the suffix as version number. So SINV-00001-1 is first amendment of SINV-00001 etc.

1 Like

I’m not sure what you consider a strong argument …if an accountant tells me (a developer) i need to modify invoice once submitted …what i should answer? …keep your actual ERP?

I still not getting your point …are you an accountant? from accountant point of view SINV-00001-1 is not a new version but a completely new invoice series. Again, what i should answer them?

by the way none of you are answering my second question:

Let’s have an example:

Sales Invoice 1, 2,3,4 are in draft mode …none of that will be submitted for any reason; Sales Invoice 5,6,7 …n will be submitted. So accountant told me …where are Sales Invoice from 1 to 4? …simply answer Draft mode, never submitted because were “pro forma” invoices …accountant reply …well guy …you must declare that invoice …you need progressive counter and dates …so? What i should answer? Can anyone give me strong arguments on this?

1 Like

I’d be happy to open an issue, but seem no one care about this argument …most of the answer are “that’s by design” …kind of frustrating …

This is true. But I’ve seen multiple European users and North American users have concerns with this behavior. Indian users may have problems with the new GST Tax laws being implemented.

I think a detailed proposal (not just issue stating a problem, but a proposed solution) would invite much useful discussion across the globe, and help come up with a roadmap.

I don’t believe there is a trivial solution for this. So there would need to be detailed use cases discussed and ideas floated.

I’m an accountant.

Accountants actually don’t like accounting documents being changed. The usual procedure for an invoice that has been created but no longer needed will be to issue a credit note. As an auditor also, I would have to evaluate a company’s accounting software and controls if I find out that accounting documents can be changed.

ERPNext and SAP which I have experience with issues invoice numbers before it is finalized. If the sequence of the invoice number is an issue, you can start with a Quotation and then once it has been determined that there will no longer be any changes, create the invoice from the quotation.

Well …i reported what italian accountant told me …so if you like or not that’s it …at this point i think it’s better to fork ERPNext and have a localization with all the feature they need in place …

I agree with you …what u think better open a new one or re-open and old issue? So that we can continue discussion there …

Open a new one but reference the former discussion. If it’s a regulatory requirement in Europe, I think ERPNext should reconsider it.

Yes, but split each requirement (amend logic, draft naming) into its own issue for individual discussion.

Hopefully people with experience using other systems like SAP, Oracle, SAGE, etc will help in figuring out how other systems handle these requirements.

Here in Spain is as @joez says, you can not skip numbers or not mantain de sequence or create subseries. Even more, now here a point-of-sale tickets are ‘simplified invoices’, like full invoices without customer data against the default account, but they have to print all information and taxes as a complete invoice. A billed invoice is inmutable, if you want change you must create a invoice that complement that with own number (here are called ‘facturas rectificativas’, i dont known how translate it sorry … )

Not being able to have numbering jumps, as @joez also says, it does not make sense to number invoices in draft state (in spain), or at least with the same series as the validated and accounted.

In other erps, what I have seen is that there are two types of secuence methods for the series. The ‘strict’ ones, which fulfill the above, and the ‘normal’ ones that would work as is now erpnext.

You can check it with the tryton demo in their website so you do not have to mount anything or try an propietary erp. In the configuration of each module you choose which method to use. What if you can, in the case of the invoices, is to start another series when you close the fiscal year, for example putting the year as a prefix of the series in each fiscal year.

I am a programmer, but we have financiers in the company, any doubt I can consult without problem.

This is a complex issue because every country has its system. The ideal approach will be not to do it in one way or another, but to create an open method (I do not think bad idea the tryton approach) and grow with community feedback.

These workflows are not for pleasure, or from the internal workflow of companies. They are rules dictated by the governments and the fiscal departments, are necessary to respect the laws of each country.


The reason you would need to edit an invoice is because if an invoice has not been paid by its due date the company can start adding on late payment fees and interest

But shouldn’t that be a new invoice, if you would just add that to the existing invoice you would end up with multiple versions of the same invoice(number). If you would communicate with your debtor about one of these versions how are you going to set them apart?

Here in The Netherlands a submitted invoice can’t be changed, if you want to add extra fees or discount later on you will have to send a new invoice.

If you want to cancel the invoice you have submit you will have to make a credit invoice.

So from this point of view the amend function should create:

  1. a credit note for the original invoice
  2. a copy of the existing invoice in draft mode that you can edit and submit.

The versions numbers should be in the same range as the existing invoice.

I also don’t see a reason why a draft invoice wouldn’t be submitted and therefore no problem with the numbering. But maybe I’m missing the point here

I am not sure about the Netherlands but here we add it to the current invoice This creates an amended invoice not a duplicate. Software that is only availble in the UK allows late payment charges and interst to be put on in line with the Governments guidelines on what thise amounts are.

[quote=“Softwareprofs, post:19, topic:25127, full:true”]
I am not sure about the Netherlands but here we add it to the current invoice This creates an amended invoice not a duplicate.[/quote]

And this amended invoice get’s a new invoice number?