moov_ruby 0.3.5 → 0.3.7

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 (103) hide show
  1. checksums.yaml +4 -4
  2. data/lib/moov/client.rb +2 -1
  3. data/lib/moov/invoices.rb +792 -0
  4. data/lib/moov/models/components/amountdecimalupdate.rb +39 -0
  5. data/lib/moov/models/components/amountdecimalupdate.rbi +15 -0
  6. data/lib/moov/models/components/createinvoice.rb +53 -0
  7. data/lib/moov/models/components/createinvoice.rbi +23 -0
  8. data/lib/moov/models/components/createpaymentlink.rb +2 -2
  9. data/lib/moov/models/components/createpaymentlinklineitem.rb +53 -0
  10. data/lib/moov/models/components/createpaymentlinklineitem.rbi +23 -0
  11. data/lib/moov/models/components/createpaymentlinklineitemoption.rb +49 -0
  12. data/lib/moov/models/components/createpaymentlinklineitemoption.rbi +21 -0
  13. data/lib/moov/models/components/createpaymentlinklineitemoptionvalidationerror.rb +45 -0
  14. data/lib/moov/models/components/createpaymentlinklineitemoptionvalidationerror.rbi +19 -0
  15. data/lib/moov/models/components/createpaymentlinklineitems.rb +34 -0
  16. data/lib/moov/models/components/{paymentlinklineitemsupdate.rbi → createpaymentlinklineitems.rbi} +2 -2
  17. data/lib/moov/models/components/{paymentlinklineitemsupdate.rb → createpaymentlinklineitemsupdate.rb} +3 -3
  18. data/lib/moov/models/components/{paymentlinklineitemsvalidationerror.rbi → createpaymentlinklineitemsupdate.rbi} +2 -2
  19. data/lib/moov/models/components/createpaymentlinklineitemsvalidationerror.rb +33 -0
  20. data/lib/moov/models/components/createpaymentlinklineitemsvalidationerror.rbi +13 -0
  21. data/lib/moov/models/components/createpaymentlinklineitemvalidationerror.rb +49 -0
  22. data/lib/moov/models/components/createpaymentlinklineitemvalidationerror.rbi +21 -0
  23. data/lib/moov/models/components/invoice.rb +117 -0
  24. data/lib/moov/models/components/invoice.rbi +55 -0
  25. data/lib/moov/models/components/invoiceexternalpayment.rb +49 -0
  26. data/lib/moov/models/components/invoiceexternalpayment.rbi +21 -0
  27. data/lib/moov/models/components/invoiceexternalpayment_paymenttype.rb +21 -0
  28. data/lib/moov/models/components/invoiceexternalpayment_paymenttype.rbi +11 -0
  29. data/lib/moov/models/components/invoicelineitem.rb +49 -0
  30. data/lib/moov/models/components/{paymentlinklineitemvalidationerror.rbi → invoicelineitem.rbi} +6 -6
  31. data/lib/moov/models/components/invoicelineitemoption.rb +45 -0
  32. data/lib/moov/models/components/{paymentlinklineitemoptionvalidationerror.rbi → invoicelineitemoption.rbi} +6 -6
  33. data/lib/moov/models/components/{paymentlinklineitemoptionvalidationerror.rb → invoicelineitemoptionvalidationerror.rb} +1 -1
  34. data/lib/moov/models/components/invoicelineitemoptionvalidationerror.rbi +19 -0
  35. data/lib/moov/models/components/invoicelineitems.rb +33 -0
  36. data/lib/moov/models/components/invoicelineitems.rbi +13 -0
  37. data/lib/moov/models/components/invoicelineitemsupdate.rb +33 -0
  38. data/lib/moov/models/components/invoicelineitemsupdate.rbi +13 -0
  39. data/lib/moov/models/components/{paymentlinklineitemsvalidationerror.rb → invoicelineitemsvalidationerror.rb} +3 -3
  40. data/lib/moov/models/components/invoicelineitemsvalidationerror.rbi +13 -0
  41. data/lib/moov/models/components/{paymentlinklineitemvalidationerror.rb → invoicelineitemvalidationerror.rb} +3 -3
  42. data/lib/moov/models/components/invoicelineitemvalidationerror.rbi +21 -0
  43. data/lib/moov/models/components/invoicepayment.rb +28 -0
  44. data/lib/moov/models/components/invoicepayment.rbi +11 -0
  45. data/lib/moov/models/components/invoicestatus.rb +26 -0
  46. data/lib/moov/models/components/invoicestatus.rbi +11 -0
  47. data/lib/moov/models/components/invoicetransferpayment.rb +37 -0
  48. data/lib/moov/models/components/invoicetransferpayment.rbi +15 -0
  49. data/lib/moov/models/components/invoicetransferpayment_paymenttype.rb +21 -0
  50. data/lib/moov/models/components/invoicetransferpayment_paymenttype.rbi +11 -0
  51. data/lib/moov/models/components/markinvoicepaid.rb +41 -0
  52. data/lib/moov/models/components/markinvoicepaid.rbi +17 -0
  53. data/lib/moov/models/components/paymentlinklineitem.rb +6 -2
  54. data/lib/moov/models/components/paymentlinklineitem.rbi +2 -0
  55. data/lib/moov/models/components/paymentlinklineitemimagemetadata.rb +45 -0
  56. data/lib/moov/models/components/paymentlinklineitemimagemetadata.rbi +19 -0
  57. data/lib/moov/models/components/paymentlinklineitemoption.rb +6 -2
  58. data/lib/moov/models/components/paymentlinklineitemoption.rbi +2 -0
  59. data/lib/moov/models/components/updateinvoice.rb +53 -0
  60. data/lib/moov/models/components/updateinvoice.rbi +23 -0
  61. data/lib/moov/models/components/updatepaymentlink.rb +2 -2
  62. data/lib/moov/models/components/webhookdatainvoicecreated.rb +37 -0
  63. data/lib/moov/models/components/webhookdatainvoicecreated.rbi +15 -0
  64. data/lib/moov/models/components/webhookdatainvoiceupdated.rb +41 -0
  65. data/lib/moov/models/components/webhookdatainvoiceupdated.rbi +17 -0
  66. data/lib/moov/models/components/webhookevent.rb +2 -2
  67. data/lib/moov/models/components/webhookeventtype.rb +2 -0
  68. data/lib/moov/models/components.rb +28 -4
  69. data/lib/moov/models/errors/createinvoiceerror.rb +57 -0
  70. data/lib/moov/models/errors/createinvoiceerror.rbi +25 -0
  71. data/lib/moov/models/errors/createpaymentlinkerror.rb +2 -2
  72. data/lib/moov/models/errors/listinvoicesvalidationerror.rb +49 -0
  73. data/lib/moov/models/errors/listinvoicesvalidationerror.rbi +21 -0
  74. data/lib/moov/models/errors/markinvoicepaiderror.rb +45 -0
  75. data/lib/moov/models/errors/markinvoicepaiderror.rbi +19 -0
  76. data/lib/moov/models/errors/updateinvoiceerror.rb +57 -0
  77. data/lib/moov/models/errors/updateinvoiceerror.rbi +25 -0
  78. data/lib/moov/models/errors/updatepaymentlinkerror.rb +2 -2
  79. data/lib/moov/models/errors.rb +4 -0
  80. data/lib/moov/models/operations/createinvoice_request.rb +50 -0
  81. data/lib/moov/models/operations/createinvoice_request.rbi +17 -0
  82. data/lib/moov/models/operations/createinvoice_response.rb +49 -0
  83. data/lib/moov/models/operations/createinvoice_response.rbi +21 -0
  84. data/lib/moov/models/operations/getinvoice_request.rb +50 -0
  85. data/lib/moov/models/operations/getinvoice_request.rbi +17 -0
  86. data/lib/moov/models/operations/getinvoice_response.rb +49 -0
  87. data/lib/moov/models/operations/getinvoice_response.rbi +21 -0
  88. data/lib/moov/models/operations/listinvoices_request.rb +62 -0
  89. data/lib/moov/models/operations/listinvoices_request.rbi +23 -0
  90. data/lib/moov/models/operations/listinvoices_response.rb +49 -0
  91. data/lib/moov/models/operations/listinvoices_response.rbi +21 -0
  92. data/lib/moov/models/operations/markpaidinvoice_request.rb +54 -0
  93. data/lib/moov/models/operations/markpaidinvoice_request.rbi +19 -0
  94. data/lib/moov/models/operations/markpaidinvoice_response.rb +49 -0
  95. data/lib/moov/models/operations/markpaidinvoice_response.rbi +21 -0
  96. data/lib/moov/models/operations/updateinvoice_request.rb +54 -0
  97. data/lib/moov/models/operations/updateinvoice_request.rbi +19 -0
  98. data/lib/moov/models/operations/updateinvoice_response.rb +49 -0
  99. data/lib/moov/models/operations/updateinvoice_response.rbi +21 -0
  100. data/lib/moov/models/operations.rb +10 -0
  101. data/lib/moov/sdkconfiguration.rb +3 -3
  102. data/lib/moov_ruby.rb +1 -0
  103. metadata +87 -10
