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

stripe / stripe-java / #16599

29 Oct 2024 11:04PM UTC coverage: 12.519% (-0.1%) from 12.62%
#16599

push

github

web-flow
Merge pull request #1914 from stripe/latest-codegen-beta

Update generated code for beta

40 of 1580 new or added lines in 51 files covered. (2.53%)

19 existing lines in 15 files now uncovered.

18843 of 150513 relevant lines covered (12.52%)

0.13 hits per line

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

55.61
/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 Bacs Direct Debits payments capability of the account, or whether the
919
     * account can directly process Bacs Direct Debits charges.
920
     *
921
     * <p>One of {@code active}, {@code inactive}, or {@code pending}.
922
     */
923
    @SerializedName("bacs_debit_payments")
924
    String bacsDebitPayments;
925

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

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

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

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

962
    /**
963
     * The status of the card issuing capability of the account, or whether you can use Issuing to
964
     * distribute funds on cards
965
     *
966
     * <p>One of {@code active}, {@code inactive}, or {@code pending}.
967
     */
968
    @SerializedName("card_issuing")
969
    String cardIssuing;
970

971
    /**
972
     * The status of the card payments capability of the account, or whether the account can
973
     * directly process credit and debit card charges.
974
     *
975
     * <p>One of {@code active}, {@code inactive}, or {@code pending}.
976
     */
977
    @SerializedName("card_payments")
978
    String cardPayments;
979

980
    /**
981
     * The status of the Cartes Bancaires payments capability of the account, or whether the account
982
     * can directly process Cartes Bancaires card charges in EUR currency.
983
     *
984
     * <p>One of {@code active}, {@code inactive}, or {@code pending}.
985
     */
986
    @SerializedName("cartes_bancaires_payments")
987
    String cartesBancairesPayments;
988

989
    /**
990
     * The status of the Cash App Pay capability of the account, or whether the account can directly
991
     * process Cash App Pay payments.
992
     *
993
     * <p>One of {@code active}, {@code inactive}, or {@code pending}.
994
     */
995
    @SerializedName("cashapp_payments")
996
    String cashappPayments;
997

998
    /**
999
     * The status of the EPS payments capability of the account, or whether the account can directly
1000
     * process EPS charges.
1001
     *
1002
     * <p>One of {@code active}, {@code inactive}, or {@code pending}.
1003
     */
1004
    @SerializedName("eps_payments")
1005
    String epsPayments;
1006

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

1016
    /**
1017
     * The status of the GB customer_balance payments (GBP currency) capability of the account, or
1018
     * whether the account can directly process GB customer_balance charges.
1019
     *
1020
     * <p>One of {@code active}, {@code inactive}, or {@code pending}.
1021
     */
1022
    @SerializedName("gb_bank_transfer_payments")
1023
    String gbBankTransferPayments;
1024

1025
    /**
1026
     * The status of the giropay payments capability of the account, or whether the account can
1027
     * directly process giropay charges.
1028
     *
1029
     * <p>One of {@code active}, {@code inactive}, or {@code pending}.
1030
     */
1031
    @SerializedName("giropay_payments")
1032
    String giropayPayments;
1033

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

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

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

1061
    /**
1062
     * The status of Bank BCA onboarding of the account.
1063
     *
1064
     * <p>One of {@code active}, {@code inactive}, or {@code pending}.
1065
     */
1066
    @SerializedName("id_bank_transfer_payments_bca")
1067
    String idBankTransferPaymentsBca;
1068

1069
    /**
1070
     * The status of the iDEAL payments capability of the account, or whether the account can
1071
     * directly process iDEAL charges.
1072
     *
1073
     * <p>One of {@code active}, {@code inactive}, or {@code pending}.
1074
     */
1075
    @SerializedName("ideal_payments")
1076
    String idealPayments;
1077

1078
    /**
1079
     * The status of the india_international_payments capability of the account, or whether the
1080
     * account can process international charges (non INR) in India.
1081
     *
1082
     * <p>One of {@code active}, {@code inactive}, or {@code pending}.
1083
     */
1084
    @SerializedName("india_international_payments")
1085
    String indiaInternationalPayments;
1086

1087
    /**
1088
     * The status of the JCB payments capability of the account, or whether the account (Japan only)
1089
     * can directly process JCB credit card charges in JPY currency.
1090
     *
1091
     * <p>One of {@code active}, {@code inactive}, or {@code pending}.
1092
     */
1093
    @SerializedName("jcb_payments")
1094
    String jcbPayments;
1095

1096
    /**
1097
     * The status of the Japanese customer_balance payments (JPY currency) capability of the
1098
     * account, or whether the account can directly process Japanese customer_balance charges.
1099
     *
1100
     * <p>One of {@code active}, {@code inactive}, or {@code pending}.
1101
     */
1102
    @SerializedName("jp_bank_transfer_payments")
1103
    String jpBankTransferPayments;
1104

1105
    /**
1106
     * The status of the KakaoPay capability of the account, or whether the account can directly
1107
     * process KakaoPay payments.
1108
     *
1109
     * <p>One of {@code active}, {@code inactive}, or {@code pending}.
1110
     */
1111
    @SerializedName("kakao_pay_payments")
1112
    String kakaoPayPayments;
1113

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

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

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

1141
    /**
1142
     * The status of the legacy payments capability of the account.
1143
     *
1144
     * <p>One of {@code active}, {@code inactive}, or {@code pending}.
1145
     */
1146
    @SerializedName("legacy_payments")
1147
    String legacyPayments;
1148

1149
    /**
1150
     * The status of the link_payments capability of the account, or whether the account can
1151
     * directly process Link charges.
1152
     *
1153
     * <p>One of {@code active}, {@code inactive}, or {@code pending}.
1154
     */
1155
    @SerializedName("link_payments")
1156
    String linkPayments;
1157

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

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

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

1185
    /**
1186
     * The status of the Mexican customer_balance payments (MXN currency) capability of the account,
1187
     * or whether the account can directly process Mexican customer_balance charges.
1188
     *
1189
     * <p>One of {@code active}, {@code inactive}, or {@code pending}.
1190
     */
1191
    @SerializedName("mx_bank_transfer_payments")
1192
    String mxBankTransferPayments;
1193

1194
    /**
1195
     * The status of the NaverPay capability of the account, or whether the account can directly
1196
     * process NaverPay payments.
1197
     *
1198
     * <p>One of {@code active}, {@code inactive}, or {@code pending}.
1199
     */
1200
    @SerializedName("naver_pay_payments")
1201
    String naverPayPayments;
1202

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

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

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

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

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

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

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

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

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

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

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

1302
    /**
1303
     * The status of the SEPA customer_balance payments (EUR currency) capability of the account, or
1304
     * whether the account can directly process SEPA customer_balance charges.
1305
     *
1306
     * <p>One of {@code active}, {@code inactive}, or {@code pending}.
1307
     */
1308
    @SerializedName("sepa_bank_transfer_payments")
1309
    String sepaBankTransferPayments;
1310

1311
    /**
1312
     * The status of the SEPA Direct Debits payments capability of the account, or whether the
1313
     * account can directly process SEPA Direct Debits charges.
1314
     *
1315
     * <p>One of {@code active}, {@code inactive}, or {@code pending}.
1316
     */
1317
    @SerializedName("sepa_debit_payments")
1318
    String sepaDebitPayments;
1319

1320
    /**
1321
     * The status of the ShopeePay capability of the account, or whether the account can directly
1322
     * process ShopeePay payments.
1323
     *
1324
     * <p>One of {@code active}, {@code inactive}, or {@code pending}.
1325
     */
1326
    @SerializedName("shopeepay_payments")
1327
    String shopeepayPayments;
1328

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

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

1347
    /**
1348
     * The status of the tax reporting 1099-K (US) capability of the account.
1349
     *
1350
     * <p>One of {@code active}, {@code inactive}, or {@code pending}.
1351
     */
1352
    @SerializedName("tax_reporting_us_1099_k")
1353
    String taxReportingUs1099K;
1354

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

1363
    /**
1364
     * The status of the transfers capability of the account, or whether your platform can transfer
1365
     * funds to the account.
1366
     *
1367
     * <p>One of {@code active}, {@code inactive}, or {@code pending}.
1368
     */
1369
    @SerializedName("transfers")
1370
    String transfers;
1371

1372
    /**
1373
     * The status of the banking capability, or whether the account can have bank accounts.
1374
     *
1375
     * <p>One of {@code active}, {@code inactive}, or {@code pending}.
1376
     */
1377
    @SerializedName("treasury")
1378
    String treasury;
1379

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

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

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

1404
    /**
1405
     * The status of the TWINT capability of the account, or whether the account can directly
1406
     * process TWINT charges.
1407
     *
1408
     * <p>One of {@code active}, {@code inactive}, or {@code pending}.
1409
     */
1410
    @SerializedName("twint_payments")
1411
    String twintPayments;
1412

