moov_ruby 0.3.22 → 0.3.24

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.
Files changed (114) hide show
  1. checksums.yaml +4 -4
  2. data/lib/moov/client.rb +2 -1
  3. data/lib/moov/invoices.rb +288 -0
  4. data/lib/moov/models/components/createinvoice.rb +6 -6
  5. data/lib/moov/models/components/createinvoice.rbi +2 -2
  6. data/lib/moov/models/components/createinvoicepayment.rb +45 -0
  7. data/lib/moov/models/components/createinvoicepayment.rbi +19 -0
  8. data/lib/moov/models/components/createruntransfer.rb +58 -0
  9. data/lib/moov/models/components/createruntransfer.rbi +25 -0
  10. data/lib/moov/models/components/createscheduledtransferlineitem.rb +53 -0
  11. data/lib/moov/models/components/createscheduledtransferlineitem.rbi +23 -0
  12. data/lib/moov/models/components/createscheduledtransferlineitemoption.rb +49 -0
  13. data/lib/moov/models/components/createscheduledtransferlineitemoption.rbi +21 -0
  14. data/lib/moov/models/components/createscheduledtransferlineitems.rb +34 -0
  15. data/lib/moov/models/components/createscheduledtransferlineitems.rbi +13 -0
  16. data/lib/moov/models/components/createwebhook.rb +45 -0
  17. data/lib/moov/models/components/createwebhook.rbi +19 -0
  18. data/lib/moov/models/components/eventtype.rb +41 -0
  19. data/lib/moov/models/components/eventtype.rbi +17 -0
  20. data/lib/moov/models/components/incurredfee.rb +6 -2
  21. data/lib/moov/models/components/incurredfee.rbi +2 -0
  22. data/lib/moov/models/components/invoice.rb +9 -9
  23. data/lib/moov/models/components/invoice.rbi +4 -4
  24. data/lib/moov/models/components/invoiceexternalpayment.rb +3 -11
  25. data/lib/moov/models/components/invoiceexternalpayment.rbi +0 -4
  26. data/lib/moov/models/components/invoicepayment.rb +13 -5
  27. data/lib/moov/models/components/invoicepayment.rbi +6 -2
  28. data/lib/moov/models/components/invoicetransferpayment.rb +2 -6
  29. data/lib/moov/models/components/invoicetransferpayment.rbi +0 -2
  30. data/lib/moov/models/components/occurrence.rb +2 -2
  31. data/lib/moov/models/components/occurrencesresponse.rb +1 -1
  32. data/lib/moov/models/components/pingresponse.rb +41 -0
  33. data/lib/moov/models/components/pingresponse.rbi +17 -0
  34. data/lib/moov/models/components/recur.rb +2 -2
  35. data/lib/moov/models/components/recurresponse.rb +46 -0
  36. data/lib/moov/models/components/recurresponse.rbi +19 -0
  37. data/lib/moov/models/components/runtransfer.rb +2 -3
  38. data/lib/moov/models/components/scheduledtransferimagemetadata.rb +45 -0
  39. data/lib/moov/models/components/scheduledtransferimagemetadata.rbi +19 -0
  40. data/lib/moov/models/components/scheduledtransferlineitem.rb +6 -2
  41. data/lib/moov/models/components/scheduledtransferlineitem.rbi +2 -0
  42. data/lib/moov/models/components/scheduledtransferlineitemoption.rb +6 -2
  43. data/lib/moov/models/components/scheduledtransferlineitemoption.rbi +2 -0
  44. data/lib/moov/models/components/scheduledtransferlineitems.rb +1 -2
  45. data/lib/moov/models/components/schedulelistresponse.rb +3 -3
  46. data/lib/moov/models/components/scheduleresponse.rb +3 -3
  47. data/lib/moov/models/components/updatewebhook.rb +45 -0
  48. data/lib/moov/models/components/updatewebhook.rbi +19 -0
  49. data/lib/moov/models/components/webhook.rb +61 -0
  50. data/lib/moov/models/components/webhook.rbi +27 -0
  51. data/lib/moov/models/components/webhooksecret.rb +33 -0
  52. data/lib/moov/models/components/webhooksecret.rbi +13 -0
  53. data/lib/moov/models/components/{invoiceexternalpayment_paymenttype.rb → webhookstatus.rb} +4 -3
  54. data/lib/moov/models/components/webhookstatus.rbi +11 -0
  55. data/lib/moov/models/components.rb +14 -2
  56. data/lib/moov/models/errors/createinvoicepaymenterror.rb +49 -0
  57. data/lib/moov/models/errors/createinvoicepaymenterror.rbi +21 -0
  58. data/lib/moov/models/errors/createwebhookvalidationerror.rb +49 -0
  59. data/lib/moov/models/errors/createwebhookvalidationerror.rbi +21 -0
  60. data/lib/moov/models/errors/updatewebhookvalidationerror.rb +49 -0
  61. data/lib/moov/models/errors/updatewebhookvalidationerror.rbi +21 -0
  62. data/lib/moov/models/errors.rb +3 -0
  63. data/lib/moov/models/operations/createinvoicepayment_request.rb +54 -0
  64. data/lib/moov/models/operations/createinvoicepayment_request.rbi +19 -0
  65. data/lib/moov/models/operations/createinvoicepayment_response.rb +49 -0
  66. data/lib/moov/models/operations/createinvoicepayment_response.rbi +21 -0
  67. data/lib/moov/models/operations/createwebhook_request.rb +46 -0
  68. data/lib/moov/models/operations/createwebhook_request.rbi +15 -0
  69. data/lib/moov/models/operations/createwebhook_response.rb +49 -0
  70. data/lib/moov/models/operations/createwebhook_response.rbi +21 -0
  71. data/lib/moov/models/operations/disablewebhook_request.rb +46 -0
  72. data/lib/moov/models/operations/disablewebhook_request.rbi +15 -0
  73. data/lib/moov/models/operations/disablewebhook_response.rb +45 -0
  74. data/lib/moov/models/operations/disablewebhook_response.rbi +19 -0
  75. data/lib/moov/models/operations/getwebhook_request.rb +46 -0
  76. data/lib/moov/models/operations/getwebhook_request.rbi +15 -0
  77. data/lib/moov/models/operations/getwebhook_response.rb +49 -0
  78. data/lib/moov/models/operations/getwebhook_response.rbi +21 -0
  79. data/lib/moov/models/operations/getwebhooksecret_request.rb +46 -0
  80. data/lib/moov/models/operations/getwebhooksecret_request.rbi +15 -0
  81. data/lib/moov/models/operations/getwebhooksecret_response.rb +49 -0
  82. data/lib/moov/models/operations/getwebhooksecret_response.rbi +21 -0
  83. data/lib/moov/models/operations/listeventtypes_request.rb +42 -0
  84. data/lib/moov/models/operations/listeventtypes_request.rbi +13 -0
  85. data/lib/moov/models/operations/listeventtypes_response.rb +49 -0
  86. data/lib/moov/models/operations/listeventtypes_response.rbi +21 -0
  87. data/lib/moov/models/operations/listfeerevenue_request.rb +14 -2
  88. data/lib/moov/models/operations/listfeerevenue_request.rbi +6 -0
  89. data/lib/moov/models/operations/listinvoicepayments_request.rb +50 -0
  90. data/lib/moov/models/operations/listinvoicepayments_request.rbi +17 -0
  91. data/lib/moov/models/operations/listinvoicepayments_response.rb +49 -0
  92. data/lib/moov/models/operations/listinvoicepayments_response.rbi +21 -0
  93. data/lib/moov/models/operations/listwebhooks_request.rb +42 -0
  94. data/lib/moov/models/operations/listwebhooks_request.rbi +13 -0
  95. data/lib/moov/models/operations/listwebhooks_response.rb +49 -0
  96. data/lib/moov/models/operations/listwebhooks_response.rbi +21 -0
  97. data/lib/moov/models/operations/pingwebhook_request.rb +46 -0
  98. data/lib/moov/models/operations/pingwebhook_request.rbi +15 -0
  99. data/lib/moov/models/operations/pingwebhook_response.rb +49 -0
  100. data/lib/moov/models/operations/pingwebhook_response.rbi +21 -0
  101. data/lib/moov/models/operations/retrievefees_request.rb +6 -2
  102. data/lib/moov/models/operations/retrievefees_request.rbi +2 -0
  103. data/lib/moov/models/operations/updatewebhook_request.rb +50 -0
  104. data/lib/moov/models/operations/updatewebhook_request.rbi +17 -0
  105. data/lib/moov/models/operations/updatewebhook_response.rb +49 -0
  106. data/lib/moov/models/operations/updatewebhook_response.rbi +21 -0
  107. data/lib/moov/models/operations.rb +20 -0
  108. data/lib/moov/sdkconfiguration.rb +2 -2
  109. data/lib/moov/webhooks.rb +1056 -0
  110. data/lib/moov_ruby.rb +1 -0
  111. metadata +77 -6
  112. data/lib/moov/models/components/invoiceexternalpayment_paymenttype.rbi +0 -11
  113. data/lib/moov/models/components/invoicetransferpayment_paymenttype.rb +0 -21
  114. data/lib/moov/models/components/invoicetransferpayment_paymenttype.rbi +0 -11
