e-invoice-api 0.11.0 → 0.13.0

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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 13ddd70823e2f224864388289a3822542e2a37fab629216e6c686a68945e63ef
4
- data.tar.gz: bb989d57ded23fd2c7bad4f673787589f4bce1bfbbca9699eac8469ab51c68b4
3
+ metadata.gz: 9f1aa76dde526bb3a6037077c94486fce371fbfc3163f35870d8e2e030105fe8
4
+ data.tar.gz: 14a5e513da3ce3c5821cb1331aeffd5da50d8bc728fae006d9bef2ceaa87e71e
5
5
  SHA512:
6
- metadata.gz: 3d6c59349252c242c40dcabde2c33f5f794f1b2f4bd4e0db16f5dfd61da4ec81fcfd8c6fae7b9f3b0658325b68dfe276352fac9823a00f868031b5379db0b008
7
- data.tar.gz: b6f9ebe8ab96d759102014be1bed0a1922a0cbab0a6a7626eee608831dc3b666e74576ab57db262f4d85db78fb890ec68dee026bb2e8328b46f3c81b5bcb2b03
6
+ metadata.gz: c994a981f4a6be764b24708a6c994f4f78a2b138e1643c4cb17a593cb7bb0f942eabf5ea9b5bb2c8a0b053200c3cdba6fc3ab7c5c2c14ab3c2fc0e0e8c5da5f8
7
+ data.tar.gz: 6afca35923c60ee4183a94712ab4f1c3145794d6718f8c04ffa273a81d4fca02d284334f01b6ec78bb35f008baf1510194076cc2a230ee8ac98d24cdd86f1eee
data/CHANGELOG.md CHANGED
@@ -1,5 +1,22 @@
1
1
  # Changelog
2
2
 