@@ -40,6 +40,7 @@ module Moov
40
40
  autoload :Adjustment, 'moov/models/components/adjustment.rb'
41
41
  autoload :Amount, 'moov/models/components/amount.rb'
42
42
  autoload :AmountDecimal, 'moov/models/components/amountdecimal.rb'
43
+ autoload :AmountDecimalUpdate, 'moov/models/components/amountdecimalupdate.rb'
43
44
  autoload :AmountDecimalValidationError, 'moov/models/components/amountdecimalvalidationerror.rb'
44
45
  autoload :AmountUpdate, 'moov/models/components/amountupdate.rb'
45
46
  autoload :AmountValidationError, 'moov/models/components/amountvalidationerror.rb'
@@ -158,7 +159,15 @@ module Moov
158
159
  autoload :CreateIndividualErrorItin, 'moov/models/components/createindividualerror_itin.rb'
159
160
  autoload :CreateIndividualErrorSsn, 'moov/models/components/createindividualerror_ssn.rb'
160
161
  autoload :CreateIndividualProfile, 'moov/models/components/createindividualprofile.rb'
162
+ autoload :CreateInvoice, 'moov/models/components/createinvoice.rb'
161
163
  autoload :CreatePaymentLink, 'moov/models/components/createpaymentlink.rb'