@@ -0,0 +1,21 @@
1
+ # typed: true
2
+ # frozen_string_literal: true
3
+
4
+
5
+ class Moov::Models::Components::CreateScheduledTransferLineItemOption
6
+ extend ::Crystalline::MetadataFields::ClassMethods
7
+ end
8
+
9
+
10
+ class Moov::Models::Components::CreateScheduledTransferLineItemOption
11
+ def name(); end
12
+ def name=(str_); end
13
+ def quantity(); end
14
+ def quantity=(str_); end
15
+ def price_modifier(); end
16
+ def price_modifier=(str_); end
17
+ def group(); end
18
+ def group=(str_); end
19
+ def image_i_ds(); end
20
+ def image_i_ds=(str_); end
21
+ end
@@ -0,0 +1,34 @@
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
+
11
+ # An optional collection of line items for a scheduled transfer.
12
+ # When line items are provided their total must equal `amount` minus `salesTaxAmount`.
13
+ class CreateScheduledTransferLineItems
14
+ extend T::Sig
15
+ include Crystalline::MetadataFields
16
+
17
+ # The list of line items.
18
+ field :items, Crystalline::Array.new(Models::Components::CreateScheduledTransferLineItem), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('items'), required: true } }
19
+
20
+ sig { params(items: T::Array[Models::Components::CreateScheduledTransferLineItem]).void }
21
+ def initialize(items:)
22
+ @items = items
23
+ end
24
+
25
+ sig { params(other: T.untyped).returns(T::Boolean) }
26
+ def ==(other)
27
+ return false unless other.is_a? self.class
28
+ return false unless @items == other.items
29
+ true
30
+ end
31
+ end
32
+ end
33
+ end
34
+ end
@@ -0,0 +1,13 @@
1
+ # typed: true
2
+ # frozen_string_literal: true
3
+
4
+
5
+ class Moov::Models::Components::CreateScheduledTransferLineItems
6
+ extend ::Crystalline::MetadataFields::ClassMethods
7
+ end
8
+
9
+
10
+ class Moov::Models::Components::CreateScheduledTransferLineItems
11
+ def items(); end
12
+ def items=(str_); end
13
+ end
@@ -0,0 +1,45 @@
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
+
11
+ # Request body for creating a new webhook.
12
+ class CreateWebhook
13
+ extend T::Sig
14
+ include Crystalline::MetadataFields
15
+
16
+ # The URL where webhook events will be sent.
17
+ field :url, ::String, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('url'), required: true } }
18
+ # The status of the webhook.
19
+ field :status, Models::Components::WebhookStatus, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('status'), required: true, 'decoder': Utils.enum_from_string(Models::Components::WebhookStatus, false) } }
20
+ # The list of event types this webhook should subscribe to.
21
+ field :event_types, Crystalline::Array.new(Models::Components::WebhookEventType), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('eventTypes'), required: true } }
22
+ # A description of the webhook for reference. Can be an empty string.
23
+ field :description, ::String, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('description'), required: true } }
24
+
25
+ sig { params(url: ::String, status: Models::Components::WebhookStatus, event_types: T::Array[Models::Components::WebhookEventType], description: ::String).void }
26
+ def initialize(url:, status:, event_types:, description:)
27
+ @url = url
28
+ @status = status
29
+ @event_types = event_types
30
+ @description = description
31
+ end
32
+
33
+ sig { params(other: T.untyped).returns(T::Boolean) }
34
+ def ==(other)
35
+ return false unless other.is_a? self.class
36
+ return false unless @url == other.url
37
+ return false unless @status == other.status
38
+ return false unless @event_types == other.event_types
39
+ return false unless @description == other.description
40
+ true
41
+ end
42
+ end
43
+ end
44
+ end
45
+ end
@@ -0,0 +1,19 @@
1
+ # typed: true
2
+ # frozen_string_literal: true
3
+
4
+
5
+ class Moov::Models::Components::CreateWebhook
6
+ extend ::Crystalline::MetadataFields::ClassMethods
7
+ end
8
+
9
+
10
+ class Moov::Models::Components::CreateWebhook
11
+ def url(); end
12
+ def url=(str_); end
13
+ def status(); end
14
+ def status=(str_); end
15
+ def event_types(); end
16
+ def event_types=(str_); end
17
+ def description(); end
18
+ def description=(str_); end
19
+ end
@@ -0,0 +1,41 @@
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
+
11
+ # Describes an available event type that can be subscribed to.
12
+ class EventType
13
+ extend T::Sig
14
+ include Crystalline::MetadataFields
15
+
16
+ # Unique identifier for the event type.
17
+ field :event_type_id, ::String, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('eventTypeID'), required: true } }
18
+ # The type identifier string.
19
+ field :type, ::String, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('type'), required: true } }
20
+ # A human-readable description of the event type.
21
+ field :description, ::String, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('description'), required: true } }
22
+
23
+ sig { params(event_type_id: ::String, type: ::String, description: ::String).void }
24
+ def initialize(event_type_id:, type:, description:)
25
+ @event_type_id = event_type_id
26
+ @type = type
27
+ @description = description
28
+ end
29
+
30
+ sig { params(other: T.untyped).returns(T::Boolean) }
31
+ def ==(other)
32
+ return false unless other.is_a? self.class
33
+ return false unless @event_type_id == other.event_type_id
34
+ return false unless @type == other.type
35
+ return false unless @description == other.description
36
+ true
37
+ end
38
+ end
39
+ end
40
+ end
41
+ end
@@ -0,0 +1,17 @@
1
+ # typed: true
2
+ # frozen_string_literal: true
3
+
4
+
5
+ class Moov::Models::Components::EventType
6
+ extend ::Crystalline::MetadataFields::ClassMethods
7
+ end
8
+
9
+
10
+ class Moov::Models::Components::EventType
11
+ def event_type_id(); end
12
+ def event_type_id=(str_); end
13
+ def type(); end
14
+ def type=(str_); end
15
+ def description(); end
16
+ def description=(str_); end
17
+ end
@@ -30,8 +30,10 @@ module Moov
30
30
 
