moov_ruby 25.11.2 → 25.11.4

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: 64ef10ae7dd6f3b92d2d5050518c20112c2c3a01fb11e394e2b0cb060005c6d4
4
- data.tar.gz: 17afe773202e6d194b7a0d1ec94743208fe6c954159d099e40cc02cdc2be6c06
3
+ metadata.gz: 8ec16b51c7d9f78e68724522356e4ee06ea34f56a37b5812a1c593499a80ee8a
4
+ data.tar.gz: 8c4905b3a72dfc695b7650ea962a9c5b201db9c0db0a45d5a152ef1c83d616b4
5
5
  SHA512:
6
- metadata.gz: cfa5dfa9cfce04ee38ba0f9e14060564c1f6a0b3d3211f7fd066bba1065aa22a7a5f34823056462f525be6a0201162f319593b26d3179909c643ae4e50253633
7
- data.tar.gz: f6bc35409c70bb5ca09c35055f704960df4cdfef2b86b63f2c5acf99e11d5866620480ef6b3d42c4c897f349a55ed74df9b55ae80353253b421bb079a6980c65
6
+ metadata.gz: e8de65bedee5e853c7defc3ac5e3ae3d796d42bc07e094e3af7c2405b37d2baf20b529e3c0e53791c72167293382720943a6112523f272ca2af5ee8b6be33917
7
+ data.tar.gz: cd58740d88d5e4b916726f9e4453150ce71a46f12f3ddd76a4ec792795951e791b5ea0140bc1bbf679b7e6810d2542010e50af4bec4b926c89dec5b610417786
@@ -60,7 +60,7 @@ module Moov
60
60
  field :occurrence_id, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('occurrenceID') } }
61
61
 
62
62
  field :payment_link_code, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('paymentLinkCode') } }
63
- # Optional sales tax amount. `transfer.amount.value` should be inclusive of any sales tax and represents the total amount charged.
63
+ # Optional sales tax amount.
64
64
  field :sales_tax_amount, Crystalline::Nilable.new(Models::Components::Amount), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('salesTaxAmount') } }
65
65
  # Optional alias from a foreign/external system which can be used to reference this resource.
66
66
  field :foreign_id, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('foreignID') } }
@@ -21,13 +21,18 @@ module Moov
21
21
  field :partner_account_id, ::String, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('partnerAccountID'), required: true } }
22
22
  # The merchant's preferred payment method ID. Must be a wallet payment method.
23
23
  field :merchant_payment_method_id, ::String, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('merchantPaymentMethodID'), required: true } }
24
-
24
+ # The fixed amount of the payment link.
25
+ #
26
+ # In API versions before `2026.07.00`, this was a required field.
27
+ #
28
+ # In API version `2026.07.00` and beyond, this field is required for `fixed` payment amount types and omitted
29
+ # for `open` payment amount types.
25
30
  field :amount, Models::Components::Amount, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('amount'), required: true } }
26
31
  # Customizable display options for a payment link.
27
32
  field :display, Models::Components::PaymentLinkDisplayOptions, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('display'), required: true } }
28
-
33
+ # Optional sales tax amount.
29
34
  field :sales_tax_amount, Crystalline::Nilable.new(Models::Components::Amount), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('salesTaxAmount') } }
30
- # An optional limit on the number of times this payment link can be used.
35
+ # An optional limit on the number of times this payment link can be used.
31
36
  #
32
37
  # **For payouts, `maxUses` is always 1.**
33
38
  field :max_uses, Crystalline::Nilable.new(::Integer), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('maxUses') } }
@@ -24,7 +24,7 @@ module Moov
24
24
  field :description, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('description') } }
25
25
  # Free-form key-value pair list. Useful for storing information that is not captured elsewhere.
26
26
  field :metadata, Crystalline::Nilable.new(Crystalline::Hash.new(Symbol, ::String)), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('metadata') } }
27
- # Optional sales tax amount. `transfer.amount.value` should be inclusive of any sales tax and represents the total amount charged.
27
+
28
28
  field :sales_tax_amount, Crystalline::Nilable.new(Models::Components::Amount), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('salesTaxAmount') } }
29
29
  # Optional alias from a foreign/external system which can be used to reference this resource.
30
30
  field :foreign_id, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('foreignID') } }