164
+ autoload :CreatePaymentLinkLineItem, 'moov/models/components/createpaymentlinklineitem.rb'
165
+ autoload :CreatePaymentLinkLineItemOption, 'moov/models/components/createpaymentlinklineitemoption.rb'
166
+ autoload :CreatePaymentLinkLineItemOptionValidationError, 'moov/models/components/createpaymentlinklineitemoptionvalidationerror.rb'
167
+ autoload :CreatePaymentLinkLineItemValidationError, 'moov/models/components/createpaymentlinklineitemvalidationerror.rb'
168
+ autoload :CreatePaymentLinkLineItems, 'moov/models/components/createpaymentlinklineitems.rb'
169
+ autoload :CreatePaymentLinkLineItemsUpdate, 'moov/models/components/createpaymentlinklineitemsupdate.rb'
170
+ autoload :CreatePaymentLinkLineItemsValidationError, 'moov/models/components/createpaymentlinklineitemsvalidationerror.rb'
162
171
  autoload :CreateProductOption, 'moov/models/components/createproductoption.rb'
163
172
  autoload :CreateProductOptionGroup, 'moov/models/components/createproductoptiongroup.rb'
164
173
  autoload :CreateProfile, 'moov/models/components/createprofile.rb'
@@ -260,6 +269,20 @@ module Moov
260
269
  autoload :InstantBankCreditPaymentMethodPaymentMethodType, 'moov/models/components/instantbankcreditpaymentmethod_paymentmethodtype.rb'
261
270
  autoload :InstantPaymentFees, 'moov/models/components/instantpaymentfees.rb'
262
271
  autoload :InstitutionsSearchResponse, 'moov/models/components/institutionssearchresponse.rb'
272
+ autoload :Invoice, 'moov/models/components/invoice.rb'
273
+ autoload :InvoiceExternalPayment, 'moov/models/components/invoiceexternalpayment.rb'
274
+ autoload :InvoiceExternalPaymentPaymentType, 'moov/models/components/invoiceexternalpayment_paymenttype.rb'
275
+ autoload :InvoiceLineItem, 'moov/models/components/invoicelineitem.rb'
276
+ autoload :InvoiceLineItemOption, 'moov/models/components/invoicelineitemoption.rb'
277
+ autoload :InvoiceLineItemOptionValidationError, 'moov/models/components/invoicelineitemoptionvalidationerror.rb'
278
+ autoload :InvoiceLineItemValidationError, 'moov/models/components/invoicelineitemvalidationerror.rb'
279
+ autoload :InvoiceLineItems, 'moov/models/components/invoicelineitems.rb'
280
+ autoload :InvoiceLineItemsUpdate, 'moov/models/components/invoicelineitemsupdate.rb'
281
+ autoload :InvoiceLineItemsValidationError, 'moov/models/components/invoicelineitemsvalidationerror.rb'
282
+ autoload :InvoicePayment, 'moov/models/components/invoicepayment.rb'
283
+ autoload :InvoiceStatus, 'moov/models/components/invoicestatus.rb'
284
+ autoload :InvoiceTransferPayment, 'moov/models/components/invoicetransferpayment.rb'
285
+ autoload :InvoiceTransferPaymentPaymentType, 'moov/models/components/invoicetransferpayment_paymenttype.rb'
263
286
  autoload :IssuedCard, 'moov/models/components/issuedcard.rb'
264
287
  autoload :IssuedCardAuthorization, 'moov/models/components/issuedcardauthorization.rb'
265
288
  autoload :IssuedCardAuthorizationEvent, 'moov/models/components/issuedcardauthorizationevent.rb'
@@ -290,6 +313,7 @@ module Moov
290
313
  autoload :MXAuthorizationCode, 'moov/models/components/mxauthorizationcode.rb'
291
314
  autoload :ManualTermsOfService, 'moov/models/components/manualtermsofservice.rb'
292
315
  autoload :ManualTermsOfServiceUpdate, 'moov/models/components/manualtermsofserviceupdate.rb'
316
+ autoload :MarkInvoicePaid, 'moov/models/components/markinvoicepaid.rb'
293
317
  autoload :MicroDepositStatus, 'moov/models/components/microdepositstatus.rb'
294
318
  autoload :MinimumCommitment, 'moov/models/components/minimumcommitment.rb'
295
319
  autoload :Mode, 'moov/models/components/mode.rb'
@@ -331,12 +355,9 @@ module Moov
331
355
  autoload :PaymentLinkDisplayOptions, 'moov/models/components/paymentlinkdisplayoptions.rb'
332
356
  autoload :PaymentLinkDisplayOptionsUpdate, 'moov/models/components/paymentlinkdisplayoptionsupdate.rb'
333
357
  autoload :PaymentLinkLineItem, 'moov/models/components/paymentlinklineitem.rb'
358
+ autoload :PaymentLinkLineItemImageMetadata, 'moov/models/components/paymentlinklineitemimagemetadata.rb'
334
359
  autoload :PaymentLinkLineItemOption, 'moov/models/components/paymentlinklineitemoption.rb'
335
- autoload :PaymentLinkLineItemOptionValidationError, 'moov/models/components/paymentlinklineitemoptionvalidationerror.rb'
336
- autoload :PaymentLinkLineItemValidationError, 'moov/models/components/paymentlinklineitemvalidationerror.rb'
337
360
  autoload :PaymentLinkLineItems, 'moov/models/components/paymentlinklineitems.rb'
