stripe 10.1.0 → 12.6.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (165) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +215 -21
  3. data/Gemfile +6 -5
  4. data/Makefile +8 -1
  5. data/OPENAPI_VERSION +1 -1
  6. data/README.md +46 -14
  7. data/Rakefile +7 -5
  8. data/VERSION +1 -1
  9. data/{bin → exe}/stripe-console +1 -1
  10. data/lib/stripe/api_operations/nested_resource.rb +22 -2
  11. data/lib/stripe/api_operations/request.rb +22 -18
  12. data/lib/stripe/api_operations/save.rb +7 -9
  13. data/lib/stripe/api_operations/search.rb +5 -0
  14. data/lib/stripe/api_operations/singleton_save.rb +86 -0
  15. data/lib/stripe/api_resource.rb +13 -4
  16. data/lib/stripe/api_resource_test_helpers.rb +7 -3
  17. data/lib/stripe/api_version.rb +1 -1
  18. data/lib/stripe/connection_manager.rb +4 -6
  19. data/lib/stripe/errors.rb +3 -11
  20. data/lib/stripe/instrumentation.rb +5 -21
  21. data/lib/stripe/list_object.rb +3 -0
  22. data/lib/stripe/multipart_encoder.rb +7 -7
  23. data/lib/stripe/oauth.rb +6 -6
  24. data/lib/stripe/object_types.rb +135 -116
  25. data/lib/stripe/resources/account.rb +103 -25
  26. data/lib/stripe/resources/account_link.rb +8 -0
  27. data/lib/stripe/resources/account_session.rb +8 -0
  28. data/lib/stripe/resources/alipay_account.rb +1 -1
  29. data/lib/stripe/resources/apple_pay_domain.rb +43 -0
  30. data/lib/stripe/resources/application_fee.rb +8 -0
  31. data/lib/stripe/resources/application_fee_refund.rb +4 -2
  32. data/lib/stripe/resources/apps/secret.rb +15 -0
  33. data/lib/stripe/resources/balance.rb +3 -0
  34. data/lib/stripe/resources/balance_transaction.rb +15 -0
  35. data/lib/stripe/resources/bank_account.rb +49 -7
  36. data/lib/stripe/resources/billing/alert.rb +87 -0
  37. data/lib/stripe/resources/billing/meter.rb +83 -0
  38. data/lib/stripe/resources/billing/meter_event.rb +27 -0
  39. data/lib/stripe/resources/billing/meter_event_adjustment.rb +26 -0
  40. data/lib/stripe/resources/billing/meter_event_summary.rb +15 -0
  41. data/lib/stripe/resources/billing_portal/configuration.rb +33 -0
  42. data/lib/stripe/resources/billing_portal/session.rb +14 -1
  43. data/lib/stripe/resources/capability.rb +4 -2
  44. data/lib/stripe/resources/card.rb +28 -0
  45. data/lib/stripe/resources/cash_balance.rb +3 -0
  46. data/lib/stripe/resources/charge.rb +39 -1
  47. data/lib/stripe/resources/checkout/session.rb +47 -5
  48. data/lib/stripe/resources/climate/order.rb +67 -0
  49. data/lib/stripe/resources/climate/product.rb +27 -0
  50. data/lib/stripe/resources/climate/supplier.rb +26 -0
  51. data/lib/stripe/resources/confirmation_token.rb +39 -0
  52. data/lib/stripe/resources/country_spec.rb +8 -0
  53. data/lib/stripe/resources/coupon.rb +45 -0
  54. data/lib/stripe/resources/credit_note.rb +47 -7
  55. data/lib/stripe/resources/credit_note_line_item.rb +3 -0
  56. data/lib/stripe/resources/customer.rb +89 -26
  57. data/lib/stripe/resources/customer_balance_transaction.rb +3 -1
  58. data/lib/stripe/resources/customer_cash_balance_transaction.rb +3 -2
  59. data/lib/stripe/resources/customer_session.rb +29 -0
  60. data/lib/stripe/resources/discount.rb +3 -0
  61. data/lib/stripe/resources/dispute.rb +26 -0
  62. data/lib/stripe/resources/entitlements/active_entitlement.rb +26 -0
  63. data/lib/stripe/resources/entitlements/feature.rb +49 -0
  64. data/lib/stripe/resources/ephemeral_key.rb +23 -0
  65. data/lib/stripe/resources/event.rb +11 -3
  66. data/lib/stripe/resources/exchange_rate.rb +8 -0
  67. data/lib/stripe/resources/file.rb +29 -16
  68. data/lib/stripe/resources/file_link.rb +23 -0
  69. data/lib/stripe/resources/financial_connections/account.rb +66 -7
  70. data/lib/stripe/resources/financial_connections/account_owner.rb +3 -0
  71. data/lib/stripe/resources/financial_connections/account_ownership.rb +3 -0
  72. data/lib/stripe/resources/financial_connections/session.rb +13 -0
  73. data/lib/stripe/resources/financial_connections/transaction.rb +26 -0
  74. data/lib/stripe/resources/forwarding/request.rb +52 -0
  75. data/lib/stripe/resources/funding_instructions.rb +3 -0
  76. data/lib/stripe/resources/identity/verification_report.rb +14 -1
  77. data/lib/stripe/resources/identity/verification_session.rb +90 -4
  78. data/lib/stripe/resources/invoice.rb +170 -17
  79. data/lib/stripe/resources/invoice_item.rb +43 -0
  80. data/lib/stripe/resources/invoice_line_item.rb +21 -0
  81. data/lib/stripe/resources/invoice_rendering_template.rb +63 -0
  82. data/lib/stripe/resources/issuing/authorization.rb +88 -14
  83. data/lib/stripe/resources/issuing/card.rb +50 -16
  84. data/lib/stripe/resources/issuing/cardholder.rb +33 -0
  85. data/lib/stripe/resources/issuing/dispute.rb +35 -0
  86. data/lib/stripe/resources/issuing/personalization_design.rb +119 -0
  87. data/lib/stripe/resources/issuing/physical_bundle.rb +26 -0
  88. data/lib/stripe/resources/issuing/token.rb +18 -0
  89. data/lib/stripe/resources/issuing/transaction.rb +30 -0
  90. data/lib/stripe/resources/line_item.rb +3 -0
  91. data/lib/stripe/resources/login_link.rb +4 -1
  92. data/lib/stripe/resources/mandate.rb +3 -0
  93. data/lib/stripe/resources/payment_intent.rb +190 -25
  94. data/lib/stripe/resources/payment_link.rb +25 -0
  95. data/lib/stripe/resources/payment_method.rb +57 -4
  96. data/lib/stripe/resources/payment_method_configuration.rb +33 -0
  97. data/lib/stripe/resources/payment_method_domain.rb +46 -1
  98. data/lib/stripe/resources/payout.rb +39 -4
  99. data/lib/stripe/resources/person.rb +5 -4
  100. data/lib/stripe/resources/plan.rb +43 -0
  101. data/lib/stripe/resources/price.rb +24 -1
  102. data/lib/stripe/resources/product.rb +47 -1
  103. data/lib/stripe/resources/product_feature.rb +13 -0
  104. data/lib/stripe/resources/promotion_code.rb +23 -0
  105. data/lib/stripe/resources/quote.rb +67 -32
  106. data/lib/stripe/resources/radar/early_fraud_warning.rb +13 -0
  107. data/lib/stripe/resources/radar/value_list.rb +53 -0
  108. data/lib/stripe/resources/radar/value_list_item.rb +43 -0
  109. data/lib/stripe/resources/refund.rb +46 -0
  110. data/lib/stripe/resources/reporting/report_run.rb +23 -0
  111. data/lib/stripe/resources/reporting/report_type.rb +13 -0
  112. data/lib/stripe/resources/reversal.rb +5 -3
  113. data/lib/stripe/resources/review.rb +10 -0
  114. data/lib/stripe/resources/setup_attempt.rb +8 -0
  115. data/lib/stripe/resources/setup_intent.rb +72 -10
  116. data/lib/stripe/resources/shipping_rate.rb +23 -0
  117. data/lib/stripe/resources/sigma/scheduled_query_run.rb +13 -0
  118. data/lib/stripe/resources/source.rb +23 -1
  119. data/lib/stripe/resources/source_transaction.rb +3 -0
  120. data/lib/stripe/resources/subscription.rb +81 -13
  121. data/lib/stripe/resources/subscription_item.rb +54 -1
  122. data/lib/stripe/resources/subscription_schedule.rb +41 -4
  123. data/lib/stripe/resources/tax/calculation.rb +15 -0
  124. data/lib/stripe/resources/tax/calculation_line_item.rb +3 -0
  125. data/lib/stripe/resources/tax/registration.rb +35 -0
  126. data/lib/stripe/resources/tax/settings.rb +4 -2
  127. data/lib/stripe/resources/tax/transaction.rb +15 -8
  128. data/lib/stripe/resources/tax/transaction_line_item.rb +3 -0
  129. data/lib/stripe/resources/tax_code.rb +8 -0
  130. data/lib/stripe/resources/tax_id.rb +30 -12
  131. data/lib/stripe/resources/tax_rate.rb +23 -0
  132. data/lib/stripe/resources/terminal/configuration.rb +53 -0
  133. data/lib/stripe/resources/terminal/connection_token.rb +13 -0
  134. data/lib/stripe/resources/terminal/location.rb +54 -0
  135. data/lib/stripe/resources/terminal/reader.rb +80 -12
  136. data/lib/stripe/resources/test_helpers/test_clock.rb +45 -0
  137. data/lib/stripe/resources/token.rb +10 -1
  138. data/lib/stripe/resources/topup.rb +25 -0
  139. data/lib/stripe/resources/transfer.rb +26 -1
  140. data/lib/stripe/resources/treasury/credit_reversal.rb +23 -0
  141. data/lib/stripe/resources/treasury/debit_reversal.rb +23 -0
  142. data/lib/stripe/resources/treasury/financial_account.rb +42 -5
  143. data/lib/stripe/resources/treasury/financial_account_features.rb +3 -0
  144. data/lib/stripe/resources/treasury/inbound_transfer.rb +47 -11
  145. data/lib/stripe/resources/treasury/outbound_payment.rb +64 -8
  146. data/lib/stripe/resources/treasury/outbound_transfer.rb +64 -8
  147. data/lib/stripe/resources/treasury/received_credit.rb +17 -0
  148. data/lib/stripe/resources/treasury/received_debit.rb +17 -0
  149. data/lib/stripe/resources/treasury/transaction.rb +13 -0
  150. data/lib/stripe/resources/treasury/transaction_entry.rb +13 -0
  151. data/lib/stripe/resources/usage_record.rb +5 -0
  152. data/lib/stripe/resources/usage_record_summary.rb +3 -0
  153. data/lib/stripe/resources/webhook_endpoint.rb +55 -2
  154. data/lib/stripe/resources.rb +18 -0
  155. data/lib/stripe/search_result_object.rb +4 -1
  156. data/lib/stripe/singleton_api_resource.rb +20 -3
  157. data/lib/stripe/stripe_client.rb +61 -63
  158. data/lib/stripe/stripe_configuration.rb +13 -29
  159. data/lib/stripe/stripe_object.rb +23 -21
  160. data/lib/stripe/stripe_response.rb +1 -3
  161. data/lib/stripe/util.rb +13 -15
  162. data/lib/stripe/version.rb +1 -1
  163. data/lib/stripe.rb +26 -0
  164. data/stripe.gemspec +7 -4
  165. metadata +25 -5