31
31
  field :fee_group, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('feeGroup') } }
32
32
 
33
- sig { params(fee_id: T.nilable(::String), account_id: T.nilable(::String), wallet_id: T.nilable(::String), created_on: T.nilable(::DateTime), fee_name: T.nilable(::String), amount: T.nilable(Models::Components::AmountDecimal), generated_by: T.nilable(Models::Components::GeneratedBy), fee_group: T.nilable(::String)).void }
34
- def initialize(fee_id: nil, account_id: nil, wallet_id: nil, created_on: nil, fee_name: nil, amount: nil, generated_by: nil, fee_group: nil)
33
+ field :residual_id, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('residualID') } }
34
+
35
+ sig { params(fee_id: T.nilable(::String), account_id: T.nilable(::String), wallet_id: T.nilable(::String), created_on: T.nilable(::DateTime), fee_name: T.nilable(::String), amount: T.nilable(Models::Components::AmountDecimal), generated_by: T.nilable(Models::Components::GeneratedBy), fee_group: T.nilable(::String), residual_id: T.nilable(::String)).void }
36
+ def initialize(fee_id: nil, account_id: nil, wallet_id: nil, created_on: nil, fee_name: nil, amount: nil, generated_by: nil, fee_group: nil, residual_id: nil)
35
37
  @fee_id = fee_id
