stripe 19.4.0.pre.alpha.2 → 19.4.0.pre.alpha.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.
Files changed (120) hide show
  1. checksums.yaml +4 -4
  2. data/lib/stripe/api_requestor.rb +2 -27
  3. data/lib/stripe/api_version.rb +1 -1
  4. data/lib/stripe/error_object.rb +48 -19
  5. data/lib/stripe/event_types.rb +15 -0
  6. data/lib/stripe/events/v2_billing_contract_activated_event.rb +44 -0
  7. data/lib/stripe/events/v2_billing_contract_canceled_event.rb +44 -0
  8. data/lib/stripe/events/v2_billing_contract_created_event.rb +44 -0
  9. data/lib/stripe/events/v2_billing_contract_ended_event.rb +44 -0
  10. data/lib/stripe/events/v2_billing_contract_updated_event.rb +44 -0
  11. data/lib/stripe/object_types.rb +0 -1
  12. data/lib/stripe/params/account_create_params.rb +2 -0
  13. data/lib/stripe/params/account_person_create_params.rb +6 -0
  14. data/lib/stripe/params/account_person_update_params.rb +6 -0
  15. data/lib/stripe/params/account_session_create_params.rb +0 -42
  16. data/lib/stripe/params/account_update_params.rb +2 -0
  17. data/lib/stripe/params/billing_portal/configuration_create_params.rb +1 -1
  18. data/lib/stripe/params/billing_portal/configuration_update_params.rb +1 -1
  19. data/lib/stripe/params/capital/financing_transaction_list_params.rb +2 -2
  20. data/lib/stripe/params/checkout/session_create_params.rb +1 -1
  21. data/lib/stripe/params/invoice_create_preview_params.rb +2 -2
  22. data/lib/stripe/params/issuing/authorization_capture_params.rb +1 -1
  23. data/lib/stripe/params/issuing/authorization_create_params.rb +1 -1
  24. data/lib/stripe/params/issuing/authorization_finalize_amount_params.rb +1 -1
  25. data/lib/stripe/params/issuing/transaction_create_force_capture_params.rb +1 -1
  26. data/lib/stripe/params/issuing/transaction_create_unlinked_refund_params.rb +1 -1
  27. data/lib/stripe/params/payment_intent_confirm_params.rb +10 -1
  28. data/lib/stripe/params/payment_intent_create_params.rb +10 -1
  29. data/lib/stripe/params/payment_intent_update_params.rb +10 -1
  30. data/lib/stripe/params/payment_record_create_params.rb +109 -0
  31. data/lib/stripe/params/promotion_code_create_params.rb +1 -1
  32. data/lib/stripe/params/promotion_code_update_params.rb +1 -1
  33. data/lib/stripe/params/refund_create_params.rb +4 -0
  34. data/lib/stripe/params/subscription_schedule_create_params.rb +138 -2
  35. data/lib/stripe/params/subscription_schedule_list_params.rb +1 -1
  36. data/lib/stripe/params/subscription_schedule_update_params.rb +139 -3
  37. data/lib/stripe/params/terminal/reader_activate_gift_card_params.rb +35 -0
  38. data/lib/stripe/params/terminal/reader_cashout_gift_card_params.rb +21 -0
  39. data/lib/stripe/params/terminal/reader_check_gift_card_balance_params.rb +21 -0
  40. data/lib/stripe/params/terminal/reader_collect_payment_method_params.rb +4 -0
  41. data/lib/stripe/params/terminal/reader_process_payment_intent_params.rb +4 -0
  42. data/lib/stripe/params/terminal/reader_reload_gift_card_params.rb +27 -0
  43. data/lib/stripe/params/test_helpers/issuing/authorization_capture_params.rb +1 -1
  44. data/lib/stripe/params/test_helpers/issuing/authorization_create_params.rb +1 -1
  45. data/lib/stripe/params/test_helpers/issuing/authorization_finalize_amount_params.rb +1 -1
  46. data/lib/stripe/params/test_helpers/issuing/transaction_create_force_capture_params.rb +1 -1
  47. data/lib/stripe/params/test_helpers/issuing/transaction_create_unlinked_refund_params.rb +1 -1
  48. data/lib/stripe/params/token_create_params.rb +8 -0
  49. data/lib/stripe/params/v2/billing/contract_cancel_params.rb +1 -1
  50. data/lib/stripe/params/v2/billing/contract_create_params.rb +13 -175
  51. data/lib/stripe/params/v2/billing/contract_list_params.rb +1 -1
  52. data/lib/stripe/params/v2/billing/contract_update_params.rb +48 -495
  53. data/lib/stripe/params/v2/core/account_list_params.rb +9 -1
  54. data/lib/stripe/params/v2/data/analytics/metric_query_create_params.rb +2 -2
  55. data/lib/stripe/params.rb +10 -8
  56. data/lib/stripe/resources/account.rb +55 -3
  57. data/lib/stripe/resources/account_session.rb +8 -0
  58. data/lib/stripe/resources/balance_transaction.rb +1 -1
  59. data/lib/stripe/resources/bank_account.rb +2 -2
  60. data/lib/stripe/resources/billing/alert_recovered.rb +17 -1
  61. data/lib/stripe/resources/billing_portal/configuration.rb +1 -1
  62. data/lib/stripe/resources/capability.rb +2 -2
  63. data/lib/stripe/resources/capital/financing_transaction.rb +1 -1
  64. data/lib/stripe/resources/charge.rb +1 -1
  65. data/lib/stripe/resources/checkout/session.rb +23 -5
  66. data/lib/stripe/resources/confirmation_token.rb +1 -1
  67. data/lib/stripe/resources/dispute.rb +4 -2
  68. data/lib/stripe/resources/financial_connections/session.rb +5 -0
  69. data/lib/stripe/resources/invoice.rb +4 -1
  70. data/lib/stripe/resources/issuing/authorization.rb +52 -1
  71. data/lib/stripe/resources/issuing/card.rb +2 -0
  72. data/lib/stripe/resources/issuing/transaction.rb +48 -2
  73. data/lib/stripe/resources/order.rb +1 -1
  74. data/lib/stripe/resources/payment_attempt_record.rb +2 -2
  75. data/lib/stripe/resources/payment_intent.rb +28 -0
  76. data/lib/stripe/resources/payment_method.rb +3 -3
  77. data/lib/stripe/resources/payment_record.rb +14 -2
  78. data/lib/stripe/resources/person.rb +2 -2
  79. data/lib/stripe/resources/profile.rb +14 -14
  80. data/lib/stripe/resources/quote.rb +22 -1
  81. data/lib/stripe/resources/quote_preview_invoice.rb +4 -1
  82. data/lib/stripe/resources/quote_preview_subscription_schedule.rb +169 -2
  83. data/lib/stripe/resources/setup_attempt.rb +16 -0
  84. data/lib/stripe/resources/setup_intent.rb +3 -0
  85. data/lib/stripe/resources/shared_payment/granted_token.rb +1 -1
  86. data/lib/stripe/resources/shared_payment/issued_token.rb +18 -1
  87. data/lib/stripe/resources/subscription_schedule.rb +169 -2
  88. data/lib/stripe/resources/tax/calculation.rb +1 -1
  89. data/lib/stripe/resources/tax/registration.rb +32 -0
  90. data/lib/stripe/resources/tax/transaction.rb +1 -1
  91. data/lib/stripe/resources/terminal/reader.rb +173 -0
  92. data/lib/stripe/resources/v2/billing/contract.rb +47 -330
  93. data/lib/stripe/resources/v2/billing/contract_pricing_line_quantity_change.rb +2 -2
  94. data/lib/stripe/resources/v2/core/account.rb +18 -0
  95. data/lib/stripe/resources/v2/money_management/payout_method.rb +16 -0
  96. data/lib/stripe/resources/v2/money_management/received_credit.rb +30 -0
  97. data/lib/stripe/resources/v2/signals/account_signal.rb +4 -1
  98. data/lib/stripe/resources.rb +15 -2
  99. data/lib/stripe/services/account_person_service.rb +1 -1
  100. data/lib/stripe/services/account_service.rb +1 -1
  101. data/lib/stripe/services/dispute_service.rb +1 -1
  102. data/lib/stripe/services/payment_method_service.rb +1 -1
  103. data/lib/stripe/services/payment_record_service.rb +12 -0
  104. data/lib/stripe/services/terminal/reader_service.rb +44 -0
  105. data/lib/stripe/services/v1_services.rb +1 -2
  106. data/lib/stripe/services/v2/billing/contract_service.rb +7 -7
  107. data/lib/stripe/services/v2/signals/account_signal_service.rb +1 -1
  108. data/lib/stripe/services.rb +0 -2
  109. data/lib/stripe/stripe_event_notification_handler.rb +30 -0
  110. data/lib/stripe/telemetry_id.rb +65 -0
  111. data/lib/stripe/version.rb +1 -1
  112. data/lib/stripe.rb +2 -0
  113. data/rbi/stripe.rbi +2023 -1531
  114. metadata +13 -8
  115. data/lib/stripe/params/fr_meal_vouchers_onboarding_create_params.rb +0 -25
  116. data/lib/stripe/params/fr_meal_vouchers_onboarding_list_params.rb +0 -22
  117. data/lib/stripe/params/fr_meal_vouchers_onboarding_retrieve_params.rb +0 -13
  118. data/lib/stripe/params/fr_meal_vouchers_onboarding_update_params.rb +0 -16
  119. data/lib/stripe/resources/fr_meal_vouchers_onboarding.rb +0 -153
  120. data/lib/stripe/services/fr_meal_vouchers_onboarding_service.rb +0 -57