1413
    /**
1414
     * The status of the US bank account ACH payments capability of the account, or whether the
1415
     * account can directly process US bank account charges.
1416
     *
1417
     * <p>One of {@code active}, {@code inactive}, or {@code pending}.
1418
     */
1419
    @SerializedName("us_bank_account_ach_payments")
1420
    String usBankAccountAchPayments;
1421

1422
    /**
1423
     * The status of the US customer_balance payments (USD currency) capability of the account, or
1424
     * whether the account can directly process US customer_balance charges.
1425
     *
1426
     * <p>One of {@code active}, {@code inactive}, or {@code pending}.
1427
     */
1428
    @SerializedName("us_bank_transfer_payments")
1429
    String usBankTransferPayments;
1430

1431
    /**
1432
     * The status of the Zip capability of the account, or whether the account can directly process
1433
     * Zip charges.
1434
     *
1435
     * <p>One of {@code active}, {@code inactive}, or {@code pending}.
1436
     */
1437
    @SerializedName("zip_payments")
1438
    String zipPayments;
1439
  }
1440

1441
  /**
1442
   * For more details about Company, please refer to the <a href="https://docs.stripe.com/api">API
1443
   * Reference.</a>
1444
   */
1445
  @Getter
1446
  @Setter
1447
  @EqualsAndHashCode(callSuper = false)
1448
  public static class Company extends StripeObject {
×
1449
    @SerializedName("address")
1450
    Address address;
1451

1452
    /** The Kana variation of the company's primary address (Japan only). */
1453
    @SerializedName("address_kana")
1454
    AddressKana addressKana;
1455

1456
    /** The Kanji variation of the company's primary address (Japan only). */
1457
    @SerializedName("address_kanji")
1458
    AddressKanji addressKanji;
1459

1460
    /**
1461
     * Whether the company's directors have been provided. This Boolean will be {@code true} if
1462
     * you've manually indicated that all directors are provided via <a
1463
     * href="https://stripe.com/docs/api/accounts/update#update_account-company-directors_provided">the
1464
     * {@code directors_provided} parameter</a>.
1465
     */
1466
    @SerializedName("directors_provided")
1467
    Boolean directorsProvided;
1468

1469
    /**
1470
     * Whether the company's executives have been provided. This Boolean will be {@code true} if
1471
     * you've manually indicated that all executives are provided via <a
1472
     * href="https://stripe.com/docs/api/accounts/update#update_account-company-executives_provided">the
1473
     * {@code executives_provided} parameter</a>, or if Stripe determined that sufficient executives
1474
     * were provided.
1475
     */
1476
    @SerializedName("executives_provided")
1477
    Boolean executivesProvided;
1478

1479
    /**
1480
     * The export license ID number of the company, also referred as Import Export Code (India
1481
     * only).
1482
     */
1483
    @SerializedName("export_license_id")
1484
    String exportLicenseId;
1485

1486
    /** The purpose code to use for export transactions (India only). */
1487
    @SerializedName("export_purpose_code")
1488
    String exportPurposeCode;
1489

1490
    /** The company's legal name. */
1491
    @SerializedName("name")
1492
    String name;
1493

1494
    /** The Kana variation of the company's legal name (Japan only). */
1495
    @SerializedName("name_kana")
1496
    String nameKana;
1497

1498
    /** The Kanji variation of the company's legal name (Japan only). */
1499
    @SerializedName("name_kanji")
1500
    String nameKanji;
1501

1502
    /**
1503
     * Whether the company's owners have been provided. This Boolean will be {@code true} if you've
1504
     * manually indicated that all owners are provided via <a
1505
     * href="https://stripe.com/docs/api/accounts/update#update_account-company-owners_provided">the
1506
     * {@code owners_provided} parameter</a>, or if Stripe determined that sufficient owners were
1507
     * provided. Stripe determines ownership requirements using both the number of owners provided
1508
     * and their total percent ownership (calculated by adding the {@code percent_ownership} of each
1509
     * owner together).
1510
     */
1511
    @SerializedName("owners_provided")
1512
    Boolean ownersProvided;
1513

1514
    /**
1515
     * This hash is used to attest that the beneficial owner information provided to Stripe is both
1516
     * current and correct.
1517
     */
1518
    @SerializedName("ownership_declaration")
1519
    OwnershipDeclaration ownershipDeclaration;
1520

1521
    /** The company's phone number (used for verification). */
1522
    @SerializedName("phone")
1523
    String phone;
1524

1525
    /**
1526
     * The category identifying the legal structure of the company or legal entity. See <a
1527
     * href="https://stripe.com/docs/connect/identity-verification#business-structure">Business
1528
     * structure</a> for more details.
1529
     *
1530
     * <p>One of {@code free_zone_establishment}, {@code free_zone_llc}, {@code
1531
     * government_instrumentality}, {@code governmental_unit}, {@code incorporated_non_profit},
1532
     * {@code incorporated_partnership}, {@code limited_liability_partnership}, {@code llc}, {@code
1533
     * multi_member_llc}, {@code private_company}, {@code private_corporation}, {@code
1534
     * private_partnership}, {@code public_company}, {@code public_corporation}, {@code
1535
     * public_partnership}, {@code registered_charity}, {@code single_member_llc}, {@code
1536
     * sole_establishment}, {@code sole_proprietorship}, {@code
1537
     * tax_exempt_government_instrumentality}, {@code unincorporated_association}, {@code
1538
     * unincorporated_non_profit}, or {@code unincorporated_partnership}.
1539
     */
1540
    @SerializedName("structure")
1541
    String structure;
1542

1543
    /** Whether the company's business ID number was provided. */
1544
    @SerializedName("tax_id_provided")
1545
    Boolean taxIdProvided;
1546

1547
    /**
1548
     * The jurisdiction in which the {@code tax_id} is registered (Germany-based companies only).
1549
     */
1550
    @SerializedName("tax_id_registrar")
1551
    String taxIdRegistrar;
1552

1553
    /** Whether the company's business VAT number was provided. */
1554
    @SerializedName("vat_id_provided")
1555
    Boolean vatIdProvided;
1556

1557
    /** Information on the verification state of the company. */
1558
    @SerializedName("verification")
1559
    Verification verification;
1560

1561
    /**
1562
     * For more details about AddressKana, please refer to the <a
1563
     * href="https://docs.stripe.com/api">API Reference.</a>
1564
     */
1565
    @Getter
1566
    @Setter
1567
    @EqualsAndHashCode(callSuper = false)
1568
    public static class AddressKana extends StripeObject {
×
1569
      /** City/Ward. */
1570
      @SerializedName("city")
1571
      String city;
1572

1573
      /**
1574
       * Two-letter country code (<a href="https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2">ISO
1575
       * 3166-1 alpha-2</a>).
1576
       */
1577
      @SerializedName("country")
1578
      String country;
1579

1580
      /** Block/Building number. */
1581
      @SerializedName("line1")
1582
      String line1;
1583

1584
      /** Building details. */
1585
      @SerializedName("line2")
1586
      String line2;
1587

1588
      /** ZIP or postal code. */
1589
      @SerializedName("postal_code")
1590
      String postalCode;
1591

1592
      /** Prefecture. */
1593
      @SerializedName("state")
1594
      String state;
1595

1596
      /** Town/cho-me. */
1597
      @SerializedName("town")
1598
      String town;
1599
    }
1600

1601
    /**
1602
     * For more details about AddressKanji, please refer to the <a
1603
     * href="https://docs.stripe.com/api">API Reference.</a>
1604
     */
1605
    @Getter
1606
    @Setter
1607
    @EqualsAndHashCode(callSuper = false)
1608
    public static class AddressKanji extends StripeObject {
×
1609
      /** City/Ward. */
1610
      @SerializedName("city")
1611
      String city;
1612

1613
      /**
1614
       * Two-letter country code (<a href="https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2">ISO
1615
       * 3166-1 alpha-2</a>).
1616
       */
1617
      @SerializedName("country")
1618
      String country;
1619

1620
      /** Block/Building number. */
1621
      @SerializedName("line1")
1622
      String line1;
1623

1624
      /** Building details. */
1625
      @SerializedName("line2")
1626
      String line2;
1627

1628
      /** ZIP or postal code. */
1629
      @SerializedName("postal_code")
1630
      String postalCode;
1631

1632
      /** Prefecture. */
1633
      @SerializedName("state")
1634
      String state;
1635

1636
      /** Town/cho-me. */
1637
      @SerializedName("town")
1638
      String town;
1639
    }
1640

1641
    /**
1642
     * For more details about OwnershipDeclaration, please refer to the <a
1643
     * href="https://docs.stripe.com/api">API Reference.</a>
1644
     */
1645
    @Getter
1646
    @Setter
1647
    @EqualsAndHashCode(callSuper = false)
1648
    public static class OwnershipDeclaration extends StripeObject {
×
1649
      /** The Unix timestamp marking when the beneficial owner attestation was made. */
1650
      @SerializedName("date")
1651
      Long date;
1652

1653
      /** The IP address from which the beneficial owner attestation was made. */
1654
      @SerializedName("ip")
1655
      String ip;
1656

1657
      /** The user-agent string from the browser where the beneficial owner attestation was made. */
1658
      @SerializedName("user_agent")
1659
      String userAgent;
1660
    }
1661

1662
    /**
1663
     * For more details about Verification, please refer to the <a
1664
     * href="https://docs.stripe.com/api">API Reference.</a>
1665
     */
1666
    @Getter
1667
    @Setter
1668
    @EqualsAndHashCode(callSuper = false)
1669
    public static class Verification extends StripeObject {
×
1670
      @SerializedName("document")
1671
      Document document;
1672

1673
      /**
1674
       * For more details about Document, please refer to the <a
1675
       * href="https://docs.stripe.com/api">API Reference.</a>
1676
       */
1677
      @Getter
1678
      @Setter
1679
      @EqualsAndHashCode(callSuper = false)
1680
      public static class Document extends StripeObject {
×
1681
        /**
1682
         * The back of a document returned by a <a
1683
         * href="https://stripe.com/docs/api#create_file">file upload</a> with a {@code purpose}
1684
         * value of {@code additional_verification}.
1685
         */
1686
        @SerializedName("back")
1687
        @Getter(lombok.AccessLevel.NONE)
1688
        @Setter(lombok.AccessLevel.NONE)
1689
        ExpandableField<File> back;
1690

1691
        /** A user-displayable string describing the verification state of this document. */
1692
        @SerializedName("details")
1693
        String details;
1694

1695
        /**
1696
         * One of {@code document_corrupt}, {@code document_expired}, {@code document_failed_copy},
1697
         * {@code document_failed_greyscale}, {@code document_failed_other}, {@code
1698
         * document_failed_test_mode}, {@code document_fraudulent}, {@code document_incomplete},
1699
         * {@code document_invalid}, {@code document_manipulated}, {@code document_not_readable},
1700
         * {@code document_not_uploaded}, {@code document_type_not_supported}, or {@code
1701
         * document_too_large}. A machine-readable code specifying the verification state for this
1702
         * document.
1703
         */
1704
        @SerializedName("details_code")
1705
        String detailsCode;
1706

1707
        /**
1708
         * The front of a document returned by a <a
1709
         * href="https://stripe.com/docs/api#create_file">file upload</a> with a {@code purpose}
1710
         * value of {@code additional_verification}.
1711
         */
1712
        @SerializedName("front")
1713
        @Getter(lombok.AccessLevel.NONE)
1714
        @Setter(lombok.AccessLevel.NONE)
1715
        ExpandableField<File> front;
1716

1717
        /** Get ID of expandable {@code back} object. */
1718
        public String getBack() {
1719
          return (this.back != null) ? this.back.getId() : null;
×
1720
        }
1721

1722
        public void setBack(String id) {
1723
          this.back = ApiResource.setExpandableFieldId(id, this.back);
×
1724
        }
×
1725

1726
        /** Get expanded {@code back}. */
1727
        public File getBackObject() {
1728
          return (this.back != null) ? this.back.getExpanded() : null;
×
1729
        }
1730

1731
        public void setBackObject(File expandableObject) {
1732
          this.back = new ExpandableField<File>(expandableObject.getId(), expandableObject);
×
1733
        }
×
1734

1735
        /** Get ID of expandable {@code front} object. */
1736
        public String getFront() {
1737
          return (this.front != null) ? this.front.getId() : null;
×
1738
        }
1739

1740
        public void setFront(String id) {
1741
          this.front = ApiResource.setExpandableFieldId(id, this.front);
×
1742
        }
×
1743

1744
        /** Get expanded {@code front}. */
1745
        public File getFrontObject() {
1746
          return (this.front != null) ? this.front.getExpanded() : null;
×
1747
        }
1748

1749
        public void setFrontObject(File expandableObject) {
1750
          this.front = new ExpandableField<File>(expandableObject.getId(), expandableObject);
×
1751
        }
×
1752
      }
1753
    }
1754
  }
