• 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

15.38
/src/main/java/com/stripe/model/SetupAttempt.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.SetupAttemptListParams;
13
import java.util.List;
14
import java.util.Map;
15
import lombok.EqualsAndHashCode;
16
import lombok.Getter;
17
import lombok.Setter;
18

19
/**
20
 * A SetupAttempt describes one attempted confirmation of a SetupIntent, whether that confirmation
21
 * is successful or unsuccessful. You can use SetupAttempts to inspect details of a specific attempt
22
 * at setting up a payment method using a SetupIntent.
23
 */
24
@Getter
25
@Setter
26
@EqualsAndHashCode(callSuper = false)
27
public class SetupAttempt extends ApiResource implements HasId {
1✔
28
  /**
29
   * The value of <a
30
   * href="https://stripe.com/docs/api/setup_intents/object#setup_intent_object-application">application</a>
31
   * on the SetupIntent at the time of this confirmation.
32
   */
33
  @SerializedName("application")
34
  @Getter(lombok.AccessLevel.NONE)
35
  @Setter(lombok.AccessLevel.NONE)
36
  ExpandableField<Application> application;
37

38
  /**
39
   * If present, the SetupIntent's payment method will be attached to the in-context Stripe Account.
40
   *
41
   * <p>It can only be used for this Stripe Account’s own money movement flows like InboundTransfer
42
   * and OutboundTransfers. It cannot be set to true when setting up a PaymentMethod for a Customer,
43
   * and defaults to false when attaching a PaymentMethod to a Customer.
44
   */
45
  @SerializedName("attach_to_self")
46
  Boolean attachToSelf;
47

48
  /** Time at which the object was created. Measured in seconds since the Unix epoch. */
49
  @SerializedName("created")
50
  Long created;
51

52
  /**
53
   * The value of <a
54
   * href="https://stripe.com/docs/api/setup_intents/object#setup_intent_object-customer">customer</a>
55
   * on the SetupIntent at the time of this confirmation.
56
   */
57
  @SerializedName("customer")
58
  @Getter(lombok.AccessLevel.NONE)
59
  @Setter(lombok.AccessLevel.NONE)
60
  ExpandableField<Customer> customer;
61

62
  /**
63
   * Indicates the directions of money movement for which this payment method is intended to be
64
   * used.
65
   *
66
   * <p>Include {@code inbound} if you intend to use the payment method as the origin to pull funds
67
   * from. Include {@code outbound} if you intend to use the payment method as the destination to
68
   * send funds to. You can include both if you intend to use the payment method for both purposes.
69
   */
70
  @SerializedName("flow_directions")
71
  List<String> flowDirections;
72

73
  /** Unique identifier for the object. */
74
  @Getter(onMethod_ = {@Override})
75
  @SerializedName("id")
76
  String id;
77

78
  /**
79
   * Has the value {@code true} if the object exists in live mode or the value {@code false} if the
80
   * object exists in test mode.
81
   */
82
  @SerializedName("livemode")
83
  Boolean livemode;
84

85
  /**
86
   * String representing the object's type. Objects of the same type share the same value.
87
   *
88
   * <p>Equal to {@code setup_attempt}.
89
   */
90
  @SerializedName("object")
91
  String object;
92

93
  /**
94
   * The value of <a
95
   * href="https://stripe.com/docs/api/setup_intents/object#setup_intent_object-on_behalf_of">on_behalf_of</a>
96
   * on the SetupIntent at the time of this confirmation.
97
   */
98
  @SerializedName("on_behalf_of")
99
  @Getter(lombok.AccessLevel.NONE)
100
  @Setter(lombok.AccessLevel.NONE)
101
  ExpandableField<Account> onBehalfOf;
102

103
  /** ID of the payment method used with this SetupAttempt. */
104
  @SerializedName("payment_method")
105
  @Getter(lombok.AccessLevel.NONE)
106
  @Setter(lombok.AccessLevel.NONE)
107
  ExpandableField<PaymentMethod> paymentMethod;
108

109
  @SerializedName("payment_method_details")
110
  PaymentMethodDetails paymentMethodDetails;
111

112
  /** The error encountered during this attempt to confirm the SetupIntent, if any. */
113
  @SerializedName("setup_error")
114
  StripeError setupError;
115

116
  /** ID of the SetupIntent that this attempt belongs to. */
117
  @SerializedName("setup_intent")
118
  @Getter(lombok.AccessLevel.NONE)
119
  @Setter(lombok.AccessLevel.NONE)
120
  ExpandableField<SetupIntent> setupIntent;
121

122
  /**
123
   * Status of this SetupAttempt, one of {@code requires_confirmation}, {@code requires_action},
124
   * {@code processing}, {@code succeeded}, {@code failed}, or {@code abandoned}.
125
   */
126
  @SerializedName("status")
127
  String status;
128

129
  /**
130
   * The value of <a
131
   * href="https://stripe.com/docs/api/setup_intents/object#setup_intent_object-usage">usage</a> on
132
   * the SetupIntent at the time of this confirmation, one of {@code off_session} or {@code
133
   * on_session}.
134
   */
135
  @SerializedName("usage")
136
  String usage;
137

138
  /** Get ID of expandable {@code application} object. */
139
  public String getApplication() {
140
    return (this.application != null) ? this.application.getId() : null;
×
141
  }
142

143
  public void setApplication(String id) {
144
    this.application = ApiResource.setExpandableFieldId(id, this.application);
×
145
  }
×
146

147
  /** Get expanded {@code application}. */
148
  public Application getApplicationObject() {
149
    return (this.application != null) ? this.application.getExpanded() : null;
×
150
  }
151

152
  public void setApplicationObject(Application expandableObject) {
153
    this.application = new ExpandableField<Application>(expandableObject.getId(), expandableObject);
×
154
  }
×
155

156
  /** Get ID of expandable {@code customer} object. */
157
  public String getCustomer() {
158
    return (this.customer != null) ? this.customer.getId() : null;
×
159
  }
160

161
  public void setCustomer(String id) {
162
    this.customer = ApiResource.setExpandableFieldId(id, this.customer);
×
163
  }
×
164

165
  /** Get expanded {@code customer}. */
166
  public Customer getCustomerObject() {
167
    return (this.customer != null) ? this.customer.getExpanded() : null;
×
168
  }
169

170
  public void setCustomerObject(Customer expandableObject) {
171
    this.customer = new ExpandableField<Customer>(expandableObject.getId(), expandableObject);
×
172
  }
×
173

174
  /** Get ID of expandable {@code onBehalfOf} object. */
175
  public String getOnBehalfOf() {
176
    return (this.onBehalfOf != null) ? this.onBehalfOf.getId() : null;
×
177
  }
178

179
  public void setOnBehalfOf(String id) {
180
    this.onBehalfOf = ApiResource.setExpandableFieldId(id, this.onBehalfOf);
×
181
  }
×
182

183
  /** Get expanded {@code onBehalfOf}. */
184
  public Account getOnBehalfOfObject() {
185
    return (this.onBehalfOf != null) ? this.onBehalfOf.getExpanded() : null;
×
186
  }
187

188
  public void setOnBehalfOfObject(Account expandableObject) {
189
    this.onBehalfOf = new ExpandableField<Account>(expandableObject.getId(), expandableObject);
×
190
  }
×
191

192
  /** Get ID of expandable {@code paymentMethod} object. */
193
  public String getPaymentMethod() {
194
    return (this.paymentMethod != null) ? this.paymentMethod.getId() : null;
×
195
  }
196

197
  public void setPaymentMethod(String id) {
198
    this.paymentMethod = ApiResource.setExpandableFieldId(id, this.paymentMethod);
×
199
  }
×
200

201
  /** Get expanded {@code paymentMethod}. */
202
  public PaymentMethod getPaymentMethodObject() {
203
    return (this.paymentMethod != null) ? this.paymentMethod.getExpanded() : null;
×
204
  }
205

206
  public void setPaymentMethodObject(PaymentMethod expandableObject) {
207
    this.paymentMethod =
×
208
        new ExpandableField<PaymentMethod>(expandableObject.getId(), expandableObject);
×
209
  }
×
210

211
  /** Get ID of expandable {@code setupIntent} object. */
212
  public String getSetupIntent() {
213
    return (this.setupIntent != null) ? this.setupIntent.getId() : null;
×
214
  }
215

216
  public void setSetupIntent(String id) {
217
    this.setupIntent = ApiResource.setExpandableFieldId(id, this.setupIntent);
×
218
  }
×
219

220
  /** Get expanded {@code setupIntent}. */
221
  public SetupIntent getSetupIntentObject() {
222
    return (this.setupIntent != null) ? this.setupIntent.getExpanded() : null;
×
223
  }
224

225
  public void setSetupIntentObject(SetupIntent expandableObject) {
226
    this.setupIntent = new ExpandableField<SetupIntent>(expandableObject.getId(), expandableObject);
×
227
  }
×
228

229
  /** Returns a list of SetupAttempts that associate with a provided SetupIntent. */
230
  public static SetupAttemptCollection list(Map<String, Object> params) throws StripeException {
231
    return list(params, (RequestOptions) null);
1✔
232
  }
233

234
  /** Returns a list of SetupAttempts that associate with a provided SetupIntent. */
235
  public static SetupAttemptCollection list(Map<String, Object> params, RequestOptions options)
236
      throws StripeException {
237
    String path = "/v1/setup_attempts";
1✔
238
    ApiRequest request =
1✔
239
        new ApiRequest(BaseAddress.API, ApiResource.RequestMethod.GET, path, params, options);
240
    return getGlobalResponseGetter().request(request, SetupAttemptCollection.class);
1✔
241
  }
242

243
  /** Returns a list of SetupAttempts that associate with a provided SetupIntent. */
244
  public static SetupAttemptCollection list(SetupAttemptListParams params) throws StripeException {
245
    return list(params, (RequestOptions) null);
1✔
246
  }
247

248
  /** Returns a list of SetupAttempts that associate with a provided SetupIntent. */
249
  public static SetupAttemptCollection list(SetupAttemptListParams params, RequestOptions options)
250
      throws StripeException {
251
    String path = "/v1/setup_attempts";
1✔
252
    ApiResource.checkNullTypedParams(path, params);
1✔
253
    ApiRequest request =
1✔
254
        new ApiRequest(
255
            BaseAddress.API,
256
            ApiResource.RequestMethod.GET,
257
            path,
258
            ApiRequestParams.paramsToMap(params),
1✔
259
            options);
260
    return getGlobalResponseGetter().request(request, SetupAttemptCollection.class);
1✔
261
  }
262

263
  /**
264
   * For more details about PaymentMethodDetails, please refer to the <a
265
   * href="https://docs.stripe.com/api">API Reference.</a>
266
   */
267
  @Getter
268
  @Setter
269
  @EqualsAndHashCode(callSuper = false)
270
  public static class PaymentMethodDetails extends StripeObject {
1✔
271
    @SerializedName("acss_debit")
272
    AcssDebit acssDebit;
273

274
    @SerializedName("amazon_pay")
275
    AmazonPay amazonPay;
276

277
    @SerializedName("au_becs_debit")
278
    AuBecsDebit auBecsDebit;
279

280
    @SerializedName("bacs_debit")
281
    BacsDebit bacsDebit;
282

283
    @SerializedName("bancontact")
284
    Bancontact bancontact;
285

286
    @SerializedName("boleto")
287
    Boleto boleto;
288

289
    @SerializedName("card")
290
    Card card;
291

292
    @SerializedName("card_present")
293
    CardPresent cardPresent;
294

295
    @SerializedName("cashapp")
296
    Cashapp cashapp;
297

298
    @SerializedName("id_bank_transfer")
299
    IdBankTransfer idBankTransfer;
300

301
    @SerializedName("ideal")
302
    Ideal ideal;
303

304
    @SerializedName("kakao_pay")
305
    KakaoPay kakaoPay;
306

307
    @SerializedName("klarna")
308
    Klarna klarna;
309

310
    @SerializedName("kr_card")
311
    KrCard krCard;
312

313
    @SerializedName("link")
314
    Link link;
315

316
    @SerializedName("paypal")
317
    Paypal paypal;
318

319
    @SerializedName("payto")
320
    Payto payto;
321

322
    @SerializedName("revolut_pay")
323
    RevolutPay revolutPay;
324

325
    @SerializedName("sepa_debit")
326
    SepaDebit sepaDebit;
327

328
    @SerializedName("sofort")
329
    Sofort sofort;
330

331
    /**
332
     * The type of the payment method used in the SetupIntent (e.g., {@code card}). An additional
333
     * hash is included on {@code payment_method_details} with a name matching this value. It
334
     * contains confirmation-specific information for the payment method.
335
     */
336
    @SerializedName("type")
337
    String type;
338

339
    @SerializedName("us_bank_account")
340
    UsBankAccount usBankAccount;
341

342
    /**
343
     * For more details about AcssDebit, please refer to the <a
344
     * href="https://docs.stripe.com/api">API Reference.</a>
345
     */
346
    @Getter
347
    @Setter
348
    @EqualsAndHashCode(callSuper = false)
349
    public static class AcssDebit extends StripeObject {}
×
350

351
    /**
352
     * For more details about AmazonPay, please refer to the <a
353
     * href="https://docs.stripe.com/api">API Reference.</a>
354
     */
355
    @Getter
356
    @Setter
357
    @EqualsAndHashCode(callSuper = false)
358
    public static class AmazonPay extends StripeObject {}
×
359

360
    /**
361
     * For more details about AuBecsDebit, please refer to the <a
362
     * href="https://docs.stripe.com/api">API Reference.</a>
363
     */
364
    @Getter
365
    @Setter
366
    @EqualsAndHashCode(callSuper = false)
367
    public static class AuBecsDebit extends StripeObject {}
×
368

369
    /**
370
     * For more details about BacsDebit, please refer to the <a
371
     * href="https://docs.stripe.com/api">API Reference.</a>
372
     */
373
    @Getter
374
    @Setter
375
    @EqualsAndHashCode(callSuper = false)
376
    public static class BacsDebit extends StripeObject {}
×
377

378
    /**
379
     * For more details about Bancontact, please refer to the <a
380
     * href="https://docs.stripe.com/api">API Reference.</a>
381
     */
382
    @Getter
383
    @Setter
384
    @EqualsAndHashCode(callSuper = false)
385
    public static class Bancontact extends StripeObject {
×
386
      /** Bank code of bank associated with the bank account. */
387
      @SerializedName("bank_code")
388
      String bankCode;
389

390
      /** Name of the bank associated with the bank account. */
391
      @SerializedName("bank_name")
392
      String bankName;
393

394
      /** Bank Identifier Code of the bank associated with the bank account. */
395
      @SerializedName("bic")
396
      String bic;
397

398
      /** The ID of the SEPA Direct Debit PaymentMethod which was generated by this SetupAttempt. */
399
      @SerializedName("generated_sepa_debit")
400
      @Getter(lombok.AccessLevel.NONE)
401
      @Setter(lombok.AccessLevel.NONE)
402
      ExpandableField<PaymentMethod> generatedSepaDebit;
403

404
      /**
405
       * The mandate for the SEPA Direct Debit PaymentMethod which was generated by this
406
       * SetupAttempt.
407
       */
408
      @SerializedName("generated_sepa_debit_mandate")
409
      @Getter(lombok.AccessLevel.NONE)
410
      @Setter(lombok.AccessLevel.NONE)
411
      ExpandableField<Mandate> generatedSepaDebitMandate;
412

413
      /** Last four characters of the IBAN. */
414
      @SerializedName("iban_last4")
415
      String ibanLast4;
416

417
      /**
418
       * Preferred language of the Bancontact authorization page that the customer is redirected to.
419
       * Can be one of {@code en}, {@code de}, {@code fr}, or {@code nl}
420
       */
421
      @SerializedName("preferred_language")
422
      String preferredLanguage;
423

424
      /**
425
       * Owner's verified full name. Values are verified or provided by Bancontact directly (if
426
       * supported) at the time of authorization or settlement. They cannot be set or mutated.
427
       */
428
      @SerializedName("verified_name")
429
      String verifiedName;
430

431
      /** Get ID of expandable {@code generatedSepaDebit} object. */
432
      public String getGeneratedSepaDebit() {
433
        return (this.generatedSepaDebit != null) ? this.generatedSepaDebit.getId() : null;
×
434
      }
435

436
      public void setGeneratedSepaDebit(String id) {
437
        this.generatedSepaDebit = ApiResource.setExpandableFieldId(id, this.generatedSepaDebit);
×
438
      }
×
439

440
      /** Get expanded {@code generatedSepaDebit}. */
441
      public PaymentMethod getGeneratedSepaDebitObject() {
442
        return (this.generatedSepaDebit != null) ? this.generatedSepaDebit.getExpanded() : null;
×
443
      }
444

445
      public void setGeneratedSepaDebitObject(PaymentMethod expandableObject) {
446
        this.generatedSepaDebit =
×
447
            new ExpandableField<PaymentMethod>(expandableObject.getId(), expandableObject);
×
448
      }
×
449

450
      /** Get ID of expandable {@code generatedSepaDebitMandate} object. */
451
      public String getGeneratedSepaDebitMandate() {
452
        return (this.generatedSepaDebitMandate != null)
×
453
            ? this.generatedSepaDebitMandate.getId()
×
454
            : null;
×
455
      }
456

457
      public void setGeneratedSepaDebitMandate(String id) {
458
        this.generatedSepaDebitMandate =
×
459
            ApiResource.setExpandableFieldId(id, this.generatedSepaDebitMandate);
×
460
      }
×
461

462
      /** Get expanded {@code generatedSepaDebitMandate}. */
463
      public Mandate getGeneratedSepaDebitMandateObject() {
464
        return (this.generatedSepaDebitMandate != null)
×
465
            ? this.generatedSepaDebitMandate.getExpanded()
×
466
            : null;
×
467
      }
468

469
      public void setGeneratedSepaDebitMandateObject(Mandate expandableObject) {
470
        this.generatedSepaDebitMandate =
×
471
            new ExpandableField<Mandate>(expandableObject.getId(), expandableObject);
×
472
      }
×
473
    }
474

475
    /**
476
     * For more details about Boleto, please refer to the <a href="https://docs.stripe.com/api">API
477
     * Reference.</a>
478
     */
479
    @Getter
480
    @Setter
481
    @EqualsAndHashCode(callSuper = false)
482
    public static class Boleto extends StripeObject {}
×
483

484
    /**
485
     * For more details about Card, please refer to the <a href="https://docs.stripe.com/api">API
486
     * Reference.</a>
487
     */
488
    @Getter
489
    @Setter
490
    @EqualsAndHashCode(callSuper = false)
491
    public static class Card extends StripeObject {
1✔
492
      /**
493
       * Card brand. Can be {@code amex}, {@code diners}, {@code discover}, {@code eftpos_au},
494
       * {@code jcb}, {@code mastercard}, {@code unionpay}, {@code visa}, or {@code unknown}.
495
       */
496
      @SerializedName("brand")
497
      String brand;
498

499
      /** Check results by Card networks on Card address and CVC at the time of authorization. */
500
      @SerializedName("checks")
501
      Checks checks;
502

503
      /**
504
       * Two-letter ISO code representing the country of the card. You could use this attribute to
505
       * get a sense of the international breakdown of cards you've collected.
506
       */
507
      @SerializedName("country")
508
      String country;
509

510
      /**
511
       * A high-level description of the type of cards issued in this range. (For internal use only
512
       * and not typically available in standard API requests.)
513
       */
514
      @SerializedName("description")
515
      String description;
516

517
      /** Two-digit number representing the card's expiration month. */
518
      @SerializedName("exp_month")
519
      Long expMonth;
520

521
      /** Four-digit number representing the card's expiration year. */
522
      @SerializedName("exp_year")
523
      Long expYear;
524

525
      /**
526
       * Uniquely identifies this particular card number. You can use this attribute to check
527
       * whether two customers who’ve signed up with you are using the same card number, for
528
       * example. For payment methods that tokenize card information (Apple Pay, Google Pay), the
529
       * tokenized number might be provided instead of the underlying card number.
530
       *
531
       * <p><em>As of May 1, 2021, card fingerprint in India for Connect changed to allow two
532
       * fingerprints for the same card---one for India and one for the rest of the world.</em>
533
       */
534
      @SerializedName("fingerprint")
535
      String fingerprint;
536

537
      /**
538
       * Card funding type. Can be {@code credit}, {@code debit}, {@code prepaid}, or {@code
539
       * unknown}.
540
       */
541
      @SerializedName("funding")
542
      String funding;
543

544
      /**
545
       * Issuer identification number of the card. (For internal use only and not typically
546
       * available in standard API requests.)
547
       */
548
      @SerializedName("iin")
549
      String iin;
550

551
      /**
552
       * The name of the card's issuing bank. (For internal use only and not typically available in
553
       * standard API requests.)
554
       */
555
      @SerializedName("issuer")
556
      String issuer;
557

558
      /** The last four digits of the card. */
559
      @SerializedName("last4")
560
      String last4;
561

562
      /**
563
       * Identifies which network this charge was processed on. Can be {@code amex}, {@code
564
       * cartes_bancaires}, {@code diners}, {@code discover}, {@code eftpos_au}, {@code interac},
565
       * {@code jcb}, {@code mastercard}, {@code unionpay}, {@code visa}, or {@code unknown}.
566
       */
567
      @SerializedName("network")
568
      String network;
569

570
      /** Populated if this authorization used 3D Secure authentication. */
571
      @SerializedName("three_d_secure")
572
      ThreeDSecure threeDSecure;
573

574
      /** If this Card is part of a card wallet, this contains the details of the card wallet. */
575
      @SerializedName("wallet")
576
      Wallet wallet;
577

578
      /**
579
       * For more details about Checks, please refer to the <a
580
       * href="https://docs.stripe.com/api">API Reference.</a>
581
       */
582
      @Getter
583
      @Setter
584
      @EqualsAndHashCode(callSuper = false)
585
      public static class Checks extends StripeObject {
×
586
        /**
587
         * If a address line1 was provided, results of the check, one of {@code pass}, {@code fail},
588
         * {@code unavailable}, or {@code unchecked}.
589
         */
590
        @SerializedName("address_line1_check")
591
        String addressLine1Check;
592

593
        /**
594
         * If a address postal code was provided, results of the check, one of {@code pass}, {@code
595
         * fail}, {@code unavailable}, or {@code unchecked}.
596
         */
597
        @SerializedName("address_postal_code_check")
598
        String addressPostalCodeCheck;
599

600
        /**
601
         * If a CVC was provided, results of the check, one of {@code pass}, {@code fail}, {@code
602
         * unavailable}, or {@code unchecked}.
603
         */
604
        @SerializedName("cvc_check")
605
        String cvcCheck;
606
      }
607

608
      /**
609
       * For more details about ThreeDSecure, please refer to the <a
610
       * href="https://docs.stripe.com/api">API Reference.</a>
611
       */
612
      @Getter
613
      @Setter
614
      @EqualsAndHashCode(callSuper = false)
615
      public static class ThreeDSecure extends StripeObject {
×
616
        /**
617
         * For authenticated transactions: how the customer was authenticated by the issuing bank.
618
         *
619
         * <p>One of {@code challenge}, or {@code frictionless}.
620
         */
621
        @SerializedName("authentication_flow")
622
        String authenticationFlow;
623

624
        /**
625
         * The Electronic Commerce Indicator (ECI). A protocol-level field indicating what degree of
626
         * authentication was performed.
627
         *
628
         * <p>One of {@code 01}, {@code 02}, {@code 05}, {@code 06}, or {@code 07}.
629
         */
630
        @SerializedName("electronic_commerce_indicator")
631
        String electronicCommerceIndicator;
632

633
        /**
634
         * Indicates the outcome of 3D Secure authentication.
635
         *
636
         * <p>One of {@code attempt_acknowledged}, {@code authenticated}, {@code exempted}, {@code
637
         * failed}, {@code not_supported}, or {@code processing_error}.
638
         */
639
        @SerializedName("result")
640
        String result;
641

642
        /**
643
         * Additional information about why 3D Secure succeeded or failed based on the {@code
644
         * result}.
645
         *
646
         * <p>One of {@code abandoned}, {@code bypassed}, {@code canceled}, {@code
647
         * card_not_enrolled}, {@code network_not_supported}, {@code protocol_error}, or {@code
648
         * rejected}.
649
         */
650
        @SerializedName("result_reason")
651
        String resultReason;
652

653
        /**
654
         * The 3D Secure 1 XID or 3D Secure 2 Directory Server Transaction ID (dsTransId) for this
655
         * payment.
656
         */
657
        @SerializedName("transaction_id")
658
        String transactionId;
659

660
        /**
661
         * The version of 3D Secure that was used.
662
         *
663
         * <p>One of {@code 1.0.2}, {@code 2.1.0}, or {@code 2.2.0}.
664
         */
665
        @SerializedName("version")
666
        String version;
667
      }
668

669
      /**
670
       * For more details about Wallet, please refer to the <a
671
       * href="https://docs.stripe.com/api">API Reference.</a>
672
       */
673
      @Getter
674
      @Setter
675
      @EqualsAndHashCode(callSuper = false)
676
      public static class Wallet extends StripeObject {
×
677
        @SerializedName("apple_pay")
678
        ApplePay applePay;
679

680
        @SerializedName("google_pay")
681
        GooglePay googlePay;
682

683
        /**
684
         * The type of the card wallet, one of {@code apple_pay}, {@code google_pay}, or {@code
685
         * link}. An additional hash is included on the Wallet subhash with a name matching this
686
         * value. It contains additional information specific to the card wallet type.
687
         */
688
        @SerializedName("type")
689
        String type;
690

691
        /**
692
         * For more details about ApplePay, please refer to the <a
693
         * href="https://docs.stripe.com/api">API Reference.</a>
694
         */
695
        @Getter
696
        @Setter
697
        @EqualsAndHashCode(callSuper = false)
698
        public static class ApplePay extends StripeObject {}
×
699

700
        /**
701
         * For more details about GooglePay, please refer to the <a
702
         * href="https://docs.stripe.com/api">API Reference.</a>
703
         */
704
        @Getter
705
        @Setter
706
        @EqualsAndHashCode(callSuper = false)
707
        public static class GooglePay extends StripeObject {}
×
708
      }
709
    }
710

711
    /**
712
     * For more details about CardPresent, please refer to the <a
713
     * href="https://docs.stripe.com/api">API Reference.</a>
714
     */
715
    @Getter
716
    @Setter
717
    @EqualsAndHashCode(callSuper = false)
718
    public static class CardPresent extends StripeObject {
×
719
      /** The ID of the Card PaymentMethod which was generated by this SetupAttempt. */
720
      @SerializedName("generated_card")
721
      @Getter(lombok.AccessLevel.NONE)
722
      @Setter(lombok.AccessLevel.NONE)
723
      ExpandableField<PaymentMethod> generatedCard;
724

725
      /** Details about payments collected offline. */
726
      @SerializedName("offline")
727
      Offline offline;
728

729
      /** Get ID of expandable {@code generatedCard} object. */
730
      public String getGeneratedCard() {
731
        return (this.generatedCard != null) ? this.generatedCard.getId() : null;
×
732
      }
733

734
      public void setGeneratedCard(String id) {
735
        this.generatedCard = ApiResource.setExpandableFieldId(id, this.generatedCard);
×
736
      }
×
737

738
      /** Get expanded {@code generatedCard}. */
739
      public PaymentMethod getGeneratedCardObject() {
740
        return (this.generatedCard != null) ? this.generatedCard.getExpanded() : null;
×
741
      }
742

743
      public void setGeneratedCardObject(PaymentMethod expandableObject) {
744
        this.generatedCard =
×
745
            new ExpandableField<PaymentMethod>(expandableObject.getId(), expandableObject);
×
746
      }
×
747

748
      /**
749
       * For more details about Offline, please refer to the <a
750
       * href="https://docs.stripe.com/api">API Reference.</a>
751
       */
752
      @Getter
753
      @Setter
754
      @EqualsAndHashCode(callSuper = false)
755
      public static class Offline extends StripeObject {
×
756
        /** Time at which the payment was collected while offline. */
757
        @SerializedName("stored_at")
758
        Long storedAt;
759

760
        /**
761
         * The method used to process this payment method offline. Only deferred is allowed.
762
         *
763
         * <p>Equal to {@code deferred}.
764
         */
765
        @SerializedName("type")
766
        String type;
767
      }
768
    }
769

770
    /**
771
     * For more details about Cashapp, please refer to the <a href="https://docs.stripe.com/api">API
772
     * Reference.</a>
773
     */
774
    @Getter
775
    @Setter
776
    @EqualsAndHashCode(callSuper = false)
777
    public static class Cashapp extends StripeObject {}
×
778

779
    /**
780
     * For more details about IdBankTransfer, please refer to the <a
781
     * href="https://docs.stripe.com/api">API Reference.</a>
782
     */
783
    @Getter
784
    @Setter
785
    @EqualsAndHashCode(callSuper = false)
NEW
786
    public static class IdBankTransfer extends StripeObject {
×
787
      /**
788
       * Bank where the account is located.
789
       *
790
       * <p>One of {@code bca}, {@code bni}, {@code bri}, {@code cimb}, or {@code permata}.
791
       */
792
      @SerializedName("bank")
793
      String bank;
794

795
      /** Local bank code of the bank. */
796
      @SerializedName("bank_code")
797
      String bankCode;
798

799
      /** Name of the bank associated with the bank account. */
800
      @SerializedName("bank_name")
801
      String bankName;
802

803
      /**
804
       * Merchant name and billing details name, for the customer to check for the correct merchant
805
       * when performing the bank transfer.
806
       */
807
      @SerializedName("display_name")
808
      String displayName;
809
    }
810

811
    /**
812
     * For more details about Ideal, please refer to the <a href="https://docs.stripe.com/api">API
813
     * Reference.</a>
814
     */
815
    @Getter
816
    @Setter
817
    @EqualsAndHashCode(callSuper = false)
818
    public static class Ideal extends StripeObject {
×
819
      /**
820
       * The customer's bank. Can be one of {@code abn_amro}, {@code asn_bank}, {@code bunq}, {@code
821
       * handelsbanken}, {@code ing}, {@code knab}, {@code moneyou}, {@code n26}, {@code nn}, {@code
822
       * rabobank}, {@code regiobank}, {@code revolut}, {@code sns_bank}, {@code triodos_bank},
823
       * {@code van_lanschot}, or {@code yoursafe}.
824
       */
825
      @SerializedName("bank")
826
      String bank;
827

828
      /**
829
       * The Bank Identifier Code of the customer's bank.
830
       *
831
       * <p>One of {@code ABNANL2A}, {@code ASNBNL21}, {@code BITSNL2A}, {@code BUNQNL2A}, {@code
832
       * FVLBNL22}, {@code HANDNL2A}, {@code INGBNL2A}, {@code KNABNL2H}, {@code MOYONL21}, {@code
833
       * NNBANL2G}, {@code NTSBDEB1}, {@code RABONL2U}, {@code RBRBNL21}, {@code REVOIE23}, {@code
834
       * REVOLT21}, {@code SNSBNL2A}, or {@code TRIONL2U}.
835
       */
836
      @SerializedName("bic")
837
      String bic;
838

839
      /** The ID of the SEPA Direct Debit PaymentMethod which was generated by this SetupAttempt. */
840
      @SerializedName("generated_sepa_debit")
841
      @Getter(lombok.AccessLevel.NONE)
842
      @Setter(lombok.AccessLevel.NONE)
843
      ExpandableField<PaymentMethod> generatedSepaDebit;
844

845
      /**
846
       * The mandate for the SEPA Direct Debit PaymentMethod which was generated by this
847
       * SetupAttempt.
848
       */
849
      @SerializedName("generated_sepa_debit_mandate")
850
      @Getter(lombok.AccessLevel.NONE)
851
      @Setter(lombok.AccessLevel.NONE)
852
      ExpandableField<Mandate> generatedSepaDebitMandate;
853

854
      /** Last four characters of the IBAN. */
855
      @SerializedName("iban_last4")
856
      String ibanLast4;
857

858
      /**
859
       * Owner's verified full name. Values are verified or provided by iDEAL directly (if
860
       * supported) at the time of authorization or settlement. They cannot be set or mutated.
861
       */
862
      @SerializedName("verified_name")
863
      String verifiedName;
864

865
      /** Get ID of expandable {@code generatedSepaDebit} object. */
866
      public String getGeneratedSepaDebit() {
867
        return (this.generatedSepaDebit != null) ? this.generatedSepaDebit.getId() : null;
×
868
      }
869

870
      public void setGeneratedSepaDebit(String id) {
871
        this.generatedSepaDebit = ApiResource.setExpandableFieldId(id, this.generatedSepaDebit);
×
872
      }
×
873

874
      /** Get expanded {@code generatedSepaDebit}. */
875
      public PaymentMethod getGeneratedSepaDebitObject() {
876
        return (this.generatedSepaDebit != null) ? this.generatedSepaDebit.getExpanded() : null;
×
877
      }
878

879
      public void setGeneratedSepaDebitObject(PaymentMethod expandableObject) {
880
        this.generatedSepaDebit =
×
881
            new ExpandableField<PaymentMethod>(expandableObject.getId(), expandableObject);
×
882
      }
×
883

884
      /** Get ID of expandable {@code generatedSepaDebitMandate} object. */
885
      public String getGeneratedSepaDebitMandate() {
886
        return (this.generatedSepaDebitMandate != null)
×
887
            ? this.generatedSepaDebitMandate.getId()
×
888
            : null;
×
889
      }
890

891
      public void setGeneratedSepaDebitMandate(String id) {
892
        this.generatedSepaDebitMandate =
×
893
            ApiResource.setExpandableFieldId(id, this.generatedSepaDebitMandate);
×
894
      }
×
895

896
      /** Get expanded {@code generatedSepaDebitMandate}. */
897
      public Mandate getGeneratedSepaDebitMandateObject() {
898
        return (this.generatedSepaDebitMandate != null)
×
899
            ? this.generatedSepaDebitMandate.getExpanded()
×
900
            : null;
×
901
      }
902

903
      public void setGeneratedSepaDebitMandateObject(Mandate expandableObject) {
904
        this.generatedSepaDebitMandate =
×
905
            new ExpandableField<Mandate>(expandableObject.getId(), expandableObject);
×
906
      }
×
907
    }
908

909
    /**
910
     * For more details about KakaoPay, please refer to the <a
911
     * href="https://docs.stripe.com/api">API Reference.</a>
912
     */
913
    @Getter
914
    @Setter
915
    @EqualsAndHashCode(callSuper = false)
916
    public static class KakaoPay extends StripeObject {}
×
917

918
    /**
919
     * For more details about Klarna, please refer to the <a href="https://docs.stripe.com/api">API
920
     * Reference.</a>
921
     */
922
    @Getter
923
    @Setter
924
    @EqualsAndHashCode(callSuper = false)
925
    public static class Klarna extends StripeObject {}
×
926

927
    /**
928
     * For more details about KrCard, please refer to the <a href="https://docs.stripe.com/api">API
929
     * Reference.</a>
930
     */
931
    @Getter
932
    @Setter
933
    @EqualsAndHashCode(callSuper = false)
934
    public static class KrCard extends StripeObject {}
×
935

936
    /**
937
     * For more details about Link, please refer to the <a href="https://docs.stripe.com/api">API
938
     * Reference.</a>
939
     */
940
    @Getter
941
    @Setter
942
    @EqualsAndHashCode(callSuper = false)
943
    public static class Link extends StripeObject {}
×
944

945
    /**
946
     * For more details about Paypal, please refer to the <a href="https://docs.stripe.com/api">API
947
     * Reference.</a>
948
     */
949
    @Getter
950
    @Setter
951
    @EqualsAndHashCode(callSuper = false)
952
    public static class Paypal extends StripeObject {}
×
953

954
    /**
955
     * For more details about Payto, please refer to the <a href="https://docs.stripe.com/api">API
956
     * Reference.</a>
957
     */
958
    @Getter
959
    @Setter
960
    @EqualsAndHashCode(callSuper = false)
961
    public static class Payto extends StripeObject {}
×
962

963
    /**
964
     * For more details about RevolutPay, please refer to the <a
965
     * href="https://docs.stripe.com/api">API Reference.</a>
966
     */
967
    @Getter
968
    @Setter
969
    @EqualsAndHashCode(callSuper = false)
970
    public static class RevolutPay extends StripeObject {}
×
971

972
    /**
973
     * For more details about SepaDebit, please refer to the <a
974
     * href="https://docs.stripe.com/api">API Reference.</a>
975
     */
976
    @Getter
977
    @Setter
978
    @EqualsAndHashCode(callSuper = false)
979
    public static class SepaDebit extends StripeObject {}
×
980

981
    /**
982
     * For more details about Sofort, please refer to the <a href="https://docs.stripe.com/api">API
983
     * Reference.</a>
984
     */
985
    @Getter
986
    @Setter
987
    @EqualsAndHashCode(callSuper = false)
988
    public static class Sofort extends StripeObject {
×
989
      /** Bank code of bank associated with the bank account. */
990
      @SerializedName("bank_code")
991
      String bankCode;
992

993
      /** Name of the bank associated with the bank account. */
994
      @SerializedName("bank_name")
995
      String bankName;
996

997
      /** Bank Identifier Code of the bank associated with the bank account. */
998
      @SerializedName("bic")
999
      String bic;
1000

1001
      /** The ID of the SEPA Direct Debit PaymentMethod which was generated by this SetupAttempt. */
1002
      @SerializedName("generated_sepa_debit")
1003
      @Getter(lombok.AccessLevel.NONE)
1004
      @Setter(lombok.AccessLevel.NONE)
1005
      ExpandableField<PaymentMethod> generatedSepaDebit;
1006

1007
      /**
1008
       * The mandate for the SEPA Direct Debit PaymentMethod which was generated by this
1009
       * SetupAttempt.
1010
       */
1011
      @SerializedName("generated_sepa_debit_mandate")
1012
      @Getter(lombok.AccessLevel.NONE)
1013
      @Setter(lombok.AccessLevel.NONE)
1014
      ExpandableField<Mandate> generatedSepaDebitMandate;
1015

1016
      /** Last four characters of the IBAN. */
1017
      @SerializedName("iban_last4")
1018
      String ibanLast4;
1019

1020
      /**
1021
       * Preferred language of the Sofort authorization page that the customer is redirected to. Can
1022
       * be one of {@code en}, {@code de}, {@code fr}, or {@code nl}
1023
       */
1024
      @SerializedName("preferred_language")
1025
      String preferredLanguage;
1026

1027
      /**
1028
       * Owner's verified full name. Values are verified or provided by Sofort directly (if
1029
       * supported) at the time of authorization or settlement. They cannot be set or mutated.
1030
       */
1031
      @SerializedName("verified_name")
1032
      String verifiedName;
1033

1034
      /** Get ID of expandable {@code generatedSepaDebit} object. */
1035
      public String getGeneratedSepaDebit() {
1036
        return (this.generatedSepaDebit != null) ? this.generatedSepaDebit.getId() : null;
×
1037
      }
1038

1039
      public void setGeneratedSepaDebit(String id) {
1040
        this.generatedSepaDebit = ApiResource.setExpandableFieldId(id, this.generatedSepaDebit);
×
1041
      }
×
1042

1043
      /** Get expanded {@code generatedSepaDebit}. */
1044
      public PaymentMethod getGeneratedSepaDebitObject() {
1045
        return (this.generatedSepaDebit != null) ? this.generatedSepaDebit.getExpanded() : null;
×
1046
      }
1047

1048
      public void setGeneratedSepaDebitObject(PaymentMethod expandableObject) {
1049
        this.generatedSepaDebit =
×
1050
            new ExpandableField<PaymentMethod>(expandableObject.getId(), expandableObject);
×
1051
      }
×
1052

1053
      /** Get ID of expandable {@code generatedSepaDebitMandate} object. */
1054
      public String getGeneratedSepaDebitMandate() {
1055
        return (this.generatedSepaDebitMandate != null)
×
1056
            ? this.generatedSepaDebitMandate.getId()
×
1057
            : null;
×
1058
      }
1059

1060
      public void setGeneratedSepaDebitMandate(String id) {
1061
        this.generatedSepaDebitMandate =
×
1062
            ApiResource.setExpandableFieldId(id, this.generatedSepaDebitMandate);
×
1063
      }
×
1064

1065
      /** Get expanded {@code generatedSepaDebitMandate}. */
1066
      public Mandate getGeneratedSepaDebitMandateObject() {
1067
        return (this.generatedSepaDebitMandate != null)
×
1068
            ? this.generatedSepaDebitMandate.getExpanded()
×
1069
            : null;
×
1070
      }
1071

1072
      public void setGeneratedSepaDebitMandateObject(Mandate expandableObject) {
1073
        this.generatedSepaDebitMandate =
×
1074
            new ExpandableField<Mandate>(expandableObject.getId(), expandableObject);
×
1075
      }
×
1076
    }
1077

1078
    /**
1079
     * For more details about UsBankAccount, please refer to the <a
1080
     * href="https://docs.stripe.com/api">API Reference.</a>
1081
     */
1082
    @Getter
1083
    @Setter
1084
    @EqualsAndHashCode(callSuper = false)
1085
    public static class UsBankAccount extends StripeObject {}
×
1086
  }
1087

1088
  @Override
1089
  public void setResponseGetter(StripeResponseGetter responseGetter) {
1090
    super.setResponseGetter(responseGetter);
1✔
1091
    trySetResponseGetter(application, responseGetter);
1✔
1092
    trySetResponseGetter(customer, responseGetter);
1✔
1093
    trySetResponseGetter(onBehalfOf, responseGetter);
1✔
1094
    trySetResponseGetter(paymentMethod, responseGetter);
1✔
1095
    trySetResponseGetter(paymentMethodDetails, responseGetter);
1✔
1096
    trySetResponseGetter(setupError, responseGetter);
1✔
1097
    trySetResponseGetter(setupIntent, responseGetter);
1✔
1098
  }
1✔
1099
}
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