36
38
  @account_id = account_id
37
39
  @wallet_id = wallet_id
@@ -40,6 +42,7 @@ module Moov
40
42
  @amount = amount
41
43
  @generated_by = generated_by
42
44
  @fee_group = fee_group
45
+ @residual_id = residual_id
43
46
  end
44
47
 
45
48
  sig { params(other: T.untyped).returns(T::Boolean) }
@@ -53,6 +56,7 @@ module Moov
53
56
  return false unless @amount == other.amount
54
57
  return false unless @generated_by == other.generated_by
55
58
  return false unless @fee_group == other.fee_group
59
+ return false unless @residual_id == other.residual_id
56
60
  true
57
61
  end
58
62
  end
@@ -24,4 +24,6 @@ class Moov::Models::Components::IncurredFee
24
24
  def generated_by=(str_); end
25
25
  def fee_group(); end
26
26
  def fee_group=(str_); end
27
+ def residual_id(); end
28
+ def residual_id=(str_); end
27
29
  end
@@ -18,8 +18,6 @@ module Moov
18
18
 
19
19
  field :invoice_number, ::String, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('invoiceNumber'), required: true } }
20
20
 
21
- field :description, ::String, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('description'), required: true } }
22
-
23
21
  field :customer_account_id, ::String, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('customerAccountID'), required: true } }
24
22
 
25
23
  field :partner_account_id, ::String, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('partnerAccountID'), required: true } }
@@ -44,9 +42,11 @@ module Moov
44
42
 
45
43
  field :created_on, ::DateTime, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('createdOn'), required: true, 'decoder': Utils.datetime_from_iso_format(false) } }
46
44
 
45
+ field :description, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('description') } }
46
+
47
47
  field :payment_link_code, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('paymentLinkCode') } }
48
48
 
49
- field :payments, Crystalline::Nilable.new(Crystalline::Array.new(Models::Components::InvoicePayment)), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('payments') } }
49
+ field :invoice_payments, Crystalline::Nilable.new(Crystalline::Array.new(Models::Components::InvoicePayment)), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('invoicePayments') } }
50
50
 
51
51
  field :invoice_date, Crystalline::Nilable.new(::DateTime), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('invoiceDate'), 'decoder': Utils.datetime_from_iso_format(true) } }
52
52
 
@@ -58,11 +58,10 @@ module Moov
58
58
 
59
59
  field :canceled_on, Crystalline::Nilable.new(::DateTime), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('canceledOn'), 'decoder': Utils.datetime_from_iso_format(true) } }
60
60
 
