github.com/stripe/stripe-go/v76@v76.25.0/confirmationtoken.go (about)

     1  //
     2  //
     3  // File generated from our OpenAPI spec
     4  //
     5  //
     6  
     7  package stripe
     8  
     9  // The type of the card wallet, one of `amex_express_checkout`, `apple_pay`, `google_pay`, `masterpass`, `samsung_pay`, `visa_checkout`, or `link`. An additional hash is included on the Wallet subhash with a name matching this value. It contains additional information specific to the card wallet type.
    10  type ConfirmationTokenPaymentMethodPreviewCardWalletType string
    11  
    12  // List of values that ConfirmationTokenPaymentMethodPreviewCardWalletType can take
    13  const (
    14  	ConfirmationTokenPaymentMethodPreviewCardWalletTypeAmexExpressCheckout ConfirmationTokenPaymentMethodPreviewCardWalletType = "amex_express_checkout"
    15  	ConfirmationTokenPaymentMethodPreviewCardWalletTypeApplePay            ConfirmationTokenPaymentMethodPreviewCardWalletType = "apple_pay"
    16  	ConfirmationTokenPaymentMethodPreviewCardWalletTypeGooglePay           ConfirmationTokenPaymentMethodPreviewCardWalletType = "google_pay"
    17  	ConfirmationTokenPaymentMethodPreviewCardWalletTypeLink                ConfirmationTokenPaymentMethodPreviewCardWalletType = "link"
    18  	ConfirmationTokenPaymentMethodPreviewCardWalletTypeMasterpass          ConfirmationTokenPaymentMethodPreviewCardWalletType = "masterpass"
    19  	ConfirmationTokenPaymentMethodPreviewCardWalletTypeSamsungPay          ConfirmationTokenPaymentMethodPreviewCardWalletType = "samsung_pay"
    20  	ConfirmationTokenPaymentMethodPreviewCardWalletTypeVisaCheckout        ConfirmationTokenPaymentMethodPreviewCardWalletType = "visa_checkout"
    21  )
    22  
    23  // How card details were read in this transaction.
    24  type ConfirmationTokenPaymentMethodPreviewCardPresentReadMethod string
    25  
    26  // List of values that ConfirmationTokenPaymentMethodPreviewCardPresentReadMethod can take
    27  const (
    28  	ConfirmationTokenPaymentMethodPreviewCardPresentReadMethodContactEmv               ConfirmationTokenPaymentMethodPreviewCardPresentReadMethod = "contact_emv"
    29  	ConfirmationTokenPaymentMethodPreviewCardPresentReadMethodContactlessEmv           ConfirmationTokenPaymentMethodPreviewCardPresentReadMethod = "contactless_emv"
    30  	ConfirmationTokenPaymentMethodPreviewCardPresentReadMethodContactlessMagstripeMode ConfirmationTokenPaymentMethodPreviewCardPresentReadMethod = "contactless_magstripe_mode"
    31  	ConfirmationTokenPaymentMethodPreviewCardPresentReadMethodMagneticStripeFallback   ConfirmationTokenPaymentMethodPreviewCardPresentReadMethod = "magnetic_stripe_fallback"
    32  	ConfirmationTokenPaymentMethodPreviewCardPresentReadMethodMagneticStripeTrack2     ConfirmationTokenPaymentMethodPreviewCardPresentReadMethod = "magnetic_stripe_track2"
    33  )
    34  
    35  // The customer's bank. Should be one of `arzte_und_apotheker_bank`, `austrian_anadi_bank_ag`, `bank_austria`, `bankhaus_carl_spangler`, `bankhaus_schelhammer_und_schattera_ag`, `bawag_psk_ag`, `bks_bank_ag`, `brull_kallmus_bank_ag`, `btv_vier_lander_bank`, `capital_bank_grawe_gruppe_ag`, `deutsche_bank_ag`, `dolomitenbank`, `easybank_ag`, `erste_bank_und_sparkassen`, `hypo_alpeadriabank_international_ag`, `hypo_noe_lb_fur_niederosterreich_u_wien`, `hypo_oberosterreich_salzburg_steiermark`, `hypo_tirol_bank_ag`, `hypo_vorarlberg_bank_ag`, `hypo_bank_burgenland_aktiengesellschaft`, `marchfelder_bank`, `oberbank_ag`, `raiffeisen_bankengruppe_osterreich`, `schoellerbank_ag`, `sparda_bank_wien`, `volksbank_gruppe`, `volkskreditbank_ag`, or `vr_bank_braunau`.
    36  type ConfirmationTokenPaymentMethodPreviewEPSBank string
    37  
    38  // List of values that ConfirmationTokenPaymentMethodPreviewEPSBank can take
    39  const (
    40  	ConfirmationTokenPaymentMethodPreviewEPSBankArzteUndApothekerBank                ConfirmationTokenPaymentMethodPreviewEPSBank = "arzte_und_apotheker_bank"
    41  	ConfirmationTokenPaymentMethodPreviewEPSBankAustrianAnadiBankAg                  ConfirmationTokenPaymentMethodPreviewEPSBank = "austrian_anadi_bank_ag"
    42  	ConfirmationTokenPaymentMethodPreviewEPSBankBankAustria                          ConfirmationTokenPaymentMethodPreviewEPSBank = "bank_austria"
    43  	ConfirmationTokenPaymentMethodPreviewEPSBankBankhausCarlSpangler                 ConfirmationTokenPaymentMethodPreviewEPSBank = "bankhaus_carl_spangler"
    44  	ConfirmationTokenPaymentMethodPreviewEPSBankBankhausSchelhammerUndSchatteraAg    ConfirmationTokenPaymentMethodPreviewEPSBank = "bankhaus_schelhammer_und_schattera_ag"
    45  	ConfirmationTokenPaymentMethodPreviewEPSBankBawagPskAg                           ConfirmationTokenPaymentMethodPreviewEPSBank = "bawag_psk_ag"
    46  	ConfirmationTokenPaymentMethodPreviewEPSBankBksBankAg                            ConfirmationTokenPaymentMethodPreviewEPSBank = "bks_bank_ag"
    47  	ConfirmationTokenPaymentMethodPreviewEPSBankBrullKallmusBankAg                   ConfirmationTokenPaymentMethodPreviewEPSBank = "brull_kallmus_bank_ag"
    48  	ConfirmationTokenPaymentMethodPreviewEPSBankBtvVierLanderBank                    ConfirmationTokenPaymentMethodPreviewEPSBank = "btv_vier_lander_bank"
    49  	ConfirmationTokenPaymentMethodPreviewEPSBankCapitalBankGraweGruppeAg             ConfirmationTokenPaymentMethodPreviewEPSBank = "capital_bank_grawe_gruppe_ag"
    50  	ConfirmationTokenPaymentMethodPreviewEPSBankDeutscheBankAg                       ConfirmationTokenPaymentMethodPreviewEPSBank = "deutsche_bank_ag"
    51  	ConfirmationTokenPaymentMethodPreviewEPSBankDolomitenbank                        ConfirmationTokenPaymentMethodPreviewEPSBank = "dolomitenbank"
    52  	ConfirmationTokenPaymentMethodPreviewEPSBankEasybankAg                           ConfirmationTokenPaymentMethodPreviewEPSBank = "easybank_ag"
    53  	ConfirmationTokenPaymentMethodPreviewEPSBankErsteBankUndSparkassen               ConfirmationTokenPaymentMethodPreviewEPSBank = "erste_bank_und_sparkassen"
    54  	ConfirmationTokenPaymentMethodPreviewEPSBankHypoAlpeadriabankInternationalAg     ConfirmationTokenPaymentMethodPreviewEPSBank = "hypo_alpeadriabank_international_ag"
    55  	ConfirmationTokenPaymentMethodPreviewEPSBankHypoBankBurgenlandAktiengesellschaft ConfirmationTokenPaymentMethodPreviewEPSBank = "hypo_bank_burgenland_aktiengesellschaft"
    56  	ConfirmationTokenPaymentMethodPreviewEPSBankHypoNoeLbFurNiederosterreichUWien    ConfirmationTokenPaymentMethodPreviewEPSBank = "hypo_noe_lb_fur_niederosterreich_u_wien"
    57  	ConfirmationTokenPaymentMethodPreviewEPSBankHypoOberosterreichSalzburgSteiermark ConfirmationTokenPaymentMethodPreviewEPSBank = "hypo_oberosterreich_salzburg_steiermark"
    58  	ConfirmationTokenPaymentMethodPreviewEPSBankHypoTirolBankAg                      ConfirmationTokenPaymentMethodPreviewEPSBank = "hypo_tirol_bank_ag"
    59  	ConfirmationTokenPaymentMethodPreviewEPSBankHypoVorarlbergBankAg                 ConfirmationTokenPaymentMethodPreviewEPSBank = "hypo_vorarlberg_bank_ag"
    60  	ConfirmationTokenPaymentMethodPreviewEPSBankMarchfelderBank                      ConfirmationTokenPaymentMethodPreviewEPSBank = "marchfelder_bank"
    61  	ConfirmationTokenPaymentMethodPreviewEPSBankOberbankAg                           ConfirmationTokenPaymentMethodPreviewEPSBank = "oberbank_ag"
    62  	ConfirmationTokenPaymentMethodPreviewEPSBankRaiffeisenBankengruppeOsterreich     ConfirmationTokenPaymentMethodPreviewEPSBank = "raiffeisen_bankengruppe_osterreich"
    63  	ConfirmationTokenPaymentMethodPreviewEPSBankSchoellerbankAg                      ConfirmationTokenPaymentMethodPreviewEPSBank = "schoellerbank_ag"
    64  	ConfirmationTokenPaymentMethodPreviewEPSBankSpardaBankWien                       ConfirmationTokenPaymentMethodPreviewEPSBank = "sparda_bank_wien"
    65  	ConfirmationTokenPaymentMethodPreviewEPSBankVolksbankGruppe                      ConfirmationTokenPaymentMethodPreviewEPSBank = "volksbank_gruppe"
    66  	ConfirmationTokenPaymentMethodPreviewEPSBankVolkskreditbankAg                    ConfirmationTokenPaymentMethodPreviewEPSBank = "volkskreditbank_ag"
    67  	ConfirmationTokenPaymentMethodPreviewEPSBankVrBankBraunau                        ConfirmationTokenPaymentMethodPreviewEPSBank = "vr_bank_braunau"
    68  )
    69  
    70  // Account holder type, if provided. Can be one of `individual` or `company`.
    71  type ConfirmationTokenPaymentMethodPreviewFPXAccountHolderType string
    72  
    73  // List of values that ConfirmationTokenPaymentMethodPreviewFPXAccountHolderType can take
    74  const (
    75  	ConfirmationTokenPaymentMethodPreviewFPXAccountHolderTypeCompany    ConfirmationTokenPaymentMethodPreviewFPXAccountHolderType = "company"
    76  	ConfirmationTokenPaymentMethodPreviewFPXAccountHolderTypeIndividual ConfirmationTokenPaymentMethodPreviewFPXAccountHolderType = "individual"
    77  )
    78  
    79  // The customer's bank, if provided. Can be one of `affin_bank`, `agrobank`, `alliance_bank`, `ambank`, `bank_islam`, `bank_muamalat`, `bank_rakyat`, `bsn`, `cimb`, `hong_leong_bank`, `hsbc`, `kfh`, `maybank2u`, `ocbc`, `public_bank`, `rhb`, `standard_chartered`, `uob`, `deutsche_bank`, `maybank2e`, `pb_enterprise`, or `bank_of_china`.
    80  type ConfirmationTokenPaymentMethodPreviewFPXBank string
    81  
    82  // List of values that ConfirmationTokenPaymentMethodPreviewFPXBank can take
    83  const (
    84  	ConfirmationTokenPaymentMethodPreviewFPXBankAffinBank         ConfirmationTokenPaymentMethodPreviewFPXBank = "affin_bank"
    85  	ConfirmationTokenPaymentMethodPreviewFPXBankAgrobank          ConfirmationTokenPaymentMethodPreviewFPXBank = "agrobank"
    86  	ConfirmationTokenPaymentMethodPreviewFPXBankAllianceBank      ConfirmationTokenPaymentMethodPreviewFPXBank = "alliance_bank"
    87  	ConfirmationTokenPaymentMethodPreviewFPXBankAmbank            ConfirmationTokenPaymentMethodPreviewFPXBank = "ambank"
    88  	ConfirmationTokenPaymentMethodPreviewFPXBankBankIslam         ConfirmationTokenPaymentMethodPreviewFPXBank = "bank_islam"
    89  	ConfirmationTokenPaymentMethodPreviewFPXBankBankMuamalat      ConfirmationTokenPaymentMethodPreviewFPXBank = "bank_muamalat"
    90  	ConfirmationTokenPaymentMethodPreviewFPXBankBankOfChina       ConfirmationTokenPaymentMethodPreviewFPXBank = "bank_of_china"
    91  	ConfirmationTokenPaymentMethodPreviewFPXBankBankRakyat        ConfirmationTokenPaymentMethodPreviewFPXBank = "bank_rakyat"
    92  	ConfirmationTokenPaymentMethodPreviewFPXBankBsn               ConfirmationTokenPaymentMethodPreviewFPXBank = "bsn"
    93  	ConfirmationTokenPaymentMethodPreviewFPXBankCimb              ConfirmationTokenPaymentMethodPreviewFPXBank = "cimb"
    94  	ConfirmationTokenPaymentMethodPreviewFPXBankDeutscheBank      ConfirmationTokenPaymentMethodPreviewFPXBank = "deutsche_bank"
    95  	ConfirmationTokenPaymentMethodPreviewFPXBankHongLeongBank     ConfirmationTokenPaymentMethodPreviewFPXBank = "hong_leong_bank"
    96  	ConfirmationTokenPaymentMethodPreviewFPXBankHsbc              ConfirmationTokenPaymentMethodPreviewFPXBank = "hsbc"
    97  	ConfirmationTokenPaymentMethodPreviewFPXBankKfh               ConfirmationTokenPaymentMethodPreviewFPXBank = "kfh"
    98  	ConfirmationTokenPaymentMethodPreviewFPXBankMaybank2e         ConfirmationTokenPaymentMethodPreviewFPXBank = "maybank2e"
    99  	ConfirmationTokenPaymentMethodPreviewFPXBankMaybank2u         ConfirmationTokenPaymentMethodPreviewFPXBank = "maybank2u"
   100  	ConfirmationTokenPaymentMethodPreviewFPXBankOcbc              ConfirmationTokenPaymentMethodPreviewFPXBank = "ocbc"
   101  	ConfirmationTokenPaymentMethodPreviewFPXBankPbEnterprise      ConfirmationTokenPaymentMethodPreviewFPXBank = "pb_enterprise"
   102  	ConfirmationTokenPaymentMethodPreviewFPXBankPublicBank        ConfirmationTokenPaymentMethodPreviewFPXBank = "public_bank"
   103  	ConfirmationTokenPaymentMethodPreviewFPXBankRhb               ConfirmationTokenPaymentMethodPreviewFPXBank = "rhb"
   104  	ConfirmationTokenPaymentMethodPreviewFPXBankStandardChartered ConfirmationTokenPaymentMethodPreviewFPXBank = "standard_chartered"
   105  	ConfirmationTokenPaymentMethodPreviewFPXBankUob               ConfirmationTokenPaymentMethodPreviewFPXBank = "uob"
   106  )
   107  
   108  // The customer's bank, if provided. Can be one of `abn_amro`, `asn_bank`, `bunq`, `handelsbanken`, `ing`, `knab`, `moneyou`, `n26`, `nn`, `rabobank`, `regiobank`, `revolut`, `sns_bank`, `triodos_bank`, `van_lanschot`, or `yoursafe`.
   109  type ConfirmationTokenPaymentMethodPreviewIDEALBank string
   110  
   111  // List of values that ConfirmationTokenPaymentMethodPreviewIDEALBank can take
   112  const (
   113  	ConfirmationTokenPaymentMethodPreviewIDEALBankAbnAmro       ConfirmationTokenPaymentMethodPreviewIDEALBank = "abn_amro"
   114  	ConfirmationTokenPaymentMethodPreviewIDEALBankAsnBank       ConfirmationTokenPaymentMethodPreviewIDEALBank = "asn_bank"
   115  	ConfirmationTokenPaymentMethodPreviewIDEALBankBunq          ConfirmationTokenPaymentMethodPreviewIDEALBank = "bunq"
   116  	ConfirmationTokenPaymentMethodPreviewIDEALBankHandelsbanken ConfirmationTokenPaymentMethodPreviewIDEALBank = "handelsbanken"
   117  	ConfirmationTokenPaymentMethodPreviewIDEALBankIng           ConfirmationTokenPaymentMethodPreviewIDEALBank = "ing"
   118  	ConfirmationTokenPaymentMethodPreviewIDEALBankKnab          ConfirmationTokenPaymentMethodPreviewIDEALBank = "knab"
   119  	ConfirmationTokenPaymentMethodPreviewIDEALBankMoneyou       ConfirmationTokenPaymentMethodPreviewIDEALBank = "moneyou"
   120  	ConfirmationTokenPaymentMethodPreviewIDEALBankN26           ConfirmationTokenPaymentMethodPreviewIDEALBank = "n26"
   121  	ConfirmationTokenPaymentMethodPreviewIDEALBankNn            ConfirmationTokenPaymentMethodPreviewIDEALBank = "nn"
   122  	ConfirmationTokenPaymentMethodPreviewIDEALBankRabobank      ConfirmationTokenPaymentMethodPreviewIDEALBank = "rabobank"
   123  	ConfirmationTokenPaymentMethodPreviewIDEALBankRegiobank     ConfirmationTokenPaymentMethodPreviewIDEALBank = "regiobank"
   124  	ConfirmationTokenPaymentMethodPreviewIDEALBankRevolut       ConfirmationTokenPaymentMethodPreviewIDEALBank = "revolut"
   125  	ConfirmationTokenPaymentMethodPreviewIDEALBankSnsBank       ConfirmationTokenPaymentMethodPreviewIDEALBank = "sns_bank"
   126  	ConfirmationTokenPaymentMethodPreviewIDEALBankTriodosBank   ConfirmationTokenPaymentMethodPreviewIDEALBank = "triodos_bank"
   127  	ConfirmationTokenPaymentMethodPreviewIDEALBankVanLanschot   ConfirmationTokenPaymentMethodPreviewIDEALBank = "van_lanschot"
   128  	ConfirmationTokenPaymentMethodPreviewIDEALBankYoursafe      ConfirmationTokenPaymentMethodPreviewIDEALBank = "yoursafe"
   129  )
   130  
   131  // The Bank Identifier Code of the customer's bank, if the bank was provided.
   132  type ConfirmationTokenPaymentMethodPreviewIDEALBIC string
   133  
   134  // List of values that ConfirmationTokenPaymentMethodPreviewIDEALBIC can take
   135  const (
   136  	ConfirmationTokenPaymentMethodPreviewIDEALBICABNANL2A ConfirmationTokenPaymentMethodPreviewIDEALBIC = "ABNANL2A"
   137  	ConfirmationTokenPaymentMethodPreviewIDEALBICASNBNL21 ConfirmationTokenPaymentMethodPreviewIDEALBIC = "ASNBNL21"
   138  	ConfirmationTokenPaymentMethodPreviewIDEALBICBITSNL2A ConfirmationTokenPaymentMethodPreviewIDEALBIC = "BITSNL2A"
   139  	ConfirmationTokenPaymentMethodPreviewIDEALBICBUNQNL2A ConfirmationTokenPaymentMethodPreviewIDEALBIC = "BUNQNL2A"
   140  	ConfirmationTokenPaymentMethodPreviewIDEALBICFVLBNL22 ConfirmationTokenPaymentMethodPreviewIDEALBIC = "FVLBNL22"
   141  	ConfirmationTokenPaymentMethodPreviewIDEALBICHANDNL2A ConfirmationTokenPaymentMethodPreviewIDEALBIC = "HANDNL2A"
   142  	ConfirmationTokenPaymentMethodPreviewIDEALBICINGBNL2A ConfirmationTokenPaymentMethodPreviewIDEALBIC = "INGBNL2A"
   143  	ConfirmationTokenPaymentMethodPreviewIDEALBICKNABNL2H ConfirmationTokenPaymentMethodPreviewIDEALBIC = "KNABNL2H"
   144  	ConfirmationTokenPaymentMethodPreviewIDEALBICMOYONL21 ConfirmationTokenPaymentMethodPreviewIDEALBIC = "MOYONL21"
   145  	ConfirmationTokenPaymentMethodPreviewIDEALBICNNBANL2G ConfirmationTokenPaymentMethodPreviewIDEALBIC = "NNBANL2G"
   146  	ConfirmationTokenPaymentMethodPreviewIDEALBICNTSBDEB1 ConfirmationTokenPaymentMethodPreviewIDEALBIC = "NTSBDEB1"
   147  	ConfirmationTokenPaymentMethodPreviewIDEALBICRABONL2U ConfirmationTokenPaymentMethodPreviewIDEALBIC = "RABONL2U"
   148  	ConfirmationTokenPaymentMethodPreviewIDEALBICRBRBNL21 ConfirmationTokenPaymentMethodPreviewIDEALBIC = "RBRBNL21"
   149  	ConfirmationTokenPaymentMethodPreviewIDEALBICREVOIE23 ConfirmationTokenPaymentMethodPreviewIDEALBIC = "REVOIE23"
   150  	ConfirmationTokenPaymentMethodPreviewIDEALBICREVOLT21 ConfirmationTokenPaymentMethodPreviewIDEALBIC = "REVOLT21"
   151  	ConfirmationTokenPaymentMethodPreviewIDEALBICSNSBNL2A ConfirmationTokenPaymentMethodPreviewIDEALBIC = "SNSBNL2A"
   152  	ConfirmationTokenPaymentMethodPreviewIDEALBICTRIONL2U ConfirmationTokenPaymentMethodPreviewIDEALBIC = "TRIONL2U"
   153  )
   154  
   155  // How card details were read in this transaction.
   156  type ConfirmationTokenPaymentMethodPreviewInteracPresentReadMethod string
   157  
   158  // List of values that ConfirmationTokenPaymentMethodPreviewInteracPresentReadMethod can take
   159  const (
   160  	ConfirmationTokenPaymentMethodPreviewInteracPresentReadMethodContactEmv               ConfirmationTokenPaymentMethodPreviewInteracPresentReadMethod = "contact_emv"
   161  	ConfirmationTokenPaymentMethodPreviewInteracPresentReadMethodContactlessEmv           ConfirmationTokenPaymentMethodPreviewInteracPresentReadMethod = "contactless_emv"
   162  	ConfirmationTokenPaymentMethodPreviewInteracPresentReadMethodContactlessMagstripeMode ConfirmationTokenPaymentMethodPreviewInteracPresentReadMethod = "contactless_magstripe_mode"
   163  	ConfirmationTokenPaymentMethodPreviewInteracPresentReadMethodMagneticStripeFallback   ConfirmationTokenPaymentMethodPreviewInteracPresentReadMethod = "magnetic_stripe_fallback"
   164  	ConfirmationTokenPaymentMethodPreviewInteracPresentReadMethodMagneticStripeTrack2     ConfirmationTokenPaymentMethodPreviewInteracPresentReadMethod = "magnetic_stripe_track2"
   165  )
   166  
   167  // The customer's bank, if provided.
   168  type ConfirmationTokenPaymentMethodPreviewP24Bank string
   169  
   170  // List of values that ConfirmationTokenPaymentMethodPreviewP24Bank can take
   171  const (
   172  	ConfirmationTokenPaymentMethodPreviewP24BankAliorBank            ConfirmationTokenPaymentMethodPreviewP24Bank = "alior_bank"
   173  	ConfirmationTokenPaymentMethodPreviewP24BankBankMillennium       ConfirmationTokenPaymentMethodPreviewP24Bank = "bank_millennium"
   174  	ConfirmationTokenPaymentMethodPreviewP24BankBankNowyBfgSa        ConfirmationTokenPaymentMethodPreviewP24Bank = "bank_nowy_bfg_sa"
   175  	ConfirmationTokenPaymentMethodPreviewP24BankBankPekaoSa          ConfirmationTokenPaymentMethodPreviewP24Bank = "bank_pekao_sa"
   176  	ConfirmationTokenPaymentMethodPreviewP24BankBankiSpbdzielcze     ConfirmationTokenPaymentMethodPreviewP24Bank = "banki_spbdzielcze"
   177  	ConfirmationTokenPaymentMethodPreviewP24BankBLIK                 ConfirmationTokenPaymentMethodPreviewP24Bank = "blik"
   178  	ConfirmationTokenPaymentMethodPreviewP24BankBnpParibas           ConfirmationTokenPaymentMethodPreviewP24Bank = "bnp_paribas"
   179  	ConfirmationTokenPaymentMethodPreviewP24BankBoz                  ConfirmationTokenPaymentMethodPreviewP24Bank = "boz"
   180  	ConfirmationTokenPaymentMethodPreviewP24BankCitiHandlowy         ConfirmationTokenPaymentMethodPreviewP24Bank = "citi_handlowy"
   181  	ConfirmationTokenPaymentMethodPreviewP24BankCreditAgricole       ConfirmationTokenPaymentMethodPreviewP24Bank = "credit_agricole"
   182  	ConfirmationTokenPaymentMethodPreviewP24BankEnvelobank           ConfirmationTokenPaymentMethodPreviewP24Bank = "envelobank"
   183  	ConfirmationTokenPaymentMethodPreviewP24BankEtransferPocztowy24  ConfirmationTokenPaymentMethodPreviewP24Bank = "etransfer_pocztowy24"
   184  	ConfirmationTokenPaymentMethodPreviewP24BankGetinBank            ConfirmationTokenPaymentMethodPreviewP24Bank = "getin_bank"
   185  	ConfirmationTokenPaymentMethodPreviewP24BankIdeabank             ConfirmationTokenPaymentMethodPreviewP24Bank = "ideabank"
   186  	ConfirmationTokenPaymentMethodPreviewP24BankIng                  ConfirmationTokenPaymentMethodPreviewP24Bank = "ing"
   187  	ConfirmationTokenPaymentMethodPreviewP24BankInteligo             ConfirmationTokenPaymentMethodPreviewP24Bank = "inteligo"
   188  	ConfirmationTokenPaymentMethodPreviewP24BankMbankMtransfer       ConfirmationTokenPaymentMethodPreviewP24Bank = "mbank_mtransfer"
   189  	ConfirmationTokenPaymentMethodPreviewP24BankNestPrzelew          ConfirmationTokenPaymentMethodPreviewP24Bank = "nest_przelew"
   190  	ConfirmationTokenPaymentMethodPreviewP24BankNoblePay             ConfirmationTokenPaymentMethodPreviewP24Bank = "noble_pay"
   191  	ConfirmationTokenPaymentMethodPreviewP24BankPbacZIpko            ConfirmationTokenPaymentMethodPreviewP24Bank = "pbac_z_ipko"
   192  	ConfirmationTokenPaymentMethodPreviewP24BankPlusBank             ConfirmationTokenPaymentMethodPreviewP24Bank = "plus_bank"
   193  	ConfirmationTokenPaymentMethodPreviewP24BankSantanderPrzelew24   ConfirmationTokenPaymentMethodPreviewP24Bank = "santander_przelew24"
   194  	ConfirmationTokenPaymentMethodPreviewP24BankTmobileUsbugiBankowe ConfirmationTokenPaymentMethodPreviewP24Bank = "tmobile_usbugi_bankowe"
   195  	ConfirmationTokenPaymentMethodPreviewP24BankToyotaBank           ConfirmationTokenPaymentMethodPreviewP24Bank = "toyota_bank"
   196  	ConfirmationTokenPaymentMethodPreviewP24BankVelobank             ConfirmationTokenPaymentMethodPreviewP24Bank = "velobank"
   197  	ConfirmationTokenPaymentMethodPreviewP24BankVolkswagenBank       ConfirmationTokenPaymentMethodPreviewP24Bank = "volkswagen_bank"
   198  )
   199  
   200  // The type of the PaymentMethod. An additional hash is included on the PaymentMethod with a name matching this value. It contains additional information specific to the PaymentMethod type.
   201  type ConfirmationTokenPaymentMethodPreviewType string
   202  
   203  // List of values that ConfirmationTokenPaymentMethodPreviewType can take
   204  const (
   205  	ConfirmationTokenPaymentMethodPreviewTypeACSSDebit        ConfirmationTokenPaymentMethodPreviewType = "acss_debit"
   206  	ConfirmationTokenPaymentMethodPreviewTypeAffirm           ConfirmationTokenPaymentMethodPreviewType = "affirm"
   207  	ConfirmationTokenPaymentMethodPreviewTypeAfterpayClearpay ConfirmationTokenPaymentMethodPreviewType = "afterpay_clearpay"
   208  	ConfirmationTokenPaymentMethodPreviewTypeAlipay           ConfirmationTokenPaymentMethodPreviewType = "alipay"
   209  	ConfirmationTokenPaymentMethodPreviewTypeAUBECSDebit      ConfirmationTokenPaymentMethodPreviewType = "au_becs_debit"
   210  	ConfirmationTokenPaymentMethodPreviewTypeBACSDebit        ConfirmationTokenPaymentMethodPreviewType = "bacs_debit"
   211  	ConfirmationTokenPaymentMethodPreviewTypeBancontact       ConfirmationTokenPaymentMethodPreviewType = "bancontact"
   212  	ConfirmationTokenPaymentMethodPreviewTypeBLIK             ConfirmationTokenPaymentMethodPreviewType = "blik"
   213  	ConfirmationTokenPaymentMethodPreviewTypeBoleto           ConfirmationTokenPaymentMethodPreviewType = "boleto"
   214  	ConfirmationTokenPaymentMethodPreviewTypeCard             ConfirmationTokenPaymentMethodPreviewType = "card"
   215  	ConfirmationTokenPaymentMethodPreviewTypeCardPresent      ConfirmationTokenPaymentMethodPreviewType = "card_present"
   216  	ConfirmationTokenPaymentMethodPreviewTypeCashApp          ConfirmationTokenPaymentMethodPreviewType = "cashapp"
   217  	ConfirmationTokenPaymentMethodPreviewTypeCustomerBalance  ConfirmationTokenPaymentMethodPreviewType = "customer_balance"
   218  	ConfirmationTokenPaymentMethodPreviewTypeEPS              ConfirmationTokenPaymentMethodPreviewType = "eps"
   219  	ConfirmationTokenPaymentMethodPreviewTypeFPX              ConfirmationTokenPaymentMethodPreviewType = "fpx"
   220  	ConfirmationTokenPaymentMethodPreviewTypeGiropay          ConfirmationTokenPaymentMethodPreviewType = "giropay"
   221  	ConfirmationTokenPaymentMethodPreviewTypeGrabpay          ConfirmationTokenPaymentMethodPreviewType = "grabpay"
   222  	ConfirmationTokenPaymentMethodPreviewTypeIDEAL            ConfirmationTokenPaymentMethodPreviewType = "ideal"
   223  	ConfirmationTokenPaymentMethodPreviewTypeInteracPresent   ConfirmationTokenPaymentMethodPreviewType = "interac_present"
   224  	ConfirmationTokenPaymentMethodPreviewTypeKlarna           ConfirmationTokenPaymentMethodPreviewType = "klarna"
   225  	ConfirmationTokenPaymentMethodPreviewTypeKonbini          ConfirmationTokenPaymentMethodPreviewType = "konbini"
   226  	ConfirmationTokenPaymentMethodPreviewTypeLink             ConfirmationTokenPaymentMethodPreviewType = "link"
   227  	ConfirmationTokenPaymentMethodPreviewTypeMobilepay        ConfirmationTokenPaymentMethodPreviewType = "mobilepay"
   228  	ConfirmationTokenPaymentMethodPreviewTypeOXXO             ConfirmationTokenPaymentMethodPreviewType = "oxxo"
   229  	ConfirmationTokenPaymentMethodPreviewTypeP24              ConfirmationTokenPaymentMethodPreviewType = "p24"
   230  	ConfirmationTokenPaymentMethodPreviewTypePayNow           ConfirmationTokenPaymentMethodPreviewType = "paynow"
   231  	ConfirmationTokenPaymentMethodPreviewTypePaypal           ConfirmationTokenPaymentMethodPreviewType = "paypal"
   232  	ConfirmationTokenPaymentMethodPreviewTypePix              ConfirmationTokenPaymentMethodPreviewType = "pix"
   233  	ConfirmationTokenPaymentMethodPreviewTypePromptPay        ConfirmationTokenPaymentMethodPreviewType = "promptpay"
   234  	ConfirmationTokenPaymentMethodPreviewTypeRevolutPay       ConfirmationTokenPaymentMethodPreviewType = "revolut_pay"
   235  	ConfirmationTokenPaymentMethodPreviewTypeSEPADebit        ConfirmationTokenPaymentMethodPreviewType = "sepa_debit"
   236  	ConfirmationTokenPaymentMethodPreviewTypeSofort           ConfirmationTokenPaymentMethodPreviewType = "sofort"
   237  	ConfirmationTokenPaymentMethodPreviewTypeSwish            ConfirmationTokenPaymentMethodPreviewType = "swish"
   238  	ConfirmationTokenPaymentMethodPreviewTypeUSBankAccount    ConfirmationTokenPaymentMethodPreviewType = "us_bank_account"
   239  	ConfirmationTokenPaymentMethodPreviewTypeWeChatPay        ConfirmationTokenPaymentMethodPreviewType = "wechat_pay"
   240  	ConfirmationTokenPaymentMethodPreviewTypeZip              ConfirmationTokenPaymentMethodPreviewType = "zip"
   241  )
   242  
   243  // Account holder type: individual or company.
   244  type ConfirmationTokenPaymentMethodPreviewUSBankAccountAccountHolderType string
   245  
   246  // List of values that ConfirmationTokenPaymentMethodPreviewUSBankAccountAccountHolderType can take
   247  const (
   248  	ConfirmationTokenPaymentMethodPreviewUSBankAccountAccountHolderTypeCompany    ConfirmationTokenPaymentMethodPreviewUSBankAccountAccountHolderType = "company"
   249  	ConfirmationTokenPaymentMethodPreviewUSBankAccountAccountHolderTypeIndividual ConfirmationTokenPaymentMethodPreviewUSBankAccountAccountHolderType = "individual"
   250  )
   251  
   252  // Account type: checkings or savings. Defaults to checking if omitted.
   253  type ConfirmationTokenPaymentMethodPreviewUSBankAccountAccountType string
   254  
   255  // List of values that ConfirmationTokenPaymentMethodPreviewUSBankAccountAccountType can take
   256  const (
   257  	ConfirmationTokenPaymentMethodPreviewUSBankAccountAccountTypeChecking ConfirmationTokenPaymentMethodPreviewUSBankAccountAccountType = "checking"
   258  	ConfirmationTokenPaymentMethodPreviewUSBankAccountAccountTypeSavings  ConfirmationTokenPaymentMethodPreviewUSBankAccountAccountType = "savings"
   259  )
   260  
   261  // All supported networks.
   262  type ConfirmationTokenPaymentMethodPreviewUSBankAccountNetworksSupported string
   263  
   264  // List of values that ConfirmationTokenPaymentMethodPreviewUSBankAccountNetworksSupported can take
   265  const (
   266  	ConfirmationTokenPaymentMethodPreviewUSBankAccountNetworksSupportedACH            ConfirmationTokenPaymentMethodPreviewUSBankAccountNetworksSupported = "ach"
   267  	ConfirmationTokenPaymentMethodPreviewUSBankAccountNetworksSupportedUSDomesticWire ConfirmationTokenPaymentMethodPreviewUSBankAccountNetworksSupported = "us_domestic_wire"
   268  )
   269  
   270  // The ACH network code that resulted in this block.
   271  type ConfirmationTokenPaymentMethodPreviewUSBankAccountStatusDetailsBlockedNetworkCode string
   272  
   273  // List of values that ConfirmationTokenPaymentMethodPreviewUSBankAccountStatusDetailsBlockedNetworkCode can take
   274  const (
   275  	ConfirmationTokenPaymentMethodPreviewUSBankAccountStatusDetailsBlockedNetworkCodeR02 ConfirmationTokenPaymentMethodPreviewUSBankAccountStatusDetailsBlockedNetworkCode = "R02"
   276  	ConfirmationTokenPaymentMethodPreviewUSBankAccountStatusDetailsBlockedNetworkCodeR03 ConfirmationTokenPaymentMethodPreviewUSBankAccountStatusDetailsBlockedNetworkCode = "R03"
   277  	ConfirmationTokenPaymentMethodPreviewUSBankAccountStatusDetailsBlockedNetworkCodeR04 ConfirmationTokenPaymentMethodPreviewUSBankAccountStatusDetailsBlockedNetworkCode = "R04"
   278  	ConfirmationTokenPaymentMethodPreviewUSBankAccountStatusDetailsBlockedNetworkCodeR05 ConfirmationTokenPaymentMethodPreviewUSBankAccountStatusDetailsBlockedNetworkCode = "R05"
   279  	ConfirmationTokenPaymentMethodPreviewUSBankAccountStatusDetailsBlockedNetworkCodeR07 ConfirmationTokenPaymentMethodPreviewUSBankAccountStatusDetailsBlockedNetworkCode = "R07"
   280  	ConfirmationTokenPaymentMethodPreviewUSBankAccountStatusDetailsBlockedNetworkCodeR08 ConfirmationTokenPaymentMethodPreviewUSBankAccountStatusDetailsBlockedNetworkCode = "R08"
   281  	ConfirmationTokenPaymentMethodPreviewUSBankAccountStatusDetailsBlockedNetworkCodeR10 ConfirmationTokenPaymentMethodPreviewUSBankAccountStatusDetailsBlockedNetworkCode = "R10"
   282  	ConfirmationTokenPaymentMethodPreviewUSBankAccountStatusDetailsBlockedNetworkCodeR11 ConfirmationTokenPaymentMethodPreviewUSBankAccountStatusDetailsBlockedNetworkCode = "R11"
   283  	ConfirmationTokenPaymentMethodPreviewUSBankAccountStatusDetailsBlockedNetworkCodeR16 ConfirmationTokenPaymentMethodPreviewUSBankAccountStatusDetailsBlockedNetworkCode = "R16"
   284  	ConfirmationTokenPaymentMethodPreviewUSBankAccountStatusDetailsBlockedNetworkCodeR20 ConfirmationTokenPaymentMethodPreviewUSBankAccountStatusDetailsBlockedNetworkCode = "R20"
   285  	ConfirmationTokenPaymentMethodPreviewUSBankAccountStatusDetailsBlockedNetworkCodeR29 ConfirmationTokenPaymentMethodPreviewUSBankAccountStatusDetailsBlockedNetworkCode = "R29"
   286  	ConfirmationTokenPaymentMethodPreviewUSBankAccountStatusDetailsBlockedNetworkCodeR31 ConfirmationTokenPaymentMethodPreviewUSBankAccountStatusDetailsBlockedNetworkCode = "R31"
   287  )
   288  
   289  // The reason why this PaymentMethod's fingerprint has been blocked
   290  type ConfirmationTokenPaymentMethodPreviewUSBankAccountStatusDetailsBlockedReason string
   291  
   292  // List of values that ConfirmationTokenPaymentMethodPreviewUSBankAccountStatusDetailsBlockedReason can take
   293  const (
   294  	ConfirmationTokenPaymentMethodPreviewUSBankAccountStatusDetailsBlockedReasonBankAccountClosed         ConfirmationTokenPaymentMethodPreviewUSBankAccountStatusDetailsBlockedReason = "bank_account_closed"
   295  	ConfirmationTokenPaymentMethodPreviewUSBankAccountStatusDetailsBlockedReasonBankAccountFrozen         ConfirmationTokenPaymentMethodPreviewUSBankAccountStatusDetailsBlockedReason = "bank_account_frozen"
   296  	ConfirmationTokenPaymentMethodPreviewUSBankAccountStatusDetailsBlockedReasonBankAccountInvalidDetails ConfirmationTokenPaymentMethodPreviewUSBankAccountStatusDetailsBlockedReason = "bank_account_invalid_details"
   297  	ConfirmationTokenPaymentMethodPreviewUSBankAccountStatusDetailsBlockedReasonBankAccountRestricted     ConfirmationTokenPaymentMethodPreviewUSBankAccountStatusDetailsBlockedReason = "bank_account_restricted"
   298  	ConfirmationTokenPaymentMethodPreviewUSBankAccountStatusDetailsBlockedReasonBankAccountUnusable       ConfirmationTokenPaymentMethodPreviewUSBankAccountStatusDetailsBlockedReason = "bank_account_unusable"
   299  	ConfirmationTokenPaymentMethodPreviewUSBankAccountStatusDetailsBlockedReasonDebitNotAuthorized        ConfirmationTokenPaymentMethodPreviewUSBankAccountStatusDetailsBlockedReason = "debit_not_authorized"
   300  )
   301  
   302  // Indicates that you intend to make future payments with this ConfirmationToken's payment method.
   303  //
   304  // The presence of this property will [attach the payment method](https://stripe.com/docs/payments/save-during-payment) to the PaymentIntent's Customer, if present, after the PaymentIntent is confirmed and any required actions from the user are complete.
   305  type ConfirmationTokenSetupFutureUsage string
   306  
   307  // List of values that ConfirmationTokenSetupFutureUsage can take
   308  const (
   309  	ConfirmationTokenSetupFutureUsageOffSession ConfirmationTokenSetupFutureUsage = "off_session"
   310  	ConfirmationTokenSetupFutureUsageOnSession  ConfirmationTokenSetupFutureUsage = "on_session"
   311  )
   312  
   313  // Retrieves an existing ConfirmationToken object
   314  type ConfirmationTokenParams struct {
   315  	Params `form:"*"`
   316  	// Specifies which fields in the response should be expanded.
   317  	Expand []*string `form:"expand"`
   318  }
   319  
   320  // AddExpand appends a new field to expand.
   321  func (p *ConfirmationTokenParams) AddExpand(f string) {
   322  	p.Expand = append(p.Expand, &f)
   323  }
   324  
   325  // If this is a Mandate accepted online, this hash contains details about the online acceptance.
   326  type ConfirmationTokenMandateDataCustomerAcceptanceOnline struct {
   327  	// The IP address from which the Mandate was accepted by the customer.
   328  	IPAddress string `json:"ip_address"`
   329  	// The user agent of the browser from which the Mandate was accepted by the customer.
   330  	UserAgent string `json:"user_agent"`
   331  }
   332  
   333  // This hash contains details about the customer acceptance of the Mandate.
   334  type ConfirmationTokenMandateDataCustomerAcceptance struct {
   335  	// If this is a Mandate accepted online, this hash contains details about the online acceptance.
   336  	Online *ConfirmationTokenMandateDataCustomerAcceptanceOnline `json:"online"`
   337  	// The type of customer acceptance information included with the Mandate.
   338  	Type string `json:"type"`
   339  }
   340  
   341  // Data used for generating a Mandate.
   342  type ConfirmationTokenMandateData struct {
   343  	// This hash contains details about the customer acceptance of the Mandate.
   344  	CustomerAcceptance *ConfirmationTokenMandateDataCustomerAcceptance `json:"customer_acceptance"`
   345  }
   346  type ConfirmationTokenPaymentMethodPreviewACSSDebit struct {
   347  	// Name of the bank associated with the bank account.
   348  	BankName string `json:"bank_name"`
   349  	// Uniquely identifies this particular bank account. You can use this attribute to check whether two bank accounts are the same.
   350  	Fingerprint string `json:"fingerprint"`
   351  	// Institution number of the bank account.
   352  	InstitutionNumber string `json:"institution_number"`
   353  	// Last four digits of the bank account number.
   354  	Last4 string `json:"last4"`
   355  	// Transit number of the bank account.
   356  	TransitNumber string `json:"transit_number"`
   357  }
   358  type ConfirmationTokenPaymentMethodPreviewAffirm struct{}
   359  type ConfirmationTokenPaymentMethodPreviewAfterpayClearpay struct{}
   360  type ConfirmationTokenPaymentMethodPreviewAlipay struct{}
   361  type ConfirmationTokenPaymentMethodPreviewAUBECSDebit struct {
   362  	// Six-digit number identifying bank and branch associated with this bank account.
   363  	BSBNumber string `json:"bsb_number"`
   364  	// Uniquely identifies this particular bank account. You can use this attribute to check whether two bank accounts are the same.
   365  	Fingerprint string `json:"fingerprint"`
   366  	// Last four digits of the bank account number.
   367  	Last4 string `json:"last4"`
   368  }
   369  type ConfirmationTokenPaymentMethodPreviewBACSDebit struct {
   370  	// Uniquely identifies this particular bank account. You can use this attribute to check whether two bank accounts are the same.
   371  	Fingerprint string `json:"fingerprint"`
   372  	// Last four digits of the bank account number.
   373  	Last4 string `json:"last4"`
   374  	// Sort code of the bank account. (e.g., `10-20-30`)
   375  	SortCode string `json:"sort_code"`
   376  }
   377  type ConfirmationTokenPaymentMethodPreviewBancontact struct{}
   378  type ConfirmationTokenPaymentMethodPreviewBillingDetails struct {
   379  	// Billing address.
   380  	Address *Address `json:"address"`
   381  	// Email address.
   382  	Email string `json:"email"`
   383  	// Full name.
   384  	Name string `json:"name"`
   385  	// Billing phone number (including extension).
   386  	Phone string `json:"phone"`
   387  }
   388  type ConfirmationTokenPaymentMethodPreviewBLIK struct{}
   389  type ConfirmationTokenPaymentMethodPreviewBoleto struct {
   390  	// Uniquely identifies the customer tax id (CNPJ or CPF)
   391  	TaxID string `json:"tax_id"`
   392  }
   393  
   394  // Checks on Card address and CVC if provided.
   395  type ConfirmationTokenPaymentMethodPreviewCardChecks struct {
   396  	// If a address line1 was provided, results of the check, one of `pass`, `fail`, `unavailable`, or `unchecked`.
   397  	AddressLine1Check string `json:"address_line1_check"`
   398  	// If a address postal code was provided, results of the check, one of `pass`, `fail`, `unavailable`, or `unchecked`.
   399  	AddressPostalCodeCheck string `json:"address_postal_code_check"`
   400  	// If a CVC was provided, results of the check, one of `pass`, `fail`, `unavailable`, or `unchecked`.
   401  	CVCCheck string `json:"cvc_check"`
   402  }
   403  
   404  // Contains information about card networks that can be used to process the payment.
   405  type ConfirmationTokenPaymentMethodPreviewCardNetworks struct {
   406  	// All available networks for the card.
   407  	Available []string `json:"available"`
   408  	// The preferred network for co-branded cards. Can be `cartes_bancaires`, `mastercard`, `visa` or `invalid_preference` if requested network is not valid for the card.
   409  	Preferred string `json:"preferred"`
   410  }
   411  
   412  // Contains details on how this Card may be used for 3D Secure authentication.
   413  type ConfirmationTokenPaymentMethodPreviewCardThreeDSecureUsage struct {
   414  	// Whether 3D Secure is supported on this card.
   415  	Supported bool `json:"supported"`
   416  }
   417  type ConfirmationTokenPaymentMethodPreviewCardWalletAmexExpressCheckout struct{}
   418  type ConfirmationTokenPaymentMethodPreviewCardWalletApplePay struct{}
   419  type ConfirmationTokenPaymentMethodPreviewCardWalletGooglePay struct{}
   420  type ConfirmationTokenPaymentMethodPreviewCardWalletLink struct{}
   421  type ConfirmationTokenPaymentMethodPreviewCardWalletMasterpass struct {
   422  	// Owner's verified billing address. Values are verified or provided by the wallet directly (if supported) at the time of authorization or settlement. They cannot be set or mutated.
   423  	BillingAddress *Address `json:"billing_address"`
   424  	// Owner's verified email. Values are verified or provided by the wallet directly (if supported) at the time of authorization or settlement. They cannot be set or mutated.
   425  	Email string `json:"email"`
   426  	// Owner's verified full name. Values are verified or provided by the wallet directly (if supported) at the time of authorization or settlement. They cannot be set or mutated.
   427  	Name string `json:"name"`
   428  	// Owner's verified shipping address. Values are verified or provided by the wallet directly (if supported) at the time of authorization or settlement. They cannot be set or mutated.
   429  	ShippingAddress *Address `json:"shipping_address"`
   430  }
   431  type ConfirmationTokenPaymentMethodPreviewCardWalletSamsungPay struct{}
   432  type ConfirmationTokenPaymentMethodPreviewCardWalletVisaCheckout struct {
   433  	// Owner's verified billing address. Values are verified or provided by the wallet directly (if supported) at the time of authorization or settlement. They cannot be set or mutated.
   434  	BillingAddress *Address `json:"billing_address"`
   435  	// Owner's verified email. Values are verified or provided by the wallet directly (if supported) at the time of authorization or settlement. They cannot be set or mutated.
   436  	Email string `json:"email"`
   437  	// Owner's verified full name. Values are verified or provided by the wallet directly (if supported) at the time of authorization or settlement. They cannot be set or mutated.
   438  	Name string `json:"name"`
   439  	// Owner's verified shipping address. Values are verified or provided by the wallet directly (if supported) at the time of authorization or settlement. They cannot be set or mutated.
   440  	ShippingAddress *Address `json:"shipping_address"`
   441  }
   442  
   443  // If this Card is part of a card wallet, this contains the details of the card wallet.
   444  type ConfirmationTokenPaymentMethodPreviewCardWallet struct {
   445  	AmexExpressCheckout *ConfirmationTokenPaymentMethodPreviewCardWalletAmexExpressCheckout `json:"amex_express_checkout"`
   446  	ApplePay            *ConfirmationTokenPaymentMethodPreviewCardWalletApplePay            `json:"apple_pay"`
   447  	// (For tokenized numbers only.) The last four digits of the device account number.
   448  	DynamicLast4 string                                                     `json:"dynamic_last4"`
   449  	GooglePay    *ConfirmationTokenPaymentMethodPreviewCardWalletGooglePay  `json:"google_pay"`
   450  	Link         *ConfirmationTokenPaymentMethodPreviewCardWalletLink       `json:"link"`
   451  	Masterpass   *ConfirmationTokenPaymentMethodPreviewCardWalletMasterpass `json:"masterpass"`
   452  	SamsungPay   *ConfirmationTokenPaymentMethodPreviewCardWalletSamsungPay `json:"samsung_pay"`
   453  	// The type of the card wallet, one of `amex_express_checkout`, `apple_pay`, `google_pay`, `masterpass`, `samsung_pay`, `visa_checkout`, or `link`. An additional hash is included on the Wallet subhash with a name matching this value. It contains additional information specific to the card wallet type.
   454  	Type         ConfirmationTokenPaymentMethodPreviewCardWalletType          `json:"type"`
   455  	VisaCheckout *ConfirmationTokenPaymentMethodPreviewCardWalletVisaCheckout `json:"visa_checkout"`
   456  }
   457  type ConfirmationTokenPaymentMethodPreviewCard struct {
   458  	// Card brand. Can be `amex`, `diners`, `discover`, `eftpos_au`, `jcb`, `mastercard`, `unionpay`, `visa`, or `unknown`.
   459  	Brand string `json:"brand"`
   460  	// Checks on Card address and CVC if provided.
   461  	Checks *ConfirmationTokenPaymentMethodPreviewCardChecks `json:"checks"`
   462  	// Two-letter ISO code representing the country of the card. You could use this attribute to get a sense of the international breakdown of cards you've collected.
   463  	Country string `json:"country"`
   464  	// A high-level description of the type of cards issued in this range. (For internal use only and not typically available in standard API requests.)
   465  	Description string `json:"description"`
   466  	// The brand to use when displaying the card, this accounts for customer's brand choice on dual-branded cards. Can be `american_express`, `cartes_bancaires`, `diners_club`, `discover`, `eftpos_australia`, `interac`, `jcb`, `mastercard`, `union_pay`, `visa`, or `other` and may contain more values in the future.
   467  	DisplayBrand string `json:"display_brand"`
   468  	// Two-digit number representing the card's expiration month.
   469  	ExpMonth int64 `json:"exp_month"`
   470  	// Four-digit number representing the card's expiration year.
   471  	ExpYear int64 `json:"exp_year"`
   472  	// Uniquely identifies this particular card number. You can use this attribute to check whether two customers who've signed up with you are using the same card number, for example. For payment methods that tokenize card information (Apple Pay, Google Pay), the tokenized number might be provided instead of the underlying card number.
   473  	//
   474  	// *As of May 1, 2021, card fingerprint in India for Connect changed to allow two fingerprints for the same card---one for India and one for the rest of the world.*
   475  	Fingerprint string `json:"fingerprint"`
   476  	// Card funding type. Can be `credit`, `debit`, `prepaid`, or `unknown`.
   477  	Funding string `json:"funding"`
   478  	// Issuer identification number of the card. (For internal use only and not typically available in standard API requests.)
   479  	IIN string `json:"iin"`
   480  	// The name of the card's issuing bank. (For internal use only and not typically available in standard API requests.)
   481  	Issuer string `json:"issuer"`
   482  	// The last four digits of the card.
   483  	Last4 string `json:"last4"`
   484  	// Contains information about card networks that can be used to process the payment.
   485  	Networks *ConfirmationTokenPaymentMethodPreviewCardNetworks `json:"networks"`
   486  	// Contains details on how this Card may be used for 3D Secure authentication.
   487  	ThreeDSecureUsage *ConfirmationTokenPaymentMethodPreviewCardThreeDSecureUsage `json:"three_d_secure_usage"`
   488  	// If this Card is part of a card wallet, this contains the details of the card wallet.
   489  	Wallet *ConfirmationTokenPaymentMethodPreviewCardWallet `json:"wallet"`
   490  }
   491  
   492  // Contains information about card networks that can be used to process the payment.
   493  type ConfirmationTokenPaymentMethodPreviewCardPresentNetworks struct {
   494  	// All available networks for the card.
   495  	Available []string `json:"available"`
   496  	// The preferred network for the card.
   497  	Preferred string `json:"preferred"`
   498  }
   499  type ConfirmationTokenPaymentMethodPreviewCardPresent struct {
   500  	// Card brand. Can be `amex`, `diners`, `discover`, `eftpos_au`, `jcb`, `mastercard`, `unionpay`, `visa`, or `unknown`.
   501  	Brand string `json:"brand"`
   502  	// The cardholder name as read from the card, in [ISO 7813](https://en.wikipedia.org/wiki/ISO/IEC_7813) format. May include alphanumeric characters, special characters and first/last name separator (`/`). In some cases, the cardholder name may not be available depending on how the issuer has configured the card. Cardholder name is typically not available on swipe or contactless payments, such as those made with Apple Pay and Google Pay.
   503  	CardholderName string `json:"cardholder_name"`
   504  	// Two-letter ISO code representing the country of the card. You could use this attribute to get a sense of the international breakdown of cards you've collected.
   505  	Country string `json:"country"`
   506  	// A high-level description of the type of cards issued in this range. (For internal use only and not typically available in standard API requests.)
   507  	Description string `json:"description"`
   508  	// Two-digit number representing the card's expiration month.
   509  	ExpMonth int64 `json:"exp_month"`
   510  	// Four-digit number representing the card's expiration year.
   511  	ExpYear int64 `json:"exp_year"`
   512  	// Uniquely identifies this particular card number. You can use this attribute to check whether two customers who've signed up with you are using the same card number, for example. For payment methods that tokenize card information (Apple Pay, Google Pay), the tokenized number might be provided instead of the underlying card number.
   513  	//
   514  	// *As of May 1, 2021, card fingerprint in India for Connect changed to allow two fingerprints for the same card---one for India and one for the rest of the world.*
   515  	Fingerprint string `json:"fingerprint"`
   516  	// Card funding type. Can be `credit`, `debit`, `prepaid`, or `unknown`.
   517  	Funding string `json:"funding"`
   518  	// Issuer identification number of the card. (For internal use only and not typically available in standard API requests.)
   519  	IIN string `json:"iin"`
   520  	// The name of the card's issuing bank. (For internal use only and not typically available in standard API requests.)
   521  	Issuer string `json:"issuer"`
   522  	// The last four digits of the card.
   523  	Last4 string `json:"last4"`
   524  	// Contains information about card networks that can be used to process the payment.
   525  	Networks *ConfirmationTokenPaymentMethodPreviewCardPresentNetworks `json:"networks"`
   526  	// How card details were read in this transaction.
   527  	ReadMethod ConfirmationTokenPaymentMethodPreviewCardPresentReadMethod `json:"read_method"`
   528  }
   529  type ConfirmationTokenPaymentMethodPreviewCashApp struct {
   530  	// A unique and immutable identifier assigned by Cash App to every buyer.
   531  	BuyerID string `json:"buyer_id"`
   532  	// A public identifier for buyers using Cash App.
   533  	Cashtag string `json:"cashtag"`
   534  }
   535  type ConfirmationTokenPaymentMethodPreviewCustomerBalance struct{}
   536  type ConfirmationTokenPaymentMethodPreviewEPS struct {
   537  	// The customer's bank. Should be one of `arzte_und_apotheker_bank`, `austrian_anadi_bank_ag`, `bank_austria`, `bankhaus_carl_spangler`, `bankhaus_schelhammer_und_schattera_ag`, `bawag_psk_ag`, `bks_bank_ag`, `brull_kallmus_bank_ag`, `btv_vier_lander_bank`, `capital_bank_grawe_gruppe_ag`, `deutsche_bank_ag`, `dolomitenbank`, `easybank_ag`, `erste_bank_und_sparkassen`, `hypo_alpeadriabank_international_ag`, `hypo_noe_lb_fur_niederosterreich_u_wien`, `hypo_oberosterreich_salzburg_steiermark`, `hypo_tirol_bank_ag`, `hypo_vorarlberg_bank_ag`, `hypo_bank_burgenland_aktiengesellschaft`, `marchfelder_bank`, `oberbank_ag`, `raiffeisen_bankengruppe_osterreich`, `schoellerbank_ag`, `sparda_bank_wien`, `volksbank_gruppe`, `volkskreditbank_ag`, or `vr_bank_braunau`.
   538  	Bank ConfirmationTokenPaymentMethodPreviewEPSBank `json:"bank"`
   539  }
   540  type ConfirmationTokenPaymentMethodPreviewFPX struct {
   541  	// Account holder type, if provided. Can be one of `individual` or `company`.
   542  	AccountHolderType ConfirmationTokenPaymentMethodPreviewFPXAccountHolderType `json:"account_holder_type"`
   543  	// The customer's bank, if provided. Can be one of `affin_bank`, `agrobank`, `alliance_bank`, `ambank`, `bank_islam`, `bank_muamalat`, `bank_rakyat`, `bsn`, `cimb`, `hong_leong_bank`, `hsbc`, `kfh`, `maybank2u`, `ocbc`, `public_bank`, `rhb`, `standard_chartered`, `uob`, `deutsche_bank`, `maybank2e`, `pb_enterprise`, or `bank_of_china`.
   544  	Bank ConfirmationTokenPaymentMethodPreviewFPXBank `json:"bank"`
   545  }
   546  type ConfirmationTokenPaymentMethodPreviewGiropay struct{}
   547  type ConfirmationTokenPaymentMethodPreviewGrabpay struct{}
   548  type ConfirmationTokenPaymentMethodPreviewIDEAL struct {
   549  	// The customer's bank, if provided. Can be one of `abn_amro`, `asn_bank`, `bunq`, `handelsbanken`, `ing`, `knab`, `moneyou`, `n26`, `nn`, `rabobank`, `regiobank`, `revolut`, `sns_bank`, `triodos_bank`, `van_lanschot`, or `yoursafe`.
   550  	Bank ConfirmationTokenPaymentMethodPreviewIDEALBank `json:"bank"`
   551  	// The Bank Identifier Code of the customer's bank, if the bank was provided.
   552  	BIC ConfirmationTokenPaymentMethodPreviewIDEALBIC `json:"bic"`
   553  }
   554  
   555  // Contains information about card networks that can be used to process the payment.
   556  type ConfirmationTokenPaymentMethodPreviewInteracPresentNetworks struct {
   557  	// All available networks for the card.
   558  	Available []string `json:"available"`
   559  	// The preferred network for the card.
   560  	Preferred string `json:"preferred"`
   561  }
   562  type ConfirmationTokenPaymentMethodPreviewInteracPresent struct {
   563  	// Card brand. Can be `interac`, `mastercard` or `visa`.
   564  	Brand string `json:"brand"`
   565  	// The cardholder name as read from the card, in [ISO 7813](https://en.wikipedia.org/wiki/ISO/IEC_7813) format. May include alphanumeric characters, special characters and first/last name separator (`/`). In some cases, the cardholder name may not be available depending on how the issuer has configured the card. Cardholder name is typically not available on swipe or contactless payments, such as those made with Apple Pay and Google Pay.
   566  	CardholderName string `json:"cardholder_name"`
   567  	// Two-letter ISO code representing the country of the card. You could use this attribute to get a sense of the international breakdown of cards you've collected.
   568  	Country string `json:"country"`
   569  	// A high-level description of the type of cards issued in this range. (For internal use only and not typically available in standard API requests.)
   570  	Description string `json:"description"`
   571  	// Two-digit number representing the card's expiration month.
   572  	ExpMonth int64 `json:"exp_month"`
   573  	// Four-digit number representing the card's expiration year.
   574  	ExpYear int64 `json:"exp_year"`
   575  	// Uniquely identifies this particular card number. You can use this attribute to check whether two customers who've signed up with you are using the same card number, for example. For payment methods that tokenize card information (Apple Pay, Google Pay), the tokenized number might be provided instead of the underlying card number.
   576  	//
   577  	// *As of May 1, 2021, card fingerprint in India for Connect changed to allow two fingerprints for the same card---one for India and one for the rest of the world.*
   578  	Fingerprint string `json:"fingerprint"`
   579  	// Card funding type. Can be `credit`, `debit`, `prepaid`, or `unknown`.
   580  	Funding string `json:"funding"`
   581  	// Issuer identification number of the card. (For internal use only and not typically available in standard API requests.)
   582  	IIN string `json:"iin"`
   583  	// The name of the card's issuing bank. (For internal use only and not typically available in standard API requests.)
   584  	Issuer string `json:"issuer"`
   585  	// The last four digits of the card.
   586  	Last4 string `json:"last4"`
   587  	// Contains information about card networks that can be used to process the payment.
   588  	Networks *ConfirmationTokenPaymentMethodPreviewInteracPresentNetworks `json:"networks"`
   589  	// EMV tag 5F2D. Preferred languages specified by the integrated circuit chip.
   590  	PreferredLocales []string `json:"preferred_locales"`
   591  	// How card details were read in this transaction.
   592  	ReadMethod ConfirmationTokenPaymentMethodPreviewInteracPresentReadMethod `json:"read_method"`
   593  }
   594  
   595  // The customer's date of birth, if provided.
   596  type ConfirmationTokenPaymentMethodPreviewKlarnaDOB struct {
   597  	// The day of birth, between 1 and 31.
   598  	Day int64 `json:"day"`
   599  	// The month of birth, between 1 and 12.
   600  	Month int64 `json:"month"`
   601  	// The four-digit year of birth.
   602  	Year int64 `json:"year"`
   603  }
   604  type ConfirmationTokenPaymentMethodPreviewKlarna struct {
   605  	// The customer's date of birth, if provided.
   606  	DOB *ConfirmationTokenPaymentMethodPreviewKlarnaDOB `json:"dob"`
   607  }
   608  type ConfirmationTokenPaymentMethodPreviewKonbini struct{}
   609  type ConfirmationTokenPaymentMethodPreviewLink struct {
   610  	// Account owner's email address.
   611  	Email string `json:"email"`
   612  	// [Deprecated] This is a legacy parameter that no longer has any function.
   613  	PersistentToken string `json:"persistent_token"`
   614  }
   615  type ConfirmationTokenPaymentMethodPreviewMobilepay struct{}
   616  type ConfirmationTokenPaymentMethodPreviewOXXO struct{}
   617  type ConfirmationTokenPaymentMethodPreviewP24 struct {
   618  	// The customer's bank, if provided.
   619  	Bank ConfirmationTokenPaymentMethodPreviewP24Bank `json:"bank"`
   620  }
   621  type ConfirmationTokenPaymentMethodPreviewPayNow struct{}
   622  type ConfirmationTokenPaymentMethodPreviewPaypal struct {
   623  	// Owner's email. Values are provided by PayPal directly
   624  	// (if supported) at the time of authorization or settlement. They cannot be set or mutated.
   625  	PayerEmail string `json:"payer_email"`
   626  	// PayPal account PayerID. This identifier uniquely identifies the PayPal customer.
   627  	PayerID string `json:"payer_id"`
   628  }
   629  type ConfirmationTokenPaymentMethodPreviewPix struct{}
   630  type ConfirmationTokenPaymentMethodPreviewPromptPay struct{}
   631  type ConfirmationTokenPaymentMethodPreviewRevolutPay struct{}
   632  
   633  // Information about the object that generated this PaymentMethod.
   634  type ConfirmationTokenPaymentMethodPreviewSEPADebitGeneratedFrom struct {
   635  	// The ID of the Charge that generated this PaymentMethod, if any.
   636  	Charge *Charge `json:"charge"`
   637  	// The ID of the SetupAttempt that generated this PaymentMethod, if any.
   638  	SetupAttempt *SetupAttempt `json:"setup_attempt"`
   639  }
   640  type ConfirmationTokenPaymentMethodPreviewSEPADebit struct {
   641  	// Bank code of bank associated with the bank account.
   642  	BankCode string `json:"bank_code"`
   643  	// Branch code of bank associated with the bank account.
   644  	BranchCode string `json:"branch_code"`
   645  	// Two-letter ISO code representing the country the bank account is located in.
   646  	Country string `json:"country"`
   647  	// Uniquely identifies this particular bank account. You can use this attribute to check whether two bank accounts are the same.
   648  	Fingerprint string `json:"fingerprint"`
   649  	// Information about the object that generated this PaymentMethod.
   650  	GeneratedFrom *ConfirmationTokenPaymentMethodPreviewSEPADebitGeneratedFrom `json:"generated_from"`
   651  	// Last four characters of the IBAN.
   652  	Last4 string `json:"last4"`
   653  }
   654  type ConfirmationTokenPaymentMethodPreviewSofort struct {
   655  	// Two-letter ISO code representing the country the bank account is located in.
   656  	Country string `json:"country"`
   657  }
   658  type ConfirmationTokenPaymentMethodPreviewSwish struct{}
   659  
   660  // Contains information about US bank account networks that can be used.
   661  type ConfirmationTokenPaymentMethodPreviewUSBankAccountNetworks struct {
   662  	// The preferred network.
   663  	Preferred string `json:"preferred"`
   664  	// All supported networks.
   665  	Supported []ConfirmationTokenPaymentMethodPreviewUSBankAccountNetworksSupported `json:"supported"`
   666  }
   667  type ConfirmationTokenPaymentMethodPreviewUSBankAccountStatusDetailsBlocked struct {
   668  	// The ACH network code that resulted in this block.
   669  	NetworkCode ConfirmationTokenPaymentMethodPreviewUSBankAccountStatusDetailsBlockedNetworkCode `json:"network_code"`
   670  	// The reason why this PaymentMethod's fingerprint has been blocked
   671  	Reason ConfirmationTokenPaymentMethodPreviewUSBankAccountStatusDetailsBlockedReason `json:"reason"`
   672  }
   673  
   674  // Contains information about the future reusability of this PaymentMethod.
   675  type ConfirmationTokenPaymentMethodPreviewUSBankAccountStatusDetails struct {
   676  	Blocked *ConfirmationTokenPaymentMethodPreviewUSBankAccountStatusDetailsBlocked `json:"blocked"`
   677  }
   678  type ConfirmationTokenPaymentMethodPreviewUSBankAccount struct {
   679  	// Account holder type: individual or company.
   680  	AccountHolderType ConfirmationTokenPaymentMethodPreviewUSBankAccountAccountHolderType `json:"account_holder_type"`
   681  	// Account type: checkings or savings. Defaults to checking if omitted.
   682  	AccountType ConfirmationTokenPaymentMethodPreviewUSBankAccountAccountType `json:"account_type"`
   683  	// The name of the bank.
   684  	BankName string `json:"bank_name"`
   685  	// The ID of the Financial Connections Account used to create the payment method.
   686  	FinancialConnectionsAccount string `json:"financial_connections_account"`
   687  	// Uniquely identifies this particular bank account. You can use this attribute to check whether two bank accounts are the same.
   688  	Fingerprint string `json:"fingerprint"`
   689  	// Last four digits of the bank account number.
   690  	Last4 string `json:"last4"`
   691  	// Contains information about US bank account networks that can be used.
   692  	Networks *ConfirmationTokenPaymentMethodPreviewUSBankAccountNetworks `json:"networks"`
   693  	// Routing number of the bank account.
   694  	RoutingNumber string `json:"routing_number"`
   695  	// Contains information about the future reusability of this PaymentMethod.
   696  	StatusDetails *ConfirmationTokenPaymentMethodPreviewUSBankAccountStatusDetails `json:"status_details"`
   697  }
   698  type ConfirmationTokenPaymentMethodPreviewWeChatPay struct{}
   699  type ConfirmationTokenPaymentMethodPreviewZip struct{}
   700  
   701  // Payment details collected by the Payment Element, used to create a PaymentMethod when a PaymentIntent or SetupIntent is confirmed with this ConfirmationToken.
   702  type ConfirmationTokenPaymentMethodPreview struct {
   703  	ACSSDebit        *ConfirmationTokenPaymentMethodPreviewACSSDebit        `json:"acss_debit"`
   704  	Affirm           *ConfirmationTokenPaymentMethodPreviewAffirm           `json:"affirm"`
   705  	AfterpayClearpay *ConfirmationTokenPaymentMethodPreviewAfterpayClearpay `json:"afterpay_clearpay"`
   706  	Alipay           *ConfirmationTokenPaymentMethodPreviewAlipay           `json:"alipay"`
   707  	AUBECSDebit      *ConfirmationTokenPaymentMethodPreviewAUBECSDebit      `json:"au_becs_debit"`
   708  	BACSDebit        *ConfirmationTokenPaymentMethodPreviewBACSDebit        `json:"bacs_debit"`
   709  	Bancontact       *ConfirmationTokenPaymentMethodPreviewBancontact       `json:"bancontact"`
   710  	BillingDetails   *ConfirmationTokenPaymentMethodPreviewBillingDetails   `json:"billing_details"`
   711  	BLIK             *ConfirmationTokenPaymentMethodPreviewBLIK             `json:"blik"`
   712  	Boleto           *ConfirmationTokenPaymentMethodPreviewBoleto           `json:"boleto"`
   713  	Card             *ConfirmationTokenPaymentMethodPreviewCard             `json:"card"`
   714  	CardPresent      *ConfirmationTokenPaymentMethodPreviewCardPresent      `json:"card_present"`
   715  	CashApp          *ConfirmationTokenPaymentMethodPreviewCashApp          `json:"cashapp"`
   716  	CustomerBalance  *ConfirmationTokenPaymentMethodPreviewCustomerBalance  `json:"customer_balance"`
   717  	EPS              *ConfirmationTokenPaymentMethodPreviewEPS              `json:"eps"`
   718  	FPX              *ConfirmationTokenPaymentMethodPreviewFPX              `json:"fpx"`
   719  	Giropay          *ConfirmationTokenPaymentMethodPreviewGiropay          `json:"giropay"`
   720  	Grabpay          *ConfirmationTokenPaymentMethodPreviewGrabpay          `json:"grabpay"`
   721  	IDEAL            *ConfirmationTokenPaymentMethodPreviewIDEAL            `json:"ideal"`
   722  	InteracPresent   *ConfirmationTokenPaymentMethodPreviewInteracPresent   `json:"interac_present"`
   723  	Klarna           *ConfirmationTokenPaymentMethodPreviewKlarna           `json:"klarna"`
   724  	Konbini          *ConfirmationTokenPaymentMethodPreviewKonbini          `json:"konbini"`
   725  	Link             *ConfirmationTokenPaymentMethodPreviewLink             `json:"link"`
   726  	Mobilepay        *ConfirmationTokenPaymentMethodPreviewMobilepay        `json:"mobilepay"`
   727  	OXXO             *ConfirmationTokenPaymentMethodPreviewOXXO             `json:"oxxo"`
   728  	P24              *ConfirmationTokenPaymentMethodPreviewP24              `json:"p24"`
   729  	PayNow           *ConfirmationTokenPaymentMethodPreviewPayNow           `json:"paynow"`
   730  	Paypal           *ConfirmationTokenPaymentMethodPreviewPaypal           `json:"paypal"`
   731  	Pix              *ConfirmationTokenPaymentMethodPreviewPix              `json:"pix"`
   732  	PromptPay        *ConfirmationTokenPaymentMethodPreviewPromptPay        `json:"promptpay"`
   733  	RevolutPay       *ConfirmationTokenPaymentMethodPreviewRevolutPay       `json:"revolut_pay"`
   734  	SEPADebit        *ConfirmationTokenPaymentMethodPreviewSEPADebit        `json:"sepa_debit"`
   735  	Sofort           *ConfirmationTokenPaymentMethodPreviewSofort           `json:"sofort"`
   736  	Swish            *ConfirmationTokenPaymentMethodPreviewSwish            `json:"swish"`
   737  	// The type of the PaymentMethod. An additional hash is included on the PaymentMethod with a name matching this value. It contains additional information specific to the PaymentMethod type.
   738  	Type          ConfirmationTokenPaymentMethodPreviewType           `json:"type"`
   739  	USBankAccount *ConfirmationTokenPaymentMethodPreviewUSBankAccount `json:"us_bank_account"`
   740  	WeChatPay     *ConfirmationTokenPaymentMethodPreviewWeChatPay     `json:"wechat_pay"`
   741  	Zip           *ConfirmationTokenPaymentMethodPreviewZip           `json:"zip"`
   742  }
   743  
   744  // Shipping information collected on this ConfirmationToken.
   745  type ConfirmationTokenShipping struct {
   746  	Address *Address `json:"address"`
   747  	// Recipient name.
   748  	Name string `json:"name"`
   749  	// Recipient phone (including extension).
   750  	Phone string `json:"phone"`
   751  }
   752  
   753  // ConfirmationTokens help transport client side data collected by Stripe JS over
   754  // to your server for confirming a PaymentIntent or SetupIntent. If the confirmation
   755  // is successful, values present on the ConfirmationToken are written onto the Intent.
   756  //
   757  // To learn more about how to use ConfirmationToken, visit the related guides:
   758  // - [Finalize payments on the server](https://stripe.com/docs/payments/finalize-payments-on-the-server)
   759  // - [Build two-step confirmation](https://stripe.com/docs/payments/build-a-two-step-confirmation).
   760  type ConfirmationToken struct {
   761  	APIResource
   762  	// Time at which the object was created. Measured in seconds since the Unix epoch.
   763  	Created int64 `json:"created"`
   764  	// Time at which this ConfirmationToken expires and can no longer be used to confirm a PaymentIntent or SetupIntent. This is set to null once this ConfirmationToken has been used.
   765  	ExpiresAt int64 `json:"expires_at"`
   766  	// Unique identifier for the object.
   767  	ID string `json:"id"`
   768  	// Has the value `true` if the object exists in live mode or the value `false` if the object exists in test mode.
   769  	Livemode bool `json:"livemode"`
   770  	// Data used for generating a Mandate.
   771  	MandateData *ConfirmationTokenMandateData `json:"mandate_data"`
   772  	// String representing the object's type. Objects of the same type share the same value.
   773  	Object string `json:"object"`
   774  	// ID of the PaymentIntent that this ConfirmationToken was used to confirm, or null if this ConfirmationToken has not yet been used.
   775  	PaymentIntent string `json:"payment_intent"`
   776  	// Payment details collected by the Payment Element, used to create a PaymentMethod when a PaymentIntent or SetupIntent is confirmed with this ConfirmationToken.
   777  	PaymentMethodPreview *ConfirmationTokenPaymentMethodPreview `json:"payment_method_preview"`
   778  	// Return URL used to confirm the Intent.
   779  	ReturnURL string `json:"return_url"`
   780  	// Indicates that you intend to make future payments with this ConfirmationToken's payment method.
   781  	//
   782  	// The presence of this property will [attach the payment method](https://stripe.com/docs/payments/save-during-payment) to the PaymentIntent's Customer, if present, after the PaymentIntent is confirmed and any required actions from the user are complete.
   783  	SetupFutureUsage ConfirmationTokenSetupFutureUsage `json:"setup_future_usage"`
   784  	// ID of the SetupIntent that this ConfirmationToken was used to confirm, or null if this ConfirmationToken has not yet been used.
   785  	SetupIntent string `json:"setup_intent"`
   786  	// Shipping information collected on this ConfirmationToken.
   787  	Shipping *ConfirmationTokenShipping `json:"shipping"`
   788  	// Indicates whether the Stripe SDK is used to handle confirmation flow. Defaults to `true` on ConfirmationToken.
   789  	UseStripeSDK bool `json:"use_stripe_sdk"`
   790  }