338
- autoload :PaymentLinkLineItemsUpdate, 'moov/models/components/paymentlinklineitemsupdate.rb'
339
- autoload :PaymentLinkLineItemsValidationError, 'moov/models/components/paymentlinklineitemsvalidationerror.rb'
340
361
  autoload :PaymentLinkPaymentDetails, 'moov/models/components/paymentlinkpaymentdetails.rb'
341
362
  autoload :PaymentLinkPaymentDetailsUpdate, 'moov/models/components/paymentlinkpaymentdetailsupdate.rb'
342
363
  autoload :PaymentLinkPayoutDetails, 'moov/models/components/paymentlinkpayoutdetails.rb'
@@ -477,6 +498,7 @@ module Moov
477
498
  autoload :UpdateColor, 'moov/models/components/updatecolor.rb'
478
499
  autoload :UpdateColors, 'moov/models/components/updatecolors.rb'
479
500
  autoload :UpdateEvidence, 'moov/models/components/updateevidence.rb'
501
+ autoload :UpdateInvoice, 'moov/models/components/updateinvoice.rb'
480
502
  autoload :UpdateIssuedCard, 'moov/models/components/updateissuedcard.rb'
481
503
  autoload :UpdatePaymentLink, 'moov/models/components/updatepaymentlink.rb'
482
504
  autoload :UpdateRepresentative, 'moov/models/components/updaterepresentative.rb'
@@ -523,6 +545,8 @@ module Moov
523
545
  autoload :WebhookDataCardAutoUpdated, 'moov/models/components/webhookdatacardautoupdated.rb'
524
546
  autoload :WebhookDataDisputeCreated, 'moov/models/components/webhookdatadisputecreated.rb'
525
547
  autoload :WebhookDataDisputeUpdated, 'moov/models/components/webhookdatadisputeupdated.rb'
548
+ autoload :WebhookDataInvoiceCreated, 'moov/models/components/webhookdatainvoicecreated.rb'
549
+ autoload :WebhookDataInvoiceUpdated, 'moov/models/components/webhookdatainvoiceupdated.rb'
526
550
  autoload :WebhookDataNetworkIDUpdated, 'moov/models/components/webhookdatanetworkidupdated.rb'
527
551
  autoload :WebhookDataPaymentMethodDisabled, 'moov/models/components/webhookdatapaymentmethoddisabled.rb'
528
552
  autoload :WebhookDataPaymentMethodEnabled, 'moov/models/components/webhookdatapaymentmethodenabled.rb'
@@ -0,0 +1,57 @@
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 Errors
10
+
11
+
12
+ class CreateInvoiceError < StandardError
13
+ extend T::Sig
14
+ include Crystalline::MetadataFields
15
+
16
+
17
+ field :customer_account_id, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('customerAccountID') } }
18
+
19
+ field :description, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('description') } }
20
+
21
+ field :line_items, Crystalline::Nilable.new(Models::Components::InvoiceLineItemsValidationError), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('lineItems') } }
22
+
23
+ field :invoice_date, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('invoiceDate') } }
24
+
25
+ field :due_date, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('dueDate') } }
26
+
27
+ field :tax_amount, Crystalline::Nilable.new(Models::Components::AmountDecimalValidationError), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('taxAmount') } }
28
+ # Raw HTTP response; suitable for custom response parsing
29
+ field :raw_response, Crystalline::Nilable.new(::Faraday::Response), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('-') } }
30
+
31
+ sig { params(customer_account_id: T.nilable(::String), description: T.nilable(::String), line_items: T.nilable(Models::Components::InvoiceLineItemsValidationError), invoice_date: T.nilable(::String), due_date: T.nilable(::String), tax_amount: T.nilable(Models::Components::AmountDecimalValidationError), raw_response: T.nilable(::Faraday::Response)).void }
32
+ def initialize(customer_account_id: nil, description: nil, line_items: nil, invoice_date: nil, due_date: nil, tax_amount: nil, raw_response: nil)
33
+ @customer_account_id = customer_account_id
34
+ @description = description
35
+ @line_items = line_items
36
+ @invoice_date = invoice_date
37
+ @due_date = due_date
38
+ @tax_amount = tax_amount
39
+ @raw_response = raw_response
40
+ end
41
+
42
+ sig { params(other: T.untyped).returns(T::Boolean) }
43
+ def ==(other)
44
+ return false unless other.is_a? self.class
45
+ return false unless @customer_account_id == other.customer_account_id
46
+ return false unless @description == other.description
47
+ return false unless @line_items == other.line_items
48
+ return false unless @invoice_date == other.invoice_date
49
+ return false unless @due_date == other.due_date
50
+ return false unless @tax_amount == other.tax_amount
51
+ return false unless @raw_response == other.raw_response
52
+ true
53
+ end
54
+ end
55
+ end
56
+ end
57
+ end
@@ -0,0 +1,25 @@
1
+ # typed: true
2
+ # frozen_string_literal: true
3
+
4
+
5
+ class Moov::Models::Errors::CreateInvoiceError
6
+ extend ::Crystalline::MetadataFields::ClassMethods
7
+ end
8
+
9
+
10
+ class Moov::Models::Errors::CreateInvoiceError
11
+ def customer_account_id(); end
12
+ def customer_account_id=(str_); end
13
+ def description(); end
14
+ def description=(str_); end
15
+ def line_items(); end
16
+ def line_items=(str_); end
17
+ def invoice_date(); end
18
+ def invoice_date=(str_); end
19
+ def due_date(); end
20
+ def due_date=(str_); end
21
+ def tax_amount(); end
22
+ def tax_amount=(str_); end
23
+ def raw_response(); end
24
+ def raw_response=(str_); end
25
+ end
@@ -30,11 +30,11 @@ module Moov
30
30
 