@@ -0,0 +1,36 @@
1
+ # Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
2
+
3
+ # typed: true
4
+ # frozen_string_literal: true
5
+
6
+
7
+ module Moov
8
+ module Models
9
+ module Components
10
+ # Additional metadata to be stored with the file.
11
+ class FileUploadMetadata
12
+ extend T::Sig
13
+ include Crystalline::MetadataFields
14
+
15
+ # The representative ID that the file is for. Required when filePurpose is `representativeVerification`.
16
+ field :representative_id, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('representative_id') } }
17
+ # Comments or notes about the file.
18
+ field :comment, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('comment') } }
19
+
20
+ sig { params(representative_id: T.nilable(::String), comment: T.nilable(::String)).void }
21
+ def initialize(representative_id: nil, comment: nil)
22
+ @representative_id = representative_id
23
+ @comment = comment
24
+ end
25
+
26
+ sig { params(other: T.untyped).returns(T::Boolean) }
27
+ def ==(other)
28
+ return false unless other.is_a? self.class
29
+ return false unless @representative_id == other.representative_id
30
+ return false unless @comment == other.comment
31
+ true
32
+ end
33
+ end
34
+ end
35
+ end
36
+ end
@@ -0,0 +1,15 @@
1
+ # typed: true
2
+ # frozen_string_literal: true
3
+
4
+
5
+ class Moov::Models::Components::FileUploadMetadata
6
+ extend ::Crystalline::MetadataFields::ClassMethods
7
+ end
8
+
9
+
10
+ class Moov::Models::Components::FileUploadMetadata
11
+ def representative_id(); end
12
+ def representative_id=(str_); end
13
+ def comment(); end
14
+ def comment=(str_); end
15
+ end
@@ -12,16 +12,14 @@ module Moov
12
12
  extend T::Sig
13
13
  include Crystalline::MetadataFields
14
14
 
15
- # The file to be added. Valid types are `csv`, `png`, `jpeg`, `pdf`.
15
+ # The file to upload. Valid types are `csv`, `png`, `jpeg`, `pdf`.
16
16
  field :file, Models::Components::FileUploadRequestMultiPartFile, { 'multipart_form': { 'file': true, 'field_name': 'file' } }
17
17
  # The purpose of the file being uploaded.
18
18
  field :file_purpose, Models::Components::FilePurpose, { 'multipart_form': { 'field_name': 'filePurpose' } }
19
- # Additional metadata to be stored with the file, formatted as a JSON string.
20
- #
21
- # Valid keys are `representative_id`, `comment`, `requirement_id`, `error_code`.
22
- field :metadata, Crystalline::Nilable.new(::String), { 'multipart_form': { 'field_name': 'metadata' } }
19
+ # Additional metadata to be stored with the file.
20
+ field :metadata, Crystalline::Nilable.new(Models::Components::FileUploadMetadata), { 'multipart_form': { 'field_name': 'metadata', 'json': true } }
23
21
 
24
- sig { params(file: Models::Components::FileUploadRequestMultiPartFile, file_purpose: Models::Components::FilePurpose, metadata: T.nilable(::String)).void }
22
+ sig { params(file: Models::Components::FileUploadRequestMultiPartFile, file_purpose: Models::Components::FilePurpose, metadata: T.nilable(Models::Components::FileUploadMetadata)).void }
25
23
  def initialize(file:, file_purpose:, metadata: nil)
26
24
  @file = file
27
25
  @file_purpose = file_purpose
@@ -30,7 +30,12 @@ module Moov
30
30
  field :merchant_payment_method_id, ::String, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('merchantPaymentMethodID'), required: true } }
31
31
  # Link to the payment landing page for this payment link.
32
32
  field :link, ::String, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('link'), required: true } }
33
-
33
+ # The fixed amount of the payment link.
34
+ #
35
+ # In API versions before `2026.07.00`, this was a required field.
36
+ #
37
+ # In API version `2026.07.00` and beyond, this field is required for `fixed` payment amount types and omitted
38
+ # for `open` payment amount types.
34
39
  field :amount, Models::Components::Amount, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('amount'), required: true } }
35
40
  # The number of times this payment link has been used.
36
41
  field :uses, ::Integer, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('uses'), required: true } }
@@ -44,7 +49,7 @@ module Moov
44
49
  field :updated_on, ::DateTime, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('updatedOn'), required: true, 'decoder': ::Moov::Utils.datetime_from_iso_format(false) } }
45
50
  # Optional sales tax amount.
46
51
  field :sales_tax_amount, Crystalline::Nilable.new(Models::Components::Amount), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('salesTaxAmount') } }
47
- # An optional limit on the number of times this payment link can be used.
52
+ # An optional limit on the number of times this payment link can be used.
48
53
  #
49
54
  # **For payouts, `maxUses` is always 1.**
50
55
  field :max_uses, Crystalline::Nilable.new(::Integer), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('maxUses') } }
@@ -62,7 +62,7 @@ module Moov
62
62
  field :occurrence_id, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('occurrenceID') } }
63
63
 
64
64
  field :payment_link_code, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('paymentLinkCode') } }
65
- # Optional sales tax amount. `transfer.amount.value` should be inclusive of any sales tax and represents the total amount charged.
65
+
66
66
  field :sales_tax_amount, Crystalline::Nilable.new(Models::Components::Amount), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('salesTaxAmount') } }