61
- sig { params(invoice_id: ::String, invoice_number: ::String, description: ::String, customer_account_id: ::String, partner_account_id: ::String, status: Models::Components::InvoiceStatus, line_items: Models::Components::InvoiceLineItems, subtotal_amount: Models::Components::AmountDecimal, tax_amount: Models::Components::AmountDecimal, total_amount: Models::Components::AmountDecimal, pending_amount: Models::Components::AmountDecimal, paid_amount: Models::Components::AmountDecimal, refunded_amount: Models::Components::AmountDecimal, disputed_amount: Models::Components::AmountDecimal, created_on: ::DateTime, payment_link_code: T.nilable(::String), payments: T.nilable(T::Array[Models::Components::InvoicePayment]), invoice_date: T.nilable(::DateTime), due_date: T.nilable(::DateTime), sent_on: T.nilable(::DateTime), paid_on: T.nilable(::DateTime), canceled_on: T.nilable(::DateTime)).void }
62
- def initialize(invoice_id:, invoice_number:, description:, customer_account_id:, partner_account_id:, status:, line_items:, subtotal_amount:, tax_amount:, total_amount:, pending_amount:, paid_amount:, refunded_amount:, disputed_amount:, created_on:, payment_link_code: nil, payments: nil, invoice_date: nil, due_date: nil, sent_on: nil, paid_on: nil, canceled_on: nil)
61
+ sig { params(invoice_id: ::String, invoice_number: ::String, customer_account_id: ::String, partner_account_id: ::String, status: Models::Components::InvoiceStatus, line_items: Models::Components::InvoiceLineItems, subtotal_amount: Models::Components::AmountDecimal, tax_amount: Models::Components::AmountDecimal, total_amount: Models::Components::AmountDecimal, pending_amount: Models::Components::AmountDecimal, paid_amount: Models::Components::AmountDecimal, refunded_amount: Models::Components::AmountDecimal, disputed_amount: Models::Components::AmountDecimal, created_on: ::DateTime, description: T.nilable(::String), payment_link_code: T.nilable(::String), invoice_payments: T.nilable(T::Array[Models::Components::InvoicePayment]), invoice_date: T.nilable(::DateTime), due_date: T.nilable(::DateTime), sent_on: T.nilable(::DateTime), paid_on: T.nilable(::DateTime), canceled_on: T.nilable(::DateTime)).void }
62
+ def initialize(invoice_id:, invoice_number:, customer_account_id:, partner_account_id:, status:, line_items:, subtotal_amount:, tax_amount:, total_amount:, pending_amount:, paid_amount:, refunded_amount:, disputed_amount:, created_on:, description: nil, payment_link_code: nil, invoice_payments: nil, invoice_date: nil, due_date: nil, sent_on: nil, paid_on: nil, canceled_on: nil)
63
63
  @invoice_id = invoice_id
64
64
  @invoice_number = invoice_number
65
- @description = description
66
65
  @customer_account_id = customer_account_id
67
66
  @partner_account_id = partner_account_id
68
67
  @status = status
@@ -75,8 +74,9 @@ module Moov
75
74
  @refunded_amount = refunded_amount
76
75
  @disputed_amount = disputed_amount
77
76
  @created_on = created_on
77
+ @description = description
78
78
  @payment_link_code = payment_link_code
79
- @payments = payments
79
+ @invoice_payments = invoice_payments
80
80
  @invoice_date = invoice_date
81
81
  @due_date = due_date
82
82
  @sent_on = sent_on
@@ -89,7 +89,6 @@ module Moov
89
89
  return false unless other.is_a? self.class
90
90
  return false unless @invoice_id == other.invoice_id
91
91
  return false unless @invoice_number == other.invoice_number
92
- return false unless @description == other.description
93
92
  return false unless @customer_account_id == other.customer_account_id
94
93
  return false unless @partner_account_id == other.partner_account_id
95
94
  return false unless @status == other.status
@@ -102,8 +101,9 @@ module Moov
102
101
  return false unless @refunded_amount == other.refunded_amount
103
102
  return false unless @disputed_amount == other.disputed_amount
104
103
  return false unless @created_on == other.created_on
104
+ return false unless @description == other.description
105
105
  return false unless @payment_link_code == other.payment_link_code
106
- return false unless @payments == other.payments
106
+ return false unless @invoice_payments == other.invoice_payments
107
107
  return false unless @invoice_date == other.invoice_date
108
108
  return false unless @due_date == other.due_date
109
109
  return false unless @sent_on == other.sent_on
@@ -12,8 +12,6 @@ class Moov::Models::Components::Invoice
12
12
  def invoice_id=(str_); end
13
13
  def invoice_number(); end
14
14
  def invoice_number=(str_); end
15
- def description(); end
16
- def description=(str_); end
17
15
  def customer_account_id(); end
18
16
  def customer_account_id=(str_); end
19
17
  def partner_account_id(); end
@@ -38,10 +36,12 @@ class Moov::Models::Components::Invoice
38
36
  def disputed_amount=(str_); end
39
37
  def created_on(); end
40
38
  def created_on=(str_); end
39
+ def description(); end
40
+ def description=(str_); end
41
41
  def payment_link_code(); end
42
42
  def payment_link_code=(str_); end
43
- def payments(); end
44
- def payments=(str_); end
43
+ def invoice_payments(); end
44
+ def invoice_payments=(str_); end
45
45
  def invoice_date(); end
46
46
  def invoice_date=(str_); end
