Comments (8)
Do you have an xml example on how this looks with multiple reference documents?
from zugferd-csharp.
Have a look at https://edna-bundesverband.de/wp-content/uploads/ZUGFeRD-2-Umsetzungsempfehlungen-v.2.0.2.pdf page 33 chapter "2.5.3.12" (sorry this document is in German)
I think for every referenced invoice there might be a "ram:InvoiceReferencedDocument"-node with none or one date (BT-26) and the document reference (BT-25). For BT-25 I would take the unique invoice number.
from zugferd-csharp.
Alright. But how would it look with multiple reference documents?
Like this:
<ram:InvoiceReferencedDocument>
<ram:IssuerAssignedID>RECHNUNG000</ram:IssuerAssignedID>
<ram:FormattedIssueDateTime>
<qdt:DateTimeString format="102">20190902</qdt:DateTimeString>
</ram:FormattedIssueDateTime>
</ram:InvoiceReferencedDocument>
<ram:InvoiceReferencedDocument>
<ram:IssuerAssignedID>RECHNUNG000</ram:IssuerAssignedID>
<ram:FormattedIssueDateTime>
<qdt:DateTimeString format="102">20190902</qdt:DateTimeString>
</ram:FormattedIssueDateTime>
</ram:InvoiceReferencedDocument>
?
from zugferd-csharp.
Yes that seemed to be correct for me (except the use of the same dokid and -date in both nodes).
I think it is like the additional documents that are included in the xml-file via the node "AdditionalReferencedDocument".
And so there must be an
AddInvoiceReferencedDocument
like there is an
AddAdditionalReferencedDocument
for the included files.
from zugferd-csharp.
alright. Unfortunately this will break the API, i.e. it'll be necessary to release a new major version then
from zugferd-csharp.
I have checked a sample XRechnung-file with a list of two refrenced invoices (your sample above) in the kosit validator and it did not accept this file (with only one referenced invoice everything is fine).
A short look in the ZUGFeRD-reference shows that there is only one "InvoiceReferencedDocument"-node allowed. XRechnung v2.2 says"0..*". And this is not a misprint because the description of this node says: "Eine Gruppe von Informationselementen, die Informationen รผber eine oder mehrere vorausgegangene Rechnung(en) enthalten"
I hate it.
Because of the different "interpretation" of the e-invoice specification it make no sence at this time to modify your API.
Sorry for creating this issue.
Regards Marcus
from zugferd-csharp.
Thanks a lot for your investigation!
Unfortunately this is not the first time that there is 'something' between the docs and the implementation.
How about going for a list, stating in the docs that currently only 0..1 is supported by the validators and adding a occurrency check to the validator which is executed automatically before saving a file?
from zugferd-csharp.
I think this idea sounds good.
from zugferd-csharp.
Related Issues (20)
- TradeLineItem attribute "ram:ExemptionReason" is useless with Profile.XRechnung HOT 2
- XRechnung validation fails because of empty GrossPriceProductTradePrice-Elements HOT 7
- Insurance Tax HOT 11
- Invoice kind of not readable HOT 2
- Support for XRechnung 2.1.1 and 2.2.0 HOT 2
- KoSIT Validator don't accept file after 7.0.1 upgrade HOT 3
- XRechnung and TradeLineCommentItem HOT 3
- XRechnung 2.2/2.1 Validation fails with BR-S-08 & BR-CO-10 because of only 2 fraction digits for SpecifiedTradeSettlementLineMonetarySummation
- Add Support for different XRechnung Versions HOT 1
- It is not possible to create XRechnung in version 2.2.0 HOT 5
- public instead of internal? HOT 4
- Return ZUGFeRD version HOT 1
- Notes of type "PayeePartyCreditorFinancialAccount" require corresponding "PayeeSpecifiedCreditorFinancialInstitution" nodes HOT 4
- Missing translation for TaxCategoryCode with value of "K"
- ZF 2.0 Profile Comfort Validation fails because of existing Name in HeaderExchangedDocument ?! HOT 4
- TypeCode for AdditionalReferencedDocument HOT 1
- AdditionalReferencedDocument should be available in XRechnung profile HOT 5
- Missing distinction: BasisQuantity.UnitCode vs. BilledQuantity.UnitCode HOT 4
- ram:Name is written twice HOT 6
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. ๐๐๐
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google โค๏ธ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from zugferd-csharp.