@@ -10,6 +10,29 @@ module Stripe
10
10
  include Stripe::APIOperations::Save
11
11
 
12
12
  OBJECT_NAME = "issuing.card"
13
+ def self.object_name
14
+ "issuing.card"
15
+ end
16
+
17
+ # Creates an Issuing Card object.
18
+ def self.create(params = {}, opts = {})
19
+ request_stripe_object(method: :post, path: "/v1/issuing/cards", params: params, opts: opts)
20
+ end
21
+
22
+ # Returns a list of Issuing Card objects. The objects are sorted in descending order by creation date, with the most recently created object appearing first.
23
+ def self.list(filters = {}, opts = {})
24
+ request_stripe_object(method: :get, path: "/v1/issuing/cards", params: filters, opts: opts)
25
+ end
26
+
27
+ # Updates the specified Issuing Card object by setting the values of the parameters passed. Any parameters not provided will be left unchanged.
28
+ def self.update(id, params = {}, opts = {})
29
+ request_stripe_object(
30
+ method: :post,
31
+ path: format("/v1/issuing/cards/%<id>s", { id: CGI.escape(id) }),
32
+ params: params,
33
+ opts: opts
34
+ )
35
+ end
13
36
 
14
37
  def test_helpers
15
38
  TestHelpers.new(self)
