• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

stripe / stripe-java / #16725

08 Jan 2025 03:19PM UTC coverage: 12.341% (-0.04%) from 12.384%
#16725

Pull #1932

github

web-flow
Merge 1890010d3 into 9aeb03b42
Pull Request #1932: Update generated code for beta

29 of 1339 new or added lines in 25 files covered. (2.17%)

45 existing lines in 12 files now uncovered.

18905 of 153189 relevant lines covered (12.34%)

0.12 hits per line

Source File
Press 'n' to go to next uncovered line, 'b' for previous

55.34
/src/main/java/com/stripe/model/Account.java
1
// File generated from our OpenAPI spec
2
package com.stripe.model;
3

4
import com.google.gson.annotations.SerializedName;
5
import com.stripe.exception.StripeException;
6
import com.stripe.net.ApiRequest;
7
import com.stripe.net.ApiRequestParams;
8
import com.stripe.net.ApiResource;
9
import com.stripe.net.BaseAddress;
10
import com.stripe.net.RequestOptions;
11
import com.stripe.net.StripeResponseGetter;
12
import com.stripe.param.AccountCapabilitiesParams;
13
import com.stripe.param.AccountCreateParams;
14
import com.stripe.param.AccountListParams;
15
import com.stripe.param.AccountPersonsParams;
16
import com.stripe.param.AccountRejectParams;
17
import com.stripe.param.AccountRetrieveParams;
18
import com.stripe.param.AccountUpdateParams;
19
import java.util.List;
20
import java.util.Map;
21
import java.util.stream.Collectors;
22
import lombok.EqualsAndHashCode;
23
import lombok.Getter;
24
import lombok.Setter;
25

26
/**
27
 * This is an object representing a Stripe account. You can retrieve it to see properties on the
28
 * account like its current requirements or if the account is enabled to make live charges or
29
 * receive payouts.
30
 *
31
 * <p>For accounts where <a
32
 * href="https://stripe.com/api/accounts/object#account_object-controller-requirement_collection">controller.requirement_collection</a>
33
 * is {@code application}, which includes Custom accounts, the properties below are always returned.
34
 *
35
 * <p>For accounts where <a
36
 * href="https://stripe.com/api/accounts/object#account_object-controller-requirement_collection">controller.requirement_collection</a>
37
 * is {@code stripe}, which includes Standard and Express accounts, some properties are only
38
 * returned until you create an <a href="https://stripe.com/api/account_links">Account Link</a> or
39
 * <a href="https://stripe.com/api/account_sessions">Account Session</a> to start Connect
40
 * Onboarding. Learn about the <a href="https://stripe.com/connect/accounts">differences between
41
 * accounts</a>.
42
 */
