e-invoice-api 0.17.0 → 0.18.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: bb06266072da88f4830fb288bf68d7e8ef7d3bb925636795393b9fa0826a189d
4
- data.tar.gz: aebbfeeddc77cf8cc48fe0fcf1b2629d54fbcbbb0ee1d2e0ac024cb9a8ada5a4
3
+ metadata.gz: 8fb0bfb828758c8ddbf04bdc09f5bce1145a6ded3db11c23cc9944b3b9662c08
4
+ data.tar.gz: b0001510a23be50ad8a5ff691b5b7e069864ae4c3752da44362445c59e6a1e78
5
5
  SHA512:
6
- metadata.gz: 6335f94228c77a28cf579f914eb9b712032c047ccc9646aaab7faec62f0d81648dc19a19517b37d82b8f3a2bb2a74b10ee2640b62f1fdc3d32b03520d9124dbe
7
- data.tar.gz: 31cf5271942c7879bbabbed544608e461d21a574a9609050cc74b0f0c23a5584197a897e1621cce686dd4255c8e5b75d6353eb18f7eff1f03390f6b630a4077e
6
+ metadata.gz: 88054607bad7af3d1e0c5e0e18242658a2d759cf7ba6719166700d24ec0a542bcf55e3fad7495da806ed965c566695930d4138dd2ff736977dde45df3bfa39d7
7
+ data.tar.gz: 1c3e1c2590702e931781bdb4fa3ed203c970a5b87412c598e03807cfa124b1c4e99675ff4552d02711f4bc04ced4ef60aca204afa7973763234b8d04a4301304
data/CHANGELOG.md CHANGED
@@ -1,5 +1,18 @@
1
1
  # Changelog
2
2
 