@@ -371,6 +371,16 @@ module Stripe
371
371
  end
372
372
  end
373
373
 
374
+ class Paypay < ::Stripe::StripeObject
375
+ def self.inner_class_types
376
+ @inner_class_types = {}
377
+ end
378
+
379
+ def self.field_remappings
380
+ @field_remappings = {}
381
+ end
382
+ end
383
+
374
384
  class Payto < ::Stripe::StripeObject
375
385
  def self.inner_class_types
376
386
  @inner_class_types = {}
@@ -528,6 +538,8 @@ module Stripe
528
538
  attr_reader :nz_bank_account
529
539
  # Attribute for field paypal
530
540
  attr_reader :paypal
541
+ # Attribute for field paypay
542
+ attr_reader :paypay
531
543
  # Attribute for field payto
532
544
  attr_reader :payto
533
545
  # Attribute for field pix
@@ -571,6 +583,7 @@ module Stripe
571
583
  naver_pay: NaverPay,
572
584
  nz_bank_account: NzBankAccount,
573
585
  paypal: Paypal,
586
+ paypay: Paypay,
574
587
  payto: Payto,
575
588
  pix: Pix,
576
589
  revolut_pay: RevolutPay,
@@ -600,6 +613,9 @@ module Stripe
600
613
  attr_reader :decline_code
601
614
  # A URL to more information about the [error code](https://docs.stripe.com/error-codes) reported.
602
615
  attr_reader :doc_url
616
+ # A GiftCardOperation represents an operation performed on a third-party gift card,
617
+ # such as activation, reload, cashout, balance check, or void.
618
+ attr_reader :gift_card_operation
603
619
  # A human-readable message providing more details about the error. For card errors, these messages can be shown to your users.
604
620
  attr_reader :message
605
621
  # For card errors resulting from a card issuer decline, a 2 digit code which indicates the advice given to merchant by the card network on how to proceed with an error.
@@ -61,6 +61,9 @@ module Stripe
61
61
  attr_reader :decline_code
62
62
  # A URL to more information about the [error code](https://docs.stripe.com/error-codes) reported.
63
63
  attr_reader :doc_url
64
+ # A GiftCardOperation represents an operation performed on a third-party gift card,
65
+ # such as activation, reload, cashout, balance check, or void.
66
+ attr_reader :gift_card_operation
64
67
  # A human-readable message providing more details about the error. For card errors, these messages can be shown to your users.
65
68
  attr_reader :message
66
69
  # For card errors resulting from a card issuer decline, a 2 digit code which indicates the advice given to merchant by the card network on how to proceed with an error.
