e-invoice-api 0.7.0 → 0.8.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 +4 -4
- data/CHANGELOG.md +8 -0
- data/README.md +5 -5
- data/lib/e_invoice_api/client.rb +4 -0
- data/lib/e_invoice_api/internal/type/base_model.rb +5 -5
- data/lib/e_invoice_api/models/allowance.rb +96 -0
- data/lib/e_invoice_api/models/charge.rb +96 -0
- data/lib/e_invoice_api/models/document_create_from_pdf_params.rb +32 -0
- data/lib/e_invoice_api/models/document_create_from_pdf_response.rb +584 -0
- data/lib/e_invoice_api/models/document_response.rb +6 -192
- data/lib/e_invoice_api/models/document_validate_params.rb +14 -0
- data/lib/e_invoice_api/models/documents/ubl_create_from_ubl_params.rb +22 -0
- data/lib/e_invoice_api/models/me_retrieve_params.rb +14 -0
- data/lib/e_invoice_api/models/me_retrieve_response.rb +149 -0
- data/lib/e_invoice_api/models.rb +10 -0
- data/lib/e_invoice_api/resources/documents/ubl.rb +22 -0
- data/lib/e_invoice_api/resources/documents.rb +52 -0
- data/lib/e_invoice_api/resources/me.rb +32 -0
- data/lib/e_invoice_api/version.rb +1 -1
- data/lib/e_invoice_api.rb +9 -0
- data/rbi/e_invoice_api/client.rbi +3 -0
- data/rbi/e_invoice_api/models/allowance.rbi +124 -0
- data/rbi/e_invoice_api/models/charge.rbi +122 -0
- data/rbi/e_invoice_api/models/document_create_from_pdf_params.rbi +56 -0
- data/rbi/e_invoice_api/models/document_create_from_pdf_response.rbi +1014 -0
- data/rbi/e_invoice_api/models/document_response.rbi +6 -388
- data/rbi/e_invoice_api/models/document_validate_params.rbi +30 -0
- data/rbi/e_invoice_api/models/documents/ubl_create_from_ubl_params.rbi +43 -0
- data/rbi/e_invoice_api/models/me_retrieve_params.rbi +27 -0
- data/rbi/e_invoice_api/models/me_retrieve_response.rbi +195 -0
- data/rbi/e_invoice_api/models.rbi +10 -0
- data/rbi/e_invoice_api/resources/documents/ubl.rbi +10 -0
- data/rbi/e_invoice_api/resources/documents.rbi +34 -0
- data/rbi/e_invoice_api/resources/me.rbi +21 -0
- data/sig/e_invoice_api/client.rbs +2 -0
- data/sig/e_invoice_api/models/allowance.rbs +69 -0
- data/sig/e_invoice_api/models/charge.rbs +69 -0
- data/sig/e_invoice_api/models/document_create_from_pdf_params.rbs +36 -0
- data/sig/e_invoice_api/models/document_create_from_pdf_response.rbs +512 -0
- data/sig/e_invoice_api/models/document_response.rbs +8 -140
- data/sig/e_invoice_api/models/document_validate_params.rbs +15 -0
- data/sig/e_invoice_api/models/documents/ubl_create_from_ubl_params.rbs +26 -0
- data/sig/e_invoice_api/models/me_retrieve_params.rbs +15 -0
- data/sig/e_invoice_api/models/me_retrieve_response.rbs +107 -0
- data/sig/e_invoice_api/models.rbs +10 -0
- data/sig/e_invoice_api/resources/documents/ubl.rbs +5 -0
- data/sig/e_invoice_api/resources/documents.rbs +12 -0
- data/sig/e_invoice_api/resources/me.rbs +11 -0
- metadata +28 -1
@@ -0,0 +1,584 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module EInvoiceAPI
|
4
|
+
module Models
|
5
|
+
# @see EInvoiceAPI::Resources::Documents#create_from_pdf
|
6
|
+
class DocumentCreateFromPdfResponse < EInvoiceAPI::Internal::Type::BaseModel
|
7
|
+
# @!attribute allowances
|
8
|
+
#
|
9
|
+
# @return [Array<EInvoiceAPI::Models::Allowance>, nil]
|
10
|
+
optional :allowances, -> { EInvoiceAPI::Internal::Type::ArrayOf[EInvoiceAPI::Allowance] }, nil?: true
|
11
|
+
|
12
|
+
# @!attribute amount_due
|
13
|
+
# The amount due of the invoice. Must be positive and rounded to maximum 2
|
14
|
+
# decimals
|
15
|
+
#
|
16
|
+
# @return [String, nil]
|
17
|
+
optional :amount_due, String, nil?: true
|
18
|
+
|
19
|
+
# @!attribute attachments
|
20
|
+
#
|
21
|
+
# @return [Array<EInvoiceAPI::Models::DocumentAttachmentCreate>, nil]
|
22
|
+
optional :attachments,
|
23
|
+
-> { EInvoiceAPI::Internal::Type::ArrayOf[EInvoiceAPI::DocumentAttachmentCreate] },
|
24
|
+
nil?: true
|
25
|
+
|
26
|
+
# @!attribute billing_address
|
27
|
+
#
|
28
|
+
# @return [String, nil]
|
29
|
+
optional :billing_address, String, nil?: true
|
30
|
+
|
31
|
+
# @!attribute billing_address_recipient
|
32
|
+
#
|
33
|
+
# @return [String, nil]
|
34
|
+
optional :billing_address_recipient, String, nil?: true
|
35
|
+
|
36
|
+
# @!attribute charges
|
37
|
+
#
|
38
|
+
# @return [Array<EInvoiceAPI::Models::Charge>, nil]
|
39
|
+
optional :charges, -> { EInvoiceAPI::Internal::Type::ArrayOf[EInvoiceAPI::Charge] }, nil?: true
|
40
|
+
|
41
|
+
# @!attribute currency
|
42
|
+
# Currency of the invoice
|
43
|
+
#
|
44
|
+
# @return [Symbol, EInvoiceAPI::Models::CurrencyCode, nil]
|
45
|
+
optional :currency, enum: -> { EInvoiceAPI::CurrencyCode }
|
46
|
+
|
47
|
+
# @!attribute customer_address
|
48
|
+
#
|
49
|
+
# @return [String, nil]
|
50
|
+
optional :customer_address, String, nil?: true
|
51
|
+
|
52
|
+
# @!attribute customer_address_recipient
|
53
|
+
#
|
54
|
+
# @return [String, nil]
|
55
|
+
optional :customer_address_recipient, String, nil?: true
|
56
|
+
|
57
|
+
# @!attribute customer_email
|
58
|
+
#
|
59
|
+
# @return [String, nil]
|
60
|
+
optional :customer_email, String, nil?: true
|
61
|
+
|
62
|
+
# @!attribute customer_id
|
63
|
+
#
|
64
|
+
# @return [String, nil]
|
65
|
+
optional :customer_id, String, nil?: true
|
66
|
+
|
67
|
+
# @!attribute customer_name
|
68
|
+
#
|
69
|
+
# @return [String, nil]
|
70
|
+
optional :customer_name, String, nil?: true
|
71
|
+
|
72
|
+
# @!attribute customer_tax_id
|
73
|
+
#
|
74
|
+
# @return [String, nil]
|
75
|
+
optional :customer_tax_id, String, nil?: true
|
76
|
+
|
77
|
+
# @!attribute direction
|
78
|
+
#
|
79
|
+
# @return [Symbol, EInvoiceAPI::Models::DocumentDirection, nil]
|
80
|
+
optional :direction, enum: -> { EInvoiceAPI::DocumentDirection }
|
81
|
+
|
82
|
+
# @!attribute document_type
|
83
|
+
#
|
84
|
+
# @return [Symbol, EInvoiceAPI::Models::DocumentType, nil]
|
85
|
+
optional :document_type, enum: -> { EInvoiceAPI::DocumentType }
|
86
|
+
|
87
|
+
# @!attribute due_date
|
88
|
+
#
|
89
|
+
# @return [Date, nil]
|
90
|
+
optional :due_date, Date, nil?: true
|
91
|
+
|
92
|
+
# @!attribute invoice_date
|
93
|
+
#
|
94
|
+
# @return [Date, nil]
|
95
|
+
optional :invoice_date, Date, nil?: true
|
96
|
+
|
97
|
+
# @!attribute invoice_id
|
98
|
+
#
|
99
|
+
# @return [String, nil]
|
100
|
+
optional :invoice_id, String, nil?: true
|
101
|
+
|
102
|
+
# @!attribute invoice_total
|
103
|
+
# The total amount of the invoice (so invoice_total = subtotal + total_tax +
|
104
|
+
# total_discount). Must be positive and rounded to maximum 2 decimals
|
105
|
+
#
|
106
|
+
# @return [String, nil]
|
107
|
+
optional :invoice_total, String, nil?: true
|
108
|
+
|
109
|
+
# @!attribute items
|
110
|
+
# At least one line item is required
|
111
|
+
#
|
112
|
+
# @return [Array<EInvoiceAPI::Models::DocumentCreateFromPdfResponse::Item>, nil]
|
113
|
+
optional :items,
|
114
|
+
-> { EInvoiceAPI::Internal::Type::ArrayOf[EInvoiceAPI::Models::DocumentCreateFromPdfResponse::Item] }
|
115
|
+
|
116
|
+
# @!attribute note
|
117
|
+
#
|
118
|
+
# @return [String, nil]
|
119
|
+
optional :note, String, nil?: true
|
120
|
+
|
121
|
+
# @!attribute payment_details
|
122
|
+
#
|
123
|
+
# @return [Array<EInvoiceAPI::Models::PaymentDetailCreate>, nil]
|
124
|
+
optional :payment_details,
|
125
|
+
-> { EInvoiceAPI::Internal::Type::ArrayOf[EInvoiceAPI::PaymentDetailCreate] },
|
126
|
+
nil?: true
|
127
|
+
|
128
|
+
# @!attribute payment_term
|
129
|
+
#
|
130
|
+
# @return [String, nil]
|
131
|
+
optional :payment_term, String, nil?: true
|
132
|
+
|
133
|
+
# @!attribute previous_unpaid_balance
|
134
|
+
# The previous unpaid balance of the invoice, if any. Must be positive and rounded
|
135
|
+
# to maximum 2 decimals
|
136
|
+
#
|
137
|
+
# @return [String, nil]
|
138
|
+
optional :previous_unpaid_balance, String, nil?: true
|
139
|
+
|
140
|
+
# @!attribute purchase_order
|
141
|
+
#
|
142
|
+
# @return [String, nil]
|
143
|
+
optional :purchase_order, String, nil?: true
|
144
|
+
|
145
|
+
# @!attribute remittance_address
|
146
|
+
#
|
147
|
+
# @return [String, nil]
|
148
|
+
optional :remittance_address, String, nil?: true
|
149
|
+
|
150
|
+
# @!attribute remittance_address_recipient
|
151
|
+
#
|
152
|
+
# @return [String, nil]
|
153
|
+
optional :remittance_address_recipient, String, nil?: true
|
154
|
+
|
155
|
+
# @!attribute service_address
|
156
|
+
#
|
157
|
+
# @return [String, nil]
|
158
|
+
optional :service_address, String, nil?: true
|
159
|
+
|
160
|
+
# @!attribute service_address_recipient
|
161
|
+
#
|
162
|
+
# @return [String, nil]
|
163
|
+
optional :service_address_recipient, String, nil?: true
|
164
|
+
|
165
|
+
# @!attribute service_end_date
|
166
|
+
#
|
167
|
+
# @return [Date, nil]
|
168
|
+
optional :service_end_date, Date, nil?: true
|
169
|
+
|
170
|
+
# @!attribute service_start_date
|
171
|
+
#
|
172
|
+
# @return [Date, nil]
|
173
|
+
optional :service_start_date, Date, nil?: true
|
174
|
+
|
175
|
+
# @!attribute shipping_address
|
176
|
+
#
|
177
|
+
# @return [String, nil]
|
178
|
+
optional :shipping_address, String, nil?: true
|
179
|
+
|
180
|
+
# @!attribute shipping_address_recipient
|
181
|
+
#
|
182
|
+
# @return [String, nil]
|
183
|
+
optional :shipping_address_recipient, String, nil?: true
|
184
|
+
|
185
|
+
# @!attribute state
|
186
|
+
#
|
187
|
+
# @return [Symbol, EInvoiceAPI::Models::DocumentState, nil]
|
188
|
+
optional :state, enum: -> { EInvoiceAPI::DocumentState }
|
189
|
+
|
190
|
+
# @!attribute subtotal
|
191
|
+
# The taxable base of the invoice. Should be the sum of all line items -
|
192
|
+
# allowances (for example commercial discounts) + charges with impact on VAT. Must
|
193
|
+
# be positive and rounded to maximum 2 decimals
|
194
|
+
#
|
195
|
+
# @return [String, nil]
|
196
|
+
optional :subtotal, String, nil?: true
|
197
|
+
|
198
|
+
# @!attribute success
|
199
|
+
# Whether the PDF was successfully converted into a compliant e-invoice
|
200
|
+
#
|
201
|
+
# @return [Boolean, nil]
|
202
|
+
optional :success, EInvoiceAPI::Internal::Type::Boolean
|
203
|
+
|
204
|
+
# @!attribute tax_code
|
205
|
+
# Tax category code of the invoice
|
206
|
+
#
|
207
|
+
# @return [Symbol, EInvoiceAPI::Models::DocumentCreateFromPdfResponse::TaxCode, nil]
|
208
|
+
optional :tax_code, enum: -> { EInvoiceAPI::Models::DocumentCreateFromPdfResponse::TaxCode }
|
209
|
+
|
210
|
+
# @!attribute tax_details
|
211
|
+
#
|
212
|
+
# @return [Array<EInvoiceAPI::Models::DocumentCreateFromPdfResponse::TaxDetail>, nil]
|
213
|
+
optional :tax_details,
|
214
|
+
-> { EInvoiceAPI::Internal::Type::ArrayOf[EInvoiceAPI::Models::DocumentCreateFromPdfResponse::TaxDetail] },
|
215
|
+
nil?: true
|
216
|
+
|
217
|
+
# @!attribute total_discount
|
218
|
+
# The total financial discount of the invoice (so discounts not subject to VAT).
|
219
|
+
# Must be positive and rounded to maximum 2 decimals
|
220
|
+
#
|
221
|
+
# @return [String, nil]
|
222
|
+
optional :total_discount, String, nil?: true
|
223
|
+
|
224
|
+
# @!attribute total_tax
|
225
|
+
# The total tax of the invoice. Must be positive and rounded to maximum 2 decimals
|
226
|
+
#
|
227
|
+
# @return [String, nil]
|
228
|
+
optional :total_tax, String, nil?: true
|
229
|
+
|
230
|
+
# @!attribute ubl_document
|
231
|
+
# The UBL document as an XML string
|
232
|
+
#
|
233
|
+
# @return [String, nil]
|
234
|
+
optional :ubl_document, String, nil?: true
|
235
|
+
|
236
|
+
# @!attribute vatex
|
237
|
+
# VATEX code list for VAT exemption reasons
|
238
|
+
#
|
239
|
+
# Agency: CEF Identifier: vatex
|
240
|
+
#
|
241
|
+
# @return [Symbol, EInvoiceAPI::Models::DocumentCreateFromPdfResponse::Vatex, nil]
|
242
|
+
optional :vatex, enum: -> { EInvoiceAPI::Models::DocumentCreateFromPdfResponse::Vatex }, nil?: true
|
243
|
+
|
244
|
+
# @!attribute vatex_note
|
245
|
+
# VAT exemption note of the invoice
|
246
|
+
#
|
247
|
+
# @return [String, nil]
|
248
|
+
optional :vatex_note, String, nil?: true
|
249
|
+
|
250
|
+
# @!attribute vendor_address
|
251
|
+
#
|
252
|
+
# @return [String, nil]
|
253
|
+
optional :vendor_address, String, nil?: true
|
254
|
+
|
255
|
+
# @!attribute vendor_address_recipient
|
256
|
+
#
|
257
|
+
# @return [String, nil]
|
258
|
+
optional :vendor_address_recipient, String, nil?: true
|
259
|
+
|
260
|
+
# @!attribute vendor_email
|
261
|
+
#
|
262
|
+
# @return [String, nil]
|
263
|
+
optional :vendor_email, String, nil?: true
|
264
|
+
|
265
|
+
# @!attribute vendor_name
|
266
|
+
#
|
267
|
+
# @return [String, nil]
|
268
|
+
optional :vendor_name, String, nil?: true
|
269
|
+
|
270
|
+
# @!attribute vendor_tax_id
|
271
|
+
#
|
272
|
+
# @return [String, nil]
|
273
|
+
optional :vendor_tax_id, String, nil?: true
|
274
|
+
|
275
|
+
# @!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, success: nil, tax_code: nil, tax_details: nil, total_discount: nil, total_tax: nil, ubl_document: nil, vatex: nil, vatex_note: nil, vendor_address: nil, vendor_address_recipient: nil, vendor_email: nil, vendor_name: nil, vendor_tax_id: nil)
|
276
|
+
# Some parameter documentations has been truncated, see
|
277
|
+
# {EInvoiceAPI::Models::DocumentCreateFromPdfResponse} for more details.
|
278
|
+
#
|
279
|
+
# @param allowances [Array<EInvoiceAPI::Models::Allowance>, nil]
|
280
|
+
#
|
281
|
+
# @param amount_due [String, nil] The amount due of the invoice. Must be positive and rounded to maximum 2 decimal
|
282
|
+
#
|
283
|
+
# @param attachments [Array<EInvoiceAPI::Models::DocumentAttachmentCreate>, nil]
|
284
|
+
#
|
285
|
+
# @param billing_address [String, nil]
|
286
|
+
#
|
287
|
+
# @param billing_address_recipient [String, nil]
|
288
|
+
#
|
289
|
+
# @param charges [Array<EInvoiceAPI::Models::Charge>, nil]
|
290
|
+
#
|
291
|
+
# @param currency [Symbol, EInvoiceAPI::Models::CurrencyCode] Currency of the invoice
|
292
|
+
#
|
293
|
+
# @param customer_address [String, nil]
|
294
|
+
#
|
295
|
+
# @param customer_address_recipient [String, nil]
|
296
|
+
#
|
297
|
+
# @param customer_email [String, nil]
|
298
|
+
#
|
299
|
+
# @param customer_id [String, nil]
|
300
|
+
#
|
301
|
+
# @param customer_name [String, nil]
|
302
|
+
#
|
303
|
+
# @param customer_tax_id [String, nil]
|
304
|
+
#
|
305
|
+
# @param direction [Symbol, EInvoiceAPI::Models::DocumentDirection]
|
306
|
+
#
|
307
|
+
# @param document_type [Symbol, EInvoiceAPI::Models::DocumentType]
|
308
|
+
#
|
309
|
+
# @param due_date [Date, nil]
|
310
|
+
#
|
311
|
+
# @param invoice_date [Date, nil]
|
312
|
+
#
|
313
|
+
# @param invoice_id [String, nil]
|
314
|
+
#
|
315
|
+
# @param invoice_total [String, nil] The total amount of the invoice (so invoice_total = subtotal + total_tax + total
|
316
|
+
#
|
317
|
+
# @param items [Array<EInvoiceAPI::Models::DocumentCreateFromPdfResponse::Item>] At least one line item is required
|
318
|
+
#
|
319
|
+
# @param note [String, nil]
|
320
|
+
#
|
321
|
+
# @param payment_details [Array<EInvoiceAPI::Models::PaymentDetailCreate>, nil]
|
322
|
+
#
|
323
|
+
# @param payment_term [String, nil]
|
324
|
+
#
|
325
|
+
# @param previous_unpaid_balance [String, nil] The previous unpaid balance of the invoice, if any. Must be positive and rounded
|
326
|
+
#
|
327
|
+
# @param purchase_order [String, nil]
|
328
|
+
#
|
329
|
+
# @param remittance_address [String, nil]
|
330
|
+
#
|
331
|
+
# @param remittance_address_recipient [String, nil]
|
332
|
+
#
|
333
|
+
# @param service_address [String, nil]
|
334
|
+
#
|
335
|
+
# @param service_address_recipient [String, nil]
|
336
|
+
#
|
337
|
+
# @param service_end_date [Date, nil]
|
338
|
+
#
|
339
|
+
# @param service_start_date [Date, nil]
|
340
|
+
#
|
341
|
+
# @param shipping_address [String, nil]
|
342
|
+
#
|
343
|
+
# @param shipping_address_recipient [String, nil]
|
344
|
+
#
|
345
|
+
# @param state [Symbol, EInvoiceAPI::Models::DocumentState]
|
346
|
+
#
|
347
|
+
# @param subtotal [String, nil] The taxable base of the invoice. Should be the sum of all line items - allowance
|
348
|
+
#
|
349
|
+
# @param success [Boolean] Whether the PDF was successfully converted into a compliant e-invoice
|
350
|
+
#
|
351
|
+
# @param tax_code [Symbol, EInvoiceAPI::Models::DocumentCreateFromPdfResponse::TaxCode] Tax category code of the invoice
|
352
|
+
#
|
353
|
+
# @param tax_details [Array<EInvoiceAPI::Models::DocumentCreateFromPdfResponse::TaxDetail>, nil]
|
354
|
+
#
|
355
|
+
# @param total_discount [String, nil] The total financial discount of the invoice (so discounts not subject to VAT). M
|
356
|
+
#
|
357
|
+
# @param total_tax [String, nil] The total tax of the invoice. Must be positive and rounded to maximum 2 decimals
|
358
|
+
#
|
359
|
+
# @param ubl_document [String, nil] The UBL document as an XML string
|
360
|
+
#
|
361
|
+
# @param vatex [Symbol, EInvoiceAPI::Models::DocumentCreateFromPdfResponse::Vatex, nil] VATEX code list for VAT exemption reasons
|
362
|
+
#
|
363
|
+
# @param vatex_note [String, nil] VAT exemption note of the invoice
|
364
|
+
#
|
365
|
+
# @param vendor_address [String, nil]
|
366
|
+
#
|
367
|
+
# @param vendor_address_recipient [String, nil]
|
368
|
+
#
|
369
|
+
# @param vendor_email [String, nil]
|
370
|
+
#
|
371
|
+
# @param vendor_name [String, nil]
|
372
|
+
#
|
373
|
+
# @param vendor_tax_id [String, nil]
|
374
|
+
|
375
|
+
class Item < EInvoiceAPI::Internal::Type::BaseModel
|
376
|
+
# @!attribute allowances
|
377
|
+
# The allowances of the line item.
|
378
|
+
#
|
379
|
+
# @return [Array<EInvoiceAPI::Models::Allowance>, nil]
|
380
|
+
optional :allowances, -> { EInvoiceAPI::Internal::Type::ArrayOf[EInvoiceAPI::Allowance] }, nil?: true
|
381
|
+
|
382
|
+
# @!attribute amount
|
383
|
+
# The total amount of the line item, exclusive of VAT, after subtracting line
|
384
|
+
# level allowances and adding line level charges. Must be rounded to maximum 2
|
385
|
+
# decimals
|
386
|
+
#
|
387
|
+
# @return [String, nil]
|
388
|
+
optional :amount, String, nil?: true
|
389
|
+
|
390
|
+
# @!attribute charges
|
391
|
+
# The charges of the line item.
|
392
|
+
#
|
393
|
+
# @return [Array<EInvoiceAPI::Models::Charge>, nil]
|
394
|
+
optional :charges, -> { EInvoiceAPI::Internal::Type::ArrayOf[EInvoiceAPI::Charge] }, nil?: true
|
395
|
+
|
396
|
+
# @!attribute date
|
397
|
+
#
|
398
|
+
# @return [nil]
|
399
|
+
optional :date, NilClass
|
400
|
+
|
401
|
+
# @!attribute description
|
402
|
+
# The description of the line item.
|
403
|
+
#
|
404
|
+
# @return [String, nil]
|
405
|
+
optional :description, String, nil?: true
|
406
|
+
|
407
|
+
# @!attribute product_code
|
408
|
+
# The product code of the line item.
|
409
|
+
#
|
410
|
+
# @return [String, nil]
|
411
|
+
optional :product_code, String, nil?: true
|
412
|
+
|
413
|
+
# @!attribute quantity
|
414
|
+
# The quantity of items (goods or services) that is the subject of the line item.
|
415
|
+
# Must be rounded to maximum 4 decimals
|
416
|
+
#
|
417
|
+
# @return [String, nil]
|
418
|
+
optional :quantity, String, nil?: true
|
419
|
+
|
420
|
+
# @!attribute tax
|
421
|
+
# The total VAT amount for the line item. Must be rounded to maximum 2 decimals
|
422
|
+
#
|
423
|
+
# @return [String, nil]
|
424
|
+
optional :tax, String, nil?: true
|
425
|
+
|
426
|
+
# @!attribute tax_rate
|
427
|
+
# The VAT rate of the line item expressed as percentage with 2 decimals
|
428
|
+
#
|
429
|
+
# @return [String, nil]
|
430
|
+
optional :tax_rate, String, nil?: true
|
431
|
+
|
432
|
+
# @!attribute unit
|
433
|
+
# Unit of Measure Codes from UNECERec20 used in Peppol BIS Billing 3.0.
|
434
|
+
#
|
435
|
+
# @return [Symbol, EInvoiceAPI::Models::UnitOfMeasureCode, nil]
|
436
|
+
optional :unit, enum: -> { EInvoiceAPI::UnitOfMeasureCode }, nil?: true
|
437
|
+
|
438
|
+
# @!attribute unit_price
|
439
|
+
# The unit price of the line item. Must be rounded to maximum 2 decimals
|
440
|
+
#
|
441
|
+
# @return [String, nil]
|
442
|
+
optional :unit_price, String, nil?: true
|
443
|
+
|
444
|
+
# @!method initialize(allowances: nil, amount: nil, charges: nil, date: nil, description: nil, product_code: nil, quantity: nil, tax: nil, tax_rate: nil, unit: nil, unit_price: nil)
|
445
|
+
# Some parameter documentations has been truncated, see
|
446
|
+
# {EInvoiceAPI::Models::DocumentCreateFromPdfResponse::Item} for more details.
|
447
|
+
#
|
448
|
+
# @param allowances [Array<EInvoiceAPI::Models::Allowance>, nil] The allowances of the line item.
|
449
|
+
#
|
450
|
+
# @param amount [String, nil] The total amount of the line item, exclusive of VAT, after subtracting line leve
|
451
|
+
#
|
452
|
+
# @param charges [Array<EInvoiceAPI::Models::Charge>, nil] The charges of the line item.
|
453
|
+
#
|
454
|
+
# @param date [nil]
|
455
|
+
#
|
456
|
+
# @param description [String, nil] The description of the line item.
|
457
|
+
#
|
458
|
+
# @param product_code [String, nil] The product code of the line item.
|
459
|
+
#
|
460
|
+
# @param quantity [String, nil] The quantity of items (goods or services) that is the subject of the line item.
|
461
|
+
#
|
462
|
+
# @param tax [String, nil] The total VAT amount for the line item. Must be rounded to maximum 2 decimals
|
463
|
+
#
|
464
|
+
# @param tax_rate [String, nil] The VAT rate of the line item expressed as percentage with 2 decimals
|
465
|
+
#
|
466
|
+
# @param unit [Symbol, EInvoiceAPI::Models::UnitOfMeasureCode, nil] Unit of Measure Codes from UNECERec20 used in Peppol BIS Billing 3.0.
|
467
|
+
#
|
468
|
+
# @param unit_price [String, nil] The unit price of the line item. Must be rounded to maximum 2 decimals
|
469
|
+
end
|
470
|
+
|
471
|
+
# Tax category code of the invoice
|
472
|
+
#
|
473
|
+
# @see EInvoiceAPI::Models::DocumentCreateFromPdfResponse#tax_code
|
474
|
+
module TaxCode
|
475
|
+
extend EInvoiceAPI::Internal::Type::Enum
|
476
|
+
|
477
|
+
AE = :AE
|
478
|
+
E = :E
|
479
|
+
S = :S
|
480
|
+
Z = :Z
|
481
|
+
G = :G
|
482
|
+
O = :O
|
483
|
+
K = :K
|
484
|
+
L = :L
|
485
|
+
M = :M
|
486
|
+
B = :B
|
487
|
+
|
488
|
+
# @!method self.values
|
489
|
+
# @return [Array<Symbol>]
|
490
|
+
end
|
491
|
+
|
492
|
+
class TaxDetail < EInvoiceAPI::Internal::Type::BaseModel
|
493
|
+
# @!attribute amount
|
494
|
+
#
|
495
|
+
# @return [String, nil]
|
496
|
+
optional :amount, String, nil?: true
|
497
|
+
|
498
|
+
# @!attribute rate
|
499
|
+
#
|
500
|
+
# @return [String, nil]
|
501
|
+
optional :rate, String, nil?: true
|
502
|
+
|
503
|
+
# @!method initialize(amount: nil, rate: nil)
|
504
|
+
# @param amount [String, nil]
|
505
|
+
# @param rate [String, nil]
|
506
|
+
end
|
507
|
+
|
508
|
+
# VATEX code list for VAT exemption reasons
|
509
|
+
#
|
510
|
+
# Agency: CEF Identifier: vatex
|
511
|
+
#
|
512
|
+
# @see EInvoiceAPI::Models::DocumentCreateFromPdfResponse#vatex
|
513
|
+
module Vatex
|
514
|
+
extend EInvoiceAPI::Internal::Type::Enum
|
515
|
+
|
516
|
+
VATEX_EU_79_C = :"VATEX-EU-79-C"
|
517
|
+
VATEX_EU_132 = :"VATEX-EU-132"
|
518
|
+
VATEX_EU_132_1_A = :"VATEX-EU-132-1A"
|
519
|
+
VATEX_EU_132_1_B = :"VATEX-EU-132-1B"
|
520
|
+
VATEX_EU_132_1_C = :"VATEX-EU-132-1C"
|
521
|
+
VATEX_EU_132_1_D = :"VATEX-EU-132-1D"
|
522
|
+
VATEX_EU_132_1_E = :"VATEX-EU-132-1E"
|
523
|
+
VATEX_EU_132_1_F = :"VATEX-EU-132-1F"
|
524
|
+
VATEX_EU_132_1_G = :"VATEX-EU-132-1G"
|
525
|
+
VATEX_EU_132_1_H = :"VATEX-EU-132-1H"
|
526
|
+
VATEX_EU_132_1_I = :"VATEX-EU-132-1I"
|
527
|
+
VATEX_EU_132_1_J = :"VATEX-EU-132-1J"
|
528
|
+
VATEX_EU_132_1_K = :"VATEX-EU-132-1K"
|
529
|
+
VATEX_EU_132_1_L = :"VATEX-EU-132-1L"
|
530
|
+
VATEX_EU_132_1_M = :"VATEX-EU-132-1M"
|
531
|
+
VATEX_EU_132_1_N = :"VATEX-EU-132-1N"
|
532
|
+
VATEX_EU_132_1_O = :"VATEX-EU-132-1O"
|
533
|
+
VATEX_EU_132_1_P = :"VATEX-EU-132-1P"
|
534
|
+
VATEX_EU_132_1_Q = :"VATEX-EU-132-1Q"
|
535
|
+
VATEX_EU_143 = :"VATEX-EU-143"
|
536
|
+
VATEX_EU_143_1_A = :"VATEX-EU-143-1A"
|
537
|
+
VATEX_EU_143_1_B = :"VATEX-EU-143-1B"
|
538
|
+
VATEX_EU_143_1_C = :"VATEX-EU-143-1C"
|
539
|
+
VATEX_EU_143_1_D = :"VATEX-EU-143-1D"
|
540
|
+
VATEX_EU_143_1_E = :"VATEX-EU-143-1E"
|
541
|
+
VATEX_EU_143_1_F = :"VATEX-EU-143-1F"
|
542
|
+
VATEX_EU_143_1_FA = :"VATEX-EU-143-1FA"
|
543
|
+
VATEX_EU_143_1_G = :"VATEX-EU-143-1G"
|
544
|
+
VATEX_EU_143_1_H = :"VATEX-EU-143-1H"
|
545
|
+
VATEX_EU_143_1_I = :"VATEX-EU-143-1I"
|
546
|
+
VATEX_EU_143_1_J = :"VATEX-EU-143-1J"
|
547
|
+
VATEX_EU_143_1_K = :"VATEX-EU-143-1K"
|
548
|
+
VATEX_EU_143_1_L = :"VATEX-EU-143-1L"
|
549
|
+
VATEX_EU_144 = :"VATEX-EU-144"
|
550
|
+
VATEX_EU_146_1_E = :"VATEX-EU-146-1E"
|
551
|
+
VATEX_EU_148 = :"VATEX-EU-148"
|
552
|
+
VATEX_EU_148_A = :"VATEX-EU-148-A"
|
553
|
+
VATEX_EU_148_B = :"VATEX-EU-148-B"
|
554
|
+
VATEX_EU_148_C = :"VATEX-EU-148-C"
|
555
|
+
VATEX_EU_148_D = :"VATEX-EU-148-D"
|
556
|
+
VATEX_EU_148_E = :"VATEX-EU-148-E"
|
557
|
+
VATEX_EU_148_F = :"VATEX-EU-148-F"
|
558
|
+
VATEX_EU_148_G = :"VATEX-EU-148-G"
|
559
|
+
VATEX_EU_151 = :"VATEX-EU-151"
|
560
|
+
VATEX_EU_151_1_A = :"VATEX-EU-151-1A"
|
561
|
+
VATEX_EU_151_1_AA = :"VATEX-EU-151-1AA"
|
562
|
+
VATEX_EU_151_1_B = :"VATEX-EU-151-1B"
|
563
|
+
VATEX_EU_151_1_C = :"VATEX-EU-151-1C"
|
564
|
+
VATEX_EU_151_1_D = :"VATEX-EU-151-1D"
|
565
|
+
VATEX_EU_151_1_E = :"VATEX-EU-151-1E"
|
566
|
+
VATEX_EU_159 = :"VATEX-EU-159"
|
567
|
+
VATEX_EU_309 = :"VATEX-EU-309"
|
568
|
+
VATEX_EU_AE = :"VATEX-EU-AE"
|
569
|
+
VATEX_EU_D = :"VATEX-EU-D"
|
570
|
+
VATEX_EU_F = :"VATEX-EU-F"
|
571
|
+
VATEX_EU_G = :"VATEX-EU-G"
|
572
|
+
VATEX_EU_I = :"VATEX-EU-I"
|
573
|
+
VATEX_EU_IC = :"VATEX-EU-IC"
|
574
|
+
VATEX_EU_O = :"VATEX-EU-O"
|
575
|
+
VATEX_EU_J = :"VATEX-EU-J"
|
576
|
+
VATEX_FR_FRANCHISE = :"VATEX-FR-FRANCHISE"
|
577
|
+
VATEX_FR_CNWVAT = :"VATEX-FR-CNWVAT"
|
578
|
+
|
579
|
+
# @!method self.values
|
580
|
+
# @return [Array<Symbol>]
|
581
|
+
end
|
582
|
+
end
|
583
|
+
end
|
584
|
+
end
|