47
47
  def due_date(); end
@@ -14,21 +14,15 @@ module Moov
14
14
  include Crystalline::MetadataFields
15
15
 
16
16
 
17
- field :payment_type, Models::Components::InvoiceExternalPaymentPaymentType, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('paymentType'), required: true, 'decoder': Utils.enum_from_string(Models::Components::InvoiceExternalPaymentPaymentType, false) } }
18
-
19
- field :description, ::String, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('description'), required: true } }
20
-
21
- field :amount, Models::Components::AmountDecimal, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('amount'), required: true } }
17
+ field :description, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('description') } }
22
18
 
23
19
  field :foreign_id, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('foreignID') } }
24
20
 
25
21
  field :payment_date, Crystalline::Nilable.new(::DateTime), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('paymentDate'), 'decoder': Utils.datetime_from_iso_format(true) } }
26
22
 
27
- sig { params(payment_type: Models::Components::InvoiceExternalPaymentPaymentType, description: ::String, amount: Models::Components::AmountDecimal, foreign_id: T.nilable(::String), payment_date: T.nilable(::DateTime)).void }
28
- def initialize(payment_type:, description:, amount:, foreign_id: nil, payment_date: nil)
29
- @payment_type = payment_type
23
+ sig { params(description: T.nilable(::String), foreign_id: T.nilable(::String), payment_date: T.nilable(::DateTime)).void }
24
+ def initialize(description: nil, foreign_id: nil, payment_date: nil)
30
25
  @description = description
31
- @amount = amount
32
26
  @foreign_id = foreign_id
33
27
  @payment_date = payment_date
34
28
  end
@@ -36,9 +30,7 @@ module Moov
36
30
  sig { params(other: T.untyped).returns(T::Boolean) }
37
31
  def ==(other)
38
32
  return false unless other.is_a? self.class
39
- return false unless @payment_type == other.payment_type
40
33
  return false unless @description == other.description
41
- return false unless @amount == other.amount
42
34
  return false unless @foreign_id == other.foreign_id
43
35
  return false unless @payment_date == other.payment_date
44
36
  true
@@ -8,12 +8,8 @@ end
8
8
 
9
9
 
10
10
  class Moov::Models::Components::InvoiceExternalPayment
11
- def payment_type(); end
12
- def payment_type=(str_); end
13
11
  def description(); end
14
12
  def description=(str_); end
15
- def amount(); end
16
- def amount=(str_); end
17
13
  def foreign_id(); end
18
14
  def foreign_id=(str_); end
19
15
  def payment_date(); end
@@ -14,15 +14,21 @@ module Moov
14
14
  include Crystalline::MetadataFields
15
15
 
16
16
 
17
- field :payment_type, Models::Components::InvoicePaymentType, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('paymentType'), required: true, 'decoder': Utils.enum_from_string(Models::Components::InvoicePaymentType, false) } }
17
+ field :invoice_payment_id, ::String, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('invoicePaymentID'), required: true } }
18
+
19
+ field :invoice_payment_type, Models::Components::InvoicePaymentType, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('invoicePaymentType'), required: true, 'decoder': Utils.enum_from_string(Models::Components::InvoicePaymentType, false) } }
20
+
21
+ field :amount, Models::Components::AmountDecimal, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('amount'), required: true } }
18
22
 
19
23
  field :transfer, Crystalline::Nilable.new(Models::Components::InvoiceTransferPayment), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('transfer') } }
20
24
 
21
25
  field :external, Crystalline::Nilable.new(Models::Components::InvoiceExternalPayment), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('external') } }
22
26
 
23
- sig { params(payment_type: Models::Components::InvoicePaymentType, transfer: T.nilable(Models::Components::InvoiceTransferPayment), external: T.nilable(Models::Components::InvoiceExternalPayment)).void }
24
- def initialize(payment_type:, transfer: nil, external: nil)
25
- @payment_type = payment_type
27
+ sig { params(invoice_payment_id: ::String, invoice_payment_type: Models::Components::InvoicePaymentType, amount: Models::Components::AmountDecimal, transfer: T.nilable(Models::Components::InvoiceTransferPayment), external: T.nilable(Models::Components::InvoiceExternalPayment)).void }
28
+ def initialize(invoice_payment_id:, invoice_payment_type:, amount:, transfer: nil, external: nil)
29
+ @invoice_payment_id = invoice_payment_id
30
+ @invoice_payment_type = invoice_payment_type
31
+ @amount = amount
26
32
  @transfer = transfer
27
33
  @external = external
28
34
  end
@@ -30,7 +36,9 @@ module Moov
30
36
  sig { params(other: T.untyped).returns(T::Boolean) }
31
37
  def ==(other)
32
38
  return false unless other.is_a? self.class
33
- return false unless @payment_type == other.payment_type
39
+ return false unless @invoice_payment_id == other.invoice_payment_id
40
+ return false unless @invoice_payment_type == other.invoice_payment_type
41
+ return false unless @amount == other.amount
34
42
  return false unless @transfer == other.transfer