@@ -666,7 +666,7 @@ module Stripe
666
666
  class Fpx < ::Stripe::StripeObject
667
667
  # Account holder type, if provided. Can be one of `individual` or `company`.
668
668
  attr_reader :account_holder_type
669
- # The customer's bank, if provided. Can be one of `affin_bank`, `agrobank`, `alliance_bank`, `ambank`, `bank_islam`, `bank_muamalat`, `bank_rakyat`, `bsn`, `cimb`, `hong_leong_bank`, `hsbc`, `kfh`, `maybank2u`, `ocbc`, `public_bank`, `rhb`, `standard_chartered`, `uob`, `deutsche_bank`, `maybank2e`, `pb_enterprise`, or `bank_of_china`.
669
+ # The customer's bank, if provided. Can be one of `affin_bank`, `agrobank`, `alliance_bank`, `ambank`, `bank_islam`, `bank_muamalat`, `bnp_paribas`, `bank_rakyat`, `bsn`, `cimb`, `citibank`, `hong_leong_bank`, `hsbc`, `kfh`, `maybank2u`, `ocbc`, `public_bank`, `rhb`, `standard_chartered`, `uob`, `deutsche_bank`, `maybank2e`, `mbsb_bank`, `pb_enterprise`, or `bank_of_china`.
670
670
  attr_reader :bank
671
671
 
672
672
  def self.inner_class_types
@@ -13,6 +13,21 @@ module Stripe
13
13
  end
14
14
 
15
15
  class NextAction < ::Stripe::StripeObject
16
+ class RedirectToUrl < ::Stripe::StripeObject
17
+ # If the customer does not exit their browser while authenticating, they will be redirected to this specified URL after completion.
18
+ attr_reader :return_url
19
+ # The URL you must redirect your customer to in order to authenticate the payment.
20
+ attr_reader :url
21
+
22
+ def self.inner_class_types
23
+ @inner_class_types = {}
24
+ end
25
+
26
+ def self.field_remappings
27
+ @field_remappings = {}
28
+ end
29
+ end
30
+
16
31
  class UseStripeSdk < ::Stripe::StripeObject
17
32
  # A base64-encoded string used by Stripe.js and the iOS and Android client SDKs to handle the next action. Its content is subject to change.
18
33
  attr_reader :value
@@ -25,13 +40,15 @@ module Stripe
25
40
  @field_remappings = {}
26
41
  end
27
42
  end
43
+ # Contains details for handling the next action by redirecting the customer. Present when `next_action.type` is `redirect_to_url`.
44
+ attr_reader :redirect_to_url
28
45
  # Specifies the type of next action required. Determines which child attribute contains action details.
29
46
  attr_reader :type
30
47
  # Contains details for handling the next action using Stripe.js, iOS, or Android SDKs. Present when `next_action.type` is `use_stripe_sdk`.
31
48
  attr_reader :use_stripe_sdk
32
49
 
33
50
  def self.inner_class_types
34
- @inner_class_types = { use_stripe_sdk: UseStripeSdk }
51
+ @inner_class_types = { redirect_to_url: RedirectToUrl, use_stripe_sdk: UseStripeSdk }
35
52
  end
36
53
 
37
54
  def self.field_remappings
@@ -171,6 +171,21 @@ module Stripe
171
171
  end
172
172
 
173
173
  class InvoiceSettings < ::Stripe::StripeObject
174
+ class CustomField < ::Stripe::StripeObject
175
+ # The name of the custom field.
176
+ attr_reader :name
177
+ # The value of the custom field.
178
+ attr_reader :value
179
+
180
+ def self.inner_class_types
181
+ @inner_class_types = {}
182
+ end
183
+
184
+ def self.field_remappings
185
+ @field_remappings = {}
186
+ end
187
+ end
188
+
174
189
  class Issuer < ::Stripe::StripeObject
175
190
  # The connected account being referenced when `type` is `account`.
176
191
  attr_reader :account
@@ -187,13 +202,19 @@ module Stripe
187
202
  end
188
203
  # The account tax IDs associated with the subscription schedule. Will be set on invoices generated by the subscription schedule.
189
204
  attr_reader :account_tax_ids
205
+ # A list of up to 4 custom fields to be displayed on the invoice.
206
+ attr_reader :custom_fields
190
207
  # Number of days within which a customer must pay invoices generated by this subscription schedule. This value will be `null` for subscription schedules where `billing=charge_automatically`.
191
208
  attr_reader :days_until_due
209
+ # An arbitrary string attached to the object. Often useful for displaying to users.
210
+ attr_reader :description
211
+ # Footer to be displayed on the invoice.
212
+ attr_reader :footer
192
213
  # Attribute for field issuer
193
214
  attr_reader :issuer
194
215
 
195
216
  def self.inner_class_types
196
- @inner_class_types = { issuer: Issuer }
217
+ @inner_class_types = { custom_fields: CustomField, issuer: Issuer }
197
218
  end
198
219
 
199
220
  def self.field_remappings
@@ -283,6 +304,126 @@ module Stripe
283
304
  end
284
305
  end
285
306
 