1755

1756
  /**
1757
   * For more details about Controller, please refer to the <a
1758
   * href="https://docs.stripe.com/api">API Reference.</a>
1759
   */
1760
  @Getter
1761
  @Setter
1762
  @EqualsAndHashCode(callSuper = false)
1763
  public static class Controller extends StripeObject {
1✔
1764
    @SerializedName("application")
1765
    Application application;
1766

1767
    @SerializedName("dashboard")
1768
    Dashboard dashboard;
1769

1770
    @SerializedName("fees")
1771
    Fees fees;
1772

1773
    /**
1774
     * {@code true} if the Connect application retrieving the resource controls the account and can
1775
     * therefore exercise <a
1776
     * href="https://stripe.com/docs/connect/platform-controls-for-standard-accounts">platform
1777
     * controls</a>. Otherwise, this field is null.
1778
     */
1779
    @SerializedName("is_controller")
1780
    Boolean isController;
1781

1782
    @SerializedName("losses")
1783
    Losses losses;
1784

1785
    /**
1786
     * A value indicating responsibility for collecting requirements on this account. Only returned
1787
     * when the Connect application retrieving the resource controls the account.
1788
     *
1789
     * <p>One of {@code application}, or {@code stripe}.
1790
     */
1791
    @SerializedName("requirement_collection")
1792
    String requirementCollection;
1793

1794
    @SerializedName("stripe_dashboard")
1795
    StripeDashboard stripeDashboard;
1796

1797
    /**
1798
     * The controller type. Can be {@code application}, if a Connect application controls the
1799
     * account, or {@code account}, if the account controls itself.
1800
     */
1801
    @SerializedName("type")
1802
    String type;
1803

1804
    /**
1805
     * For more details about Application, please refer to the <a
1806
     * href="https://docs.stripe.com/api">API Reference.</a>
1807
     */
1808
    @Getter
1809
    @Setter
1810
    @EqualsAndHashCode(callSuper = false)
1811
    public static class Application extends StripeObject {
×
1812
      /**
1813
       * {@code true} if the Connect application is responsible for negative balances and should
1814
       * manage credit and fraud risk on the account.
1815
       */
1816
      @SerializedName("loss_liable")
1817
      Boolean lossLiable;
1818

1819
      /** {@code true} if the Connect application is responsible for onboarding the account. */
1820
      @SerializedName("onboarding_owner")
1821
      Boolean onboardingOwner;
1822

1823
      /**
1824
       * {@code true} if the Connect application is responsible for paying Stripe fees on
1825
       * pricing-control eligible products.
1826
       */
1827
      @SerializedName("pricing_controls")
1828
      Boolean pricingControls;
1829
    }
1830

1831
    /**
1832
     * For more details about Dashboard, please refer to the <a
1833
     * href="https://docs.stripe.com/api">API Reference.</a>
1834
     */
1835
    @Getter
1836
    @Setter
1837
    @EqualsAndHashCode(callSuper = false)
1838
    public static class Dashboard extends StripeObject {
×
1839
      /**
1840
       * Whether this account has access to the full Stripe dashboard ({@code full}), to the Express
1841
       * dashboard ({@code express}), or to no dashboard ({@code none}).
1842
       *
1843
       * <p>One of {@code express}, {@code full}, or {@code none}.
1844
       */
1845
      @SerializedName("type")
1846
      String type;
1847
    }
1848

1849
    /**
1850
     * For more details about Fees, please refer to the <a href="https://docs.stripe.com/api">API
1851
     * Reference.</a>
1852
     */
1853
    @Getter
1854
    @Setter
1855
    @EqualsAndHashCode(callSuper = false)
1856
    public static class Fees extends StripeObject {
×
1857
      /**
1858
       * A value indicating the responsible payer of a bundle of Stripe fees for pricing-control
1859
       * eligible products on this account. Learn more about <a
1860
       * href="https://docs.stripe.com/connect/direct-charges-fee-payer-behavior">fee behavior on
1861
       * connected accounts</a>.
1862
       *
1863
       * <p>One of {@code account}, {@code application}, {@code application_custom}, {@code
1864
       * application_express}, or {@code application_unified_accounts_beta}.
1865
       */
1866
      @SerializedName("payer")
1867
      String payer;
1868
    }
1869

1870
    /**
1871
     * For more details about Losses, please refer to the <a href="https://docs.stripe.com/api">API
1872
     * Reference.</a>
1873
     */
1874
    @Getter
1875
    @Setter
1876
    @EqualsAndHashCode(callSuper = false)
1877
    public static class Losses extends StripeObject {
×
1878
      /**
1879
       * A value indicating who is liable when this account can't pay back negative balances from
1880
       * payments.
1881
       *
1882
       * <p>One of {@code application}, or {@code stripe}.
1883
       */
1884
      @SerializedName("payments")
1885
      String payments;
1886
    }
1887

1888
    /**
1889
     * For more details about StripeDashboard, please refer to the <a
1890
     * href="https://docs.stripe.com/api">API Reference.</a>
1891
     */
1892
    @Getter
1893
    @Setter
1894
    @EqualsAndHashCode(callSuper = false)
1895
    public static class StripeDashboard extends StripeObject {
×
1896
      /**
1897
       * A value indicating the Stripe dashboard this account has access to independent of the
1898
       * Connect application.
1899
       *
1900
       * <p>One of {@code express}, {@code full}, or {@code none}.
1901
       */
1902
      @SerializedName("type")
1903
      String type;
1904
    }
1905
  }
