whop_sdk 0.0.17 → 0.0.19

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 (36) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +30 -0
  3. data/README.md +1 -1
  4. data/lib/whop_sdk/models/company_update_params.rb +61 -1
  5. data/lib/whop_sdk/models/ledger_account_retrieve_response.rb +145 -1
  6. data/lib/whop_sdk/models/payment_created_webhook_event.rb +48 -0
  7. data/lib/whop_sdk/models/payment_method_list_response.rb +227 -1
  8. data/lib/whop_sdk/models/payment_method_retrieve_response.rb +229 -1
  9. data/lib/whop_sdk/models/unwrap_webhook_event.rb +3 -1
  10. data/lib/whop_sdk/models.rb +2 -0
  11. data/lib/whop_sdk/resources/companies.rb +3 -1
  12. data/lib/whop_sdk/resources/ledger_accounts.rb +1 -0
  13. data/lib/whop_sdk/resources/payment_methods.rb +2 -2
  14. data/lib/whop_sdk/resources/webhooks.rb +1 -1
  15. data/lib/whop_sdk/version.rb +1 -1
  16. data/lib/whop_sdk.rb +1 -0
  17. data/rbi/whop_sdk/models/company_update_params.rbi +110 -0
  18. data/rbi/whop_sdk/models/ledger_account_retrieve_response.rbi +270 -0
  19. data/rbi/whop_sdk/models/payment_created_webhook_event.rbi +72 -0
  20. data/rbi/whop_sdk/models/payment_method_list_response.rbi +391 -1
  21. data/rbi/whop_sdk/models/payment_method_retrieve_response.rbi +391 -1
  22. data/rbi/whop_sdk/models/unwrap_webhook_event.rbi +1 -0
  23. data/rbi/whop_sdk/models.rbi +2 -0
  24. data/rbi/whop_sdk/resources/companies.rbi +9 -0
  25. data/rbi/whop_sdk/resources/ledger_accounts.rbi +1 -0
  26. data/rbi/whop_sdk/resources/webhooks.rbi +1 -0
  27. data/sig/whop_sdk/models/company_update_params.rbs +36 -0
  28. data/sig/whop_sdk/models/ledger_account_retrieve_response.rbs +107 -0
  29. data/sig/whop_sdk/models/payment_created_webhook_event.rbs +40 -0
  30. data/sig/whop_sdk/models/payment_method_list_response.rbs +170 -0
  31. data/sig/whop_sdk/models/payment_method_retrieve_response.rbs +170 -0
  32. data/sig/whop_sdk/models/unwrap_webhook_event.rbs +1 -0
  33. data/sig/whop_sdk/models.rbs +2 -0
  34. data/sig/whop_sdk/resources/companies.rbs +1 -0
  35. data/sig/whop_sdk/resources/webhooks.rbs +1 -0
  36. metadata +5 -2
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 9132bb35367050c85a05e944a68ec2aa01f3f900c0225cd64f85ca6c70023c8c
4
- data.tar.gz: 1f54593bfa4ba0e37094d0080fb543b0ede77adeebea2b089777e3e230182959
3
+ metadata.gz: 7e5208d78bde3f82078133c7877c2b2ffb33b816de043784631041b3351ff454
4
+ data.tar.gz: f0c27f3e9dcc2ce733a81a0df1b5a7d37bdef616f7dd60c4f4ef95f8f93555eb
5
5
  SHA512:
6
- metadata.gz: 906011e15b01f70b5eabd7c5f56adf8b9402326441e3a7914e63d6a4319a21e89909ef6ee5f3d1816b73e576049fd31dbaaf7267614128ba28ce4442f3f930b2
7
- data.tar.gz: 9e3d565591c5a88ce1cdf1fc14be8b953d8dae39ca43af6da22e19b03c1017e8c608a869bd1739823f4ab745bfd51c1e9ac6bbec2cbc4a059bc63c023d85c45e
6
+ metadata.gz: 11ab647b004b8a3f87955b4533687fd79cf866445e9ff3bb3ab8fa4b35b0c54810336cec6f0edd4ddcced66fff3e4a1428fd1b1edcb877970b5d0eb624ad2450
7
+ data.tar.gz: 79d535f8d95a0928dfa0a165042f4bffc0029b8f8837b3c0989a1eef8862ddac40bac964d8a935514400c1344b8e988f925128d01fee637637b3b6dc93ebac21
data/CHANGELOG.md CHANGED
@@ -1,5 +1,35 @@
1
1
  # Changelog