@@ -17,7 +40,11 @@ module Stripe
17
40
 
18
41
  class TestHelpers < APIResourceTestHelpers
19
42
  RESOURCE_CLASS = Card
43
+ def self.resource_class
44
+ "Card"
45
+ end
20
46
 
47
+ # Updates the shipping status of the specified Issuing Card object to delivered.
21
48
  def self.deliver_card(card, params = {}, opts = {})
22
49
  request_stripe_object(
23
50
  method: :post,
@@ -27,60 +54,67 @@ module Stripe
27
54
  )
28
55
  end
29
56
 
30
- def self.fail_card(card, params = {}, opts = {})
31
- request_stripe_object(
57
+ # Updates the shipping status of the specified Issuing Card object to delivered.
58
+ def deliver_card(params = {}, opts = {})
59
+ @resource.request_stripe_object(
32
60
  method: :post,
33
- path: format("/v1/test_helpers/issuing/cards/%<card>s/shipping/fail", { card: CGI.escape(card) }),
61
+ path: format("/v1/test_helpers/issuing/cards/%<card>s/shipping/deliver", { card: CGI.escape(@resource["id"]) }),
34
62
  params: params,
35
63
  opts: opts
36
64
  )
37
65
  end
38
66
 
39
- def self.return_card(card, params = {}, opts = {})
67
+ # Updates the shipping status of the specified Issuing Card object to failure.
68
+ def self.fail_card(card, params = {}, opts = {})
40
69
  request_stripe_object(
41
70
  method: :post,
42
- path: format("/v1/test_helpers/issuing/cards/%<card>s/shipping/return", { card: CGI.escape(card) }),
71
+ path: format("/v1/test_helpers/issuing/cards/%<card>s/shipping/fail", { card: CGI.escape(card) }),
43
72
  params: params,
44
73
  opts: opts
45
74
  )
46
75
  end
47
76
 
48
- def self.ship_card(card, params = {}, opts = {})
49
- request_stripe_object(
77
+ # Updates the shipping status of the specified Issuing Card object to failure.
78
+ def fail_card(params = {}, opts = {})
79
+ @resource.request_stripe_object(
50
80
  method: :post,
51
- path: format("/v1/test_helpers/issuing/cards/%<card>s/shipping/ship", { card: CGI.escape(card) }),
81
+ path: format("/v1/test_helpers/issuing/cards/%<card>s/shipping/fail", { card: CGI.escape(@resource["id"]) }),
52
82
  params: params,
53
83
  opts: opts
54
84
  )
55
85
  end
56
86
 
57
- def deliver_card(params = {}, opts = {})
58
- @resource.request_stripe_object(
87
+ # Updates the shipping status of the specified Issuing Card object to returned.
88
+ def self.return_card(card, params = {}, opts = {})
89
+ request_stripe_object(
59
90
  method: :post,
60
- path: format("/v1/test_helpers/issuing/cards/%<card>s/shipping/deliver", { card: CGI.escape(@resource["id"]) }),
91
+ path: format("/v1/test_helpers/issuing/cards/%<card>s/shipping/return", { card: CGI.escape(card) }),
61
92
  params: params,
62
93
  opts: opts
63
94
  )
64
95
  end
65
96
 
66
- def fail_card(params = {}, opts = {})
97
+ # Updates the shipping status of the specified Issuing Card object to returned.
98
+ def return_card(params = {}, opts = {})
67
99
  @resource.request_stripe_object(
68
100
  method: :post,
69
- path: format("/v1/test_helpers/issuing/cards/%<card>s/shipping/fail", { card: CGI.escape(@resource["id"]) }),
101
+ path: format("/v1/test_helpers/issuing/cards/%<card>s/shipping/return", { card: CGI.escape(@resource["id"]) }),
70
102
  params: params,
71
103
  opts: opts
72
104
  )
73
105
  end
74
106
 
75
- def return_card(params = {}, opts = {})
76
- @resource.request_stripe_object(
107
+ # Updates the shipping status of the specified Issuing Card object to shipped.
108
+ def self.ship_card(card, params = {}, opts = {})
109
+ request_stripe_object(
77
110
  method: :post,
78
- path: format("/v1/test_helpers/issuing/cards/%<card>s/shipping/return", { card: CGI.escape(@resource["id"]) }),
111
+ path: format("/v1/test_helpers/issuing/cards/%<card>s/shipping/ship", { card: CGI.escape(card) }),
79
112
  params: params,
80
113
  opts: opts
81
114
  )
82
115
  end
83
116
 
117
+ # Updates the shipping status of the specified Issuing Card object to shipped.
84
118
  def ship_card(params = {}, opts = {})
85
119
  @resource.request_stripe_object(
86
120
  method: :post,
@@ -12,6 +12,39 @@ module Stripe
12
12
  include Stripe::APIOperations::Save
13
13
 
14
14
  OBJECT_NAME = "issuing.cardholder"
15
+ def self.object_name
16
+ "issuing.cardholder"
17
+ end
18
+
19
+ # Creates a new Issuing Cardholder object that can be issued cards.
20
+ def self.create(params = {}, opts = {})
21
+ request_stripe_object(
22
+ method: :post,
23
+ path: "/v1/issuing/cardholders",
24
+ params: params,
25
+ opts: opts
26
+ )
27
+ end
28
+
29
+ # Returns a list of Issuing Cardholder objects. The objects are sorted in descending order by creation date, with the most recently created object appearing first.
30
+ def self.list(filters = {}, opts = {})
31
+ request_stripe_object(
32
+ method: :get,
33
+ path: "/v1/issuing/cardholders",
34
+ params: filters,
35
+ opts: opts
36
+ )
37
+ end
38
+
39
+ # Updates the specified Issuing Cardholder object by setting the values of the parameters passed. Any parameters not provided will be left unchanged.
40
+ def self.update(id, params = {}, opts = {})
41
+ request_stripe_object(
42
+ method: :post,
43
+ path: format("/v1/issuing/cardholders/%<id>s", { id: CGI.escape(id) }),
44
+ params: params,
45
+ opts: opts
46
+ )
47
+ end
15
48
  end
16
49
  end
17
50
  end
@@ -12,7 +12,31 @@ module Stripe
12
12
  include Stripe::APIOperations::Save
13
13
 
14
14
  OBJECT_NAME = "issuing.dispute"
15
+ def self.object_name
16
+ "issuing.dispute"
17
+ end
18
+
19
+ # Creates an Issuing Dispute object. Individual pieces of evidence within the evidence object are optional at this point. Stripe only validates that required evidence is present during submission. Refer to [Dispute reasons and evidence](https://stripe.com/docs/issuing/purchases/disputes#dispute-reasons-and-evidence) for more details about evidence requirements.
20
+ def self.create(params = {}, opts = {})
21
+ request_stripe_object(
22
+ method: :post,
23
+ path: "/v1/issuing/disputes",
24
+ params: params,
25
+ opts: opts
26
+ )
27
+ end
28
+
29
+ # Returns a list of Issuing Dispute objects. The objects are sorted in descending order by creation date, with the most recently created object appearing first.
30
+ def self.list(filters = {}, opts = {})
31
+ request_stripe_object(
32
+ method: :get,
33
+ path: "/v1/issuing/disputes",
34
+ params: filters,
35
+ opts: opts
36
+ )
37
+ end
15
38
 
39
+ # Submits an Issuing Dispute to the card network. Stripe validates that all evidence fields required for the dispute's reason are present. For more details, see [Dispute reasons and evidence](https://stripe.com/docs/issuing/purchases/disputes#dispute-reasons-and-evidence).
16
40
  def submit(params = {}, opts = {})
17
41
  request_stripe_object(
18
42
  method: :post,
@@ -22,6 +46,7 @@ module Stripe
22
46
  )
23
47
  end
24
48
 
49
+ # Submits an Issuing Dispute to the card network. Stripe validates that all evidence fields required for the dispute's reason are present. For more details, see [Dispute reasons and evidence](https://stripe.com/docs/issuing/purchases/disputes#dispute-reasons-and-evidence).
25
50
  def self.submit(dispute, params = {}, opts = {})
26
51
  request_stripe_object(
27
52
  method: :post,
@@ -30,6 +55,16 @@ module Stripe
30
55
  opts: opts
31
56
  )
32
57
  end
58
+
59
+ # Updates the specified Issuing Dispute object by setting the values of the parameters passed. Any parameters not provided will be left unchanged. Properties on the evidence object can be unset by passing in an empty string.
60
+ def self.update(id, params = {}, opts = {})
61
+ request_stripe_object(
62
+ method: :post,
63
+ path: format("/v1/issuing/disputes/%<id>s", { id: CGI.escape(id) }),
64
+ params: params,
65
+ opts: opts
66
+ )
67
+ end
33
68
  end
34
69
  end
35
70
  end
@@ -0,0 +1,119 @@
1
+ # File generated from our OpenAPI spec
2
+ # frozen_string_literal: true
3
+
4
+ module Stripe
5
+ module Issuing
6
+ # A Personalization Design is a logical grouping of a Physical Bundle, card logo, and carrier text that represents a product line.
7
+ class PersonalizationDesign < APIResource
8
+ extend Stripe::APIOperations::Create
9
+ extend Stripe::APIOperations::List
10
+ include Stripe::APIOperations::Save
11
+
12
+ OBJECT_NAME = "issuing.personalization_design"
13
+ def self.object_name
14
+ "issuing.personalization_design"
15
+ end
16
+
17
+ # Creates a personalization design object.
18
+ def self.create(params = {}, opts = {})
19
+ request_stripe_object(
20
+ method: :post,
21
+ path: "/v1/issuing/personalization_designs",
22
+ params: params,
23
+ opts: opts
24
+ )
25
+ end
26
+
27
+ # Returns a list of personalization design objects. The objects are sorted in descending order by creation date, with the most recently created object appearing first.
28
+ def self.list(filters = {}, opts = {})
29
+ request_stripe_object(
30
+ method: :get,
31
+ path: "/v1/issuing/personalization_designs",
32
+ params: filters,
33
+ opts: opts
34
+ )
35
+ end
36
+
37
+ # Updates a card personalization object.
38
+ def self.update(id, params = {}, opts = {})
39
+ request_stripe_object(
40
+ method: :post,
41
+ path: format("/v1/issuing/personalization_designs/%<id>s", { id: CGI.escape(id) }),
42
+ params: params,
43
+ opts: opts
44
+ )
45
+ end
46
+
47
+ def test_helpers
48
+ TestHelpers.new(self)
49
+ end
50
+
51
+ class TestHelpers < APIResourceTestHelpers
52
+ RESOURCE_CLASS = PersonalizationDesign
53
+ def self.resource_class
54
+ "PersonalizationDesign"
55
+ end
56
+
57
+ # Updates the status of the specified testmode personalization design object to active.
58
+ def self.activate(personalization_design, params = {}, opts = {})
59
+ request_stripe_object(
60
+ method: :post,
61
+ path: format("/v1/test_helpers/issuing/personalization_designs/%<personalization_design>s/activate", { personalization_design: CGI.escape(personalization_design) }),
62
+ params: params,
63
+ opts: opts
64
+ )
65
+ end
66
+
67
+ # Updates the status of the specified testmode personalization design object to active.
68
+ def activate(params = {}, opts = {})
69
+ @resource.request_stripe_object(
70
+ method: :post,
71
+ path: format("/v1/test_helpers/issuing/personalization_designs/%<personalization_design>s/activate", { personalization_design: CGI.escape(@resource["id"]) }),
72
+ params: params,
73
+ opts: opts
74
+ )
75
+ end
76
+
77
+ # Updates the status of the specified testmode personalization design object to inactive.
78
+ def self.deactivate(personalization_design, params = {}, opts = {})
79
+ request_stripe_object(
80
+ method: :post,
81
+ path: format("/v1/test_helpers/issuing/personalization_designs/%<personalization_design>s/deactivate", { personalization_design: CGI.escape(personalization_design) }),
82
+ params: params,
83
+ opts: opts
84
+ )
85
+ end
86
+
87
+ # Updates the status of the specified testmode personalization design object to inactive.
88
+ def deactivate(params = {}, opts = {})
89
+ @resource.request_stripe_object(
90
+ method: :post,
91
+ path: format("/v1/test_helpers/issuing/personalization_designs/%<personalization_design>s/deactivate", { personalization_design: CGI.escape(@resource["id"]) }),
92
+ params: params,
93
+ opts: opts
94
+ )
95
+ end
96
+
97
+ # Updates the status of the specified testmode personalization design object to rejected.
98
+ def self.reject(personalization_design, params = {}, opts = {})
99
+ request_stripe_object(
100
+ method: :post,
101
+ path: format("/v1/test_helpers/issuing/personalization_designs/%<personalization_design>s/reject", { personalization_design: CGI.escape(personalization_design) }),
102
+ params: params,
103
+ opts: opts
104
+ )
105
+ end
106
+
107
+ # Updates the status of the specified testmode personalization design object to rejected.
108
+ def reject(params = {}, opts = {})
109
+ @resource.request_stripe_object(
110
+ method: :post,
111
+ path: format("/v1/test_helpers/issuing/personalization_designs/%<personalization_design>s/reject", { personalization_design: CGI.escape(@resource["id"]) }),
112
+ params: params,
113
+ opts: opts
114
+ )
115
+ end
116
+ end
117
+ end
118
+ end
119
+ end
@@ -0,0 +1,26 @@
1
+ # File generated from our OpenAPI spec
2
+ # frozen_string_literal: true
3
+
4
+ module Stripe
5
+ module Issuing
6
+ # A Physical Bundle represents the bundle of physical items - card stock, carrier letter, and envelope - that is shipped to a cardholder when you create a physical card.
7
+ class PhysicalBundle < APIResource
8
+ extend Stripe::APIOperations::List
9
+
10
+ OBJECT_NAME = "issuing.physical_bundle"
11
+ def self.object_name
12
+ "issuing.physical_bundle"
13
+ end
14
+
15
+ # Returns a list of physical bundle objects. The objects are sorted in descending order by creation date, with the most recently created object appearing first.
16
+ def self.list(filters = {}, opts = {})
17
+ request_stripe_object(
18
+ method: :get,
19
+ path: "/v1/issuing/physical_bundles",
20
+ params: filters,
21
+ opts: opts
22
+ )
23
+ end
24
+ end
25
+ end
26
+ end
@@ -9,6 +9,24 @@ module Stripe
9
9
  include Stripe::APIOperations::Save
10
10
 
11
11
  OBJECT_NAME = "issuing.token"
12
+ def self.object_name
13
+ "issuing.token"
14
+ end
15
+
16
+ # Lists all Issuing Token objects for a given card.
17
+ def self.list(filters = {}, opts = {})
18
+ request_stripe_object(method: :get, path: "/v1/issuing/tokens", params: filters, opts: opts)
19
+ end
20
+
21
+ # Attempts to update the specified Issuing Token object to the status specified.
22
+ def self.update(id, params = {}, opts = {})
23
+ request_stripe_object(
24
+ method: :post,
25
+ path: format("/v1/issuing/tokens/%<id>s", { id: CGI.escape(id) }),
26
+ params: params,
27
+ opts: opts
28
+ )
29
+ end
12
30
  end
13
31
  end
14
32
  end
@@ -13,6 +13,29 @@ module Stripe
13
13
  include Stripe::APIOperations::Save
14
14
 
15
15
  OBJECT_NAME = "issuing.transaction"
16
+ def self.object_name
17
+ "issuing.transaction"
18
+ end
19
+
20
+ # Returns a list of Issuing Transaction objects. The objects are sorted in descending order by creation date, with the most recently created object appearing first.
21
+ def self.list(filters = {}, opts = {})
22
+ request_stripe_object(
23
+ method: :get,
24
+ path: "/v1/issuing/transactions",
25
+ params: filters,
26
+ opts: opts
27
+ )
28
+ end
29
+
30
+ # Updates the specified Issuing Transaction object by setting the values of the parameters passed. Any parameters not provided will be left unchanged.
31
+ def self.update(id, params = {}, opts = {})
32
+ request_stripe_object(
33
+ method: :post,
34
+ path: format("/v1/issuing/transactions/%<id>s", { id: CGI.escape(id) }),
35
+ params: params,
36
+ opts: opts
37
+ )
38
+ end
16
39
 
17
40
  def test_helpers
18
41
  TestHelpers.new(self)
@@ -20,7 +43,11 @@ module Stripe
20
43
 
21
44
  class TestHelpers < APIResourceTestHelpers
22
45
  RESOURCE_CLASS = Transaction
46
+ def self.resource_class
47
+ "Transaction"
48
+ end
23
49
 
50
+ # Allows the user to capture an arbitrary amount, also known as a forced capture.
24
51
  def self.create_force_capture(params = {}, opts = {})
25
52
  request_stripe_object(
26
53
  method: :post,
@@ -30,6 +57,7 @@ module Stripe
30
57
  )
31
58
  end
32
59
 
60
+ # Allows the user to refund an arbitrary amount, also known as a unlinked refund.
33
61
  def self.create_unlinked_refund(params = {}, opts = {})
34
62
  request_stripe_object(
35
63
  method: :post,
@@ -39,6 +67,7 @@ module Stripe
39
67
  )
40
68
  end
41
69
 
70
+ # Refund a test-mode Transaction.
42
71
  def self.refund(transaction, params = {}, opts = {})
43
72
  request_stripe_object(
44
73
  method: :post,
@@ -48,6 +77,7 @@ module Stripe
48
77
  )
49
78
  end
50
79
 
80
+ # Refund a test-mode Transaction.
51
81
  def refund(params = {}, opts = {})
52
82
  @resource.request_stripe_object(
53
83
  method: :post,
@@ -5,5 +5,8 @@ module Stripe
5
5
  # A line item.
6
6
  class LineItem < APIResource
7
7
  OBJECT_NAME = "item"
8
+ def self.object_name
9
+ "item"
10
+ end
8
11
  end
9
12
  end
@@ -2,9 +2,12 @@
2
2
  # frozen_string_literal: true
3
3
 
4
4
  module Stripe
5
- # Login Links are single-use login link for an Express account to access their Stripe dashboard.
5
+ # Login Links are single-use URLs for a connected account to access the Express Dashboard. The connected account's [account.controller.stripe_dashboard.type](https://stripe.com/api/accounts/object#account_object-controller-stripe_dashboard-type) must be `express` to have access to the Express Dashboard.
6
6
  class LoginLink < APIResource
7
7
  OBJECT_NAME = "login_link"
8
+ def self.object_name
9
+ "login_link"
10
+ end
8
11
 
9
12
  def self.retrieve(_id, _opts = nil)
10
13
  raise NotImplementedError,
@@ -5,5 +5,8 @@ module Stripe
5
5
  # A Mandate is a record of the permission that your customer gives you to debit their payment method.
6
6
  class Mandate < APIResource
7
7
  OBJECT_NAME = "mandate"
8
+ def self.object_name
9
+ "mandate"
10
+ end
8
11
  end
9
12
  end