307
+ class PauseSchedule < ::Stripe::StripeObject
308
+ class Pause < ::Stripe::StripeObject
309
+ class Settings < ::Stripe::StripeObject
310
+ class BillFor < ::Stripe::StripeObject
311
+ class OutstandingUsageThrough < ::Stripe::StripeObject
312
+ # The type of outstanding usage billing behavior.
313
+ attr_reader :type
314
+
315
+ def self.inner_class_types
316
+ @inner_class_types = {}
317
+ end
318
+
319
+ def self.field_remappings
320
+ @field_remappings = {}
321
+ end
322
+ end
323
+
324
+ class UnusedTimeFrom < ::Stripe::StripeObject
325
+ # The type of unused time credit behavior.
326
+ attr_reader :type
327
+
328
+ def self.inner_class_types
329
+ @inner_class_types = {}
330
+ end
331
+
332
+ def self.field_remappings
333
+ @field_remappings = {}
334
+ end
335
+ end
336
+ # Attribute for field outstanding_usage_through
337
+ attr_reader :outstanding_usage_through
338
+ # Attribute for field unused_time_from
339
+ attr_reader :unused_time_from
340
+
341
+ def self.inner_class_types
342
+ @inner_class_types = {
343
+ outstanding_usage_through: OutstandingUsageThrough,
344
+ unused_time_from: UnusedTimeFrom,
345
+ }
346
+ end
347
+
348
+ def self.field_remappings
349
+ @field_remappings = {}
350
+ end
351
+ end
352
+ # Attribute for field bill_for
353
+ attr_reader :bill_for
354
+ # Determines how to handle debits and credits when pausing.
355
+ attr_reader :invoicing_behavior
356
+ # The type of pause settings.
357
+ attr_reader :type
358
+
359
+ def self.inner_class_types
360
+ @inner_class_types = { bill_for: BillFor }
361
+ end
362
+
363
+ def self.field_remappings
364
+ @field_remappings = {}
365
+ end
366
+ end
367
+ # Time at which the subscription pauses.
368
+ attr_reader :pause_at
369
+ # Settings controlling billing behavior during the pause.
370
+ attr_reader :settings
371
+
372
+ def self.inner_class_types
373
+ @inner_class_types = { settings: Settings }
374
+ end
375
+
376
+ def self.field_remappings
377
+ @field_remappings = {}
378
+ end
379
+ end
380
+
381
+ class Resume < ::Stripe::StripeObject
382
+ class Settings < ::Stripe::StripeObject
383
+ # The billing cycle anchor that applies when the subscription is resumed.
384
+ attr_reader :billing_cycle_anchor
385
+ # Controls whether Stripe attempts payment on the resumption invoice and how that affects the subscription's status.
386
+ attr_reader :payment_behavior
387
+ # Determines how to handle prorations resulting from the billing_cycle_anchor change on resume.
388
+ attr_reader :proration_behavior
389
+
390
+ def self.inner_class_types
391
+ @inner_class_types = {}
392
+ end
393
+
394
+ def self.field_remappings
395
+ @field_remappings = {}
396
+ end
397
+ end
398
+ # Time at which the subscription resumes.
399
+ attr_reader :resume_at
400
+ # Attribute for field settings
401
+ attr_reader :settings
402
+
403
+ def self.inner_class_types
404
+ @inner_class_types = { settings: Settings }
405
+ end
406
+
407
+ def self.field_remappings
408
+ @field_remappings = {}
409
+ end
410
+ end
411
+ # A unique identifier for this pause schedule.
412
+ attr_reader :key
413
+ # Attribute for field pause
414
+ attr_reader :pause
415
+ # Details about when and how the subscription resumes.
416
+ attr_reader :resume
417
+
418
+ def self.inner_class_types
419
+ @inner_class_types = { pause: Pause, resume: Resume }
420
+ end
421
+
422
+ def self.field_remappings
423
+ @field_remappings = {}
424
+ end
425
+ end
426
+
286
427
  class Phase < ::Stripe::StripeObject
287
428
  class AddInvoiceItem < ::Stripe::StripeObject
288
429
  class Discount < ::Stripe::StripeObject
@@ -516,6 +657,21 @@ module Stripe
516
657
  end
517
658
 
518
659
  class InvoiceSettings < ::Stripe::StripeObject
660
+ class CustomField < ::Stripe::StripeObject
661
+ # The name of the custom field.
662
+ attr_reader :name
663
+ # The value of the custom field.
664
+ attr_reader :value
665
+
666
+ def self.inner_class_types
667
+ @inner_class_types = {}
668
+ end
669
+
670
+ def self.field_remappings
671
+ @field_remappings = {}
672
+ end
673
+ end
674
+
519
675
  class Issuer < ::Stripe::StripeObject
520
676
  # The connected account being referenced when `type` is `account`.
521
677
  attr_reader :account
@@ -532,13 +688,19 @@ module Stripe
532
688
  end
533
689
  # The account tax IDs associated with this phase of the subscription schedule. Will be set on invoices generated by this phase of the subscription schedule.
534
690
  attr_reader :account_tax_ids
691
+ # A list of up to 4 custom fields to be displayed on the invoice.
692
+ attr_reader :custom_fields
535
693
  # Number of days within which a customer must pay invoices generated by this subscription schedule. This value will be `null` for subscription schedules where `billing=charge_automatically`.
536
694
  attr_reader :days_until_due
695
+ # An arbitrary string attached to the object. Often useful for displaying to users.
696
+ attr_reader :description
697
+ # Footer to be displayed on the invoice.
698
+ attr_reader :footer
537
699
  # The connected account that issues the invoice. The invoice is presented with the branding and support information of the specified account.
538
700
  attr_reader :issuer
539
701
 
540
702
  def self.inner_class_types
541
- @inner_class_types = { issuer: Issuer }
703
+ @inner_class_types = { custom_fields: CustomField, issuer: Issuer }
542
704
  end
543
705
 
544
706
  def self.field_remappings
@@ -784,6 +946,8 @@ module Stripe
784
946
  attr_reader :start_date
785
947
  # The account (if any) the associated subscription's payments will be attributed to for tax reporting, and where funds from each payment will be transferred to for each of the subscription's invoices.
786
948
  attr_reader :transfer_data
949
+ # If set to true the entire phase is counted as a trial and the customer will not be charged for any fees.
950
+ attr_reader :trial
787
951
  # Specify behavior of the trial when crossing schedule phase boundaries
788
952
  attr_reader :trial_continuation
789
953
  # When the trial ends within the phase.
@@ -864,6 +1028,8 @@ module Stripe
864
1028
  attr_reader :metadata
865
1029
  # String representing the object's type. Objects of the same type share the same value.
866
1030
  attr_reader :object
1031
+ # The pause schedules for this subscription schedule.
1032
+ attr_reader :pause_schedules
867
1033
  # Configuration for the subscription schedule's phases.
868
1034
  attr_reader :phases
869
1035
  # Time period and invoice for a Subscription billed in advance.
@@ -976,6 +1142,7 @@ module Stripe
976
1142
  current_phase: CurrentPhase,
977
1143
  default_settings: DefaultSettings,
978
1144
  last_price_migration_error: LastPriceMigrationError,