31
31
  field :payout, Crystalline::Nilable.new(Models::Components::PayoutDetailsError), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('payout') } }
32
32
 
33
- field :line_items, Crystalline::Nilable.new(Models::Components::PaymentLinkLineItemsValidationError), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('lineItems') } }
33
+ field :line_items, Crystalline::Nilable.new(Models::Components::CreatePaymentLinkLineItemsValidationError), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('lineItems') } }
34
34
  # Raw HTTP response; suitable for custom response parsing
35
35
  field :raw_response, Crystalline::Nilable.new(::Faraday::Response), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('-') } }
36
36
 
37
- sig { params(partner_account_id: T.nilable(::String), merchant_payment_method_id: T.nilable(::String), amount: T.nilable(Models::Components::AmountValidationError), max_uses: T.nilable(::String), expires_on: T.nilable(::String), display: T.nilable(Models::Components::DisplayOptionsError), payment: T.nilable(Models::Components::PaymentDetailsError), payout: T.nilable(Models::Components::PayoutDetailsError), line_items: T.nilable(Models::Components::PaymentLinkLineItemsValidationError), raw_response: T.nilable(::Faraday::Response)).void }
37
+ sig { params(partner_account_id: T.nilable(::String), merchant_payment_method_id: T.nilable(::String), amount: T.nilable(Models::Components::AmountValidationError), max_uses: T.nilable(::String), expires_on: T.nilable(::String), display: T.nilable(Models::Components::DisplayOptionsError), payment: T.nilable(Models::Components::PaymentDetailsError), payout: T.nilable(Models::Components::PayoutDetailsError), line_items: T.nilable(Models::Components::CreatePaymentLinkLineItemsValidationError), raw_response: T.nilable(::Faraday::Response)).void }
38
38
  def initialize(partner_account_id: nil, merchant_payment_method_id: nil, amount: nil, max_uses: nil, expires_on: nil, display: nil, payment: nil, payout: nil, line_items: nil, raw_response: nil)
39
39
  @partner_account_id = partner_account_id
40
40
  @merchant_payment_method_id = merchant_payment_method_id