2
2
 
3
+ ## 0.0.19 (2025-12-12)
4
+
5
+ Full Changelog: [v0.0.18...v0.0.19](https://github.com/whopio/whopsdk-ruby/compare/v0.0.18...v0.0.19)
6
+
7
+ ## 0.0.18 (2025-12-12)
8
+
9
+ Full Changelog: [v0.0.18...v0.0.18](https://github.com/whopio/whopsdk-ruby/compare/v0.0.18...v0.0.18)
10
+
11
+ ### Features
12
+
13
+ * **api:** api update ([91dc54d](https://github.com/whopio/whopsdk-ruby/commit/91dc54d428b0230fd6489b8cdf144af75486e7fe))
14
+ * **api:** api update ([eba813f](https://github.com/whopio/whopsdk-ruby/commit/eba813f64c07c3043f175a6f8560dff6e4dfacb5))
15
+
16
+ ## 0.0.18 (2025-12-11)
17
+
18
+ Full Changelog: [v0.0.17...v0.0.18](https://github.com/whopio/whopsdk-ruby/compare/v0.0.17...v0.0.18)
19
+
20
+ ### Features
21
+
22
+ * **api:** api update ([00090d5](https://github.com/whopio/whopsdk-ruby/commit/00090d5bbd2fdf9c172ad0698732f2e9cbc3754f))
23
+
24
+ ## 0.0.17 (2025-12-11)
25
+
26
+ Full Changelog: [v0.0.17...v0.0.17](https://github.com/whopio/whopsdk-ruby/compare/v0.0.17...v0.0.17)
27
+
28
+ ### Features
29
+
30
+ * **api:** api update ([b7f6269](https://github.com/whopio/whopsdk-ruby/commit/b7f6269ea6578738899a4b0547ec3065e46b933b))
31
+ * **api:** api update ([829c1a9](https://github.com/whopio/whopsdk-ruby/commit/829c1a93d487c68c11c6f5deeddd5c48f2da0499))
32
+
3
33
  ## 0.0.17 (2025-12-10)
4
34
 
5
35
  Full Changelog: [v0.0.16...v0.0.17](https://github.com/whopio/whopsdk-ruby/compare/v0.0.16...v0.0.17)
data/README.md CHANGED
@@ -17,7 +17,7 @@ To use this gem, install via Bundler by adding the following to your application
17
17
  <!-- x-release-please-start-version -->
18
18
 
19
19
  ```ruby
20
- gem "whop_sdk", "~> 0.0.17"
20
+ gem "whop_sdk", "~> 0.0.19"
21
21
  ```
22
22
 
23
23
  <!-- x-release-please-end -->
@@ -7,6 +7,12 @@ module WhopSDK
7
7
  extend WhopSDK::Internal::Type::RequestParameters::Converter
8
8
  include WhopSDK::Internal::Type::RequestParameters
9
9
 
10
+ # @!attribute banner_image
11
+ # The banner image for the company in png or jpeg format
12
+ #
13
+ # @return [WhopSDK::Models::CompanyUpdateParams::BannerImage::AttachmentInputWithDirectUploadID, WhopSDK::Models::CompanyUpdateParams::BannerImage::AttachmentInputWithID, nil]
14
+ optional :banner_image, union: -> { WhopSDK::CompanyUpdateParams::BannerImage }, nil?: true
15
+
10
16
  # @!attribute logo
11
17
  # The logo for the company in png, jpeg, or gif format
12
18
  #
@@ -28,10 +34,12 @@ module WhopSDK
28
34
  # @return [String, nil]
29
35
  optional :title, String, nil?: true
30
36
 
31
- # @!method initialize(logo: nil, send_customer_emails: nil, title: nil, request_options: {})
37
+ # @!method initialize(banner_image: nil, logo: nil, send_customer_emails: nil, title: nil, request_options: {})
32
38
  # Some parameter documentations has been truncated, see
33
39
  # {WhopSDK::Models::CompanyUpdateParams} for more details.
34
40
  #
41
+ # @param banner_image [WhopSDK::Models::CompanyUpdateParams::BannerImage::AttachmentInputWithDirectUploadID, WhopSDK::Models::CompanyUpdateParams::BannerImage::AttachmentInputWithID, nil] The banner image for the company in png or jpeg format
42
+ #
35
43
  # @param logo [WhopSDK::Models::CompanyUpdateParams::Logo::AttachmentInputWithDirectUploadID, WhopSDK::Models::CompanyUpdateParams::Logo::AttachmentInputWithID, nil] The logo for the company in png, jpeg, or gif format
36
44
  #
37
45
  # @param send_customer_emails [Boolean, nil] Whether Whop sends transactional emails to customers on behalf of this company.
@@ -40,6 +48,58 @@ module WhopSDK
40
48
  #
41
49
  # @param request_options [WhopSDK::RequestOptions, Hash{Symbol=>Object}]
42
50
 
51
+ # The banner image for the company in png or jpeg format
52
+ module BannerImage
53
+ extend WhopSDK::Internal::Type::Union
54
+
55
+ # Input for an attachment
56
+ variant -> { WhopSDK::CompanyUpdateParams::BannerImage::AttachmentInputWithDirectUploadID }
57
+
58
+ # Input for an attachment
59
+ variant -> { WhopSDK::CompanyUpdateParams::BannerImage::AttachmentInputWithID }
60
+
61
+ class AttachmentInputWithDirectUploadID < WhopSDK::Internal::Type::BaseModel
62
+ # @!attribute direct_upload_id
63
+ # This ID should be used the first time you upload an attachment. It is the ID of
64
+ # the direct upload that was created when uploading the file to S3 via the
65
+ # mediaDirectUpload mutation.
66
+ #
67
+ # @return [String]
68
+ required :direct_upload_id, String
69
+
70
+ # @!method initialize(direct_upload_id:)
71
+ # Some parameter documentations has been truncated, see
72
+ # {WhopSDK::Models::CompanyUpdateParams::BannerImage::AttachmentInputWithDirectUploadID}
73
+ # for more details.
74
+ #
75
+ # Input for an attachment
76
+ #
77
+ # @param direct_upload_id [String] This ID should be used the first time you upload an attachment. It is the ID of
78
+ end
79
+
80
+ class AttachmentInputWithID < WhopSDK::Internal::Type::BaseModel
81
+ # @!attribute id
82
+ # The ID of an existing attachment object. Use this when updating a resource and
83
+ # keeping a subset of the attachments. Don't use this unless you know what you're
84
+ # doing.
85
+ #
86
+ # @return [String]
87
+ required :id, String
88
+
89
+ # @!method initialize(id:)
90
+ # Some parameter documentations has been truncated, see
91
+ # {WhopSDK::Models::CompanyUpdateParams::BannerImage::AttachmentInputWithID} for
92
+ # more details.
93
+ #
94
+ # Input for an attachment
95
+ #
96
+ # @param id [String] The ID of an existing attachment object. Use this when updating a resource and k
97
+ end
98
+
99
+ # @!method self.variants
100
+ # @return [Array(WhopSDK::Models::CompanyUpdateParams::BannerImage::AttachmentInputWithDirectUploadID, WhopSDK::Models::CompanyUpdateParams::BannerImage::AttachmentInputWithID)]
101
+ end
102
+
43
103
  # The logo for the company in png, jpeg, or gif format
44
104
  module Logo
45
105
  extend WhopSDK::Internal::Type::Union
@@ -45,13 +45,21 @@ module WhopSDK
45
45
  enum: -> { WhopSDK::Models::LedgerAccountRetrieveResponse::PaymentsApprovalStatus },
46
46
  nil?: true
47
47
 
48
+ # @!attribute payout_account_details
49
+ # The payout account associated with the LedgerAccount, if any.
50
+ #
51
+ # @return [WhopSDK::Models::LedgerAccountRetrieveResponse::PayoutAccountDetails, nil]
52
+ required :payout_account_details,
53
+ -> { WhopSDK::Models::LedgerAccountRetrieveResponse::PayoutAccountDetails },
54
+ nil?: true
55
+
48
56
  # @!attribute transfer_fee
49
57
  # The fee for transfers, if applicable.
50
58
  #
51
59
  # @return [Float, nil]
52
60
  required :transfer_fee, Float, nil?: true
53
61
 
54
- # @!method initialize(id:, balances:, ledger_account_audit_status:, ledger_type:, owner:, payments_approval_status:, transfer_fee:)
62
+ # @!method initialize(id:, balances:, ledger_account_audit_status:, ledger_type:, owner:, payments_approval_status:, payout_account_details:, transfer_fee:)
55
63
  # Represents a LedgerAccount.
56
64
  #
57
65
  # @param id [String] The ID of the LedgerAccount.
@@ -66,6 +74,8 @@ module WhopSDK
66
74
  #
67
75
  # @param payments_approval_status [Symbol, WhopSDK::Models::LedgerAccountRetrieveResponse::PaymentsApprovalStatus, nil] The different approval statuses an account can have.
68
76
  #
77
+ # @param payout_account_details [WhopSDK::Models::LedgerAccountRetrieveResponse::PayoutAccountDetails, nil] The payout account associated with the LedgerAccount, if any.
78
+ #
69
79
  # @param transfer_fee [Float, nil] The fee for transfers, if applicable.
70
80
 
71
81
  class Balance < WhopSDK::Internal::Type::BaseModel
@@ -247,6 +257,140 @@ module WhopSDK
247
257
  # @!method self.values
248
258
  # @return [Array<Symbol>]
249
259
  end
260
+
261
+ # @see WhopSDK::Models::LedgerAccountRetrieveResponse#payout_account_details
262
+ class PayoutAccountDetails < WhopSDK::Internal::Type::BaseModel
263
+ # @!attribute id
264
+ # Unique identifier for the object
265
+ #
266
+ # @return [String]
267
+ required :id, String
268
+
269
+ # @!attribute address
270
+ # The physical address associated with this payout account
271
+ #
272
+ # @return [WhopSDK::Models::LedgerAccountRetrieveResponse::PayoutAccountDetails::Address, nil]
273
+ required :address,
274
+ -> { WhopSDK::Models::LedgerAccountRetrieveResponse::PayoutAccountDetails::Address },
275
+ nil?: true
276
+
277
+ # @!attribute business_name
278
+ # The company's legal name
279
+ #
280
+ # @return [String, nil]
281
+ required :business_name, String, nil?: true
282
+
283
+ # @!attribute business_representative
284
+ # The business representative for this payout account
285
+ #
286
+ # @return [WhopSDK::Models::LedgerAccountRetrieveResponse::PayoutAccountDetails::BusinessRepresentative, nil]
287
+ required :business_representative,
288
+ -> { WhopSDK::Models::LedgerAccountRetrieveResponse::PayoutAccountDetails::BusinessRepresentative },
289
+ nil?: true
290
+
291
+ # @!attribute phone
292
+ # The business representative's phone
293
+ #
294
+ # @return [String, nil]
295
+ required :phone, String, nil?: true
296
+
297
+ # @!method initialize(id:, address:, business_name:, business_representative:, phone:)
298
+ # The payout account associated with the LedgerAccount, if any.
299
+ #
300
+ # @param id [String] Unique identifier for the object
301
+ #
302
+ # @param address [WhopSDK::Models::LedgerAccountRetrieveResponse::PayoutAccountDetails::Address, nil] The physical address associated with this payout account
303
+ #
304
+ # @param business_name [String, nil] The company's legal name
305
+ #
306
+ # @param business_representative [WhopSDK::Models::LedgerAccountRetrieveResponse::PayoutAccountDetails::BusinessRepresentative, nil] The business representative for this payout account
307
+ #
308
+ # @param phone [String, nil] The business representative's phone
309
+
310
+ # @see WhopSDK::Models::LedgerAccountRetrieveResponse::PayoutAccountDetails#address
311
+ class Address < WhopSDK::Internal::Type::BaseModel
312
+ # @!attribute city
313
+ # The city of the address.
314
+ #
315
+ # @return [String, nil]
316
+ required :city, String, nil?: true
317
+
318
+ # @!attribute country
319
+ # The country of the address.
320
+ #
321
+ # @return [String, nil]
322
+ required :country, String, nil?: true
323
+
324
+ # @!attribute line1
325
+ # The line 1 of the address.
326
+ #
327
+ # @return [String, nil]
328
+ required :line1, String, nil?: true
329
+
330
+ # @!attribute line2
331
+ # The line 2 of the address.
332
+ #
333
+ # @return [String, nil]
334
+ required :line2, String, nil?: true
335
+
336
+ # @!attribute postal_code
337
+ # The postal code of the address.
338
+ #
339
+ # @return [String, nil]
340
+ required :postal_code, String, nil?: true
341
+
342
+ # @!attribute state
343
+ # The state of the address.
344
+ #
345
+ # @return [String, nil]
346
+ required :state, String, nil?: true
347
+
348
+ # @!method initialize(city:, country:, line1:, line2:, postal_code:, state:)
349
+ # The physical address associated with this payout account
350
+ #
351
+ # @param city [String, nil] The city of the address.
352
+ #
353
+ # @param country [String, nil] The country of the address.
354
+ #
355
+ # @param line1 [String, nil] The line 1 of the address.
356
+ #
357
+ # @param line2 [String, nil] The line 2 of the address.
358
+ #
359
+ # @param postal_code [String, nil] The postal code of the address.
360
+ #
361
+ # @param state [String, nil] The state of the address.
362
+ end
363
+
364
+ # @see WhopSDK::Models::LedgerAccountRetrieveResponse::PayoutAccountDetails#business_representative
365
+ class BusinessRepresentative < WhopSDK::Internal::Type::BaseModel
366
+ # @!attribute first_name
367
+ # The first name of the business representative.
368
+ #
369
+ # @return [String, nil]
370
+ required :first_name, String, nil?: true
371
+
372
+ # @!attribute last_name
373
+ # The last name of the business representative.
374
+ #
375
+ # @return [String, nil]
376
+ required :last_name, String, nil?: true
377
+
378
+ # @!attribute middle_name
379
+ # The middle name of the business representative.
380
+ #
381
+ # @return [String, nil]
382
+ required :middle_name, String, nil?: true
383
+
384
+ # @!method initialize(first_name:, last_name:, middle_name:)
385
+ # The business representative for this payout account
386
+ #
387
+ # @param first_name [String, nil] The first name of the business representative.
388
+ #
389
+ # @param last_name [String, nil] The last name of the business representative.
390
+ #
391
+ # @param middle_name [String, nil] The middle name of the business representative.
392
+ end
393
+ end
250
394
  end
251
395
  end
252
396
  end
@@ -0,0 +1,48 @@
1
+ # frozen_string_literal: true
2
+
3
+ module WhopSDK
4
+ module Models
5
+ class PaymentCreatedWebhookEvent < WhopSDK::Internal::Type::BaseModel
6
+ # @!attribute id
7
+ # A unique ID for every single webhook request
8
+ #
9
+ # @return [String]
10
+ required :id, String
11
+
12
+ # @!attribute api_version
13
+ # The API version for this webhook
14
+ #
15
+ # @return [Symbol, :v1]
16
+ required :api_version, const: :v1
17
+
18
+ # @!attribute data
19
+ # An object representing a receipt for a membership.
20
+ #
21
+ # @return [WhopSDK::Models::Payment]
22
+ required :data, -> { WhopSDK::Payment }
23
+
24
+ # @!attribute timestamp
25
+ # The timestamp in ISO 8601 format that the webhook was sent at on the server
26
+ #
27
+ # @return [Time]
28
+ required :timestamp, Time
29
+
30
+ # @!attribute type
31
+ # The webhook event type
32
+ #
33
+ # @return [Symbol, :"payment.created"]
34
+ required :type, const: :"payment.created"
35
+
36
+ # @!method initialize(id:, data:, timestamp:, api_version: :v1, type: :"payment.created")
37
+ # @param id [String] A unique ID for every single webhook request
38
+ #
39
+ # @param data [WhopSDK::Models::Payment] An object representing a receipt for a membership.
40
+ #
41
+ # @param timestamp [Time] The timestamp in ISO 8601 format that the webhook was sent at on the server
42
+ #
43
+ # @param api_version [Symbol, :v1] The API version for this webhook
44
+ #
45
+ # @param type [Symbol, :"payment.created"] The webhook event type
46
+ end
47
+ end
48
+ end
@@ -20,6 +20,15 @@ module WhopSDK
20
20
  variant :UsBankAccountPaymentMethod,
21
21
  -> { WhopSDK::Models::PaymentMethodListResponse::UsBankAccountPaymentMethod }
22
22
 
23
+ # The Cash App details for the payment method
24
+ variant :CashappPaymentMethod, -> { WhopSDK::Models::PaymentMethodListResponse::CashappPaymentMethod }
25
+
26
+ # The iDEAL details for the payment method
27
+ variant :IdealPaymentMethod, -> { WhopSDK::Models::PaymentMethodListResponse::IdealPaymentMethod }
28
+
29
+ # The SEPA Direct Debit details for the payment method
30
+ variant :SepaDebitPaymentMethod, -> { WhopSDK::Models::PaymentMethodListResponse::SepaDebitPaymentMethod }
31
+
23
32
  class BasePaymentMethod < WhopSDK::Internal::Type::BaseModel
24
33
  # @!attribute id
25
34
  # The ID of the payment method
@@ -216,8 +225,225 @@ module WhopSDK
216
225
  end
217
226
  end
218
227
 
228
+ class CashappPaymentMethod < WhopSDK::Internal::Type::BaseModel
229
+ # @!attribute id
230
+ # The ID of the payment method
231
+ #
232
+ # @return [String]
233
+ required :id, String
234
+
235
+ # @!attribute cashapp
236
+ # The Cash App details associated with this payment method
237
+ #
238
+ # @return [WhopSDK::Models::PaymentMethodListResponse::CashappPaymentMethod::Cashapp]
239
+ required :cashapp, -> { WhopSDK::Models::PaymentMethodListResponse::CashappPaymentMethod::Cashapp }
240
+
241
+ # @!attribute created_at
242
+ # When the payment method was created
243
+ #
244
+ # @return [Time]
245
+ required :created_at, Time
246
+
247
+ # @!attribute payment_method_type
248
+ # The type of the payment method
249
+ #
250
+ # @return [Symbol, WhopSDK::Models::PaymentMethodTypes]
251
+ required :payment_method_type, enum: -> { WhopSDK::PaymentMethodTypes }
252
+
253
+ # @!attribute typename
254
+ # The typename of this object
255
+ #
256
+ # @return [Symbol, :CashappPaymentMethod]
257
+ required :typename, const: :CashappPaymentMethod
258
+
259
+ # @!method initialize(id:, cashapp:, created_at:, payment_method_type:, typename: :CashappPaymentMethod)
260
+ # The Cash App details for the payment method
261
+ #
262
+ # @param id [String] The ID of the payment method
263
+ #
264
+ # @param cashapp [WhopSDK::Models::PaymentMethodListResponse::CashappPaymentMethod::Cashapp] The Cash App details associated with this payment method
265
+ #
266
+ # @param created_at [Time] When the payment method was created
267
+ #
268
+ # @param payment_method_type [Symbol, WhopSDK::Models::PaymentMethodTypes] The type of the payment method
269
+ #
270
+ # @param typename [Symbol, :CashappPaymentMethod] The typename of this object
271
+
272
+ # @see WhopSDK::Models::PaymentMethodListResponse::CashappPaymentMethod#cashapp
273
+ class Cashapp < WhopSDK::Internal::Type::BaseModel
274
+ # @!attribute buyer_id
275
+ # A unique and immutable identifier assigned by Cash App to every buyer.
276
+ #
277
+ # @return [String, nil]
278
+ required :buyer_id, String, nil?: true
279
+
280
+ # @!attribute cashtag
281
+ # A public identifier for buyers using Cash App.
282
+ #
283
+ # @return [String, nil]
284
+ required :cashtag, String, nil?: true
285
+
286
+ # @!method initialize(buyer_id:, cashtag:)
287
+ # The Cash App details associated with this payment method
288
+ #
289
+ # @param buyer_id [String, nil] A unique and immutable identifier assigned by Cash App to every buyer.
290
+ #
291
+ # @param cashtag [String, nil] A public identifier for buyers using Cash App.
292
+ end
293
+ end
294
+
295
+ class IdealPaymentMethod < WhopSDK::Internal::Type::BaseModel
296
+ # @!attribute id
297
+ # The ID of the payment method
298
+ #
299
+ # @return [String]
300
+ required :id, String
301
+
302
+ # @!attribute created_at
303
+ # When the payment method was created
304
+ #
305
+ # @return [Time]
306
+ required :created_at, Time
307
+
308
+ # @!attribute ideal
309
+ # The iDEAL details associated with this payment method
310
+ #
311
+ # @return [WhopSDK::Models::PaymentMethodListResponse::IdealPaymentMethod::Ideal]
312
+ required :ideal, -> { WhopSDK::Models::PaymentMethodListResponse::IdealPaymentMethod::Ideal }
313
+
314
+ # @!attribute payment_method_type
315
+ # The type of the payment method
316
+ #
317
+ # @return [Symbol, WhopSDK::Models::PaymentMethodTypes]
318
+ required :payment_method_type, enum: -> { WhopSDK::PaymentMethodTypes }
319
+
320
+ # @!attribute typename
321
+ # The typename of this object
322
+ #
323
+ # @return [Symbol, :IdealPaymentMethod]
324
+ required :typename, const: :IdealPaymentMethod
325
+
326
+ # @!method initialize(id:, created_at:, ideal:, payment_method_type:, typename: :IdealPaymentMethod)
327
+ # The iDEAL details for the payment method
328
+ #
329
+ # @param id [String] The ID of the payment method
330
+ #
331
+ # @param created_at [Time] When the payment method was created
332
+ #
333
+ # @param ideal [WhopSDK::Models::PaymentMethodListResponse::IdealPaymentMethod::Ideal] The iDEAL details associated with this payment method
334
+ #
335
+ # @param payment_method_type [Symbol, WhopSDK::Models::PaymentMethodTypes] The type of the payment method
336
+ #
337
+ # @param typename [Symbol, :IdealPaymentMethod] The typename of this object
338
+
339
+ # @see WhopSDK::Models::PaymentMethodListResponse::IdealPaymentMethod#ideal
340
+ class Ideal < WhopSDK::Internal::Type::BaseModel
341
+ # @!attribute bank
342
+ # The customer's bank.
343
+ #
344
+ # @return [String, nil]
345
+ required :bank, String, nil?: true
346
+
347
+ # @!attribute bic
348
+ # The Bank Identifier Code of the customer's bank.
349
+ #
350
+ # @return [String, nil]
351
+ required :bic, String, nil?: true
352
+
353
+ # @!method initialize(bank:, bic:)
354
+ # The iDEAL details associated with this payment method
355
+ #
356
+ # @param bank [String, nil] The customer's bank.
357
+ #
358
+ # @param bic [String, nil] The Bank Identifier Code of the customer's bank.
359
+ end
360
+ end
361
+
362
+ class SepaDebitPaymentMethod < WhopSDK::Internal::Type::BaseModel
363
+ # @!attribute id
364
+ # The ID of the payment method
365
+ #
366
+ # @return [String]
367
+ required :id, String
368
+
369
+ # @!attribute created_at
370
+ # When the payment method was created
371
+ #
372
+ # @return [Time]
373
+ required :created_at, Time
374
+
375
+ # @!attribute payment_method_type
376
+ # The type of the payment method
377
+ #
378
+ # @return [Symbol, WhopSDK::Models::PaymentMethodTypes]
379
+ required :payment_method_type, enum: -> { WhopSDK::PaymentMethodTypes }
380
+
381
+ # @!attribute sepa_debit
382
+ # The SEPA Direct Debit details associated with this payment method
383
+ #
384
+ # @return [WhopSDK::Models::PaymentMethodListResponse::SepaDebitPaymentMethod::SepaDebit]
385
+ required :sepa_debit, -> { WhopSDK::Models::PaymentMethodListResponse::SepaDebitPaymentMethod::SepaDebit }
386
+
387
+ # @!attribute typename
388
+ # The typename of this object
389
+ #
390
+ # @return [Symbol, :SepaDebitPaymentMethod]
391
+ required :typename, const: :SepaDebitPaymentMethod
392
+
393
+ # @!method initialize(id:, created_at:, payment_method_type:, sepa_debit:, typename: :SepaDebitPaymentMethod)
394
+ # The SEPA Direct Debit details for the payment method
395
+ #
396
+ # @param id [String] The ID of the payment method
397
+ #
398
+ # @param created_at [Time] When the payment method was created
399
+ #
400
+ # @param payment_method_type [Symbol, WhopSDK::Models::PaymentMethodTypes] The type of the payment method
401
+ #
402
+ # @param sepa_debit [WhopSDK::Models::PaymentMethodListResponse::SepaDebitPaymentMethod::SepaDebit] The SEPA Direct Debit details associated with this payment method
403
+ #
404
+ # @param typename [Symbol, :SepaDebitPaymentMethod] The typename of this object
405
+
406
+ # @see WhopSDK::Models::PaymentMethodListResponse::SepaDebitPaymentMethod#sepa_debit
407
+ class SepaDebit < WhopSDK::Internal::Type::BaseModel
408
+ # @!attribute bank_code
409
+ # Bank code of the bank associated with the account.
410
+ #
411
+ # @return [String, nil]
412
+ required :bank_code, String, nil?: true
413
+
414
+ # @!attribute branch_code
415
+ # Branch code of the bank associated with the account.
416
+ #
417
+ # @return [String, nil]
418
+ required :branch_code, String, nil?: true
419
+
420
+ # @!attribute country
421
+ # Two-letter ISO code representing the country the bank account is located in.
422
+ #
423
+ # @return [String, nil]
424
+ required :country, String, nil?: true
425
+
426
+ # @!attribute last4
427
+ # Last four digits of the IBAN.
428
+ #
429
+ # @return [String, nil]
430
+ required :last4, String, nil?: true
431
+
432
+ # @!method initialize(bank_code:, branch_code:, country:, last4:)
433
+ # The SEPA Direct Debit details associated with this payment method
434
+ #
435
+ # @param bank_code [String, nil] Bank code of the bank associated with the account.
436
+ #
437
+ # @param branch_code [String, nil] Branch code of the bank associated with the account.
438
+ #
439
+ # @param country [String, nil] Two-letter ISO code representing the country the bank account is located in.
440
+ #
441
+ # @param last4 [String, nil] Last four digits of the IBAN.
442
+ end
443
+ end
444
+
219
445
  # @!method self.variants
220
- # @return [Array(WhopSDK::Models::PaymentMethodListResponse::BasePaymentMethod, WhopSDK::Models::PaymentMethodListResponse::CardPaymentMethod, WhopSDK::Models::PaymentMethodListResponse::UsBankAccountPaymentMethod)]
446
+ # @return [Array(WhopSDK::Models::PaymentMethodListResponse::BasePaymentMethod, WhopSDK::Models::PaymentMethodListResponse::CardPaymentMethod, WhopSDK::Models::PaymentMethodListResponse::UsBankAccountPaymentMethod, WhopSDK::Models::PaymentMethodListResponse::CashappPaymentMethod, WhopSDK::Models::PaymentMethodListResponse::IdealPaymentMethod, WhopSDK::Models::PaymentMethodListResponse::SepaDebitPaymentMethod)]
221
447
  end
222
448
  end
223
449
  end