1906

1907
  /**
1908
   * For more details about FutureRequirements, please refer to the <a
1909
   * href="https://docs.stripe.com/api">API Reference.</a>
1910
   */
1911
  @Getter
1912
  @Setter
1913
  @EqualsAndHashCode(callSuper = false)
1914
  public static class FutureRequirements extends StripeObject {
1✔
1915
    /**
1916
     * Fields that are due and can be satisfied by providing the corresponding alternative fields
1917
     * instead.
1918
     */
1919
    @SerializedName("alternatives")
1920
    List<Account.FutureRequirements.Alternative> alternatives;
1921

1922
    /**
1923
     * Date on which {@code future_requirements} merges with the main {@code requirements} hash and
1924
     * {@code future_requirements} becomes empty. After the transition, {@code currently_due}
1925
     * requirements may immediately become {@code past_due}, but the account may also be given a
1926
     * grace period depending on its enablement state prior to transitioning.
1927
     */
1928
    @SerializedName("current_deadline")
1929
    Long currentDeadline;
1930

1931
    /**
1932
     * Fields that need to be collected to keep the account enabled. If not collected by {@code
1933
     * future_requirements[current_deadline]}, these fields will transition to the main {@code
1934
     * requirements} hash.
1935
     */
1936
    @SerializedName("currently_due")
1937
    List<String> currentlyDue;
1938

1939
    /** This is typed as a string for consistency with {@code requirements.disabled_reason}. */
1940
    @SerializedName("disabled_reason")
1941
    String disabledReason;
1942

1943
    /**
1944
     * Fields that are {@code currently_due} and need to be collected again because validation or
1945
     * verification failed.
1946
     */
1947
    @SerializedName("errors")
1948
    List<Account.FutureRequirements.Errors> errors;
1949

1950
    /**
1951
     * Fields that need to be collected assuming all volume thresholds are reached. As they become
1952
     * required, they appear in {@code currently_due} as well.
1953
     */
1954
    @SerializedName("eventually_due")
1955
    List<String> eventuallyDue;
1956

1957
    /**
1958
     * Fields that weren't collected by {@code requirements.current_deadline}. These fields need to
1959
     * be collected to enable the capability on the account. New fields will never appear here;
1960
     * {@code future_requirements.past_due} will always be a subset of {@code
1961
     * requirements.past_due}.
1962
     */
1963
    @SerializedName("past_due")
1964
    List<String> pastDue;
1965

1966
    /**
1967
     * Fields that might become required depending on the results of verification or review. It's an
1968
     * empty array unless an asynchronous verification is pending. If verification fails, these
1969
     * fields move to {@code eventually_due} or {@code currently_due}. Fields might appear in {@code
1970
     * eventually_due} or {@code currently_due} and in {@code pending_verification} if verification
1971
     * fails but another verification is still pending.
1972
     */
1973
    @SerializedName("pending_verification")
1974
    List<String> pendingVerification;
1975

1976
    /**
1977
     * For more details about Alternative, please refer to the <a
1978
     * href="https://docs.stripe.com/api">API Reference.</a>
1979
     */
1980
    @Getter
1981
    @Setter
1982
    @EqualsAndHashCode(callSuper = false)
1983
    public static class Alternative extends StripeObject {
×
1984
      /** Fields that can be provided to satisfy all fields in {@code original_fields_due}. */
1985
      @SerializedName("alternative_fields_due")
1986
      List<String> alternativeFieldsDue;
1987

1988
      /**
1989
       * Fields that are due and can be satisfied by providing all fields in {@code
1990
       * alternative_fields_due}.
1991
       */
1992
      @SerializedName("original_fields_due")
1993
      List<String> originalFieldsDue;
1994
    }
1995

1996
    /**
1997
     * For more details about Errors, please refer to the <a href="https://docs.stripe.com/api">API
1998
     * Reference.</a>
1999
     */
2000
    @Getter
2001
    @Setter
2002
    @EqualsAndHashCode(callSuper = false)
2003
    public static class Errors extends StripeObject {
×
2004
      /**
2005
       * The code for the type of error.
2006
       *
2007
       * <p>One of {@code invalid_address_city_state_postal_code}, {@code
2008
       * invalid_address_highway_contract_box}, {@code invalid_address_private_mailbox}, {@code
2009
       * invalid_business_profile_name}, {@code invalid_business_profile_name_denylisted}, {@code
2010
       * invalid_company_name_denylisted}, {@code invalid_dob_age_over_maximum}, {@code
2011
       * invalid_dob_age_under_18}, {@code invalid_dob_age_under_minimum}, {@code
2012
       * invalid_product_description_length}, {@code invalid_product_description_url_match}, {@code
2013
       * invalid_representative_country}, {@code invalid_statement_descriptor_business_mismatch},
2014
       * {@code invalid_statement_descriptor_denylisted}, {@code
2015
       * invalid_statement_descriptor_length}, {@code
2016
       * invalid_statement_descriptor_prefix_denylisted}, {@code
2017
       * invalid_statement_descriptor_prefix_mismatch}, {@code invalid_street_address}, {@code
2018
       * invalid_tax_id}, {@code invalid_tax_id_format}, {@code invalid_tos_acceptance}, {@code
2019
       * invalid_url_denylisted}, {@code invalid_url_format}, {@code invalid_url_length}, {@code
2020
       * invalid_url_web_presence_detected}, {@code
2021
       * invalid_url_website_business_information_mismatch}, {@code invalid_url_website_empty},
2022
       * {@code invalid_url_website_inaccessible}, {@code
2023
       * invalid_url_website_inaccessible_geoblocked}, {@code
2024
       * invalid_url_website_inaccessible_password_protected}, {@code
2025
       * invalid_url_website_incomplete}, {@code
2026
       * invalid_url_website_incomplete_cancellation_policy}, {@code
2027
       * invalid_url_website_incomplete_customer_service_details}, {@code
2028
       * invalid_url_website_incomplete_legal_restrictions}, {@code
2029
       * invalid_url_website_incomplete_refund_policy}, {@code
2030
       * invalid_url_website_incomplete_return_policy}, {@code
2031
       * invalid_url_website_incomplete_terms_and_conditions}, {@code
2032
       * invalid_url_website_incomplete_under_construction}, {@code invalid_url_website_other},
2033
       * {@code invalid_value_other}, {@code verification_directors_mismatch}, {@code
2034
       * verification_document_address_mismatch}, {@code verification_document_address_missing},
2035
       * {@code verification_document_corrupt}, {@code verification_document_country_not_supported},
2036
       * {@code verification_document_directors_mismatch}, {@code
2037
       * verification_document_dob_mismatch}, {@code verification_document_duplicate_type}, {@code
2038
       * verification_document_expired}, {@code verification_document_failed_copy}, {@code
2039
       * verification_document_failed_greyscale}, {@code verification_document_failed_other}, {@code
2040
       * verification_document_failed_test_mode}, {@code verification_document_fraudulent}, {@code
2041
       * verification_document_id_number_mismatch}, {@code verification_document_id_number_missing},
2042
       * {@code verification_document_incomplete}, {@code verification_document_invalid}, {@code
2043
       * verification_document_issue_or_expiry_date_missing}, {@code
2044
       * verification_document_manipulated}, {@code verification_document_missing_back}, {@code
2045
       * verification_document_missing_front}, {@code verification_document_name_mismatch}, {@code
2046
       * verification_document_name_missing}, {@code verification_document_nationality_mismatch},
2047
       * {@code verification_document_not_readable}, {@code verification_document_not_signed},
2048
       * {@code verification_document_not_uploaded}, {@code verification_document_photo_mismatch},
2049
       * {@code verification_document_too_large}, {@code verification_document_type_not_supported},
2050
       * {@code verification_extraneous_directors}, {@code verification_failed_address_match},
2051
       * {@code verification_failed_business_iec_number}, {@code
2052
       * verification_failed_document_match}, {@code verification_failed_id_number_match}, {@code
2053
       * verification_failed_keyed_identity}, {@code verification_failed_keyed_match}, {@code
2054
       * verification_failed_name_match}, {@code verification_failed_other}, {@code
2055
       * verification_failed_representative_authority}, {@code
2056
       * verification_failed_residential_address}, {@code verification_failed_tax_id_match}, {@code
2057
       * verification_failed_tax_id_not_issued}, {@code verification_missing_directors}, {@code
2058
       * verification_missing_executives}, {@code verification_missing_owners}, {@code
2059
       * verification_requires_additional_memorandum_of_associations}, {@code
2060
       * verification_requires_additional_proof_of_registration}, or {@code
2061
       * verification_supportability}.
2062
       */
2063
      @SerializedName("code")
2064
      String code;
2065

2066
      /**
2067
       * An informative message that indicates the error type and provides additional details about
2068
       * the error.
2069
       */
2070
      @SerializedName("reason")
2071
      String reason;
2072

2073
      /**
2074
       * The specific user onboarding requirement field (in the requirements hash) that needs to be
2075
       * resolved.
2076
       */
2077
      @SerializedName("requirement")
2078
      String requirement;
2079
    }
2080
  }