3
+ ## 0.18.0 (2026-01-19)
4
+
5
+ Full Changelog: [v0.17.0...v0.18.0](https://github.com/e-invoice-be/e-invoice-rb/compare/v0.17.0...v0.18.0)
6
+
7
+ ### Features
8
+
9
+ * **api:** api update ([6d3ef3b](https://github.com/e-invoice-be/e-invoice-rb/commit/6d3ef3b773cf13e36e20cef0008ad3dc75d36cfb))
10
+
11
+
12
+ ### Chores
13
+
14
+ * **internal:** update `actions/checkout` version ([7bb6612](https://github.com/e-invoice-be/e-invoice-rb/commit/7bb661210fda31d5e2cc09db4d02a82c1b62a97c))
15
+
3
16
  ## 0.17.0 (2026-01-15)
4
17
 
5
18
  Full Changelog: [v0.16.2...v0.17.0](https://github.com/e-invoice-be/e-invoice-rb/compare/v0.16.2...v0.17.0)
data/README.md CHANGED
@@ -26,7 +26,7 @@ To use this gem, install via Bundler by adding the following to your application
26
26
  <!-- x-release-please-start-version -->
27
27
 
28
28
  ```ruby
29
- gem "e-invoice-api", "~> 0.17.0"
29
+ gem "e-invoice-api", "~> 0.18.0"
30
30
  ```
31
31
 
32
32
  <!-- x-release-please-end -->
@@ -9,6 +9,11 @@ module EInvoiceAPI
9
9
  # @return [String]
10
10
  required :id, String
11
11
 
12
+ # @!attribute created_at
13
+ #
14
+ # @return [Time]
15
+ required :created_at, Time
16
+
12
17
  # @!attribute allowances
13
18
  #
14
19
  # @return [Array<EInvoiceAPI::Models::DocumentResponse::Allowance>, nil]
@@ -310,12 +315,14 @@ module EInvoiceAPI
310
315
  # @return [String, nil]
311
316
  optional :vendor_tax_id, String, nil?: true
312
317
 
313
- # @!method initialize(id:, 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, 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)
318
+ # @!method initialize(id:, created_at:, 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, 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)
314
319
  # Some parameter documentations has been truncated, see
315
320
  # {EInvoiceAPI::Models::DocumentResponse} for more details.
316
321
  #
317
322
  # @param id [String]
318
323
  #
324
+ # @param created_at [Time]
325
+ #
319
326
  # @param allowances [Array<EInvoiceAPI::Models::DocumentResponse::Allowance>, nil]
320
327
  #
321
328
  # @param amount_due [String, nil] The amount due for payment. Must be positive and rounded to maximum 2 decimals
@@ -192,7 +192,19 @@ module EInvoiceAPI
192
192
  # @return [String, nil]
193
193
  optional :error, String, nil?: true
194
194
 
195
- # @!method initialize(dns_records:, sml_hostname:, status:, error: nil)
195
+ # @!attribute lookup_method
196
+ # DNS lookup method used: 'naptr' (new spec) or 'busdox' (legacy)
197
+ #
198
+ # @return [String, nil]
199
+ optional :lookup_method, String, api_name: :lookupMethod, nil?: true
200
+
201
+ # @!attribute smp_hostname
202
+ # Hostname of the SMP (Service Metadata Publisher) discovered via DNS
203
+ #
204
+ # @return [String, nil]
205
+ optional :smp_hostname, String, api_name: :smpHostname, nil?: true
206
+
207
+ # @!method initialize(dns_records:, sml_hostname:, status:, error: nil, lookup_method: nil, smp_hostname: nil)
196
208
  # Information about the DNS lookup performed
197
209
  #
198
210
  # @param dns_records [Array<EInvoiceAPI::Models::LookupRetrieveResponse::DNSInfo::DNSRecord>] List of DNS records found for the Peppol participant
@@ -202,6 +214,10 @@ module EInvoiceAPI
202
214
  # @param status [String] Status of the DNS lookup: 'success', 'error', or 'pending'
203
215
  #
204
216
  # @param error [String, nil] Error message if the DNS lookup failed
217
+ #
218
+ # @param lookup_method [String, nil] DNS lookup method used: 'naptr' (new spec) or 'busdox' (legacy)
219
+ #
220
+ # @param smp_hostname [String, nil] Hostname of the SMP (Service Metadata Publisher) discovered via DNS
205
221
 
206
222
  class DNSRecord < EInvoiceAPI::Internal::Type::BaseModel
207
223
  # @!attribute ip
@@ -76,8 +76,10 @@ module EInvoiceAPI
76
76
 
77
77
  # @deprecated
78
78
  #
79
- # Add one or more attachments when creating a new invoice or credit note via POST
80
- # /api/documents/
79
+ # Add one or more attachments to an invoice. Be careful: the attachments ARE NOT
80
+ # ADDED to the UBL! They are only stored in our database and can be downloaded
81
+ # later. To add attachments to the UBL, you need to add the attachment(s) via POST
82
+ # /api/documents
81
83
  #
82
84
  # @overload add(document_id, file:, request_options: {})
83
85
  #
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module EInvoiceAPI
4
- VERSION = "0.17.0"
4
+ VERSION = "0.18.0"
5
5
  end
@@ -11,6 +11,9 @@ module EInvoiceAPI
11
11
  sig { returns(String) }
12
12
  attr_accessor :id
13
13
 
14
+ sig { returns(Time) }
15
+ attr_accessor :created_at
16
+
14
17
  sig do
15
18
  returns(T.nilable(T::Array[EInvoiceAPI::DocumentResponse::Allowance]))
16
19
  end
@@ -242,6 +245,7 @@ module EInvoiceAPI
242
245
  sig do
243
246
  params(
244
247
  id: String,
248
+ created_at: Time,
245
249
  allowances:
246
250
  T.nilable(
247
251
  T::Array[EInvoiceAPI::DocumentResponse::Allowance::OrHash]
@@ -307,6 +311,7 @@ module EInvoiceAPI
307
311
  end
308
312
  def self.new(
309
313
  id:,
314
+ created_at:,
310
315
  allowances: nil,
311
316
  # The amount due for payment. Must be positive and rounded to maximum 2 decimals
312
317
  amount_due: nil,
@@ -415,6 +420,7 @@ module EInvoiceAPI
415
420
  override.returns(
416
421
  {
417
422
  id: String,
423
+ created_at: Time,
418
424
  allowances:
419
425
  T.nilable(T::Array[EInvoiceAPI::DocumentResponse::Allowance]),
420
426
  amount_due: T.nilable(String),
@@ -306,6 +306,14 @@ module EInvoiceAPI
306
306
  sig { returns(T.nilable(String)) }
307
307
  attr_accessor :error
308
308
 
309
+ # DNS lookup method used: 'naptr' (new spec) or 'busdox' (legacy)
310
+ sig { returns(T.nilable(String)) }
311
+ attr_accessor :lookup_method
312
+
313
+ # Hostname of the SMP (Service Metadata Publisher) discovered via DNS
314
+ sig { returns(T.nilable(String)) }
315
+ attr_accessor :smp_hostname
316
+
309
317
  # Information about the DNS lookup performed
310
318
  sig do
311
319
  params(
@@ -315,7 +323,9 @@ module EInvoiceAPI
315
323
  ],
316
324
  sml_hostname: String,
317
325
  status: String,
318
- error: T.nilable(String)
326
+ error: T.nilable(String),
327
+ lookup_method: T.nilable(String),
328
+ smp_hostname: T.nilable(String)
319
329
  ).returns(T.attached_class)
320
330
  end
321
331
  def self.new(
@@ -326,7 +336,11 @@ module EInvoiceAPI
326
336
  # Status of the DNS lookup: 'success', 'error', or 'pending'
327
337
  status:,
328
338
  # Error message if the DNS lookup failed
329
- error: nil
339
+ error: nil,
340
+ # DNS lookup method used: 'naptr' (new spec) or 'busdox' (legacy)
341
+ lookup_method: nil,
342
+ # Hostname of the SMP (Service Metadata Publisher) discovered via DNS
343
+ smp_hostname: nil
330
344
  )
331
345
  end
332
346
 
@@ -339,7 +353,9 @@ module EInvoiceAPI
339
353
  ],
340
354
  sml_hostname: String,
341
355
  status: String,
342
- error: T.nilable(String)
356
+ error: T.nilable(String),
357
+ lookup_method: T.nilable(String),
358
+ smp_hostname: T.nilable(String)
343
359
  }
344
360
  )
345
361
  end
@@ -37,8 +37,10 @@ module EInvoiceAPI
37
37
  def delete(attachment_id, document_id:, request_options: {})
38
38
  end
39
39
 
40
- # Add one or more attachments when creating a new invoice or credit note via POST
41
- # /api/documents/
40
+ # Add one or more attachments to an invoice. Be careful: the attachments ARE NOT
41
+ # ADDED to the UBL! They are only stored in our database and can be downloaded
42
+ # later. To add attachments to the UBL, you need to add the attachment(s) via POST
43
+ # /api/documents
42
44
  sig do
43
45
  params(
44
46
  document_id: String,
@@ -3,6 +3,7 @@ module EInvoiceAPI
3
3
  type document_response =
4
4
  {
5
5
  id: String,
6
+ created_at: Time,
6
7
  allowances: ::Array[EInvoiceAPI::DocumentResponse::Allowance]?,
7
8
  amount_due: String?,
8
9
  attachments: ::Array[EInvoiceAPI::Documents::DocumentAttachment]?,
@@ -55,6 +56,8 @@ module EInvoiceAPI
55
56
  class DocumentResponse < EInvoiceAPI::Internal::Type::BaseModel
56
57
  attr_accessor id: String
57
58
 
59
+ attr_accessor created_at: Time
60
+
58
61
  attr_accessor allowances: ::Array[EInvoiceAPI::DocumentResponse::Allowance]?
59
62
 
60
63
  attr_accessor amount_due: String?
@@ -171,6 +174,7 @@ module EInvoiceAPI
171
174
 
172
175
  def initialize: (
173
176
  id: String,
177
+ created_at: Time,
174
178
  ?allowances: ::Array[EInvoiceAPI::DocumentResponse::Allowance]?,
175
179
  ?amount_due: String?,
176
180
  ?attachments: ::Array[EInvoiceAPI::Documents::DocumentAttachment]?,
@@ -222,6 +226,7 @@ module EInvoiceAPI
222
226
 
223
227
  def to_hash: -> {
224
228
  id: String,
229
+ created_at: Time,
225
230
  allowances: ::Array[EInvoiceAPI::DocumentResponse::Allowance]?,
226
231
  amount_due: String?,
227
232
  attachments: ::Array[EInvoiceAPI::Documents::DocumentAttachment]?,
@@ -120,7 +120,9 @@ module EInvoiceAPI
120
120
  dns_records: ::Array[EInvoiceAPI::Models::LookupRetrieveResponse::DNSInfo::DNSRecord],
121
121
  sml_hostname: String,
122
122
  status: String,
123
- error: String?
123
+ error: String?,
124
+ lookup_method: String?,
125
+ smp_hostname: String?
124
126
  }
125
127
 
126
128
  class DNSInfo < EInvoiceAPI::Internal::Type::BaseModel
@@ -132,18 +134,26 @@ module EInvoiceAPI
132
134
 
133
135
  attr_accessor error: String?
134
136
 
137
+ attr_accessor lookup_method: String?
138
+
139
+ attr_accessor smp_hostname: String?
140
+
135
141
  def initialize: (
136
142
  dns_records: ::Array[EInvoiceAPI::Models::LookupRetrieveResponse::DNSInfo::DNSRecord],
137
143
  sml_hostname: String,
138
144
  status: String,
139
- ?error: String?
145
+ ?error: String?,
146
+ ?lookup_method: String?,
147
+ ?smp_hostname: String?
140
148
  ) -> void
141
149
 
142
150
  def to_hash: -> {
143
151
  dns_records: ::Array[EInvoiceAPI::Models::LookupRetrieveResponse::DNSInfo::DNSRecord],
144
152
  sml_hostname: String,
145
153
  status: String,
146
- error: String?
154
+ error: String?,
155
+ lookup_method: String?,
156
+ smp_hostname: String?
147
157
  }
148
158
 
149
159
  type dns_record = { ip: String }
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: e-invoice-api
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.17.0
4
+ version: 0.18.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - e-invoice
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2026-01-15 00:00:00.000000000 Z
11
+ date: 2026-01-21 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: cgi