diff --git a/CHANGELOG.md b/CHANGELOG.md index 1ab51db508..b6320aaf7c 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -5,6 +5,16 @@ * Add support for `PaymentMethodSettings` on `AccountSessionComponentsParams` * Add support for `CancelSubscriptionSchedule` on `QuoteLine` and `QuoteLinesParams` +## 78.4.0 - 2024-04-25 +* [#1852](https://github.com/stripe/stripe-go/pull/1852) Update generated code + * Add support for `SetupFutureUsage` on `CheckoutSessionPaymentMethodOptionsAmazonPay`, `CheckoutSessionPaymentMethodOptionsRevolutPay`, `PaymentIntentPaymentMethodOptionsAmazonPay`, and `PaymentIntentPaymentMethodOptionsRevolutPay` + * Change type of `EntitlementsActiveEntitlementFeature` from `string` to `*EntitlementsFeature` + * Remove support for inadvertently released identity verification features `Email` and `Phone` on `IdentityVerificationSessionOptionsParams` + * Add support for new values `amazon_pay` and `revolut_pay` on enums `InvoicePaymentSettingsPaymentMethodTypes` and `SubscriptionPaymentSettingsPaymentMethodTypes` + * Add support for `AmazonPay` and `RevolutPay` on `MandatePaymentMethodDetails` and `SetupAttemptPaymentMethodDetails` + * Add support for `EndingBefore`, `Limit`, and `StartingAfter` on `PaymentMethodConfigurationListParams` + * Add support for `Mobilepay` on `PaymentMethodConfigurationParams` and `PaymentMethodConfiguration` + ## 78.4.0-beta.1 - 2024-04-18 * [#1848](https://github.com/stripe/stripe-go/pull/1848) Update generated code for beta * Add support for `CapitalOverview`, `TaxRegistrations`, and `TaxSettings` on `AccountSessionComponentsParams` diff --git a/OPENAPI_VERSION b/OPENAPI_VERSION index 6eb80deb21..cb70129c35 100644 --- a/OPENAPI_VERSION +++ b/OPENAPI_VERSION @@ -1 +1 @@ -v992 \ No newline at end of file +v1008 \ No newline at end of file diff --git a/account.go b/account.go index dd0e80ac26..7781b6f71f 100644 --- a/account.go +++ b/account.go @@ -502,6 +502,12 @@ type AccountCapabilitiesPromptPayPaymentsParams struct { Requested *bool `form:"requested"` } +// The rechnung_payments capability. +type AccountCapabilitiesRechnungPaymentsParams 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 revolut_pay_payments capability. type AccountCapabilitiesRevolutPayPaymentsParams 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. @@ -641,6 +647,8 @@ type AccountCapabilitiesParams struct { PaytoPayments *AccountCapabilitiesPaytoPaymentsParams `form:"payto_payments"` // The promptpay_payments capability. PromptPayPayments *AccountCapabilitiesPromptPayPaymentsParams `form:"promptpay_payments"` + // The rechnung_payments capability. + RechnungPayments *AccountCapabilitiesRechnungPaymentsParams `form:"rechnung_payments"` // The revolut_pay_payments capability. RevolutPayPayments *AccountCapabilitiesRevolutPayPaymentsParams `form:"revolut_pay_payments"` // The sepa_debit_payments capability. @@ -1228,6 +1236,8 @@ type AccountCapabilities struct { PaytoPayments AccountCapabilityStatus `json:"payto_payments"` // The status of the promptpay payments capability of the account, or whether the account can directly process promptpay charges. PromptPayPayments AccountCapabilityStatus `json:"promptpay_payments"` + // The status of the Rechnung capability of the account, or whether the account can directly process Rechnung payments. + RechnungPayments AccountCapabilityStatus `json:"rechnung_payments"` // The status of the RevolutPay capability of the account, or whether the account can directly process RevolutPay payments. RevolutPayPayments AccountCapabilityStatus `json:"revolut_pay_payments"` // The status of the SEPA Direct Debits payments capability of the account, or whether the account can directly process SEPA Direct Debits charges. diff --git a/charge.go b/charge.go index 9e4e093cfe..abc2578aca 100644 --- a/charge.go +++ b/charge.go @@ -1682,6 +1682,8 @@ type ChargePaymentMethodDetailsLink struct { // You could use this attribute to get a sense of international fees. Country string `json:"country"` } + +// Internal card details type ChargePaymentMethodDetailsMobilepayCard struct { // Brand of the card used in the transaction Brand string `json:"brand"` @@ -1695,6 +1697,7 @@ type ChargePaymentMethodDetailsMobilepayCard struct { Last4 string `json:"last4"` } type ChargePaymentMethodDetailsMobilepay struct { + // Internal card details Card *ChargePaymentMethodDetailsMobilepayCard `json:"card"` } type ChargePaymentMethodDetailsMultibanco struct { @@ -1775,6 +1778,7 @@ type ChargePaymentMethodDetailsPromptPay struct { // Bill reference generated by PromptPay Reference string `json:"reference"` } +type ChargePaymentMethodDetailsRechnung struct{} type ChargePaymentMethodDetailsRevolutPay struct{} type ChargePaymentMethodDetailsSEPACreditTransfer struct { // Name of the bank associated with the bank account. @@ -1893,6 +1897,7 @@ type ChargePaymentMethodDetails struct { Payto *ChargePaymentMethodDetailsPayto `json:"payto"` Pix *ChargePaymentMethodDetailsPix `json:"pix"` PromptPay *ChargePaymentMethodDetailsPromptPay `json:"promptpay"` + Rechnung *ChargePaymentMethodDetailsRechnung `json:"rechnung"` RevolutPay *ChargePaymentMethodDetailsRevolutPay `json:"revolut_pay"` SEPACreditTransfer *ChargePaymentMethodDetailsSEPACreditTransfer `json:"sepa_credit_transfer"` SEPADebit *ChargePaymentMethodDetailsSEPADebit `json:"sepa_debit"` diff --git a/checkout_session.go b/checkout_session.go index 5537a2eaf1..0724154bfd 100644 --- a/checkout_session.go +++ b/checkout_session.go @@ -575,6 +575,18 @@ const ( CheckoutSessionPaymentMethodOptionsMobilepaySetupFutureUsageNone CheckoutSessionPaymentMethodOptionsMobilepaySetupFutureUsage = "none" ) +// Indicates that you intend to make future payments with this PaymentIntent's payment method. +// +// Providing this parameter 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. If no Customer was provided, the payment method can still be [attached](https://stripe.com/docs/api/payment_methods/attach) to a Customer after the transaction completes. +// +// 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). +type CheckoutSessionPaymentMethodOptionsMultibancoSetupFutureUsage string + +// List of values that CheckoutSessionPaymentMethodOptionsMultibancoSetupFutureUsage can take +const ( + CheckoutSessionPaymentMethodOptionsMultibancoSetupFutureUsageNone CheckoutSessionPaymentMethodOptionsMultibancoSetupFutureUsage = "none" +) + // Indicates that you intend to make future payments with this PaymentIntent's payment method. // // Providing this parameter 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. If no Customer was provided, the payment method can still be [attached](https://stripe.com/docs/api/payment_methods/attach) to a Customer after the transaction completes. @@ -1528,6 +1540,16 @@ type CheckoutSessionPaymentMethodOptionsMobilepayParams struct { SetupFutureUsage *string `form:"setup_future_usage"` } +// contains details about the Multibanco payment method options. +type CheckoutSessionPaymentMethodOptionsMultibancoParams struct { + // Indicates that you intend to make future payments with this PaymentIntent's payment method. + // + // Providing this parameter 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. If no Customer was provided, the payment method can still be [attached](https://stripe.com/docs/api/payment_methods/attach) to a Customer after the transaction completes. + // + // 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 *string `form:"setup_future_usage"` +} + // contains details about the OXXO payment method options. type CheckoutSessionPaymentMethodOptionsOXXOParams struct { // The number of calendar days before an OXXO voucher expires. For example, if you create an OXXO voucher on Monday and you set expires_after_days to 2, the OXXO invoice will expire on Wednesday at 23:59 America/Mexico_City time. @@ -1708,6 +1730,8 @@ type CheckoutSessionPaymentMethodOptionsParams struct { Link *CheckoutSessionPaymentMethodOptionsLinkParams `form:"link"` // contains details about the Mobilepay payment method options. Mobilepay *CheckoutSessionPaymentMethodOptionsMobilepayParams `form:"mobilepay"` + // contains details about the Multibanco payment method options. + Multibanco *CheckoutSessionPaymentMethodOptionsMultibancoParams `form:"multibanco"` // contains details about the OXXO payment method options. OXXO *CheckoutSessionPaymentMethodOptionsOXXOParams `form:"oxxo"` // contains details about the P24 payment method options. @@ -2569,6 +2593,14 @@ type CheckoutSessionPaymentMethodOptionsMobilepay 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 CheckoutSessionPaymentMethodOptionsMobilepaySetupFutureUsage `json:"setup_future_usage"` } +type CheckoutSessionPaymentMethodOptionsMultibanco struct { + // Indicates that you intend to make future payments with this PaymentIntent's payment method. + // + // Providing this parameter 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. If no Customer was provided, the payment method can still be [attached](https://stripe.com/docs/api/payment_methods/attach) to a Customer after the transaction completes. + // + // 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 CheckoutSessionPaymentMethodOptionsMultibancoSetupFutureUsage `json:"setup_future_usage"` +} type CheckoutSessionPaymentMethodOptionsOXXO struct { // The number of calendar days before an OXXO invoice expires. For example, if you create an OXXO invoice on Monday and you set expires_after_days to 2, the OXXO invoice will expire on Wednesday at 23:59 America/Mexico_City time. ExpiresAfterDays int64 `json:"expires_after_days"` @@ -2691,6 +2723,7 @@ type CheckoutSessionPaymentMethodOptions struct { Konbini *CheckoutSessionPaymentMethodOptionsKonbini `json:"konbini"` Link *CheckoutSessionPaymentMethodOptionsLink `json:"link"` Mobilepay *CheckoutSessionPaymentMethodOptionsMobilepay `json:"mobilepay"` + Multibanco *CheckoutSessionPaymentMethodOptionsMultibanco `json:"multibanco"` OXXO *CheckoutSessionPaymentMethodOptionsOXXO `json:"oxxo"` P24 *CheckoutSessionPaymentMethodOptionsP24 `json:"p24"` PayNow *CheckoutSessionPaymentMethodOptionsPayNow `json:"paynow"` diff --git a/confirmationtoken.go b/confirmationtoken.go index 1da14e0afe..93770e2311 100644 --- a/confirmationtoken.go +++ b/confirmationtoken.go @@ -234,6 +234,7 @@ const ( ConfirmationTokenPaymentMethodPreviewTypePayto ConfirmationTokenPaymentMethodPreviewType = "payto" ConfirmationTokenPaymentMethodPreviewTypePix ConfirmationTokenPaymentMethodPreviewType = "pix" ConfirmationTokenPaymentMethodPreviewTypePromptPay ConfirmationTokenPaymentMethodPreviewType = "promptpay" + ConfirmationTokenPaymentMethodPreviewTypeRechnung ConfirmationTokenPaymentMethodPreviewType = "rechnung" ConfirmationTokenPaymentMethodPreviewTypeRevolutPay ConfirmationTokenPaymentMethodPreviewType = "revolut_pay" ConfirmationTokenPaymentMethodPreviewTypeSEPADebit ConfirmationTokenPaymentMethodPreviewType = "sepa_debit" ConfirmationTokenPaymentMethodPreviewTypeSofort ConfirmationTokenPaymentMethodPreviewType = "sofort" @@ -627,6 +628,7 @@ type ConfirmationTokenPaymentMethodPreviewLink struct { // Account owner's email address. Email string `json:"email"` // [Deprecated] This is a legacy parameter that no longer has any function. + // Deprecated: PersistentToken string `json:"persistent_token"` } type ConfirmationTokenPaymentMethodPreviewMobilepay struct{} @@ -659,6 +661,17 @@ type ConfirmationTokenPaymentMethodPreviewPayto struct { } type ConfirmationTokenPaymentMethodPreviewPix struct{} type ConfirmationTokenPaymentMethodPreviewPromptPay struct{} +type ConfirmationTokenPaymentMethodPreviewRechnungDOB struct { + // The day of birth, between 1 and 31. + Day int64 `json:"day"` + // The month of birth, between 1 and 12. + Month int64 `json:"month"` + // The four-digit year of birth. + Year int64 `json:"year"` +} +type ConfirmationTokenPaymentMethodPreviewRechnung struct { + DOB *ConfirmationTokenPaymentMethodPreviewRechnungDOB `json:"dob"` +} type ConfirmationTokenPaymentMethodPreviewRevolutPay struct{} // Information about the object that generated this PaymentMethod. @@ -767,6 +780,7 @@ type ConfirmationTokenPaymentMethodPreview struct { Payto *ConfirmationTokenPaymentMethodPreviewPayto `json:"payto"` Pix *ConfirmationTokenPaymentMethodPreviewPix `json:"pix"` PromptPay *ConfirmationTokenPaymentMethodPreviewPromptPay `json:"promptpay"` + Rechnung *ConfirmationTokenPaymentMethodPreviewRechnung `json:"rechnung"` RevolutPay *ConfirmationTokenPaymentMethodPreviewRevolutPay `json:"revolut_pay"` SEPADebit *ConfirmationTokenPaymentMethodPreviewSEPADebit `json:"sepa_debit"` Sofort *ConfirmationTokenPaymentMethodPreviewSofort `json:"sofort"` diff --git a/customersession.go b/customersession.go index cdcaeda758..536bcacfee 100644 --- a/customersession.go +++ b/customersession.go @@ -6,7 +6,7 @@ package stripe -// Controls whether the Payment Element allows the removal of a saved payment method. +// Controls whether the Payment Element displays the option to remove a saved payment method. type CustomerSessionComponentsPaymentElementFeaturesPaymentMethodRemove string // List of values that CustomerSessionComponentsPaymentElementFeaturesPaymentMethodRemove can take @@ -15,7 +15,7 @@ const ( CustomerSessionComponentsPaymentElementFeaturesPaymentMethodRemoveEnabled CustomerSessionComponentsPaymentElementFeaturesPaymentMethodRemove = "enabled" ) -// Controls whether the Payment Element offers to save a new payment method. +// Controls whether the Payment Element displays a checkbox offering to save a new payment method. type CustomerSessionComponentsPaymentElementFeaturesPaymentMethodSave string // List of values that CustomerSessionComponentsPaymentElementFeaturesPaymentMethodSave can take @@ -24,7 +24,7 @@ const ( CustomerSessionComponentsPaymentElementFeaturesPaymentMethodSaveEnabled CustomerSessionComponentsPaymentElementFeaturesPaymentMethodSave = "enabled" ) -// Controls whether the Payment Element offers to set a payment method as the default. +// Controls whether the Payment Element displays a checkbox offering to set a saved payment method as the default. type CustomerSessionComponentsPaymentElementFeaturesPaymentMethodSetAsDefault string // List of values that CustomerSessionComponentsPaymentElementFeaturesPaymentMethodSetAsDefault can take @@ -33,7 +33,7 @@ const ( CustomerSessionComponentsPaymentElementFeaturesPaymentMethodSetAsDefaultEnabled CustomerSessionComponentsPaymentElementFeaturesPaymentMethodSetAsDefault = "enabled" ) -// Controls whether the Payment Element allows the updating of a saved payment method. +// Controls whether the Payment Element displays the option to update a saved payment method. type CustomerSessionComponentsPaymentElementFeaturesPaymentMethodUpdate string // List of values that CustomerSessionComponentsPaymentElementFeaturesPaymentMethodUpdate can take @@ -50,13 +50,13 @@ type CustomerSessionComponentsBuyButtonParams struct { // This hash defines whether the payment element supports certain features. type CustomerSessionComponentsPaymentElementFeaturesParams struct { - // Controls whether the Payment Element allows the removal of a saved payment method. + // Controls whether the Payment Element displays the option to remove a saved payment method. PaymentMethodRemove *string `form:"payment_method_remove"` - // Controls whether the Payment Element offers to save a new payment method. + // Controls whether the Payment Element displays a checkbox offering to save a new payment method. PaymentMethodSave *string `form:"payment_method_save"` - // Controls whether the Payment Element offers to set a payment method as the default. + // Controls whether the Payment Element displays a checkbox offering to set a saved payment method as the default. PaymentMethodSetAsDefault *string `form:"payment_method_set_as_default"` - // Controls whether the Payment Element allows the updating of a saved payment method. + // Controls whether the Payment Element displays the option to update a saved payment method. PaymentMethodUpdate *string `form:"payment_method_update"` } @@ -108,13 +108,13 @@ type CustomerSessionComponentsBuyButton struct { // This hash defines whether the payment element supports certain features. type CustomerSessionComponentsPaymentElementFeatures struct { - // Controls whether the Payment Element allows the removal of a saved payment method. + // Controls whether the Payment Element displays the option to remove a saved payment method. PaymentMethodRemove CustomerSessionComponentsPaymentElementFeaturesPaymentMethodRemove `json:"payment_method_remove"` - // Controls whether the Payment Element offers to save a new payment method. + // Controls whether the Payment Element displays a checkbox offering to save a new payment method. PaymentMethodSave CustomerSessionComponentsPaymentElementFeaturesPaymentMethodSave `json:"payment_method_save"` - // Controls whether the Payment Element offers to set a payment method as the default. + // Controls whether the Payment Element displays a checkbox offering to set a saved payment method as the default. PaymentMethodSetAsDefault CustomerSessionComponentsPaymentElementFeaturesPaymentMethodSetAsDefault `json:"payment_method_set_as_default"` - // Controls whether the Payment Element allows the updating of a saved payment method. + // Controls whether the Payment Element displays the option to update a saved payment method. PaymentMethodUpdate CustomerSessionComponentsPaymentElementFeaturesPaymentMethodUpdate `json:"payment_method_update"` } diff --git a/dispute.go b/dispute.go index a5e38a28a0..28be94d4ac 100644 --- a/dispute.go +++ b/dispute.go @@ -64,7 +64,8 @@ type DisputePaymentMethodDetailsType string // List of values that DisputePaymentMethodDetailsType can take const ( - DisputePaymentMethodDetailsTypeCard DisputePaymentMethodDetailsType = "card" + DisputePaymentMethodDetailsTypeCard DisputePaymentMethodDetailsType = "card" + DisputePaymentMethodDetailsTypePaypal DisputePaymentMethodDetailsType = "paypal" ) // Reason given by cardholder for dispute. Possible values are `bank_cannot_process`, `check_returned`, `credit_not_processed`, `customer_initiated`, `debit_not_authorized`, `duplicate`, `fraudulent`, `general`, `incorrect_account_details`, `insufficient_funds`, `product_not_received`, `product_unacceptable`, `subscription_canceled`, or `unrecognized`. Learn more about [dispute reasons](https://stripe.com/docs/disputes/categories). @@ -394,8 +395,15 @@ type DisputePaymentMethodDetailsCard struct { // The card network's specific dispute reason code, which maps to one of Stripe's primary dispute categories to simplify response guidance. The [Network code map](https://stripe.com/docs/disputes/categories#network-code-map) lists all available dispute reason codes by network. NetworkReasonCode string `json:"network_reason_code"` } +type DisputePaymentMethodDetailsPaypal struct { + // The ID of the dispute in PayPal. + CaseID string `json:"case_id"` + // The reason for the dispute as defined by PayPal + ReasonCode string `json:"reason_code"` +} type DisputePaymentMethodDetails struct { - Card *DisputePaymentMethodDetailsCard `json:"card"` + Card *DisputePaymentMethodDetailsCard `json:"card"` + Paypal *DisputePaymentMethodDetailsPaypal `json:"paypal"` // Payment method type. Type DisputePaymentMethodDetailsType `json:"type"` } diff --git a/invoice.go b/invoice.go index b8bc05a83e..d8180a0926 100644 --- a/invoice.go +++ b/invoice.go @@ -1660,6 +1660,8 @@ type InvoiceUpcomingSubscriptionPrebillingParams struct { // Note that when you are viewing an upcoming invoice, you are simply viewing a preview – the invoice has not yet been created. As such, the upcoming invoice will not show up in invoice listing calls, and you cannot use the API to pay or edit the invoice. If you want to change the amount that your customer will be billed, you can add, remove, or update pending invoice items, or update the customer's discount. // // You can preview the effects of updating a subscription, including a preview of what proration will take place. To ensure that the actual proration is calculated exactly the same as the previewed proration, you should pass the subscription_details.proration_date parameter when doing the actual subscription update. The recommended way to get only the prorations being previewed is to consider only proration line items where period[start] is equal to the subscription_details.proration_date value passed in the request. +// +// Note: Currency conversion calculations use the latest exchange rates. Exchange rates may vary between the time of the preview and the time of the actual invoice creation. [Learn more](https://docs.stripe.com/currencies/conversions) type InvoiceUpcomingParams struct { Params `form:"*"` // Settings for automatic tax lookup for this invoice preview. @@ -4445,6 +4447,8 @@ func (p *InvoiceCreatePreviewSubscriptionDetailsParams) AppendTo(body *form.Valu // Note that when you are viewing an upcoming invoice, you are simply viewing a preview – the invoice has not yet been created. As such, the upcoming invoice will not show up in invoice listing calls, and you cannot use the API to pay or edit the invoice. If you want to change the amount that your customer will be billed, you can add, remove, or update pending invoice items, or update the customer's discount. // // You can preview the effects of updating a subscription, including a preview of what proration will take place. To ensure that the actual proration is calculated exactly the same as the previewed proration, you should pass the subscription_details.proration_date parameter when doing the actual subscription update. The recommended way to get only the prorations being previewed is to consider only proration line items where period[start] is equal to the subscription_details.proration_date value passed in the request. +// +// Note: Currency conversion calculations use the latest exchange rates. Exchange rates may vary between the time of the preview and the time of the actual invoice creation. [Learn more](https://docs.stripe.com/currencies/conversions) type InvoiceCreatePreviewParams struct { Params `form:"*"` // Settings for automatic tax lookup for this invoice preview. @@ -4929,9 +4933,9 @@ type Invoice struct { // Payments for this invoice Payments *InvoicePaymentList `json:"payments"` PaymentSettings *InvoicePaymentSettings `json:"payment_settings"` - // End of the usage period during which invoice items were added to this invoice. + // End of the usage period during which invoice items were added to this invoice. This looks back one period for a subscription invoice. Use the [line item period](https://stripe.com/api/invoices/line_item#invoice_line_item_object-period) to get the service period for each price. PeriodEnd int64 `json:"period_end"` - // Start of the usage period during which invoice items were added to this invoice. + // Start of the usage period during which invoice items were added to this invoice. This looks back one period for a subscription invoice. Use the [line item period](https://stripe.com/api/invoices/line_item#invoice_line_item_object-period) to get the service period for each price. PeriodStart int64 `json:"period_start"` // Total amount of all post-payment credit notes issued for this invoice. PostPaymentCreditNotesAmount int64 `json:"post_payment_credit_notes_amount"` diff --git a/issuing/authorization/client.go b/issuing/authorization/client.go index 713b579c90..64d6f567a9 100644 --- a/issuing/authorization/client.go +++ b/issuing/authorization/client.go @@ -47,11 +47,13 @@ func (c Client) Update(id string, params *stripe.IssuingAuthorizationParams) (*s } // Approve is the method for the `POST /v1/issuing/authorizations/{authorization}/approve` API. +// Deprecated: func Approve(id string, params *stripe.IssuingAuthorizationApproveParams) (*stripe.IssuingAuthorization, error) { return getC().Approve(id, params) } // Approve is the method for the `POST /v1/issuing/authorizations/{authorization}/approve` API. +// Deprecated: func (c Client) Approve(id string, params *stripe.IssuingAuthorizationApproveParams) (*stripe.IssuingAuthorization, error) { path := stripe.FormatURLPath("/v1/issuing/authorizations/%s/approve", id) authorization := &stripe.IssuingAuthorization{} @@ -60,11 +62,13 @@ func (c Client) Approve(id string, params *stripe.IssuingAuthorizationApprovePar } // Decline is the method for the `POST /v1/issuing/authorizations/{authorization}/decline` API. +// Deprecated: func Decline(id string, params *stripe.IssuingAuthorizationDeclineParams) (*stripe.IssuingAuthorization, error) { return getC().Decline(id, params) } // Decline is the method for the `POST /v1/issuing/authorizations/{authorization}/decline` API. +// Deprecated: func (c Client) Decline(id string, params *stripe.IssuingAuthorizationDeclineParams) (*stripe.IssuingAuthorization, error) { path := stripe.FormatURLPath("/v1/issuing/authorizations/%s/decline", id) authorization := &stripe.IssuingAuthorization{} diff --git a/order.go b/order.go index a602ecbbb5..37d5cfa26b 100644 --- a/order.go +++ b/order.go @@ -891,6 +891,7 @@ type OrderPaymentSettingsPaymentMethodOptionsLinkParams struct { // If `capture_method` is already set on the PaymentIntent, providing an empty value for this parameter will unset the stored value for this payment method type. CaptureMethod *string `form:"capture_method"` // [Deprecated] This is a legacy parameter that no longer has any function. + // Deprecated: PersistentToken *string `form:"persistent_token"` // Indicates that you intend to make future payments with this PaymentIntent's payment method. // @@ -1425,6 +1426,7 @@ type OrderPaymentSettingsPaymentMethodOptionsLink struct { // Controls when the funds will be captured from the customer's account. CaptureMethod OrderPaymentSettingsPaymentMethodOptionsLinkCaptureMethod `json:"capture_method"` // [Deprecated] This is a legacy parameter that no longer has any function. + // Deprecated: PersistentToken string `json:"persistent_token"` // Indicates that you intend to make future payments with this PaymentIntent's payment method. // diff --git a/paymentintent.go b/paymentintent.go index 29424f879b..a1417f6b2f 100644 --- a/paymentintent.go +++ b/paymentintent.go @@ -1512,6 +1512,8 @@ type PaymentIntentPaymentMethodDataParams struct { PromptPay *PaymentMethodPromptPayParams `form:"promptpay"` // Options to configure Radar. See [Radar Session](https://stripe.com/docs/radar/radar-session) for more information. RadarOptions *PaymentIntentPaymentMethodDataRadarOptionsParams `form:"radar_options"` + // If this is a Rechnung PaymentMethod, this hash contains details about the Rechnung payment method. + Rechnung *PaymentMethodRechnungParams `form:"rechnung"` // If this is a `Revolut Pay` PaymentMethod, this hash contains details about the Revolut Pay payment method. RevolutPay *PaymentMethodRevolutPayParams `form:"revolut_pay"` // If this is a `sepa_debit` PaymentMethod, this hash contains details about the SEPA debit bank account. @@ -2041,6 +2043,7 @@ type PaymentIntentPaymentMethodOptionsLinkParams struct { // If `capture_method` is already set on the PaymentIntent, providing an empty value for this parameter will unset the stored value for this payment method type. CaptureMethod *string `form:"capture_method"` // [Deprecated] This is a legacy parameter that no longer has any function. + // Deprecated: PersistentToken *string `form:"persistent_token"` // Indicates that you intend to make future payments with this PaymentIntent's payment method. // @@ -2204,6 +2207,12 @@ type PaymentIntentPaymentMethodOptionsPromptPayParams struct { SetupFutureUsage *string `form:"setup_future_usage"` } +// If this is a `Rechnung` PaymentMethod, this sub-hash contains details about the Rechnung payment method options. +type PaymentIntentPaymentMethodOptionsRechnungParams struct { + // A unique identifier that correlates each transaction with the collected risk data. + RiskCorrelationID *string `form:"risk_correlation_id"` +} + // If this is a `revolut_pay` PaymentMethod, this sub-hash contains details about the Revolut Pay payment method options. type PaymentIntentPaymentMethodOptionsRevolutPayParams struct { // Controls when the funds will be captured from the customer's account. @@ -2411,6 +2420,8 @@ type PaymentIntentPaymentMethodOptionsParams struct { Pix *PaymentIntentPaymentMethodOptionsPixParams `form:"pix"` // If this is a `promptpay` PaymentMethod, this sub-hash contains details about the PromptPay payment method options. PromptPay *PaymentIntentPaymentMethodOptionsPromptPayParams `form:"promptpay"` + // If this is a `Rechnung` PaymentMethod, this sub-hash contains details about the Rechnung payment method options. + Rechnung *PaymentIntentPaymentMethodOptionsRechnungParams `form:"rechnung"` // If this is a `revolut_pay` PaymentMethod, this sub-hash contains details about the Revolut Pay payment method options. RevolutPay *PaymentIntentPaymentMethodOptionsRevolutPayParams `form:"revolut_pay"` // If this is a `sepa_debit` PaymentIntent, this sub-hash contains details about the SEPA Debit payment method options. @@ -3342,6 +3353,8 @@ type PaymentIntentConfirmParams struct { PaymentMethodData *PaymentIntentPaymentMethodDataParams `form:"payment_method_data"` // Payment method-specific configuration for this PaymentIntent. PaymentMethodOptions *PaymentIntentPaymentMethodOptionsParams `form:"payment_method_options"` + // The list of payment method types (for example, a card) that this PaymentIntent can use. Use `automatic_payment_methods` to manage payment methods from the [Stripe Dashboard](https://dashboard.stripe.com/settings/payment_methods). + PaymentMethodTypes []*string `form:"payment_method_types"` // Options to configure Radar. Learn more about [Radar Sessions](https://stripe.com/docs/radar/radar-session). RadarOptions *PaymentIntentConfirmRadarOptionsParams `form:"radar_options"` // Email address that the receipt for the resulting payment will be sent to. If `receipt_email` is specified for a payment in live mode, a receipt will be sent regardless of your [email settings](https://dashboard.stripe.com/account/emails). @@ -4291,6 +4304,7 @@ type PaymentIntentPaymentMethodOptionsLink struct { // Controls when the funds will be captured from the customer's account. CaptureMethod PaymentIntentPaymentMethodOptionsLinkCaptureMethod `json:"capture_method"` // [Deprecated] This is a legacy parameter that no longer has any function. + // Deprecated: PersistentToken string `json:"persistent_token"` // Indicates that you intend to make future payments with this PaymentIntent's payment method. // @@ -4404,6 +4418,10 @@ type PaymentIntentPaymentMethodOptionsPromptPay 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 PaymentIntentPaymentMethodOptionsPromptPaySetupFutureUsage `json:"setup_future_usage"` } +type PaymentIntentPaymentMethodOptionsRechnung struct { + // A unique identifier that correlates each transaction with the collected risk data. + RiskCorrelationID string `json:"risk_correlation_id"` +} type PaymentIntentPaymentMethodOptionsRevolutPay struct { // Controls when the funds will be captured from the customer's account. CaptureMethod PaymentIntentPaymentMethodOptionsRevolutPayCaptureMethod `json:"capture_method"` @@ -4530,6 +4548,7 @@ type PaymentIntentPaymentMethodOptions struct { Payto *PaymentIntentPaymentMethodOptionsPayto `json:"payto"` Pix *PaymentIntentPaymentMethodOptionsPix `json:"pix"` PromptPay *PaymentIntentPaymentMethodOptionsPromptPay `json:"promptpay"` + Rechnung *PaymentIntentPaymentMethodOptionsRechnung `json:"rechnung"` RevolutPay *PaymentIntentPaymentMethodOptionsRevolutPay `json:"revolut_pay"` SEPADebit *PaymentIntentPaymentMethodOptionsSEPADebit `json:"sepa_debit"` Sofort *PaymentIntentPaymentMethodOptionsSofort `json:"sofort"` diff --git a/paymentmethod.go b/paymentmethod.go index c22edebe84..3edeab868b 100644 --- a/paymentmethod.go +++ b/paymentmethod.go @@ -174,6 +174,7 @@ const ( PaymentMethodTypePayto PaymentMethodType = "payto" PaymentMethodTypePix PaymentMethodType = "pix" PaymentMethodTypePromptPay PaymentMethodType = "promptpay" + PaymentMethodTypeRechnung PaymentMethodType = "rechnung" PaymentMethodTypeRevolutPay PaymentMethodType = "revolut_pay" PaymentMethodTypeSEPADebit PaymentMethodType = "sepa_debit" PaymentMethodTypeSofort PaymentMethodType = "sofort" @@ -443,6 +444,22 @@ type PaymentMethodRadarOptionsParams struct { Session *string `form:"session"` } +// Customer's date of birth +type PaymentMethodRechnungDOBParams struct { + // The day of birth, between 1 and 31. + Day *int64 `form:"day"` + // The month of birth, between 1 and 12. + Month *int64 `form:"month"` + // The four-digit year of birth. + Year *int64 `form:"year"` +} + +// If this is a Rechnung PaymentMethod, this hash contains details about the Rechnung payment method. +type PaymentMethodRechnungParams struct { + // Customer's date of birth + DOB *PaymentMethodRechnungDOBParams `form:"dob"` +} + // If this is a `Revolut Pay` PaymentMethod, this hash contains details about the Revolut Pay payment method. type PaymentMethodRevolutPayParams struct{} @@ -561,6 +578,8 @@ type PaymentMethodParams struct { PromptPay *PaymentMethodPromptPayParams `form:"promptpay"` // Options to configure Radar. See [Radar Session](https://stripe.com/docs/radar/radar-session) for more information. RadarOptions *PaymentMethodRadarOptionsParams `form:"radar_options"` + // If this is a Rechnung PaymentMethod, this hash contains details about the Rechnung payment method. + Rechnung *PaymentMethodRechnungParams `form:"rechnung"` // If this is a `Revolut Pay` PaymentMethod, this hash contains details about the Revolut Pay payment method. RevolutPay *PaymentMethodRevolutPayParams `form:"revolut_pay"` // If this is a `sepa_debit` PaymentMethod, this hash contains details about the SEPA debit bank account. @@ -908,6 +927,7 @@ type PaymentMethodLink struct { // Account owner's email address. Email string `json:"email"` // [Deprecated] This is a legacy parameter that no longer has any function. + // Deprecated: PersistentToken string `json:"persistent_token"` } type PaymentMethodMobilepay struct{} @@ -946,6 +966,17 @@ type PaymentMethodRadarOptions struct { // A [Radar Session](https://stripe.com/docs/radar/radar-session) is a snapshot of the browser metadata and device details that help Radar make more accurate predictions on your payments. Session string `json:"session"` } +type PaymentMethodRechnungDOB struct { + // The day of birth, between 1 and 31. + Day int64 `json:"day"` + // The month of birth, between 1 and 12. + Month int64 `json:"month"` + // The four-digit year of birth. + Year int64 `json:"year"` +} +type PaymentMethodRechnung struct { + DOB *PaymentMethodRechnungDOB `json:"dob"` +} type PaymentMethodRevolutPay struct{} // Information about the object that generated this PaymentMethod. @@ -1073,6 +1104,7 @@ type PaymentMethod struct { PromptPay *PaymentMethodPromptPay `json:"promptpay"` // Options to configure Radar. See [Radar Session](https://stripe.com/docs/radar/radar-session) for more information. RadarOptions *PaymentMethodRadarOptions `json:"radar_options"` + Rechnung *PaymentMethodRechnung `json:"rechnung"` RevolutPay *PaymentMethodRevolutPay `json:"revolut_pay"` SEPADebit *PaymentMethodSEPADebit `json:"sepa_debit"` Sofort *PaymentMethodSofort `json:"sofort"` diff --git a/quotepreviewinvoice.go b/quotepreviewinvoice.go index d2671d582f..d1a157ab7c 100644 --- a/quotepreviewinvoice.go +++ b/quotepreviewinvoice.go @@ -821,9 +821,9 @@ type QuotePreviewInvoice struct { // Payments for this invoice Payments *InvoicePaymentList `json:"payments"` PaymentSettings *QuotePreviewInvoicePaymentSettings `json:"payment_settings"` - // End of the usage period during which invoice items were added to this invoice. + // End of the usage period during which invoice items were added to this invoice. This looks back one period for a subscription invoice. Use the [line item period](https://stripe.com/api/invoices/line_item#invoice_line_item_object-period) to get the service period for each price. PeriodEnd int64 `json:"period_end"` - // Start of the usage period during which invoice items were added to this invoice. + // Start of the usage period during which invoice items were added to this invoice. This looks back one period for a subscription invoice. Use the [line item period](https://stripe.com/api/invoices/line_item#invoice_line_item_object-period) to get the service period for each price. PeriodStart int64 `json:"period_start"` // Total amount of all post-payment credit notes issued for this invoice. PostPaymentCreditNotesAmount int64 `json:"post_payment_credit_notes_amount"` diff --git a/setupintent.go b/setupintent.go index 5f33333860..93905fde7f 100644 --- a/setupintent.go +++ b/setupintent.go @@ -505,6 +505,22 @@ type SetupIntentPaymentMethodDataRadarOptionsParams struct { Session *string `form:"session"` } +// Customer's date of birth +type SetupIntentPaymentMethodDataRechnungDOBParams struct { + // The day of birth, between 1 and 31. + Day *int64 `form:"day"` + // The month of birth, between 1 and 12. + Month *int64 `form:"month"` + // The four-digit year of birth. + Year *int64 `form:"year"` +} + +// If this is a Rechnung PaymentMethod, this hash contains details about the Rechnung payment method. +type SetupIntentPaymentMethodDataRechnungParams struct { + // Customer's date of birth + DOB *SetupIntentPaymentMethodDataRechnungDOBParams `form:"dob"` +} + // If this is a `Revolut Pay` PaymentMethod, this hash contains details about the Revolut Pay payment method. type SetupIntentPaymentMethodDataRevolutPayParams struct{} @@ -617,6 +633,8 @@ type SetupIntentPaymentMethodDataParams struct { PromptPay *SetupIntentPaymentMethodDataPromptPayParams `form:"promptpay"` // Options to configure Radar. See [Radar Session](https://stripe.com/docs/radar/radar-session) for more information. RadarOptions *SetupIntentPaymentMethodDataRadarOptionsParams `form:"radar_options"` + // If this is a Rechnung PaymentMethod, this hash contains details about the Rechnung payment method. + Rechnung *SetupIntentPaymentMethodDataRechnungParams `form:"rechnung"` // If this is a `Revolut Pay` PaymentMethod, this hash contains details about the Revolut Pay payment method. RevolutPay *SetupIntentPaymentMethodDataRevolutPayParams `form:"revolut_pay"` // If this is a `sepa_debit` PaymentMethod, this hash contains details about the SEPA debit bank account. @@ -773,6 +791,7 @@ type SetupIntentPaymentMethodOptionsCardPresentParams struct{} // If this is a `link` PaymentMethod, this sub-hash contains details about the Link payment method options. type SetupIntentPaymentMethodOptionsLinkParams struct { // [Deprecated] This is a legacy parameter that no longer has any function. + // Deprecated: PersistentToken *string `form:"persistent_token"` } @@ -1141,6 +1160,22 @@ type SetupIntentConfirmPaymentMethodDataRadarOptionsParams struct { Session *string `form:"session"` } +// Customer's date of birth +type SetupIntentConfirmPaymentMethodDataRechnungDOBParams struct { + // The day of birth, between 1 and 31. + Day *int64 `form:"day"` + // The month of birth, between 1 and 12. + Month *int64 `form:"month"` + // The four-digit year of birth. + Year *int64 `form:"year"` +} + +// If this is a Rechnung PaymentMethod, this hash contains details about the Rechnung payment method. +type SetupIntentConfirmPaymentMethodDataRechnungParams struct { + // Customer's date of birth + DOB *SetupIntentConfirmPaymentMethodDataRechnungDOBParams `form:"dob"` +} + // If this is a `Revolut Pay` PaymentMethod, this hash contains details about the Revolut Pay payment method. type SetupIntentConfirmPaymentMethodDataRevolutPayParams struct{} @@ -1253,6 +1288,8 @@ type SetupIntentConfirmPaymentMethodDataParams struct { PromptPay *SetupIntentConfirmPaymentMethodDataPromptPayParams `form:"promptpay"` // Options to configure Radar. See [Radar Session](https://stripe.com/docs/radar/radar-session) for more information. RadarOptions *SetupIntentConfirmPaymentMethodDataRadarOptionsParams `form:"radar_options"` + // If this is a Rechnung PaymentMethod, this hash contains details about the Rechnung payment method. + Rechnung *SetupIntentConfirmPaymentMethodDataRechnungParams `form:"rechnung"` // If this is a `Revolut Pay` PaymentMethod, this hash contains details about the Revolut Pay payment method. RevolutPay *SetupIntentConfirmPaymentMethodDataRevolutPayParams `form:"revolut_pay"` // If this is a `sepa_debit` PaymentMethod, this hash contains details about the SEPA debit bank account. @@ -1456,6 +1493,7 @@ type SetupIntentPaymentMethodOptionsCard struct { type SetupIntentPaymentMethodOptionsCardPresent struct{} type SetupIntentPaymentMethodOptionsLink struct { // [Deprecated] This is a legacy parameter that no longer has any function. + // Deprecated: PersistentToken string `json:"persistent_token"` } type SetupIntentPaymentMethodOptionsPaypal struct { diff --git a/tax_calculation.go b/tax_calculation.go index fe141fb67e..9a1907ecd6 100644 --- a/tax_calculation.go +++ b/tax_calculation.go @@ -270,7 +270,7 @@ type TaxCalculationLineItemParams struct { TaxCode *string `form:"tax_code"` } -// Details about the address from which the goods are being shippped. +// Details about the address from which the goods are being shipped. type TaxCalculationShipFromDetailsParams struct { // The address from which the goods are being shipped from. Address *AddressParams `form:"address"` @@ -301,7 +301,7 @@ type TaxCalculationParams struct { Expand []*string `form:"expand"` // A list of items the customer is purchasing. LineItems []*TaxCalculationLineItemParams `form:"line_items"` - // Details about the address from which the goods are being shippped. + // Details about the address from which the goods are being shipped. ShipFromDetails *TaxCalculationShipFromDetailsParams `form:"ship_from_details"` // Shipping cost details to be used for the calculation. ShippingCost *TaxCalculationShippingCostParams `form:"shipping_cost"` diff --git a/tax_registration.go b/tax_registration.go index 9ced940bbf..218e46ca34 100644 --- a/tax_registration.go +++ b/tax_registration.go @@ -84,6 +84,14 @@ const ( TaxRegistrationCountryOptionsBGTypeStandard TaxRegistrationCountryOptionsBGType = "standard" ) +// Type of registration in `country`. +type TaxRegistrationCountryOptionsBhType string + +// List of values that TaxRegistrationCountryOptionsBhType can take +const ( + TaxRegistrationCountryOptionsBhTypeStandard TaxRegistrationCountryOptionsBhType = "standard" +) + // Type of registration in Canada. type TaxRegistrationCountryOptionsCaType string @@ -218,6 +226,14 @@ const ( TaxRegistrationCountryOptionsEeTypeStandard TaxRegistrationCountryOptionsEeType = "standard" ) +// Type of registration in `country`. +type TaxRegistrationCountryOptionsEgType string + +// List of values that TaxRegistrationCountryOptionsEgType can take +const ( + TaxRegistrationCountryOptionsEgTypeSimplified TaxRegistrationCountryOptionsEgType = "simplified" +) + // Place of supply scheme used in an EU standard registration. type TaxRegistrationCountryOptionsESStandardPlaceOfSupplyScheme string @@ -286,6 +302,14 @@ const ( TaxRegistrationCountryOptionsGBTypeStandard TaxRegistrationCountryOptionsGBType = "standard" ) +// Type of registration in `country`. +type TaxRegistrationCountryOptionsGeType string + +// List of values that TaxRegistrationCountryOptionsGeType can take +const ( + TaxRegistrationCountryOptionsGeTypeSimplified TaxRegistrationCountryOptionsGeType = "simplified" +) + // Place of supply scheme used in an EU standard registration. type TaxRegistrationCountryOptionsGrStandardPlaceOfSupplyScheme string @@ -410,6 +434,14 @@ const ( TaxRegistrationCountryOptionsJPTypeStandard TaxRegistrationCountryOptionsJPType = "standard" ) +// Type of registration in `country`. +type TaxRegistrationCountryOptionsKeType string + +// List of values that TaxRegistrationCountryOptionsKeType can take +const ( + TaxRegistrationCountryOptionsKeTypeSimplified TaxRegistrationCountryOptionsKeType = "simplified" +) + // Type of registration in `country`. type TaxRegistrationCountryOptionsKrType string @@ -418,6 +450,14 @@ const ( TaxRegistrationCountryOptionsKrTypeSimplified TaxRegistrationCountryOptionsKrType = "simplified" ) +// Type of registration in `country`. +type TaxRegistrationCountryOptionsKzType string + +// List of values that TaxRegistrationCountryOptionsKzType can take +const ( + TaxRegistrationCountryOptionsKzTypeSimplified TaxRegistrationCountryOptionsKzType = "simplified" +) + // Place of supply scheme used in an EU standard registration. type TaxRegistrationCountryOptionsLTStandardPlaceOfSupplyScheme string @@ -514,6 +554,14 @@ const ( TaxRegistrationCountryOptionsMyTypeSimplified TaxRegistrationCountryOptionsMyType = "simplified" ) +// Type of registration in `country`. +type TaxRegistrationCountryOptionsNgType string + +// List of values that TaxRegistrationCountryOptionsNgType can take +const ( + TaxRegistrationCountryOptionsNgTypeSimplified TaxRegistrationCountryOptionsNgType = "simplified" +) + // Place of supply scheme used in an EU standard registration. type TaxRegistrationCountryOptionsNLStandardPlaceOfSupplyScheme string @@ -550,6 +598,14 @@ const ( TaxRegistrationCountryOptionsNzTypeStandard TaxRegistrationCountryOptionsNzType = "standard" ) +// Type of registration in `country`. +type TaxRegistrationCountryOptionsOmType string + +// List of values that TaxRegistrationCountryOptionsOmType can take +const ( + TaxRegistrationCountryOptionsOmTypeStandard TaxRegistrationCountryOptionsOmType = "standard" +) + // Place of supply scheme used in an EU standard registration. type TaxRegistrationCountryOptionsPLStandardPlaceOfSupplyScheme string @@ -807,6 +863,12 @@ type TaxRegistrationCountryOptionsBGParams struct { Type *string `form:"type"` } +// Options for the registration in BH. +type TaxRegistrationCountryOptionsBhParams struct { + // Type of registration to be created in `country`. + Type *string `form:"type"` +} + // Options for the provincial tax registration. type TaxRegistrationCountryOptionsCaProvinceStandardParams struct { // Two-letter CA province code ([ISO 3166-2](https://en.wikipedia.org/wiki/ISO_3166-2)). @@ -909,6 +971,12 @@ type TaxRegistrationCountryOptionsEeParams struct { Type *string `form:"type"` } +// Options for the registration in EG. +type TaxRegistrationCountryOptionsEgParams struct { + // Type of registration to be created in `country`. + Type *string `form:"type"` +} + // Options for the standard registration. type TaxRegistrationCountryOptionsESStandardParams struct { // Place of supply scheme used in an EU standard registration. @@ -957,6 +1025,12 @@ type TaxRegistrationCountryOptionsGBParams struct { Type *string `form:"type"` } +// Options for the registration in GE. +type TaxRegistrationCountryOptionsGeParams struct { + // Type of registration to be created in `country`. + Type *string `form:"type"` +} + // Options for the standard registration. type TaxRegistrationCountryOptionsGrStandardParams struct { // Place of supply scheme used in an EU standard registration. @@ -1045,12 +1119,24 @@ type TaxRegistrationCountryOptionsJPParams struct { Type *string `form:"type"` } +// Options for the registration in KE. +type TaxRegistrationCountryOptionsKeParams struct { + // Type of registration to be created in `country`. + Type *string `form:"type"` +} + // Options for the registration in KR. type TaxRegistrationCountryOptionsKrParams struct { // Type of registration to be created in `country`. Type *string `form:"type"` } +// Options for the registration in KZ. +type TaxRegistrationCountryOptionsKzParams struct { + // Type of registration to be created in `country`. + Type *string `form:"type"` +} + // Options for the standard registration. type TaxRegistrationCountryOptionsLTStandardParams struct { // Place of supply scheme used in an EU standard registration. @@ -1119,6 +1205,12 @@ type TaxRegistrationCountryOptionsMyParams struct { Type *string `form:"type"` } +// Options for the registration in NG. +type TaxRegistrationCountryOptionsNgParams struct { + // Type of registration to be created in `country`. + Type *string `form:"type"` +} + // Options for the standard registration. type TaxRegistrationCountryOptionsNLStandardParams struct { // Place of supply scheme used in an EU standard registration. @@ -1145,6 +1237,12 @@ type TaxRegistrationCountryOptionsNzParams struct { Type *string `form:"type"` } +// Options for the registration in OM. +type TaxRegistrationCountryOptionsOmParams struct { + // Type of registration to be created in `country`. + Type *string `form:"type"` +} + // Options for the standard registration. type TaxRegistrationCountryOptionsPLStandardParams struct { // Place of supply scheme used in an EU standard registration. @@ -1301,6 +1399,8 @@ type TaxRegistrationCountryOptionsParams struct { Be *TaxRegistrationCountryOptionsBeParams `form:"be"` // Options for the registration in BG. BG *TaxRegistrationCountryOptionsBGParams `form:"bg"` + // Options for the registration in BH. + Bh *TaxRegistrationCountryOptionsBhParams `form:"bh"` // Options for the registration in CA. Ca *TaxRegistrationCountryOptionsCaParams `form:"ca"` // Options for the registration in CH. @@ -1319,6 +1419,8 @@ type TaxRegistrationCountryOptionsParams struct { Dk *TaxRegistrationCountryOptionsDkParams `form:"dk"` // Options for the registration in EE. Ee *TaxRegistrationCountryOptionsEeParams `form:"ee"` + // Options for the registration in EG. + Eg *TaxRegistrationCountryOptionsEgParams `form:"eg"` // Options for the registration in ES. ES *TaxRegistrationCountryOptionsESParams `form:"es"` // Options for the registration in FI. @@ -1327,6 +1429,8 @@ type TaxRegistrationCountryOptionsParams struct { FR *TaxRegistrationCountryOptionsFRParams `form:"fr"` // Options for the registration in GB. GB *TaxRegistrationCountryOptionsGBParams `form:"gb"` + // Options for the registration in GE. + Ge *TaxRegistrationCountryOptionsGeParams `form:"ge"` // Options for the registration in GR. Gr *TaxRegistrationCountryOptionsGrParams `form:"gr"` // Options for the registration in HR. @@ -1343,8 +1447,12 @@ type TaxRegistrationCountryOptionsParams struct { IT *TaxRegistrationCountryOptionsITParams `form:"it"` // Options for the registration in JP. JP *TaxRegistrationCountryOptionsJPParams `form:"jp"` + // Options for the registration in KE. + Ke *TaxRegistrationCountryOptionsKeParams `form:"ke"` // Options for the registration in KR. Kr *TaxRegistrationCountryOptionsKrParams `form:"kr"` + // Options for the registration in KZ. + Kz *TaxRegistrationCountryOptionsKzParams `form:"kz"` // Options for the registration in LT. LT *TaxRegistrationCountryOptionsLTParams `form:"lt"` // Options for the registration in LU. @@ -1357,12 +1465,16 @@ type TaxRegistrationCountryOptionsParams struct { MX *TaxRegistrationCountryOptionsMXParams `form:"mx"` // Options for the registration in MY. My *TaxRegistrationCountryOptionsMyParams `form:"my"` + // Options for the registration in NG. + Ng *TaxRegistrationCountryOptionsNgParams `form:"ng"` // Options for the registration in NL. NL *TaxRegistrationCountryOptionsNLParams `form:"nl"` // Options for the registration in NO. No *TaxRegistrationCountryOptionsNoParams `form:"no"` // Options for the registration in NZ. Nz *TaxRegistrationCountryOptionsNzParams `form:"nz"` + // Options for the registration in OM. + Om *TaxRegistrationCountryOptionsOmParams `form:"om"` // Options for the registration in PL. PL *TaxRegistrationCountryOptionsPLParams `form:"pl"` // Options for the registration in PT. @@ -1458,6 +1570,10 @@ type TaxRegistrationCountryOptionsBG struct { // Type of registration in an EU country. Type TaxRegistrationCountryOptionsBGType `json:"type"` } +type TaxRegistrationCountryOptionsBh struct { + // Type of registration in `country`. + Type TaxRegistrationCountryOptionsBhType `json:"type"` +} type TaxRegistrationCountryOptionsCaProvinceStandard struct { // Two-letter CA province code ([ISO 3166-2](https://en.wikipedia.org/wiki/ISO_3166-2)). Province string `json:"province"` @@ -1524,6 +1640,10 @@ type TaxRegistrationCountryOptionsEe struct { // Type of registration in an EU country. Type TaxRegistrationCountryOptionsEeType `json:"type"` } +type TaxRegistrationCountryOptionsEg struct { + // Type of registration in `country`. + Type TaxRegistrationCountryOptionsEgType `json:"type"` +} type TaxRegistrationCountryOptionsESStandard struct { // Place of supply scheme used in an EU standard registration. PlaceOfSupplyScheme TaxRegistrationCountryOptionsESStandardPlaceOfSupplyScheme `json:"place_of_supply_scheme"` @@ -1555,6 +1675,10 @@ type TaxRegistrationCountryOptionsGB struct { // Type of registration in `country`. Type TaxRegistrationCountryOptionsGBType `json:"type"` } +type TaxRegistrationCountryOptionsGe struct { + // Type of registration in `country`. + Type TaxRegistrationCountryOptionsGeType `json:"type"` +} type TaxRegistrationCountryOptionsGrStandard struct { // Place of supply scheme used in an EU standard registration. PlaceOfSupplyScheme TaxRegistrationCountryOptionsGrStandardPlaceOfSupplyScheme `json:"place_of_supply_scheme"` @@ -1612,10 +1736,18 @@ type TaxRegistrationCountryOptionsJP struct { // Type of registration in `country`. Type TaxRegistrationCountryOptionsJPType `json:"type"` } +type TaxRegistrationCountryOptionsKe struct { + // Type of registration in `country`. + Type TaxRegistrationCountryOptionsKeType `json:"type"` +} type TaxRegistrationCountryOptionsKr struct { // Type of registration in `country`. Type TaxRegistrationCountryOptionsKrType `json:"type"` } +type TaxRegistrationCountryOptionsKz struct { + // Type of registration in `country`. + Type TaxRegistrationCountryOptionsKzType `json:"type"` +} type TaxRegistrationCountryOptionsLTStandard struct { // Place of supply scheme used in an EU standard registration. PlaceOfSupplyScheme TaxRegistrationCountryOptionsLTStandardPlaceOfSupplyScheme `json:"place_of_supply_scheme"` @@ -1660,6 +1792,10 @@ type TaxRegistrationCountryOptionsMy struct { // Type of registration in `country`. Type TaxRegistrationCountryOptionsMyType `json:"type"` } +type TaxRegistrationCountryOptionsNg struct { + // Type of registration in `country`. + Type TaxRegistrationCountryOptionsNgType `json:"type"` +} type TaxRegistrationCountryOptionsNLStandard struct { // Place of supply scheme used in an EU standard registration. PlaceOfSupplyScheme TaxRegistrationCountryOptionsNLStandardPlaceOfSupplyScheme `json:"place_of_supply_scheme"` @@ -1677,6 +1813,10 @@ type TaxRegistrationCountryOptionsNz struct { // Type of registration in `country`. Type TaxRegistrationCountryOptionsNzType `json:"type"` } +type TaxRegistrationCountryOptionsOm struct { + // Type of registration in `country`. + Type TaxRegistrationCountryOptionsOmType `json:"type"` +} type TaxRegistrationCountryOptionsPLStandard struct { // Place of supply scheme used in an EU standard registration. PlaceOfSupplyScheme TaxRegistrationCountryOptionsPLStandardPlaceOfSupplyScheme `json:"place_of_supply_scheme"` @@ -1777,6 +1917,7 @@ type TaxRegistrationCountryOptions struct { Au *TaxRegistrationCountryOptionsAu `json:"au"` Be *TaxRegistrationCountryOptionsBe `json:"be"` BG *TaxRegistrationCountryOptionsBG `json:"bg"` + Bh *TaxRegistrationCountryOptionsBh `json:"bh"` Ca *TaxRegistrationCountryOptionsCa `json:"ca"` Ch *TaxRegistrationCountryOptionsCh `json:"ch"` Cl *TaxRegistrationCountryOptionsCl `json:"cl"` @@ -1786,10 +1927,12 @@ type TaxRegistrationCountryOptions struct { DE *TaxRegistrationCountryOptionsDE `json:"de"` Dk *TaxRegistrationCountryOptionsDk `json:"dk"` Ee *TaxRegistrationCountryOptionsEe `json:"ee"` + Eg *TaxRegistrationCountryOptionsEg `json:"eg"` ES *TaxRegistrationCountryOptionsES `json:"es"` FI *TaxRegistrationCountryOptionsFI `json:"fi"` FR *TaxRegistrationCountryOptionsFR `json:"fr"` GB *TaxRegistrationCountryOptionsGB `json:"gb"` + Ge *TaxRegistrationCountryOptionsGe `json:"ge"` Gr *TaxRegistrationCountryOptionsGr `json:"gr"` HR *TaxRegistrationCountryOptionsHR `json:"hr"` HU *TaxRegistrationCountryOptionsHU `json:"hu"` @@ -1798,16 +1941,20 @@ type TaxRegistrationCountryOptions struct { Is *TaxRegistrationCountryOptionsIs `json:"is"` IT *TaxRegistrationCountryOptionsIT `json:"it"` JP *TaxRegistrationCountryOptionsJP `json:"jp"` + Ke *TaxRegistrationCountryOptionsKe `json:"ke"` Kr *TaxRegistrationCountryOptionsKr `json:"kr"` + Kz *TaxRegistrationCountryOptionsKz `json:"kz"` LT *TaxRegistrationCountryOptionsLT `json:"lt"` Lu *TaxRegistrationCountryOptionsLu `json:"lu"` LV *TaxRegistrationCountryOptionsLV `json:"lv"` MT *TaxRegistrationCountryOptionsMT `json:"mt"` MX *TaxRegistrationCountryOptionsMX `json:"mx"` My *TaxRegistrationCountryOptionsMy `json:"my"` + Ng *TaxRegistrationCountryOptionsNg `json:"ng"` NL *TaxRegistrationCountryOptionsNL `json:"nl"` No *TaxRegistrationCountryOptionsNo `json:"no"` Nz *TaxRegistrationCountryOptionsNz `json:"nz"` + Om *TaxRegistrationCountryOptionsOm `json:"om"` PL *TaxRegistrationCountryOptionsPL `json:"pl"` PT *TaxRegistrationCountryOptionsPT `json:"pt"` RO *TaxRegistrationCountryOptionsRO `json:"ro"` diff --git a/testhelpers_confirmationtoken.go b/testhelpers_confirmationtoken.go index 0d9d3c25ad..18d7d78cc8 100644 --- a/testhelpers_confirmationtoken.go +++ b/testhelpers_confirmationtoken.go @@ -168,6 +168,22 @@ type TestHelpersConfirmationTokenPaymentMethodDataRadarOptionsParams struct { Session *string `form:"session"` } +// Customer's date of birth +type TestHelpersConfirmationTokenPaymentMethodDataRechnungDOBParams struct { + // The day of birth, between 1 and 31. + Day *int64 `form:"day"` + // The month of birth, between 1 and 12. + Month *int64 `form:"month"` + // The four-digit year of birth. + Year *int64 `form:"year"` +} + +// If this is a Rechnung PaymentMethod, this hash contains details about the Rechnung payment method. +type TestHelpersConfirmationTokenPaymentMethodDataRechnungParams struct { + // Customer's date of birth + DOB *TestHelpersConfirmationTokenPaymentMethodDataRechnungDOBParams `form:"dob"` +} + // If this is a `Revolut Pay` PaymentMethod, this hash contains details about the Revolut Pay payment method. type TestHelpersConfirmationTokenPaymentMethodDataRevolutPayParams struct{} @@ -279,6 +295,8 @@ type TestHelpersConfirmationTokenPaymentMethodDataParams struct { PromptPay *TestHelpersConfirmationTokenPaymentMethodDataPromptPayParams `form:"promptpay"` // Options to configure Radar. See [Radar Session](https://stripe.com/docs/radar/radar-session) for more information. RadarOptions *TestHelpersConfirmationTokenPaymentMethodDataRadarOptionsParams `form:"radar_options"` + // If this is a Rechnung PaymentMethod, this hash contains details about the Rechnung payment method. + Rechnung *TestHelpersConfirmationTokenPaymentMethodDataRechnungParams `form:"rechnung"` // If this is a `Revolut Pay` PaymentMethod, this hash contains details about the Revolut Pay payment method. RevolutPay *TestHelpersConfirmationTokenPaymentMethodDataRevolutPayParams `form:"revolut_pay"` // If this is a `sepa_debit` PaymentMethod, this hash contains details about the SEPA debit bank account.