2081

2082
  /**
2083
   * For more details about Groups, please refer to the <a href="https://docs.stripe.com/api">API
2084
   * Reference.</a>
2085
   */
2086
  @Getter
2087
  @Setter
2088
  @EqualsAndHashCode(callSuper = false)
2089
  public static class Groups extends StripeObject {
×
2090
    /**
2091
     * The group the account is in to determine their payments pricing, and null if the account is
2092
     * on customized pricing. <a href="https://stripe.com/docs/connect/platform-pricing-tools">See
2093
     * the Platform pricing tool documentation</a> for details.
2094
     */
2095
    @SerializedName("payments_pricing")
2096
    String paymentsPricing;
2097
  }
2098

2099
  /**
2100
   * For more details about Requirements, please refer to the <a
2101
   * href="https://docs.stripe.com/api">API Reference.</a>
2102
   */
2103
  @Getter
2104
  @Setter
2105
  @EqualsAndHashCode(callSuper = false)
2106
  public static class Requirements extends StripeObject {
1✔
2107
    /**
2108
     * Fields that are due and can be satisfied by providing the corresponding alternative fields
2109
     * instead.
2110
     */
2111
    @SerializedName("alternatives")
2112
    List<Account.Requirements.Alternative> alternatives;
2113

2114
    /**
2115
     * Date by which the fields in {@code currently_due} must be collected to keep the account
2116
     * enabled. These fields may disable the account sooner if the next threshold is reached before
2117
     * they are collected.
2118
     */
2119
    @SerializedName("current_deadline")
2120
    Long currentDeadline;
2121

2122
    /**
2123
     * Fields that need to be collected to keep the account enabled. If not collected by {@code
2124
     * current_deadline}, these fields appear in {@code past_due} as well, and the account is
2125
     * disabled.
2126
     */
2127
    @SerializedName("currently_due")
2128
    List<String> currentlyDue;
2129

2130
    /**
2131
     * If the account is disabled, this string describes why. <a
2132
     * href="https://stripe.com/docs/connect/handling-api-verification">Learn more about handling
2133
     * verification issues</a>. Can be {@code action_required.requested_capabilities}, {@code
2134
     * requirements.past_due}, {@code requirements.pending_verification}, {@code listed}, {@code
2135
     * platform_paused}, {@code rejected.fraud}, {@code rejected.incomplete_verification}, {@code
2136
     * rejected.listed}, {@code rejected.other}, {@code rejected.terms_of_service}, {@code
2137
     * under_review}, or {@code other}.
2138
     */
2139
    @SerializedName("disabled_reason")
2140
    String disabledReason;
2141

2142
    /**
2143
     * Fields that are {@code currently_due} and need to be collected again because validation or
2144
     * verification failed.
2145
     */
2146
    @SerializedName("errors")
2147
    List<Account.Requirements.Errors> errors;
2148

2149
    /**
2150
     * Fields that need to be collected assuming all volume thresholds are reached. As they become
2151
     * required, they appear in {@code currently_due} as well, and {@code current_deadline} becomes
2152
     * set.
2153
     */
2154
    @SerializedName("eventually_due")
2155
    List<String> eventuallyDue;
2156

2157
    /**
2158
     * Fields that weren't collected by {@code current_deadline}. These fields need to be collected
2159
     * to enable the account.
2160
     */
2161
    @SerializedName("past_due")
2162
    List<String> pastDue;
2163

2164
    /**
2165
     * Fields that might become required depending on the results of verification or review. It's an
2166
     * empty array unless an asynchronous verification is pending. If verification fails, these
2167
     * fields move to {@code eventually_due}, {@code currently_due}, or {@code past_due}. Fields
2168
     * might appear in {@code eventually_due}, {@code currently_due}, or {@code past_due} and in
2169
     * {@code pending_verification} if verification fails but another verification is still pending.
2170
     */
2171
    @SerializedName("pending_verification")
2172
    List<String> pendingVerification;
2173

2174
    /**
2175
     * For more details about Alternative, please refer to the <a
2176
     * href="https://docs.stripe.com/api">API Reference.</a>
2177
     */
2178
    @Getter
2179
    @Setter
2180
    @EqualsAndHashCode(callSuper = false)
2181
    public static class Alternative extends StripeObject {
×
2182
      /** Fields that can be provided to satisfy all fields in {@code original_fields_due}. */
2183
      @SerializedName("alternative_fields_due")
2184
      List<String> alternativeFieldsDue;
2185

2186
      /**
2187
       * Fields that are due and can be satisfied by providing all fields in {@code
2188
       * alternative_fields_due}.
2189
       */
2190
      @SerializedName("original_fields_due")
2191
      List<String> originalFieldsDue;
2192
    }
2193

2194
    /**
2195
     * For more details about Errors, please refer to the <a href="https://docs.stripe.com/api">API
2196
     * Reference.</a>
2197
     */
2198
    @Getter
2199
    @Setter
2200
    @EqualsAndHashCode(callSuper = false)
2201
    public static class Errors extends StripeObject {
×
2202
      /**
2203
       * The code for the type of error.
2204
       *
2205
       * <p>One of {@code invalid_address_city_state_postal_code}, {@code
2206
       * invalid_address_highway_contract_box}, {@code invalid_address_private_mailbox}, {@code
2207
       * invalid_business_profile_name}, {@code invalid_business_profile_name_denylisted}, {@code
2208
       * invalid_company_name_denylisted}, {@code invalid_dob_age_over_maximum}, {@code
2209
       * invalid_dob_age_under_18}, {@code invalid_dob_age_under_minimum}, {@code
2210
       * invalid_product_description_length}, {@code invalid_product_description_url_match}, {@code
2211
       * invalid_representative_country}, {@code invalid_statement_descriptor_business_mismatch},
2212
       * {@code invalid_statement_descriptor_denylisted}, {@code
2213
       * invalid_statement_descriptor_length}, {@code
2214
       * invalid_statement_descriptor_prefix_denylisted}, {@code
2215
       * invalid_statement_descriptor_prefix_mismatch}, {@code invalid_street_address}, {@code
2216
       * invalid_tax_id}, {@code invalid_tax_id_format}, {@code invalid_tos_acceptance}, {@code
2217
       * invalid_url_denylisted}, {@code invalid_url_format}, {@code invalid_url_length}, {@code
2218
       * invalid_url_web_presence_detected}, {@code
2219
       * invalid_url_website_business_information_mismatch}, {@code invalid_url_website_empty},
2220
       * {@code invalid_url_website_inaccessible}, {@code
2221
       * invalid_url_website_inaccessible_geoblocked}, {@code
2222
       * invalid_url_website_inaccessible_password_protected}, {@code
2223
       * invalid_url_website_incomplete}, {@code
2224
       * invalid_url_website_incomplete_cancellation_policy}, {@code
2225
       * invalid_url_website_incomplete_customer_service_details}, {@code
2226
       * invalid_url_website_incomplete_legal_restrictions}, {@code
2227
       * invalid_url_website_incomplete_refund_policy}, {@code
2228
       * invalid_url_website_incomplete_return_policy}, {@code
2229
       * invalid_url_website_incomplete_terms_and_conditions}, {@code
2230
       * invalid_url_website_incomplete_under_construction}, {@code invalid_url_website_other},
2231
       * {@code invalid_value_other}, {@code verification_directors_mismatch}, {@code
2232
       * verification_document_address_mismatch}, {@code verification_document_address_missing},
2233
       * {@code verification_document_corrupt}, {@code verification_document_country_not_supported},
2234
       * {@code verification_document_directors_mismatch}, {@code
2235
       * verification_document_dob_mismatch}, {@code verification_document_duplicate_type}, {@code
2236
       * verification_document_expired}, {@code verification_document_failed_copy}, {@code
2237
       * verification_document_failed_greyscale}, {@code verification_document_failed_other}, {@code
2238
       * verification_document_failed_test_mode}, {@code verification_document_fraudulent}, {@code
2239
       * verification_document_id_number_mismatch}, {@code verification_document_id_number_missing},
2240
       * {@code verification_document_incomplete}, {@code verification_document_invalid}, {@code
2241
       * verification_document_issue_or_expiry_date_missing}, {@code
2242
       * verification_document_manipulated}, {@code verification_document_missing_back}, {@code
2243
       * verification_document_missing_front}, {@code verification_document_name_mismatch}, {@code
2244
       * verification_document_name_missing}, {@code verification_document_nationality_mismatch},
2245
       * {@code verification_document_not_readable}, {@code verification_document_not_signed},
2246
       * {@code verification_document_not_uploaded}, {@code verification_document_photo_mismatch},
2247
       * {@code verification_document_too_large}, {@code verification_document_type_not_supported},
2248
       * {@code verification_extraneous_directors}, {@code verification_failed_address_match},
2249
       * {@code verification_failed_business_iec_number}, {@code
2250
       * verification_failed_document_match}, {@code verification_failed_id_number_match}, {@code
2251
       * verification_failed_keyed_identity}, {@code verification_failed_keyed_match}, {@code
2252
       * verification_failed_name_match}, {@code verification_failed_other}, {@code
2253
       * verification_failed_representative_authority}, {@code
2254
       * verification_failed_residential_address}, {@code verification_failed_tax_id_match}, {@code
2255
       * verification_failed_tax_id_not_issued}, {@code verification_missing_directors}, {@code
2256
       * verification_missing_executives}, {@code verification_missing_owners}, {@code
2257
       * verification_requires_additional_memorandum_of_associations}, {@code
2258
       * verification_requires_additional_proof_of_registration}, or {@code
2259
       * verification_supportability}.
2260
       */
2261
      @SerializedName("code")
2262
      String code;
2263

2264
      /**
2265
       * An informative message that indicates the error type and provides additional details about
2266
       * the error.
2267
       */
2268
      @SerializedName("reason")
2269
      String reason;
2270

2271
      /**
2272
       * The specific user onboarding requirement field (in the requirements hash) that needs to be
2273
       * resolved.
2274
       */
2275
      @SerializedName("requirement")
2276
      String requirement;
2277
    }
2278
  }
