From 4e99fc7346c42605e38e08fb1e276b0a9b8d6437 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" Date: Tue, 5 Dec 2023 01:36:58 +0000 Subject: [PATCH] Update services based on v696 of Stripe OpenApi SDK Reference: https://github.com/stripe/openapi/releases/tag/v696 --- .latest-tag-stripe-openapi-sdk | 2 +- lib/generated/account.ex | 30 +- lib/generated/account_session.ex | 33 ++- lib/generated/checkout__session.ex | 7 +- lib/generated/payment_intent.ex | 136 ++++----- lib/generated/payment_link.ex | 79 ++++-- lib/generated/setup_intent.ex | 10 +- lib/generated/token.ex | 6 +- priv/openapi/spec3.sdk.json | 438 ++++++++++++++++++++++++++++- 9 files changed, 601 insertions(+), 140 deletions(-) diff --git a/.latest-tag-stripe-openapi-sdk b/.latest-tag-stripe-openapi-sdk index 59c1afab..e214df79 100644 --- a/.latest-tag-stripe-openapi-sdk +++ b/.latest-tag-stripe-openapi-sdk @@ -1 +1 @@ -v693 +v696 diff --git a/lib/generated/account.ex b/lib/generated/account.ex index 69185aa9..a7e61d57 100644 --- a/lib/generated/account.ex +++ b/lib/generated/account.ex @@ -78,7 +78,7 @@ defmodule Stripe.Account do ) ( - @typedoc "The Kana variation of the company's primary address (Japan only)." + @typedoc "The Kana variation of the the individual's primary address (Japan only)." @type address_kana :: %{ optional(:city) => binary, optional(:country) => binary, @@ -91,7 +91,7 @@ defmodule Stripe.Account do ) ( - @typedoc "The Kanji variation of the the individual's primary address (Japan only)." + @typedoc "The Kanji variation of the company's primary address (Japan only)." @type address_kanji :: %{ optional(:city) => binary, optional(:country) => binary, @@ -119,8 +119,8 @@ defmodule Stripe.Account do ) ( - @typedoc "Settings specific to Bacs Direct Debit payments." - @type bacs_debit_payments :: %{optional(:display_name) => binary} + @typedoc "The bacs_debit_payments capability." + @type bacs_debit_payments :: %{optional(:requested) => boolean} ) ( @@ -222,8 +222,13 @@ defmodule Stripe.Account do ) ( - @typedoc "The card_payments capability." - @type card_payments :: %{optional(:requested) => boolean} + @typedoc "Settings specific to card charging on the account." + @type card_payments :: %{ + optional(:decline_on) => decline_on, + optional(:statement_descriptor_prefix) => binary, + optional(:statement_descriptor_prefix_kana) => binary | binary, + optional(:statement_descriptor_prefix_kanji) => binary | binary + } ) ( @@ -333,7 +338,7 @@ defmodule Stripe.Account do ) ( - @typedoc "A document verifying the business." + @typedoc "An identifying document, either a passport or local ID card." @type document :: %{optional(:back) => binary, optional(:front) => binary} ) @@ -593,8 +598,8 @@ defmodule Stripe.Account do ) ( - @typedoc "Settings specific to the account's Treasury FinancialAccounts." - @type treasury :: %{optional(:tos_acceptance) => tos_acceptance} + @typedoc "The treasury capability." + @type treasury :: %{optional(:requested) => boolean} ) ( @@ -603,8 +608,11 @@ defmodule Stripe.Account do ) ( - @typedoc "Information on the verification state of the company." - @type verification :: %{optional(:document) => document} + @typedoc "The individual's verification document information." + @type verification :: %{ + optional(:additional_document) => additional_document, + optional(:document) => document + } ) ( diff --git a/lib/generated/account_session.ex b/lib/generated/account_session.ex index cf3dc22b..13b9ab77 100644 --- a/lib/generated/account_session.ex +++ b/lib/generated/account_session.ex @@ -18,12 +18,41 @@ defmodule Stripe.AccountSession do ( @typedoc "Configuration for the account onboarding embedded component." - @type account_onboarding :: %{optional(:enabled) => boolean} + @type account_onboarding :: %{optional(:enabled) => boolean, optional(:features) => map()} ) ( @typedoc "Each key of the dictionary represents an embedded component, and each embedded component maps to its configuration (e.g. whether it has been enabled or not)." - @type components :: %{optional(:account_onboarding) => account_onboarding} + @type components :: %{ + optional(:account_onboarding) => account_onboarding, + optional(:payment_details) => payment_details, + optional(:payments) => payments, + optional(:payouts) => payouts + } + ) + + ( + @typedoc "The list of features enabled in the embedded component." + @type features :: %{ + optional(:capture_payments) => boolean, + optional(:dispute_management) => boolean, + optional(:refund_management) => boolean + } + ) + + ( + @typedoc "Configuration for the payment details embedded component." + @type payment_details :: %{optional(:enabled) => boolean, optional(:features) => features} + ) + + ( + @typedoc "Configuration for the payments embedded component." + @type payments :: %{optional(:enabled) => boolean, optional(:features) => features} + ) + + ( + @typedoc "Configuration for the payouts embedded component." + @type payouts :: %{optional(:enabled) => boolean, optional(:features) => map()} ) ( diff --git a/lib/generated/checkout__session.ex b/lib/generated/checkout__session.ex index 9e97aec6..88894fff 100644 --- a/lib/generated/checkout__session.ex +++ b/lib/generated/checkout__session.ex @@ -958,11 +958,8 @@ defmodule Stripe.Checkout.Session do ) ( - @typedoc "If specified, the funds from the subscription's invoices will be transferred to the destination and the ID of the resulting transfers will be found on the resulting charges." - @type transfer_data :: %{ - optional(:amount_percent) => number, - optional(:destination) => binary - } + @typedoc "The parameters used to automatically create a Transfer when the payment succeeds.\nFor more information, see the PaymentIntents [use case for connected accounts](https://stripe.com/docs/payments/connected-accounts)." + @type transfer_data :: %{optional(:amount) => integer, optional(:destination) => binary} ) ( diff --git a/lib/generated/payment_intent.ex b/lib/generated/payment_intent.ex index 2e254f56..8cdbab48 100644 --- a/lib/generated/payment_intent.ex +++ b/lib/generated/payment_intent.ex @@ -101,7 +101,7 @@ defmodule Stripe.PaymentIntent do ) ( - @typedoc nil + @typedoc "Shipping address." @type address :: %{ optional(:city) => binary, optional(:country) => binary, @@ -295,38 +295,8 @@ defmodule Stripe.PaymentIntent do ) ( - @typedoc "If this is an `eps` PaymentMethod, this hash contains details about the EPS payment method." - @type eps :: %{ - optional(:bank) => - :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_bank_burgenland_aktiengesellschaft - | :hypo_noe_lb_fur_niederosterreich_u_wien - | :hypo_oberosterreich_salzburg_steiermark - | :hypo_tirol_bank_ag - | :hypo_vorarlberg_bank_ag - | :marchfelder_bank - | :oberbank_ag - | :raiffeisen_bankengruppe_osterreich - | :schoellerbank_ag - | :sparda_bank_wien - | :volksbank_gruppe - | :volkskreditbank_ag - | :vr_bank_braunau - } + @typedoc nil + @type eps :: %{optional(:setup_future_usage) => :none} ) ( @@ -345,8 +315,33 @@ defmodule Stripe.PaymentIntent do ) ( - @typedoc nil - @type fpx :: %{optional(:setup_future_usage) => :none} + @typedoc "If this is an `fpx` PaymentMethod, this hash contains details about the FPX payment method." + @type fpx :: %{ + optional(:account_holder_type) => :company | :individual, + optional(:bank) => + :affin_bank + | :agrobank + | :alliance_bank + | :ambank + | :bank_islam + | :bank_muamalat + | :bank_of_china + | :bank_rakyat + | :bsn + | :cimb + | :deutsche_bank + | :hong_leong_bank + | :hsbc + | :kfh + | :maybank2e + | :maybank2u + | :ocbc + | :pb_enterprise + | :public_bank + | :rhb + | :standard_chartered + | :uob + } ) ( @@ -465,17 +460,12 @@ defmodule Stripe.PaymentIntent do ) ( - @typedoc "Configuration options for setting up an eMandate for cards issued in India." + @typedoc "Additional fields for Mandate creation" @type mandate_options :: %{ - optional(:amount) => integer, - optional(:amount_type) => :fixed | :maximum, - optional(:description) => binary, - optional(:end_date) => integer, - optional(:interval) => :day | :month | :sporadic | :week | :year, - optional(:interval_count) => integer, - optional(:reference) => binary, - optional(:start_date) => integer, - optional(:supported_types) => list(:india) + optional(:custom_mandate_url) => binary | binary, + optional(:interval_description) => binary, + optional(:payment_schedule) => :combined | :interval | :sporadic, + optional(:transaction_type) => :business | :personal } ) @@ -503,34 +493,10 @@ defmodule Stripe.PaymentIntent do ) ( - @typedoc "If this is a `p24` PaymentMethod, this hash contains details about the P24 payment method." + @typedoc nil @type p24 :: %{ - optional(:bank) => - :alior_bank - | :bank_millennium - | :bank_nowy_bfg_sa - | :bank_pekao_sa - | :banki_spbdzielcze - | :blik - | :bnp_paribas - | :boz - | :citi_handlowy - | :credit_agricole - | :envelobank - | :etransfer_pocztowy24 - | :getin_bank - | :ideabank - | :ing - | :inteligo - | :mbank_mtransfer - | :nest_przelew - | :noble_pay - | :pbac_z_ipko - | :plus_bank - | :santander_przelew24 - | :tmobile_usbugi_bankowe - | :toyota_bank - | :volkswagen_bank + optional(:setup_future_usage) => :none, + optional(:tos_shown_and_accepted) => boolean } ) @@ -718,11 +684,8 @@ defmodule Stripe.PaymentIntent do ) ( - @typedoc nil - @type sepa_debit :: %{ - optional(:mandate_options) => map(), - optional(:setup_future_usage) => :none | :off_session | :on_session - } + @typedoc "If this is a `sepa_debit` PaymentMethod, this hash contains details about the SEPA debit bank account." + @type sepa_debit :: %{optional(:iban) => binary} ) ( @@ -737,8 +700,11 @@ defmodule Stripe.PaymentIntent do ) ( - @typedoc "If this is a `sofort` PaymentMethod, this hash contains details about the SOFORT payment method." - @type sofort :: %{optional(:country) => :AT | :BE | :DE | :ES | :IT | :NL} + @typedoc nil + @type sofort :: %{ + optional(:preferred_language) => :de | :en | :es | :fr | :it | :nl | :pl, + optional(:setup_future_usage) => :none | :off_session + } ) ( @@ -761,13 +727,13 @@ defmodule Stripe.PaymentIntent do ) ( - @typedoc nil + @typedoc "If this is an `us_bank_account` PaymentMethod, this hash contains details about the US bank account payment method." @type us_bank_account :: %{ - optional(:financial_connections) => financial_connections, - optional(:networks) => networks, - optional(:preferred_settlement_speed) => :fastest | :standard, - optional(:setup_future_usage) => :none | :off_session | :on_session, - optional(:verification_method) => :automatic | :instant | :microdeposits + optional(:account_holder_type) => :company | :individual, + optional(:account_number) => binary, + optional(:account_type) => :checking | :savings, + optional(:financial_connections_account) => binary, + optional(:routing_number) => binary } ) diff --git a/lib/generated/payment_link.ex b/lib/generated/payment_link.ex index 5036a750..6eaad8dc 100644 --- a/lib/generated/payment_link.ex +++ b/lib/generated/payment_link.ex @@ -4,40 +4,42 @@ defmodule Stripe.PaymentLink do @moduledoc "A payment link is a shareable URL that will take your customers to a hosted payment page. A payment link can be shared and used multiple times.\n\nWhen a customer opens a payment link it will open a new [checkout session](https://stripe.com/docs/api/checkout/sessions) to render the payment page. You can use [checkout session events](https://stripe.com/docs/api/events/types#event_types-checkout.session.completed) to track payments through payment links.\n\nRelated guide: [Payment Links API](https://stripe.com/docs/payment-links)" ( defstruct [ - :active, - :after_completion, - :allow_promotion_codes, - :application, + :shipping_options, + :restrictions, + :id, + :transfer_data, :application_fee_amount, - :application_fee_percent, - :automatic_tax, + :payment_intent_data, :billing_address_collection, - :consent_collection, + :allow_promotion_codes, + :url, + :payment_method_collection, :currency, - :custom_fields, + :tax_id_collection, + :automatic_tax, + :object, + :application, + :after_completion, :custom_text, - :customer_creation, - :id, + :submit_type, :invoice_creation, - :line_items, - :livemode, - :metadata, - :object, :on_behalf_of, - :payment_intent_data, - :payment_method_collection, - :payment_method_types, :phone_number_collection, + :inactive_message, + :consent_collection, :shipping_address_collection, - :shipping_options, - :submit_type, + :payment_method_types, + :active, :subscription_data, - :tax_id_collection, - :transfer_data, - :url + :metadata, + :customer_creation, + :custom_fields, + :line_items, + :livemode, + :application_fee_percent ] - @typedoc "The `payment_link` type.\n\n * `active` Whether the payment link's `url` is active. If `false`, customers visiting the URL will be shown a page saying that the link has been deactivated.\n * `after_completion` \n * `allow_promotion_codes` Whether user redeemable promotion codes are enabled.\n * `application` The ID of the Connect application that created the Payment Link.\n * `application_fee_amount` The amount of the application fee (if any) that will be requested to be applied to the payment and transferred to the application owner's Stripe account.\n * `application_fee_percent` This represents the percentage of the subscription invoice total that will be transferred to the application owner's Stripe account.\n * `automatic_tax` \n * `billing_address_collection` Configuration for collecting the customer's billing address.\n * `consent_collection` When set, provides configuration to gather active consent from customers.\n * `currency` 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).\n * `custom_fields` Collect additional information from your customer using custom fields. Up to 2 fields are supported.\n * `custom_text` \n * `customer_creation` Configuration for Customer creation during checkout.\n * `id` Unique identifier for the object.\n * `invoice_creation` Configuration for creating invoice for payment mode payment links.\n * `line_items` The line items representing what is being sold.\n * `livemode` Has the value `true` if the object exists in live mode or the value `false` if the object exists in test mode.\n * `metadata` Set of [key-value pairs](https://stripe.com/docs/api/metadata) that you can attach to an object. This can be useful for storing additional information about the object in a structured format.\n * `object` String representing the object's type. Objects of the same type share the same value.\n * `on_behalf_of` The account on behalf of which to charge. See the [Connect documentation](https://support.stripe.com/questions/sending-invoices-on-behalf-of-connected-accounts) for details.\n * `payment_intent_data` Indicates the parameters to be passed to PaymentIntent creation during checkout.\n * `payment_method_collection` Configuration for collecting a payment method during checkout.\n * `payment_method_types` The list of payment method types that customers can use. When `null`, Stripe will dynamically show relevant payment methods you've enabled in your [payment method settings](https://dashboard.stripe.com/settings/payment_methods).\n * `phone_number_collection` \n * `shipping_address_collection` Configuration for collecting the customer's shipping address.\n * `shipping_options` The shipping rate options applied to the session.\n * `submit_type` Indicates the type of transaction being performed which customizes relevant text on the page, such as the submit button.\n * `subscription_data` When creating a subscription, the specified configuration data will be used. There must be at least one line item with a recurring price to use `subscription_data`.\n * `tax_id_collection` \n * `transfer_data` The account (if any) the payments will be attributed to for tax reporting, and where funds from each payment will be transferred to.\n * `url` The public URL that can be shared with customers.\n" + @typedoc "The `payment_link` type.\n\n * `active` Whether the payment link's `url` is active. If `false`, customers visiting the URL will be shown a page saying that the link has been deactivated.\n * `after_completion` \n * `allow_promotion_codes` Whether user redeemable promotion codes are enabled.\n * `application` The ID of the Connect application that created the Payment Link.\n * `application_fee_amount` The amount of the application fee (if any) that will be requested to be applied to the payment and transferred to the application owner's Stripe account.\n * `application_fee_percent` This represents the percentage of the subscription invoice total that will be transferred to the application owner's Stripe account.\n * `automatic_tax` \n * `billing_address_collection` Configuration for collecting the customer's billing address.\n * `consent_collection` When set, provides configuration to gather active consent from customers.\n * `currency` 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).\n * `custom_fields` Collect additional information from your customer using custom fields. Up to 2 fields are supported.\n * `custom_text` \n * `customer_creation` Configuration for Customer creation during checkout.\n * `id` Unique identifier for the object.\n * `inactive_message` The custom message to be displayed to a customer when a payment link is no longer active.\n * `invoice_creation` Configuration for creating invoice for payment mode payment links.\n * `line_items` The line items representing what is being sold.\n * `livemode` Has the value `true` if the object exists in live mode or the value `false` if the object exists in test mode.\n * `metadata` Set of [key-value pairs](https://stripe.com/docs/api/metadata) that you can attach to an object. This can be useful for storing additional information about the object in a structured format.\n * `object` String representing the object's type. Objects of the same type share the same value.\n * `on_behalf_of` The account on behalf of which to charge. See the [Connect documentation](https://support.stripe.com/questions/sending-invoices-on-behalf-of-connected-accounts) for details.\n * `payment_intent_data` Indicates the parameters to be passed to PaymentIntent creation during checkout.\n * `payment_method_collection` Configuration for collecting a payment method during checkout.\n * `payment_method_types` The list of payment method types that customers can use. When `null`, Stripe will dynamically show relevant payment methods you've enabled in your [payment method settings](https://dashboard.stripe.com/settings/payment_methods).\n * `phone_number_collection` \n * `restrictions` Settings that restrict the usage of a payment link.\n * `shipping_address_collection` Configuration for collecting the customer's shipping address.\n * `shipping_options` The shipping rate options applied to the session.\n * `submit_type` Indicates the type of transaction being performed which customizes relevant text on the page, such as the submit button.\n * `subscription_data` When creating a subscription, the specified configuration data will be used. There must be at least one line item with a recurring price to use `subscription_data`.\n * `tax_id_collection` \n * `transfer_data` The account (if any) the payments will be attributed to for tax reporting, and where funds from each payment will be transferred to.\n * `url` The public URL that can be shared with customers.\n" @type t :: %__MODULE__{ active: boolean, after_completion: term, @@ -53,6 +55,7 @@ defmodule Stripe.PaymentLink do custom_text: term, customer_creation: binary, id: binary, + inactive_message: binary | nil, invoice_creation: term | nil, line_items: term, livemode: boolean, @@ -63,6 +66,7 @@ defmodule Stripe.PaymentLink do payment_method_collection: binary, payment_method_types: term | nil, phone_number_collection: term, + restrictions: term | nil, shipping_address_collection: term | nil, shipping_options: term, submit_type: binary, @@ -96,6 +100,11 @@ defmodule Stripe.PaymentLink do @type automatic_tax :: %{optional(:enabled) => boolean} ) + ( + @typedoc "Configuration for the `completed_sessions` restriction type." + @type completed_sessions :: %{optional(:limit) => integer} + ) + ( @typedoc "Configure fields to gather active consent from customers." @type consent_collection :: %{ @@ -131,6 +140,13 @@ defmodule Stripe.PaymentLink do @type dropdown :: %{optional(:options) => list(options)} ) + ( + @typedoc "Defines how the subscription should behave when the user's free trial ends." + @type end_behavior :: %{ + optional(:missing_payment_method) => :cancel | :create_invoice | :pause + } + ) + ( @typedoc "Configuration when `type=hosted_confirmation`." @type hosted_confirmation :: %{optional(:custom_message) => binary} @@ -209,6 +225,11 @@ defmodule Stripe.PaymentLink do } ) + ( + @typedoc "Settings that restrict the usage of a payment link." + @type restrictions :: %{optional(:completed_sessions) => completed_sessions} + ) + ( @typedoc nil @type shipping_address :: %{optional(:message) => binary} @@ -475,7 +496,8 @@ defmodule Stripe.PaymentLink do @type subscription_data :: %{ optional(:description) => binary, optional(:metadata) => %{optional(binary) => binary}, - optional(:trial_period_days) => integer + optional(:trial_period_days) => integer, + optional(:trial_settings) => trial_settings } ) @@ -499,6 +521,11 @@ defmodule Stripe.PaymentLink do @type transfer_data :: %{optional(:amount) => integer, optional(:destination) => binary} ) + ( + @typedoc "Settings related to subscription trials." + @type trial_settings :: %{optional(:end_behavior) => end_behavior} + ) + ( nil @@ -638,6 +665,7 @@ defmodule Stripe.PaymentLink do optional(:custom_text) => custom_text, optional(:customer_creation) => :always | :if_required, optional(:expand) => list(binary), + optional(:inactive_message) => binary, optional(:invoice_creation) => invoice_creation, optional(:line_items) => list(line_items), optional(:metadata) => %{optional(binary) => binary}, @@ -676,6 +704,7 @@ defmodule Stripe.PaymentLink do | :wechat_pay ), optional(:phone_number_collection) => phone_number_collection, + optional(:restrictions) => restrictions, optional(:shipping_address_collection) => shipping_address_collection, optional(:shipping_options) => list(shipping_options), optional(:submit_type) => :auto | :book | :donate | :pay, @@ -714,6 +743,7 @@ defmodule Stripe.PaymentLink do optional(:custom_text) => custom_text, optional(:customer_creation) => :always | :if_required, optional(:expand) => list(binary), + optional(:inactive_message) => binary | binary, optional(:invoice_creation) => invoice_creation, optional(:line_items) => list(line_items), optional(:metadata) => %{optional(binary) => binary}, @@ -751,6 +781,7 @@ defmodule Stripe.PaymentLink do | :wechat_pay ) | binary, + optional(:restrictions) => restrictions | binary, optional(:shipping_address_collection) => shipping_address_collection | binary, optional(:subscription_data) => subscription_data }, diff --git a/lib/generated/setup_intent.ex b/lib/generated/setup_intent.ex index 01d7d5e4..de501fb7 100644 --- a/lib/generated/setup_intent.ex +++ b/lib/generated/setup_intent.ex @@ -474,11 +474,13 @@ defmodule Stripe.SetupIntent do ) ( - @typedoc "If this is a `us_bank_account` SetupIntent, this sub-hash contains details about the US bank account payment method options." + @typedoc "If this is an `us_bank_account` PaymentMethod, this hash contains details about the US bank account payment method." @type us_bank_account :: %{ - optional(:financial_connections) => financial_connections, - optional(:networks) => networks, - optional(:verification_method) => :automatic | :instant | :microdeposits + optional(:account_holder_type) => :company | :individual, + optional(:account_number) => binary, + optional(:account_type) => :checking | :savings, + optional(:financial_connections_account) => binary, + optional(:routing_number) => binary } ) diff --git a/lib/generated/token.ex b/lib/generated/token.ex index 0ddd66ac..9c926f4d 100644 --- a/lib/generated/token.ex +++ b/lib/generated/token.ex @@ -51,7 +51,7 @@ defmodule Stripe.Token do ) ( - @typedoc "The Kana variation of the company's primary address (Japan only)." + @typedoc "The Kana variation of the the individual's primary address (Japan only)." @type address_kana :: %{ optional(:city) => binary, optional(:country) => binary, @@ -64,7 +64,7 @@ defmodule Stripe.Token do ) ( - @typedoc "The Kanji variation of the the individual's primary address (Japan only)." + @typedoc "The Kanji variation of the company's primary address (Japan only)." @type address_kanji :: %{ optional(:city) => binary, optional(:country) => binary, @@ -175,7 +175,7 @@ defmodule Stripe.Token do ) ( - @typedoc "A document verifying the business." + @typedoc "An identifying document, either a passport or local ID card." @type document :: %{optional(:back) => binary, optional(:front) => binary} ) diff --git a/priv/openapi/spec3.sdk.json b/priv/openapi/spec3.sdk.json index 8f6e4a9e..18287811 100644 --- a/priv/openapi/spec3.sdk.json +++ b/priv/openapi/spec3.sdk.json @@ -7964,6 +7964,15 @@ "properties": { "account_onboarding": { "$ref": "#/components/schemas/connect_embedded_base_config_claim" + }, + "payment_details": { + "$ref": "#/components/schemas/connect_embedded_payments_config" + }, + "payments": { + "$ref": "#/components/schemas/connect_embedded_payments_config" + }, + "payouts": { + "$ref": "#/components/schemas/connect_embedded_base_config" } }, "required": [ @@ -7972,32 +7981,129 @@ "title": "ConnectEmbeddedAccountSessionCreateComponents", "type": "object", "x-expandableFields": [ - "account_onboarding" + "account_onboarding", + "payment_details", + "payments", + "payouts" ], "x-stripeResource": { "class_name": "Components", "in_package": "" } }, - "connect_embedded_base_config_claim": { + "connect_embedded_base_config": { "description": "", "properties": { "enabled": { "description": "Whether the embedded component is enabled.", "type": "boolean" + }, + "features": { + "$ref": "#/components/schemas/connect_embedded_base_features" } }, "required": [ "enabled" ], + "title": "ConnectEmbeddedBaseConfig", + "type": "object", + "x-expandableFields": [ + "features" + ], + "x-stripeResource": { + "class_name": "BaseConfig", + "in_package": "" + } + }, + "connect_embedded_base_config_claim": { + "description": "", + "properties": { + "enabled": { + "description": "Whether the embedded component is enabled.", + "type": "boolean" + }, + "features": { + "$ref": "#/components/schemas/connect_embedded_base_features" + } + }, + "required": [ + "enabled", + "features" + ], "title": "ConnectEmbeddedBaseConfigClaim", "type": "object", - "x-expandableFields": [], + "x-expandableFields": [ + "features" + ], "x-stripeResource": { "class_name": "BaseConfig", "in_package": "" } }, + "connect_embedded_base_features": { + "description": "", + "properties": {}, + "title": "ConnectEmbeddedBaseFeatures", + "type": "object", + "x-expandableFields": [], + "x-stripeResource": { + "class_name": "BaseFeatures", + "in_package": "" + } + }, + "connect_embedded_payments_config": { + "description": "", + "properties": { + "enabled": { + "description": "Whether the embedded component is enabled.", + "type": "boolean" + }, + "features": { + "$ref": "#/components/schemas/connect_embedded_payments_features" + } + }, + "required": [ + "enabled" + ], + "title": "ConnectEmbeddedPaymentsConfig", + "type": "object", + "x-expandableFields": [ + "features" + ], + "x-stripeResource": { + "class_name": "PaymentsConfig", + "in_package": "" + } + }, + "connect_embedded_payments_features": { + "description": "", + "properties": { + "capture_payments": { + "description": "Whether to allow capturing and cancelling payment intents. This is `true` by default.", + "type": "boolean" + }, + "dispute_management": { + "description": "Whether to allow responding to disputes, including submitting evidence and accepting disputes. This is `true` by default.", + "type": "boolean" + }, + "refund_management": { + "description": "Whether to allow sending refunds. This is `true` by default.", + "type": "boolean" + } + }, + "required": [ + "capture_payments", + "dispute_management", + "refund_management" + ], + "title": "ConnectEmbeddedPaymentsFeatures", + "type": "object", + "x-expandableFields": [], + "x-stripeResource": { + "class_name": "PaymentsFeatures", + "in_package": "" + } + }, "country_spec": { "description": "Stripe needs to collect certain pieces of information about each account\ncreated. These requirements can differ depending on the account's country. The\nCountry Specs API makes these rules available to your integration.\n\nYou can also view the information from this API call as [an online\nguide](/docs/connect/required-verification-information).", "properties": { @@ -29138,6 +29244,12 @@ "maxLength": 5000, "type": "string" }, + "inactive_message": { + "description": "The custom message to be displayed to a customer when a payment link is no longer active.", + "maxLength": 5000, + "nullable": true, + "type": "string" + }, "invoice_creation": { "anyOf": [ { @@ -29284,6 +29396,15 @@ "phone_number_collection": { "$ref": "#/components/schemas/payment_links_resource_phone_number_collection" }, + "restrictions": { + "anyOf": [ + { + "$ref": "#/components/schemas/payment_links_resource_restrictions" + } + ], + "description": "Settings that restrict the usage of a payment link.", + "nullable": true + }, "shipping_address_collection": { "anyOf": [ { @@ -29383,6 +29504,7 @@ "on_behalf_of", "payment_intent_data", "phone_number_collection", + "restrictions", "shipping_address_collection", "shipping_options", "subscription_data", @@ -29516,6 +29638,30 @@ "in_package": "" } }, + "payment_links_resource_completed_sessions": { + "description": "", + "properties": { + "count": { + "description": "The current number of checkout sessions that have been completed on the payment link which count towards the `completed_sessions` restriction to be met.", + "type": "integer" + }, + "limit": { + "description": "The maximum number of checkout sessions that can be completed for the `completed_sessions` restriction to be met.", + "type": "integer" + } + }, + "required": [ + "count", + "limit" + ], + "title": "PaymentLinksResourceCompletedSessions", + "type": "object", + "x-expandableFields": [], + "x-stripeResource": { + "class_name": "CompletedSessions", + "in_package": "" + } + }, "payment_links_resource_completion_behavior_confirmation_page": { "description": "", "properties": { @@ -30049,6 +30195,26 @@ "in_package": "" } }, + "payment_links_resource_restrictions": { + "description": "", + "properties": { + "completed_sessions": { + "$ref": "#/components/schemas/payment_links_resource_completed_sessions" + } + }, + "required": [ + "completed_sessions" + ], + "title": "PaymentLinksResourceRestrictions", + "type": "object", + "x-expandableFields": [ + "completed_sessions" + ], + "x-stripeResource": { + "class_name": "Restrictions", + "in_package": "" + } + }, "payment_links_resource_shipping_address_collection": { "description": "", "properties": { @@ -30372,16 +30538,28 @@ "description": "Integer representing the number of trial period days before the customer is charged for the first time.", "nullable": true, "type": "integer" + }, + "trial_settings": { + "anyOf": [ + { + "$ref": "#/components/schemas/subscriptions_trials_resource_trial_settings" + } + ], + "description": "Settings related to subscription trials.", + "nullable": true } }, "required": [ "description", "metadata", - "trial_period_days" + "trial_period_days", + "trial_settings" ], "title": "PaymentLinksResourceSubscriptionData", "type": "object", - "x-expandableFields": [], + "x-expandableFields": [ + "trial_settings" + ], "x-stripeResource": { "class_name": "SubscriptionData", "in_package": "" @@ -58614,6 +58792,98 @@ "enabled": { "description": "Whether the embedded component is enabled.", "type": "boolean" + }, + "features": { + "description": "The list of features enabled in the embedded component.", + "properties": {}, + "title": "base_features_param", + "type": "object" + } + }, + "required": [ + "enabled" + ], + "title": "base_config_param", + "type": "object" + }, + "payment_details": { + "description": "Configuration for the payment details embedded component.", + "properties": { + "enabled": { + "description": "Whether the embedded component is enabled.", + "type": "boolean" + }, + "features": { + "description": "The list of features enabled in the embedded component.", + "properties": { + "capture_payments": { + "description": "Whether to allow capturing and cancelling payment intents. This is `true` by default.", + "type": "boolean" + }, + "dispute_management": { + "description": "Whether to allow responding to disputes, including submitting evidence and accepting disputes. This is `true` by default.", + "type": "boolean" + }, + "refund_management": { + "description": "Whether to allow sending refunds. This is `true` by default.", + "type": "boolean" + } + }, + "title": "payments_features_param", + "type": "object" + } + }, + "required": [ + "enabled" + ], + "title": "payments_config_param", + "type": "object" + }, + "payments": { + "description": "Configuration for the payments embedded component.", + "properties": { + "enabled": { + "description": "Whether the embedded component is enabled.", + "type": "boolean" + }, + "features": { + "description": "The list of features enabled in the embedded component.", + "properties": { + "capture_payments": { + "description": "Whether to allow capturing and cancelling payment intents. This is `true` by default.", + "type": "boolean" + }, + "dispute_management": { + "description": "Whether to allow responding to disputes, including submitting evidence and accepting disputes. This is `true` by default.", + "type": "boolean" + }, + "refund_management": { + "description": "Whether to allow sending refunds. This is `true` by default.", + "type": "boolean" + } + }, + "title": "payments_features_param", + "type": "object" + } + }, + "required": [ + "enabled" + ], + "title": "payments_config_param", + "type": "object" + }, + "payouts": { + "description": "Configuration for the payouts embedded component.", + "properties": { + "enabled": { + "description": "Whether the embedded component is enabled.", + "type": "boolean" + }, + "features": { + "description": "The list of features enabled in the embedded component.", + "properties": {}, + "title": "base_features_param", + "type": "object" } }, "required": [ @@ -106073,6 +106343,10 @@ "explode": true, "style": "deepObject" }, + "restrictions": { + "explode": true, + "style": "deepObject" + }, "shipping_address_collection": { "explode": true, "style": "deepObject" @@ -106421,6 +106695,11 @@ }, "type": "array" }, + "inactive_message": { + "description": "The custom message to be displayed to a customer when a payment link is no longer active.", + "maxLength": 500, + "type": "string" + }, "invoice_creation": { "description": "Generate a post-purchase Invoice for one-time payments.", "properties": { @@ -106709,6 +106988,30 @@ "title": "phone_number_collection_params", "type": "object" }, + "restrictions": { + "description": "Settings that restrict the usage of a payment link.", + "properties": { + "completed_sessions": { + "description": "Configuration for the `completed_sessions` restriction type.", + "properties": { + "limit": { + "description": "The maximum number of checkout sessions that can be completed for the `completed_sessions` restriction to be met.", + "type": "integer" + } + }, + "required": [ + "limit" + ], + "title": "completed_sessions_params", + "type": "object" + } + }, + "required": [ + "completed_sessions" + ], + "title": "restrictions_params", + "type": "object" + }, "shipping_address_collection": { "description": "Configuration for collecting the customer's shipping address.", "properties": { @@ -107008,6 +107311,35 @@ "trial_period_days": { "description": "Integer representing the number of trial period days before the customer is charged for the first time. Has to be at least 1.", "type": "integer" + }, + "trial_settings": { + "description": "Settings related to subscription trials.", + "properties": { + "end_behavior": { + "description": "Defines how the subscription should behave when the user's free trial ends.", + "properties": { + "missing_payment_method": { + "description": "Indicates how the subscription should change when the trial ends if the user did not provide a payment method.", + "enum": [ + "cancel", + "create_invoice", + "pause" + ], + "type": "string" + } + }, + "required": [ + "missing_payment_method" + ], + "title": "end_behavior", + "type": "object" + } + }, + "required": [ + "end_behavior" + ], + "title": "trial_settings_config", + "type": "object" } }, "title": "subscription_data_params", @@ -107185,6 +107517,10 @@ "explode": true, "style": "deepObject" }, + "inactive_message": { + "explode": true, + "style": "deepObject" + }, "invoice_creation": { "explode": true, "style": "deepObject" @@ -107205,6 +107541,10 @@ "explode": true, "style": "deepObject" }, + "restrictions": { + "explode": true, + "style": "deepObject" + }, "shipping_address_collection": { "explode": true, "style": "deepObject" @@ -107520,6 +107860,21 @@ }, "type": "array" }, + "inactive_message": { + "anyOf": [ + { + "maxLength": 500, + "type": "string" + }, + { + "enum": [ + "" + ], + "type": "string" + } + ], + "description": "The custom message to be displayed to a customer when a payment link is no longer active." + }, "invoice_creation": { "description": "Generate a post-purchase Invoice for one-time payments.", "properties": { @@ -107822,6 +108177,40 @@ ], "description": "The list of payment method types that customers can use. Pass an empty string to enable dynamic payment methods that use your [payment method settings](https://dashboard.stripe.com/settings/payment_methods)." }, + "restrictions": { + "anyOf": [ + { + "properties": { + "completed_sessions": { + "description": "Configuration for the `completed_sessions` restriction type.", + "properties": { + "limit": { + "description": "The maximum number of checkout sessions that can be completed for the `completed_sessions` restriction to be met.", + "type": "integer" + } + }, + "required": [ + "limit" + ], + "title": "completed_sessions_params", + "type": "object" + } + }, + "required": [ + "completed_sessions" + ], + "title": "restrictions_params", + "type": "object" + }, + { + "enum": [ + "" + ], + "type": "string" + } + ], + "description": "Settings that restrict the usage of a payment link." + }, "shipping_address_collection": { "anyOf": [ { @@ -108107,6 +108496,45 @@ } ], "description": "Set of [key-value pairs](https://stripe.com/docs/api/metadata) that will declaratively set metadata on [Subscriptions](https://stripe.com/docs/api/subscriptions) generated from this payment link. Unlike object-level metadata, this field is declarative. Updates will clear prior values." + }, + "trial_settings": { + "anyOf": [ + { + "properties": { + "end_behavior": { + "description": "Defines how the subscription should behave when the user's free trial ends.", + "properties": { + "missing_payment_method": { + "description": "Indicates how the subscription should change when the trial ends if the user did not provide a payment method.", + "enum": [ + "cancel", + "create_invoice", + "pause" + ], + "type": "string" + } + }, + "required": [ + "missing_payment_method" + ], + "title": "end_behavior", + "type": "object" + } + }, + "required": [ + "end_behavior" + ], + "title": "trial_settings_config", + "type": "object" + }, + { + "enum": [ + "" + ], + "type": "string" + } + ], + "description": "Settings related to subscription trials." } }, "title": "subscription_data_update_params",