35
43
  return false unless @external == other.external
36
44
  true
@@ -8,8 +8,12 @@ end
8
8
 
9
9
 
10
10
  class Moov::Models::Components::InvoicePayment
11
- def payment_type(); end
12
- def payment_type=(str_); end
11
+ def invoice_payment_id(); end
12
+ def invoice_payment_id=(str_); end
13
+ def invoice_payment_type(); end
14
+ def invoice_payment_type=(str_); end
15
+ def amount(); end
16
+ def amount=(str_); end
13
17
  def transfer(); end
14
18
  def transfer=(str_); end
15
19
  def external(); end
@@ -14,20 +14,16 @@ module Moov
14
14
  include Crystalline::MetadataFields
15
15
 
16
16
 
17
- field :payment_type, Models::Components::InvoiceTransferPaymentPaymentType, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('paymentType'), required: true, 'decoder': Utils.enum_from_string(Models::Components::InvoiceTransferPaymentPaymentType, false) } }
18
-
19
17
  field :transfer_id, ::String, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('transferID'), required: true } }
20
18
 
21
- sig { params(payment_type: Models::Components::InvoiceTransferPaymentPaymentType, transfer_id: ::String).void }
22
- def initialize(payment_type:, transfer_id:)
23
- @payment_type = payment_type
19
+ sig { params(transfer_id: ::String).void }
20
+ def initialize(transfer_id:)
24
21
  @transfer_id = transfer_id
25
22
  end
26
23
 
27
24
  sig { params(other: T.untyped).returns(T::Boolean) }
28
25
  def ==(other)
29
26
  return false unless other.is_a? self.class
30
- return false unless @payment_type == other.payment_type
31
27
  return false unless @transfer_id == other.transfer_id
32
28
  true
33
29
  end
@@ -8,8 +8,6 @@ end
8
8
 
9
9
 
10
10
  class Moov::Models::Components::InvoiceTransferPayment
11
- def payment_type(); end
12
- def payment_type=(str_); end
13
11
  def transfer_id(); end
14
12
  def transfer_id=(str_); end
15
13
  end
@@ -21,9 +21,9 @@ module Moov
21
21
  # Timestamp to run the transfer after. Value must be into the future.
22
22
  field :run_on, Crystalline::Nilable.new(::DateTime), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('runOn'), 'decoder': Utils.datetime_from_iso_format(true) } }
23
23
  # Defines the attributes of a transfer.
24
- field :run_transfer, Crystalline::Nilable.new(Models::Components::RunTransfer), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('runTransfer') } }
24
+ field :run_transfer, Crystalline::Nilable.new(Models::Components::CreateRunTransfer), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('runTransfer') } }
25
25
 
26
- sig { params(canceled: T.nilable(T::Boolean), occurrence_id: T.nilable(::String), run_on: T.nilable(::DateTime), run_transfer: T.nilable(Models::Components::RunTransfer)).void }
26
+ sig { params(canceled: T.nilable(T::Boolean), occurrence_id: T.nilable(::String), run_on: T.nilable(::DateTime), run_transfer: T.nilable(Models::Components::CreateRunTransfer)).void }
27
27
  def initialize(canceled: nil, occurrence_id: nil, run_on: nil, run_transfer: nil)
28
28
  @canceled = canceled
29
29
  @occurrence_id = occurrence_id
@@ -15,7 +15,7 @@ module Moov
15
15
 
16
16
 
17
17
  field :run_on, ::DateTime, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('runOn'), required: true, 'decoder': Utils.datetime_from_iso_format(false) } }
18
- # Defines the attributes of a transfer.
18
+
19
19
  field :run_transfer, Models::Components::RunTransfer, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('runTransfer'), required: true } }
20
20
 
21
21
  field :schedule_id, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('scheduleID') } }
@@ -0,0 +1,41 @@
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
+
11
+ # Response from pinging a webhook.
12
+ class PingResponse
13
+ extend T::Sig
14
+ include Crystalline::MetadataFields
15
+
16
+ # The webhook that was pinged.
17
+ field :webhook, Models::Components::Webhook, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('webhook'), required: true } }
18
+ # The request body sent to the target URL. It will contain an event type of `event.test` and an empty (null) data payload.
19
+ field :request_body_sent, Crystalline::Hash.new(Symbol, ::Object), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('requestBodySent'), required: true } }
20
+ # The response status code after sending a ping event to the URL.
21
+ field :response_status_code, ::Integer, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('responseStatusCode'), required: true } }
22
+
23
+ sig { params(webhook: Models::Components::Webhook, request_body_sent: T::Hash[Symbol, ::Object], response_status_code: ::Integer).void }
24
+ def initialize(webhook:, request_body_sent:, response_status_code:)
25
+ @webhook = webhook
26
+ @request_body_sent = request_body_sent
27
+ @response_status_code = response_status_code
28
+ end
29
+
30
+ sig { params(other: T.untyped).returns(T::Boolean) }
31
+ def ==(other)
32
+ return false unless other.is_a? self.class
33
+ return false unless @webhook == other.webhook
34
+ return false unless @request_body_sent == other.request_body_sent
35
+ return false unless @response_status_code == other.response_status_code
36
+ true
37
+ end
38
+ end
39
+ end
40
+ end
41
+ end
@@ -0,0 +1,17 @@
1
+ # typed: true
2
+ # frozen_string_literal: true
3
+
4
+
5
+ class Moov::Models::Components::PingResponse
6
+ extend ::Crystalline::MetadataFields::ClassMethods
7
+ end
8
+
9
+
10
+ class Moov::Models::Components::PingResponse
11
+ def webhook(); end
12
+ def webhook=(str_); end
13
+ def request_body_sent(); end
14
+ def request_body_sent=(str_); end
15
+ def response_status_code(); end
16
+ def response_status_code=(str_); end
17
+ end
@@ -17,13 +17,13 @@ module Moov
17
17
  # Generators available online at the following sites - https://freetools.textmagic.com/rrule-generator, https://jkbrzt.github.io/rrule/