2279

2280
  /**
2281
   * For more details about RiskControls, please refer to the <a
2282
   * href="https://docs.stripe.com/api">API Reference.</a>
2283
   */
2284
  @Getter
2285
  @Setter
2286
  @EqualsAndHashCode(callSuper = false)
2287
  public static class RiskControls extends StripeObject {
×
2288
    @SerializedName("charges")
2289
    Charges charges;
2290

2291
    @SerializedName("payouts")
2292
    Payouts payouts;
2293

2294
    /**
2295
     * For more details about Charges, please refer to the <a href="https://docs.stripe.com/api">API
2296
     * Reference.</a>
2297
     */
2298
    @Getter
2299
    @Setter
2300
    @EqualsAndHashCode(callSuper = false)
2301
    public static class Charges extends StripeObject {
×
2302
      /** Whether a pause of the risk control has been requested. */
2303
      @SerializedName("pause_requested")
2304
      Boolean pauseRequested;
2305
    }
2306

2307
    /**
2308
     * For more details about Payouts, please refer to the <a href="https://docs.stripe.com/api">API
2309
     * Reference.</a>
2310
     */
2311
    @Getter
2312
    @Setter
2313
    @EqualsAndHashCode(callSuper = false)
2314
    public static class Payouts extends StripeObject {
×
2315
      /** Whether a pause of the risk control has been requested. */
2316
      @SerializedName("pause_requested")
2317
      Boolean pauseRequested;
2318
    }
2319
  }
2320

2321
  /**
2322
   * For more details about Settings, please refer to the <a href="https://docs.stripe.com/api">API
2323
   * Reference.</a>
2324
   */
2325
  @Getter
2326
  @Setter
2327
  @EqualsAndHashCode(callSuper = false)