1145
+ pause_schedules: PauseSchedule,
979
1146
  phases: Phase,
980
1147
  prebilling: Prebilling,
981
1148
  }
@@ -39,7 +39,7 @@ module Stripe
39
39
  end
40
40
 
41
41
  class TaxId < ::Stripe::StripeObject
42
- # The type of the tax ID, one of `ad_nrt`, `ar_cuit`, `eu_vat`, `bo_tin`, `br_cnpj`, `br_cpf`, `cn_tin`, `co_nit`, `cr_tin`, `do_rcn`, `ec_ruc`, `eu_oss_vat`, `hr_oib`, `pe_ruc`, `ro_tin`, `rs_pib`, `sv_nit`, `uy_ruc`, `ve_rif`, `vn_tin`, `gb_vat`, `nz_gst`, `au_abn`, `au_arn`, `in_gst`, `no_vat`, `no_voec`, `za_vat`, `ch_vat`, `mx_rfc`, `sg_uen`, `ru_inn`, `ru_kpp`, `ca_bn`, `hk_br`, `es_cif`, `pl_nip`, `it_cf`, `fo_vat`, `gi_tin`, `py_ruc`, `tw_vat`, `th_vat`, `jp_cn`, `jp_rn`, `jp_trn`, `li_uid`, `li_vat`, `lk_vat`, `my_itn`, `us_ein`, `kr_brn`, `ca_qst`, `ca_gst_hst`, `ca_pst_bc`, `ca_pst_mb`, `ca_pst_sk`, `my_sst`, `sg_gst`, `ae_trn`, `cl_tin`, `sa_vat`, `id_npwp`, `my_frp`, `il_vat`, `ge_vat`, `ua_vat`, `is_vat`, `bg_uic`, `hu_tin`, `si_tin`, `ke_pin`, `tr_tin`, `eg_tin`, `ph_tin`, `al_tin`, `bh_vat`, `kz_bin`, `ng_tin`, `om_vat`, `de_stn`, `ch_uid`, `tz_vat`, `uz_vat`, `uz_tin`, `md_vat`, `ma_vat`, `by_tin`, `ao_tin`, `bs_tin`, `bb_tin`, `cd_nif`, `mr_nif`, `me_pib`, `zw_tin`, `ba_tin`, `gn_nif`, `mk_vat`, `sr_fin`, `sn_ninea`, `am_tin`, `np_pan`, `tj_tin`, `ug_tin`, `zm_tin`, `kh_tin`, `aw_tin`, `az_tin`, `bd_bin`, `bj_ifu`, `et_tin`, `kg_tin`, `la_tin`, `cm_niu`, `cv_nif`, `bf_ifu`, or `unknown`
42
+ # The type of the tax ID, one of `ad_nrt`, `ar_cuit`, `eu_vat`, `bo_tin`, `br_cnpj`, `br_cpf`, `cn_tin`, `co_nit`, `cr_tin`, `do_rcn`, `ec_ruc`, `eu_oss_vat`, `hr_oib`, `pe_ruc`, `ro_tin`, `rs_pib`, `sv_nit`, `uy_ruc`, `ve_rif`, `vn_tin`, `gb_vat`, `nz_gst`, `au_abn`, `au_arn`, `in_gst`, `no_vat`, `no_voec`, `za_vat`, `ch_vat`, `mx_rfc`, `sg_uen`, `ru_inn`, `ru_kpp`, `ca_bn`, `hk_br`, `es_cif`, `pl_nip`, `it_cf`, `fo_vat`, `gi_tin`, `py_ruc`, `tw_vat`, `th_vat`, `jp_cn`, `jp_rn`, `jp_trn`, `li_uid`, `li_vat`, `lk_vat`, `my_itn`, `us_ein`, `kr_brn`, `ca_qst`, `ca_gst_hst`, `ca_pst_bc`, `ca_pst_mb`, `ca_pst_sk`, `my_sst`, `sg_gst`, `ae_trn`, `cl_tin`, `sa_vat`, `id_npwp`, `my_frp`, `il_vat`, `ge_vat`, `ua_vat`, `is_vat`, `bg_uic`, `hu_tin`, `si_tin`, `ke_pin`, `tr_tin`, `eg_tin`, `ph_tin`, `al_tin`, `bh_vat`, `kz_bin`, `ng_tin`, `om_vat`, `de_stn`, `ch_uid`, `tz_vat`, `uz_vat`, `uz_tin`, `md_vat`, `ma_vat`, `by_tin`, `ao_tin`, `bs_tin`, `bb_tin`, `cd_nif`, `mr_nif`, `me_pib`, `zw_tin`, `ba_tin`, `gn_nif`, `mk_vat`, `sr_fin`, `sn_ninea`, `am_tin`, `np_pan`, `tj_tin`, `ug_tin`, `zm_tin`, `kh_tin`, `aw_tin`, `az_tin`, `bd_bin`, `bj_ifu`, `et_tin`, `kg_tin`, `la_tin`, `cm_niu`, `cv_nif`, `bf_ifu`, `ic_nif`, or `unknown`
43
43
  attr_reader :type
44
44
  # The value of the tax ID.
45
45
  attr_reader :value
@@ -1863,6 +1863,32 @@ module Stripe
1863
1863
  end
1864
1864
  end
1865
1865
 
1866
+ class MassTransitParkingTax < ::Stripe::StripeObject
1867
+ # A [jurisdiction code](https://docs.stripe.com/tax/registering?type=mass_transit_parking_tax#registration-types) representing the local jurisdiction.
1868
+ attr_reader :jurisdiction
1869
+
1870
+ def self.inner_class_types
1871
+ @inner_class_types = {}
1872
+ end
1873
+
1874
+ def self.field_remappings
1875
+ @field_remappings = {}
1876
+ end
1877
+ end
1878
+
1879
+ class ParkingTax < ::Stripe::StripeObject
1880
+ # A [jurisdiction code](https://docs.stripe.com/tax/registering?type=parking_tax#registration-types) representing the local jurisdiction.
1881
+ attr_reader :jurisdiction
1882
+
1883
+ def self.inner_class_types
1884
+ @inner_class_types = {}
1885
+ end
1886
+
1887
+ def self.field_remappings
1888
+ @field_remappings = {}
1889
+ end
1890
+ end
1891
+
1866
1892
  class ResortTax < ::Stripe::StripeObject
