From 6e6feef65dabeb48c3a45a8d8d50922fe421fd93 Mon Sep 17 00:00:00 2001 From: pakrym-stripe <99349468+pakrym-stripe@users.noreply.github.com> Date: Mon, 18 Jul 2022 10:58:34 -0700 Subject: [PATCH] Codegen for openapi v165 (#1497) --- OPENAPI_VERSION | 2 +- account.go | 20 +++++++++++++++ charge.go | 2 ++ checkout_session.go | 1 + issuing_card.go | 2 +- mandate.go | 38 +++++++++++++++++++++++++++++ paymentintent.go | 19 +++++++++++++-- paymentlink.go | 2 ++ paymentmethod.go | 8 ++++++ setupattempt.go | 2 ++ setupintent.go | 59 +++++++++++++++++++++++++++++++++++++++++++++ 11 files changed, 151 insertions(+), 4 deletions(-) diff --git a/OPENAPI_VERSION b/OPENAPI_VERSION index e02bb288e4..f95a4f0eaa 100644 --- a/OPENAPI_VERSION +++ b/OPENAPI_VERSION @@ -1 +1 @@ -v164 \ No newline at end of file +v165 \ No newline at end of file diff --git a/account.go b/account.go index cfcff79e3b..5593ae2294 100644 --- a/account.go +++ b/account.go @@ -80,6 +80,16 @@ const ( AccountCapabilitiesBankTransferPaymentsPending AccountCapabilitiesBankTransferPayments = "pending" ) +// The status of the blik payments capability of the account, or whether the account can directly process blik charges. +type AccountCapabilitiesBLIKPayments string + +// List of values that AccountCapabilitiesBLIKPayments can take +const ( + AccountCapabilitiesBLIKPaymentsActive AccountCapabilitiesBLIKPayments = "active" + AccountCapabilitiesBLIKPaymentsInactive AccountCapabilitiesBLIKPayments = "inactive" + AccountCapabilitiesBLIKPaymentsPending AccountCapabilitiesBLIKPayments = "pending" +) + // The status of the konbini payments capability of the account, or whether the account can directly process konbini charges. type AccountCapabilitiesKonbiniPayments string @@ -355,6 +365,12 @@ type AccountCapabilitiesBankTransferPaymentsParams struct { Requested *bool `form:"requested"` } +// The blik_payments capability. +type AccountCapabilitiesBLIKPaymentsParams struct { + // Passing true requests the capability for the account, if it is not already requested. A requested capability may not immediately become active. Any requirements to activate the capability are returned in the `requirements` arrays. + Requested *bool `form:"requested"` +} + // The boleto_payments capability. type AccountCapabilitiesBoletoPaymentsParams struct { // Passing true requests the capability for the account, if it is not already requested. A requested capability may not immediately become active. Any requirements to activate the capability are returned in the `requirements` arrays. @@ -521,6 +537,8 @@ type AccountCapabilitiesParams struct { BancontactPayments *AccountCapabilitiesBancontactPaymentsParams `form:"bancontact_payments"` // The bank_transfer_payments capability. BankTransferPayments *AccountCapabilitiesBankTransferPaymentsParams `form:"bank_transfer_payments"` + // The blik_payments capability. + BLIKPayments *AccountCapabilitiesBLIKPaymentsParams `form:"blik_payments"` // The boleto_payments capability. BoletoPayments *AccountCapabilitiesBoletoPaymentsParams `form:"boleto_payments"` // The card_issuing capability. @@ -929,6 +947,8 @@ type AccountCapabilities struct { BancontactPayments AccountCapabilityStatus `json:"bancontact_payments"` // The status of the customer_balance payments capability of the account, or whether the account can directly process customer_balance charges. BankTransferPayments AccountCapabilitiesBankTransferPayments `json:"bank_transfer_payments"` + // The status of the blik payments capability of the account, or whether the account can directly process blik charges. + BLIKPayments AccountCapabilitiesBLIKPayments `json:"blik_payments"` // The status of the boleto payments capability of the account, or whether the account can directly process boleto charges. BoletoPayments AccountCapabilityStatus `json:"boleto_payments"` // The status of the card issuing capability of the account, or whether you can use Issuing to distribute funds on cards diff --git a/charge.go b/charge.go index 6975b30b38..15e0789b35 100644 --- a/charge.go +++ b/charge.go @@ -454,6 +454,7 @@ type ChargePaymentMethodDetailsBancontact struct { // (if supported) at the time of authorization or settlement. They cannot be set or mutated. VerifiedName string `json:"verified_name"` } +type ChargePaymentMethodDetailsBLIK struct{} type ChargePaymentMethodDetailsBoleto struct { // The tax ID of the customer (CPF for individuals consumers or CNPJ for businesses consumers) TaxID string `json:"tax_id"` @@ -864,6 +865,7 @@ type ChargePaymentMethodDetails struct { AUBECSDebit *ChargePaymentMethodDetailsAUBECSDebit `json:"au_becs_debit"` BACSDebit *ChargePaymentMethodDetailsBACSDebit `json:"bacs_debit"` Bancontact *ChargePaymentMethodDetailsBancontact `json:"bancontact"` + BLIK *ChargePaymentMethodDetailsBLIK `json:"blik"` Boleto *ChargePaymentMethodDetailsBoleto `json:"boleto"` Card *ChargePaymentMethodDetailsCard `json:"card"` CardPresent *ChargePaymentMethodDetailsCardPresent `json:"card_present"` diff --git a/checkout_session.go b/checkout_session.go index 9e534b47d2..a77584fb6d 100644 --- a/checkout_session.go +++ b/checkout_session.go @@ -45,6 +45,7 @@ type CheckoutSessionConsentCollectionPromotions string // List of values that CheckoutSessionConsentCollectionPromotions can take const ( CheckoutSessionConsentCollectionPromotionsAuto CheckoutSessionConsentCollectionPromotions = "auto" + CheckoutSessionConsentCollectionPromotionsNone CheckoutSessionConsentCollectionPromotions = "none" ) // Configure whether a Checkout Session creates a Customer when the Checkout Session completes. diff --git a/issuing_card.go b/issuing_card.go index 300025e3e6..33d623ffdd 100644 --- a/issuing_card.go +++ b/issuing_card.go @@ -284,7 +284,7 @@ type IssuingCard struct { Cardholder *IssuingCardholder `json:"cardholder"` // Time at which the object was created. Measured in seconds since the Unix epoch. Created int64 `json:"created"` - // Three-letter [ISO currency code](https://www.iso.org/iso-4217-currency-codes.html), in lowercase. Must be a [supported currency](https://stripe.com/docs/currencies). + // Three-letter [ISO currency code](https://www.iso.org/iso-4217-currency-codes.html), in lowercase. Supported currencies are `usd` in the US, `eur` in the EU, and `gbp` in the UK. Currency Currency `json:"currency"` // The card's CVC. For security reasons, this is only available for virtual cards, and will be omitted unless you explicitly request it with [the `expand` parameter](https://stripe.com/docs/api/expanding_objects). Additionally, it's only available via the ["Retrieve a card" endpoint](https://stripe.com/docs/api/issuing/cards/retrieve), not via "List all cards" or any other endpoint. CVC string `json:"cvc"` diff --git a/mandate.go b/mandate.go index 6f050407ed..e793038f71 100644 --- a/mandate.go +++ b/mandate.go @@ -56,6 +56,26 @@ const ( MandatePaymentMethodDetailsBACSDebitNetworkStatusRevoked MandatePaymentMethodDetailsBACSDebitNetworkStatus = "revoked" ) +// Frequency interval of each recurring payment. +type MandatePaymentMethodDetailsBLIKOffSessionInterval string + +// List of values that MandatePaymentMethodDetailsBLIKOffSessionInterval can take +const ( + MandatePaymentMethodDetailsBLIKOffSessionIntervalDay MandatePaymentMethodDetailsBLIKOffSessionInterval = "day" + MandatePaymentMethodDetailsBLIKOffSessionIntervalMonth MandatePaymentMethodDetailsBLIKOffSessionInterval = "month" + MandatePaymentMethodDetailsBLIKOffSessionIntervalWeek MandatePaymentMethodDetailsBLIKOffSessionInterval = "week" + MandatePaymentMethodDetailsBLIKOffSessionIntervalYear MandatePaymentMethodDetailsBLIKOffSessionInterval = "year" +) + +// Type of the mandate. +type MandatePaymentMethodDetailsBLIKType string + +// List of values that MandatePaymentMethodDetailsBLIKType can take +const ( + MandatePaymentMethodDetailsBLIKTypeOffSession MandatePaymentMethodDetailsBLIKType = "off_session" + MandatePaymentMethodDetailsBLIKTypeOnSession MandatePaymentMethodDetailsBLIKType = "on_session" +) + // The status of the mandate, which indicates whether it can be used to initiate a payment. type MandateStatus string @@ -117,6 +137,23 @@ type MandatePaymentMethodDetailsBACSDebit struct { // The URL that will contain the mandate that the customer has signed. URL string `json:"url"` } +type MandatePaymentMethodDetailsBLIKOffSession struct { + // Amount of each recurring payment. + Amount int64 `json:"amount"` + // Currency of each recurring payment. + Currency Currency `json:"currency"` + // Frequency interval of each recurring payment. + Interval MandatePaymentMethodDetailsBLIKOffSessionInterval `json:"interval"` + // Frequency indicator of each recurring payment. + IntervalCount int64 `json:"interval_count"` +} +type MandatePaymentMethodDetailsBLIK struct { + // Date at which the mandate expires. + ExpiresAfter int64 `json:"expires_after"` + OffSession *MandatePaymentMethodDetailsBLIKOffSession `json:"off_session"` + // Type of the mandate. + Type MandatePaymentMethodDetailsBLIKType `json:"type"` +} type MandatePaymentMethodDetailsCard struct{} type MandatePaymentMethodDetailsLink struct{} type MandatePaymentMethodDetailsSepaDebit struct { @@ -130,6 +167,7 @@ type MandatePaymentMethodDetails struct { ACSSDebit *MandatePaymentMethodDetailsACSSDebit `json:"acss_debit"` AUBECSDebit *MandatePaymentMethodDetailsAUBECSDebit `json:"au_becs_debit"` BACSDebit *MandatePaymentMethodDetailsBACSDebit `json:"bacs_debit"` + BLIK *MandatePaymentMethodDetailsBLIK `json:"blik"` Card *MandatePaymentMethodDetailsCard `json:"card"` Link *MandatePaymentMethodDetailsLink `json:"link"` SepaDebit *MandatePaymentMethodDetailsSepaDebit `json:"sepa_debit"` diff --git a/paymentintent.go b/paymentintent.go index f962e6a61c..786b9cc21a 100644 --- a/paymentintent.go +++ b/paymentintent.go @@ -702,6 +702,9 @@ type PaymentIntentMandateDataParams struct { // If this is an `affirm` PaymentMethod, this hash contains details about the Affirm payment method. type PaymentIntentPaymentMethodDataAffirmParams struct{} +// If this is a `blik` PaymentMethod, this hash contains details about the BLIK payment method. +type PaymentIntentPaymentMethodDataBLIKParams struct{} + // If this is a `customer_balance` PaymentMethod, this hash contains details about the CustomerBalance payment method. type PaymentIntentPaymentMethodDataCustomerBalanceParams struct{} @@ -757,6 +760,8 @@ type PaymentIntentPaymentMethodDataParams struct { Bancontact *PaymentMethodBancontactParams `form:"bancontact"` // Billing information associated with the PaymentMethod that may be used or required by particular types of payment methods. BillingDetails *BillingDetailsParams `form:"billing_details"` + // If this is a `blik` PaymentMethod, this hash contains details about the BLIK payment method. + BLIK *PaymentIntentPaymentMethodDataBLIKParams `form:"blik"` // If this is a `boleto` PaymentMethod, this hash contains details about the Boleto payment method. Boleto *PaymentMethodBoletoParams `form:"boleto"` Card *PaymentMethodCardParams `form:"card"` @@ -923,6 +928,12 @@ type PaymentIntentPaymentMethodOptionsBancontactParams struct { SetupFutureUsage *string `form:"setup_future_usage"` } +// If this is a `blik` PaymentMethod, this sub-hash contains details about the BLIK payment method options. +type PaymentIntentPaymentMethodOptionsBLIKParams struct { + // The 6-digit BLIK code that a customer has generated using their banking application. Can only be set on confirmation. + Code *string `form:"code"` +} + // If this is a `boleto` PaymentMethod, this sub-hash contains details about the Boleto payment method options. type PaymentIntentPaymentMethodOptionsBoletoParams struct { // The number of calendar days before a Boleto voucher expires. For example, if you create a Boleto voucher on Monday and you set expires_after_days to 2, the Boleto invoice will expire on Wednesday at 23:59 America/Sao_Paulo time. @@ -1331,6 +1342,8 @@ type PaymentIntentPaymentMethodOptionsParams struct { BACSDebit *PaymentIntentPaymentMethodOptionsBACSDebitParams `form:"bacs_debit"` // If this is a `bancontact` PaymentMethod, this sub-hash contains details about the Bancontact payment method options. Bancontact *PaymentIntentPaymentMethodOptionsBancontactParams `form:"bancontact"` + // If this is a `blik` PaymentMethod, this sub-hash contains details about the BLIK payment method options. + BLIK *PaymentIntentPaymentMethodOptionsBLIKParams `form:"blik"` // If this is a `boleto` PaymentMethod, this sub-hash contains details about the Boleto payment method options. Boleto *PaymentIntentPaymentMethodOptionsBoletoParams `form:"boleto"` // Configuration for any card payments attempted on this PaymentIntent. @@ -1698,7 +1711,7 @@ type PaymentIntentNextActionBoletoDisplayDetails struct { type PaymentIntentNextActionCardAwaitNotification struct { // The time that payment will be attempted. If customer approval is required, they need to provide approval before this time. ChargeAttemptAt int64 `json:"charge_attempt_at"` - // For payments greater than INR 5000, the customer must provide explicit approval of the payment with their bank. For payments of lower amount, no customer action is required. + // For payments greater than INR 15000, the customer must provide explicit approval of the payment with their bank. For payments of lower amount, no customer action is required. CustomerApprovalRequired bool `json:"customer_approval_required"` } @@ -2002,6 +2015,7 @@ type PaymentIntentPaymentMethodOptionsBancontact struct { // When processing card payments, Stripe also uses `setup_future_usage` to dynamically optimize your payment flow and comply with regional legislation and network rules, such as [SCA](https://stripe.com/docs/strong-customer-authentication). SetupFutureUsage PaymentIntentPaymentMethodOptionsBancontactSetupFutureUsage `json:"setup_future_usage"` } +type PaymentIntentPaymentMethodOptionsBLIK struct{} type PaymentIntentPaymentMethodOptionsBoleto struct { // The number of calendar days before a Boleto voucher expires. For example, if you create a Boleto voucher on Monday and you set expires_after_days to 2, the Boleto voucher will expire on Wednesday at 23:59 America/Sao_Paulo time. ExpiresAfterDays int64 `json:"expires_after_days"` @@ -2300,6 +2314,7 @@ type PaymentIntentPaymentMethodOptions struct { AUBECSDebit *PaymentIntentPaymentMethodOptionsAUBECSDebit `json:"au_becs_debit"` BACSDebit *PaymentIntentPaymentMethodOptionsBACSDebit `json:"bacs_debit"` Bancontact *PaymentIntentPaymentMethodOptionsBancontact `json:"bancontact"` + BLIK *PaymentIntentPaymentMethodOptionsBLIK `json:"blik"` Boleto *PaymentIntentPaymentMethodOptionsBoleto `json:"boleto"` Card *PaymentIntentPaymentMethodOptionsCard `json:"card"` CardPresent *PaymentIntentPaymentMethodOptionsCardPresent `json:"card_present"` @@ -2323,7 +2338,7 @@ type PaymentIntentPaymentMethodOptions struct { WechatPay *PaymentIntentPaymentMethodOptionsWechatPay `json:"wechat_pay"` } type PaymentIntentProcessingCardCustomerNotification struct { - // Whether customer approval has been requested for this payment. For payments greater than INR 5000 or mandate amount, the customer must provide explicit approval of the payment with their bank. + // Whether customer approval has been requested for this payment. For payments greater than INR 15000 or mandate amount, the customer must provide explicit approval of the payment with their bank. ApprovalRequested bool `json:"approval_requested"` // If customer approval is required, they need to provide approval before this time. CompletesAt int64 `json:"completes_at"` diff --git a/paymentlink.go b/paymentlink.go index ac2fa38b4b..536b7cd0cc 100644 --- a/paymentlink.go +++ b/paymentlink.go @@ -32,6 +32,7 @@ type PaymentLinkConsentCollectionPromotions string // List of values that PaymentLinkConsentCollectionPromotions can take const ( PaymentLinkConsentCollectionPromotionsAuto PaymentLinkConsentCollectionPromotions = "auto" + PaymentLinkConsentCollectionPromotionsNone PaymentLinkConsentCollectionPromotions = "none" ) // Configuration for Customer creation during checkout. @@ -72,6 +73,7 @@ const ( PaymentLinkPaymentMethodTypeAUBECSDebit PaymentLinkPaymentMethodType = "au_becs_debit" PaymentLinkPaymentMethodTypeBACSDebit PaymentLinkPaymentMethodType = "bacs_debit" PaymentLinkPaymentMethodTypeBancontact PaymentLinkPaymentMethodType = "bancontact" + PaymentLinkPaymentMethodTypeBLIK PaymentLinkPaymentMethodType = "blik" PaymentLinkPaymentMethodTypeBoleto PaymentLinkPaymentMethodType = "boleto" PaymentLinkPaymentMethodTypeCard PaymentLinkPaymentMethodType = "card" PaymentLinkPaymentMethodTypeEPS PaymentLinkPaymentMethodType = "eps" diff --git a/paymentmethod.go b/paymentmethod.go index c3e80a0417..3faeb8d662 100644 --- a/paymentmethod.go +++ b/paymentmethod.go @@ -73,6 +73,7 @@ const ( PaymentMethodTypeAUBECSDebit PaymentMethodType = "au_becs_debit" PaymentMethodTypeBACSDebit PaymentMethodType = "bacs_debit" PaymentMethodTypeBancontact PaymentMethodType = "bancontact" + PaymentMethodTypeBLIK PaymentMethodType = "blik" PaymentMethodTypeBoleto PaymentMethodType = "boleto" PaymentMethodTypeCard PaymentMethodType = "card" PaymentMethodTypeCardPresent PaymentMethodType = "card_present" @@ -173,6 +174,9 @@ type BillingDetailsParams struct { Phone *string `form:"phone"` } +// If this is a `blik` PaymentMethod, this hash contains details about the BLIK payment method. +type PaymentMethodBLIKParams struct{} + // If this is a `boleto` PaymentMethod, this hash contains details about the Boleto payment method. type PaymentMethodBoletoParams struct { // The tax ID of the customer (CPF for individual consumers or CNPJ for businesses consumers) @@ -318,6 +322,8 @@ type PaymentMethodParams struct { Bancontact *PaymentMethodBancontactParams `form:"bancontact"` // Billing information associated with the PaymentMethod that may be used or required by particular types of payment methods. BillingDetails *BillingDetailsParams `form:"billing_details"` + // This is a legacy parameter that will be removed in the future. It is a hash that does not accept any keys. + BLIK *PaymentMethodBLIKParams `form:"blik"` // If this is a `boleto` PaymentMethod, this hash contains details about the Boleto payment method. Boleto *PaymentMethodBoletoParams `form:"boleto"` // If this is a `card` PaymentMethod, this hash contains the user's card details. For backwards compatibility, you can alternatively provide a Stripe token (e.g., for Apple Pay, Amex Express Checkout, or legacy Checkout) into the card hash with format `card: {token: "tok_visa"}`. When providing a card number, you must meet the requirements for [PCI compliance](https://stripe.com/docs/security#validating-pci-compliance). We strongly recommend using Stripe.js instead of interacting with this API directly. @@ -441,6 +447,7 @@ type BillingDetails struct { // Billing phone number (including extension). Phone string `json:"phone"` } +type PaymentMethodBLIK struct{} type PaymentMethodBoleto struct { // Uniquely identifies the customer tax id (CNPJ or CPF) TaxID string `json:"tax_id"` @@ -666,6 +673,7 @@ type PaymentMethod struct { BACSDebit *PaymentMethodBACSDebit `json:"bacs_debit"` Bancontact *PaymentMethodBancontact `json:"bancontact"` BillingDetails *BillingDetails `json:"billing_details"` + BLIK *PaymentMethodBLIK `json:"blik"` Boleto *PaymentMethodBoleto `json:"boleto"` Card *PaymentMethodCard `json:"card"` CardPresent *PaymentMethodCardPresent `json:"card_present"` diff --git a/setupattempt.go b/setupattempt.go index 03f3437658..9f098edc7a 100644 --- a/setupattempt.go +++ b/setupattempt.go @@ -124,6 +124,7 @@ type SetupAttemptPaymentMethodDetailsBancontact struct { // (if supported) at the time of authorization or settlement. They cannot be set or mutated. VerifiedName string `json:"verified_name"` } +type SetupAttemptPaymentMethodDetailsBLIK struct{} type SetupAttemptPaymentMethodDetailsBoleto struct{} // Populated if this authorization used 3D Secure authentication. @@ -190,6 +191,7 @@ type SetupAttemptPaymentMethodDetails struct { AUBECSDebit *SetupAttemptPaymentMethodDetailsAUBECSDebit `json:"au_becs_debit"` BACSDebit *SetupAttemptPaymentMethodDetailsBACSDebit `json:"bacs_debit"` Bancontact *SetupAttemptPaymentMethodDetailsBancontact `json:"bancontact"` + BLIK *SetupAttemptPaymentMethodDetailsBLIK `json:"blik"` Boleto *SetupAttemptPaymentMethodDetailsBoleto `json:"boleto"` Card *SetupAttemptPaymentMethodDetailsCard `json:"card"` CardPresent *SetupAttemptPaymentMethodDetailsCardPresent `json:"card_present"` diff --git a/setupintent.go b/setupintent.go index 9c38fb00b0..0866c0c5bb 100644 --- a/setupintent.go +++ b/setupintent.go @@ -95,6 +95,26 @@ const ( SetupIntentPaymentMethodOptionsACSSDebitVerificationMethodMicrodeposits SetupIntentPaymentMethodOptionsACSSDebitVerificationMethod = "microdeposits" ) +// Frequency interval of each recurring payment. +type SetupIntentPaymentMethodOptionsBLIKMandateOptionsOffSessionInterval string + +// List of values that SetupIntentPaymentMethodOptionsBLIKMandateOptionsOffSessionInterval can take +const ( + SetupIntentPaymentMethodOptionsBLIKMandateOptionsOffSessionIntervalDay SetupIntentPaymentMethodOptionsBLIKMandateOptionsOffSessionInterval = "day" + SetupIntentPaymentMethodOptionsBLIKMandateOptionsOffSessionIntervalMonth SetupIntentPaymentMethodOptionsBLIKMandateOptionsOffSessionInterval = "month" + SetupIntentPaymentMethodOptionsBLIKMandateOptionsOffSessionIntervalWeek SetupIntentPaymentMethodOptionsBLIKMandateOptionsOffSessionInterval = "week" + SetupIntentPaymentMethodOptionsBLIKMandateOptionsOffSessionIntervalYear SetupIntentPaymentMethodOptionsBLIKMandateOptionsOffSessionInterval = "year" +) + +// Type of the mandate. +type SetupIntentPaymentMethodOptionsBLIKMandateOptionsType string + +// List of values that SetupIntentPaymentMethodOptionsBLIKMandateOptionsType can take +const ( + SetupIntentPaymentMethodOptionsBLIKMandateOptionsTypeOffSession SetupIntentPaymentMethodOptionsBLIKMandateOptionsType = "off_session" + SetupIntentPaymentMethodOptionsBLIKMandateOptionsTypeOnSession SetupIntentPaymentMethodOptionsBLIKMandateOptionsType = "on_session" +) + // One of `fixed` or `maximum`. If `fixed`, the `amount` param refers to the exact amount to be charged in future payments. If `maximum`, the amount charged can be up to the value passed for the `amount` param. type SetupIntentPaymentMethodOptionsCardMandateOptionsAmountType string @@ -275,6 +295,9 @@ type SetupIntentPaymentMethodDataBillingDetailsParams struct { Phone *string `form:"phone"` } +// If this is a `blik` PaymentMethod, this hash contains details about the BLIK payment method. +type SetupIntentPaymentMethodDataBLIKParams struct{} + // If this is a `boleto` PaymentMethod, this hash contains details about the Boleto payment method. type SetupIntentPaymentMethodDataBoletoParams struct { // The tax ID of the customer (CPF for individual consumers or CNPJ for businesses consumers) @@ -404,6 +427,8 @@ type SetupIntentPaymentMethodDataParams struct { Bancontact *SetupIntentPaymentMethodDataBancontactParams `form:"bancontact"` // Billing information associated with the PaymentMethod that may be used or required by particular types of payment methods. BillingDetails *SetupIntentPaymentMethodDataBillingDetailsParams `form:"billing_details"` + // If this is a `blik` PaymentMethod, this hash contains details about the BLIK payment method. + BLIK *SetupIntentPaymentMethodDataBLIKParams `form:"blik"` // If this is a `boleto` PaymentMethod, this hash contains details about the Boleto payment method. Boleto *SetupIntentPaymentMethodDataBoletoParams `form:"boleto"` // If this is a `customer_balance` PaymentMethod, this hash contains details about the CustomerBalance payment method. @@ -476,6 +501,12 @@ type SetupIntentPaymentMethodOptionsACSSDebitParams struct { VerificationMethod *string `form:"verification_method"` } +// If this is a `blik` PaymentMethod, this hash contains details about the BLIK payment method. +type SetupIntentPaymentMethodOptionsBLIKParams struct { + // The 6-digit BLIK code that a customer has generated using their banking application. Can only be set on confirmation. + Code *string `form:"code"` +} + // Configuration options for setting up an eMandate for cards issued in India. type SetupIntentPaymentMethodOptionsCardMandateOptionsParams struct { // Amount to be charged for future payments. @@ -555,6 +586,8 @@ type SetupIntentPaymentMethodOptionsUSBankAccountParams struct { type SetupIntentPaymentMethodOptionsParams struct { // If this is a `acss_debit` SetupIntent, this sub-hash contains details about the ACSS Debit payment method options. ACSSDebit *SetupIntentPaymentMethodOptionsACSSDebitParams `form:"acss_debit"` + // If this is a `blik` PaymentMethod, this hash contains details about the BLIK payment method. + BLIK *SetupIntentPaymentMethodOptionsBLIKParams `form:"blik"` // Configuration for any card setup attempted on this SetupIntent. Card *SetupIntentPaymentMethodOptionsCardParams `form:"card"` // If this is a `link` PaymentMethod, this sub-hash contains details about the Link payment method options. @@ -685,6 +718,9 @@ type SetupIntentConfirmPaymentMethodDataBillingDetailsParams struct { Phone *string `form:"phone"` } +// If this is a `blik` PaymentMethod, this hash contains details about the BLIK payment method. +type SetupIntentConfirmPaymentMethodDataBLIKParams struct{} + // If this is a `boleto` PaymentMethod, this hash contains details about the Boleto payment method. type SetupIntentConfirmPaymentMethodDataBoletoParams struct { // The tax ID of the customer (CPF for individual consumers or CNPJ for businesses consumers) @@ -814,6 +850,8 @@ type SetupIntentConfirmPaymentMethodDataParams struct { Bancontact *SetupIntentConfirmPaymentMethodDataBancontactParams `form:"bancontact"` // Billing information associated with the PaymentMethod that may be used or required by particular types of payment methods. BillingDetails *SetupIntentConfirmPaymentMethodDataBillingDetailsParams `form:"billing_details"` + // If this is a `blik` PaymentMethod, this hash contains details about the BLIK payment method. + BLIK *SetupIntentConfirmPaymentMethodDataBLIKParams `form:"blik"` // If this is a `boleto` PaymentMethod, this hash contains details about the Boleto payment method. Boleto *SetupIntentConfirmPaymentMethodDataBoletoParams `form:"boleto"` // If this is a `customer_balance` PaymentMethod, this hash contains details about the CustomerBalance payment method. @@ -953,6 +991,26 @@ type SetupIntentPaymentMethodOptionsACSSDebit struct { // Bank account verification method. VerificationMethod SetupIntentPaymentMethodOptionsACSSDebitVerificationMethod `json:"verification_method"` } +type SetupIntentPaymentMethodOptionsBLIKMandateOptionsOffSession struct { + // Amount of each recurring payment. + Amount int64 `json:"amount"` + // Currency of each recurring payment. + Currency Currency `json:"currency"` + // Frequency interval of each recurring payment. + Interval SetupIntentPaymentMethodOptionsBLIKMandateOptionsOffSessionInterval `json:"interval"` + // Frequency indicator of each recurring payment. + IntervalCount int64 `json:"interval_count"` +} +type SetupIntentPaymentMethodOptionsBLIKMandateOptions struct { + // Date at which the mandate expires. + ExpiresAfter int64 `json:"expires_after"` + OffSession *SetupIntentPaymentMethodOptionsBLIKMandateOptionsOffSession `json:"off_session"` + // Type of the mandate. + Type SetupIntentPaymentMethodOptionsBLIKMandateOptionsType `json:"type"` +} +type SetupIntentPaymentMethodOptionsBLIK struct { + MandateOptions *SetupIntentPaymentMethodOptionsBLIKMandateOptions `json:"mandate_options"` +} // Configuration options for setting up an eMandate for cards issued in India. type SetupIntentPaymentMethodOptionsCardMandateOptions struct { @@ -1008,6 +1066,7 @@ type SetupIntentPaymentMethodOptionsUSBankAccount struct { // Payment-method-specific configuration for this SetupIntent. type SetupIntentPaymentMethodOptions struct { ACSSDebit *SetupIntentPaymentMethodOptionsACSSDebit `json:"acss_debit"` + BLIK *SetupIntentPaymentMethodOptionsBLIK `json:"blik"` Card *SetupIntentPaymentMethodOptionsCard `json:"card"` Link *SetupIntentPaymentMethodOptionsLink `json:"link"` SepaDebit *SetupIntentPaymentMethodOptionsSepaDebit `json:"sepa_debit"`