2328
  public static class Settings extends StripeObject {
1✔
2329
    @SerializedName("bacs_debit_payments")
2330
    BacsDebitPayments bacsDebitPayments;
2331

2332
    @SerializedName("bank_bca_onboarding")
2333
    BankBcaOnboarding bankBcaOnboarding;
2334

2335
    @SerializedName("branding")
2336
    Branding branding;
2337

2338
    @SerializedName("capital")
2339
    Capital capital;
2340

2341
    @SerializedName("card_issuing")
2342
    CardIssuing cardIssuing;
2343

2344
    @SerializedName("card_payments")
2345
    CardPayments cardPayments;
2346

2347
    @SerializedName("dashboard")
2348
    Dashboard dashboard;
2349

2350
    @SerializedName("invoices")
2351
    Invoices invoices;
2352

2353
    @SerializedName("payments")
2354
    Payments payments;
2355

2356
    @SerializedName("payouts")
2357
    Payouts payouts;
2358

2359
    @SerializedName("sepa_debit_payments")
2360
    SepaDebitPayments sepaDebitPayments;
2361

2362
    @SerializedName("tax_forms")
2363
    TaxForms taxForms;
2364

2365
    @SerializedName("treasury")
2366
    Treasury treasury;
2367

2368
    /**
2369
     * For more details about BacsDebitPayments, please refer to the <a
2370
     * href="https://docs.stripe.com/api">API Reference.</a>
2371
     */
2372
    @Getter
2373
    @Setter
2374
    @EqualsAndHashCode(callSuper = false)
2375
    public static class BacsDebitPayments extends StripeObject {
1✔
2376
      /**
2377
       * The Bacs Direct Debit display name for this account. For payments made with Bacs Direct
2378
       * Debit, this name appears on the mandate as the statement descriptor. Mobile banking apps
2379
       * display it as the name of the business. To use custom branding, set the Bacs Direct Debit
2380
       * Display Name during or right after creation. Custom branding incurs an additional monthly
2381
       * fee for the platform. The fee appears 5 business days after requesting Bacs. If you don't
2382
       * set the display name before requesting Bacs capability, it's automatically set as
2383
       * &quot;Stripe&quot; and the account is onboarded to Stripe branding, which is free.
2384
       */
2385
      @SerializedName("display_name")
2386
      String displayName;
2387

2388
      /**
2389
       * The Bacs Direct Debit Service user number for this account. For payments made with Bacs
2390
       * Direct Debit, this number is a unique identifier of the account with our banking partners.
2391
       */
2392
      @SerializedName("service_user_number")
2393
      String serviceUserNumber;
2394
    }
2395

2396
    /**
2397
     * For more details about BankBcaOnboarding, please refer to the <a
2398
     * href="https://docs.stripe.com/api">API Reference.</a>
2399
     */
2400
    @Getter
2401
    @Setter
2402
    @EqualsAndHashCode(callSuper = false)
NEW
2403
    public static class BankBcaOnboarding extends StripeObject {
×
2404
      /** Bank BCA business account holder name. */
2405
      @SerializedName("account_holder_name")
2406
      String accountHolderName;
2407

2408
      /** Bank BCA business account number. */
2409
      @SerializedName("business_account_number")
2410
      String businessAccountNumber;
2411
    }
2412

2413
    /**
2414
     * For more details about Branding, please refer to the <a
2415
     * href="https://docs.stripe.com/api">API Reference.</a>
2416
     */
2417
    @Getter
2418
    @Setter
2419
    @EqualsAndHashCode(callSuper = false)
2420
    public static class Branding extends StripeObject {
1✔
2421
      /**
2422
       * (ID of a <a href="https://stripe.com/docs/guides/file-upload">file upload</a>) An icon for
2423
       * the account. Must be square and at least 128px x 128px.
2424
       */
2425
      @SerializedName("icon")
2426
      @Getter(lombok.AccessLevel.NONE)
2427
      @Setter(lombok.AccessLevel.NONE)
2428
      ExpandableField<File> icon;
2429

2430
      /**
2431
       * (ID of a <a href="https://stripe.com/docs/guides/file-upload">file upload</a>) A logo for
2432
       * the account that will be used in Checkout instead of the icon and without the account's
2433
       * name next to it if provided. Must be at least 128px x 128px.
2434
       */
2435
      @SerializedName("logo")
2436
      @Getter(lombok.AccessLevel.NONE)
2437
      @Setter(lombok.AccessLevel.NONE)
2438
      ExpandableField<File> logo;
2439

2440
      /** A CSS hex color value representing the primary branding color for this account. */
2441
      @SerializedName("primary_color")
2442
      String primaryColor;
2443

2444
      /** A CSS hex color value representing the secondary branding color for this account. */
2445
      @SerializedName("secondary_color")
2446
      String secondaryColor;
2447

2448
      /** Get ID of expandable {@code icon} object. */
2449
      public String getIcon() {
2450
        return (this.icon != null) ? this.icon.getId() : null;
1✔
2451
      }
2452

2453
      public void setIcon(String id) {
2454
        this.icon = ApiResource.setExpandableFieldId(id, this.icon);
×
2455
      }
×
2456

2457
      /** Get expanded {@code icon}. */
2458
      public File getIconObject() {
2459
        return (this.icon != null) ? this.icon.getExpanded() : null;
1✔
2460
      }
2461

2462
      public void setIconObject(File expandableObject) {
2463
        this.icon = new ExpandableField<File>(expandableObject.getId(), expandableObject);
×
2464
      }
×
2465

2466
      /** Get ID of expandable {@code logo} object. */
2467
      public String getLogo() {
2468
        return (this.logo != null) ? this.logo.getId() : null;
1✔
2469
      }
2470

2471
      public void setLogo(String id) {
2472
        this.logo = ApiResource.setExpandableFieldId(id, this.logo);
×
2473
      }
×
2474

2475
      /** Get expanded {@code logo}. */
2476
      public File getLogoObject() {
2477
        return (this.logo != null) ? this.logo.getExpanded() : null;
1✔
2478
      }
2479

2480
      public void setLogoObject(File expandableObject) {
2481
        this.logo = new ExpandableField<File>(expandableObject.getId(), expandableObject);
×
2482
      }
×
2483
    }
2484

2485
    /**
2486
     * For more details about Capital, please refer to the <a href="https://docs.stripe.com/api">API
2487
     * Reference.</a>
2488
     */
2489
    @Getter
2490
    @Setter
2491
    @EqualsAndHashCode(callSuper = false)
2492
    public static class Capital extends StripeObject {
×
2493
      /** Per-currency mapping of user-selected destination accounts used to pay out loans. */
2494
      @SerializedName("payout_destination")
2495
      Map<String, String> payoutDestination;
2496

2497
      /** Per-currency mapping of all destination accounts eligible to receive loan payouts. */
2498
      @SerializedName("payout_destination_selector")
2499
      Map<String, List<String>> payoutDestinationSelector;
2500
    }
2501

2502
    /**
2503
     * For more details about CardIssuing, please refer to the <a
2504
     * href="https://docs.stripe.com/api">API Reference.</a>
2505
     */
2506
    @Getter
2507
    @Setter
2508
    @EqualsAndHashCode(callSuper = false)
2509
    public static class CardIssuing extends StripeObject {
1✔
2510
      @SerializedName("tos_acceptance")
2511
      TosAcceptance tosAcceptance;
2512

2513
      /**
2514
       * For more details about TosAcceptance, please refer to the <a
2515
       * href="https://docs.stripe.com/api">API Reference.</a>
2516
       */
2517
      @Getter
2518
      @Setter
2519
      @EqualsAndHashCode(callSuper = false)
2520
      public static class TosAcceptance extends StripeObject {
1✔
2521
        /**
2522
         * The Unix timestamp marking when the account representative accepted the service
2523
         * agreement.
2524
         */
2525
        @SerializedName("date")
2526
        Long date;
2527

2528
        /** The IP address from which the account representative accepted the service agreement. */
2529
        @SerializedName("ip")
2530
        String ip;
2531

2532
        /**
2533
         * The user agent of the browser from which the account representative accepted the service
2534
         * agreement.
2535
         */
2536
        @SerializedName("user_agent")
2537
        String userAgent;
2538
      }
2539
    }
2540

2541
    /**
2542
     * For more details about CardPayments, please refer to the <a
2543
     * href="https://docs.stripe.com/api">API Reference.</a>
2544
     */
2545
    @Getter
2546
    @Setter
2547
    @EqualsAndHashCode(callSuper = false)
2548
    public static class CardPayments extends StripeObject {
1✔
2549
      @SerializedName("decline_on")
2550
      DeclineOn declineOn;
2551

2552
      /**
2553
       * The default text that appears on credit card statements when a charge is made. This field
2554
       * prefixes any dynamic {@code statement_descriptor} specified on the charge. {@code
2555
       * statement_descriptor_prefix} is useful for maximizing descriptor space for the dynamic
2556
       * portion.
2557
       */
2558
      @SerializedName("statement_descriptor_prefix")
2559
      String statementDescriptorPrefix;
2560

2561
      /**
2562
       * The Kana variation of the default text that appears on credit card statements when a charge
2563
       * is made (Japan only). This field prefixes any dynamic {@code
2564
       * statement_descriptor_suffix_kana} specified on the charge. {@code
2565
       * statement_descriptor_prefix_kana} is useful for maximizing descriptor space for the dynamic
2566
       * portion.
2567
       */
2568
      @SerializedName("statement_descriptor_prefix_kana")
2569
      String statementDescriptorPrefixKana;
2570

2571
      /**
2572
       * The Kanji variation of the default text that appears on credit card statements when a
2573
       * charge is made (Japan only). This field prefixes any dynamic {@code
2574
       * statement_descriptor_suffix_kanji} specified on the charge. {@code
2575
       * statement_descriptor_prefix_kanji} is useful for maximizing descriptor space for the
2576
       * dynamic portion.
2577
       */
2578
      @SerializedName("statement_descriptor_prefix_kanji")
2579
      String statementDescriptorPrefixKanji;
2580

2581
      /**
2582
       * For more details about DeclineOn, please refer to the <a
2583
       * href="https://docs.stripe.com/api">API Reference.</a>
2584
       */
2585
      @Getter
2586
      @Setter
2587
      @EqualsAndHashCode(callSuper = false)
2588
      public static class DeclineOn extends StripeObject {
1✔
2589
        /**
2590
         * Whether Stripe automatically declines charges with an incorrect ZIP or postal code. This
2591
         * setting only applies when a ZIP or postal code is provided and they fail bank
2592
         * verification.
2593
         */
2594
        @SerializedName("avs_failure")
2595
        Boolean avsFailure;
2596

2597
        /**
2598
         * Whether Stripe automatically declines charges with an incorrect CVC. This setting only
2599
         * applies when a CVC is provided and it fails bank verification.
2600
         */
2601
        @SerializedName("cvc_failure")
2602
        Boolean cvcFailure;
2603
      }
2604
    }
2605

2606
    /**
2607
     * For more details about Dashboard, please refer to the <a
2608
     * href="https://docs.stripe.com/api">API Reference.</a>
2609
     */
2610
    @Getter
2611
    @Setter
2612
    @EqualsAndHashCode(callSuper = false)
2613
    public static class Dashboard extends StripeObject {
1✔
2614
      /**
2615
       * The display name for this account. This is used on the Stripe Dashboard to differentiate
2616
       * between accounts.
2617
       */
2618
      @SerializedName("display_name")
2619
      String displayName;
2620

2621
      /**
2622
       * The timezone used in the Stripe Dashboard for this account. A list of possible time zone
2623
       * values is maintained at the <a href="http://www.iana.org/time-zones">IANA Time Zone
2624
       * Database</a>.
2625
       */
2626
      @SerializedName("timezone")
2627
      String timezone;
2628
    }
2629

2630
    /**
2631
     * For more details about Invoices, please refer to the <a
2632
     * href="https://docs.stripe.com/api">API Reference.</a>
2633
     */
2634
    @Getter
2635
    @Setter
2636
    @EqualsAndHashCode(callSuper = false)
2637
    public static class Invoices extends StripeObject {
1✔
2638
      /**
2639
       * The list of default Account Tax IDs to automatically include on invoices. Account Tax IDs
2640
       * get added when an invoice is finalized.
2641
       */
2642
      @SerializedName("default_account_tax_ids")
2643
      List<ExpandableField<TaxId>> defaultAccountTaxIds;
2644

2645
      /** Get IDs of expandable {@code defaultAccountTaxIds} object list. */
2646
      public List<String> getDefaultAccountTaxIds() {
2647
        return (this.defaultAccountTaxIds != null)
×
2648
            ? this.defaultAccountTaxIds.stream().map(x -> x.getId()).collect(Collectors.toList())
×
2649
            : null;
×
2650
      }
2651

2652
      public void setDefaultAccountTaxIds(List<String> ids) {
2653
        if (ids == null) {
×
2654
          this.defaultAccountTaxIds = null;
×
2655
          return;
×
2656
        }
2657
        if (this.defaultAccountTaxIds != null
×
2658
            && this.defaultAccountTaxIds.stream()
×
2659
                .map(x -> x.getId())
×
2660
                .collect(Collectors.toList())
×
2661
                .equals(ids)) {
×
2662
          // noop if the ids are equal to what are already present
2663
          return;
×
2664
        }
2665
        this.defaultAccountTaxIds =
×
2666
            (ids != null)
×
2667
                ? ids.stream()
×
2668
                    .map(id -> new ExpandableField<TaxId>(id, null))
×
2669
                    .collect(Collectors.toList())
×
2670
                : null;
×
2671
      }
×
2672

2673
      /** Get expanded {@code defaultAccountTaxIds}. */
2674
      public List<TaxId> getDefaultAccountTaxIdObjects() {
2675
        return (this.defaultAccountTaxIds != null)
×
2676
            ? this.defaultAccountTaxIds.stream()
×
2677
                .map(x -> x.getExpanded())
×
2678
                .collect(Collectors.toList())
×
2679
            : null;
×
2680
      }
2681

2682
      public void setDefaultAccountTaxIdObjects(List<TaxId> objs) {
2683
        this.defaultAccountTaxIds =
×
2684
            objs != null
×
2685
                ? objs.stream()
×
2686
                    .map(x -> new ExpandableField<TaxId>(x.getId(), x))
×
2687
                    .collect(Collectors.toList())
×
2688
                : null;
×
2689
      }
×
2690
    }
2691

2692
    /**
2693
     * For more details about Payments, please refer to the <a
2694
     * href="https://docs.stripe.com/api">API Reference.</a>
2695
     */
2696
    @Getter
2697
    @Setter
2698
    @EqualsAndHashCode(callSuper = false)
2699
    public static class Payments extends StripeObject {
1✔
2700
      /**
2701
       * The default text that appears on credit card statements when a charge is made. This field
2702
       * prefixes any dynamic {@code statement_descriptor} specified on the charge.
2703
       */
2704
      @SerializedName("statement_descriptor")
2705
      String statementDescriptor;
2706

2707
      /**
2708
       * The Kana variation of {@code statement_descriptor} used for charges in Japan. Japanese
2709
       * statement descriptors have <a
2710
       * href="https://docs.stripe.com/get-started/account/statement-descriptors#set-japanese-statement-descriptors">special
2711
       * requirements</a>.
2712
       */
2713
      @SerializedName("statement_descriptor_kana")
2714
      String statementDescriptorKana;
2715

2716
      /**
2717
       * The Kanji variation of {@code statement_descriptor} used for charges in Japan. Japanese
2718
       * statement descriptors have <a
2719
       * href="https://docs.stripe.com/get-started/account/statement-descriptors#set-japanese-statement-descriptors">special
2720
       * requirements</a>.
2721
       */
2722
      @SerializedName("statement_descriptor_kanji")
2723
      String statementDescriptorKanji;
2724

2725
      /**
2726
       * The Kana variation of {@code statement_descriptor_prefix} used for card charges in Japan.
2727
       * Japanese statement descriptors have <a
2728
       * href="https://docs.stripe.com/get-started/account/statement-descriptors#set-japanese-statement-descriptors">special
2729
       * requirements</a>.
2730
       */
2731
      @SerializedName("statement_descriptor_prefix_kana")
2732
      String statementDescriptorPrefixKana;
2733

2734
      /**
2735
       * The Kanji variation of {@code statement_descriptor_prefix} used for card charges in Japan.
2736
       * Japanese statement descriptors have <a
2737
       * href="https://docs.stripe.com/get-started/account/statement-descriptors#set-japanese-statement-descriptors">special
2738
       * requirements</a>.
2739
       */
2740
      @SerializedName("statement_descriptor_prefix_kanji")
2741
      String statementDescriptorPrefixKanji;
2742
    }
2743

2744
    /**
2745
     * For more details about Payouts, please refer to the <a href="https://docs.stripe.com/api">API
2746
     * Reference.</a>
2747
     */
2748
    @Getter
2749
    @Setter
2750
    @EqualsAndHashCode(callSuper = false)
2751
    public static class Payouts extends StripeObject {
1✔
2752
      /**
2753
       * A Boolean indicating if Stripe should try to reclaim negative balances from an attached
2754
       * bank account. See <a href="https://stripe.com/connect/account-balances">Understanding
2755
       * Connect account balances</a> for details. The default value is {@code false} when <a
2756
       * href="https://stripe.com/api/accounts/object#account_object-controller-requirement_collection">controller.requirement_collection</a>
2757
       * is {@code application}, which includes Custom accounts, otherwise {@code true}.
2758
       */
2759
      @SerializedName("debit_negative_balances")
2760
      Boolean debitNegativeBalances;
2761

2762
      @SerializedName("schedule")
2763
      Schedule schedule;
2764

2765
      /**
2766
       * The text that appears on the bank account statement for payouts. If not set, this defaults
2767
       * to the platform's bank descriptor as set in the Dashboard.
2768
       */
2769
      @SerializedName("statement_descriptor")
2770
      String statementDescriptor;
2771

2772
      /**
2773
       * For more details about Schedule, please refer to the <a
2774
       * href="https://docs.stripe.com/api">API Reference.</a>
2775
       */
2776
      @Getter
2777
      @Setter
2778
      @EqualsAndHashCode(callSuper = false)
2779
      public static class Schedule extends StripeObject {
1✔
2780
        /** The number of days charges for the account will be held before being paid out. */
2781
        @SerializedName("delay_days")
2782
        Long delayDays;
2783

2784
        /**
2785
         * How frequently funds will be paid out. One of {@code manual} (payouts only created via
2786
         * API call), {@code daily}, {@code weekly}, or {@code monthly}.
2787
         */
2788
        @SerializedName("interval")
2789
        String interval;
2790

2791
        /**
2792
         * The day of the month funds will be paid out. Only shown if {@code interval} is monthly.
2793
         * Payouts scheduled between the 29th and 31st of the month are sent on the last day of
2794
         * shorter months.
2795
         */
2796
        @SerializedName("monthly_anchor")
2797
        Long monthlyAnchor;
2798

2799
        /**
2800
         * The day of the week funds will be paid out, of the style 'monday', 'tuesday', etc. Only
2801
         * shown if {@code interval} is weekly.
2802
         */
2803
        @SerializedName("weekly_anchor")
2804
        String weeklyAnchor;
2805
      }
2806
    }
2807

2808
    /**
2809
     * For more details about SepaDebitPayments, please refer to the <a
2810
     * href="https://docs.stripe.com/api">API Reference.</a>
2811
     */
2812
    @Getter
2813
    @Setter
2814
    @EqualsAndHashCode(callSuper = false)
2815
    public static class SepaDebitPayments extends StripeObject {
1✔
2816
      /** SEPA creditor identifier that identifies the company making the payment. */
2817
      @SerializedName("creditor_id")
2818
      String creditorId;
2819
    }
2820

2821
    /**
2822
     * For more details about TaxForms, please refer to the <a
2823
     * href="https://docs.stripe.com/api">API Reference.</a>
2824
     */
2825
    @Getter
2826
    @Setter
2827
    @EqualsAndHashCode(callSuper = false)
2828
    public static class TaxForms extends StripeObject {
×
2829
      /** Whether the account opted out of receiving their tax forms by postal delivery. */
2830
      @SerializedName("consented_to_paperless_delivery")
2831
      Boolean consentedToPaperlessDelivery;
2832
    }
2833

2834
    /**
2835
     * For more details about Treasury, please refer to the <a
2836
     * href="https://docs.stripe.com/api">API Reference.</a>
2837
     */
2838
    @Getter
2839
    @Setter
2840
    @EqualsAndHashCode(callSuper = false)
2841
    public static class Treasury extends StripeObject {
×
2842
      @SerializedName("tos_acceptance")
2843
      TosAcceptance tosAcceptance;
2844

2845
      /**
2846
       * For more details about TosAcceptance, please refer to the <a
2847
       * href="https://docs.stripe.com/api">API Reference.</a>
2848
       */
2849
      @Getter
2850
      @Setter
2851
      @EqualsAndHashCode(callSuper = false)
2852
      public static class TosAcceptance extends StripeObject {
×
2853
        /**
2854
         * The Unix timestamp marking when the account representative accepted the service
2855
         * agreement.
2856
         */
2857
        @SerializedName("date")
2858
        Long date;
2859

2860
        /** The IP address from which the account representative accepted the service agreement. */
2861
        @SerializedName("ip")
2862
        String ip;
2863

2864
        /**
2865
         * The user agent of the browser from which the account representative accepted the service
2866
         * agreement.
2867
         */
2868
        @SerializedName("user_agent")
2869
        String userAgent;
2870
      }
2871
    }
2872
  }
