@dangl/angular-ava 1.1.2-beta0099 → 1.1.2-beta0110

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -85,6 +85,8 @@ export interface PartyInformationDto {
85
85
  bankingInformation?: BankingInformationDto[] | undefined;
86
86
  /** This can be used to specify a registration number for this party, e.g. a company registration number. It is usually used in GAEB XML commerce exchanges for bidders to supply their WEEE registration number, which is used to identify them as a registered WEEE company. */
87
87
  registrationNumber?: string | undefined;
88
+ /** This can be used to specify a tax id for this party. It is different from the VatId and the RegistrationNumber. For example, in Germany this would be the "Steuernummer". This is usually not mapped to any AVA exchanges, but it's used e.g. in the XRechnung electronic invoices. */
89
+ taxId?: string | undefined;
88
90
  }
89
91
  /** This is a class that represents the information about a bank connection. It is usually used within a PartyInformation. */
90
92
  export interface BankingInformationDto {
@@ -1,4 +1,4 @@
1
- import { ProjectDto } from "./ava-models";
1
+ import { ProjectDto } from './ava-models';
2
2
  /** This class represents an invoice */
3
3
  export interface Invoice {
4
4
  /** The number of the invoice */
@@ -15,7 +15,7 @@ export interface Invoice {
15
15
  references?: References | undefined;
16
16
  /** A text description of payment terms, e.g. cash discounts or payment conditions */
17
17
  paymentTerms?: string | undefined;
18
- /** In case of partial of final invoices, it's possible to reference the previous invoice numbers */
18
+ /** In case of partial or final invoices, it's possible to reference the previous invoice numbers */
19
19
  previousInvoices?: PreviousInvoice[] | undefined;
20
20
  /** Information about the buyer */
21
21
  buyer?: Organization | undefined;
@@ -24,18 +24,20 @@ export interface Invoice {
24
24
  /** A payee is someone who receives the payment that is different from the seller */
25
25
  payee?: Payee | undefined;
26
26
  /** If present, this is an unstructured text that can be used to give additional information
27
- about the invoice. */
27
+ about the invoice. */
28
28
  invoiceNotes?: InvoiceNote[] | undefined;
29
29
  /** The period during which the services or goods were delivered */
30
30
  invoicePeriod?: InvoicePeriod | undefined;
31
+ /** Information about the delivery
32
+ BG-13 in XRechnung */
33
+ deliveryInformation?: DeliveryInformation | undefined;
31
34
  /** Totals for the invoice */
32
35
  totals?: InvoiceTotals | undefined;
33
36
  /** Instructions how to perform the payment */
34
37
  paymentInstructions?: PaymentInstructions | undefined;
35
38
  /** Attached documents to the invoice */
36
39
  documents?: SupportingDocument[] | undefined;
37
- /** This is used to list VAT by category, e.g. for invoices
38
- where parts are in different VAT categories */
40
+ /** This is used to list VAT by category, e.g. for invoices where parts are in different VAT categories */
39
41
  vatBreakdown?: VatBreakdown[] | undefined;
40
42
  /** Allowances / deductions on the invoice */
41
43
  allowances?: InvoiceAllowance[] | undefined;
@@ -60,25 +62,38 @@ export declare enum InvoiceType {
60
62
  /** This class holds typical references used in an invoice */
61
63
  export interface References {
62
64
  /** An internal reference used by the buyer, this can also be used as the
63
- 'Leitweg-ID' in Germany */
65
+ 'Leitweg-ID' in Germany
66
+ BT-10 in XRechnung. */
64
67
  buyerReference?: string | undefined;
65
- /** Reference to a project */
68
+ /** Reference to a project
69
+ BT-11 in XRechnung. */
66
70
  projectReference?: string | undefined;
67
- /** Reference to a contract */
71
+ /** Reference to a contract
72
+ BT-12 in XRechnung. */
68
73
  contractReference?: string | undefined;
69
- /** Reference to a purchase order created by the buyer */
74
+ /** Reference to a purchase order created by the buyer
75
+ BT-13 in XRechnung. */
70
76
  purchaseOrderReference?: string | undefined;
71
- /** Reference to a sales order created by the seller */
77
+ /** Reference to a sales order created by the seller
78
+ BT-14 in XRechnung. */
72
79
  salesOrderReference?: string | undefined;
73
- /** Reference to a delivery note */
80
+ /** Reference to a delivery note
81
+ BT-15 in XRechnung. */
74
82
  receivingAdviceReference?: string | undefined;
75
- /** Reference to a dispatch advice */
83
+ /** Reference to a dispatch advice
84
+ BT-16 in XRechnung. */
76
85
  dispatchAdviceReference?: string | undefined;
77
- /** Reference to a tender or lot */
86
+ /** Reference to a tender or lot
87
+ BT-17 in XRechnung. */
78
88
  tenderOrLotReference?: string | undefined;
79
89
  /** Reference to a custom item, e.g. a phone number, person,
80
- contract or anything that would identify the invoice in the buyer's system */
90
+ contract or anything that would identify the invoice in the buyer's system
91
+ BT-18 in XRechnung. */
81
92
  invoicedObjectIdentifier?: string | undefined;
93
+ /** This is a reference for accounting, like a cost center or similar. In German,
94
+ this would be a "Kostenstelle".
95
+ BT-19 in XRechnung. */
96
+ accountingReference?: string | undefined;
82
97
  }
83
98
  /** References to previous invoices */
84
99
  export interface PreviousInvoice {
@@ -117,6 +132,9 @@ export interface Organization {
117
132
  countryCode?: string | undefined;
118
133
  /** The state of the organization, e.g. a federal state in Germany */
119
134
  state?: string | undefined;
135
+ /** This provides some additional legal information.
136
+ BT-33 in XRechnung, and this is only used for the seller. */
137
+ additionalLegalInformation?: string | undefined;
120
138
  }
121
139
  /** Represents a payee, meaning someone that receives the payment */
122
140
  export interface Payee {
@@ -125,12 +143,13 @@ export interface Payee {
125
143
  /** The identifier of the payee */
126
144
  identifier?: string | undefined;
127
145
  /** A registered identifier for the payee, e.g. a VAT ID
128
- or Tax ID */
146
+ or Tax ID */
129
147
  legalRegistrationIdentifier?: string | undefined;
130
148
  }
131
149
  /** Represents a note / text in an invoice */
132
150
  export interface InvoiceNote {
133
- /** Short summary / heading */
151
+ /** Short summary / heading. Should be a text code from this list:
152
+ https://unece.org/fileadmin/DAM/trade/untdid/d16b/tred/tred4451.htm */
134
153
  shortText?: string | undefined;
135
154
  /** Explanation of this note */
136
155
  longText?: string | undefined;
@@ -142,27 +161,61 @@ export interface InvoicePeriod {
142
161
  /** The end date */
143
162
  end?: Date | undefined;
144
163
  }
164
+ /** Information about the delivery */
165
+ export interface DeliveryInformation {
166
+ /** BT-70 in XRechnung */
167
+ deliverToName?: string | undefined;
168
+ /** BT-71 in XRechnung */
169
+ deliverToLocationIdentifier?: string | undefined;
170
+ /** BT-72 in XRechnung */
171
+ deliveryDate?: Date | undefined;
172
+ /** BG-15 in XRechnung */
173
+ deliveryAddress?: DeliveryAddress | undefined;
174
+ }
175
+ /** Address for deliveries */
176
+ export interface DeliveryAddress {
177
+ /** The address. BT-75, BT-76 and BT-165 in XRechnung. */
178
+ address?: string | undefined;
179
+ /** The city. BT-77 in XRechnung. */
180
+ city?: string | undefined;
181
+ /** The zip code. BT-78 in XRechnung. */
182
+ zipCode?: string | undefined;
183
+ /** The ISO 3166-1 2 letter country code. BT-80 in XRechnung. */
184
+ countryCode?: string | undefined;
185
+ }
145
186
  /** Totals for the invoice */
146
187
  export interface InvoiceTotals {
147
- /** Sum of all invoice items in net. */
188
+ /** Sum of all invoice items in net.
189
+ BT-106 in XRechnung. */
148
190
  totalNet?: number | undefined;
149
- /** This is the sum of all allowances (e.g. deductions or withheld tax) in the invoice */
191
+ /** This is the sum of all allowances (e.g. deductions or withheld tax) in the invoice
192
+ BT-107 in XRechnung. */
150
193
  totalAllowances?: number | undefined;
151
194
  /** This is the sum of all charges in the invoice, except VAT. For example, late
152
- fees or surcharges. */
195
+ fees or surcharges.
196
+ BT-108 in XRechnung. */
153
197
  totalCharges?: number | undefined;
154
198
  /** This is the total net value of the invoice after applied allowances and charges,
155
- meaning the actual net sum to be paid. */
199
+ meaning the actual net sum to be paid.
200
+ BT-109 in XRechnung. */
156
201
  totalAfterDeductions?: number | undefined;
157
- /** The total amount of VAT in the invoice. */
202
+ /** The total amount of VAT in the invoice.
203
+ BT-110 in XRechnung. */
158
204
  totalVatAmount?: number | undefined;
159
- /** The total gross amount of the invoice, including all taxes and deductions. */
205
+ /** The total gross amount of the invoice, including all taxes and deductions.
206
+ BT-112 in XRechnung. */
160
207
  totalGross?: number | undefined;
161
208
  /** The total amount that has already been paid for this invoice, e.g. used when
162
- previous invoice sums are included here that have already been paid. */
209
+ previous invoice sums are included here that have already been paid.
210
+ BT-113 in XRechnung. */
163
211
  alreadyPaidTotal?: number | undefined;
212
+ /** If this is given, this specifies if any rounding amount is applied to the invoice,
213
+ before calculating the TotalToBePaid value.
214
+ BT-114 in XRechnung. */
215
+ payableRoundingAmount?: number | undefined;
164
216
  /** The sum that needs to be paid for this invoice. This is the total gross amount
165
- minus the already paid amount. */
217
+ minus the already paid amount.
218
+ BT-115 in XRechnung. */
166
219
  totalToBePaid?: number | undefined;
167
220
  }
168
221
  /** Instructions how payment for an invoice should be provided. */
@@ -170,21 +223,40 @@ export interface PaymentInstructions {
170
223
  /** Additional text to describe the payment instructions. */
171
224
  description?: string | undefined;
172
225
  /** This should be a code according to UN/ECE 4461
173
- to identify the type of payment. For example, code "58" means SEPA Credit Transfer,
174
- and code "30" means non-SEPA Credit Transfer. */
226
+ to identify the type of payment. For example, code "58" means SEPA Credit Transfer,
227
+ and code "30" means non-SEPA Credit Transfer.
228
+ See this list: https://unece.org/fileadmin/DAM/trade/edifact/code/4461cl.htm */
175
229
  paymentTypeCode?: string | undefined;
230
+ /** If a SEPA direct debit payment mean is used, then this reference should be provided.
231
+ It's the creditor identifier in SEPA, in German "Gläubiger-Identifikationsnummer".
232
+ Field BT-90 in XRechnung. */
233
+ paymentCreditorIdentifier?: string | undefined;
176
234
  /** A list of payment means that can be used to pay the invoice. */
177
235
  paymentMeans?: PaymentMeans[] | undefined;
178
236
  }
179
237
  /** Represents a payment means for an invoice */
180
238
  export interface PaymentMeans {
181
- /** This is typically the IBAN or account number */
239
+ /** This is typically the IBAN or account number
240
+ BT-84 in XRechnung. */
182
241
  accountIdentifier?: string | undefined;
183
242
  /** The name for the account, typically the name of the owner for
184
- a bank account. */
243
+ a bank account.
244
+ BT-85 in XRechnung. */
185
245
  accountName?: string | undefined;
186
- /** This can be the BIC */
246
+ /** This can be the BIC
247
+ BT-86 in XRechnung. */
187
248
  serviceProviderIdentifier?: string | undefined;
249
+ /** If used, this is the mandate id for direct debit under which
250
+ the direct debit will be performed
251
+ BT-89 in XRechnung. */
252
+ directDebitMandateId?: string | undefined;
253
+ /** If used, this is the IBAN for direct debit
254
+ BT-91 in XRechnung. */
255
+ directDebitIban?: string | undefined;
256
+ /** The payment id, e.g. a reference number for the payment. In German,
257
+ this would be called "Verwendungszweck".
258
+ BT-83 in XRechnung. */
259
+ paymentId?: string | undefined;
188
260
  }
189
261
  /** Represents a document / attachment that is included with the invoice */
190
262
  export interface SupportingDocument {
@@ -220,11 +292,11 @@ export interface VatBreakdown {
220
292
  /** The category of the VAT */
221
293
  vatCategory?: VatCategory | undefined;
222
294
  /** The actual tax rate as a decimal value,
223
- e.g. 19% would be 0.19 */
295
+ e.g. 19% would be 0.19 */
224
296
  taxRate?: number | undefined;
225
297
  /** If the VAT is exempt, there should be a description here.
226
- For example, in reverse charge scenarios, this text
227
- should contain a reference to "Reverse charge according to ...". */
298
+ For example, in reverse charge scenarios, this text
299
+ should contain a reference to "Reverse charge according to ...". */
228
300
  vatExemptionReasonText?: string | undefined;
229
301
  /** A code from the VAT exemption reason code list(VATEX)“ */
230
302
  vatExemptionReasonCode?: string | undefined;
@@ -247,19 +319,21 @@ export interface InvoiceAllowance {
247
319
  /** The net amount of the allowance */
248
320
  netAmount?: number | undefined;
249
321
  /** If this is a relative / percentage allowance, this should be set
250
- and give the base amount that is being used for the calculation */
322
+ and give the base amount that is being used for the calculation */
251
323
  relativeAllowanceBaseAmount?: number | undefined;
252
324
  /** If this is a relative / percentage allowance, this should be set
253
- and be given in decimal representation, meaning 19% would be 0.19 */
325
+ and be given in decimal representation, meaning 19% would be 0.19 */
254
326
  relativeAllowancePercentage?: number | undefined;
255
327
  /** The VAT category for the allowance */
256
328
  vatCategory?: VatCategory | undefined;
257
329
  /** The actual tax rate as a decimal value,
258
- meaning 19% would be 0.19 */
330
+ meaning 19% would be 0.19 */
259
331
  vatRate?: number | undefined;
260
- /** A description of the allowance. */
332
+ /** A description of the allowance. This should not be set it ReasonCode
333
+ is provided, otherwise this one takes precedence. */
261
334
  reason?: string | undefined;
262
- /** A reason code for the allowance according to UNTDID 5189. */
335
+ /** A reason code for the allowance according to UNTDID 5189.
336
+ See this list: https://unece.org/fileadmin/DAM/trade/untdid/d16b/tred/tred5189.htm */
263
337
  reasonCode?: string | undefined;
264
338
  }
265
339
  /** This describes an charge in an invoice, which is a surcharge to the total amount */
@@ -267,19 +341,21 @@ export interface InvoiceCharge {
267
341
  /** The net amount of the charge */
268
342
  netAmount?: number | undefined;
269
343
  /** If this is a relative / percentage charge, this should be set
270
- and give the base amount that is being used for the calculation */
344
+ and give the base amount that is being used for the calculation */
271
345
  relativeChargeBaseAmount?: number | undefined;
272
346
  /** If this is a relative / percentage charge, this should be set
273
- and be given in decimal representation, meaning 19% would be 0.19 */
347
+ and be given in decimal representation, meaning 19% would be 0.19 */
274
348
  relativeChargePercentage?: number | undefined;
275
349
  /** The VAT category for the charge */
276
350
  vatCategory?: VatCategory | undefined;
277
351
  /** The actual tax rate as a decimal value,
278
- meaning 19% would be 0.19 */
352
+ meaning 19% would be 0.19 */
279
353
  vatRate?: number | undefined;
280
- /** A description of the charge. */
354
+ /** A description of the charge. This should not be set it ReasonCode
355
+ is provided, otherwise this one takes precedence. */
281
356
  reason?: string | undefined;
282
- /** A reason code for the charge according to UNTDID 7161. */
357
+ /** A reason code for the charge according to UNTDID 7161.
358
+ See this list: https://unece.org/fileadmin/DAM/trade/untdid/d16b/tred/tred5189.htm */
283
359
  reasonCode?: string | undefined;
284
360
  }
285
361
  /** Represents a single invoice line item */
@@ -289,17 +365,17 @@ export interface InvoiceLineItem {
289
365
  /** An unstructured note to classify line items */
290
366
  note?: string | undefined;
291
367
  /** A seller-defined object identifier for this line item,
292
- meaning an identifier for the actual line. This could be
293
- a numbering sequence or a reference to a product. */
368
+ meaning an identifier for the actual line. This could be
369
+ a numbering sequence or a reference to a product. */
294
370
  objectIdentifier?: string | undefined;
295
371
  /** The actual invoiced quantity of the line item */
296
372
  quantity?: number | undefined;
297
373
  /** A code for the unit of the quantity. This should be a code as defined
298
- in UN/ECE Recommendation No. 20 „Codes for Units of Measure Used in
299
- International Trade“ und UN/ECE Recommendation No 21 „Codes for Passengers,
300
- Types of Cargo, Packages and Packaging Materials(with Complementary Codes for Package Names) */
374
+ in UN/ECE Recommendation No. 20 „Codes for Units of Measure Used in
375
+ International Trade“ und UN/ECE Recommendation No 21 „Codes for Passengers,
376
+ Types of Cargo, Packages and Packaging Materials(with Complementary Codes for Package Names) */
301
377
  unitCode?: string | undefined;
302
- /** The net amount for this line item */
378
+ /** The net amount for this line item. This is the total price for positions */
303
379
  netAmount?: number | undefined;
304
380
  /** A reference to an item in the buyers purachase order */
305
381
  purchaseOrderReference?: string | undefined;
@@ -323,10 +399,10 @@ export interface LineItemAllowance {
323
399
  /** The net amount of the allowance */
324
400
  netAmount?: number | undefined;
325
401
  /** If this is a relative / percentage allowance, this should be set
326
- and give the base amount that is being used for the calculation */
402
+ and give the base amount that is being used for the calculation */
327
403
  relativeAllowanceBaseAmount?: number | undefined;
328
404
  /** If this is a relative / percentage allowance, this should be set
329
- and be given in decimal representation, meaning 19% would be 0.19 */
405
+ and be given in decimal representation, meaning 19% would be 0.19 */
330
406
  relativeAllowancePercentage?: number | undefined;
331
407
  /** A description of the allowance. */
332
408
  reason?: string | undefined;
@@ -338,10 +414,10 @@ export interface LineItemCharge {
338
414
  /** The net amount of the charge */
339
415
  netAmount?: number | undefined;
340
416
  /** If this is a relative / percentage charge, this should be set
341
- and give the base amount that is being used for the calculation */
417
+ and give the base amount that is being used for the calculation */
342
418
  relativeChargeBaseAmount?: number | undefined;
343
419
  /** If this is a relative / percentage charge, this should be set
344
- and be given in decimal representation, meaning 19% would be 0.19 */
420
+ and be given in decimal representation, meaning 19% would be 0.19 */
345
421
  relativeChargePercentage?: number | undefined;
346
422
  /** A description of the charge. */
347
423
  reason?: string | undefined;
@@ -350,15 +426,16 @@ and be given in decimal representation, meaning 19% would be 0.19 */
350
426
  }
351
427
  /** Price details about a line item */
352
428
  export interface LineItemPriceDetail {
353
- /** The net price of this line item */
429
+ /** The net price of this line item. This is the unit price */
354
430
  netPrice?: number | undefined;
355
431
  /** A discount for this line item, given as an absolute value. It is essentially the difference between NetPrice (or the list price)
356
- and the actual invoiced price GrossPrice. */
432
+ and the actual invoiced price GrossPrice. */
357
433
  absoluteDiscountPerItem?: number | undefined;
358
434
  /** The gross price of this line item, meaning the price without taxes
359
- that will be invoiced */
435
+ that will be invoiced */
360
436
  grossPrice?: number | undefined;
361
- /** The quantity for which this price is valid */
437
+ /** The quantity for which this price is valid. In combination with the NetPrice,
438
+ you basically specify the denominator of the unit price for a line item. */
362
439
  baseQuantity?: number | undefined;
363
440
  /** A code representing the unit for the base quantity */
364
441
  baseQuantityUnitCode?: string | undefined;
@@ -368,7 +445,7 @@ export interface LineItemVatInformation {
368
445
  /** The VAT category for the charge */
369
446
  vatCategory?: VatCategory | undefined;
370
447
  /** The actual tax rate as a decimal value,
371
- meaning 19% would be 0.19 */
448
+ meaning 19% would be 0.19 */
372
449
  vatRate?: number | undefined;
373
450
  }
374
451
  /** Information about a single line item */
@@ -383,6 +460,9 @@ export interface LineItemInformation {
383
460
  buyerIdentifier?: string | undefined;
384
461
  /** A standard identifier for the line item, e.g. an EAN or a GTIN */
385
462
  standardIdentifier?: string | undefined;
463
+ /** If used together with StandardIdentifier, this is the scheme identifier
464
+ for which standard is used. */
465
+ standardSchemeId?: string | undefined;
386
466
  /** A list of classification identifiers for the line item */
387
467
  classificationIdentifiers?: string[] | undefined;
388
468
  /** The origin country code according to ISO 3166-1 in 2 letter format */
@@ -417,6 +497,10 @@ export interface AvaProjectWrapper {
417
497
  paymentInstructions?: PaymentInstructions | undefined;
418
498
  /** The type of the invoice */
419
499
  invoiceType?: InvoiceType | undefined;
500
+ /** If this is set to true, the invoice will be marked as a reverse charge invoice
501
+ in all VAT rates. You still need to ensure that the actual tax rates are set
502
+ to zero in all elements */
503
+ isEuReverseChargeInvoice?: boolean | undefined;
420
504
  /** Until when the payment is due */
421
505
  paymentDueDate?: Date | undefined;
422
506
  /** A text description of payment terms, e.g. cash discounts or payment conditions */
@@ -424,9 +508,20 @@ export interface AvaProjectWrapper {
424
508
  /** In case of partial of final invoices, it's possible to reference the previous invoice numbers */
425
509
  previousInvoices?: PreviousInvoice[] | undefined;
426
510
  /** If parts of this invoice (or of previous invoices) have already been paid,
427
- then this property can be used to specify that some parts of the invoice
428
- are already paid and this will be deducted from the to be paid amount. */
511
+ then this property can be used to specify that some parts of the invoice
512
+ are already paid and this will be deducted from the to be paid amount. */
429
513
  alreadyPaidTotalGross?: number | undefined;
430
514
  /** An object holding reference used in this invoice */
431
515
  references?: References | undefined;
516
+ /** Optional document level allowances. For example, those can be used to supply
517
+ global discounts e.g. for security deposits. When using this property, please
518
+ pay attention that a deduction factor on the exported ServiceSpecification
519
+ will also be exported as an allowance, in this case the total price of the
520
+ invoice might be different from the total price of the ServiceSpecification. */
521
+ allowances?: InvoiceAllowance[] | undefined;
522
+ /** Optional document level charges, e.g. for shipping or handling. When using this property,
523
+ please pay attention that the charges given here will be applied to the already calculated
524
+ total price of the ServiceSpecification, in this case the total price of the invoice
525
+ might be different from the total price of the ServiceSpecification. */
526
+ charges?: InvoiceCharge[] | undefined;
432
527
  }
@@ -1,5 +1,7 @@
1
1
  export interface ITextWordInvoice {
2
2
  invoiceTitle: string;
3
+ invoiceBuyerTitle: string;
4
+ invoiceSellerTitle: string;
3
5
  vatId: string;
4
6
  detailsInvoiceNumber: string;
5
7
  detailsInvoiceDate: string;
@@ -43,4 +45,14 @@ export interface ITextWordInvoice {
43
45
  attachmentsMimeType: string;
44
46
  attachmentsFileName: string;
45
47
  attachmentsDownloadButton: string;
48
+ contactPersonName: string;
49
+ contactPersonPhone: string;
50
+ contactPersonEmail: string;
51
+ vat: string;
52
+ taxRate: string;
53
+ deliveryInformationTitle: string;
54
+ deliverToName: string;
55
+ deliverToLocationIdentifier: string;
56
+ deliveryDate: string;
57
+ deliveryAddress: string;
46
58
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@dangl/angular-ava",
3
- "version": "1.1.2-beta0099",
3
+ "version": "1.1.2-beta0110",
4
4
  "keywords": [
5
5
  "angular",
6
6
  "ava",