@@ -0,0 +1,49 @@
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 Errors
10
+
11
+
12
+ class ListInvoicesValidationError < StandardError
13
+ extend T::Sig
14
+ include Crystalline::MetadataFields
15
+
16
+
17
+ field :status, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('status') } }
18
+
19
+ field :customer_account_id, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('customerAccountID') } }
20
+
21
+ field :skip, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('skip') } }
22
+
23
+ field :count, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('count') } }
24
+ # Raw HTTP response; suitable for custom response parsing
25
+ field :raw_response, Crystalline::Nilable.new(::Faraday::Response), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('-') } }
26
+
27
+ sig { params(status: T.nilable(::String), customer_account_id: T.nilable(::String), skip: T.nilable(::String), count: T.nilable(::String), raw_response: T.nilable(::Faraday::Response)).void }
28
+ def initialize(status: nil, customer_account_id: nil, skip: nil, count: nil, raw_response: nil)
29
+ @status = status
30
+ @customer_account_id = customer_account_id
31
+ @skip = skip
32
+ @count = count
33
+ @raw_response = raw_response
34
+ end
35
+
36
+ sig { params(other: T.untyped).returns(T::Boolean) }
37
+ def ==(other)
38
+ return false unless other.is_a? self.class
39
+ return false unless @status == other.status
40
+ return false unless @customer_account_id == other.customer_account_id
41
+ return false unless @skip == other.skip
42
+ return false unless @count == other.count
43
+ return false unless @raw_response == other.raw_response
44
+ true
45
+ end
46
+ end
47
+ end
48
+ end
49
+ end
@@ -0,0 +1,21 @@
1
+ # typed: true
2
+ # frozen_string_literal: true
3
+
4
+
5
+ class Moov::Models::Errors::ListInvoicesValidationError
6
+ extend ::Crystalline::MetadataFields::ClassMethods
7
+ end
8
+
9
+
10
+ class Moov::Models::Errors::ListInvoicesValidationError
11
+ def status(); end
12
+ def status=(str_); end
13
+ def customer_account_id(); end
14
+ def customer_account_id=(str_); end
15
+ def skip(); end
16
+ def skip=(str_); end
17
+ def count(); end
18
+ def count=(str_); end
19
+ def raw_response(); end
20
+ def raw_response=(str_); end
21
+ 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 Errors
10
+
11
+
12
+ class MarkInvoicePaidError < StandardError
13
+ extend T::Sig
14
+ include Crystalline::MetadataFields
15
+
16
+
17
+ field :foreign_id, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('foreignID') } }
18
+
19
+ field :description, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('description') } }
20
+
21
+ field :payment_date, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('paymentDate') } }
22
+ # Raw HTTP response; suitable for custom response parsing
23
+ field :raw_response, Crystalline::Nilable.new(::Faraday::Response), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('-') } }
24
+
25
+ sig { params(foreign_id: T.nilable(::String), description: T.nilable(::String), payment_date: T.nilable(::String), raw_response: T.nilable(::Faraday::Response)).void }
26
+ def initialize(foreign_id: nil, description: nil, payment_date: nil, raw_response: nil)
27
+ @foreign_id = foreign_id
28
+ @description = description
29
+ @payment_date = payment_date
30
+ @raw_response = raw_response
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 @foreign_id == other.foreign_id
37
+ return false unless @description == other.description
38
+ return false unless @payment_date == other.payment_date
39
+ return false unless @raw_response == other.raw_response
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::Errors::MarkInvoicePaidError
6
+ extend ::Crystalline::MetadataFields::ClassMethods
7
+ end
8
+
9
+
10
+ class Moov::Models::Errors::MarkInvoicePaidError
11
+ def foreign_id(); end
12
+ def foreign_id=(str_); end
13
+ def description(); end
14
+ def description=(str_); end
15
+ def payment_date(); end
16
+ def payment_date=(str_); end
17
+ def raw_response(); end
18
+ def raw_response=(str_); end
19
+ end
@@ -0,0 +1,57 @@
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 Errors
10
+
11
+
12
+ class UpdateInvoiceError < StandardError
13
+ extend T::Sig
14
+ include Crystalline::MetadataFields
15
+
16
+
17
+ field :description, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('description') } }
18
+
19
+ field :line_items, Crystalline::Nilable.new(Models::Components::InvoiceLineItemsValidationError), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('lineItems') } }
20
+
21
+ field :invoice_date, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('invoiceDate') } }
22
+
23
+ field :due_date, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('dueDate') } }
24
+
25
+ field :status, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('status') } }
26
+
27
+ field :tax_amount, Crystalline::Nilable.new(Models::Components::AmountDecimalValidationError), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('taxAmount') } }
28
+ # Raw HTTP response; suitable for custom response parsing
29
+ field :raw_response, Crystalline::Nilable.new(::Faraday::Response), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('-') } }
30
+
31
+ sig { params(description: T.nilable(::String), line_items: T.nilable(Models::Components::InvoiceLineItemsValidationError), invoice_date: T.nilable(::String), due_date: T.nilable(::String), status: T.nilable(::String), tax_amount: T.nilable(Models::Components::AmountDecimalValidationError), raw_response: T.nilable(::Faraday::Response)).void }
32
+ def initialize(description: nil, line_items: nil, invoice_date: nil, due_date: nil, status: nil, tax_amount: nil, raw_response: nil)
33
+ @description = description
34
+ @line_items = line_items
35
+ @invoice_date = invoice_date
36
+ @due_date = due_date
37
+ @status = status
38
+ @tax_amount = tax_amount
39
+ @raw_response = raw_response
40
+ end
41
+
42
+ sig { params(other: T.untyped).returns(T::Boolean) }
43
+ def ==(other)
44
+ return false unless other.is_a? self.class
45
+ return false unless @description == other.description
46
+ return false unless @line_items == other.line_items
47
+ return false unless @invoice_date == other.invoice_date
48
+ return false unless @due_date == other.due_date
49
+ return false unless @status == other.status
50
+ return false unless @tax_amount == other.tax_amount
51
+ return false unless @raw_response == other.raw_response
52
+ true
53
+ end
54
+ end
55
+ end
56
+ end
57
+ end
@@ -0,0 +1,25 @@
1
+ # typed: true
2
+ # frozen_string_literal: true
3
+
4
+
5
+ class Moov::Models::Errors::UpdateInvoiceError
6
+ extend ::Crystalline::MetadataFields::ClassMethods
7
+ end
8
+
9
+
10
+ class Moov::Models::Errors::UpdateInvoiceError
11
+ def description(); end
12
+ def description=(str_); end
13
+ def line_items(); end
14
+ def line_items=(str_); end
15
+ def invoice_date(); end
16
+ def invoice_date=(str_); end
17
+ def due_date(); end
18
+ def due_date=(str_); end
19
+ def status(); end
20
+ def status=(str_); end
21
+ def tax_amount(); end
22
+ def tax_amount=(str_); end
23
+ def raw_response(); end
24
+ def raw_response=(str_); end
25
+ end
@@ -24,11 +24,11 @@ module Moov
24
24
 
25
25
  field :payout, Crystalline::Nilable.new(Models::Components::PayoutDetailsError), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('payout') } }
26
26
 
27
- field :line_items, Crystalline::Nilable.new(Models::Components::PaymentLinkLineItemsValidationError), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('lineItems') } }
27
+ field :line_items, Crystalline::Nilable.new(Models::Components::CreatePaymentLinkLineItemsValidationError), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('lineItems') } }
28
28
  # Raw HTTP response; suitable for custom response parsing
29
29
  field :raw_response, Crystalline::Nilable.new(::Faraday::Response), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('-') } }
30
30
 