18
18
  field :recurrence_rule, ::String, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('recurrenceRule'), required: true } }
19
19
  # Defines the attributes of a transfer.
20
- field :run_transfer, Models::Components::RunTransfer, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('runTransfer'), required: true } }
20
+ field :run_transfer, Models::Components::CreateRunTransfer, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('runTransfer'), required: true } }
21
21
  # True if the RRule set runs indefinitely.
22
22
  field :indefinite, Crystalline::Nilable.new(Crystalline::Boolean.new), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('indefinite') } }
23
23
 
24
24
  field :start, Crystalline::Nilable.new(::DateTime), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('start'), 'decoder': Utils.datetime_from_iso_format(true) } }
25
25
 
26
- sig { params(recurrence_rule: ::String, run_transfer: Models::Components::RunTransfer, indefinite: T.nilable(T::Boolean), start: T.nilable(::DateTime)).void }
26
+ sig { params(recurrence_rule: ::String, run_transfer: Models::Components::CreateRunTransfer, indefinite: T.nilable(T::Boolean), start: T.nilable(::DateTime)).void }
27
27
  def initialize(recurrence_rule:, run_transfer:, indefinite: nil, start: nil)
28
28
  @recurrence_rule = recurrence_rule
29
29
  @run_transfer = run_transfer
@@ -0,0 +1,46 @@
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
+
11
+
12
+ class RecurResponse
13
+ extend T::Sig
14
+ include Crystalline::MetadataFields
15
+
16
+ # RRule as defined by RFC 5545 (https://www.rfc-editor.org/rfc/rfc5545#section-3.3.10).
17
+ # Generators available online at the following sites - https://freetools.textmagic.com/rrule-generator, https://jkbrzt.github.io/rrule/
18
+ field :recurrence_rule, ::String, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('recurrenceRule'), required: true } }
19
+
20
+ field :run_transfer, Models::Components::RunTransfer, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('runTransfer'), required: true } }
21
+ # True if the RRule set runs indefinitely.
22
+ field :indefinite, Crystalline::Nilable.new(Crystalline::Boolean.new), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('indefinite') } }
23
+
24
+ field :start, Crystalline::Nilable.new(::DateTime), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('start'), 'decoder': Utils.datetime_from_iso_format(true) } }
25
+
26
+ sig { params(recurrence_rule: ::String, run_transfer: Models::Components::RunTransfer, indefinite: T.nilable(T::Boolean), start: T.nilable(::DateTime)).void }
27
+ def initialize(recurrence_rule:, run_transfer:, indefinite: nil, start: nil)
28
+ @recurrence_rule = recurrence_rule
29
+ @run_transfer = run_transfer
30
+ @indefinite = indefinite
31
+ @start = start
32
+ end
33
+
34
+ sig { params(other: T.untyped).returns(T::Boolean) }
35
+ def ==(other)
36
+ return false unless other.is_a? self.class
37
+ return false unless @recurrence_rule == other.recurrence_rule
38
+ return false unless @run_transfer == other.run_transfer
39
+ return false unless @indefinite == other.indefinite
40
+ return false unless @start == other.start
41
+ true
42
+ end
43
+ end
44
+ end
45
+ end
46
+ end
@@ -0,0 +1,19 @@
1
+ # typed: true
2
+ # frozen_string_literal: true
3
+
4
+
5
+ class Moov::Models::Components::RecurResponse
6
+ extend ::Crystalline::MetadataFields::ClassMethods
7
+ end
8
+
9
+
10
+ class Moov::Models::Components::RecurResponse
11
+ def recurrence_rule(); end
12
+ def recurrence_rule=(str_); end
13
+ def run_transfer(); end
14
+ def run_transfer=(str_); end
15
+ def indefinite(); end
16
+ def indefinite=(str_); end
17
+ def start(); end
18
+ def start=(str_); end
19
+ end