67
67
  # Optional alias from a foreign/external system which can be used to reference this resource.
68
68
  field :foreign_id, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('foreignID') } }
@@ -17,10 +17,13 @@ module Moov
17
17
 
18
18
  field :account_id, ::String, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('accountID'), required: true } }
19
19
 
20
- sig { params(bank_account_id: ::String, account_id: ::String).void }
21
- def initialize(bank_account_id:, account_id:)
20
+ field :status, Models::Components::BankAccountStatus, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('status'), required: true, 'decoder': ::Moov::Utils.enum_from_string(Models::Components::BankAccountStatus, false) } }
21
+
22
+ sig { params(bank_account_id: ::String, account_id: ::String, status: Models::Components::BankAccountStatus).void }
23
+ def initialize(bank_account_id:, account_id:, status:)
22
24
  @bank_account_id = bank_account_id
23
25
  @account_id = account_id
26
+ @status = status
24
27
  end
25
28
 
26
29
  sig { params(other: T.untyped).returns(T::Boolean) }
@@ -28,6 +31,7 @@ module Moov
28
31
  return false unless other.is_a? self.class
29
32
  return false unless @bank_account_id == other.bank_account_id
30
33
  return false unless @account_id == other.account_id
34
+ return false unless @status == other.status
31
35
  true
32
36
  end
33
37
  end
@@ -12,4 +12,6 @@ class Moov::Models::Components::WebhookDataBankAccountCreated
12
12
  def bank_account_id=(str_); end
13
13
  def account_id(); end
14
14
  def account_id=(str_); end
15
+ def status(); end
16
+ def status=(str_); end
15
17
  end
@@ -260,6 +260,7 @@ module Moov
260
260
  autoload :FileDetails, 'moov/models/components/filedetails.rb'
261
261
  autoload :FilePurpose, 'moov/models/components/filepurpose.rb'
262
262
  autoload :FileStatus, 'moov/models/components/filestatus.rb'
263
+ autoload :FileUploadMetadata, 'moov/models/components/fileuploadmetadata.rb'
263
264
  autoload :FileUploadRequestMultiPart, 'moov/models/components/fileuploadrequestmultipart.rb'
264
265
  autoload :FileUploadRequestMultiPartFile, 'moov/models/components/fileuploadrequestmultipart_file.rb'
265
266
  autoload :FileUploadValidationErrorFile, 'moov/models/components/fileuploadvalidationerror_file.rb'
@@ -62,7 +62,7 @@ module Moov
62
62
  field :occurrence_id, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('occurrenceID') } }
63
63
 
64
64
  field :payment_link_code, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('paymentLinkCode') } }
65
- # Optional sales tax amount. `transfer.amount.value` should be inclusive of any sales tax and represents the total amount charged.
65
+
66
66
  field :sales_tax_amount, Crystalline::Nilable.new(Models::Components::Amount), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('salesTaxAmount') } }
67
67
  # Optional alias from a foreign/external system which can be used to reference this resource.
68
68
  field :foreign_id, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('foreignID') } }
@@ -88,9 +88,9 @@ module Moov
88
88
  end
89
89
  @language = 'ruby'
90
90
  @openapi_doc_version = 'v2025.10.00'
91
- @sdk_version = '25.11.2'
92
- @gen_version = '2.881.2'
93
- @user_agent = 'speakeasy-sdk/ruby 25.11.2 2.881.2 v2025.10.00 moov_ruby'
91
+ @sdk_version = '25.11.4'
92
+ @gen_version = '2.881.17'
93
+ @user_agent = 'speakeasy-sdk/ruby 25.11.4 2.881.17 v2025.10.00 moov_ruby'
94
94
  end
95
95
 
96
96
  sig { returns([String, T::Hash[Symbol, String]]) }
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: moov_ruby
3
3
  version: !ruby/object:Gem::Version
4
- version: 25.11.2
4
+ version: 25.11.4
5
5
  platform: ruby
6
6
  authors:
7
7
  - Speakeasy
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2026-04-20 00:00:00.000000000 Z
11
+ date: 2026-05-01 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: base64
@@ -782,6 +782,8 @@ files:
782
782
  - lib/moov/models/components/filepurpose.rbi
783
783
  - lib/moov/models/components/filestatus.rb
784
784
  - lib/moov/models/components/filestatus.rbi
785
+ - lib/moov/models/components/fileuploadmetadata.rb
786
+ - lib/moov/models/components/fileuploadmetadata.rbi
785
787
  - lib/moov/models/components/fileuploadrequestmultipart.rb
786
788
  - lib/moov/models/components/fileuploadrequestmultipart.rbi
787
789
  - lib/moov/models/components/fileuploadrequestmultipart_file.rb