1867
1893
  # A [jurisdiction code](https://docs.stripe.com/tax/registering?type=resort_tax#registration-types) representing the local jurisdiction.
1868
1894
  attr_reader :jurisdiction
@@ -1933,6 +1959,10 @@ module Stripe
1933
1959
  attr_reader :local_lease_tax
1934
1960
  # Attribute for field luxury_tax
1935
1961
  attr_reader :luxury_tax
1962
+ # Attribute for field mass_transit_parking_tax
1963
+ attr_reader :mass_transit_parking_tax
1964
+ # Attribute for field parking_tax
1965
+ attr_reader :parking_tax
1936
1966
  # Attribute for field resort_tax
1937
1967
  attr_reader :resort_tax
1938
1968
  # Two-letter US state code ([ISO 3166-2](https://en.wikipedia.org/wiki/ISO_3166-2)).
@@ -1955,6 +1985,8 @@ module Stripe
1955
1985
  local_amusement_tax: LocalAmusementTax,
1956
1986
  local_lease_tax: LocalLeaseTax,
1957
1987
  luxury_tax: LuxuryTax,
1988
+ mass_transit_parking_tax: MassTransitParkingTax,
1989
+ parking_tax: ParkingTax,
1958
1990
  resort_tax: ResortTax,
1959
1991
  state_sales_tax: StateSalesTax,
1960
1992
  tourism_tax: TourismTax,
@@ -37,7 +37,7 @@ module Stripe
37
37
  end
38
38
 
39
39
  class TaxId < ::Stripe::StripeObject
40
- # The type of the tax ID, one of `ad_nrt`, `ar_cuit`, `eu_vat`, `bo_tin`, `br_cnpj`, `br_cpf`, `cn_tin`, `co_nit`, `cr_tin`, `do_rcn`, `ec_ruc`, `eu_oss_vat`, `hr_oib`, `pe_ruc`, `ro_tin`, `rs_pib`, `sv_nit`, `uy_ruc`, `ve_rif`, `vn_tin`, `gb_vat`, `nz_gst`, `au_abn`, `au_arn`, `in_gst`, `no_vat`, `no_voec`, `za_vat`, `ch_vat`, `mx_rfc`, `sg_uen`, `ru_inn`, `ru_kpp`, `ca_bn`, `hk_br`, `es_cif`, `pl_nip`, `it_cf`, `fo_vat`, `gi_tin`, `py_ruc`, `tw_vat`, `th_vat`, `jp_cn`, `jp_rn`, `jp_trn`, `li_uid`, `li_vat`, `lk_vat`, `my_itn`, `us_ein`, `kr_brn`, `ca_qst`, `ca_gst_hst`, `ca_pst_bc`, `ca_pst_mb`, `ca_pst_sk`, `my_sst`, `sg_gst`, `ae_trn`, `cl_tin`, `sa_vat`, `id_npwp`, `my_frp`, `il_vat`, `ge_vat`, `ua_vat`, `is_vat`, `bg_uic`, `hu_tin`, `si_tin`, `ke_pin`, `tr_tin`, `eg_tin`, `ph_tin`, `al_tin`, `bh_vat`, `kz_bin`, `ng_tin`, `om_vat`, `de_stn`, `ch_uid`, `tz_vat`, `uz_vat`, `uz_tin`, `md_vat`, `ma_vat`, `by_tin`, `ao_tin`, `bs_tin`, `bb_tin`, `cd_nif`, `mr_nif`, `me_pib`, `zw_tin`, `ba_tin`, `gn_nif`, `mk_vat`, `sr_fin`, `sn_ninea`, `am_tin`, `np_pan`, `tj_tin`, `ug_tin`, `zm_tin`, `kh_tin`, `aw_tin`, `az_tin`, `bd_bin`, `bj_ifu`, `et_tin`, `kg_tin`, `la_tin`, `cm_niu`, `cv_nif`, `bf_ifu`, or `unknown`
40
+ # The type of the tax ID, one of `ad_nrt`, `ar_cuit`, `eu_vat`, `bo_tin`, `br_cnpj`, `br_cpf`, `cn_tin`, `co_nit`, `cr_tin`, `do_rcn`, `ec_ruc`, `eu_oss_vat`, `hr_oib`, `pe_ruc`, `ro_tin`, `rs_pib`, `sv_nit`, `uy_ruc`, `ve_rif`, `vn_tin`, `gb_vat`, `nz_gst`, `au_abn`, `au_arn`, `in_gst`, `no_vat`, `no_voec`, `za_vat`, `ch_vat`, `mx_rfc`, `sg_uen`, `ru_inn`, `ru_kpp`, `ca_bn`, `hk_br`, `es_cif`, `pl_nip`, `it_cf`, `fo_vat`, `gi_tin`, `py_ruc`, `tw_vat`, `th_vat`, `jp_cn`, `jp_rn`, `jp_trn`, `li_uid`, `li_vat`, `lk_vat`, `my_itn`, `us_ein`, `kr_brn`, `ca_qst`, `ca_gst_hst`, `ca_pst_bc`, `ca_pst_mb`, `ca_pst_sk`, `my_sst`, `sg_gst`, `ae_trn`, `cl_tin`, `sa_vat`, `id_npwp`, `my_frp`, `il_vat`, `ge_vat`, `ua_vat`, `is_vat`, `bg_uic`, `hu_tin`, `si_tin`, `ke_pin`, `tr_tin`, `eg_tin`, `ph_tin`, `al_tin`, `bh_vat`, `kz_bin`, `ng_tin`, `om_vat`, `de_stn`, `ch_uid`, `tz_vat`, `uz_vat`, `uz_tin`, `md_vat`, `ma_vat`, `by_tin`, `ao_tin`, `bs_tin`, `bb_tin`, `cd_nif`, `mr_nif`, `me_pib`, `zw_tin`, `ba_tin`, `gn_nif`, `mk_vat`, `sr_fin`, `sn_ninea`, `am_tin`, `np_pan`, `tj_tin`, `ug_tin`, `zm_tin`, `kh_tin`, `aw_tin`, `az_tin`, `bd_bin`, `bj_ifu`, `et_tin`, `kg_tin`, `la_tin`, `cm_niu`, `cv_nif`, `bf_ifu`, `ic_nif`, or `unknown`
41
41
  attr_reader :type