31
- sig { params(amount: T.nilable(Models::Components::AmountValidationError), expires_on: T.nilable(::String), display: T.nilable(Models::Components::DisplayOptionsError), payment: T.nilable(Models::Components::PaymentDetailsError), payout: T.nilable(Models::Components::PayoutDetailsError), line_items: T.nilable(Models::Components::PaymentLinkLineItemsValidationError), raw_response: T.nilable(::Faraday::Response)).void }
31
+ sig { params(amount: T.nilable(Models::Components::AmountValidationError), expires_on: T.nilable(::String), display: T.nilable(Models::Components::DisplayOptionsError), payment: T.nilable(Models::Components::PaymentDetailsError), payout: T.nilable(Models::Components::PayoutDetailsError), line_items: T.nilable(Models::Components::CreatePaymentLinkLineItemsValidationError), raw_response: T.nilable(::Faraday::Response)).void }
32
32
  def initialize(amount: nil, expires_on: nil, display: nil, payment: nil, payout: nil, line_items: nil, raw_response: nil)
33
33
  @amount = amount
34
34
  @expires_on = expires_on
@@ -15,6 +15,7 @@ module Moov
15
15
  autoload :BrandValidationError, 'moov/models/errors/brandvalidationerror.rb'
16
16
  autoload :CardAcquiringRefundError, 'moov/models/errors/cardacquiringrefund_error.rb'
17
17
  autoload :CreateAccountError, 'moov/models/errors/createaccounterror.rb'
18
+ autoload :CreateInvoiceError, 'moov/models/errors/createinvoiceerror.rb'
18
19
  autoload :CreatePaymentLinkError, 'moov/models/errors/createpaymentlinkerror.rb'
19
20
  autoload :CreateSweepConfigError, 'moov/models/errors/createsweepconfigerror.rb'
20
21
  autoload :CreateTicketError, 'moov/models/errors/createticketerror.rb'
@@ -27,9 +28,11 @@ module Moov
27
28
  autoload :ImageRequestValidationError, 'moov/models/errors/imagerequestvalidationerror.rb'
28
29
  autoload :LinkApplePayError, 'moov/models/errors/linkapplepayerror.rb'
29
30
  autoload :LinkCardError, 'moov/models/errors/linkcarderror.rb'
31
+ autoload :ListInvoicesValidationError, 'moov/models/errors/listinvoicesvalidationerror.rb'
30
32
  autoload :ListTransfersValidationError, 'moov/models/errors/listtransfersvalidationerror.rb'
31
33
  autoload :ListWalletTransactionsValidationError, 'moov/models/errors/listwallettransactionsvalidationerror.rb'
32
34
  autoload :ListWalletsValidationError, 'moov/models/errors/listwalletsvalidationerror.rb'
35
+ autoload :MarkInvoicePaidError, 'moov/models/errors/markinvoicepaiderror.rb'
33
36
  autoload :MicroDepositValidationError, 'moov/models/errors/microdepositvalidationerror.rb'
34
37
  autoload :OnboardingInviteError, 'moov/models/errors/onboardinginviteerror.rb'
35
38
  autoload :PatchAccountError, 'moov/models/errors/patchaccounterror.rb'
@@ -48,6 +51,7 @@ module Moov
48
51
  autoload :TransferValidationError, 'moov/models/errors/transfervalidationerror.rb'
49
52
  autoload :TransferError, 'moov/models/errors/transfer_error.rb'
50
53
  autoload :UpdateCardError, 'moov/models/errors/updatecarderror.rb'
54
+ autoload :UpdateInvoiceError, 'moov/models/errors/updateinvoiceerror.rb'
51
55
  autoload :UpdateIssuedCardError, 'moov/models/errors/updateissuedcarderror.rb'
52
56
  autoload :UpdatePaymentLinkError, 'moov/models/errors/updatepaymentlinkerror.rb'
53
57
  autoload :UpdateTicketError, 'moov/models/errors/updateticketerror.rb'