2873

2874
  /**
2875
   * For more details about TosAcceptance, 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 TosAcceptance extends StripeObject {
1✔
2882
    /**
2883
     * The Unix timestamp marking when the account representative accepted their service agreement.
2884
     */
2885
    @SerializedName("date")
2886
    Long date;
2887

2888
    /** The IP address from which the account representative accepted their service agreement. */
2889
    @SerializedName("ip")
2890
    String ip;
2891

2892
    /** The user's service agreement type. */
2893
    @SerializedName("service_agreement")
2894
    String serviceAgreement;
2895

2896
    /**
2897
     * The user agent of the browser from which the account representative accepted their service
2898
     * agreement.
2899
     */
2900
    @SerializedName("user_agent")
2901
    String userAgent;
2902
  }
2903

2904
  @Override
2905
  public void setResponseGetter(StripeResponseGetter responseGetter) {
2906
    super.setResponseGetter(responseGetter);
1✔
2907
    trySetResponseGetter(businessProfile, responseGetter);
1✔
2908
    trySetResponseGetter(capabilities, responseGetter);
1✔
2909
    trySetResponseGetter(company, responseGetter);
1✔
2910
    trySetResponseGetter(controller, responseGetter);
1✔
2911
    trySetResponseGetter(externalAccounts, responseGetter);
1✔
2912
    trySetResponseGetter(futureRequirements, responseGetter);
1✔
2913
    trySetResponseGetter(groups, responseGetter);
1✔
2914
    trySetResponseGetter(individual, responseGetter);
1✔
2915
    trySetResponseGetter(requirements, responseGetter);
1✔
2916
    trySetResponseGetter(riskControls, responseGetter);
1✔
2917
    trySetResponseGetter(settings, responseGetter);
1✔
2918
    trySetResponseGetter(tosAcceptance, responseGetter);
1✔
2919
  }
1✔
2920
}
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

© 2026 Coveralls, Inc