42
42
  # The value of the tax ID.
43
43
  attr_reader :value
@@ -18,6 +18,21 @@ module Stripe
18
18
  end
19
19
 
20
20
  class Action < ::Stripe::StripeObject
21
+ class ActivateGiftCard < ::Stripe::StripeObject
22
+ # The gift card used in this reader action.
23
+ attr_reader :gift_card
24
+ # The GiftCardOperation created for this reader action.
25
+ attr_reader :gift_card_operation
26
+
27
+ def self.inner_class_types
28
+ @inner_class_types = {}
29
+ end
30
+
31
+ def self.field_remappings
32
+ @field_remappings = {}
33
+ end
34
+ end
35
+
21
36
  class ApiError < ::Stripe::StripeObject
22
37
  # For card errors resulting from a card issuer decline, a short string indicating [how to proceed with an error](https://docs.stripe.com/declines#retrying-issuer-declines) if they provide one.
23
38
  attr_reader :advice_code
@@ -29,6 +44,9 @@ module Stripe
29
44
  attr_reader :decline_code
30
45
  # A URL to more information about the [error code](https://docs.stripe.com/error-codes) reported.
31
46
  attr_reader :doc_url
47
+ # A GiftCardOperation represents an operation performed on a third-party gift card,
48
+ # such as activation, reload, cashout, balance check, or void.
49
+ attr_reader :gift_card_operation
32
50
  # A human-readable message providing more details about the error. For card errors, these messages can be shown to your users.
33
51
  attr_reader :message
34
52
  # For card errors resulting from a card issuer decline, a 2 digit code which indicates the advice given to merchant by the card network on how to proceed with an error.
@@ -95,6 +113,36 @@ module Stripe
95
113
  end
96
114
  end
97
115
 
116
+ class CashoutGiftCard < ::Stripe::StripeObject
117
+ # The gift card used in this reader action.
118
+ attr_reader :gift_card
119
+ # The GiftCardOperation created for this reader action.
120
+ attr_reader :gift_card_operation
121
+
122
+ def self.inner_class_types
123
+ @inner_class_types = {}
124
+ end
125
+
126
+ def self.field_remappings
127
+ @field_remappings = {}
128
+ end
129
+ end
130
+
131
+ class CheckGiftCardBalance < ::Stripe::StripeObject
132
+ # The gift card used in this reader action.
133
+ attr_reader :gift_card
134
+ # The GiftCardOperation created for this reader action.
135
+ attr_reader :gift_card_operation
136
+
137
+ def self.inner_class_types
138
+ @inner_class_types = {}
139
+ end
140
+
141
+ def self.field_remappings
142
+ @field_remappings = {}
143
+ end
144
+ end
145
+
98
146
  class CollectInputs < ::Stripe::StripeObject
99
147
  class Input < ::Stripe::StripeObject
100
148
  class CustomText < ::Stripe::StripeObject
@@ -366,6 +414,21 @@ module Stripe
366
414
  end
367
415
  end
368
416
 
417
+ class DeactivateGiftCard < ::Stripe::StripeObject
418
+ # The gift card used in this reader action.
419
+ attr_reader :gift_card
420
+ # The GiftCardOperation created for this reader action.
421
+ attr_reader :gift_card_operation
422
+
423
+ def self.inner_class_types
424
+ @inner_class_types = {}
425
+ end
426
+
427
+ def self.field_remappings
428
+ @field_remappings = {}
429
+ end
430
+ end
431
+
369
432
  class PrintContent < ::Stripe::StripeObject
370
433
  class Image < ::Stripe::StripeObject
371
434
  # Creation time of the object (in seconds since the Unix epoch).
@@ -518,6 +581,21 @@ module Stripe
518
581
  end
519
582
  end
520
583
 
584
+ class ReloadGiftCard < ::Stripe::StripeObject
585
+ # The gift card used in this reader action.
586
+ attr_reader :gift_card
587
+ # The GiftCardOperation created for this reader action.
588
+ attr_reader :gift_card_operation
589
+
590
+ def self.inner_class_types
591
+ @inner_class_types = {}
592
+ end
593
+
594
+ def self.field_remappings
595
+ @field_remappings = {}
596
+ end
597
+ end
598
+
521
599
  class SetReaderDisplay < ::Stripe::StripeObject
522
600
  class Cart < ::Stripe::StripeObject
523
601
  class LineItem < ::Stripe::StripeObject
@@ -566,14 +644,22 @@ module Stripe
566
644
  @field_remappings = {}
567
645
  end
568
646
  end
647
+ # Represents a reader action to activate a gift card
648
+ attr_reader :activate_gift_card
569
649
  # The reader action failed due to an [API error](https://docs.stripe.com/api/errors). Only present when `status` is `failed` and the underlying failure was an API error. Avoid parsing the `message` field for programmatic logic; use `type` or `code` instead. The `message` field is for display to humans only and may be updated at anytime. Requires [reader version](https://docs.stripe.com/terminal/readers/stripe-reader-s700-s710#reader-software-version) 2.42 or later. Readers on older versions always return null.
570
650
  attr_reader :api_error
651
+ # Represents a reader action to cash out a gift card
652
+ attr_reader :cashout_gift_card
653
+ # Represents a reader action to check a gift card balance
654
+ attr_reader :check_gift_card_balance
571
655
  # Represents a reader action to collect customer inputs
572
656
  attr_reader :collect_inputs
573
657
  # Represents a reader action to collect a payment method
574
658
  attr_reader :collect_payment_method
575
659
  # Represents a reader action to confirm a payment
576
660
  attr_reader :confirm_payment_intent
661
+ # Represents a reader action to deactivate a gift card
662
+ attr_reader :deactivate_gift_card
577
663
  # Failure code, only set if status is `failed`.