3
+ ## 0.13.0 (2025-11-14)
4
+
5
+ Full Changelog: [v0.12.0...v0.13.0](https://github.com/e-invoice-be/e-invoice-rb/compare/v0.12.0...v0.13.0)
6
+
7
+ ### Features
8
+
9
+ * **api:** api update ([6e82f54](https://github.com/e-invoice-be/e-invoice-rb/commit/6e82f5492fbc467157a7a0cf03eaa256b32caa92))
10
+
11
+ ## 0.12.0 (2025-11-14)
12
+
13
+ Full Changelog: [v0.11.0...v0.12.0](https://github.com/e-invoice-be/e-invoice-rb/compare/v0.11.0...v0.12.0)
14
+
15
+ ### Features
16
+
17
+ * **api:** api update ([9fdde80](https://github.com/e-invoice-be/e-invoice-rb/commit/9fdde803109f66b3dd5601430345ab5334565650))
18
+ * **api:** api update ([b81b8e8](https://github.com/e-invoice-be/e-invoice-rb/commit/b81b8e8361d82229d444102e37eff951a8989e29))
19
+
3
20
  ## 0.11.0 (2025-11-06)
4
21
 
5
22
  Full Changelog: [v0.10.1...v0.11.0](https://github.com/e-invoice-be/e-invoice-rb/compare/v0.10.1...v0.11.0)
data/README.md CHANGED
@@ -17,7 +17,7 @@ To use this gem, install via Bundler by adding the following to your application
17
17
  <!-- x-release-please-start-version -->
18
18
 
19
19
  ```ruby
20
- gem "e-invoice-api", "~> 0.11.0"
20
+ gem "e-invoice-api", "~> 0.13.0"
21
21
  ```
22
22
 
23
23
  <!-- x-release-please-end -->
@@ -83,7 +83,7 @@ file =
83
83
  EInvoiceAPI::FilePart.new(File.read("/path/to/file"), filename: "/path/to/file", content_type: "…")
84
84
  response = e_invoice.documents.create_from_pdf(file: file)
85
85
 
86
- puts(response.customer_id)
86
+ puts(response.customer_company_id)
87
87
  ```
88
88
 
89
89
  Note that you can also pass a raw `IO` descriptor, but this disables retries, as the library can't be sure if the descriptor is a file or pipe (which cannot be rewound).
@@ -11,8 +11,7 @@ module EInvoiceAPI
11
11
  nil?: true
12
12
 
13
13
  # @!attribute amount_due
14
- # The amount due of the invoice. Must be positive and rounded to maximum 2
15
- # decimals
14
+ # The amount due for payment. Must be positive and rounded to maximum 2 decimals
16
15
  #
17
16
  # @return [Float, String, nil]
18
17
  optional :amount_due, union: -> { EInvoiceAPI::DocumentCreate::AmountDue }, nil?: true
@@ -25,11 +24,13 @@ module EInvoiceAPI
25
24
  nil?: true
26
25
 
27
26
  # @!attribute billing_address
27
+ # The billing address (if different from customer address)
28
28
  #
29
29
  # @return [String, nil]
30
30
  optional :billing_address, String, nil?: true
31
31
 
32
32
  # @!attribute billing_address_recipient
33
+ # The recipient name at the billing address
33
34
  #
34
35
  # @return [String, nil]
35
36
  optional :billing_address_recipient, String, nil?: true
@@ -42,69 +43,88 @@ module EInvoiceAPI
42
43
  nil?: true
43
44
 
44
45
  # @!attribute currency
45
- # Currency of the invoice
46
+ # Currency of the invoice (ISO 4217 currency code)
46
47
  #
47
48
  # @return [Symbol, EInvoiceAPI::Models::CurrencyCode, nil]
48
49
  optional :currency, enum: -> { EInvoiceAPI::CurrencyCode }
49
50
 
50
51
  # @!attribute customer_address
52
+ # The address of the customer/buyer
51
53
  #
52
54
  # @return [String, nil]
53
55
  optional :customer_address, String, nil?: true
54
56
 
55
57
  # @!attribute customer_address_recipient
58
+ # The recipient name at the customer address
56
59
  #
57
60
  # @return [String, nil]
58
61
  optional :customer_address_recipient, String, nil?: true
59
62
 
63
+ # @!attribute customer_company_id
64
+ # Customer company ID. For Belgium this is the CBE number or their EUID (European
65
+ # Unique Identifier) number. In the Netherlands this is the KVK number.
66
+ #
67
+ # @return [String, nil]
68
+ optional :customer_company_id, String, nil?: true
69
+
60
70
  # @!attribute customer_email
71
+ # The email address of the customer
61
72
  #
62
73
  # @return [String, nil]
63
74
  optional :customer_email, String, nil?: true
64
75
 
65
76
  # @!attribute customer_id
77
+ # The unique identifier for the customer in your system
66
78
  #
67
79
  # @return [String, nil]
68
80
  optional :customer_id, String, nil?: true
69
81
 
70
82
  # @!attribute customer_name
83
+ # The company name of the customer/buyer
71
84
  #
72
85
  # @return [String, nil]
73
86
  optional :customer_name, String, nil?: true
74
87
 
75
88
  # @!attribute customer_tax_id
89
+ # Customer tax ID. For Belgium this is the VAT number. Must include the country
90
+ # prefix
76
91
  #
77
92
  # @return [String, nil]
78
93
  optional :customer_tax_id, String, nil?: true
79
94
 
80
95
  # @!attribute direction
96
+ # The direction of the document: INBOUND (purchases) or OUTBOUND (sales)
81
97
  #
82
98
  # @return [Symbol, EInvoiceAPI::Models::DocumentDirection, nil]
83
99
  optional :direction, enum: -> { EInvoiceAPI::DocumentDirection }
84
100
 
85
101
  # @!attribute document_type
102
+ # The type of document: INVOICE, CREDIT_NOTE, or DEBIT_NOTE
86
103
  #
87
104
  # @return [Symbol, EInvoiceAPI::Models::DocumentType, nil]
88
105
  optional :document_type, enum: -> { EInvoiceAPI::DocumentType }
89
106
 
90
107
  # @!attribute due_date
108
+ # The date when payment is due
91
109
  #
92
110
  # @return [Date, nil]
93
111
  optional :due_date, Date, nil?: true
94
112
 
95
113
  # @!attribute invoice_date
114
+ # The date when the invoice was issued
96
115
  #
97
116
  # @return [Date, nil]
98
117
  optional :invoice_date, Date, nil?: true
99
118
 
100
119
  # @!attribute invoice_id
120
+ # The unique invoice identifier/number
101
121
  #
102
122
  # @return [String, nil]
103
123
  optional :invoice_id, String, nil?: true
104
124
 
105
125
  # @!attribute invoice_total
106
- # The total amount of the invoice (so invoice_total = subtotal + total_tax +
107
- # total_discount). Must be positive and rounded to maximum 2 decimals
126
+ # The total amount of the invoice including tax (invoice_total = subtotal +
127
+ # total_tax + total_discount). Must be positive and rounded to maximum 2 decimals
108
128
  #
109
129
  # @return [Float, String, nil]
110
130
  optional :invoice_total, union: -> { EInvoiceAPI::DocumentCreate::InvoiceTotal }, nil?: true
@@ -116,6 +136,7 @@ module EInvoiceAPI
116
136
  optional :items, -> { EInvoiceAPI::Internal::Type::ArrayOf[EInvoiceAPI::DocumentCreate::Item] }
117
137
 
118
138
  # @!attribute note
139
+ # Additional notes or comments for the invoice
119
140
  #
120
141
  # @return [String, nil]
121
142
  optional :note, String, nil?: true
@@ -128,13 +149,14 @@ module EInvoiceAPI
128
149
  nil?: true
129
150
 
130
151
  # @!attribute payment_term
152
+ # The payment terms (e.g., 'Net 30', 'Due on receipt', '2/10 Net 30')
131
153
  #
132
154
  # @return [String, nil]
133
155
  optional :payment_term, String, nil?: true
134
156
 
135
157
  # @!attribute previous_unpaid_balance
136
- # The previous unpaid balance of the invoice, if any. Must be positive and rounded
137
- # to maximum 2 decimals
158
+ # The previous unpaid balance from prior invoices, if any. Must be positive and
159
+ # rounded to maximum 2 decimals
138
160
  #
139
161
  # @return [Float, String, nil]
140
162
  optional :previous_unpaid_balance,
@@ -142,51 +164,61 @@ module EInvoiceAPI
142
164
  nil?: true
143
165
 
144
166
  # @!attribute purchase_order
167
+ # The purchase order reference number
145
168
  #
146
169
  # @return [String, nil]
147
170
  optional :purchase_order, String, nil?: true
148
171
 
149
172
  # @!attribute remittance_address
173
+ # The address where payment should be sent or remitted to
150
174
  #
151
175
  # @return [String, nil]
152
176
  optional :remittance_address, String, nil?: true
153
177
 
154
178
  # @!attribute remittance_address_recipient
179
+ # The recipient name at the remittance address
155
180
  #
156
181
  # @return [String, nil]
157
182
  optional :remittance_address_recipient, String, nil?: true
158
183
 
159
184
  # @!attribute service_address
185
+ # The address where services were performed or goods were delivered
160
186
  #
161
187
  # @return [String, nil]
162
188
  optional :service_address, String, nil?: true
163
189
 
164
190
  # @!attribute service_address_recipient
191
+ # The recipient name at the service address
165
192
  #
166
193
  # @return [String, nil]
167
194
  optional :service_address_recipient, String, nil?: true
168
195
 
169
196
  # @!attribute service_end_date
197
+ # The end date of the service period or delivery period
170
198
  #
171
199
  # @return [Date, nil]
172
200
  optional :service_end_date, Date, nil?: true
173
201
 
174
202
  # @!attribute service_start_date
203
+ # The start date of the service period or delivery period
175
204
  #
176
205
  # @return [Date, nil]
177
206
  optional :service_start_date, Date, nil?: true
178
207
 
179
208
  # @!attribute shipping_address
209
+ # The shipping/delivery address
180
210
  #
181
211
  # @return [String, nil]
182
212
  optional :shipping_address, String, nil?: true
183
213
 
184
214
  # @!attribute shipping_address_recipient
215
+ # The recipient name at the shipping address
185
216
  #
186
217
  # @return [String, nil]
187
218
  optional :shipping_address_recipient, String, nil?: true
188
219
 
189
220
  # @!attribute state
221
+ # The current state of the document: DRAFT, TRANSIT, FAILED, SENT, or RECEIVED
190
222
  #
191
223
  # @return [Symbol, EInvoiceAPI::Models::DocumentState, nil]
192
224
  optional :state, enum: -> { EInvoiceAPI::DocumentState }
@@ -200,7 +232,8 @@ module EInvoiceAPI
200
232
  optional :subtotal, union: -> { EInvoiceAPI::DocumentCreate::Subtotal }, nil?: true
201
233
 
202
234
  # @!attribute tax_code
203
- # Tax category code of the invoice
235
+ # Tax category code of the invoice (e.g., S for standard rate, Z for zero rate, E
236
+ # for exempt)
204
237
  #
205
238
  # @return [Symbol, EInvoiceAPI::Models::DocumentCreate::TaxCode, nil]
206
239
  optional :tax_code, enum: -> { EInvoiceAPI::DocumentCreate::TaxCode }
@@ -221,7 +254,8 @@ module EInvoiceAPI
221
254
  optional :total_discount, union: -> { EInvoiceAPI::DocumentCreate::TotalDiscount }, nil?: true
222
255
 
223
256
  # @!attribute total_tax
224
- # The total tax of the invoice. Must be positive and rounded to maximum 2 decimals
257
+ # The total tax amount of the invoice. Must be positive and rounded to maximum 2
258
+ # decimals
225
259
  #
226
260
  # @return [Float, String, nil]
227
261
  optional :total_tax, union: -> { EInvoiceAPI::DocumentCreate::TotalTax }, nil?: true
@@ -235,131 +269,148 @@ module EInvoiceAPI
235
269
  optional :vatex, enum: -> { EInvoiceAPI::DocumentCreate::Vatex }, nil?: true
236
270
 
237
271
  # @!attribute vatex_note
238
- # VAT exemption note of the invoice
272
+ # Textual explanation for VAT exemption
239
273
  #
240
274
  # @return [String, nil]
241
275
  optional :vatex_note, String, nil?: true
242
276
 
243
277
  # @!attribute vendor_address
278
+ # The address of the vendor/seller
244
279
  #
245
280
  # @return [String, nil]
246
281
  optional :vendor_address, String, nil?: true
247
282
 
248
283
  # @!attribute vendor_address_recipient
284
+ # The recipient name at the vendor address
249
285
  #
250
286
  # @return [String, nil]
251
287
  optional :vendor_address_recipient, String, nil?: true
252
288
 
289
+ # @!attribute vendor_company_id
290
+ # Vendor company ID. For Belgium this is the CBE number or their EUID (European
291
+ # Unique Identifier) number. In the Netherlands this is the KVK number.
292
+ #
293
+ # @return [String, nil]
294
+ optional :vendor_company_id, String, nil?: true
295
+
253
296
  # @!attribute vendor_email
297
+ # The email address of the vendor
254
298
  #
255
299
  # @return [String, nil]
256
300
  optional :vendor_email, String, nil?: true
257
301
 
258
302
  # @!attribute vendor_name
303
+ # The name of the vendor/seller/supplier
259
304
  #
260
305
  # @return [String, nil]
261
306
  optional :vendor_name, String, nil?: true
262
307
 
263
308
  # @!attribute vendor_tax_id
309
+ # Vendor tax ID. For Belgium this is the VAT number. Must include the country
310
+ # prefix
264
311
  #
265
312
  # @return [String, nil]
266
313
  optional :vendor_tax_id, String, nil?: true
267
314
 
268
- # @!method initialize(allowances: nil, amount_due: nil, attachments: nil, billing_address: nil, billing_address_recipient: nil, charges: nil, currency: nil, customer_address: nil, customer_address_recipient: nil, customer_email: nil, customer_id: nil, customer_name: nil, customer_tax_id: nil, direction: nil, document_type: nil, due_date: nil, invoice_date: nil, invoice_id: nil, invoice_total: nil, items: nil, note: nil, payment_details: nil, payment_term: nil, previous_unpaid_balance: nil, purchase_order: nil, remittance_address: nil, remittance_address_recipient: nil, service_address: nil, service_address_recipient: nil, service_end_date: nil, service_start_date: nil, shipping_address: nil, shipping_address_recipient: nil, state: nil, subtotal: nil, tax_code: nil, tax_details: nil, total_discount: nil, total_tax: nil, vatex: nil, vatex_note: nil, vendor_address: nil, vendor_address_recipient: nil, vendor_email: nil, vendor_name: nil, vendor_tax_id: nil)
315
+ # @!method initialize(allowances: nil, amount_due: nil, attachments: nil, billing_address: nil, billing_address_recipient: nil, charges: nil, currency: nil, customer_address: nil, customer_address_recipient: nil, customer_company_id: nil, customer_email: nil, customer_id: nil, customer_name: nil, customer_tax_id: nil, direction: nil, document_type: nil, due_date: nil, invoice_date: nil, invoice_id: nil, invoice_total: nil, items: nil, note: nil, payment_details: nil, payment_term: nil, previous_unpaid_balance: nil, purchase_order: nil, remittance_address: nil, remittance_address_recipient: nil, service_address: nil, service_address_recipient: nil, service_end_date: nil, service_start_date: nil, shipping_address: nil, shipping_address_recipient: nil, state: nil, subtotal: nil, tax_code: nil, tax_details: nil, total_discount: nil, total_tax: nil, vatex: nil, vatex_note: nil, vendor_address: nil, vendor_address_recipient: nil, vendor_company_id: nil, vendor_email: nil, vendor_name: nil, vendor_tax_id: nil)
269
316
  # Some parameter documentations has been truncated, see
270
317
  # {EInvoiceAPI::Models::DocumentCreate} for more details.
271
318
  #
272
319
  # @param allowances [Array<EInvoiceAPI::Models::DocumentCreate::Allowance>, nil]
273
320
  #
274
- # @param amount_due [Float, String, nil] The amount due of the invoice. Must be positive and rounded to maximum 2 decimal
321
+ # @param amount_due [Float, String, nil] The amount due for payment. Must be positive and rounded to maximum 2 decimals
275
322
  #
276
323
  # @param attachments [Array<EInvoiceAPI::Models::DocumentAttachmentCreate>, nil]
277
324
  #
278
- # @param billing_address [String, nil]
325
+ # @param billing_address [String, nil] The billing address (if different from customer address)
279
326
  #
280
- # @param billing_address_recipient [String, nil]
327
+ # @param billing_address_recipient [String, nil] The recipient name at the billing address
281
328
  #
282
329
  # @param charges [Array<EInvoiceAPI::Models::DocumentCreate::Charge>, nil]
283
330
  #
284
- # @param currency [Symbol, EInvoiceAPI::Models::CurrencyCode] Currency of the invoice
331
+ # @param currency [Symbol, EInvoiceAPI::Models::CurrencyCode] Currency of the invoice (ISO 4217 currency code)
332
+ #
333
+ # @param customer_address [String, nil] The address of the customer/buyer
285
334
  #
286
- # @param customer_address [String, nil]
335
+ # @param customer_address_recipient [String, nil] The recipient name at the customer address
287
336
  #
288
- # @param customer_address_recipient [String, nil]
337
+ # @param customer_company_id [String, nil] Customer company ID. For Belgium this is the CBE number or their EUID (European
289
338
  #
290
- # @param customer_email [String, nil]
339
+ # @param customer_email [String, nil] The email address of the customer
291
340
  #
292
- # @param customer_id [String, nil]
341
+ # @param customer_id [String, nil] The unique identifier for the customer in your system
293
342
  #
294
- # @param customer_name [String, nil]
343
+ # @param customer_name [String, nil] The company name of the customer/buyer
295
344
  #
296
- # @param customer_tax_id [String, nil]
345
+ # @param customer_tax_id [String, nil] Customer tax ID. For Belgium this is the VAT number. Must include the country pr
297
346
  #
298
- # @param direction [Symbol, EInvoiceAPI::Models::DocumentDirection]
347
+ # @param direction [Symbol, EInvoiceAPI::Models::DocumentDirection] The direction of the document: INBOUND (purchases) or OUTBOUND (sales)
299
348
  #
300
- # @param document_type [Symbol, EInvoiceAPI::Models::DocumentType]
349
+ # @param document_type [Symbol, EInvoiceAPI::Models::DocumentType] The type of document: INVOICE, CREDIT_NOTE, or DEBIT_NOTE
301
350
  #
302
- # @param due_date [Date, nil]
351
+ # @param due_date [Date, nil] The date when payment is due
303
352
  #
304
- # @param invoice_date [Date, nil]
353
+ # @param invoice_date [Date, nil] The date when the invoice was issued
305
354
  #
306
- # @param invoice_id [String, nil]
355
+ # @param invoice_id [String, nil] The unique invoice identifier/number
307
356
  #
308
- # @param invoice_total [Float, String, nil] The total amount of the invoice (so invoice_total = subtotal + total_tax + total
357
+ # @param invoice_total [Float, String, nil] The total amount of the invoice including tax (invoice*total = subtotal + total*
309
358
  #
310
359
  # @param items [Array<EInvoiceAPI::Models::DocumentCreate::Item>] At least one line item is required
311
360
  #
312
- # @param note [String, nil]
361
+ # @param note [String, nil] Additional notes or comments for the invoice
313
362
  #
314
363
  # @param payment_details [Array<EInvoiceAPI::Models::PaymentDetailCreate>, nil]
315
364
  #
316
- # @param payment_term [String, nil]
365
+ # @param payment_term [String, nil] The payment terms (e.g., 'Net 30', 'Due on receipt', '2/10 Net 30')
317
366
  #
318
- # @param previous_unpaid_balance [Float, String, nil] The previous unpaid balance of the invoice, if any. Must be positive and rounded
367
+ # @param previous_unpaid_balance [Float, String, nil] The previous unpaid balance from prior invoices, if any. Must be positive and ro
319
368
  #
320
- # @param purchase_order [String, nil]
369
+ # @param purchase_order [String, nil] The purchase order reference number
321
370
  #
322
- # @param remittance_address [String, nil]
371
+ # @param remittance_address [String, nil] The address where payment should be sent or remitted to
323
372
  #
324
- # @param remittance_address_recipient [String, nil]
373
+ # @param remittance_address_recipient [String, nil] The recipient name at the remittance address
325
374
  #
326
- # @param service_address [String, nil]
375
+ # @param service_address [String, nil] The address where services were performed or goods were delivered
327
376
  #
328
- # @param service_address_recipient [String, nil]
377
+ # @param service_address_recipient [String, nil] The recipient name at the service address
329
378
  #
330
- # @param service_end_date [Date, nil]
379
+ # @param service_end_date [Date, nil] The end date of the service period or delivery period
331
380
  #
332
- # @param service_start_date [Date, nil]
381
+ # @param service_start_date [Date, nil] The start date of the service period or delivery period
333
382
  #
334
- # @param shipping_address [String, nil]
383
+ # @param shipping_address [String, nil] The shipping/delivery address
335
384
  #
336
- # @param shipping_address_recipient [String, nil]
385
+ # @param shipping_address_recipient [String, nil] The recipient name at the shipping address
337
386
  #
338
- # @param state [Symbol, EInvoiceAPI::Models::DocumentState]
387
+ # @param state [Symbol, EInvoiceAPI::Models::DocumentState] The current state of the document: DRAFT, TRANSIT, FAILED, SENT, or RECEIVED
339
388
  #
340
389
  # @param subtotal [Float, String, nil] The taxable base of the invoice. Should be the sum of all line items - allowance
341
390
  #
342
- # @param tax_code [Symbol, EInvoiceAPI::Models::DocumentCreate::TaxCode] Tax category code of the invoice
391
+ # @param tax_code [Symbol, EInvoiceAPI::Models::DocumentCreate::TaxCode] Tax category code of the invoice (e.g., S for standard rate, Z for zero rate, E
343
392
  #
344
393
  # @param tax_details [Array<EInvoiceAPI::Models::DocumentCreate::TaxDetail>, nil]
345
394
  #
346
395
  # @param total_discount [Float, String, nil] The net financial discount/charge of the invoice (non-VAT charges minus non-VAT
347
396
  #
348
- # @param total_tax [Float, String, nil] The total tax of the invoice. Must be positive and rounded to maximum 2 decimals
397
+ # @param total_tax [Float, String, nil] The total tax amount of the invoice. Must be positive and rounded to maximum 2 d
349
398
  #
350
399
  # @param vatex [Symbol, EInvoiceAPI::Models::DocumentCreate::Vatex, nil] VATEX code list for VAT exemption reasons
351
400
  #
352
- # @param vatex_note [String, nil] VAT exemption note of the invoice
401
+ # @param vatex_note [String, nil] Textual explanation for VAT exemption
353
402
  #
354
- # @param vendor_address [String, nil]
403
+ # @param vendor_address [String, nil] The address of the vendor/seller
355
404
  #
356
- # @param vendor_address_recipient [String, nil]
405
+ # @param vendor_address_recipient [String, nil] The recipient name at the vendor address
357
406
  #
358
- # @param vendor_email [String, nil]
407
+ # @param vendor_company_id [String, nil] Vendor company ID. For Belgium this is the CBE number or their EUID (European Un
359
408
  #
360
- # @param vendor_name [String, nil]
409
+ # @param vendor_email [String, nil] The email address of the vendor
361
410
  #
362
- # @param vendor_tax_id [String, nil]
411
+ # @param vendor_name [String, nil] The name of the vendor/seller/supplier
412
+ #
413
+ # @param vendor_tax_id [String, nil] Vendor tax ID. For Belgium this is the VAT number. Must include the country pref
363
414
 
364
415
  class Allowance < EInvoiceAPI::Internal::Type::BaseModel
365
416
  # @!attribute amount
@@ -498,8 +549,7 @@ module EInvoiceAPI
498
549
  end
499
550
  end
500
551
 
501
- # The amount due of the invoice. Must be positive and rounded to maximum 2
502
- # decimals
552
+ # The amount due for payment. Must be positive and rounded to maximum 2 decimals
503
553
  #
504
554
  # @see EInvoiceAPI::Models::DocumentCreate#amount_due
505
555
  module AmountDue
@@ -650,8 +700,8 @@ module EInvoiceAPI
650
700
  end
651
701
  end
652
702
 
653
- # The total amount of the invoice (so invoice_total = subtotal + total_tax +
654
- # total_discount). Must be positive and rounded to maximum 2 decimals
703
+ # The total amount of the invoice including tax (invoice_total = subtotal +
704
+ # total_tax + total_discount). Must be positive and rounded to maximum 2 decimals
655
705
  #
656
706
  # @see EInvoiceAPI::Models::DocumentCreate#invoice_total
657
707
  module InvoiceTotal
@@ -1106,8 +1156,8 @@ module EInvoiceAPI
1106
1156
  end
1107
1157
  end
1108
1158
 
1109
- # The previous unpaid balance of the invoice, if any. Must be positive and rounded
1110
- # to maximum 2 decimals
1159
+ # The previous unpaid balance from prior invoices, if any. Must be positive and
1160
+ # rounded to maximum 2 decimals
1111
1161
  #
1112
1162
  # @see EInvoiceAPI::Models::DocumentCreate#previous_unpaid_balance
1113
1163
  module PreviousUnpaidBalance
@@ -1137,7 +1187,8 @@ module EInvoiceAPI
1137
1187
  # @return [Array(Float, String)]
1138
1188
  end
1139
1189
 
1140
- # Tax category code of the invoice
1190
+ # Tax category code of the invoice (e.g., S for standard rate, Z for zero rate, E
1191
+ # for exempt)
1141
1192
  #
1142
1193
  # @see EInvoiceAPI::Models::DocumentCreate#tax_code
1143
1194
  module TaxCode
@@ -1160,19 +1211,24 @@ module EInvoiceAPI
1160
1211
 
1161
1212
  class TaxDetail < EInvoiceAPI::Internal::Type::BaseModel
1162
1213
  # @!attribute amount
1214
+ # The tax amount for this tax category. Must be rounded to maximum 2 decimals
1163
1215
  #
1164
1216
  # @return [Float, String, nil]
1165
1217
  optional :amount, union: -> { EInvoiceAPI::DocumentCreate::TaxDetail::Amount }, nil?: true
1166
1218
 
1167
1219
  # @!attribute rate
1220
+ # The tax rate as a percentage (e.g., '21.00', '6.00', '0.00')
1168
1221
  #
1169
1222
  # @return [String, nil]
1170
1223
  optional :rate, String, nil?: true
1171
1224
 
1172
1225
  # @!method initialize(amount: nil, rate: nil)
1173
- # @param amount [Float, String, nil]
1174
- # @param rate [String, nil]
1226
+ # @param amount [Float, String, nil] The tax amount for this tax category. Must be rounded to maximum 2 decimals
1227
+ #
1228
+ # @param rate [String, nil] The tax rate as a percentage (e.g., '21.00', '6.00', '0.00')
1175
1229
 
1230
+ # The tax amount for this tax category. Must be rounded to maximum 2 decimals
1231
+ #
1176
1232
  # @see EInvoiceAPI::Models::DocumentCreate::TaxDetail#amount
1177
1233
  module Amount
1178
1234
  extend EInvoiceAPI::Internal::Type::Union
@@ -1202,7 +1258,8 @@ module EInvoiceAPI
1202
1258
  # @return [Array(Float, String)]
1203
1259
  end
1204
1260
 
1205
- # The total tax of the invoice. Must be positive and rounded to maximum 2 decimals
1261
+ # The total tax amount of the invoice. Must be positive and rounded to maximum 2
1262
+ # decimals
1206
1263
  #
1207
1264
  # @see EInvoiceAPI::Models::DocumentCreate#total_tax
1208
1265
  module TotalTax