@@ -0,0 +1,50 @@
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 Operations
10
+
11
+
12
+ class CreateInvoiceRequest
13
+ extend T::Sig
14
+ include Crystalline::MetadataFields
15
+
16
+
17
+ field :account_id, ::String, { 'path_param': { 'field_name': 'accountID', 'style': 'simple', 'explode': false } }
18
+
19
+ field :create_invoice, Models::Components::CreateInvoice, { 'request': { 'media_type': 'application/json' } }
20
+ # Specify an API version.
21
+ #
22
+ # API versioning follows the format `vYYYY.QQ.BB`, where
23
+ # - `YYYY` is the year
24
+ # - `QQ` is the two-digit month for the first month of the quarter (e.g., 01, 04, 07, 10)
25
+ # - `BB` is the build number, starting at `.01`, for subsequent builds in the same quarter.
26
+ # - For example, `v2024.01.00` is the initial release of the first quarter of 2024.
27
+ #
28
+ # The `latest` version represents the most recent development state. It may include breaking changes and should be treated as a beta release.
29
+ # When no version is specified, the API defaults to `v2024.01.00`.
30
+ field :x_moov_version, Crystalline::Nilable.new(::String), { 'header': { 'field_name': 'X-Moov-Version', 'style': 'simple', 'explode': false } }
31
+
32
+ sig { params(account_id: ::String, create_invoice: Models::Components::CreateInvoice, x_moov_version: T.nilable(::String)).void }
33
+ def initialize(account_id:, create_invoice:, x_moov_version: nil)
34
+ @account_id = account_id
35
+ @create_invoice = create_invoice
36
+ @x_moov_version = x_moov_version
37
+ end
38
+
39
+ sig { params(other: T.untyped).returns(T::Boolean) }
40
+ def ==(other)
41
+ return false unless other.is_a? self.class
42
+ return false unless @account_id == other.account_id
43
+ return false unless @create_invoice == other.create_invoice
44
+ return false unless @x_moov_version == other.x_moov_version
45
+ true
46
+ end
47
+ end
48
+ end
49
+ end
50
+ end
@@ -0,0 +1,17 @@
1
+ # typed: true
2
+ # frozen_string_literal: true
3
+
4
+
5
+ class Moov::Models::Operations::CreateInvoiceRequest
6
+ extend ::Crystalline::MetadataFields::ClassMethods
7
+ end
8
+
9
+
10
+ class Moov::Models::Operations::CreateInvoiceRequest
11
+ def account_id(); end
12
+ def account_id=(str_); end
13
+ def create_invoice(); end
14
+ def create_invoice=(str_); end
15
+ def x_moov_version(); end
16
+ def x_moov_version=(str_); end
17
+ end
@@ -0,0 +1,49 @@
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 Operations
10
+
11
+
12
+ class CreateInvoiceResponse
13
+ extend T::Sig
14
+ include Crystalline::MetadataFields
15
+
16
+ # HTTP response content type for this operation
17
+ field :content_type, ::String
18
+ # HTTP response status code for this operation
19
+ field :status_code, ::Integer
20
+ # Raw HTTP response; suitable for custom response parsing
21
+ field :raw_response, ::Faraday::Response
22
+
23
+ field :headers, Crystalline::Hash.new(Symbol, Crystalline::Array.new(::String))
24
+ # The resource was successfully created.
25
+ field :invoice, Crystalline::Nilable.new(Models::Components::Invoice)
26
+
27
+ sig { params(content_type: ::String, status_code: ::Integer, raw_response: ::Faraday::Response, headers: T::Hash[Symbol, T::Array[::String]], invoice: T.nilable(Models::Components::Invoice)).void }
28
+ def initialize(content_type:, status_code:, raw_response:, headers:, invoice: nil)
29
+ @content_type = content_type
30
+ @status_code = status_code
31
+ @raw_response = raw_response
32
+ @headers = headers
33
+ @invoice = invoice
34
+ end
35
+
36
+ sig { params(other: T.untyped).returns(T::Boolean) }
37
+ def ==(other)
38
+ return false unless other.is_a? self.class
39
+ return false unless @content_type == other.content_type
40
+ return false unless @status_code == other.status_code
41
+ return false unless @raw_response == other.raw_response
42
+ return false unless @headers == other.headers
43
+ return false unless @invoice == other.invoice
44
+ true
45
+ end
46
+ end
47
+ end
48
+ end
49
+ end
@@ -0,0 +1,21 @@
1
+ # typed: true
2
+ # frozen_string_literal: true
3
+
4
+
5
+ class Moov::Models::Operations::CreateInvoiceResponse
6
+ extend ::Crystalline::MetadataFields::ClassMethods
7
+ end
8
+
9
+
10
+ class Moov::Models::Operations::CreateInvoiceResponse
11
+ def content_type(); end
12
+ def content_type=(str_); end
13
+ def status_code(); end
14
+ def status_code=(str_); end
15
+ def raw_response(); end
16
+ def raw_response=(str_); end
17
+ def headers(); end
18
+ def headers=(str_); end
19
+ def invoice(); end
20
+ def invoice=(str_); end
21
+ end
@@ -0,0 +1,50 @@
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 Operations
10
+
11
+
12
+ class GetInvoiceRequest
13
+ extend T::Sig
14
+ include Crystalline::MetadataFields
15
+
16
+
17
+ field :account_id, ::String, { 'path_param': { 'field_name': 'accountID', 'style': 'simple', 'explode': false } }
18
+
19
+ field :invoice_id, ::String, { 'path_param': { 'field_name': 'invoiceID', 'style': 'simple', 'explode': false } }
20
+ # Specify an API version.
21
+ #
22
+ # API versioning follows the format `vYYYY.QQ.BB`, where
23
+ # - `YYYY` is the year
24
+ # - `QQ` is the two-digit month for the first month of the quarter (e.g., 01, 04, 07, 10)
25
+ # - `BB` is the build number, starting at `.01`, for subsequent builds in the same quarter.
26
+ # - For example, `v2024.01.00` is the initial release of the first quarter of 2024.
27
+ #
28
+ # The `latest` version represents the most recent development state. It may include breaking changes and should be treated as a beta release.
29
+ # When no version is specified, the API defaults to `v2024.01.00`.
30
+ field :x_moov_version, Crystalline::Nilable.new(::String), { 'header': { 'field_name': 'X-Moov-Version', 'style': 'simple', 'explode': false } }
31
+
32
+ sig { params(account_id: ::String, invoice_id: ::String, x_moov_version: T.nilable(::String)).void }
33
+ def initialize(account_id:, invoice_id:, x_moov_version: nil)
34
+ @account_id = account_id
35
+ @invoice_id = invoice_id
36
+ @x_moov_version = x_moov_version
37
+ end
38
+
39
+ sig { params(other: T.untyped).returns(T::Boolean) }
40
+ def ==(other)
41
+ return false unless other.is_a? self.class
42
+ return false unless @account_id == other.account_id
43
+ return false unless @invoice_id == other.invoice_id
44
+ return false unless @x_moov_version == other.x_moov_version
45
+ true
46
+ end
47
+ end
48
+ end
49
+ end
50
+ end