43
@Getter
44
@Setter
45
@EqualsAndHashCode(callSuper = false)
46
public class Account extends ApiResource implements MetadataStore<Account>, PaymentSource {
1✔
47
  /** Business information about the account. */
48
  @SerializedName("business_profile")
49
  BusinessProfile businessProfile;
50

51
  /**
52
   * The business type. After you create an <a href="https://stripe.com/api/account_links">Account
53
   * Link</a> or <a href="https://stripe.com/api/account_sessions">Account Session</a>, this
54
   * property is only returned for accounts where <a
55
   * href="https://stripe.com/api/accounts/object#account_object-controller-requirement_collection">controller.requirement_collection</a>
56
   * is {@code application}, which includes Custom accounts.
57
   *
58
   * <p>One of {@code company}, {@code government_entity}, {@code individual}, or {@code
59
   * non_profit}.
60
   */
61
  @SerializedName("business_type")
62
  String businessType;
63

64
  @SerializedName("capabilities")
65
  Capabilities capabilities;
66

67
  /** Whether the account can process charges. */
68
  @SerializedName("charges_enabled")
69
  Boolean chargesEnabled;
70

71
  @SerializedName("company")
72
  Company company;
73

74
  @SerializedName("controller")
75
  Controller controller;
76

77
  /** The account's country. */
78
  @SerializedName("country")
79
  String country;
80

81
  /** Time at which the account was connected. Measured in seconds since the Unix epoch. */
82
  @SerializedName("created")
83
  Long created;
84

85
  /**
86
   * Three-letter ISO currency code representing the default currency for the account. This must be
87
   * a currency that <a href="https://stripe.com/docs/payouts">Stripe supports in the account's
88
   * country</a>.
89
   */
90
  @SerializedName("default_currency")
91
  String defaultCurrency;
92

93
  /** Always true for a deleted object. */
94
  @SerializedName("deleted")
95
  Boolean deleted;
96

97
  /**
98
   * Whether account details have been submitted. Accounts with Stripe Dashboard access, which
99
   * includes Standard accounts, cannot receive payouts before this is true. Accounts where this is
100
   * false should be directed to <a href="https://stripe.com/connect/onboarding">an onboarding
101
   * flow</a> to finish submitting account details.
102
   */
103
  @SerializedName("details_submitted")
104
  Boolean detailsSubmitted;
105

106
  /**
107
   * An email address associated with the account. It's not used for authentication and Stripe
108
   * doesn't market to this field without explicit approval from the platform.
109
   */
110
  @SerializedName("email")
111
  String email;
112

113
  /**
114
   * External accounts (bank accounts and debit cards) currently attached to this account. External
115
   * accounts are only returned for requests where {@code controller[is_controller]} is true.
116
   */
117
  @SerializedName("external_accounts")
118
  ExternalAccountCollection externalAccounts;
119

120
  @SerializedName("future_requirements")
121
  FutureRequirements futureRequirements;
122

123
  /** The groups associated with the account. */
124
  @SerializedName("groups")
125
  Groups groups;
126

127
  /** Unique identifier for the object. */
128
  @Getter(onMethod_ = {@Override})
129
  @SerializedName("id")
130
  String id;
131

132
  /**
133
   * This is an object representing a person associated with a Stripe account.
134
   *
135
   * <p>A platform cannot access a person for an account where <a
136
   * href="https://stripe.com/api/accounts/object#account_object-controller-requirement_collection">account.controller.requirement_collection</a>
137
   * is {@code stripe}, which includes Standard and Express accounts, after creating an Account Link
138
   * or Account Session to start Connect onboarding.
139
   *
140
   * <p>See the <a href="https://stripe.com/connect/standard-accounts">Standard onboarding</a> or <a
141
   * href="https://stripe.com/connect/express-accounts">Express onboarding</a> documentation for
142
   * information about prefilling information and account onboarding steps. Learn more about <a
143
   * href="https://stripe.com/connect/handling-api-verification#person-information">handling
144
   * identity verification with the API</a>.
145
   */
146
  @SerializedName("individual")
147
  Person individual;
148

149
  /**
150
   * Set of <a href="https://stripe.com/docs/api/metadata">key-value pairs</a> that you can attach
151
   * to an object. This can be useful for storing additional information about the object in a
152
   * structured format.
153
   */
154
  @Getter(onMethod_ = {@Override})
155
  @SerializedName("metadata")
156
  Map<String, String> metadata;
157

158
  /**
159
   * String representing the object's type. Objects of the same type share the same value.
160
   *
161
   * <p>Equal to {@code account}.
162
   */
163
  @SerializedName("object")
164
  String object;
165

166
  /** Whether the funds in this account can be paid out. */
167
  @SerializedName("payouts_enabled")
168
  Boolean payoutsEnabled;
169

170
  @SerializedName("requirements")
171
  Requirements requirements;
172

173
  @SerializedName("risk_controls")
174
  RiskControls riskControls;
175

176
  /** Options for customizing how the account functions within Stripe. */
177
  @SerializedName("settings")
178
  Settings settings;
179

180
  @SerializedName("tos_acceptance")
181
  TosAcceptance tosAcceptance;
182

183
  /**
184
   * The Stripe account type. Can be {@code standard}, {@code express}, {@code custom}, or {@code
185
   * none}.
186
   */
187
  @SerializedName("type")
188
  String type;
189

190
  /**
191
   * Returns a list of capabilities associated with the account. The capabilities are returned
192
   * sorted by creation date, with the most recent capability appearing first.
193
   */
194
  public CapabilityCollection capabilities() throws StripeException {
195
    return capabilities((Map<String, Object>) null, (RequestOptions) null);
1✔
196
  }
197

198
  /**
199
   * Returns a list of capabilities associated with the account. The capabilities are returned
200
   * sorted by creation date, with the most recent capability appearing first.
201
   */
202
  public CapabilityCollection capabilities(Map<String, Object> params) throws StripeException {
203
    return capabilities(params, (RequestOptions) null);
×
204
  }
205

206
  /**
207
   * Returns a list of capabilities associated with the account. The capabilities are returned
208
   * sorted by creation date, with the most recent capability appearing first.
209
   */
210
  public CapabilityCollection capabilities(Map<String, Object> params, RequestOptions options)
211
      throws StripeException {
212
    String path =
1✔
213
        String.format("/v1/accounts/%s/capabilities", ApiResource.urlEncodeId(this.getId()));
1✔
214
    ApiRequest request =
1✔
215
        new ApiRequest(BaseAddress.API, ApiResource.RequestMethod.GET, path, params, options);
216
    return getResponseGetter().request(request, CapabilityCollection.class);
1✔
217
  }
218

219
  /**
220
   * Returns a list of capabilities associated with the account. The capabilities are returned
221
   * sorted by creation date, with the most recent capability appearing first.
222
   */
223
  public CapabilityCollection capabilities(AccountCapabilitiesParams params)
224
      throws StripeException {
225
    return capabilities(params, (RequestOptions) null);
1✔
226
  }
227

228
  /**
229
   * Returns a list of capabilities associated with the account. The capabilities are returned
230
   * sorted by creation date, with the most recent capability appearing first.
231
   */
232
  public CapabilityCollection capabilities(AccountCapabilitiesParams params, RequestOptions options)
233
      throws StripeException {
234
    String path =
1✔
235
        String.format("/v1/accounts/%s/capabilities", ApiResource.urlEncodeId(this.getId()));
1✔
236
    ApiResource.checkNullTypedParams(path, params);
1✔
237
    ApiRequest request =
1✔
238
        new ApiRequest(
239
            BaseAddress.API,
240
            ApiResource.RequestMethod.GET,
241
            path,
242
            ApiRequestParams.paramsToMap(params),
1✔
243
            options);
244
    return getResponseGetter().request(request, CapabilityCollection.class);
1✔
245
  }
246

247
  /**
248
   * With <a href="https://stripe.com/docs/connect">Connect</a>, you can create Stripe accounts for
249
   * your users. To do this, you’ll first need to <a
250
   * href="https://dashboard.stripe.com/account/applications/settings">register your platform</a>.
251
   *
252
   * <p>If you’ve already collected information for your connected accounts, you <a
253
   * href="https://stripe.com/docs/connect/best-practices#onboarding">can prefill that
254
   * information</a> when creating the account. Connect Onboarding won’t ask for the prefilled
255
   * information during account onboarding. You can prefill any information on the account.
256
   */
257
  public static Account create(Map<String, Object> params) throws StripeException {
258
    return create(params, (RequestOptions) null);
1✔
259
  }
260

261
  /**
262
   * With <a href="https://stripe.com/docs/connect">Connect</a>, you can create Stripe accounts for
263
   * your users. To do this, you’ll first need to <a
264
   * href="https://dashboard.stripe.com/account/applications/settings">register your platform</a>.
265
   *
266
   * <p>If you’ve already collected information for your connected accounts, you <a
267
   * href="https://stripe.com/docs/connect/best-practices#onboarding">can prefill that
268
   * information</a> when creating the account. Connect Onboarding won’t ask for the prefilled
269
   * information during account onboarding. You can prefill any information on the account.
270
   */
271
  public static Account create(Map<String, Object> params, RequestOptions options)
272
      throws StripeException {
273
    String path = "/v1/accounts";
1✔
274
    ApiRequest request =
1✔
275
        new ApiRequest(BaseAddress.API, ApiResource.RequestMethod.POST, path, params, options);
276
    return getGlobalResponseGetter().request(request, Account.class);
1✔
277
  }
278

279
  /**
280
   * With <a href="https://stripe.com/docs/connect">Connect</a>, you can create Stripe accounts for
281
   * your users. To do this, you’ll first need to <a
282
   * href="https://dashboard.stripe.com/account/applications/settings">register your platform</a>.
283
   *
284
   * <p>If you’ve already collected information for your connected accounts, you <a
285
   * href="https://stripe.com/docs/connect/best-practices#onboarding">can prefill that
286
   * information</a> when creating the account. Connect Onboarding won’t ask for the prefilled
287
   * information during account onboarding. You can prefill any information on the account.
288
   */
289
  public static Account create(AccountCreateParams params) throws StripeException {
290
    return create(params, (RequestOptions) null);
1✔
291
  }
292

293
  /**
294
   * With <a href="https://stripe.com/docs/connect">Connect</a>, you can create Stripe accounts for
295
   * your users. To do this, you’ll first need to <a
296
   * href="https://dashboard.stripe.com/account/applications/settings">register your platform</a>.
297
   *
298
   * <p>If you’ve already collected information for your connected accounts, you <a
299
   * href="https://stripe.com/docs/connect/best-practices#onboarding">can prefill that
300
   * information</a> when creating the account. Connect Onboarding won’t ask for the prefilled
301
   * information during account onboarding. You can prefill any information on the account.
302
   */
303
  public static Account create(AccountCreateParams params, RequestOptions options)
304
      throws StripeException {
305
    String path = "/v1/accounts";
1✔
306
    ApiResource.checkNullTypedParams(path, params);
1✔
307
    ApiRequest request =
1✔
308
        new ApiRequest(
309
            BaseAddress.API,
310
            ApiResource.RequestMethod.POST,
311
            path,
312
            ApiRequestParams.paramsToMap(params),
1✔
313
            options);
314
    return getGlobalResponseGetter().request(request, Account.class);
1✔
315
  }
316

317
  /**
318
   * With <a href="https://stripe.com/connect">Connect</a>, you can delete accounts you manage.
319
   *
320
   * <p>Test-mode accounts can be deleted at any time.
321
   *
322
   * <p>Live-mode accounts where Stripe is responsible for negative account balances cannot be
323
   * deleted, which includes Standard accounts. Live-mode accounts where your platform is liable for
324
   * negative account balances, which includes Custom and Express accounts, can be deleted when all
325
   * <a href="https://stripe.com/api/balance/balance_object">balances</a> are zero.
326
   *
327
   * <p>If you want to delete your own account, use the <a
328
   * href="https://dashboard.stripe.com/settings/account">account information tab in your account
329
   * settings</a> instead.
330
   */
331
  public Account delete() throws StripeException {
332
    return delete((Map<String, Object>) null, (RequestOptions) null);
1✔
333
  }
334

335
  /**
336
   * With <a href="https://stripe.com/connect">Connect</a>, you can delete accounts you manage.
337
   *
338
   * <p>Test-mode accounts can be deleted at any time.
339
   *
340
   * <p>Live-mode accounts where Stripe is responsible for negative account balances cannot be
341
   * deleted, which includes Standard accounts. Live-mode accounts where your platform is liable for
342
   * negative account balances, which includes Custom and Express accounts, can be deleted when all
343
   * <a href="https://stripe.com/api/balance/balance_object">balances</a> are zero.
344
   *
345
   * <p>If you want to delete your own account, use the <a
346
   * href="https://dashboard.stripe.com/settings/account">account information tab in your account
347
   * settings</a> instead.
348
   */
349
  public Account delete(RequestOptions options) throws StripeException {
350
    return delete((Map<String, Object>) null, options);
×
351
  }
352

353
  /**
354
   * With <a href="https://stripe.com/connect">Connect</a>, you can delete accounts you manage.
355
   *
356
   * <p>Test-mode accounts can be deleted at any time.
357
   *
358
   * <p>Live-mode accounts where Stripe is responsible for negative account balances cannot be
359
   * deleted, which includes Standard accounts. Live-mode accounts where your platform is liable for
360
   * negative account balances, which includes Custom and Express accounts, can be deleted when all
361
   * <a href="https://stripe.com/api/balance/balance_object">balances</a> are zero.
362
   *
363
   * <p>If you want to delete your own account, use the <a
364
   * href="https://dashboard.stripe.com/settings/account">account information tab in your account
365
   * settings</a> instead.
366
   */
367
  public Account delete(Map<String, Object> params) throws StripeException {
368
    return delete(params, (RequestOptions) null);
×
369
  }
370

371
  /**
372
   * With <a href="https://stripe.com/connect">Connect</a>, you can delete accounts you manage.
373
   *
374
   * <p>Test-mode accounts can be deleted at any time.
375
   *
376
   * <p>Live-mode accounts where Stripe is responsible for negative account balances cannot be
377
   * deleted, which includes Standard accounts. Live-mode accounts where your platform is liable for
378
   * negative account balances, which includes Custom and Express accounts, can be deleted when all
379
   * <a href="https://stripe.com/api/balance/balance_object">balances</a> are zero.
380
   *
381
   * <p>If you want to delete your own account, use the <a
382
   * href="https://dashboard.stripe.com/settings/account">account information tab in your account
383
   * settings</a> instead.
384
   */
385
  public Account delete(Map<String, Object> params, RequestOptions options) throws StripeException {
386
    String path = String.format("/v1/accounts/%s", ApiResource.urlEncodeId(this.getId()));
1✔
387
    ApiRequest request =
1✔
388
        new ApiRequest(BaseAddress.API, ApiResource.RequestMethod.DELETE, path, params, options);
389
    return getResponseGetter().request(request, Account.class);
1✔
390
  }
391

392
  /**
393
   * Returns a list of accounts connected to your platform via <a
394
   * href="https://stripe.com/docs/connect">Connect</a>. If you’re not a platform, the list is
395
   * empty.
396
   */
397
  public static AccountCollection list(Map<String, Object> params) throws StripeException {
398
    return list(params, (RequestOptions) null);
1✔
399
  }
400

401
  /**
402
   * Returns a list of accounts connected to your platform via <a
403
   * href="https://stripe.com/docs/connect">Connect</a>. If you’re not a platform, the list is
404
   * empty.
405
   */
406
  public static AccountCollection list(Map<String, Object> params, RequestOptions options)
407
      throws StripeException {
408
    String path = "/v1/accounts";
1✔
409
    ApiRequest request =
1✔
410
        new ApiRequest(BaseAddress.API, ApiResource.RequestMethod.GET, path, params, options);
411
    return getGlobalResponseGetter().request(request, AccountCollection.class);
1✔
412
  }
413

414
  /**
415
   * Returns a list of accounts connected to your platform via <a
416
   * href="https://stripe.com/docs/connect">Connect</a>. If you’re not a platform, the list is
417
   * empty.
418
   */
419
  public static AccountCollection list(AccountListParams params) throws StripeException {
420
    return list(params, (RequestOptions) null);
1✔
421
  }
422

423
  /**
424
   * Returns a list of accounts connected to your platform via <a
425
   * href="https://stripe.com/docs/connect">Connect</a>. If you’re not a platform, the list is
426
   * empty.
427
   */
428
  public static AccountCollection list(AccountListParams params, RequestOptions options)
429
      throws StripeException {
430
    String path = "/v1/accounts";
1✔
431
    ApiResource.checkNullTypedParams(path, params);
1✔
432
    ApiRequest request =
1✔
433
        new ApiRequest(
434
            BaseAddress.API,
435
            ApiResource.RequestMethod.GET,
436
            path,
437
            ApiRequestParams.paramsToMap(params),
1✔
438
            options);
439
    return getGlobalResponseGetter().request(request, AccountCollection.class);
1✔
440
  }
441

442
  /**
443
   * Returns a list of people associated with the account’s legal entity. The people are returned
444
   * sorted by creation date, with the most recent people appearing first.
445
   */
446
  public PersonCollection persons() throws StripeException {
447
    return persons((Map<String, Object>) null, (RequestOptions) null);
1✔
448
  }
449

450
  /**
451
   * Returns a list of people associated with the account’s legal entity. The people are returned
452
   * sorted by creation date, with the most recent people appearing first.
453
   */
454
  public PersonCollection persons(Map<String, Object> params) throws StripeException {
455
    return persons(params, (RequestOptions) null);
1✔
456
  }
457

458
  /**
459
   * Returns a list of people associated with the account’s legal entity. The people are returned
460
   * sorted by creation date, with the most recent people appearing first.
461
   */
462
  public PersonCollection persons(Map<String, Object> params, RequestOptions options)
463
      throws StripeException {
464
    String path = String.format("/v1/accounts/%s/persons", ApiResource.urlEncodeId(this.getId()));
1✔
465
    ApiRequest request =
1✔
466
        new ApiRequest(BaseAddress.API, ApiResource.RequestMethod.GET, path, params, options);
467
    return getResponseGetter().request(request, PersonCollection.class);
1✔
468
  }
469

470
  /**
471
   * Returns a list of people associated with the account’s legal entity. The people are returned
472
   * sorted by creation date, with the most recent people appearing first.
473
   */
474
  public PersonCollection persons(AccountPersonsParams params) throws StripeException {
475
    return persons(params, (RequestOptions) null);
1✔
476
  }
477

478
  /**
479
   * Returns a list of people associated with the account’s legal entity. The people are returned
480
   * sorted by creation date, with the most recent people appearing first.
481
   */
482
  public PersonCollection persons(AccountPersonsParams params, RequestOptions options)
483
      throws StripeException {
484
    String path = String.format("/v1/accounts/%s/persons", ApiResource.urlEncodeId(this.getId()));
1✔
485
    ApiResource.checkNullTypedParams(path, params);
1✔
486
    ApiRequest request =
1✔
487
        new ApiRequest(
488
            BaseAddress.API,
489
            ApiResource.RequestMethod.GET,
490
            path,
491
            ApiRequestParams.paramsToMap(params),
1✔
492
            options);
493
    return getResponseGetter().request(request, PersonCollection.class);
1✔
494
  }
495

496
  /**
497
   * With <a href="https://stripe.com/connect">Connect</a>, you can reject accounts that you have
498
   * flagged as suspicious.
499
   *
500
   * <p>Only accounts where your platform is liable for negative account balances, which includes
501
   * Custom and Express accounts, can be rejected. Test-mode accounts can be rejected at any time.
502
   * Live-mode accounts can only be rejected after all balances are zero.
503
   */
504
  public Account reject(Map<String, Object> params) throws StripeException {
505
    return reject(params, (RequestOptions) null);
1✔
506
  }
507

508
  /**
509
   * With <a href="https://stripe.com/connect">Connect</a>, you can reject accounts that you have
510
   * flagged as suspicious.
511
   *
512
   * <p>Only accounts where your platform is liable for negative account balances, which includes
513
   * Custom and Express accounts, can be rejected. Test-mode accounts can be rejected at any time.
514
   * Live-mode accounts can only be rejected after all balances are zero.
515
   */
516
  public Account reject(Map<String, Object> params, RequestOptions options) throws StripeException {
517
    String path = String.format("/v1/accounts/%s/reject", ApiResource.urlEncodeId(this.getId()));
1✔
518
    ApiRequest request =
1✔
519
        new ApiRequest(BaseAddress.API, ApiResource.RequestMethod.POST, path, params, options);
520
    return getResponseGetter().request(request, Account.class);
1✔
521
  }
522

523
  /**
524
   * With <a href="https://stripe.com/connect">Connect</a>, you can reject accounts that you have
525
   * flagged as suspicious.
526
   *
527
   * <p>Only accounts where your platform is liable for negative account balances, which includes
528
   * Custom and Express accounts, can be rejected. Test-mode accounts can be rejected at any time.
529
   * Live-mode accounts can only be rejected after all balances are zero.
530
   */
531
  public Account reject(AccountRejectParams params) throws StripeException {
532
    return reject(params, (RequestOptions) null);
1✔
533
  }
534

535
  /**
536
   * With <a href="https://stripe.com/connect">Connect</a>, you can reject accounts that you have
537
   * flagged as suspicious.
538
   *
539
   * <p>Only accounts where your platform is liable for negative account balances, which includes
540
   * Custom and Express accounts, can be rejected. Test-mode accounts can be rejected at any time.
541
   * Live-mode accounts can only be rejected after all balances are zero.
542
   */
543
  public Account reject(AccountRejectParams params, RequestOptions options) throws StripeException {
544
    String path = String.format("/v1/accounts/%s/reject", ApiResource.urlEncodeId(this.getId()));
1✔
545
    ApiResource.checkNullTypedParams(path, params);
1✔
546
    ApiRequest request =
1✔
547
        new ApiRequest(
548
            BaseAddress.API,
549
            ApiResource.RequestMethod.POST,
550
            path,
551
            ApiRequestParams.paramsToMap(params),
1✔
552
            options);
553
    return getResponseGetter().request(request, Account.class);
1✔
554
  }
555

556
  /** Retrieves the details of an account. */
557
  public static Account retrieve(String account) throws StripeException {
558
    return retrieve(account, (Map<String, Object>) null, (RequestOptions) null);
1✔
559
  }
560

561
  /** Retrieves the details of an account. */
562
  public static Account retrieve(String account, RequestOptions options) throws StripeException {
563
    return retrieve(account, (Map<String, Object>) null, options);
1✔
564
  }
565

566
  /** Retrieves the details of an account. */
567
  public static Account retrieve(String account, Map<String, Object> params, RequestOptions options)
568
      throws StripeException {
569
    String path = String.format("/v1/accounts/%s", ApiResource.urlEncodeId(account));
1✔
570
    ApiRequest request =
1✔
571
        new ApiRequest(BaseAddress.API, ApiResource.RequestMethod.GET, path, params, options);
572
    return getGlobalResponseGetter().request(request, Account.class);
1✔
573
  }
574

575
  /** Retrieves the details of an account. */
576
  public static Account retrieve(
577
      String account, AccountRetrieveParams params, RequestOptions options) throws StripeException {
578
    String path = String.format("/v1/accounts/%s", ApiResource.urlEncodeId(account));
×
579
    ApiResource.checkNullTypedParams(path, params);
×
580
    ApiRequest request =
×
581
        new ApiRequest(
582
            BaseAddress.API,
583
            ApiResource.RequestMethod.GET,
584
            path,
585
            ApiRequestParams.paramsToMap(params),
×
586
            options);
587
    return getGlobalResponseGetter().request(request, Account.class);
×
588
  }
589

590
  /** Retrieves the details of an account. */
591
  public static Account retrieve() throws StripeException {
592
    return retrieve((Map<String, Object>) null, (RequestOptions) null);
1✔
593
  }
594

595
  /** Retrieves the details of an account. */
596
  public static Account retrieve(RequestOptions options) throws StripeException {
597
    return retrieve((Map<String, Object>) null, options);
×
598
  }
599

600
  /** Retrieves the details of an account. */
601
  public static Account retrieve(Map<String, Object> params, RequestOptions options)
602
      throws StripeException {
603
    String path = "/v1/account";
1✔
604
    ApiRequest request =
1✔
605
        new ApiRequest(BaseAddress.API, ApiResource.RequestMethod.GET, path, params, options);
606
    return getGlobalResponseGetter().request(request, Account.class);
1✔
607
  }
608

609
  /** Retrieves the details of an account. */
610
  public static Account retrieve(AccountRetrieveParams params, RequestOptions options)
611
      throws StripeException {
612
    String path = "/v1/account";
×
613
    ApiResource.checkNullTypedParams(path, params);
×
614
    ApiRequest request =
×
615
        new ApiRequest(
616
            BaseAddress.API,
617
            ApiResource.RequestMethod.GET,
618
            path,
619
            ApiRequestParams.paramsToMap(params),
×
620
            options);
621
    return getGlobalResponseGetter().request(request, Account.class);
×
622
  }
623

624
  /**
625
   * Updates a <a href="https://stripe.com/connect/accounts">connected account</a> by setting the
626
   * values of the parameters passed. Any parameters not provided are left unchanged.
627
   *
628
   * <p>For accounts where <a
629
   * href="https://stripe.com/api/accounts/object#account_object-controller-requirement_collection">controller.requirement_collection</a>
630
   * is {@code application}, which includes Custom accounts, you can update any information on the
631
   * account.
632
   *
633
   * <p>For accounts where <a
634
   * href="https://stripe.com/api/accounts/object#account_object-controller-requirement_collection">controller.requirement_collection</a>
635
   * is {@code stripe}, which includes Standard and Express accounts, you can update all information
636
   * until you create an <a href="https://stripe.com/api/account_links">Account Link</a> or <a
637
   * href="https://stripe.com/api/account_sessions">Account Session</a> to start Connect onboarding,
638
   * after which some properties can no longer be updated.
639
   *
640
   * <p>To update your own account, use the <a
641
   * href="https://dashboard.stripe.com/settings/account">Dashboard</a>. Refer to our <a
642
   * href="https://stripe.com/docs/connect/updating-accounts">Connect</a> documentation to learn
643
   * more about updating accounts.
644
   */
645
  @Override
646
  public Account update(Map<String, Object> params) throws StripeException {
647
    return update(params, (RequestOptions) null);
1✔
648
  }
649

650
  /**
651
   * Updates a <a href="https://stripe.com/connect/accounts">connected account</a> by setting the
652
   * values of the parameters passed. Any parameters not provided are left unchanged.
653
   *
654
   * <p>For accounts where <a
655
   * href="https://stripe.com/api/accounts/object#account_object-controller-requirement_collection">controller.requirement_collection</a>
656
   * is {@code application}, which includes Custom accounts, you can update any information on the
657
   * account.
658
   *
659
   * <p>For accounts where <a
660
   * href="https://stripe.com/api/accounts/object#account_object-controller-requirement_collection">controller.requirement_collection</a>
661
   * is {@code stripe}, which includes Standard and Express accounts, you can update all information
662
   * until you create an <a href="https://stripe.com/api/account_links">Account Link</a> or <a
663
   * href="https://stripe.com/api/account_sessions">Account Session</a> to start Connect onboarding,
664
   * after which some properties can no longer be updated.
665
   *
666
   * <p>To update your own account, use the <a
667
   * href="https://dashboard.stripe.com/settings/account">Dashboard</a>. Refer to our <a
668
   * href="https://stripe.com/docs/connect/updating-accounts">Connect</a> documentation to learn
669
   * more about updating accounts.
670
   */
671
  @Override
672
  public Account update(Map<String, Object> params, RequestOptions options) throws StripeException {
673
    String path = String.format("/v1/accounts/%s", ApiResource.urlEncodeId(this.getId()));
1✔
674
    ApiRequest request =
1✔
675
        new ApiRequest(BaseAddress.API, ApiResource.RequestMethod.POST, path, params, options);
676
    return getResponseGetter().request(request, Account.class);
1✔
677
  }
678

679
  /**
680
   * Updates a <a href="https://stripe.com/connect/accounts">connected account</a> by setting the
681
   * values of the parameters passed. Any parameters not provided are left unchanged.
682
   *
683
   * <p>For accounts where <a
684
   * href="https://stripe.com/api/accounts/object#account_object-controller-requirement_collection">controller.requirement_collection</a>
685
   * is {@code application}, which includes Custom accounts, you can update any information on the
686
   * account.
687
   *
688
   * <p>For accounts where <a
689
   * href="https://stripe.com/api/accounts/object#account_object-controller-requirement_collection">controller.requirement_collection</a>
690
   * is {@code stripe}, which includes Standard and Express accounts, you can update all information
691
   * until you create an <a href="https://stripe.com/api/account_links">Account Link</a> or <a
692
   * href="https://stripe.com/api/account_sessions">Account Session</a> to start Connect onboarding,
693
   * after which some properties can no longer be updated.
694
   *
695
   * <p>To update your own account, use the <a
696
   * href="https://dashboard.stripe.com/settings/account">Dashboard</a>. Refer to our <a
697
   * href="https://stripe.com/docs/connect/updating-accounts">Connect</a> documentation to learn
698
   * more about updating accounts.
699
   */
700
  public Account update(AccountUpdateParams params) throws StripeException {
701
    return update(params, (RequestOptions) null);
1✔
702
  }
703

704
  /**
705
   * Updates a <a href="https://stripe.com/connect/accounts">connected account</a> by setting the
706
   * values of the parameters passed. Any parameters not provided are left unchanged.
707
   *
708
   * <p>For accounts where <a
709
   * href="https://stripe.com/api/accounts/object#account_object-controller-requirement_collection">controller.requirement_collection</a>
710
   * is {@code application}, which includes Custom accounts, you can update any information on the
711
   * account.
712
   *
713
   * <p>For accounts where <a
714
   * href="https://stripe.com/api/accounts/object#account_object-controller-requirement_collection">controller.requirement_collection</a>
715
   * is {@code stripe}, which includes Standard and Express accounts, you can update all information
716
   * until you create an <a href="https://stripe.com/api/account_links">Account Link</a> or <a
717
   * href="https://stripe.com/api/account_sessions">Account Session</a> to start Connect onboarding,
718
   * after which some properties can no longer be updated.
719
   *
720
   * <p>To update your own account, use the <a
721
   * href="https://dashboard.stripe.com/settings/account">Dashboard</a>. Refer to our <a
722
   * href="https://stripe.com/docs/connect/updating-accounts">Connect</a> documentation to learn
723
   * more about updating accounts.
724
   */
725
  public Account update(AccountUpdateParams params, RequestOptions options) throws StripeException {
726
    String path = String.format("/v1/accounts/%s", ApiResource.urlEncodeId(this.getId()));
1✔
727
    ApiResource.checkNullTypedParams(path, params);
1✔
728
    ApiRequest request =
1✔
729
        new ApiRequest(
730
            BaseAddress.API,
731
            ApiResource.RequestMethod.POST,
732
            path,
733
            ApiRequestParams.paramsToMap(params),
1✔
734
            options);
735
    return getResponseGetter().request(request, Account.class);
1✔
736
  }
737

738
  /**
739
   * For more details about BusinessProfile, please refer to the <a
740
   * href="https://docs.stripe.com/api">API Reference.</a>
741
   */
742
  @Getter
743
  @Setter
744
  @EqualsAndHashCode(callSuper = false)
745
  public static class BusinessProfile extends StripeObject {
1✔
746
    /** The applicant's gross annual revenue for its preceding fiscal year. */
747
    @SerializedName("annual_revenue")
748
    AnnualRevenue annualRevenue;
749

750
    /**
751
     * An estimated upper bound of employees, contractors, vendors, etc. currently working for the
752
     * business.
753
     */
754
    @SerializedName("estimated_worker_count")
755
    Long estimatedWorkerCount;
756

757
    /**
758
     * <a href="https://stripe.com/connect/setting-mcc">The merchant category code for the
759
     * account</a>. MCCs are used to classify businesses based on the goods or services they
760
     * provide.
761
     */
762
    @SerializedName("mcc")
763
    String mcc;
764

765
    @SerializedName("monthly_estimated_revenue")
766
    MonthlyEstimatedRevenue monthlyEstimatedRevenue;
767

768
    /** The customer-facing business name. */
769
    @SerializedName("name")
770
    String name;
771

772
    /**
773
     * Internal-only description of the product sold or service provided by the business. It's used
774
     * by Stripe for risk and underwriting purposes.
775
     */
776
    @SerializedName("product_description")
777
    String productDescription;
778

779
    /** A publicly available mailing address for sending support issues to. */
780
    @SerializedName("support_address")
781
    Address supportAddress;
782

783
    /** A publicly available email address for sending support issues to. */
784
    @SerializedName("support_email")
785
    String supportEmail;
786

787
    /** A publicly available phone number to call with support issues. */
788
    @SerializedName("support_phone")
789
    String supportPhone;
790

791
    /** A publicly available website for handling support issues. */
792
    @SerializedName("support_url")
793
    String supportUrl;
794

795
    /** The business's publicly available website. */
796
    @SerializedName("url")
797
    String url;
798

799
    /**
800
     * For more details about AnnualRevenue, please refer to the <a
801
     * href="https://docs.stripe.com/api">API Reference.</a>
802
     */
803
    @Getter
804
    @Setter
805
    @EqualsAndHashCode(callSuper = false)
806
    public static class AnnualRevenue extends StripeObject {
×
807
      /**
808
       * A non-negative integer representing the amount in the <a
809
       * href="https://stripe.com/currencies#zero-decimal">smallest currency unit</a>.
810
       */
811
      @SerializedName("amount")
812
      Long amount;
813

814
      /**
815
       * Three-letter <a href="https://www.iso.org/iso-4217-currency-codes.html">ISO currency
816
       * code</a>, in lowercase. Must be a <a href="https://stripe.com/docs/currencies">supported
817
       * currency</a>.
818
       */
819
      @SerializedName("currency")
820
      String currency;
821

822
      /**
823
       * The close-out date of the preceding fiscal year in ISO 8601 format. E.g. 2023-12-31 for the
824
       * 31st of December, 2023.
825
       */
826
      @SerializedName("fiscal_year_end")
827
      String fiscalYearEnd;
828
    }
829

830
    /**
831
     * For more details about MonthlyEstimatedRevenue, please refer to the <a
832
     * href="https://docs.stripe.com/api">API Reference.</a>
833
     */
834
    @Getter
835
    @Setter
836
    @EqualsAndHashCode(callSuper = false)
837
    public static class MonthlyEstimatedRevenue extends StripeObject {
×
838
      /**
839
       * A non-negative integer representing how much to charge in the <a
840
       * href="https://stripe.com/currencies#zero-decimal">smallest currency unit</a>.
841
       */
842
      @SerializedName("amount")
843
      Long amount;
844

845
      /**
846
       * Three-letter <a href="https://www.iso.org/iso-4217-currency-codes.html">ISO currency
847
       * code</a>, in lowercase. Must be a <a href="https://stripe.com/docs/currencies">supported
848
       * currency</a>.
849
       */
850
      @SerializedName("currency")
851
      String currency;
852
    }
853
  }
854

855
  /**
856
   * For more details about Capabilities, please refer to the <a
857
   * href="https://docs.stripe.com/api">API Reference.</a>
858
   */
859
  @Getter
860
  @Setter
861
  @EqualsAndHashCode(callSuper = false)
862
  public static class Capabilities extends StripeObject {
1✔
863
    /**
864
     * The status of the Canadian pre-authorized debits payments capability of the account, or
865
     * whether the account can directly process Canadian pre-authorized debits charges.
866
     *
867
     * <p>One of {@code active}, {@code inactive}, or {@code pending}.
868
     */
869
    @SerializedName("acss_debit_payments")
870
    String acssDebitPayments;
871

872
    /**
873
     * The status of the Affirm capability of the account, or whether the account can directly
874
     * process Affirm charges.
875
     *
876
     * <p>One of {@code active}, {@code inactive}, or {@code pending}.
877
     */
878
    @SerializedName("affirm_payments")
879
    String affirmPayments;
880

881
    /**
882
     * The status of the Afterpay Clearpay capability of the account, or whether the account can
883
     * directly process Afterpay Clearpay charges.
884
     *
885
     * <p>One of {@code active}, {@code inactive}, or {@code pending}.
886
     */
887
    @SerializedName("afterpay_clearpay_payments")
888
    String afterpayClearpayPayments;
889

890
    /**
891
     * The status of the Alma capability of the account, or whether the account can directly process
892
     * Alma payments.
893
     *
894
     * <p>One of {@code active}, {@code inactive}, or {@code pending}.
895
     */
896
    @SerializedName("alma_payments")
897
    String almaPayments;
898

899
    /**
900
     * The status of the AmazonPay capability of the account, or whether the account can directly
901
     * process AmazonPay payments.
902
     *
903
     * <p>One of {@code active}, {@code inactive}, or {@code pending}.
904
     */
905
    @SerializedName("amazon_pay_payments")
906
    String amazonPayPayments;
907

908
    /**
909
     * The status of the BECS Direct Debit (AU) payments capability of the account, or whether the
910
     * account can directly process BECS Direct Debit (AU) charges.
911
     *
912
     * <p>One of {@code active}, {@code inactive}, or {@code pending}.
913
     */
914
    @SerializedName("au_becs_debit_payments")
915
    String auBecsDebitPayments;
916

917
    /**
918
     * The status of the automatic_indirect_tax capability of the account.
919
     *
920
     * <p>One of {@code active}, {@code inactive}, or {@code pending}.
921
     */
922
    @SerializedName("automatic_indirect_tax")
923
    String automaticIndirectTax;
924

925
    /**
926
     * The status of the Bacs Direct Debits payments capability of the account, or whether the
927
     * account can directly process Bacs Direct Debits charges.
928
     *
929
     * <p>One of {@code active}, {@code inactive}, or {@code pending}.
930
     */
931
    @SerializedName("bacs_debit_payments")
932
    String bacsDebitPayments;
933

934
    /**
935
     * The status of the Bancontact payments capability of the account, or whether the account can
936
     * directly process Bancontact charges.
937
     *
938
     * <p>One of {@code active}, {@code inactive}, or {@code pending}.
939
     */
940
    @SerializedName("bancontact_payments")
941
    String bancontactPayments;
942

943
    /**
944
     * The status of the customer_balance payments capability of the account, or whether the account
945
     * can directly process customer_balance charges.
946
     *
947
     * <p>One of {@code active}, {@code inactive}, or {@code pending}.
948
     */
949
    @SerializedName("bank_transfer_payments")
950
    String bankTransferPayments;
951

952
    /**
953
     * The status of the blik payments capability of the account, or whether the account can
954
     * directly process blik charges.
955
     *
956
     * <p>One of {@code active}, {@code inactive}, or {@code pending}.
957
     */
958
    @SerializedName("blik_payments")
959
    String blikPayments;
960

961
    /**
962
     * The status of the boleto payments capability of the account, or whether the account can
963
     * directly process boleto charges.
964
     *
965
     * <p>One of {@code active}, {@code inactive}, or {@code pending}.
966
     */
967
    @SerializedName("boleto_payments")
968
    String boletoPayments;
969

970
    /**
971
     * The status of the card issuing capability of the account, or whether you can use Issuing to
972
     * distribute funds on cards
973
     *
974
     * <p>One of {@code active}, {@code inactive}, or {@code pending}.
975
     */
976
    @SerializedName("card_issuing")
977
    String cardIssuing;
978

979
    /**
980
     * The status of the card payments capability of the account, or whether the account can
981
     * directly process credit and debit card charges.
982
     *
983
     * <p>One of {@code active}, {@code inactive}, or {@code pending}.
984
     */
985
    @SerializedName("card_payments")
986
    String cardPayments;
987

988
    /**
989
     * The status of the Cartes Bancaires payments capability of the account, or whether the account
990
     * can directly process Cartes Bancaires card charges in EUR currency.
991
     *
992
     * <p>One of {@code active}, {@code inactive}, or {@code pending}.
993
     */
994
    @SerializedName("cartes_bancaires_payments")
995
    String cartesBancairesPayments;
996

997
    /**
998
     * The status of the Cash App Pay capability of the account, or whether the account can directly
999
     * process Cash App Pay payments.
1000
     *
1001
     * <p>One of {@code active}, {@code inactive}, or {@code pending}.
1002
     */
1003
    @SerializedName("cashapp_payments")
1004
    String cashappPayments;
1005

1006
    /**
1007
     * The status of the EPS payments capability of the account, or whether the account can directly
1008
     * process EPS charges.
1009
     *
1010
     * <p>One of {@code active}, {@code inactive}, or {@code pending}.
1011
     */
1012
    @SerializedName("eps_payments")
1013
    String epsPayments;
1014

1015
    /**
1016
     * The status of the FPX payments capability of the account, or whether the account can directly
1017
     * process FPX charges.
1018
     *
1019
     * <p>One of {@code active}, {@code inactive}, or {@code pending}.
1020
     */
1021
    @SerializedName("fpx_payments")
1022
    String fpxPayments;
1023

1024
    /**
1025
     * The status of the GB customer_balance payments (GBP currency) capability of the account, or
1026
     * whether the account can directly process GB customer_balance charges.
1027
     *
1028
     * <p>One of {@code active}, {@code inactive}, or {@code pending}.
1029
     */
1030
    @SerializedName("gb_bank_transfer_payments")
1031
    String gbBankTransferPayments;
1032

1033
    /**
1034
     * The status of the giropay payments capability of the account, or whether the account can
1035
     * directly process giropay charges.
1036
     *
1037
     * <p>One of {@code active}, {@code inactive}, or {@code pending}.
1038
     */
1039
    @SerializedName("giropay_payments")
1040
    String giropayPayments;
1041

1042
    /**
1043
     * The status of the Gopay capability of the account, or whether the account can directly
1044
     * process Gopay payments.
1045
     *
1046
     * <p>One of {@code active}, {@code inactive}, or {@code pending}.
1047
     */
1048
    @SerializedName("gopay_payments")
1049
    String gopayPayments;
1050

1051
    /**
1052
     * The status of the GrabPay payments capability of the account, or whether the account can
1053
     * directly process GrabPay charges.
1054
     *
1055
     * <p>One of {@code active}, {@code inactive}, or {@code pending}.
1056
     */
1057
    @SerializedName("grabpay_payments")
1058
    String grabpayPayments;
1059

1060
    /**
1061
     * The status of the Indonesia Bank Transfer payments capability of the account, or whether the
1062
     * account can directly process Indonesia Bank Transfer charges.
1063
     *
1064
     * <p>One of {@code active}, {@code inactive}, or {@code pending}.
1065
     */
1066
    @SerializedName("id_bank_transfer_payments")
1067
    String idBankTransferPayments;
1068

1069
    /**
1070
     * The status of Bank BCA onboarding of the account.
1071
     *
1072
     * <p>One of {@code active}, {@code inactive}, or {@code pending}.
1073
     */
1074
    @SerializedName("id_bank_transfer_payments_bca")
1075
    String idBankTransferPaymentsBca;
1076

1077
    /**
1078
     * The status of the iDEAL payments capability of the account, or whether the account can
1079
     * directly process iDEAL charges.
1080
     *
1081
     * <p>One of {@code active}, {@code inactive}, or {@code pending}.
1082
     */
1083
    @SerializedName("ideal_payments")
1084
    String idealPayments;
1085

1086
    /**
1087
     * The status of the india_international_payments capability of the account, or whether the
1088
     * account can process international charges (non INR) in India.
1089
     *
1090
     * <p>One of {@code active}, {@code inactive}, or {@code pending}.
1091
     */
1092
    @SerializedName("india_international_payments")
1093
    String indiaInternationalPayments;
1094

1095
    /**
1096
     * The status of the JCB payments capability of the account, or whether the account (Japan only)
1097
     * can directly process JCB credit card charges in JPY currency.
1098
     *
1099
     * <p>One of {@code active}, {@code inactive}, or {@code pending}.
1100
     */
1101
    @SerializedName("jcb_payments")
1102
    String jcbPayments;
1103

1104
    /**
1105
     * The status of the Japanese customer_balance payments (JPY currency) capability of the
1106
     * account, or whether the account can directly process Japanese customer_balance charges.
1107
     *
1108
     * <p>One of {@code active}, {@code inactive}, or {@code pending}.
1109
     */
1110
    @SerializedName("jp_bank_transfer_payments")
1111
    String jpBankTransferPayments;
1112

1113
    /**
1114
     * The status of the KakaoPay capability of the account, or whether the account can directly
1115
     * process KakaoPay payments.
1116
     *
1117
     * <p>One of {@code active}, {@code inactive}, or {@code pending}.
1118
     */
1119
    @SerializedName("kakao_pay_payments")
1120
    String kakaoPayPayments;
1121

1122
    /**
1123
     * The status of the Klarna payments capability of the account, or whether the account can
1124
     * directly process Klarna charges.
1125
     *
1126
     * <p>One of {@code active}, {@code inactive}, or {@code pending}.
1127
     */
1128
    @SerializedName("klarna_payments")
1129
    String klarnaPayments;
1130

1131
    /**
1132
     * The status of the konbini payments capability of the account, or whether the account can
1133
     * directly process konbini charges.
1134
     *
1135
     * <p>One of {@code active}, {@code inactive}, or {@code pending}.
1136
     */
1137
    @SerializedName("konbini_payments")
1138
    String konbiniPayments;
1139

1140
    /**
1141
     * The status of the KrCard capability of the account, or whether the account can directly
1142
     * process KrCard payments.
1143
     *
1144
     * <p>One of {@code active}, {@code inactive}, or {@code pending}.
1145
     */
1146
    @SerializedName("kr_card_payments")
1147
    String krCardPayments;
1148

1149
    /**
1150
     * The status of the legacy payments capability of the account.
1151
     *
1152
     * <p>One of {@code active}, {@code inactive}, or {@code pending}.
1153
     */
1154
    @SerializedName("legacy_payments")
1155
    String legacyPayments;
1156

1157
    /**
1158
     * The status of the link_payments capability of the account, or whether the account can
1159
     * directly process Link charges.
1160
     *
1161
     * <p>One of {@code active}, {@code inactive}, or {@code pending}.
1162
     */
1163
    @SerializedName("link_payments")
1164
    String linkPayments;
1165

1166
    /**
1167
     * The status of the MB WAY payments capability of the account, or whether the account can
1168
     * directly process MB WAY charges.
1169
     *
1170
     * <p>One of {@code active}, {@code inactive}, or {@code pending}.
1171
     */
1172
    @SerializedName("mb_way_payments")
1173
    String mbWayPayments;
1174

1175
    /**
1176
     * The status of the MobilePay capability of the account, or whether the account can directly
1177
     * process MobilePay charges.
1178
     *
1179
     * <p>One of {@code active}, {@code inactive}, or {@code pending}.
1180
     */
1181
    @SerializedName("mobilepay_payments")
1182
    String mobilepayPayments;
1183

1184
    /**
1185
     * The status of the Multibanco payments capability of the account, or whether the account can
1186
     * directly process Multibanco charges.
1187
     *
1188
     * <p>One of {@code active}, {@code inactive}, or {@code pending}.
1189
     */
1190
    @SerializedName("multibanco_payments")
1191
    String multibancoPayments;
1192

1193
    /**
1194
     * The status of the Mexican customer_balance payments (MXN currency) capability of the account,
1195
     * or whether the account can directly process Mexican customer_balance charges.
1196
     *
1197
     * <p>One of {@code active}, {@code inactive}, or {@code pending}.
1198
     */
1199
    @SerializedName("mx_bank_transfer_payments")
1200
    String mxBankTransferPayments;
1201

1202
    /**
1203
     * The status of the NaverPay capability of the account, or whether the account can directly
1204
     * process NaverPay payments.
1205
     *
1206
     * <p>One of {@code active}, {@code inactive}, or {@code pending}.
1207
     */
1208
    @SerializedName("naver_pay_payments")
1209
    String naverPayPayments;
1210

1211
    /**
1212
     * The status of the OXXO payments capability of the account, or whether the account can
1213
     * directly process OXXO charges.
1214
     *
1215
     * <p>One of {@code active}, {@code inactive}, or {@code pending}.
1216
     */
1217
    @SerializedName("oxxo_payments")
1218
    String oxxoPayments;
1219

1220
    /**
1221
     * The status of the P24 payments capability of the account, or whether the account can directly
1222
     * process P24 charges.
1223
     *
1224
     * <p>One of {@code active}, {@code inactive}, or {@code pending}.
1225
     */
1226
    @SerializedName("p24_payments")
1227
    String p24Payments;
1228

1229
    /**
1230
     * The status of the Payco capability of the account, or whether the account can directly
1231
     * process Payco payments.
1232
     *
1233
     * <p>One of {@code active}, {@code inactive}, or {@code pending}.
1234
     */
1235
    @SerializedName("payco_payments")
1236
    String paycoPayments;
1237

1238
    /**
1239
     * The status of the paynow payments capability of the account, or whether the account can
1240
     * directly process paynow charges.
1241
     *
1242
     * <p>One of {@code active}, {@code inactive}, or {@code pending}.
1243
     */
1244
    @SerializedName("paynow_payments")
1245
    String paynowPayments;
1246

1247
    /**
1248
     * The status of the PayPal payments capability of the account, or whether the account can
1249
     * directly process PayPal charges.
1250
     *
1251
     * <p>One of {@code active}, {@code inactive}, or {@code pending}.
1252
     */
1253
    @SerializedName("paypal_payments")
1254
    String paypalPayments;
1255

1256
    /**
1257
     * The status of the PayTo capability of the account, or whether the account can directly
1258
     * process PayTo charges.
1259
     *
1260
     * <p>One of {@code active}, {@code inactive}, or {@code pending}.
1261
     */
1262
    @SerializedName("payto_payments")
1263
    String paytoPayments;
1264

1265
    /**
1266
     * The status of the promptpay payments capability of the account, or whether the account can
1267
     * directly process promptpay charges.
1268
     *
1269
     * <p>One of {@code active}, {@code inactive}, or {@code pending}.
1270
     */
1271
    @SerializedName("promptpay_payments")
1272
    String promptpayPayments;
1273

1274
    /**
1275
     * The status of the Qris capability of the account, or whether the account can directly process
1276
     * Qris payments.
1277
     *
1278
     * <p>One of {@code active}, {@code inactive}, or {@code pending}.
1279
     */
1280
    @SerializedName("qris_payments")
1281
    String qrisPayments;
1282

1283
    /**
1284
     * The status of the Rechnung capability of the account, or whether the account can directly
1285
     * process Rechnung payments.
1286
     *
1287
     * <p>One of {@code active}, {@code inactive}, or {@code pending}.
1288
     */
1289
    @SerializedName("rechnung_payments")
1290
    String rechnungPayments;
1291

1292
    /**
1293
     * The status of the RevolutPay capability of the account, or whether the account can directly
1294
     * process RevolutPay payments.
1295
     *
1296
     * <p>One of {@code active}, {@code inactive}, or {@code pending}.
1297
     */
1298
    @SerializedName("revolut_pay_payments")
1299
    String revolutPayPayments;
1300

1301
    /**
1302
     * The status of the SamsungPay capability of the account, or whether the account can directly
1303
     * process SamsungPay payments.
1304
     *
1305
     * <p>One of {@code active}, {@code inactive}, or {@code pending}.
1306
     */
1307
    @SerializedName("samsung_pay_payments")
1308
    String samsungPayPayments;
1309

1310
    /**
1311
     * The status of the SEPA customer_balance payments (EUR currency) capability of the account, or
1312
     * whether the account can directly process SEPA customer_balance charges.
1313
     *
1314
     * <p>One of {@code active}, {@code inactive}, or {@code pending}.
1315
     */
1316
    @SerializedName("sepa_bank_transfer_payments")
1317
    String sepaBankTransferPayments;
1318

1319
    /**
1320
     * The status of the SEPA Direct Debits payments capability of the account, or whether the
1321
     * account can directly process SEPA Direct Debits charges.
1322
     *
1323
     * <p>One of {@code active}, {@code inactive}, or {@code pending}.
1324
     */
1325
    @SerializedName("sepa_debit_payments")
1326
    String sepaDebitPayments;
1327

1328
    /**
1329
     * The status of the ShopeePay capability of the account, or whether the account can directly
1330
     * process ShopeePay payments.
1331
     *
1332
     * <p>One of {@code active}, {@code inactive}, or {@code pending}.
1333
     */
1334
    @SerializedName("shopeepay_payments")
1335
    String shopeepayPayments;
1336

1337
    /**
1338
     * The status of the Sofort payments capability of the account, or whether the account can
1339
     * directly process Sofort charges.
1340
     *
1341
     * <p>One of {@code active}, {@code inactive}, or {@code pending}.
1342
     */
1343
    @SerializedName("sofort_payments")
1344
    String sofortPayments;
1345

1346
    /**
1347
     * The status of the Swish capability of the account, or whether the account can directly
1348
     * process Swish payments.
1349
     *
1350
     * <p>One of {@code active}, {@code inactive}, or {@code pending}.
1351
     */
1352
    @SerializedName("swish_payments")
1353
    String swishPayments;
1354

1355
    /**
1356
     * The status of the tax reporting 1099-K (US) capability of the account.
1357
     *
1358
     * <p>One of {@code active}, {@code inactive}, or {@code pending}.
1359
     */
1360
    @SerializedName("tax_reporting_us_1099_k")
1361
    String taxReportingUs1099K;
1362

1363
    /**
1364
     * The status of the tax reporting 1099-MISC (US) capability of the account.
1365
     *
1366
     * <p>One of {@code active}, {@code inactive}, or {@code pending}.
1367
     */
1368
    @SerializedName("tax_reporting_us_1099_misc")
1369
    String taxReportingUs1099Misc;
1370

1371
    /**
1372
     * The status of the transfers capability of the account, or whether your platform can transfer
1373
     * funds to the account.
1374
     *
1375
     * <p>One of {@code active}, {@code inactive}, or {@code pending}.
1376
     */
1377
    @SerializedName("transfers")
1378
    String transfers;
1379

1380
    /**
1381
     * The status of the banking capability, or whether the account can have bank accounts.
1382
     *
1383
     * <p>One of {@code active}, {@code inactive}, or {@code pending}.
1384
     */
1385
    @SerializedName("treasury")
1386
    String treasury;
1387

1388
    /**
1389
     * The status of the treasury_evolve capability of the account.
1390
     *
1391
     * <p>One of {@code active}, {@code inactive}, or {@code pending}.
1392
     */
1393
    @SerializedName("treasury_evolve")
1394
    String treasuryEvolve;
1395

1396
    /**
1397
     * The status of the treasury_fifth_third capability of the account.
1398
     *
1399
     * <p>One of {@code active}, {@code inactive}, or {@code pending}.
1400
     */
1401
    @SerializedName("treasury_fifth_third")
1402
    String treasuryFifthThird;
1403

1404
    /**
1405
     * The status of the treasury_goldman_sachs capability of the account.
1406
     *
1407
     * <p>One of {@code active}, {@code inactive}, or {@code pending}.
1408
     */
1409
    @SerializedName("treasury_goldman_sachs")
1410
    String treasuryGoldmanSachs;
1411

1412
    /**
1413
     * The status of the TWINT capability of the account, or whether the account can directly
1414
     * process TWINT charges.
1415
     *
1416
     * <p>One of {@code active}, {@code inactive}, or {@code pending}.
1417
     */
1418
    @SerializedName("twint_payments")
1419
    String twintPayments;
1420

1421
    /**
1422
     * The status of the US bank account ACH payments capability of the account, or whether the
1423
     * account can directly process US bank account charges.
1424
     *
1425
     * <p>One of {@code active}, {@code inactive}, or {@code pending}.
1426
     */
1427
    @SerializedName("us_bank_account_ach_payments")
1428
    String usBankAccountAchPayments;
1429

1430
    /**
1431
     * The status of the US customer_balance payments (USD currency) capability of the account, or
1432
     * whether the account can directly process US customer_balance charges.
1433
     *
1434
     * <p>One of {@code active}, {@code inactive}, or {@code pending}.
1435
     */
1436
    @SerializedName("us_bank_transfer_payments")
1437
    String usBankTransferPayments;
1438

1439
    /**
1440
     * The status of the Zip capability of the account, or whether the account can directly process
1441
     * Zip charges.
1442
     *
1443
     * <p>One of {@code active}, {@code inactive}, or {@code pending}.
1444
     */
1445
    @SerializedName("zip_payments")
1446
    String zipPayments;
1447
  }
1448

1449
  /**
1450
   * For more details about Company, please refer to the <a href="https://docs.stripe.com/api">API
1451
   * Reference.</a>
1452
   */
1453
  @Getter
1454
  @Setter
1455
  @EqualsAndHashCode(callSuper = false)
1456
  public static class Company extends StripeObject {
×
1457
    @SerializedName("address")
1458
    Address address;
1459

1460
    /** The Kana variation of the company's primary address (Japan only). */
1461
    @SerializedName("address_kana")
1462
    AddressKana addressKana;
1463

1464
    /** The Kanji variation of the company's primary address (Japan only). */
1465
    @SerializedName("address_kanji")
1466
    AddressKanji addressKanji;
1467

1468
    /**
1469
     * Whether the company's directors have been provided. This Boolean will be {@code true} if
1470
     * you've manually indicated that all directors are provided via <a
1471
     * href="https://stripe.com/docs/api/accounts/update#update_account-company-directors_provided">the
1472
     * {@code directors_provided} parameter</a>.
1473
     */
1474
    @SerializedName("directors_provided")
1475
    Boolean directorsProvided;
1476

1477
    /**
1478
     * This hash is used to attest that the director information provided to Stripe is both current
1479
     * and correct.
1480
     */
1481
    @SerializedName("directorship_declaration")
1482
    DirectorshipDeclaration directorshipDeclaration;
1483

1484
    /**
1485
     * Whether the company's executives have been provided. This Boolean will be {@code true} if
1486
     * you've manually indicated that all executives are provided via <a
1487
     * href="https://stripe.com/docs/api/accounts/update#update_account-company-executives_provided">the
1488
     * {@code executives_provided} parameter</a>, or if Stripe determined that sufficient executives
1489
     * were provided.
1490
     */
1491
    @SerializedName("executives_provided")
1492
    Boolean executivesProvided;
1493

1494
    /**
1495
     * The export license ID number of the company, also referred as Import Export Code (India
1496
     * only).
1497
     */
1498
    @SerializedName("export_license_id")
1499
    String exportLicenseId;
1500

1501
    /** The purpose code to use for export transactions (India only). */
1502
    @SerializedName("export_purpose_code")
1503
    String exportPurposeCode;
1504

1505
    /** The company's legal name. */
1506
    @SerializedName("name")
1507
    String name;
1508

1509
    /** The Kana variation of the company's legal name (Japan only). */
1510
    @SerializedName("name_kana")
1511
    String nameKana;
1512

1513
    /** The Kanji variation of the company's legal name (Japan only). */
1514
    @SerializedName("name_kanji")
1515
    String nameKanji;
1516

1517
    /**
1518
     * Whether the company's owners have been provided. This Boolean will be {@code true} if you've
1519
     * manually indicated that all owners are provided via <a
1520
     * href="https://stripe.com/docs/api/accounts/update#update_account-company-owners_provided">the
1521
     * {@code owners_provided} parameter</a>, or if Stripe determined that sufficient owners were
1522
     * provided. Stripe determines ownership requirements using both the number of owners provided
1523
     * and their total percent ownership (calculated by adding the {@code percent_ownership} of each
1524
     * owner together).
1525
     */
1526
    @SerializedName("owners_provided")
1527
    Boolean ownersProvided;
1528

1529
    /**
1530
     * This hash is used to attest that the beneficial owner information provided to Stripe is both
1531
     * current and correct.
1532
     */
1533
    @SerializedName("ownership_declaration")
1534
    OwnershipDeclaration ownershipDeclaration;
1535

1536
    @SerializedName("ownership_exemption_reason")
1537
    String ownershipExemptionReason;
1538

1539
    /** The company's phone number (used for verification). */
1540
    @SerializedName("phone")
1541
    String phone;
1542

1543
    /**
1544
     * The category identifying the legal structure of the company or legal entity. See <a
1545
     * href="https://stripe.com/docs/connect/identity-verification#business-structure">Business
1546
     * structure</a> for more details.
1547
     *
1548
     * <p>One of {@code free_zone_establishment}, {@code free_zone_llc}, {@code
1549
     * government_instrumentality}, {@code governmental_unit}, {@code incorporated_non_profit},
1550
     * {@code incorporated_partnership}, {@code limited_liability_partnership}, {@code llc}, {@code
1551
     * multi_member_llc}, {@code private_company}, {@code private_corporation}, {@code
1552
     * private_partnership}, {@code public_company}, {@code public_corporation}, {@code
1553
     * public_partnership}, {@code registered_charity}, {@code single_member_llc}, {@code
1554
     * sole_establishment}, {@code sole_proprietorship}, {@code
1555
     * tax_exempt_government_instrumentality}, {@code unincorporated_association}, {@code
1556
     * unincorporated_non_profit}, or {@code unincorporated_partnership}.
1557
     */
1558
    @SerializedName("structure")
1559
    String structure;
1560

1561
    /** Whether the company's business ID number was provided. */
1562
    @SerializedName("tax_id_provided")
1563
    Boolean taxIdProvided;
1564

1565
    /**
1566
     * The jurisdiction in which the {@code tax_id} is registered (Germany-based companies only).
1567
     */
1568
    @SerializedName("tax_id_registrar")
1569
    String taxIdRegistrar;
1570

1571
    /** Whether the company's business VAT number was provided. */
1572
    @SerializedName("vat_id_provided")
1573
    Boolean vatIdProvided;
1574

1575
    /** Information on the verification state of the company. */
1576
    @SerializedName("verification")
1577
    Verification verification;
1578

1579
    /**
1580
     * For more details about AddressKana, please refer to the <a
1581
     * href="https://docs.stripe.com/api">API Reference.</a>
1582
     */
1583
    @Getter
1584
    @Setter
1585
    @EqualsAndHashCode(callSuper = false)
1586
    public static class AddressKana extends StripeObject {
×
1587
      /** City/Ward. */
1588
      @SerializedName("city")
1589
      String city;
1590

1591
      /**
1592
       * Two-letter country code (<a href="https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2">ISO
1593
       * 3166-1 alpha-2</a>).
1594
       */
1595
      @SerializedName("country")
1596
      String country;
1597

1598
      /** Block/Building number. */
1599
      @SerializedName("line1")
1600
      String line1;
1601

1602
      /** Building details. */
1603
      @SerializedName("line2")
1604
      String line2;
1605

1606
      /** ZIP or postal code. */
1607
      @SerializedName("postal_code")
1608
      String postalCode;
1609

1610
      /** Prefecture. */
1611
      @SerializedName("state")
1612
      String state;
1613

1614
      /** Town/cho-me. */
1615
      @SerializedName("town")
1616
      String town;
1617
    }
1618

1619
    /**
1620
     * For more details about AddressKanji, please refer to the <a
1621
     * href="https://docs.stripe.com/api">API Reference.</a>
1622
     */
1623
    @Getter
1624
    @Setter
1625
    @EqualsAndHashCode(callSuper = false)
1626
    public static class AddressKanji extends StripeObject {
×
1627
      /** City/Ward. */
1628
      @SerializedName("city")
1629
      String city;
1630

1631
      /**
1632
       * Two-letter country code (<a href="https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2">ISO
1633
       * 3166-1 alpha-2</a>).
1634
       */
1635
      @SerializedName("country")
1636
      String country;
1637

1638
      /** Block/Building number. */
1639
      @SerializedName("line1")
1640
      String line1;
1641

1642
      /** Building details. */
1643
      @SerializedName("line2")
1644
      String line2;
1645

1646
      /** ZIP or postal code. */
1647
      @SerializedName("postal_code")
1648
      String postalCode;
1649

1650
      /** Prefecture. */
1651
      @SerializedName("state")
1652
      String state;
1653

1654
      /** Town/cho-me. */
1655
      @SerializedName("town")
1656
      String town;
1657
    }
1658

1659
    /**
1660
     * For more details about DirectorshipDeclaration, please refer to the <a
1661
     * href="https://docs.stripe.com/api">API Reference.</a>
1662
     */
1663
    @Getter
1664
    @Setter
1665
    @EqualsAndHashCode(callSuper = false)
NEW
1666
    public static class DirectorshipDeclaration extends StripeObject {
×
1667
      /** The Unix timestamp marking when the directorship declaration attestation was made. */
1668
      @SerializedName("date")
1669
      Long date;
1670

1671
      /** The IP address from which the directorship declaration attestation was made. */
1672
      @SerializedName("ip")
1673
      String ip;
1674

1675
      /**
1676
       * The user-agent string from the browser where the directorship declaration attestation was
1677
       * made.
1678
       */
1679
      @SerializedName("user_agent")
1680
      String userAgent;
1681
    }
1682

1683
    /**
1684
     * For more details about OwnershipDeclaration, please refer to the <a
1685
     * href="https://docs.stripe.com/api">API Reference.</a>
1686
     */
1687
    @Getter
1688
    @Setter
1689
    @EqualsAndHashCode(callSuper = false)
1690
    public static class OwnershipDeclaration extends StripeObject {
×
1691
      /** The Unix timestamp marking when the beneficial owner attestation was made. */
1692
      @SerializedName("date")
1693
      Long date;
1694

1695
      /** The IP address from which the beneficial owner attestation was made. */
1696
      @SerializedName("ip")
1697
      String ip;
1698

1699
      /** The user-agent string from the browser where the beneficial owner attestation was made. */
1700
      @SerializedName("user_agent")
1701
      String userAgent;
1702
    }
1703

1704
    /**
1705
     * For more details about Verification, please refer to the <a
1706
     * href="https://docs.stripe.com/api">API Reference.</a>
1707
     */
1708
    @Getter
1709
    @Setter
1710
    @EqualsAndHashCode(callSuper = false)
1711
    public static class Verification extends StripeObject {
×
1712
      @SerializedName("document")
1713
      Document document;
1714

1715
      /**
1716
       * For more details about Document, please refer to the <a
1717
       * href="https://docs.stripe.com/api">API Reference.</a>
1718
       */
1719
      @Getter
1720
      @Setter
1721
      @EqualsAndHashCode(callSuper = false)
1722
      public static class Document extends StripeObject {
×
1723
        /**
1724
         * The back of a document returned by a <a
1725
         * href="https://stripe.com/docs/api#create_file">file upload</a> with a {@code purpose}
1726
         * value of {@code additional_verification}.
1727
         */
1728
        @SerializedName("back")
1729
        @Getter(lombok.AccessLevel.NONE)
1730
        @Setter(lombok.AccessLevel.NONE)
1731
        ExpandableField<File> back;
1732

1733
        /** A user-displayable string describing the verification state of this document. */
1734
        @SerializedName("details")
1735
        String details;
1736

1737
        /**
1738
         * One of {@code document_corrupt}, {@code document_expired}, {@code document_failed_copy},
1739
         * {@code document_failed_greyscale}, {@code document_failed_other}, {@code
1740
         * document_failed_test_mode}, {@code document_fraudulent}, {@code document_incomplete},
1741
         * {@code document_invalid}, {@code document_manipulated}, {@code document_not_readable},
1742
         * {@code document_not_uploaded}, {@code document_type_not_supported}, or {@code
1743
         * document_too_large}. A machine-readable code specifying the verification state for this
1744
         * document.
1745
         */
1746
        @SerializedName("details_code")
1747
        String detailsCode;
1748

1749
        /**
1750
         * The front of a document returned by a <a
1751
         * href="https://stripe.com/docs/api#create_file">file upload</a> with a {@code purpose}
1752
         * value of {@code additional_verification}.
1753
         */
1754
        @SerializedName("front")
1755
        @Getter(lombok.AccessLevel.NONE)
1756
        @Setter(lombok.AccessLevel.NONE)
1757
        ExpandableField<File> front;
1758

1759
        /** Get ID of expandable {@code back} object. */
1760
        public String getBack() {
1761
          return (this.back != null) ? this.back.getId() : null;
×
1762
        }
1763

1764
        public void setBack(String id) {
1765
          this.back = ApiResource.setExpandableFieldId(id, this.back);
×
1766
        }
×
1767

1768
        /** Get expanded {@code back}. */
1769
        public File getBackObject() {
1770
          return (this.back != null) ? this.back.getExpanded() : null;
×
1771
        }
1772

1773
        public void setBackObject(File expandableObject) {
1774
          this.back = new ExpandableField<File>(expandableObject.getId(), expandableObject);
×
1775
        }
×
1776

1777
        /** Get ID of expandable {@code front} object. */
1778
        public String getFront() {
1779
          return (this.front != null) ? this.front.getId() : null;
×
1780
        }
1781

1782
        public void setFront(String id) {
1783
          this.front = ApiResource.setExpandableFieldId(id, this.front);
×
1784
        }
×
1785

1786
        /** Get expanded {@code front}. */
1787
        public File getFrontObject() {
1788
          return (this.front != null) ? this.front.getExpanded() : null;
×
1789
        }
1790

1791
        public void setFrontObject(File expandableObject) {
1792
          this.front = new ExpandableField<File>(expandableObject.getId(), expandableObject);
×
1793
        }
×
1794
      }
1795
    }
1796
  }
1797

1798
  /**
1799
   * For more details about Controller, please refer to the <a
1800
   * href="https://docs.stripe.com/api">API Reference.</a>
1801
   */
1802
  @Getter
1803
  @Setter
1804
  @EqualsAndHashCode(callSuper = false)
1805
  public static class Controller extends StripeObject {
1✔
1806
    @SerializedName("application")
1807
    Application application;
1808

1809
    @SerializedName("dashboard")
1810
    Dashboard dashboard;
1811

1812
    @SerializedName("fees")
1813
    Fees fees;
1814

1815
    /**
1816
     * {@code true} if the Connect application retrieving the resource controls the account and can
1817
     * therefore exercise <a
1818
     * href="https://stripe.com/docs/connect/platform-controls-for-standard-accounts">platform
1819
     * controls</a>. Otherwise, this field is null.
1820
     */
1821
    @SerializedName("is_controller")
1822
    Boolean isController;
1823

1824
    @SerializedName("losses")
1825
    Losses losses;
1826

1827
    /**
1828
     * A value indicating responsibility for collecting requirements on this account. Only returned
1829
     * when the Connect application retrieving the resource controls the account.
1830
     *
1831
     * <p>One of {@code application}, or {@code stripe}.
1832
     */
1833
    @SerializedName("requirement_collection")
1834
    String requirementCollection;
1835

1836
    @SerializedName("stripe_dashboard")
1837
    StripeDashboard stripeDashboard;
1838

1839
    /**
1840
     * The controller type. Can be {@code application}, if a Connect application controls the
1841
     * account, or {@code account}, if the account controls itself.
1842
     */
1843
    @SerializedName("type")
1844
    String type;
1845

1846
    /**
1847
     * For more details about Application, please refer to the <a
1848
     * href="https://docs.stripe.com/api">API Reference.</a>
1849
     */
1850
    @Getter
1851
    @Setter
1852
    @EqualsAndHashCode(callSuper = false)
1853
    public static class Application extends StripeObject {
×
1854
      /**
1855
       * {@code true} if the Connect application is responsible for negative balances and should
1856
       * manage credit and fraud risk on the account.
1857
       */
1858
      @SerializedName("loss_liable")
1859
      Boolean lossLiable;
1860

1861
      /** {@code true} if the Connect application is responsible for onboarding the account. */
1862
      @SerializedName("onboarding_owner")
1863
      Boolean onboardingOwner;
1864

1865
      /**
1866
       * {@code true} if the Connect application is responsible for paying Stripe fees on
1867
       * pricing-control eligible products.
1868
       */
1869
      @SerializedName("pricing_controls")
1870
      Boolean pricingControls;
1871
    }
1872

1873
    /**
1874
     * For more details about Dashboard, please refer to the <a
1875
     * href="https://docs.stripe.com/api">API Reference.</a>
1876
     */
1877
    @Getter
1878
    @Setter
1879
    @EqualsAndHashCode(callSuper = false)
1880
    public static class Dashboard extends StripeObject {
×
1881
      /**
1882
       * Whether this account has access to the full Stripe dashboard ({@code full}), to the Express
1883
       * dashboard ({@code express}), or to no dashboard ({@code none}).
1884
       *
1885
       * <p>One of {@code express}, {@code full}, or {@code none}.
1886
       */
1887
      @SerializedName("type")
1888
      String type;
1889
    }
1890

1891
    /**
1892
     * For more details about Fees, please refer to the <a href="https://docs.stripe.com/api">API
1893
     * Reference.</a>
1894
     */
1895
    @Getter
1896
    @Setter
1897
    @EqualsAndHashCode(callSuper = false)
1898
    public static class Fees extends StripeObject {
×
1899
      /**
1900
       * A value indicating the responsible payer of a bundle of Stripe fees for pricing-control
1901
       * eligible products on this account. Learn more about <a
1902
       * href="https://docs.stripe.com/connect/direct-charges-fee-payer-behavior">fee behavior on
1903
       * connected accounts</a>.
1904
       *
1905
       * <p>One of {@code account}, {@code application}, {@code application_custom}, {@code
1906
       * application_express}, or {@code application_unified_accounts_beta}.
1907
       */
1908
      @SerializedName("payer")
1909
      String payer;
1910
    }
1911

1912
    /**
1913
     * For more details about Losses, please refer to the <a href="https://docs.stripe.com/api">API
1914
     * Reference.</a>
1915
     */
1916
    @Getter
1917
    @Setter
1918
    @EqualsAndHashCode(callSuper = false)
1919
    public static class Losses extends StripeObject {
×
1920
      /**
1921
       * A value indicating who is liable when this account can't pay back negative balances from
1922
       * payments.
1923
       *
1924
       * <p>One of {@code application}, or {@code stripe}.
1925
       */
1926
      @SerializedName("payments")
1927
      String payments;
1928
    }
1929

1930
    /**
1931
     * For more details about StripeDashboard, please refer to the <a
1932
     * href="https://docs.stripe.com/api">API Reference.</a>
1933
     */
1934
    @Getter
1935
    @Setter
1936
    @EqualsAndHashCode(callSuper = false)
1937
    public static class StripeDashboard extends StripeObject {
×
1938
      /**
1939
       * A value indicating the Stripe dashboard this account has access to independent of the
1940
       * Connect application.
1941
       *
1942
       * <p>One of {@code express}, {@code full}, or {@code none}.
1943
       */
1944
      @SerializedName("type")
1945
      String type;
1946
    }
1947
  }
1948

1949
  /**
1950
   * For more details about FutureRequirements, please refer to the <a
1951
   * href="https://docs.stripe.com/api">API Reference.</a>
1952
   */
1953
  @Getter
1954
  @Setter
1955
  @EqualsAndHashCode(callSuper = false)
1956
  public static class FutureRequirements extends StripeObject {
1✔
1957
    /**
1958
     * Fields that are due and can be satisfied by providing the corresponding alternative fields
1959
     * instead.
1960
     */
1961
    @SerializedName("alternatives")
1962
    List<Account.FutureRequirements.Alternative> alternatives;
1963

1964
    /**
1965
     * Date on which {@code future_requirements} becomes the main {@code requirements} hash and
1966
     * {@code future_requirements} becomes empty. After the transition, {@code currently_due}
1967
     * requirements may immediately become {@code past_due}, but the account may also be given a
1968
     * grace period depending on its enablement state prior to transitioning.
1969
     */
1970
    @SerializedName("current_deadline")
1971
    Long currentDeadline;
1972

1973
    /**
1974
     * Fields that need to be collected to keep the account enabled. If not collected by {@code
1975
     * future_requirements[current_deadline]}, these fields will transition to the main {@code
1976
     * requirements} hash.
1977
     */
1978
    @SerializedName("currently_due")
1979
    List<String> currentlyDue;
1980

1981
    /**
1982
     * This is typed as an enum for consistency with {@code requirements.disabled_reason}.
1983
     *
1984
     * <p>One of {@code action_required.requested_capabilities}, {@code listed}, {@code other},
1985
     * {@code platform_paused}, {@code rejected.fraud}, {@code rejected.incomplete_verification},
1986
     * {@code rejected.listed}, {@code rejected.other}, {@code rejected.platform_fraud}, {@code
1987
     * rejected.platform_other}, {@code rejected.platform_terms_of_service}, {@code
1988
     * rejected.terms_of_service}, {@code requirements.past_due}, {@code
1989
     * requirements.pending_verification}, or {@code under_review}.
1990
     */
1991
    @SerializedName("disabled_reason")
1992
    String disabledReason;
1993

1994
    /**
1995
     * Fields that are {@code currently_due} and need to be collected again because validation or
1996
     * verification failed.
1997
     */
1998
    @SerializedName("errors")
1999
    List<Account.FutureRequirements.Errors> errors;
2000

2001
    /**
2002
     * Fields you must collect when all thresholds are reached. As they become required, they appear
2003
     * in {@code currently_due} as well.
2004
     */
2005
    @SerializedName("eventually_due")
2006
    List<String> eventuallyDue;
2007

2008
    /**
2009
     * Fields that weren't collected by {@code requirements.current_deadline}. These fields need to
2010
     * be collected to enable the capability on the account. New fields will never appear here;
2011
     * {@code future_requirements.past_due} will always be a subset of {@code
2012
     * requirements.past_due}.
2013
     */
2014
    @SerializedName("past_due")
2015
    List<String> pastDue;
2016

2017
    /**
2018
     * Fields that might become required depending on the results of verification or review. It's an
2019
     * empty array unless an asynchronous verification is pending. If verification fails, these
2020
     * fields move to {@code eventually_due} or {@code currently_due}. Fields might appear in {@code
2021
     * eventually_due} or {@code currently_due} and in {@code pending_verification} if verification
2022
     * fails but another verification is still pending.
2023
     */
2024
    @SerializedName("pending_verification")
2025
    List<String> pendingVerification;
2026

2027
    /**
2028
     * For more details about Alternative, please refer to the <a
2029
     * href="https://docs.stripe.com/api">API Reference.</a>
2030
     */
2031
    @Getter
2032
    @Setter
2033
    @EqualsAndHashCode(callSuper = false)
2034
    public static class Alternative extends StripeObject {
×
2035
      /** Fields that can be provided to satisfy all fields in {@code original_fields_due}. */
2036
      @SerializedName("alternative_fields_due")
2037
      List<String> alternativeFieldsDue;
2038

2039
      /**
2040
       * Fields that are due and can be satisfied by providing all fields in {@code
2041
       * alternative_fields_due}.
2042
       */
2043
      @SerializedName("original_fields_due")
2044
      List<String> originalFieldsDue;
2045
    }
2046

2047
    /**
2048
     * For more details about Errors, please refer to the <a href="https://docs.stripe.com/api">API
2049
     * Reference.</a>
2050
     */
2051
    @Getter
2052
    @Setter
2053
    @EqualsAndHashCode(callSuper = false)
2054
    public static class Errors extends StripeObject {
×
2055
      /**
2056
       * The code for the type of error.
2057
       *
2058
       * <p>One of {@code invalid_address_city_state_postal_code}, {@code
2059
       * invalid_address_highway_contract_box}, {@code invalid_address_private_mailbox}, {@code
2060
       * invalid_business_profile_name}, {@code invalid_business_profile_name_denylisted}, {@code
2061
       * invalid_company_name_denylisted}, {@code invalid_dob_age_over_maximum}, {@code
2062
       * invalid_dob_age_under_18}, {@code invalid_dob_age_under_minimum}, {@code
2063
       * invalid_product_description_length}, {@code invalid_product_description_url_match}, {@code
2064
       * invalid_representative_country}, {@code invalid_statement_descriptor_business_mismatch},
2065
       * {@code invalid_statement_descriptor_denylisted}, {@code
2066
       * invalid_statement_descriptor_length}, {@code
2067
       * invalid_statement_descriptor_prefix_denylisted}, {@code
2068
       * invalid_statement_descriptor_prefix_mismatch}, {@code invalid_street_address}, {@code
2069
       * invalid_tax_id}, {@code invalid_tax_id_format}, {@code invalid_tos_acceptance}, {@code
2070
       * invalid_url_denylisted}, {@code invalid_url_format}, {@code invalid_url_length}, {@code
2071
       * invalid_url_web_presence_detected}, {@code
2072
       * invalid_url_website_business_information_mismatch}, {@code invalid_url_website_empty},
2073
       * {@code invalid_url_website_inaccessible}, {@code
2074
       * invalid_url_website_inaccessible_geoblocked}, {@code
2075
       * invalid_url_website_inaccessible_password_protected}, {@code
2076
       * invalid_url_website_incomplete}, {@code
2077
       * invalid_url_website_incomplete_cancellation_policy}, {@code
2078
       * invalid_url_website_incomplete_customer_service_details}, {@code
2079
       * invalid_url_website_incomplete_legal_restrictions}, {@code
2080
       * invalid_url_website_incomplete_refund_policy}, {@code
2081
       * invalid_url_website_incomplete_return_policy}, {@code
2082
       * invalid_url_website_incomplete_terms_and_conditions}, {@code
2083
       * invalid_url_website_incomplete_under_construction}, {@code invalid_url_website_other},
2084
       * {@code invalid_value_other}, {@code verification_directors_mismatch}, {@code
2085
       * verification_document_address_mismatch}, {@code verification_document_address_missing},
2086
       * {@code verification_document_corrupt}, {@code verification_document_country_not_supported},
2087
       * {@code verification_document_directors_mismatch}, {@code
2088
       * verification_document_dob_mismatch}, {@code verification_document_duplicate_type}, {@code
2089
       * verification_document_expired}, {@code verification_document_failed_copy}, {@code
2090
       * verification_document_failed_greyscale}, {@code verification_document_failed_other}, {@code
2091
       * verification_document_failed_test_mode}, {@code verification_document_fraudulent}, {@code
2092
       * verification_document_id_number_mismatch}, {@code verification_document_id_number_missing},
2093
       * {@code verification_document_incomplete}, {@code verification_document_invalid}, {@code
2094
       * verification_document_issue_or_expiry_date_missing}, {@code
2095
       * verification_document_manipulated}, {@code verification_document_missing_back}, {@code
2096
       * verification_document_missing_front}, {@code verification_document_name_mismatch}, {@code
2097
       * verification_document_name_missing}, {@code verification_document_nationality_mismatch},
2098
       * {@code verification_document_not_readable}, {@code verification_document_not_signed},
2099
       * {@code verification_document_not_uploaded}, {@code verification_document_photo_mismatch},
2100
       * {@code verification_document_too_large}, {@code verification_document_type_not_supported},
2101
       * {@code verification_extraneous_directors}, {@code verification_failed_address_match},
2102
       * {@code verification_failed_business_iec_number}, {@code
2103
       * verification_failed_document_match}, {@code verification_failed_id_number_match}, {@code
2104
       * verification_failed_keyed_identity}, {@code verification_failed_keyed_match}, {@code
2105
       * verification_failed_name_match}, {@code verification_failed_other}, {@code
2106
       * verification_failed_representative_authority}, {@code
2107
       * verification_failed_residential_address}, {@code verification_failed_tax_id_match}, {@code
2108
       * verification_failed_tax_id_not_issued}, {@code verification_missing_directors}, {@code
2109
       * verification_missing_executives}, {@code verification_missing_owners}, {@code
2110
       * verification_requires_additional_memorandum_of_associations}, {@code
2111
       * verification_requires_additional_proof_of_registration}, or {@code
2112
       * verification_supportability}.
2113
       */
2114
      @SerializedName("code")
2115
      String code;
2116

2117
      /**
2118
       * An informative message that indicates the error type and provides additional details about
2119
       * the error.
2120
       */
2121
      @SerializedName("reason")
2122
      String reason;
2123

2124
      /**
2125
       * The specific user onboarding requirement field (in the requirements hash) that needs to be
2126
       * resolved.
2127
       */
2128
      @SerializedName("requirement")
2129
      String requirement;
2130
    }
2131
  }
2132

2133
  /**
2134
   * For more details about Groups, please refer to the <a href="https://docs.stripe.com/api">API
2135
   * Reference.</a>
2136
   */
2137
  @Getter
2138
  @Setter
2139
  @EqualsAndHashCode(callSuper = false)
2140
  public static class Groups extends StripeObject {
×
2141
    /**
2142
     * The group the account is in to determine their payments pricing, and null if the account is
2143
     * on customized pricing. <a href="https://stripe.com/docs/connect/platform-pricing-tools">See
2144
     * the Platform pricing tool documentation</a> for details.
2145
     */
2146
    @SerializedName("payments_pricing")
2147
    String paymentsPricing;
2148
  }
2149

2150
  /**
2151
   * For more details about Requirements, please refer to the <a
2152
   * href="https://docs.stripe.com/api">API Reference.</a>
2153
   */
2154
  @Getter
2155
  @Setter
2156
  @EqualsAndHashCode(callSuper = false)
2157
  public static class Requirements extends StripeObject {
1✔
2158
    /**
2159
     * Fields that are due and can be satisfied by providing the corresponding alternative fields
2160
     * instead.
2161
     */
2162
    @SerializedName("alternatives")
2163
    List<Account.Requirements.Alternative> alternatives;
2164

2165
    /**
2166
     * Date by which the fields in {@code currently_due} must be collected to keep the account
2167
     * enabled. These fields may disable the account sooner if the next threshold is reached before
2168
     * they are collected.
2169
     */
2170
    @SerializedName("current_deadline")
2171
    Long currentDeadline;
2172

2173
    /**
2174
     * Fields that need to be collected to keep the account enabled. If not collected by {@code
2175
     * current_deadline}, these fields appear in {@code past_due} as well, and the account is
2176
     * disabled.
2177
     */
2178
    @SerializedName("currently_due")
2179
    List<String> currentlyDue;
2180

2181
    /**
2182
     * If the account is disabled, this enum describes why. <a
2183
     * href="https://stripe.com/docs/connect/handling-api-verification">Learn more about handling
2184
     * verification issues</a>.
2185
     *
2186
     * <p>One of {@code action_required.requested_capabilities}, {@code listed}, {@code other},
2187
     * {@code platform_paused}, {@code rejected.fraud}, {@code rejected.incomplete_verification},
2188
     * {@code rejected.listed}, {@code rejected.other}, {@code rejected.platform_fraud}, {@code
2189
     * rejected.platform_other}, {@code rejected.platform_terms_of_service}, {@code
2190
     * rejected.terms_of_service}, {@code requirements.past_due}, {@code
2191
     * requirements.pending_verification}, or {@code under_review}.
2192
     */
2193
    @SerializedName("disabled_reason")
2194
    String disabledReason;
2195

2196
    /**
2197
     * Fields that are {@code currently_due} and need to be collected again because validation or
2198
     * verification failed.
2199
     */
2200
    @SerializedName("errors")
2201
    List<Account.Requirements.Errors> errors;
2202

2203
    /**
2204
     * Fields you must collect when all thresholds are reached. As they become required, they appear
2205
     * in {@code currently_due} as well, and {@code current_deadline} becomes set.
2206
     */
2207
    @SerializedName("eventually_due")
2208
    List<String> eventuallyDue;
2209

2210
    /**
2211
     * Fields that weren't collected by {@code current_deadline}. These fields need to be collected
2212
     * to enable the account.
2213
     */
2214
    @SerializedName("past_due")
2215
    List<String> pastDue;
2216

2217
    /**
2218
     * Fields that might become required depending on the results of verification or review. It's an
2219
     * empty array unless an asynchronous verification is pending. If verification fails, these
2220
     * fields move to {@code eventually_due}, {@code currently_due}, or {@code past_due}. Fields
2221
     * might appear in {@code eventually_due}, {@code currently_due}, or {@code past_due} and in
2222
     * {@code pending_verification} if verification fails but another verification is still pending.
2223
     */
2224
    @SerializedName("pending_verification")
2225
    List<String> pendingVerification;
2226

2227
    /**
2228
     * For more details about Alternative, please refer to the <a
2229
     * href="https://docs.stripe.com/api">API Reference.</a>
2230
     */
2231
    @Getter
2232
    @Setter
2233
    @EqualsAndHashCode(callSuper = false)
2234
    public static class Alternative extends StripeObject {
×
2235
      /** Fields that can be provided to satisfy all fields in {@code original_fields_due}. */
2236
      @SerializedName("alternative_fields_due")
2237
      List<String> alternativeFieldsDue;
2238

2239
      /**
2240
       * Fields that are due and can be satisfied by providing all fields in {@code
2241
       * alternative_fields_due}.
2242
       */
2243
      @SerializedName("original_fields_due")
2244
      List<String> originalFieldsDue;
2245
    }
2246

2247
    /**
2248
     * For more details about Errors, please refer to the <a href="https://docs.stripe.com/api">API
2249
     * Reference.</a>
2250
     */
2251
    @Getter
2252
    @Setter
2253
    @EqualsAndHashCode(callSuper = false)
2254
    public static class Errors extends StripeObject {
×
2255
      /**
2256
       * The code for the type of error.
2257
       *
2258
       * <p>One of {@code invalid_address_city_state_postal_code}, {@code
2259
       * invalid_address_highway_contract_box}, {@code invalid_address_private_mailbox}, {@code
2260
       * invalid_business_profile_name}, {@code invalid_business_profile_name_denylisted}, {@code
2261
       * invalid_company_name_denylisted}, {@code invalid_dob_age_over_maximum}, {@code
2262
       * invalid_dob_age_under_18}, {@code invalid_dob_age_under_minimum}, {@code
2263
       * invalid_product_description_length}, {@code invalid_product_description_url_match}, {@code
2264
       * invalid_representative_country}, {@code invalid_statement_descriptor_business_mismatch},
2265
       * {@code invalid_statement_descriptor_denylisted}, {@code
2266
       * invalid_statement_descriptor_length}, {@code
2267
       * invalid_statement_descriptor_prefix_denylisted}, {@code
2268
       * invalid_statement_descriptor_prefix_mismatch}, {@code invalid_street_address}, {@code
2269
       * invalid_tax_id}, {@code invalid_tax_id_format}, {@code invalid_tos_acceptance}, {@code
2270
       * invalid_url_denylisted}, {@code invalid_url_format}, {@code invalid_url_length}, {@code
2271
       * invalid_url_web_presence_detected}, {@code
2272
       * invalid_url_website_business_information_mismatch}, {@code invalid_url_website_empty},
2273
       * {@code invalid_url_website_inaccessible}, {@code
2274
       * invalid_url_website_inaccessible_geoblocked}, {@code
2275
       * invalid_url_website_inaccessible_password_protected}, {@code
2276
       * invalid_url_website_incomplete}, {@code
2277
       * invalid_url_website_incomplete_cancellation_policy}, {@code
2278
       * invalid_url_website_incomplete_customer_service_details}, {@code
2279
       * invalid_url_website_incomplete_legal_restrictions}, {@code
2280
       * invalid_url_website_incomplete_refund_policy}, {@code
2281
       * invalid_url_website_incomplete_return_policy}, {@code
2282
       * invalid_url_website_incomplete_terms_and_conditions}, {@code
2283
       * invalid_url_website_incomplete_under_construction}, {@code invalid_url_website_other},
2284
       * {@code invalid_value_other}, {@code verification_directors_mismatch}, {@code
2285
       * verification_document_address_mismatch}, {@code verification_document_address_missing},
2286
       * {@code verification_document_corrupt}, {@code verification_document_country_not_supported},
2287
       * {@code verification_document_directors_mismatch}, {@code
2288
       * verification_document_dob_mismatch}, {@code verification_document_duplicate_type}, {@code
2289
       * verification_document_expired}, {@code verification_document_failed_copy}, {@code
2290
       * verification_document_failed_greyscale}, {@code verification_document_failed_other}, {@code
2291
       * verification_document_failed_test_mode}, {@code verification_document_fraudulent}, {@code
2292
       * verification_document_id_number_mismatch}, {@code verification_document_id_number_missing},
2293
       * {@code verification_document_incomplete}, {@code verification_document_invalid}, {@code
2294
       * verification_document_issue_or_expiry_date_missing}, {@code
2295
       * verification_document_manipulated}, {@code verification_document_missing_back}, {@code
2296
       * verification_document_missing_front}, {@code verification_document_name_mismatch}, {@code
2297
       * verification_document_name_missing}, {@code verification_document_nationality_mismatch},
2298
       * {@code verification_document_not_readable}, {@code verification_document_not_signed},
2299
       * {@code verification_document_not_uploaded}, {@code verification_document_photo_mismatch},
2300
       * {@code verification_document_too_large}, {@code verification_document_type_not_supported},
2301
       * {@code verification_extraneous_directors}, {@code verification_failed_address_match},
2302
       * {@code verification_failed_business_iec_number}, {@code
2303
       * verification_failed_document_match}, {@code verification_failed_id_number_match}, {@code
2304
       * verification_failed_keyed_identity}, {@code verification_failed_keyed_match}, {@code
2305
       * verification_failed_name_match}, {@code verification_failed_other}, {@code
2306
       * verification_failed_representative_authority}, {@code
2307
       * verification_failed_residential_address}, {@code verification_failed_tax_id_match}, {@code
2308
       * verification_failed_tax_id_not_issued}, {@code verification_missing_directors}, {@code
2309
       * verification_missing_executives}, {@code verification_missing_owners}, {@code
2310
       * verification_requires_additional_memorandum_of_associations}, {@code
2311
       * verification_requires_additional_proof_of_registration}, or {@code
2312
       * verification_supportability}.
2313
       */
2314
      @SerializedName("code")
2315
      String code;
2316

2317
      /**
2318
       * An informative message that indicates the error type and provides additional details about
2319
       * the error.
2320
       */
2321
      @SerializedName("reason")
2322
      String reason;
2323

2324
      /**
2325
       * The specific user onboarding requirement field (in the requirements hash) that needs to be
2326
       * resolved.
2327
       */
2328
      @SerializedName("requirement")
2329
      String requirement;
2330
    }
2331
  }
2332

2333
  /**
2334
   * For more details about RiskControls, please refer to the <a
2335
   * href="https://docs.stripe.com/api">API Reference.</a>
2336
   */
2337
  @Getter
2338
  @Setter
2339
  @EqualsAndHashCode(callSuper = false)
2340
  public static class RiskControls extends StripeObject {
×
2341
    @SerializedName("charges")
2342
    Charges charges;
2343

2344
    @SerializedName("payouts")
2345
    Payouts payouts;
2346

2347
    /**
2348
     * For more details about Charges, please refer to the <a href="https://docs.stripe.com/api">API
2349
     * Reference.</a>
2350
     */
2351
    @Getter
2352
    @Setter
2353
    @EqualsAndHashCode(callSuper = false)
2354
    public static class Charges extends StripeObject {
×
2355
      /** Whether a pause of the risk control has been requested. */
2356
      @SerializedName("pause_requested")
2357
      Boolean pauseRequested;
2358
    }
2359

2360
    /**
2361
     * For more details about Payouts, please refer to the <a href="https://docs.stripe.com/api">API
2362
     * Reference.</a>
2363
     */
2364
    @Getter
2365
    @Setter
2366
    @EqualsAndHashCode(callSuper = false)
2367
    public static class Payouts extends StripeObject {
×
2368
      /** Whether a pause of the risk control has been requested. */
2369
      @SerializedName("pause_requested")
2370
      Boolean pauseRequested;
2371
    }
2372
  }
2373

2374
  /**
2375
   * For more details about Settings, please refer to the <a href="https://docs.stripe.com/api">API
2376
   * Reference.</a>
2377
   */
2378
  @Getter
2379
  @Setter
2380
  @EqualsAndHashCode(callSuper = false)
2381
  public static class Settings extends StripeObject {
1✔
2382
    @SerializedName("bacs_debit_payments")
2383
    BacsDebitPayments bacsDebitPayments;
2384

2385
    @SerializedName("bank_bca_onboarding")
2386
    BankBcaOnboarding bankBcaOnboarding;
2387

2388
    @SerializedName("branding")
2389
    Branding branding;
2390

2391
    @SerializedName("capital")
2392
    Capital capital;
2393

2394
    @SerializedName("card_issuing")
2395
    CardIssuing cardIssuing;
2396

2397
    @SerializedName("card_payments")
2398
    CardPayments cardPayments;
2399

2400
    @SerializedName("dashboard")
2401
    Dashboard dashboard;
2402

2403
    @SerializedName("invoices")
2404
    Invoices invoices;
2405

2406
    @SerializedName("payments")
2407
    Payments payments;
2408

2409
    @SerializedName("payouts")
2410
    Payouts payouts;
2411

2412
    @SerializedName("sepa_debit_payments")
2413
    SepaDebitPayments sepaDebitPayments;
2414

2415
    @SerializedName("tax_forms")
2416
    TaxForms taxForms;
2417

2418
    @SerializedName("treasury")
2419
    Treasury treasury;
2420

2421
    /**
2422
     * For more details about BacsDebitPayments, please refer to the <a
2423
     * href="https://docs.stripe.com/api">API Reference.</a>
2424
     */
2425
    @Getter
2426
    @Setter
2427
    @EqualsAndHashCode(callSuper = false)
2428
    public static class BacsDebitPayments extends StripeObject {
1✔
2429
      /**
2430
       * The Bacs Direct Debit display name for this account. For payments made with Bacs Direct
2431
       * Debit, this name appears on the mandate as the statement descriptor. Mobile banking apps
2432
       * display it as the name of the business. To use custom branding, set the Bacs Direct Debit
2433
       * Display Name during or right after creation. Custom branding incurs an additional monthly
2434
       * fee for the platform. The fee appears 5 business days after requesting Bacs. If you don't
2435
       * set the display name before requesting Bacs capability, it's automatically set as
2436
       * &quot;Stripe&quot; and the account is onboarded to Stripe branding, which is free.
2437
       */
2438
      @SerializedName("display_name")
2439
      String displayName;
2440

2441
      /**
2442
       * The Bacs Direct Debit Service user number for this account. For payments made with Bacs
2443
       * Direct Debit, this number is a unique identifier of the account with our banking partners.
2444
       */
2445
      @SerializedName("service_user_number")
2446
      String serviceUserNumber;
2447
    }
2448

2449
    /**
2450
     * For more details about BankBcaOnboarding, please refer to the <a
2451
     * href="https://docs.stripe.com/api">API Reference.</a>
2452
     */
2453
    @Getter
2454
    @Setter
2455
    @EqualsAndHashCode(callSuper = false)
2456
    public static class BankBcaOnboarding extends StripeObject {
×
2457
      /** Bank BCA business account holder name. */
2458
      @SerializedName("account_holder_name")
2459
      String accountHolderName;
2460

2461
      /** Bank BCA business account number. */
2462
      @SerializedName("business_account_number")
2463
      String businessAccountNumber;
2464
    }
2465

2466
    /**
2467
     * For more details about Branding, please refer to the <a
2468
     * href="https://docs.stripe.com/api">API Reference.</a>
2469
     */
2470
    @Getter
2471
    @Setter
2472
    @EqualsAndHashCode(callSuper = false)
2473
    public static class Branding extends StripeObject {
1✔
2474
      /**
2475
       * (ID of a <a href="https://stripe.com/docs/guides/file-upload">file upload</a>) An icon for
2476
       * the account. Must be square and at least 128px x 128px.
2477
       */
2478
      @SerializedName("icon")
2479
      @Getter(lombok.AccessLevel.NONE)
2480
      @Setter(lombok.AccessLevel.NONE)
2481
      ExpandableField<File> icon;
2482

2483
      /**
2484
       * (ID of a <a href="https://stripe.com/docs/guides/file-upload">file upload</a>) A logo for
2485
       * the account that will be used in Checkout instead of the icon and without the account's
2486
       * name next to it if provided. Must be at least 128px x 128px.
2487
       */
2488
      @SerializedName("logo")
2489
      @Getter(lombok.AccessLevel.NONE)
2490
      @Setter(lombok.AccessLevel.NONE)
2491
      ExpandableField<File> logo;
2492

2493
      /** A CSS hex color value representing the primary branding color for this account. */
2494
      @SerializedName("primary_color")
2495
      String primaryColor;
2496

2497
      /** A CSS hex color value representing the secondary branding color for this account. */
2498
      @SerializedName("secondary_color")
2499
      String secondaryColor;
2500

2501
      /** Get ID of expandable {@code icon} object. */
2502
      public String getIcon() {
2503
        return (this.icon != null) ? this.icon.getId() : null;
1✔
2504
      }
2505

2506
      public void setIcon(String id) {
2507
        this.icon = ApiResource.setExpandableFieldId(id, this.icon);
×
2508
      }
×
2509

2510
      /** Get expanded {@code icon}. */
2511
      public File getIconObject() {
2512
        return (this.icon != null) ? this.icon.getExpanded() : null;
1✔
2513
      }
2514

2515
      public void setIconObject(File expandableObject) {
2516
        this.icon = new ExpandableField<File>(expandableObject.getId(), expandableObject);
×
2517
      }
×
2518

2519
      /** Get ID of expandable {@code logo} object. */
2520
      public String getLogo() {
2521
        return (this.logo != null) ? this.logo.getId() : null;
1✔
2522
      }
2523

2524
      public void setLogo(String id) {
2525
        this.logo = ApiResource.setExpandableFieldId(id, this.logo);
×
2526
      }
×
2527

2528
      /** Get expanded {@code logo}. */
2529
      public File getLogoObject() {
2530
        return (this.logo != null) ? this.logo.getExpanded() : null;
1✔
2531
      }
2532

2533
      public void setLogoObject(File expandableObject) {
2534
        this.logo = new ExpandableField<File>(expandableObject.getId(), expandableObject);
×
2535
      }
×
2536
    }
2537

2538
    /**
2539
     * For more details about Capital, please refer to the <a href="https://docs.stripe.com/api">API
2540
     * Reference.</a>
2541
     */
2542
    @Getter
2543
    @Setter
2544
    @EqualsAndHashCode(callSuper = false)
2545
    public static class Capital extends StripeObject {
×
2546
      /** Per-currency mapping of user-selected destination accounts used to pay out loans. */
2547
      @SerializedName("payout_destination")
2548
      Map<String, String> payoutDestination;
2549

2550
      /** Per-currency mapping of all destination accounts eligible to receive loan payouts. */
2551
      @SerializedName("payout_destination_selector")
2552
      Map<String, List<String>> payoutDestinationSelector;
2553
    }
2554

2555
    /**
2556
     * For more details about CardIssuing, please refer to the <a
2557
     * href="https://docs.stripe.com/api">API Reference.</a>
2558
     */
2559
    @Getter
2560
    @Setter
2561
    @EqualsAndHashCode(callSuper = false)
2562
    public static class CardIssuing extends StripeObject {
1✔
2563
      @SerializedName("tos_acceptance")
2564
      TosAcceptance tosAcceptance;
2565

2566
      /**
2567
       * For more details about TosAcceptance, please refer to the <a
2568
       * href="https://docs.stripe.com/api">API Reference.</a>
2569
       */
2570
      @Getter
2571
      @Setter
2572
      @EqualsAndHashCode(callSuper = false)
2573
      public static class TosAcceptance extends StripeObject {
1✔
2574
        /**
2575
         * The Unix timestamp marking when the account representative accepted the service
2576
         * agreement.
2577
         */
2578
        @SerializedName("date")
2579
        Long date;
2580

2581
        /** The IP address from which the account representative accepted the service agreement. */
2582
        @SerializedName("ip")
2583
        String ip;
2584

2585
        /**
2586
         * The user agent of the browser from which the account representative accepted the service
2587
         * agreement.
2588
         */
2589
        @SerializedName("user_agent")
2590
        String userAgent;
2591
      }
2592
    }
2593

2594
    /**
2595
     * For more details about CardPayments, please refer to the <a
2596
     * href="https://docs.stripe.com/api">API Reference.</a>
2597
     */
2598
    @Getter
2599
    @Setter
2600
    @EqualsAndHashCode(callSuper = false)
2601
    public static class CardPayments extends StripeObject {
1✔
2602
      @SerializedName("decline_on")
2603
      DeclineOn declineOn;
2604

2605
      /**
2606
       * The default text that appears on credit card statements when a charge is made. This field
2607
       * prefixes any dynamic {@code statement_descriptor} specified on the charge. {@code
2608
       * statement_descriptor_prefix} is useful for maximizing descriptor space for the dynamic
2609
       * portion.
2610
       */
2611
      @SerializedName("statement_descriptor_prefix")
2612
      String statementDescriptorPrefix;
2613

2614
      /**
2615
       * The Kana variation of the default text that appears on credit card statements when a charge
2616
       * is made (Japan only). This field prefixes any dynamic {@code
2617
       * statement_descriptor_suffix_kana} specified on the charge. {@code
2618
       * statement_descriptor_prefix_kana} is useful for maximizing descriptor space for the dynamic
2619
       * portion.
2620
       */
2621
      @SerializedName("statement_descriptor_prefix_kana")
2622
      String statementDescriptorPrefixKana;
2623

2624
      /**
2625
       * The Kanji variation of the default text that appears on credit card statements when a
2626
       * charge is made (Japan only). This field prefixes any dynamic {@code
2627
       * statement_descriptor_suffix_kanji} specified on the charge. {@code
2628
       * statement_descriptor_prefix_kanji} is useful for maximizing descriptor space for the
2629
       * dynamic portion.
2630
       */
2631
      @SerializedName("statement_descriptor_prefix_kanji")
2632
      String statementDescriptorPrefixKanji;
2633

2634
      /**
2635
       * For more details about DeclineOn, please refer to the <a
2636
       * href="https://docs.stripe.com/api">API Reference.</a>
2637
       */
2638
      @Getter
2639
      @Setter
2640
      @EqualsAndHashCode(callSuper = false)
2641
      public static class DeclineOn extends StripeObject {
1✔
2642
        /**
2643
         * Whether Stripe automatically declines charges with an incorrect ZIP or postal code. This
2644
         * setting only applies when a ZIP or postal code is provided and they fail bank
2645
         * verification.
2646
         */
2647
        @SerializedName("avs_failure")
2648
        Boolean avsFailure;
2649

2650
        /**
2651
         * Whether Stripe automatically declines charges with an incorrect CVC. This setting only
2652
         * applies when a CVC is provided and it fails bank verification.
2653
         */
2654
        @SerializedName("cvc_failure")
2655
        Boolean cvcFailure;
2656
      }
2657
    }
2658

2659
    /**
2660
     * For more details about Dashboard, please refer to the <a
2661
     * href="https://docs.stripe.com/api">API Reference.</a>
2662
     */
2663
    @Getter
2664
    @Setter
2665
    @EqualsAndHashCode(callSuper = false)
2666
    public static class Dashboard extends StripeObject {
1✔
2667
      /**
2668
       * The display name for this account. This is used on the Stripe Dashboard to differentiate
2669
       * between accounts.
2670
       */
2671
      @SerializedName("display_name")
2672
      String displayName;
2673

2674
      /**
2675
       * The timezone used in the Stripe Dashboard for this account. A list of possible time zone
2676
       * values is maintained at the <a href="http://www.iana.org/time-zones">IANA Time Zone
2677
       * Database</a>.
2678
       */
2679
      @SerializedName("timezone")
2680
      String timezone;
2681
    }
2682

2683
    /**
2684
     * For more details about Invoices, please refer to the <a
2685
     * href="https://docs.stripe.com/api">API Reference.</a>
2686
     */
2687
    @Getter
2688
    @Setter
2689
    @EqualsAndHashCode(callSuper = false)
2690
    public static class Invoices extends StripeObject {
1✔
2691
      /**
2692
       * The list of default Account Tax IDs to automatically include on invoices. Account Tax IDs
2693
       * get added when an invoice is finalized.
2694
       */
2695
      @SerializedName("default_account_tax_ids")
2696
      List<ExpandableField<TaxId>> defaultAccountTaxIds;
2697

2698
      /** Get IDs of expandable {@code defaultAccountTaxIds} object list. */
2699
      public List<String> getDefaultAccountTaxIds() {
2700
        return (this.defaultAccountTaxIds != null)
×
2701
            ? this.defaultAccountTaxIds.stream().map(x -> x.getId()).collect(Collectors.toList())
×
2702
            : null;
×
2703
      }
2704

2705
      public void setDefaultAccountTaxIds(List<String> ids) {
2706
        if (ids == null) {
×
2707
          this.defaultAccountTaxIds = null;
×
2708
          return;
×
2709
        }
2710
        if (this.defaultAccountTaxIds != null
×
2711
            && this.defaultAccountTaxIds.stream()
×
2712
                .map(x -> x.getId())
×
2713
                .collect(Collectors.toList())
×
2714
                .equals(ids)) {
×
2715
          // noop if the ids are equal to what are already present
2716
          return;
×
2717
        }
2718
        this.defaultAccountTaxIds =
×
2719
            (ids != null)
×
2720
                ? ids.stream()
×
2721
                    .map(id -> new ExpandableField<TaxId>(id, null))
×
2722
                    .collect(Collectors.toList())
×
2723
                : null;
×
2724
      }
×
2725

2726
      /** Get expanded {@code defaultAccountTaxIds}. */
2727
      public List<TaxId> getDefaultAccountTaxIdObjects() {
2728
        return (this.defaultAccountTaxIds != null)
×
2729
            ? this.defaultAccountTaxIds.stream()
×
2730
                .map(x -> x.getExpanded())
×
2731
                .collect(Collectors.toList())
×
2732
            : null;
×
2733
      }
2734

2735
      public void setDefaultAccountTaxIdObjects(List<TaxId> objs) {
2736
        this.defaultAccountTaxIds =
×
2737
            objs != null
×
2738
                ? objs.stream()
×
2739
                    .map(x -> new ExpandableField<TaxId>(x.getId(), x))
×
2740
                    .collect(Collectors.toList())
×
2741
                : null;
×
2742
      }
×
2743
    }
2744

2745
    /**
2746
     * For more details about Payments, please refer to the <a
2747
     * href="https://docs.stripe.com/api">API Reference.</a>
2748
     */
2749
    @Getter
2750
    @Setter
2751
    @EqualsAndHashCode(callSuper = false)
2752
    public static class Payments extends StripeObject {
1✔
2753
      /**
2754
       * The default text that appears on credit card statements when a charge is made. This field
2755
       * prefixes any dynamic {@code statement_descriptor} specified on the charge.
2756
       */
2757
      @SerializedName("statement_descriptor")
2758
      String statementDescriptor;
2759

2760
      /**
2761
       * The Kana variation of {@code statement_descriptor} used for charges in Japan. Japanese
2762
       * statement descriptors have <a
2763
       * href="https://docs.stripe.com/get-started/account/statement-descriptors#set-japanese-statement-descriptors">special
2764
       * requirements</a>.
2765
       */
2766
      @SerializedName("statement_descriptor_kana")
2767
      String statementDescriptorKana;
2768

2769
      /**
2770
       * The Kanji variation of {@code statement_descriptor} used for charges in Japan. Japanese
2771
       * statement descriptors have <a
2772
       * href="https://docs.stripe.com/get-started/account/statement-descriptors#set-japanese-statement-descriptors">special
2773
       * requirements</a>.
2774
       */
2775
      @SerializedName("statement_descriptor_kanji")
2776
      String statementDescriptorKanji;
2777

2778
      /**
2779
       * The Kana variation of {@code statement_descriptor_prefix} used for card charges in Japan.
2780
       * Japanese statement descriptors have <a
2781
       * href="https://docs.stripe.com/get-started/account/statement-descriptors#set-japanese-statement-descriptors">special
2782
       * requirements</a>.
2783
       */
2784
      @SerializedName("statement_descriptor_prefix_kana")
2785
      String statementDescriptorPrefixKana;
2786

2787
      /**
2788
       * The Kanji variation of {@code statement_descriptor_prefix} used for card charges in Japan.
2789
       * Japanese statement descriptors have <a
2790
       * href="https://docs.stripe.com/get-started/account/statement-descriptors#set-japanese-statement-descriptors">special
2791
       * requirements</a>.
2792
       */
2793
      @SerializedName("statement_descriptor_prefix_kanji")
2794
      String statementDescriptorPrefixKanji;
2795
    }
2796

2797
    /**
2798
     * For more details about Payouts, please refer to the <a href="https://docs.stripe.com/api">API
2799
     * Reference.</a>
2800
     */
2801
    @Getter
2802
    @Setter
2803
    @EqualsAndHashCode(callSuper = false)
2804
    public static class Payouts extends StripeObject {
1✔
2805
      /**
2806
       * A Boolean indicating if Stripe should try to reclaim negative balances from an attached
2807
       * bank account. See <a href="https://stripe.com/connect/account-balances">Understanding
2808
       * Connect account balances</a> for details. The default value is {@code false} when <a
2809
       * href="https://stripe.com/api/accounts/object#account_object-controller-requirement_collection">controller.requirement_collection</a>
2810
       * is {@code application}, which includes Custom accounts, otherwise {@code true}.
2811
       */
2812
      @SerializedName("debit_negative_balances")
2813
      Boolean debitNegativeBalances;
2814

2815
      @SerializedName("schedule")
2816
      Schedule schedule;
2817

2818
      /**
2819
       * The text that appears on the bank account statement for payouts. If not set, this defaults
2820
       * to the platform's bank descriptor as set in the Dashboard.
2821
       */
2822
      @SerializedName("statement_descriptor")
2823
      String statementDescriptor;
2824

2825
      /**
2826
       * For more details about Schedule, please refer to the <a
2827
       * href="https://docs.stripe.com/api">API Reference.</a>
2828
       */
2829
      @Getter
2830
      @Setter
2831
      @EqualsAndHashCode(callSuper = false)
2832
      public static class Schedule extends StripeObject {
1✔
2833
        /** The number of days charges for the account will be held before being paid out. */
2834
        @SerializedName("delay_days")
2835
        Long delayDays;
2836

2837
        /**
2838
         * How frequently funds will be paid out. One of {@code manual} (payouts only created via
2839
         * API call), {@code daily}, {@code weekly}, or {@code monthly}.
2840
         */
2841
        @SerializedName("interval")
2842
        String interval;
2843

2844
        /**
2845
         * The day of the month funds will be paid out. Only shown if {@code interval} is monthly.
2846
         * Payouts scheduled between the 29th and 31st of the month are sent on the last day of
2847
         * shorter months.
2848
         */
2849
        @SerializedName("monthly_anchor")
2850
        Long monthlyAnchor;
2851

2852
        /**
2853
         * The day of the week funds will be paid out, of the style 'monday', 'tuesday', etc. Only
2854
         * shown if {@code interval} is weekly.
2855
         */
2856
        @SerializedName("weekly_anchor")
2857
        String weeklyAnchor;
2858
      }
2859
    }
2860

2861
    /**
2862
     * For more details about SepaDebitPayments, please refer to the <a
2863
     * href="https://docs.stripe.com/api">API Reference.</a>
2864
     */
2865
    @Getter
2866
    @Setter
2867
    @EqualsAndHashCode(callSuper = false)
2868
    public static class SepaDebitPayments extends StripeObject {
1✔
2869
      /** SEPA creditor identifier that identifies the company making the payment. */
2870
      @SerializedName("creditor_id")
2871
      String creditorId;
2872
    }
2873

2874
    /**
2875
     * For more details about TaxForms, please refer to the <a
2876
     * href="https://docs.stripe.com/api">API Reference.</a>
2877
     */
2878
    @Getter
2879
    @Setter
2880
    @EqualsAndHashCode(callSuper = false)
2881
    public static class TaxForms extends StripeObject {
×
2882
      /** Whether the account opted out of receiving their tax forms by postal delivery. */
2883
      @SerializedName("consented_to_paperless_delivery")
2884
      Boolean consentedToPaperlessDelivery;
2885
    }
2886

2887
    /**
2888
     * For more details about Treasury, please refer to the <a
2889
     * href="https://docs.stripe.com/api">API Reference.</a>
2890
     */
2891
    @Getter
2892
    @Setter
2893
    @EqualsAndHashCode(callSuper = false)
2894
    public static class Treasury extends StripeObject {
×
2895
      @SerializedName("tos_acceptance")
2896
      TosAcceptance tosAcceptance;
2897

2898
      /**
2899
       * For more details about TosAcceptance, please refer to the <a
2900
       * href="https://docs.stripe.com/api">API Reference.</a>
2901
       */
2902
      @Getter
2903
      @Setter
2904
      @EqualsAndHashCode(callSuper = false)
2905
      public static class TosAcceptance extends StripeObject {
×
2906
        /**
2907
         * The Unix timestamp marking when the account representative accepted the service
2908
         * agreement.
2909
         */
2910
        @SerializedName("date")
2911
        Long date;
2912

2913
        /** The IP address from which the account representative accepted the service agreement. */
2914
        @SerializedName("ip")
2915
        String ip;
2916

2917
        /**
2918
         * The user agent of the browser from which the account representative accepted the service
2919
         * agreement.
2920
         */
2921
        @SerializedName("user_agent")
2922
        String userAgent;
2923
      }
2924
    }
2925
  }
2926

2927
  /**
2928
   * For more details about TosAcceptance, please refer to the <a
2929
   * href="https://docs.stripe.com/api">API Reference.</a>
2930
   */
2931
  @Getter
2932
  @Setter
2933
  @EqualsAndHashCode(callSuper = false)
2934
  public static class TosAcceptance extends StripeObject {
1✔
2935
    /**
2936
     * The Unix timestamp marking when the account representative accepted their service agreement.
2937
     */
2938
    @SerializedName("date")
2939
    Long date;
2940

2941
    /** The IP address from which the account representative accepted their service agreement. */
2942
    @SerializedName("ip")
2943
    String ip;
2944

2945
    /** The user's service agreement type. */
2946
    @SerializedName("service_agreement")
2947
    String serviceAgreement;
2948

2949
    /**
2950
     * The user agent of the browser from which the account representative accepted their service
2951
     * agreement.
2952
     */
2953
    @SerializedName("user_agent")
2954
    String userAgent;
2955
  }
2956

2957
  @Override
2958
  public void setResponseGetter(StripeResponseGetter responseGetter) {
2959
    super.setResponseGetter(responseGetter);
1✔
2960
    trySetResponseGetter(businessProfile, responseGetter);
1✔
2961
    trySetResponseGetter(capabilities, responseGetter);
1✔
2962
    trySetResponseGetter(company, responseGetter);
1✔
2963
    trySetResponseGetter(controller, responseGetter);
1✔
2964
    trySetResponseGetter(externalAccounts, responseGetter);
1✔
2965
    trySetResponseGetter(futureRequirements, responseGetter);
1✔
2966
    trySetResponseGetter(groups, responseGetter);
1✔
2967
    trySetResponseGetter(individual, responseGetter);
1✔
2968
    trySetResponseGetter(requirements, responseGetter);
1✔
2969
    trySetResponseGetter(riskControls, responseGetter);
1✔
2970
    trySetResponseGetter(settings, responseGetter);
1✔
2971
    trySetResponseGetter(tosAcceptance, responseGetter);
1✔
2972
  }
1✔
2973
}
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2025 Coveralls, Inc