578
664
  attr_reader :failure_code
579
665
  # Detailed failure message, only set if status is `failed`.
@@ -586,6 +672,8 @@ module Stripe
586
672
  attr_reader :process_setup_intent
587
673
  # Represents a reader action to refund a payment
588
674
  attr_reader :refund_payment
675
+ # Represents a reader action to reload a gift card
676
+ attr_reader :reload_gift_card
589
677
  # Represents a reader action to set the reader display
590
678
  attr_reader :set_reader_display
591
679
  # Status of the action performed by the reader.
@@ -595,14 +683,19 @@ module Stripe
595
683
 
596
684
  def self.inner_class_types
597
685
  @inner_class_types = {
686
+ activate_gift_card: ActivateGiftCard,
598
687
  api_error: ApiError,
688
+ cashout_gift_card: CashoutGiftCard,
689
+ check_gift_card_balance: CheckGiftCardBalance,
599
690
  collect_inputs: CollectInputs,
600
691
  collect_payment_method: CollectPaymentMethod,
601
692
  confirm_payment_intent: ConfirmPaymentIntent,
693
+ deactivate_gift_card: DeactivateGiftCard,
602
694
  print_content: PrintContent,
603
695
  process_payment_intent: ProcessPaymentIntent,
604
696
  process_setup_intent: ProcessSetupIntent,
605
697
  refund_payment: RefundPayment,
698
+ reload_gift_card: ReloadGiftCard,
606
699
  set_reader_display: SetReaderDisplay,
607
700
  }
608
701
  end
@@ -640,6 +733,26 @@ module Stripe
640
733
  # The networking status of the reader. We do not recommend using this field in flows that may block taking payments.
641
734
  attr_reader :status
642
735
 
736
+ # Initiates a gift card activation flow on a Reader and optionally sets its balance.
737
+ def activate_gift_card(params = {}, opts = {})
738
+ request_stripe_object(
739
+ method: :post,
740
+ path: format("/v1/terminal/readers/%<reader>s/activate_gift_card", { reader: CGI.escape(self["id"]) }),
741
+ params: params,
742
+ opts: opts
743
+ )
744
+ end
745
+
746
+ # Initiates a gift card activation flow on a Reader and optionally sets its balance.
747
+ def self.activate_gift_card(reader, params = {}, opts = {})
748
+ request_stripe_object(
749
+ method: :post,
750
+ path: format("/v1/terminal/readers/%<reader>s/activate_gift_card", { reader: CGI.escape(reader) }),
751
+ params: params,
752
+ opts: opts
753
+ )
754
+ end
755
+
643
756
  # Cancels the current reader action. See [Programmatic Cancellation](https://docs.stripe.com/docs/terminal/payments/collect-card-payment?terminal-sdk-platform=server-driven#programmatic-cancellation) for more details.
644
757
  def cancel_action(params = {}, opts = {})
645
758
  request_stripe_object(
@@ -660,6 +773,46 @@ module Stripe
660
773
  )
661
774
  end
662
775
 
776
+ # Initiates a gift card cashout flow on a Reader. A cashout sets the gift card balance to 0.
777
+ def cashout_gift_card(params = {}, opts = {})
778
+ request_stripe_object(
779
+ method: :post,
780
+ path: format("/v1/terminal/readers/%<reader>s/cashout_gift_card", { reader: CGI.escape(self["id"]) }),
781
+ params: params,
782
+ opts: opts
783
+ )
784
+ end
785
+
786
+ # Initiates a gift card cashout flow on a Reader. A cashout sets the gift card balance to 0.
787
+ def self.cashout_gift_card(reader, params = {}, opts = {})
788
+ request_stripe_object(
789
+ method: :post,
790
+ path: format("/v1/terminal/readers/%<reader>s/cashout_gift_card", { reader: CGI.escape(reader) }),
791
+ params: params,
792
+ opts: opts
793
+ )
794
+ end
795
+
796
+ # Initiates a gift card balance check flow on a Reader.
797
+ def check_gift_card_balance(params = {}, opts = {})
798
+ request_stripe_object(
799
+ method: :post,
800
+ path: format("/v1/terminal/readers/%<reader>s/check_gift_card_balance", { reader: CGI.escape(self["id"]) }),
801
+ params: params,
802
+ opts: opts
803
+ )
804
+ end
805
+
806
+ # Initiates a gift card balance check flow on a Reader.
807
+ def self.check_gift_card_balance(reader, params = {}, opts = {})
808
+ request_stripe_object(
809
+ method: :post,
810
+ path: format("/v1/terminal/readers/%<reader>s/check_gift_card_balance", { reader: CGI.escape(reader) }),
811
+ params: params,
812
+ opts: opts
813
+ )
814
+ end
815
+
663
816
  # Initiates an [input collection flow](https://docs.stripe.com/docs/terminal/features/collect-inputs) on a Reader to display input forms and collect information from your customers.
664
817
  def collect_inputs(params = {}, opts = {})
665
818
  request_stripe_object(
@@ -820,6 +973,26 @@ module Stripe
820
973
  )
821
974
  end
822
975
 
976
+ # Initiates a gift card reload flow on a Reader by adding the specified amount to its balance.
977
+ def reload_gift_card(params = {}, opts = {})
978
+ request_stripe_object(
979
+ method: :post,
980
+ path: format("/v1/terminal/readers/%<reader>s/reload_gift_card", { reader: CGI.escape(self["id"]) }),
981
+ params: params,
982
+ opts: opts
983
+ )
984
+ end
985
+
986
+ # Initiates a gift card reload flow on a Reader by adding the specified amount to its balance.
987
+ def self.reload_gift_card(reader, params = {}, opts = {})
988
+ request_stripe_object(
989
+ method: :post,
990
+ path: format("/v1/terminal/readers/%<reader>s/reload_gift_card", { reader: CGI.escape(reader) }),
991
+ params: params,
992
+ opts: opts
993
+ )
994
+ end
995
+
823
996
  # Sets the reader display to show [cart details](https://docs.stripe.com/docs/terminal/features/display).
824
997
  def set_reader_display(params = {}, opts = {})
825
998
  request_stripe_object(