diff --git a/CODEGEN_VERSION b/CODEGEN_VERSION index 17557a68f2..7ff84616f7 100644 --- a/CODEGEN_VERSION +++ b/CODEGEN_VERSION @@ -1 +1 @@ -e65e48569f6dfad2d5f1b58018017856520c3ae6 \ No newline at end of file +85e0466f55837da66b90fce2a7c5b7fc79b83a7c \ No newline at end of file diff --git a/OPENAPI_VERSION b/OPENAPI_VERSION index 58dae79358..ad0b5d4510 100644 --- a/OPENAPI_VERSION +++ b/OPENAPI_VERSION @@ -1 +1 @@ -v2186 \ No newline at end of file +v2204 \ No newline at end of file diff --git a/src/Stripe.net/Constants/ApiVersion.cs b/src/Stripe.net/Constants/ApiVersion.cs index c640338b70..44eaa21a28 100644 --- a/src/Stripe.net/Constants/ApiVersion.cs +++ b/src/Stripe.net/Constants/ApiVersion.cs @@ -3,7 +3,7 @@ namespace Stripe { internal class ApiVersion { - public const string Current = "2026-02-25.clover"; - public const string CurrentMajor = "clover"; + public const string Current = "2026-03-25.dahlia"; + public const string CurrentMajor = "dahlia"; } } \ No newline at end of file diff --git a/src/Stripe.net/Entities/AccountSessions/AccountSession.cs b/src/Stripe.net/Entities/AccountSessions/AccountSession.cs index ac6ce83531..db1409c520 100644 --- a/src/Stripe.net/Entities/AccountSessions/AccountSession.cs +++ b/src/Stripe.net/Entities/AccountSessions/AccountSession.cs @@ -66,8 +66,8 @@ public class AccountSession : StripeEntity, IHasObject public DateTime ExpiresAt { get; set; } = Stripe.Infrastructure.DateTimeUtils.UnixEpoch; /// - /// Has the value true if the object exists in live mode or the value false if - /// the object exists in test mode. + /// If the object exists in live mode, the value is true. If the object exists in + /// test mode, the value is false. /// [JsonProperty("livemode")] [STJS.JsonPropertyName("livemode")] diff --git a/src/Stripe.net/Entities/Accounts/Account.cs b/src/Stripe.net/Entities/Accounts/Account.cs index 5620bce758..e6cb1eb4fd 100644 --- a/src/Stripe.net/Entities/Accounts/Account.cs +++ b/src/Stripe.net/Entities/Accounts/Account.cs @@ -8,6 +8,10 @@ namespace Stripe using STJS = System.Text.Json.Serialization; /// + /// For new integrations, we recommend using the Accounts v2 API, in place of + /// /v1/accounts and /v1/customers to represent a user. + /// /// This is an object representing a Stripe account. You can retrieve it to see properties /// on the account like its current requirements or if the account is enabled to make live /// charges or receive payouts. diff --git a/src/Stripe.net/Entities/Accounts/AccountCapabilities.cs b/src/Stripe.net/Entities/Accounts/AccountCapabilities.cs index 0d2be386e6..d5b520cbd0 100644 --- a/src/Stripe.net/Entities/Accounts/AccountCapabilities.cs +++ b/src/Stripe.net/Entities/Accounts/AccountCapabilities.cs @@ -526,6 +526,15 @@ public class AccountCapabilities : StripeEntity [STJS.JsonPropertyName("twint_payments")] public string TwintPayments { get; set; } + /// + /// The status of the upi payments capability of the account, or whether the account can + /// directly process upi charges. + /// One of: active, inactive, or pending. + /// + [JsonProperty("upi_payments")] + [STJS.JsonPropertyName("upi_payments")] + public string UpiPayments { get; set; } + /// /// The status of the US bank account ACH payments capability of the account, or whether the /// account can directly process US bank account charges. diff --git a/src/Stripe.net/Entities/ApplePayDomains/ApplePayDomain.cs b/src/Stripe.net/Entities/ApplePayDomains/ApplePayDomain.cs index c2bb27cbd4..ab94271fd1 100644 --- a/src/Stripe.net/Entities/ApplePayDomains/ApplePayDomain.cs +++ b/src/Stripe.net/Entities/ApplePayDomains/ApplePayDomain.cs @@ -45,8 +45,8 @@ public class ApplePayDomain : StripeEntity, IHasId, IHasObject public string DomainName { get; set; } /// - /// Has the value true if the object exists in live mode or the value false if - /// the object exists in test mode. + /// If the object exists in live mode, the value is true. If the object exists in + /// test mode, the value is false. /// [JsonProperty("livemode")] [STJS.JsonPropertyName("livemode")] diff --git a/src/Stripe.net/Entities/ApplicationFees/ApplicationFee.cs b/src/Stripe.net/Entities/ApplicationFees/ApplicationFee.cs index d805dd87d5..735d35d8bf 100644 --- a/src/Stripe.net/Entities/ApplicationFees/ApplicationFee.cs +++ b/src/Stripe.net/Entities/ApplicationFees/ApplicationFee.cs @@ -207,8 +207,8 @@ public Charge Charge public ApplicationFeeFeeSource FeeSource { get; set; } /// - /// Has the value true if the object exists in live mode or the value false if - /// the object exists in test mode. + /// If the object exists in live mode, the value is true. If the object exists in + /// test mode, the value is false. /// [JsonProperty("livemode")] [STJS.JsonPropertyName("livemode")] diff --git a/src/Stripe.net/Entities/Apps/Secrets/Secret.cs b/src/Stripe.net/Entities/Apps/Secrets/Secret.cs index 58f6ef9db3..87f8a15429 100644 --- a/src/Stripe.net/Entities/Apps/Secrets/Secret.cs +++ b/src/Stripe.net/Entities/Apps/Secrets/Secret.cs @@ -68,8 +68,8 @@ public class Secret : StripeEntity, IHasId, IHasObject public DateTime? ExpiresAt { get; set; } /// - /// Has the value true if the object exists in live mode or the value false if - /// the object exists in test mode. + /// If the object exists in live mode, the value is true. If the object exists in + /// test mode, the value is false. /// [JsonProperty("livemode")] [STJS.JsonPropertyName("livemode")] diff --git a/src/Stripe.net/Entities/Balances/Balance.cs b/src/Stripe.net/Entities/Balances/Balance.cs index 44ba4f3375..dda48020fe 100644 --- a/src/Stripe.net/Entities/Balances/Balance.cs +++ b/src/Stripe.net/Entities/Balances/Balance.cs @@ -59,8 +59,8 @@ public class Balance : StripeEntity, IHasObject public BalanceIssuing Issuing { get; set; } /// - /// Has the value true if the object exists in live mode or the value false if - /// the object exists in test mode. + /// If the object exists in live mode, the value is true. If the object exists in + /// test mode, the value is false. /// [JsonProperty("livemode")] [STJS.JsonPropertyName("livemode")] diff --git a/src/Stripe.net/Entities/Billing/AlertTriggereds/AlertTriggered.cs b/src/Stripe.net/Entities/Billing/AlertTriggereds/AlertTriggered.cs index 5da3ff1605..3a367203aa 100644 --- a/src/Stripe.net/Entities/Billing/AlertTriggereds/AlertTriggered.cs +++ b/src/Stripe.net/Entities/Billing/AlertTriggereds/AlertTriggered.cs @@ -42,8 +42,8 @@ public class AlertTriggered : StripeEntity, IHasObject public string Customer { get; set; } /// - /// Has the value true if the object exists in live mode or the value false if - /// the object exists in test mode. + /// If the object exists in live mode, the value is true. If the object exists in + /// test mode, the value is false. /// [JsonProperty("livemode")] [STJS.JsonPropertyName("livemode")] diff --git a/src/Stripe.net/Entities/Billing/Alerts/Alert.cs b/src/Stripe.net/Entities/Billing/Alerts/Alert.cs index ff4bff6ffb..435936486b 100644 --- a/src/Stripe.net/Entities/Billing/Alerts/Alert.cs +++ b/src/Stripe.net/Entities/Billing/Alerts/Alert.cs @@ -35,8 +35,8 @@ public class Alert : StripeEntity, IHasId, IHasObject public string AlertType { get; set; } /// - /// Has the value true if the object exists in live mode or the value false if - /// the object exists in test mode. + /// If the object exists in live mode, the value is true. If the object exists in + /// test mode, the value is false. /// [JsonProperty("livemode")] [STJS.JsonPropertyName("livemode")] diff --git a/src/Stripe.net/Entities/Billing/CreditBalanceSummaries/CreditBalanceSummary.cs b/src/Stripe.net/Entities/Billing/CreditBalanceSummaries/CreditBalanceSummary.cs index 6ab77615ac..d6170c66d2 100644 --- a/src/Stripe.net/Entities/Billing/CreditBalanceSummaries/CreditBalanceSummary.cs +++ b/src/Stripe.net/Entities/Billing/CreditBalanceSummaries/CreditBalanceSummary.cs @@ -70,8 +70,8 @@ public Customer Customer public string CustomerAccount { get; set; } /// - /// Has the value true if the object exists in live mode or the value false if - /// the object exists in test mode. + /// If the object exists in live mode, the value is true. If the object exists in + /// test mode, the value is false. /// [JsonProperty("livemode")] [STJS.JsonPropertyName("livemode")] diff --git a/src/Stripe.net/Entities/Billing/CreditBalanceTransactions/CreditBalanceTransaction.cs b/src/Stripe.net/Entities/Billing/CreditBalanceTransactions/CreditBalanceTransaction.cs index b0d8ebc25f..52da30b908 100644 --- a/src/Stripe.net/Entities/Billing/CreditBalanceTransactions/CreditBalanceTransaction.cs +++ b/src/Stripe.net/Entities/Billing/CreditBalanceTransactions/CreditBalanceTransaction.cs @@ -96,8 +96,8 @@ public CreditGrant CreditGrant public DateTime EffectiveAt { get; set; } = Stripe.Infrastructure.DateTimeUtils.UnixEpoch; /// - /// Has the value true if the object exists in live mode or the value false if - /// the object exists in test mode. + /// If the object exists in live mode, the value is true. If the object exists in + /// test mode, the value is false. /// [JsonProperty("livemode")] [STJS.JsonPropertyName("livemode")] diff --git a/src/Stripe.net/Entities/Billing/CreditGrants/CreditGrant.cs b/src/Stripe.net/Entities/Billing/CreditGrants/CreditGrant.cs index db9fc764e6..dda2c6eb99 100644 --- a/src/Stripe.net/Entities/Billing/CreditGrants/CreditGrant.cs +++ b/src/Stripe.net/Entities/Billing/CreditGrants/CreditGrant.cs @@ -120,8 +120,8 @@ public Customer Customer public DateTime? ExpiresAt { get; set; } /// - /// Has the value true if the object exists in live mode or the value false if - /// the object exists in test mode. + /// If the object exists in live mode, the value is true. If the object exists in + /// test mode, the value is false. /// [JsonProperty("livemode")] [STJS.JsonPropertyName("livemode")] diff --git a/src/Stripe.net/Entities/Billing/MeterEventAdjustments/MeterEventAdjustment.cs b/src/Stripe.net/Entities/Billing/MeterEventAdjustments/MeterEventAdjustment.cs index b3a17f5508..fe2da7a72e 100644 --- a/src/Stripe.net/Entities/Billing/MeterEventAdjustments/MeterEventAdjustment.cs +++ b/src/Stripe.net/Entities/Billing/MeterEventAdjustments/MeterEventAdjustment.cs @@ -35,8 +35,8 @@ public class MeterEventAdjustment : StripeEntity, IHasObje public string EventName { get; set; } /// - /// Has the value true if the object exists in live mode or the value false if - /// the object exists in test mode. + /// If the object exists in live mode, the value is true. If the object exists in + /// test mode, the value is false. /// [JsonProperty("livemode")] [STJS.JsonPropertyName("livemode")] diff --git a/src/Stripe.net/Entities/Billing/MeterEventSummaries/MeterEventSummary.cs b/src/Stripe.net/Entities/Billing/MeterEventSummaries/MeterEventSummary.cs index bab96946f9..9864f4c9ce 100644 --- a/src/Stripe.net/Entities/Billing/MeterEventSummaries/MeterEventSummary.cs +++ b/src/Stripe.net/Entities/Billing/MeterEventSummaries/MeterEventSummary.cs @@ -51,8 +51,8 @@ public class MeterEventSummary : StripeEntity, IHasId, IHasOb public DateTime EndTime { get; set; } = Stripe.Infrastructure.DateTimeUtils.UnixEpoch; /// - /// Has the value true if the object exists in live mode or the value false if - /// the object exists in test mode. + /// If the object exists in live mode, the value is true. If the object exists in + /// test mode, the value is false. /// [JsonProperty("livemode")] [STJS.JsonPropertyName("livemode")] diff --git a/src/Stripe.net/Entities/Billing/MeterEvents/MeterEvent.cs b/src/Stripe.net/Entities/Billing/MeterEvents/MeterEvent.cs index b332bb3dcb..0bc7ccf7e2 100644 --- a/src/Stripe.net/Entities/Billing/MeterEvents/MeterEvent.cs +++ b/src/Stripe.net/Entities/Billing/MeterEvents/MeterEvent.cs @@ -47,8 +47,8 @@ public class MeterEvent : StripeEntity, IHasObject public string Identifier { get; set; } /// - /// Has the value true if the object exists in live mode or the value false if - /// the object exists in test mode. + /// If the object exists in live mode, the value is true. If the object exists in + /// test mode, the value is false. /// [JsonProperty("livemode")] [STJS.JsonPropertyName("livemode")] diff --git a/src/Stripe.net/Entities/Billing/Meters/Meter.cs b/src/Stripe.net/Entities/Billing/Meters/Meter.cs index a214381ee1..b4e2b1ab64 100644 --- a/src/Stripe.net/Entities/Billing/Meters/Meter.cs +++ b/src/Stripe.net/Entities/Billing/Meters/Meter.cs @@ -72,8 +72,8 @@ public class Meter : StripeEntity, IHasId, IHasObject public string EventTimeWindow { get; set; } /// - /// Has the value true if the object exists in live mode or the value false if - /// the object exists in test mode. + /// If the object exists in live mode, the value is true. If the object exists in + /// test mode, the value is false. /// [JsonProperty("livemode")] [STJS.JsonPropertyName("livemode")] diff --git a/src/Stripe.net/Entities/BillingPortal/Configurations/Configuration.cs b/src/Stripe.net/Entities/BillingPortal/Configurations/Configuration.cs index f1683b6537..b71f0c3259 100644 --- a/src/Stripe.net/Entities/BillingPortal/Configurations/Configuration.cs +++ b/src/Stripe.net/Entities/BillingPortal/Configurations/Configuration.cs @@ -109,8 +109,8 @@ public Application Application public bool IsDefault { get; set; } /// - /// Has the value true if the object exists in live mode or the value false if - /// the object exists in test mode. + /// If the object exists in live mode, the value is true. If the object exists in + /// test mode, the value is false. /// [JsonProperty("livemode")] [STJS.JsonPropertyName("livemode")] diff --git a/src/Stripe.net/Entities/BillingPortal/Sessions/Session.cs b/src/Stripe.net/Entities/BillingPortal/Sessions/Session.cs index 32b87bc8ca..2c7918e78b 100644 --- a/src/Stripe.net/Entities/BillingPortal/Sessions/Session.cs +++ b/src/Stripe.net/Entities/BillingPortal/Sessions/Session.cs @@ -106,8 +106,8 @@ public Configuration Configuration public SessionFlow Flow { get; set; } /// - /// Has the value true if the object exists in live mode or the value false if - /// the object exists in test mode. + /// If the object exists in live mode, the value is true. If the object exists in + /// test mode, the value is false. /// [JsonProperty("livemode")] [STJS.JsonPropertyName("livemode")] diff --git a/src/Stripe.net/Entities/CashBalances/CashBalance.cs b/src/Stripe.net/Entities/CashBalances/CashBalance.cs index 6cd0f233cf..8cf3a78bab 100644 --- a/src/Stripe.net/Entities/CashBalances/CashBalance.cs +++ b/src/Stripe.net/Entities/CashBalances/CashBalance.cs @@ -45,8 +45,8 @@ public class CashBalance : StripeEntity, IHasObject public string CustomerAccount { get; set; } /// - /// Has the value true if the object exists in live mode or the value false if - /// the object exists in test mode. + /// If the object exists in live mode, the value is true. If the object exists in + /// test mode, the value is false. /// [JsonProperty("livemode")] [STJS.JsonPropertyName("livemode")] diff --git a/src/Stripe.net/Entities/Charges/Charge.cs b/src/Stripe.net/Entities/Charges/Charge.cs index 925e1b0d24..847e6e3409 100644 --- a/src/Stripe.net/Entities/Charges/Charge.cs +++ b/src/Stripe.net/Entities/Charges/Charge.cs @@ -340,8 +340,8 @@ public BalanceTransaction FailureBalanceTransaction public ChargeLevel3 Level3 { get; set; } /// - /// Has the value true if the object exists in live mode or the value false if - /// the object exists in test mode. + /// If the object exists in live mode, the value is true. If the object exists in + /// test mode, the value is false. /// [JsonProperty("livemode")] [STJS.JsonPropertyName("livemode")] diff --git a/src/Stripe.net/Entities/Charges/ChargePaymentMethodDetails.cs b/src/Stripe.net/Entities/Charges/ChargePaymentMethodDetails.cs index 6cfe24cada..6eaa455ef1 100644 --- a/src/Stripe.net/Entities/Charges/ChargePaymentMethodDetails.cs +++ b/src/Stripe.net/Entities/Charges/ChargePaymentMethodDetails.cs @@ -228,6 +228,10 @@ public class ChargePaymentMethodDetails : StripeEntity /// The blockchain network that the transaction was sent on. - /// One of: base, ethereum, polygon, or solana. + /// One of: base, ethereum, polygon, solana, or tempo. /// [JsonProperty("network")] [STJS.JsonPropertyName("network")] diff --git a/src/Stripe.net/Entities/Charges/ChargePaymentMethodDetailsUpi.cs b/src/Stripe.net/Entities/Charges/ChargePaymentMethodDetailsUpi.cs new file mode 100644 index 0000000000..841153420e --- /dev/null +++ b/src/Stripe.net/Entities/Charges/ChargePaymentMethodDetailsUpi.cs @@ -0,0 +1,18 @@ +// File generated from our OpenAPI spec +namespace Stripe +{ + using Newtonsoft.Json; + using Stripe.Infrastructure; + using STJS = System.Text.Json.Serialization; + + [STJS.JsonConverter(typeof(STJStripeEntityConverter))] + public class ChargePaymentMethodDetailsUpi : StripeEntity + { + /// + /// Customer's unique Virtual Payment Address. + /// + [JsonProperty("vpa")] + [STJS.JsonPropertyName("vpa")] + public string Vpa { get; set; } + } +} diff --git a/src/Stripe.net/Entities/Checkout/Sessions/Session.cs b/src/Stripe.net/Entities/Checkout/Sessions/Session.cs index 0138935745..801c338e4b 100644 --- a/src/Stripe.net/Entities/Checkout/Sessions/Session.cs +++ b/src/Stripe.net/Entities/Checkout/Sessions/Session.cs @@ -287,6 +287,14 @@ public Customer Customer [STJS.JsonConverter(typeof(STJUnixDateTimeConverter))] public DateTime ExpiresAt { get; set; } = Stripe.Infrastructure.DateTimeUtils.UnixEpoch; + /// + /// The integration identifier for this Checkout Session. Multiple Checkout Sessions can + /// have the same integration identifier. + /// + [JsonProperty("integration_identifier")] + [STJS.JsonPropertyName("integration_identifier")] + public string IntegrationIdentifier { get; set; } + #region Expandable Invoice /// @@ -337,8 +345,8 @@ public Invoice Invoice public StripeList LineItems { get; set; } /// - /// Has the value true if the object exists in live mode or the value false if - /// the object exists in test mode. + /// If the object exists in live mode, the value is true. If the object exists in + /// test mode, the value is false. /// [JsonProperty("livemode")] [STJS.JsonPropertyName("livemode")] @@ -709,7 +717,8 @@ public Subscription Subscription /// /// The UI mode of the Session. Defaults to hosted. - /// One of: custom, embedded, or hosted. + /// One of: custom, elements, embedded, embedded_page, + /// form, hosted, or hosted_page. /// [JsonProperty("ui_mode")] [STJS.JsonPropertyName("ui_mode")] diff --git a/src/Stripe.net/Entities/Checkout/Sessions/SessionPaymentMethodOptions.cs b/src/Stripe.net/Entities/Checkout/Sessions/SessionPaymentMethodOptions.cs index 5e94b162a8..2415e54956 100644 --- a/src/Stripe.net/Entities/Checkout/Sessions/SessionPaymentMethodOptions.cs +++ b/src/Stripe.net/Entities/Checkout/Sessions/SessionPaymentMethodOptions.cs @@ -172,6 +172,10 @@ public class SessionPaymentMethodOptions : StripeEntity - /// Bank account verification method. + /// Bank account verification method. The default value is automatic. /// One of: automatic, instant, or microdeposits. /// [JsonProperty("verification_method")] diff --git a/src/Stripe.net/Entities/Checkout/Sessions/SessionPaymentMethodOptionsUpi.cs b/src/Stripe.net/Entities/Checkout/Sessions/SessionPaymentMethodOptionsUpi.cs new file mode 100644 index 0000000000..67e1bfd08e --- /dev/null +++ b/src/Stripe.net/Entities/Checkout/Sessions/SessionPaymentMethodOptionsUpi.cs @@ -0,0 +1,40 @@ +// File generated from our OpenAPI spec +namespace Stripe.Checkout +{ + using Newtonsoft.Json; + using Stripe.Infrastructure; + using STJS = System.Text.Json.Serialization; + + [STJS.JsonConverter(typeof(STJStripeEntityConverter))] + public class SessionPaymentMethodOptionsUpi : StripeEntity + { + [JsonProperty("mandate_options")] + [STJS.JsonPropertyName("mandate_options")] + public SessionPaymentMethodOptionsUpiMandateOptions MandateOptions { get; set; } + + /// + /// Indicates that you intend to make future payments with this PaymentIntent's payment + /// method. + /// + /// If you provide a Customer with the PaymentIntent, you can use this parameter to attach the payment method to + /// the Customer after the PaymentIntent is confirmed and the customer completes any + /// required actions. If you don't provide a Customer, you can still attach the payment method to a + /// Customer after the transaction completes. + /// + /// If the payment method is card_present and isn't a digital wallet, Stripe creates + /// and attaches a generated_card + /// payment method representing the card to the Customer instead. + /// + /// When processing card payments, Stripe uses setup_future_usage to help you comply + /// with regional legislation and network rules, such as SCA. + /// One of: none, off_session, or on_session. + /// + [JsonProperty("setup_future_usage")] + [STJS.JsonPropertyName("setup_future_usage")] + public string SetupFutureUsage { get; set; } + } +} diff --git a/src/Stripe.net/Entities/Checkout/Sessions/SessionPaymentMethodOptionsUpiMandateOptions.cs b/src/Stripe.net/Entities/Checkout/Sessions/SessionPaymentMethodOptionsUpiMandateOptions.cs new file mode 100644 index 0000000000..fdbe114100 --- /dev/null +++ b/src/Stripe.net/Entities/Checkout/Sessions/SessionPaymentMethodOptionsUpiMandateOptions.cs @@ -0,0 +1,46 @@ +// File generated from our OpenAPI spec +namespace Stripe.Checkout +{ + using System; + using Newtonsoft.Json; + using Stripe.Infrastructure; + using STJS = System.Text.Json.Serialization; + + [STJS.JsonConverter(typeof(STJStripeEntityConverter))] + public class SessionPaymentMethodOptionsUpiMandateOptions : StripeEntity + { + /// + /// Amount to be charged for future payments. + /// + [JsonProperty("amount")] + [STJS.JsonPropertyName("amount")] + public long? Amount { get; set; } + + /// + /// One of fixed or maximum. If fixed, the amount param refers + /// to the exact amount to be charged in future payments. If maximum, the amount + /// charged can be up to the value passed for the amount param. + /// One of: fixed, or maximum. + /// + [JsonProperty("amount_type")] + [STJS.JsonPropertyName("amount_type")] + public string AmountType { get; set; } + + /// + /// A description of the mandate or subscription that is meant to be displayed to the + /// customer. + /// + [JsonProperty("description")] + [STJS.JsonPropertyName("description")] + public string Description { get; set; } + + /// + /// End date of the mandate or subscription. + /// + [JsonProperty("end_date")] + [JsonConverter(typeof(UnixDateTimeConverter))] + [STJS.JsonPropertyName("end_date")] + [STJS.JsonConverter(typeof(STJUnixDateTimeConverter))] + public DateTime? EndDate { get; set; } + } +} diff --git a/src/Stripe.net/Entities/Checkout/Sessions/SessionPaymentMethodOptionsUsBankAccount.cs b/src/Stripe.net/Entities/Checkout/Sessions/SessionPaymentMethodOptionsUsBankAccount.cs index 237f6699d2..2a4dc58eaa 100644 --- a/src/Stripe.net/Entities/Checkout/Sessions/SessionPaymentMethodOptionsUsBankAccount.cs +++ b/src/Stripe.net/Entities/Checkout/Sessions/SessionPaymentMethodOptionsUsBankAccount.cs @@ -47,7 +47,7 @@ public class SessionPaymentMethodOptionsUsBankAccount : StripeEntity - /// Bank account verification method. + /// Bank account verification method. The default value is automatic. /// One of: automatic, or instant. /// [JsonProperty("verification_method")] diff --git a/src/Stripe.net/Entities/Climate/Suppliers/Supplier.cs b/src/Stripe.net/Entities/Climate/Suppliers/Supplier.cs index 667aaf4d67..b78b6414d2 100644 --- a/src/Stripe.net/Entities/Climate/Suppliers/Supplier.cs +++ b/src/Stripe.net/Entities/Climate/Suppliers/Supplier.cs @@ -57,8 +57,8 @@ public class Supplier : StripeEntity, IHasId, IHasObject /// /// The scientific pathway used for carbon removal. - /// One of: biomass_carbon_removal_and_storage, direct_air_capture, or - /// enhanced_weathering. + /// One of: biomass_carbon_removal_and_storage, direct_air_capture, + /// enhanced_weathering, or marine_carbon_removal. /// [JsonProperty("removal_pathway")] [STJS.JsonPropertyName("removal_pathway")] diff --git a/src/Stripe.net/Entities/ConfirmationTokens/ConfirmationToken.cs b/src/Stripe.net/Entities/ConfirmationTokens/ConfirmationToken.cs index e5dd0c7e09..3ab3bb693e 100644 --- a/src/Stripe.net/Entities/ConfirmationTokens/ConfirmationToken.cs +++ b/src/Stripe.net/Entities/ConfirmationTokens/ConfirmationToken.cs @@ -54,8 +54,8 @@ public class ConfirmationToken : StripeEntity, IHasId, IHasOb public DateTime? ExpiresAt { get; set; } /// - /// Has the value true if the object exists in live mode or the value false if - /// the object exists in test mode. + /// If the object exists in live mode, the value is true. If the object exists in + /// test mode, the value is false. /// [JsonProperty("livemode")] [STJS.JsonPropertyName("livemode")] diff --git a/src/Stripe.net/Entities/ConfirmationTokens/ConfirmationTokenPaymentMethodPreview.cs b/src/Stripe.net/Entities/ConfirmationTokens/ConfirmationTokenPaymentMethodPreview.cs index 012a10ca39..598071f430 100644 --- a/src/Stripe.net/Entities/ConfirmationTokens/ConfirmationTokenPaymentMethodPreview.cs +++ b/src/Stripe.net/Entities/ConfirmationTokens/ConfirmationTokenPaymentMethodPreview.cs @@ -274,13 +274,17 @@ public Customer Customer /// naver_pay, nz_bank_account, oxxo, p24, pay_by_bank, /// payco, paynow, paypal, payto, pix, promptpay, /// revolut_pay, samsung_pay, satispay, sepa_debit, - /// sofort, swish, twint, us_bank_account, wechat_pay, or - /// zip. + /// sofort, swish, twint, upi, us_bank_account, + /// wechat_pay, or zip. /// [JsonProperty("type")] [STJS.JsonPropertyName("type")] public string Type { get; set; } + [JsonProperty("upi")] + [STJS.JsonPropertyName("upi")] + public ConfirmationTokenPaymentMethodPreviewUpi Upi { get; set; } + [JsonProperty("us_bank_account")] [STJS.JsonPropertyName("us_bank_account")] public ConfirmationTokenPaymentMethodPreviewUsBankAccount UsBankAccount { get; set; } diff --git a/src/Stripe.net/Entities/ConfirmationTokens/ConfirmationTokenPaymentMethodPreviewUpi.cs b/src/Stripe.net/Entities/ConfirmationTokens/ConfirmationTokenPaymentMethodPreviewUpi.cs new file mode 100644 index 0000000000..094e0da9f5 --- /dev/null +++ b/src/Stripe.net/Entities/ConfirmationTokens/ConfirmationTokenPaymentMethodPreviewUpi.cs @@ -0,0 +1,18 @@ +// File generated from our OpenAPI spec +namespace Stripe +{ + using Newtonsoft.Json; + using Stripe.Infrastructure; + using STJS = System.Text.Json.Serialization; + + [STJS.JsonConverter(typeof(STJStripeEntityConverter))] + public class ConfirmationTokenPaymentMethodPreviewUpi : StripeEntity + { + /// + /// Customer's unique Virtual Payment Address. + /// + [JsonProperty("vpa")] + [STJS.JsonPropertyName("vpa")] + public string Vpa { get; set; } + } +} diff --git a/src/Stripe.net/Entities/ConnectCollectionTransfers/ConnectCollectionTransfer.cs b/src/Stripe.net/Entities/ConnectCollectionTransfers/ConnectCollectionTransfer.cs index 73815cb011..339e3a8daf 100644 --- a/src/Stripe.net/Entities/ConnectCollectionTransfers/ConnectCollectionTransfer.cs +++ b/src/Stripe.net/Entities/ConnectCollectionTransfers/ConnectCollectionTransfer.cs @@ -74,8 +74,8 @@ public Account Destination #endregion /// - /// Has the value true if the object exists in live mode or the value false if - /// the object exists in test mode. + /// If the object exists in live mode, the value is true. If the object exists in + /// test mode, the value is false. /// [JsonProperty("livemode")] [STJS.JsonPropertyName("livemode")] diff --git a/src/Stripe.net/Entities/Coupons/Coupon.cs b/src/Stripe.net/Entities/Coupons/Coupon.cs index 943245152b..3f41b68c80 100644 --- a/src/Stripe.net/Entities/Coupons/Coupon.cs +++ b/src/Stripe.net/Entities/Coupons/Coupon.cs @@ -14,7 +14,7 @@ namespace Stripe /// href="https://api.stripe.com#invoices">invoices, checkout sessions, quotes, and more. Coupons do not work with - /// conventional one-off charges or charges or payment intents. /// [STJS.JsonConverter(typeof(STJStripeEntityConverter))] @@ -99,8 +99,8 @@ public class Coupon : StripeEntity, IHasId, IHasMetadata, IHasObject public long? DurationInMonths { get; set; } /// - /// Has the value true if the object exists in live mode or the value false if - /// the object exists in test mode. + /// If the object exists in live mode, the value is true. If the object exists in + /// test mode, the value is false. /// [JsonProperty("livemode")] [STJS.JsonPropertyName("livemode")] diff --git a/src/Stripe.net/Entities/CreditNoteLineItems/CreditNoteLineItem.cs b/src/Stripe.net/Entities/CreditNoteLineItems/CreditNoteLineItem.cs index 306a787197..4e0e1b8bf3 100644 --- a/src/Stripe.net/Entities/CreditNoteLineItems/CreditNoteLineItem.cs +++ b/src/Stripe.net/Entities/CreditNoteLineItems/CreditNoteLineItem.cs @@ -10,7 +10,7 @@ namespace Stripe /// The credit note line item object. /// [STJS.JsonConverter(typeof(STJStripeEntityConverter))] - public class CreditNoteLineItem : StripeEntity, IHasId, IHasObject + public class CreditNoteLineItem : StripeEntity, IHasId, IHasMetadata, IHasObject { /// /// Unique identifier for the object. @@ -64,13 +64,22 @@ public class CreditNoteLineItem : StripeEntity, IHasId, IHas public string InvoiceLineItem { get; set; } /// - /// Has the value true if the object exists in live mode or the value false if - /// the object exists in test mode. + /// If the object exists in live mode, the value is true. If the object exists in + /// test mode, the value is false. /// [JsonProperty("livemode")] [STJS.JsonPropertyName("livemode")] public bool Livemode { get; set; } + /// + /// Set of key-value pairs that you can + /// attach to an object. This can be useful for storing additional information about the + /// object in a structured format. + /// + [JsonProperty("metadata")] + [STJS.JsonPropertyName("metadata")] + public Dictionary Metadata { get; set; } + /// /// The pretax credit amounts (ex: discount, credit grants, etc) for this line item. /// diff --git a/src/Stripe.net/Entities/CreditNotes/CreditNote.cs b/src/Stripe.net/Entities/CreditNotes/CreditNote.cs index 7b8effde6d..ad5fd2c283 100644 --- a/src/Stripe.net/Entities/CreditNotes/CreditNote.cs +++ b/src/Stripe.net/Entities/CreditNotes/CreditNote.cs @@ -209,8 +209,8 @@ public Invoice Invoice public StripeList Lines { get; set; } /// - /// Has the value true if the object exists in live mode or the value false if - /// the object exists in test mode. + /// If the object exists in live mode, the value is true. If the object exists in + /// test mode, the value is false. /// [JsonProperty("livemode")] [STJS.JsonPropertyName("livemode")] diff --git a/src/Stripe.net/Entities/CustomerBalanceTransactions/CustomerBalanceTransaction.cs b/src/Stripe.net/Entities/CustomerBalanceTransactions/CustomerBalanceTransaction.cs index 1debb99411..53e96ca515 100644 --- a/src/Stripe.net/Entities/CustomerBalanceTransactions/CustomerBalanceTransaction.cs +++ b/src/Stripe.net/Entities/CustomerBalanceTransactions/CustomerBalanceTransaction.cs @@ -226,8 +226,8 @@ public Invoice Invoice #endregion /// - /// Has the value true if the object exists in live mode or the value false if - /// the object exists in test mode. + /// If the object exists in live mode, the value is true. If the object exists in + /// test mode, the value is false. /// [JsonProperty("livemode")] [STJS.JsonPropertyName("livemode")] diff --git a/src/Stripe.net/Entities/CustomerCashBalanceTransactions/CustomerCashBalanceTransaction.cs b/src/Stripe.net/Entities/CustomerCashBalanceTransactions/CustomerCashBalanceTransaction.cs index a89456ff96..571649ee01 100644 --- a/src/Stripe.net/Entities/CustomerCashBalanceTransactions/CustomerCashBalanceTransaction.cs +++ b/src/Stripe.net/Entities/CustomerCashBalanceTransactions/CustomerCashBalanceTransaction.cs @@ -113,8 +113,8 @@ public Customer Customer public CustomerCashBalanceTransactionFunded Funded { get; set; } /// - /// Has the value true if the object exists in live mode or the value false if - /// the object exists in test mode. + /// If the object exists in live mode, the value is true. If the object exists in + /// test mode, the value is false. /// [JsonProperty("livemode")] [STJS.JsonPropertyName("livemode")] diff --git a/src/Stripe.net/Entities/CustomerSessions/CustomerSession.cs b/src/Stripe.net/Entities/CustomerSessions/CustomerSession.cs index 49ff91f938..85ba9c0bde 100644 --- a/src/Stripe.net/Entities/CustomerSessions/CustomerSession.cs +++ b/src/Stripe.net/Entities/CustomerSessions/CustomerSession.cs @@ -108,8 +108,8 @@ public Customer Customer public DateTime ExpiresAt { get; set; } = Stripe.Infrastructure.DateTimeUtils.UnixEpoch; /// - /// Has the value true if the object exists in live mode or the value false if - /// the object exists in test mode. + /// If the object exists in live mode, the value is true. If the object exists in + /// test mode, the value is false. /// [JsonProperty("livemode")] [STJS.JsonPropertyName("livemode")] diff --git a/src/Stripe.net/Entities/Customers/Customer.cs b/src/Stripe.net/Entities/Customers/Customer.cs index 6fcc37a2fb..a31235815f 100644 --- a/src/Stripe.net/Entities/Customers/Customer.cs +++ b/src/Stripe.net/Entities/Customers/Customer.cs @@ -215,8 +215,8 @@ public IPaymentSource DefaultSource public CustomerInvoiceSettings InvoiceSettings { get; set; } /// - /// Has the value true if the object exists in live mode or the value false if - /// the object exists in test mode. + /// If the object exists in live mode, the value is true. If the object exists in + /// test mode, the value is false. /// [JsonProperty("livemode")] [STJS.JsonPropertyName("livemode")] diff --git a/src/Stripe.net/Entities/Disputes/Dispute.cs b/src/Stripe.net/Entities/Disputes/Dispute.cs index 3e58b01796..1a68b97c2e 100644 --- a/src/Stripe.net/Entities/Disputes/Dispute.cs +++ b/src/Stripe.net/Entities/Disputes/Dispute.cs @@ -126,8 +126,8 @@ public Charge Charge public bool IsChargeRefundable { get; set; } /// - /// Has the value true if the object exists in live mode or the value false if - /// the object exists in test mode. + /// If the object exists in live mode, the value is true. If the object exists in + /// test mode, the value is false. /// [JsonProperty("livemode")] [STJS.JsonPropertyName("livemode")] diff --git a/src/Stripe.net/Entities/Entitlements/ActiveEntitlementSummaries/ActiveEntitlementSummary.cs b/src/Stripe.net/Entities/Entitlements/ActiveEntitlementSummaries/ActiveEntitlementSummary.cs index ab086e406b..3b924b1a8f 100644 --- a/src/Stripe.net/Entities/Entitlements/ActiveEntitlementSummaries/ActiveEntitlementSummary.cs +++ b/src/Stripe.net/Entities/Entitlements/ActiveEntitlementSummaries/ActiveEntitlementSummary.cs @@ -33,8 +33,8 @@ public class ActiveEntitlementSummary : StripeEntity, public StripeList Entitlements { get; set; } /// - /// Has the value true if the object exists in live mode or the value false if - /// the object exists in test mode. + /// If the object exists in live mode, the value is true. If the object exists in + /// test mode, the value is false. /// [JsonProperty("livemode")] [STJS.JsonPropertyName("livemode")] diff --git a/src/Stripe.net/Entities/Entitlements/ActiveEntitlements/ActiveEntitlement.cs b/src/Stripe.net/Entities/Entitlements/ActiveEntitlements/ActiveEntitlement.cs index 145114038f..a4de7cf385 100644 --- a/src/Stripe.net/Entities/Entitlements/ActiveEntitlements/ActiveEntitlement.cs +++ b/src/Stripe.net/Entities/Entitlements/ActiveEntitlements/ActiveEntitlement.cs @@ -63,8 +63,8 @@ public Feature Feature #endregion /// - /// Has the value true if the object exists in live mode or the value false if - /// the object exists in test mode. + /// If the object exists in live mode, the value is true. If the object exists in + /// test mode, the value is false. /// [JsonProperty("livemode")] [STJS.JsonPropertyName("livemode")] diff --git a/src/Stripe.net/Entities/Entitlements/Features/Feature.cs b/src/Stripe.net/Entities/Entitlements/Features/Feature.cs index c8b3574b6d..82a8ac94e1 100644 --- a/src/Stripe.net/Entities/Entitlements/Features/Feature.cs +++ b/src/Stripe.net/Entities/Entitlements/Features/Feature.cs @@ -37,8 +37,8 @@ public class Feature : StripeEntity, IHasId, IHasMetadata, IHasObject public bool Active { get; set; } /// - /// Has the value true if the object exists in live mode or the value false if - /// the object exists in test mode. + /// If the object exists in live mode, the value is true. If the object exists in + /// test mode, the value is false. /// [JsonProperty("livemode")] [STJS.JsonPropertyName("livemode")] diff --git a/src/Stripe.net/Entities/EphemeralKeys/EphemeralKey.cs b/src/Stripe.net/Entities/EphemeralKeys/EphemeralKey.cs index 782e2730d5..a1475c7777 100644 --- a/src/Stripe.net/Entities/EphemeralKeys/EphemeralKey.cs +++ b/src/Stripe.net/Entities/EphemeralKeys/EphemeralKey.cs @@ -50,8 +50,8 @@ public class EphemeralKey : StripeEntity, IHasId, IHasObject public DateTime Expires { get; set; } = Stripe.Infrastructure.DateTimeUtils.UnixEpoch; /// - /// Has the value true if the object exists in live mode or the value false if - /// the object exists in test mode. + /// If the object exists in live mode, the value is true. If the object exists in + /// test mode, the value is false. /// [JsonProperty("livemode")] [STJS.JsonPropertyName("livemode")] diff --git a/src/Stripe.net/Entities/Events/Event.cs b/src/Stripe.net/Entities/Events/Event.cs index d0f7786aa0..4179886093 100644 --- a/src/Stripe.net/Entities/Events/Event.cs +++ b/src/Stripe.net/Entities/Events/Event.cs @@ -84,8 +84,8 @@ public class Event : StripeEntity, IHasId, IHasObject public EventData Data { get; set; } /// - /// Has the value true if the object exists in live mode or the value false if - /// the object exists in test mode. + /// If the object exists in live mode, the value is true. If the object exists in + /// test mode, the value is false. /// [JsonProperty("livemode")] [STJS.JsonPropertyName("livemode")] diff --git a/src/Stripe.net/Entities/FileLinks/FileLink.cs b/src/Stripe.net/Entities/FileLinks/FileLink.cs index 14f19d4718..18044f5aec 100644 --- a/src/Stripe.net/Entities/FileLinks/FileLink.cs +++ b/src/Stripe.net/Entities/FileLinks/FileLink.cs @@ -90,8 +90,8 @@ public File File #endregion /// - /// Has the value true if the object exists in live mode or the value false if - /// the object exists in test mode. + /// If the object exists in live mode, the value is true. If the object exists in + /// test mode, the value is false. /// [JsonProperty("livemode")] [STJS.JsonPropertyName("livemode")] diff --git a/src/Stripe.net/Entities/FinancialConnections/Accounts/Account.cs b/src/Stripe.net/Entities/FinancialConnections/Accounts/Account.cs index c6b9294f8f..7285695469 100644 --- a/src/Stripe.net/Entities/FinancialConnections/Accounts/Account.cs +++ b/src/Stripe.net/Entities/FinancialConnections/Accounts/Account.cs @@ -96,8 +96,8 @@ public class Account : StripeEntity, IHasId, IHasObject public string Last4 { get; set; } /// - /// Has the value true if the object exists in live mode or the value false if - /// the object exists in test mode. + /// If the object exists in live mode, the value is true. If the object exists in + /// test mode, the value is false. /// [JsonProperty("livemode")] [STJS.JsonPropertyName("livemode")] diff --git a/src/Stripe.net/Entities/FinancialConnections/Sessions/Session.cs b/src/Stripe.net/Entities/FinancialConnections/Sessions/Session.cs index a367a570ba..0e8ab127f2 100644 --- a/src/Stripe.net/Entities/FinancialConnections/Sessions/Session.cs +++ b/src/Stripe.net/Entities/FinancialConnections/Sessions/Session.cs @@ -53,8 +53,8 @@ public class Session : StripeEntity, IHasId, IHasObject public SessionFilters Filters { get; set; } /// - /// Has the value true if the object exists in live mode or the value false if - /// the object exists in test mode. + /// If the object exists in live mode, the value is true. If the object exists in + /// test mode, the value is false. /// [JsonProperty("livemode")] [STJS.JsonPropertyName("livemode")] diff --git a/src/Stripe.net/Entities/FinancialConnections/Transactions/Transaction.cs b/src/Stripe.net/Entities/FinancialConnections/Transactions/Transaction.cs index 71b08fb488..1ab15dd2c4 100644 --- a/src/Stripe.net/Entities/FinancialConnections/Transactions/Transaction.cs +++ b/src/Stripe.net/Entities/FinancialConnections/Transactions/Transaction.cs @@ -58,8 +58,8 @@ public class Transaction : StripeEntity, IHasId, IHasObject public string Description { get; set; } /// - /// Has the value true if the object exists in live mode or the value false if - /// the object exists in test mode. + /// If the object exists in live mode, the value is true. If the object exists in + /// test mode, the value is false. /// [JsonProperty("livemode")] [STJS.JsonPropertyName("livemode")] diff --git a/src/Stripe.net/Entities/Forwarding/Requests/Request.cs b/src/Stripe.net/Entities/Forwarding/Requests/Request.cs index 823e109d47..7b98e4728b 100644 --- a/src/Stripe.net/Entities/Forwarding/Requests/Request.cs +++ b/src/Stripe.net/Entities/Forwarding/Requests/Request.cs @@ -55,8 +55,8 @@ public class Request : StripeEntity, IHasId, IHasMetadata, IHasObject public DateTime Created { get; set; } = Stripe.Infrastructure.DateTimeUtils.UnixEpoch; /// - /// Has the value true if the object exists in live mode or the value false if - /// the object exists in test mode. + /// If the object exists in live mode, the value is true. If the object exists in + /// test mode, the value is false. /// [JsonProperty("livemode")] [STJS.JsonPropertyName("livemode")] diff --git a/src/Stripe.net/Entities/FundingInstructions/FundingInstructions.cs b/src/Stripe.net/Entities/FundingInstructions/FundingInstructions.cs index 5184f291d9..0e5dd0ae3a 100644 --- a/src/Stripe.net/Entities/FundingInstructions/FundingInstructions.cs +++ b/src/Stripe.net/Entities/FundingInstructions/FundingInstructions.cs @@ -45,8 +45,8 @@ public class FundingInstructions : StripeEntity, IHasObject public string FundingType { get; set; } /// - /// Has the value true if the object exists in live mode or the value false if - /// the object exists in test mode. + /// If the object exists in live mode, the value is true. If the object exists in + /// test mode, the value is false. /// [JsonProperty("livemode")] [STJS.JsonPropertyName("livemode")] diff --git a/src/Stripe.net/Entities/Identity/VerificationReports/VerificationReport.cs b/src/Stripe.net/Entities/Identity/VerificationReports/VerificationReport.cs index ebc66a16cf..48fa915dcb 100644 --- a/src/Stripe.net/Entities/Identity/VerificationReports/VerificationReport.cs +++ b/src/Stripe.net/Entities/Identity/VerificationReports/VerificationReport.cs @@ -80,8 +80,8 @@ public class VerificationReport : StripeEntity, IHasId, IHas public VerificationReportIdNumber IdNumber { get; set; } /// - /// Has the value true if the object exists in live mode or the value false if - /// the object exists in test mode. + /// If the object exists in live mode, the value is true. If the object exists in + /// test mode, the value is false. /// [JsonProperty("livemode")] [STJS.JsonPropertyName("livemode")] diff --git a/src/Stripe.net/Entities/Identity/VerificationSessions/VerificationSession.cs b/src/Stripe.net/Entities/Identity/VerificationSessions/VerificationSession.cs index 8f0f46fa7b..5898765d74 100644 --- a/src/Stripe.net/Entities/Identity/VerificationSessions/VerificationSession.cs +++ b/src/Stripe.net/Entities/Identity/VerificationSessions/VerificationSession.cs @@ -119,8 +119,8 @@ public VerificationReport LastVerificationReport #endregion /// - /// Has the value true if the object exists in live mode or the value false if - /// the object exists in test mode. + /// If the object exists in live mode, the value is true. If the object exists in + /// test mode, the value is false. /// [JsonProperty("livemode")] [STJS.JsonPropertyName("livemode")] diff --git a/src/Stripe.net/Entities/InvoiceItems/InvoiceItem.cs b/src/Stripe.net/Entities/InvoiceItems/InvoiceItem.cs index f8d15c58ae..3b9071a6e0 100644 --- a/src/Stripe.net/Entities/InvoiceItems/InvoiceItem.cs +++ b/src/Stripe.net/Entities/InvoiceItems/InvoiceItem.cs @@ -206,8 +206,8 @@ public Invoice Invoice #endregion /// - /// Has the value true if the object exists in live mode or the value false if - /// the object exists in test mode. + /// If the object exists in live mode, the value is true. If the object exists in + /// test mode, the value is false. /// [JsonProperty("livemode")] [STJS.JsonPropertyName("livemode")] @@ -261,13 +261,26 @@ public Invoice Invoice public InvoiceItemProrationDetails ProrationDetails { get; set; } /// - /// Quantity of units for the invoice item. If the invoice item is a proration, the quantity - /// of the subscription that the proration was computed for. + /// Quantity of units for the invoice item in integer format, with any decimal precision + /// truncated. For the item's full-precision decimal quantity, use quantity_decimal. + /// This field will be deprecated in favor of quantity_decimal in a future version. + /// If the invoice item is a proration, the quantity of the subscription that the proration + /// was computed for. /// [JsonProperty("quantity")] [STJS.JsonPropertyName("quantity")] public long Quantity { get; set; } + /// + /// Non-negative decimal with at most 12 decimal places. The quantity of units for the + /// invoice item. + /// + [JsonProperty("quantity_decimal")] + [JsonConverter(typeof(DecimalStringConverter))] + [STJS.JsonNumberHandling(STJS.JsonNumberHandling.AllowReadingFromString | STJS.JsonNumberHandling.WriteAsString)] + [STJS.JsonPropertyName("quantity_decimal")] + public decimal QuantityDecimal { get; set; } + /// /// The tax rates which apply to the invoice item. When set, the default_tax_rates on /// the invoice do not apply to this invoice item. diff --git a/src/Stripe.net/Entities/InvoiceLineItems/InvoiceLineItem.cs b/src/Stripe.net/Entities/InvoiceLineItems/InvoiceLineItem.cs index 34b2adf13a..1318b034bd 100644 --- a/src/Stripe.net/Entities/InvoiceLineItems/InvoiceLineItem.cs +++ b/src/Stripe.net/Entities/InvoiceLineItems/InvoiceLineItem.cs @@ -113,8 +113,8 @@ public List Discounts public string Invoice { get; set; } /// - /// Has the value true if the object exists in live mode or the value false if - /// the object exists in test mode. + /// If the object exists in live mode, the value is true. If the object exists in + /// test mode, the value is false. /// [JsonProperty("livemode")] [STJS.JsonPropertyName("livemode")] @@ -159,12 +159,26 @@ public List Discounts public InvoiceLineItemPricing Pricing { get; set; } /// - /// The quantity of the subscription, if the line item is a subscription or a proration. + /// Quantity of units for the invoice line item in integer format, with any decimal + /// precision truncated. For the line item's full-precision decimal quantity, use + /// quantity_decimal. This field will be deprecated in favor of + /// quantity_decimal in a future version. If the line item is a proration or + /// subscription, the quantity of the subscription that the proration was computed for. /// [JsonProperty("quantity")] [STJS.JsonPropertyName("quantity")] public long? Quantity { get; set; } + /// + /// Non-negative decimal with at most 12 decimal places. The quantity of units for the line + /// item. + /// + [JsonProperty("quantity_decimal")] + [JsonConverter(typeof(DecimalStringConverter))] + [STJS.JsonNumberHandling(STJS.JsonNumberHandling.AllowReadingFromString | STJS.JsonNumberHandling.WriteAsString)] + [STJS.JsonPropertyName("quantity_decimal")] + public decimal? QuantityDecimal { get; set; } + #region Expandable Subscription [JsonIgnore] diff --git a/src/Stripe.net/Entities/InvoicePayments/InvoicePayment.cs b/src/Stripe.net/Entities/InvoicePayments/InvoicePayment.cs index 2eedfd4578..2c46d52fd7 100644 --- a/src/Stripe.net/Entities/InvoicePayments/InvoicePayment.cs +++ b/src/Stripe.net/Entities/InvoicePayments/InvoicePayment.cs @@ -113,8 +113,8 @@ public Invoice Invoice public bool IsDefault { get; set; } /// - /// Has the value true if the object exists in live mode or the value false if - /// the object exists in test mode. + /// If the object exists in live mode, the value is true. If the object exists in + /// test mode, the value is false. /// [JsonProperty("livemode")] [STJS.JsonPropertyName("livemode")] diff --git a/src/Stripe.net/Entities/InvoiceRenderingTemplates/InvoiceRenderingTemplate.cs b/src/Stripe.net/Entities/InvoiceRenderingTemplates/InvoiceRenderingTemplate.cs index 9ee99165af..473c369e49 100644 --- a/src/Stripe.net/Entities/InvoiceRenderingTemplates/InvoiceRenderingTemplate.cs +++ b/src/Stripe.net/Entities/InvoiceRenderingTemplates/InvoiceRenderingTemplate.cs @@ -39,8 +39,8 @@ public class InvoiceRenderingTemplate : StripeEntity, public DateTime Created { get; set; } = Stripe.Infrastructure.DateTimeUtils.UnixEpoch; /// - /// Has the value true if the object exists in live mode or the value false if - /// the object exists in test mode. + /// If the object exists in live mode, the value is true. If the object exists in + /// test mode, the value is false. /// [JsonProperty("livemode")] [STJS.JsonPropertyName("livemode")] diff --git a/src/Stripe.net/Entities/Invoices/Invoice.cs b/src/Stripe.net/Entities/Invoices/Invoice.cs index 387e588ac3..86a9a13c1d 100644 --- a/src/Stripe.net/Entities/Invoices/Invoice.cs +++ b/src/Stripe.net/Entities/Invoices/Invoice.cs @@ -665,8 +665,8 @@ public Invoice LatestRevision public StripeList Lines { get; set; } /// - /// Has the value true if the object exists in live mode or the value false if - /// the object exists in test mode. + /// If the object exists in live mode, the value is true. If the object exists in + /// test mode, the value is false. /// [JsonProperty("livemode")] [STJS.JsonPropertyName("livemode")] diff --git a/src/Stripe.net/Entities/Invoices/InvoicePaymentSettingsPaymentMethodOptionsAcssDebit.cs b/src/Stripe.net/Entities/Invoices/InvoicePaymentSettingsPaymentMethodOptionsAcssDebit.cs index e3fdc61005..f455b2a6e9 100644 --- a/src/Stripe.net/Entities/Invoices/InvoicePaymentSettingsPaymentMethodOptionsAcssDebit.cs +++ b/src/Stripe.net/Entities/Invoices/InvoicePaymentSettingsPaymentMethodOptionsAcssDebit.cs @@ -13,7 +13,7 @@ public class InvoicePaymentSettingsPaymentMethodOptionsAcssDebit : StripeEntity< public InvoicePaymentSettingsPaymentMethodOptionsAcssDebitMandateOptions MandateOptions { get; set; } /// - /// Bank account verification method. + /// Bank account verification method. The default value is automatic. /// One of: automatic, instant, or microdeposits. /// [JsonProperty("verification_method")] diff --git a/src/Stripe.net/Entities/Invoices/InvoicePaymentSettingsPaymentMethodOptionsUsBankAccount.cs b/src/Stripe.net/Entities/Invoices/InvoicePaymentSettingsPaymentMethodOptionsUsBankAccount.cs index 9d71b759c9..704b6c08aa 100644 --- a/src/Stripe.net/Entities/Invoices/InvoicePaymentSettingsPaymentMethodOptionsUsBankAccount.cs +++ b/src/Stripe.net/Entities/Invoices/InvoicePaymentSettingsPaymentMethodOptionsUsBankAccount.cs @@ -13,7 +13,7 @@ public class InvoicePaymentSettingsPaymentMethodOptionsUsBankAccount : StripeEnt public InvoicePaymentSettingsPaymentMethodOptionsUsBankAccountFinancialConnections FinancialConnections { get; set; } /// - /// Bank account verification method. + /// Bank account verification method. The default value is automatic. /// One of: automatic, instant, or microdeposits. /// [JsonProperty("verification_method")] diff --git a/src/Stripe.net/Entities/Issuing/Authorizations/Authorization.cs b/src/Stripe.net/Entities/Issuing/Authorizations/Authorization.cs index 071b586223..6e8fdfea15 100644 --- a/src/Stripe.net/Entities/Issuing/Authorizations/Authorization.cs +++ b/src/Stripe.net/Entities/Issuing/Authorizations/Authorization.cs @@ -163,8 +163,8 @@ public Cardholder Cardholder public AuthorizationFuel Fuel { get; set; } /// - /// Has the value true if the object exists in live mode or the value false if - /// the object exists in test mode. + /// If the object exists in live mode, the value is true. If the object exists in + /// test mode, the value is false. /// [JsonProperty("livemode")] [STJS.JsonPropertyName("livemode")] diff --git a/src/Stripe.net/Entities/Issuing/Cardholders/Cardholder.cs b/src/Stripe.net/Entities/Issuing/Cardholders/Cardholder.cs index 142824ef83..d462c74629 100644 --- a/src/Stripe.net/Entities/Issuing/Cardholders/Cardholder.cs +++ b/src/Stripe.net/Entities/Issuing/Cardholders/Cardholder.cs @@ -67,8 +67,8 @@ public class Cardholder : StripeEntity, IHasId, IHasMetadata, IHasOb public CardholderIndividual Individual { get; set; } /// - /// Has the value true if the object exists in live mode or the value false if - /// the object exists in test mode. + /// If the object exists in live mode, the value is true. If the object exists in + /// test mode, the value is false. /// [JsonProperty("livemode")] [STJS.JsonPropertyName("livemode")] diff --git a/src/Stripe.net/Entities/Issuing/Cards/Card.cs b/src/Stripe.net/Entities/Issuing/Cards/Card.cs index cea12f7b6f..4323924133 100644 --- a/src/Stripe.net/Entities/Issuing/Cards/Card.cs +++ b/src/Stripe.net/Entities/Issuing/Cards/Card.cs @@ -122,8 +122,17 @@ public class Card : StripeEntity, IHasId, IHasMetadata, IHasObject public CardLatestFraudWarning LatestFraudWarning { get; set; } /// - /// Has the value true if the object exists in live mode or the value false if - /// the object exists in test mode. + /// Rules that control the lifecycle of this card, such as automatic cancellation. Refer to + /// our documentation + /// for more details. + /// + [JsonProperty("lifecycle_controls")] + [STJS.JsonPropertyName("lifecycle_controls")] + public CardLifecycleControls LifecycleControls { get; set; } + + /// + /// If the object exists in live mode, the value is true. If the object exists in + /// test mode, the value is false. /// [JsonProperty("livemode")] [STJS.JsonPropertyName("livemode")] diff --git a/src/Stripe.net/Entities/Issuing/Cards/CardLifecycleControls.cs b/src/Stripe.net/Entities/Issuing/Cards/CardLifecycleControls.cs new file mode 100644 index 0000000000..6ddc191ab2 --- /dev/null +++ b/src/Stripe.net/Entities/Issuing/Cards/CardLifecycleControls.cs @@ -0,0 +1,15 @@ +// File generated from our OpenAPI spec +namespace Stripe.Issuing +{ + using Newtonsoft.Json; + using Stripe.Infrastructure; + using STJS = System.Text.Json.Serialization; + + [STJS.JsonConverter(typeof(STJStripeEntityConverter))] + public class CardLifecycleControls : StripeEntity + { + [JsonProperty("cancel_after")] + [STJS.JsonPropertyName("cancel_after")] + public CardLifecycleControlsCancelAfter CancelAfter { get; set; } + } +} diff --git a/src/Stripe.net/Entities/Issuing/Cards/CardLifecycleControlsCancelAfter.cs b/src/Stripe.net/Entities/Issuing/Cards/CardLifecycleControlsCancelAfter.cs new file mode 100644 index 0000000000..463266769b --- /dev/null +++ b/src/Stripe.net/Entities/Issuing/Cards/CardLifecycleControlsCancelAfter.cs @@ -0,0 +1,20 @@ +// File generated from our OpenAPI spec +namespace Stripe.Issuing +{ + using Newtonsoft.Json; + using Stripe.Infrastructure; + using STJS = System.Text.Json.Serialization; + + [STJS.JsonConverter(typeof(STJStripeEntityConverter))] + public class CardLifecycleControlsCancelAfter : StripeEntity + { + /// + /// The card is automatically cancelled when it makes this number of non-zero payment + /// authorizations and transactions. The count includes penny authorizations, but doesn't + /// include non-payment actions, such as authorization advice. + /// + [JsonProperty("payment_count")] + [STJS.JsonPropertyName("payment_count")] + public long PaymentCount { get; set; } + } +} diff --git a/src/Stripe.net/Entities/Issuing/Disputes/Dispute.cs b/src/Stripe.net/Entities/Issuing/Disputes/Dispute.cs index fe0b789b12..ec9789db89 100644 --- a/src/Stripe.net/Entities/Issuing/Disputes/Dispute.cs +++ b/src/Stripe.net/Entities/Issuing/Disputes/Dispute.cs @@ -70,8 +70,8 @@ public class Dispute : StripeEntity, IHasId, IHasMetadata, IHasObject, public DisputeEvidence Evidence { get; set; } /// - /// Has the value true if the object exists in live mode or the value false if - /// the object exists in test mode. + /// If the object exists in live mode, the value is true. If the object exists in + /// test mode, the value is false. /// [JsonProperty("livemode")] [STJS.JsonPropertyName("livemode")] diff --git a/src/Stripe.net/Entities/Issuing/PersonalizationDesigns/PersonalizationDesign.cs b/src/Stripe.net/Entities/Issuing/PersonalizationDesigns/PersonalizationDesign.cs index 1bd757b675..70362424d1 100644 --- a/src/Stripe.net/Entities/Issuing/PersonalizationDesigns/PersonalizationDesign.cs +++ b/src/Stripe.net/Entities/Issuing/PersonalizationDesigns/PersonalizationDesign.cs @@ -82,8 +82,8 @@ public File CardLogo public DateTime Created { get; set; } = Stripe.Infrastructure.DateTimeUtils.UnixEpoch; /// - /// Has the value true if the object exists in live mode or the value false if - /// the object exists in test mode. + /// If the object exists in live mode, the value is true. If the object exists in + /// test mode, the value is false. /// [JsonProperty("livemode")] [STJS.JsonPropertyName("livemode")] diff --git a/src/Stripe.net/Entities/Issuing/PhysicalBundles/PhysicalBundle.cs b/src/Stripe.net/Entities/Issuing/PhysicalBundles/PhysicalBundle.cs index 459860afd9..226d824c84 100644 --- a/src/Stripe.net/Entities/Issuing/PhysicalBundles/PhysicalBundle.cs +++ b/src/Stripe.net/Entities/Issuing/PhysicalBundles/PhysicalBundle.cs @@ -31,8 +31,8 @@ public class PhysicalBundle : StripeEntity, IHasId, IHasObject public PhysicalBundleFeatures Features { get; set; } /// - /// Has the value true if the object exists in live mode or the value false if - /// the object exists in test mode. + /// If the object exists in live mode, the value is true. If the object exists in + /// test mode, the value is false. /// [JsonProperty("livemode")] [STJS.JsonPropertyName("livemode")] diff --git a/src/Stripe.net/Entities/Issuing/Tokens/Token.cs b/src/Stripe.net/Entities/Issuing/Tokens/Token.cs index f89d6db7ee..2ea64226fe 100644 --- a/src/Stripe.net/Entities/Issuing/Tokens/Token.cs +++ b/src/Stripe.net/Entities/Issuing/Tokens/Token.cs @@ -89,8 +89,8 @@ public Card Card public string Last4 { get; set; } /// - /// Has the value true if the object exists in live mode or the value false if - /// the object exists in test mode. + /// If the object exists in live mode, the value is true. If the object exists in + /// test mode, the value is false. /// [JsonProperty("livemode")] [STJS.JsonPropertyName("livemode")] diff --git a/src/Stripe.net/Entities/Issuing/Transactions/Transaction.cs b/src/Stripe.net/Entities/Issuing/Transactions/Transaction.cs index 90b46db69d..3190c602f9 100644 --- a/src/Stripe.net/Entities/Issuing/Transactions/Transaction.cs +++ b/src/Stripe.net/Entities/Issuing/Transactions/Transaction.cs @@ -246,8 +246,8 @@ public Dispute Dispute #endregion /// - /// Has the value true if the object exists in live mode or the value false if - /// the object exists in test mode. + /// If the object exists in live mode, the value is true. If the object exists in + /// test mode, the value is false. /// [JsonProperty("livemode")] [STJS.JsonPropertyName("livemode")] diff --git a/src/Stripe.net/Entities/Mandates/Mandate.cs b/src/Stripe.net/Entities/Mandates/Mandate.cs index 26fba65f70..342f6f3b99 100644 --- a/src/Stripe.net/Entities/Mandates/Mandate.cs +++ b/src/Stripe.net/Entities/Mandates/Mandate.cs @@ -31,8 +31,8 @@ public class Mandate : StripeEntity, IHasId, IHasObject public MandateCustomerAcceptance CustomerAcceptance { get; set; } /// - /// Has the value true if the object exists in live mode or the value false if - /// the object exists in test mode. + /// If the object exists in live mode, the value is true. If the object exists in + /// test mode, the value is false. /// [JsonProperty("livemode")] [STJS.JsonPropertyName("livemode")] diff --git a/src/Stripe.net/Entities/Mandates/MandatePaymentMethodDetails.cs b/src/Stripe.net/Entities/Mandates/MandatePaymentMethodDetails.cs index 741a450a9d..5e3468a5ad 100644 --- a/src/Stripe.net/Entities/Mandates/MandatePaymentMethodDetails.cs +++ b/src/Stripe.net/Entities/Mandates/MandatePaymentMethodDetails.cs @@ -81,6 +81,10 @@ public class MandatePaymentMethodDetails : StripeEntity + { + /// + /// Amount to be charged for future payments. + /// + [JsonProperty("amount")] + [STJS.JsonPropertyName("amount")] + public long? Amount { get; set; } + + /// + /// One of fixed or maximum. If fixed, the amount param refers + /// to the exact amount to be charged in future payments. If maximum, the amount + /// charged can be up to the value passed for the amount param. + /// One of: fixed, or maximum. + /// + [JsonProperty("amount_type")] + [STJS.JsonPropertyName("amount_type")] + public string AmountType { get; set; } + + /// + /// A description of the mandate or subscription that is meant to be displayed to the + /// customer. + /// + [JsonProperty("description")] + [STJS.JsonPropertyName("description")] + public string Description { get; set; } + + /// + /// End date of the mandate or subscription. + /// + [JsonProperty("end_date")] + [JsonConverter(typeof(UnixDateTimeConverter))] + [STJS.JsonPropertyName("end_date")] + [STJS.JsonConverter(typeof(STJUnixDateTimeConverter))] + public DateTime? EndDate { get; set; } + } +} diff --git a/src/Stripe.net/Entities/PaymentAttemptRecords/PaymentAttemptRecord.cs b/src/Stripe.net/Entities/PaymentAttemptRecords/PaymentAttemptRecord.cs index 71970e9fb0..2ad19deb0f 100644 --- a/src/Stripe.net/Entities/PaymentAttemptRecords/PaymentAttemptRecord.cs +++ b/src/Stripe.net/Entities/PaymentAttemptRecords/PaymentAttemptRecord.cs @@ -118,8 +118,8 @@ public class PaymentAttemptRecord : StripeEntity, IHasId, public string Description { get; set; } /// - /// Has the value true if the object exists in live mode or the value false if - /// the object exists in test mode. + /// If the object exists in live mode, the value is true. If the object exists in + /// test mode, the value is false. /// [JsonProperty("livemode")] [STJS.JsonPropertyName("livemode")] diff --git a/src/Stripe.net/Entities/PaymentAttemptRecords/PaymentAttemptRecordPaymentMethodDetails.cs b/src/Stripe.net/Entities/PaymentAttemptRecords/PaymentAttemptRecordPaymentMethodDetails.cs index 07ddf2ec5b..d05ae36720 100644 --- a/src/Stripe.net/Entities/PaymentAttemptRecords/PaymentAttemptRecordPaymentMethodDetails.cs +++ b/src/Stripe.net/Entities/PaymentAttemptRecords/PaymentAttemptRecordPaymentMethodDetails.cs @@ -258,6 +258,10 @@ public class PaymentAttemptRecordPaymentMethodDetails : StripeEntity [JsonProperty("exp_month")] [STJS.JsonPropertyName("exp_month")] - public long ExpMonth { get; set; } + public long? ExpMonth { get; set; } /// /// Four-digit number representing the card's expiration year. /// [JsonProperty("exp_year")] [STJS.JsonPropertyName("exp_year")] - public long ExpYear { get; set; } + public long? ExpYear { get; set; } /// /// Uniquely identifies this particular card number. You can use this attribute to check @@ -129,7 +129,7 @@ public class PaymentAttemptRecordPaymentMethodDetailsCard : StripeEntity [JsonProperty("moto")] [STJS.JsonPropertyName("moto")] - public bool Moto { get; set; } + public bool? Moto { get; set; } /// /// Identifies which network this charge was processed on. Can be amex, diff --git a/src/Stripe.net/Entities/PaymentAttemptRecords/PaymentAttemptRecordPaymentMethodDetailsCardThreeDSecure.cs b/src/Stripe.net/Entities/PaymentAttemptRecords/PaymentAttemptRecordPaymentMethodDetailsCardThreeDSecure.cs index c4d224680d..b0f7915443 100644 --- a/src/Stripe.net/Entities/PaymentAttemptRecords/PaymentAttemptRecordPaymentMethodDetailsCardThreeDSecure.cs +++ b/src/Stripe.net/Entities/PaymentAttemptRecords/PaymentAttemptRecordPaymentMethodDetailsCardThreeDSecure.cs @@ -17,6 +17,38 @@ public class PaymentAttemptRecordPaymentMethodDetailsCardThreeDSecure : StripeEn [STJS.JsonPropertyName("authentication_flow")] public string AuthenticationFlow { get; set; } + /// + /// The 3D Secure cryptogram, also known as the "authentication value" (AAV, CAVV or AEVV). + /// + [JsonProperty("cryptogram")] + [STJS.JsonPropertyName("cryptogram")] + public string Cryptogram { get; set; } + + /// + /// The Electronic Commerce Indicator (ECI). A protocol-level field indicating what degree + /// of authentication was performed. + /// One of: 01, 02, 03, 04, 05, 06, or 07. + /// + [JsonProperty("electronic_commerce_indicator")] + [STJS.JsonPropertyName("electronic_commerce_indicator")] + public string ElectronicCommerceIndicator { get; set; } + + /// + /// The exemption requested via 3DS and accepted by the issuer at authentication time. + /// One of: low_risk, or none. + /// + [JsonProperty("exemption_indicator")] + [STJS.JsonPropertyName("exemption_indicator")] + public string ExemptionIndicator { get; set; } + + /// + /// Whether Stripe requested the value of exemption_indicator in the transaction. + /// This will depend on the outcome of Stripe's internal risk assessment. + /// + [JsonProperty("exemption_indicator_applied")] + [STJS.JsonPropertyName("exemption_indicator_applied")] + public bool? ExemptionIndicatorApplied { get; set; } + /// /// Indicates the outcome of 3D Secure authentication. /// One of: attempt_acknowledged, authenticated, exempted, diff --git a/src/Stripe.net/Entities/PaymentAttemptRecords/PaymentAttemptRecordPaymentMethodDetailsCrypto.cs b/src/Stripe.net/Entities/PaymentAttemptRecords/PaymentAttemptRecordPaymentMethodDetailsCrypto.cs index 777a8eb96c..6d6bb8aa8e 100644 --- a/src/Stripe.net/Entities/PaymentAttemptRecords/PaymentAttemptRecordPaymentMethodDetailsCrypto.cs +++ b/src/Stripe.net/Entities/PaymentAttemptRecords/PaymentAttemptRecordPaymentMethodDetailsCrypto.cs @@ -17,7 +17,7 @@ public class PaymentAttemptRecordPaymentMethodDetailsCrypto : StripeEntity /// The blockchain network that the transaction was sent on. - /// One of: base, ethereum, polygon, or solana. + /// One of: base, ethereum, polygon, solana, or tempo. /// [JsonProperty("network")] [STJS.JsonPropertyName("network")] diff --git a/src/Stripe.net/Entities/PaymentAttemptRecords/PaymentAttemptRecordPaymentMethodDetailsUpi.cs b/src/Stripe.net/Entities/PaymentAttemptRecords/PaymentAttemptRecordPaymentMethodDetailsUpi.cs new file mode 100644 index 0000000000..1fbc699233 --- /dev/null +++ b/src/Stripe.net/Entities/PaymentAttemptRecords/PaymentAttemptRecordPaymentMethodDetailsUpi.cs @@ -0,0 +1,18 @@ +// File generated from our OpenAPI spec +namespace Stripe +{ + using Newtonsoft.Json; + using Stripe.Infrastructure; + using STJS = System.Text.Json.Serialization; + + [STJS.JsonConverter(typeof(STJStripeEntityConverter))] + public class PaymentAttemptRecordPaymentMethodDetailsUpi : StripeEntity + { + /// + /// Customer's unique Virtual Payment Address. + /// + [JsonProperty("vpa")] + [STJS.JsonPropertyName("vpa")] + public string Vpa { get; set; } + } +} diff --git a/src/Stripe.net/Entities/PaymentIntents/PaymentIntent.cs b/src/Stripe.net/Entities/PaymentIntents/PaymentIntent.cs index fc7109b755..dc4b2f6aab 100644 --- a/src/Stripe.net/Entities/PaymentIntents/PaymentIntent.cs +++ b/src/Stripe.net/Entities/PaymentIntents/PaymentIntent.cs @@ -293,8 +293,8 @@ public Customer Customer /// naver_pay, nz_bank_account, oxxo, p24, pay_by_bank, /// payco, paynow, paypal, payto, pix, promptpay, /// revolut_pay, samsung_pay, satispay, sepa_debit, - /// sofort, swish, twint, us_bank_account, wechat_pay, or - /// zip. + /// sofort, swish, twint, upi, us_bank_account, + /// wechat_pay, or zip. /// [JsonProperty("excluded_payment_method_types")] [STJS.JsonPropertyName("excluded_payment_method_types")] @@ -352,8 +352,8 @@ public Charge LatestCharge #endregion /// - /// Has the value true if the object exists in live mode or the value false if - /// the object exists in test mode. + /// If the object exists in live mode, the value is true. If the object exists in + /// test mode, the value is false. /// [JsonProperty("livemode")] [STJS.JsonPropertyName("livemode")] diff --git a/src/Stripe.net/Entities/PaymentIntents/PaymentIntentNextAction.cs b/src/Stripe.net/Entities/PaymentIntents/PaymentIntentNextAction.cs index 627dfeb553..2333b2e460 100644 --- a/src/Stripe.net/Entities/PaymentIntents/PaymentIntentNextAction.cs +++ b/src/Stripe.net/Entities/PaymentIntents/PaymentIntentNextAction.cs @@ -71,6 +71,10 @@ public class PaymentIntentNextAction : StripeEntity [STJS.JsonPropertyName("type")] public string Type { get; set; } + [JsonProperty("upi_handle_redirect_or_display_qr_code")] + [STJS.JsonPropertyName("upi_handle_redirect_or_display_qr_code")] + public PaymentIntentNextActionUpiHandleRedirectOrDisplayQrCode UpiHandleRedirectOrDisplayQrCode { get; set; } + /// /// When confirming a PaymentIntent with Stripe.js, Stripe.js depends on the contents of /// this dictionary to invoke authentication flows. The shape of the contents is subject to diff --git a/src/Stripe.net/Entities/PaymentIntents/PaymentIntentNextActionUpiHandleRedirectOrDisplayQrCode.cs b/src/Stripe.net/Entities/PaymentIntents/PaymentIntentNextActionUpiHandleRedirectOrDisplayQrCode.cs new file mode 100644 index 0000000000..f91b9cfa16 --- /dev/null +++ b/src/Stripe.net/Entities/PaymentIntents/PaymentIntentNextActionUpiHandleRedirectOrDisplayQrCode.cs @@ -0,0 +1,22 @@ +// File generated from our OpenAPI spec +namespace Stripe +{ + using Newtonsoft.Json; + using Stripe.Infrastructure; + using STJS = System.Text.Json.Serialization; + + [STJS.JsonConverter(typeof(STJStripeEntityConverter))] + public class PaymentIntentNextActionUpiHandleRedirectOrDisplayQrCode : StripeEntity + { + /// + /// The URL to the hosted UPI instructions page, which allows customers to view the QR code. + /// + [JsonProperty("hosted_instructions_url")] + [STJS.JsonPropertyName("hosted_instructions_url")] + public string HostedInstructionsUrl { get; set; } + + [JsonProperty("qr_code")] + [STJS.JsonPropertyName("qr_code")] + public PaymentIntentNextActionUpiHandleRedirectOrDisplayQrCodeQrCode QrCode { get; set; } + } +} diff --git a/src/Stripe.net/Entities/PaymentIntents/PaymentIntentNextActionUpiHandleRedirectOrDisplayQrCodeQrCode.cs b/src/Stripe.net/Entities/PaymentIntents/PaymentIntentNextActionUpiHandleRedirectOrDisplayQrCodeQrCode.cs new file mode 100644 index 0000000000..44d43143ec --- /dev/null +++ b/src/Stripe.net/Entities/PaymentIntents/PaymentIntentNextActionUpiHandleRedirectOrDisplayQrCodeQrCode.cs @@ -0,0 +1,35 @@ +// File generated from our OpenAPI spec +namespace Stripe +{ + using System; + using Newtonsoft.Json; + using Stripe.Infrastructure; + using STJS = System.Text.Json.Serialization; + + [STJS.JsonConverter(typeof(STJStripeEntityConverter))] + public class PaymentIntentNextActionUpiHandleRedirectOrDisplayQrCodeQrCode : StripeEntity + { + /// + /// The date (unix timestamp) when the QR code expires. + /// + [JsonProperty("expires_at")] + [JsonConverter(typeof(UnixDateTimeConverter))] + [STJS.JsonPropertyName("expires_at")] + [STJS.JsonConverter(typeof(STJUnixDateTimeConverter))] + public DateTime ExpiresAt { get; set; } = Stripe.Infrastructure.DateTimeUtils.UnixEpoch; + + /// + /// The image_url_png string used to render QR code. + /// + [JsonProperty("image_url_png")] + [STJS.JsonPropertyName("image_url_png")] + public string ImageUrlPng { get; set; } + + /// + /// The image_url_svg string used to render QR code. + /// + [JsonProperty("image_url_svg")] + [STJS.JsonPropertyName("image_url_svg")] + public string ImageUrlSvg { get; set; } + } +} diff --git a/src/Stripe.net/Entities/PaymentIntents/PaymentIntentPaymentMethodOptions.cs b/src/Stripe.net/Entities/PaymentIntents/PaymentIntentPaymentMethodOptions.cs index c8a302c12f..81d76e9143 100644 --- a/src/Stripe.net/Entities/PaymentIntents/PaymentIntentPaymentMethodOptions.cs +++ b/src/Stripe.net/Entities/PaymentIntents/PaymentIntentPaymentMethodOptions.cs @@ -204,6 +204,10 @@ public class PaymentIntentPaymentMethodOptions : StripeEntity - /// Bank account verification method. + /// Bank account verification method. The default value is automatic. /// One of: automatic, instant, or microdeposits. /// [JsonProperty("verification_method")] diff --git a/src/Stripe.net/Entities/PaymentIntents/PaymentIntentPaymentMethodOptionsCardMandateOptions.cs b/src/Stripe.net/Entities/PaymentIntents/PaymentIntentPaymentMethodOptionsCardMandateOptions.cs index da15a98387..7f3a54fba7 100644 --- a/src/Stripe.net/Entities/PaymentIntents/PaymentIntentPaymentMethodOptionsCardMandateOptions.cs +++ b/src/Stripe.net/Entities/PaymentIntents/PaymentIntentPaymentMethodOptionsCardMandateOptions.cs @@ -11,7 +11,7 @@ namespace Stripe public class PaymentIntentPaymentMethodOptionsCardMandateOptions : StripeEntity { /// - /// Amount to be charged for future payments. + /// Amount to be charged for future payments, specified in the presentment currency. /// [JsonProperty("amount")] [STJS.JsonPropertyName("amount")] diff --git a/src/Stripe.net/Entities/PaymentIntents/PaymentIntentPaymentMethodOptionsUpi.cs b/src/Stripe.net/Entities/PaymentIntents/PaymentIntentPaymentMethodOptionsUpi.cs new file mode 100644 index 0000000000..3d821cf523 --- /dev/null +++ b/src/Stripe.net/Entities/PaymentIntents/PaymentIntentPaymentMethodOptionsUpi.cs @@ -0,0 +1,36 @@ +// File generated from our OpenAPI spec +namespace Stripe +{ + using Newtonsoft.Json; + using Stripe.Infrastructure; + using STJS = System.Text.Json.Serialization; + + [STJS.JsonConverter(typeof(STJStripeEntityConverter))] + public class PaymentIntentPaymentMethodOptionsUpi : StripeEntity + { + /// + /// Indicates that you intend to make future payments with this PaymentIntent's payment + /// method. + /// + /// If you provide a Customer with the PaymentIntent, you can use this parameter to attach the payment method to + /// the Customer after the PaymentIntent is confirmed and the customer completes any + /// required actions. If you don't provide a Customer, you can still attach the payment method to a + /// Customer after the transaction completes. + /// + /// If the payment method is card_present and isn't a digital wallet, Stripe creates + /// and attaches a generated_card + /// payment method representing the card to the Customer instead. + /// + /// When processing card payments, Stripe uses setup_future_usage to help you comply + /// with regional legislation and network rules, such as SCA. + /// One of: off_session, or on_session. + /// + [JsonProperty("setup_future_usage")] + [STJS.JsonPropertyName("setup_future_usage")] + public string SetupFutureUsage { get; set; } + } +} diff --git a/src/Stripe.net/Entities/PaymentIntents/PaymentIntentPaymentMethodOptionsUsBankAccount.cs b/src/Stripe.net/Entities/PaymentIntents/PaymentIntentPaymentMethodOptionsUsBankAccount.cs index 1fe6d39913..8499517475 100644 --- a/src/Stripe.net/Entities/PaymentIntents/PaymentIntentPaymentMethodOptionsUsBankAccount.cs +++ b/src/Stripe.net/Entities/PaymentIntents/PaymentIntentPaymentMethodOptionsUsBankAccount.cs @@ -59,7 +59,7 @@ public class PaymentIntentPaymentMethodOptionsUsBankAccount : StripeEntity - /// Bank account verification method. + /// Bank account verification method. The default value is automatic. /// One of: automatic, instant, or microdeposits. /// [JsonProperty("verification_method")] diff --git a/src/Stripe.net/Entities/PaymentLinks/PaymentLink.cs b/src/Stripe.net/Entities/PaymentLinks/PaymentLink.cs index faf99da0ff..6c58a271c7 100644 --- a/src/Stripe.net/Entities/PaymentLinks/PaymentLink.cs +++ b/src/Stripe.net/Entities/PaymentLinks/PaymentLink.cs @@ -176,8 +176,8 @@ public Application Application public StripeList LineItems { get; set; } /// - /// Has the value true if the object exists in live mode or the value false if - /// the object exists in test mode. + /// If the object exists in live mode, the value is true. If the object exists in + /// test mode, the value is false. /// [JsonProperty("livemode")] [STJS.JsonPropertyName("livemode")] @@ -270,7 +270,7 @@ public Account OnBehalfOf /// mobilepay, multibanco, oxxo, p24, pay_by_bank, /// paynow, paypal, payto, pix, promptpay, /// satispay, sepa_debit, sofort, swish, twint, - /// us_bank_account, wechat_pay, or zip. + /// upi, us_bank_account, wechat_pay, or zip. /// [JsonProperty("payment_method_types")] [STJS.JsonPropertyName("payment_method_types")] diff --git a/src/Stripe.net/Entities/PaymentMethodConfigurations/PaymentMethodConfiguration.cs b/src/Stripe.net/Entities/PaymentMethodConfigurations/PaymentMethodConfiguration.cs index 5739fca438..8c4f2f3a3e 100644 --- a/src/Stripe.net/Entities/PaymentMethodConfigurations/PaymentMethodConfiguration.cs +++ b/src/Stripe.net/Entities/PaymentMethodConfigurations/PaymentMethodConfiguration.cs @@ -195,8 +195,8 @@ public class PaymentMethodConfiguration : StripeEntity - /// Has the value true if the object exists in live mode or the value false if - /// the object exists in test mode. + /// If the object exists in live mode, the value is true. If the object exists in + /// test mode, the value is false. /// [JsonProperty("livemode")] [STJS.JsonPropertyName("livemode")] @@ -300,6 +300,10 @@ public class PaymentMethodConfiguration : StripeEntity + { + /// + /// Whether this payment method may be offered at checkout. True if + /// display_preference is on and the payment method's capability is active. + /// + [JsonProperty("available")] + [STJS.JsonPropertyName("available")] + public bool Available { get; set; } + + [JsonProperty("display_preference")] + [STJS.JsonPropertyName("display_preference")] + public PaymentMethodConfigurationUpiDisplayPreference DisplayPreference { get; set; } + } +} diff --git a/src/Stripe.net/Entities/PaymentMethodConfigurations/PaymentMethodConfigurationUpiDisplayPreference.cs b/src/Stripe.net/Entities/PaymentMethodConfigurations/PaymentMethodConfigurationUpiDisplayPreference.cs new file mode 100644 index 0000000000..d3f7a2b5cc --- /dev/null +++ b/src/Stripe.net/Entities/PaymentMethodConfigurations/PaymentMethodConfigurationUpiDisplayPreference.cs @@ -0,0 +1,35 @@ +// File generated from our OpenAPI spec +namespace Stripe +{ + using Newtonsoft.Json; + using Stripe.Infrastructure; + using STJS = System.Text.Json.Serialization; + + [STJS.JsonConverter(typeof(STJStripeEntityConverter))] + public class PaymentMethodConfigurationUpiDisplayPreference : StripeEntity + { + /// + /// For child configs, whether or not the account's preference will be observed. If + /// false, the parent configuration's default is used. + /// + [JsonProperty("overridable")] + [STJS.JsonPropertyName("overridable")] + public bool? Overridable { get; set; } + + /// + /// The account's display preference. + /// One of: none, off, or on. + /// + [JsonProperty("preference")] + [STJS.JsonPropertyName("preference")] + public string Preference { get; set; } + + /// + /// The effective display preference value. + /// One of: off, or on. + /// + [JsonProperty("value")] + [STJS.JsonPropertyName("value")] + public string Value { get; set; } + } +} diff --git a/src/Stripe.net/Entities/PaymentMethodDomains/PaymentMethodDomain.cs b/src/Stripe.net/Entities/PaymentMethodDomains/PaymentMethodDomain.cs index 6667845b39..71ba651f13 100644 --- a/src/Stripe.net/Entities/PaymentMethodDomains/PaymentMethodDomain.cs +++ b/src/Stripe.net/Entities/PaymentMethodDomains/PaymentMethodDomain.cs @@ -92,8 +92,8 @@ public class PaymentMethodDomain : StripeEntity, IHasId, IH public PaymentMethodDomainLink Link { get; set; } /// - /// Has the value true if the object exists in live mode or the value false if - /// the object exists in test mode. + /// If the object exists in live mode, the value is true. If the object exists in + /// test mode, the value is false. /// [JsonProperty("livemode")] [STJS.JsonPropertyName("livemode")] diff --git a/src/Stripe.net/Entities/PaymentMethods/PaymentMethod.cs b/src/Stripe.net/Entities/PaymentMethods/PaymentMethod.cs index bdee458a6d..64b6ec0c64 100644 --- a/src/Stripe.net/Entities/PaymentMethods/PaymentMethod.cs +++ b/src/Stripe.net/Entities/PaymentMethods/PaymentMethod.cs @@ -216,8 +216,8 @@ public Customer Customer public PaymentMethodLink Link { get; set; } /// - /// Has the value true if the object exists in live mode or the value false if - /// the object exists in test mode. + /// If the object exists in live mode, the value is true. If the object exists in + /// test mode, the value is false. /// [JsonProperty("livemode")] [STJS.JsonPropertyName("livemode")] @@ -339,13 +339,17 @@ public Customer Customer /// naver_pay, nz_bank_account, oxxo, p24, pay_by_bank, /// payco, paynow, paypal, payto, pix, promptpay, /// revolut_pay, samsung_pay, satispay, sepa_debit, - /// sofort, swish, twint, us_bank_account, wechat_pay, or - /// zip. + /// sofort, swish, twint, upi, us_bank_account, + /// wechat_pay, or zip. /// [JsonProperty("type")] [STJS.JsonPropertyName("type")] public string Type { get; set; } + [JsonProperty("upi")] + [STJS.JsonPropertyName("upi")] + public PaymentMethodUpi Upi { get; set; } + [JsonProperty("us_bank_account")] [STJS.JsonPropertyName("us_bank_account")] public PaymentMethodUsBankAccount UsBankAccount { get; set; } diff --git a/src/Stripe.net/Entities/PaymentMethods/PaymentMethodUpi.cs b/src/Stripe.net/Entities/PaymentMethods/PaymentMethodUpi.cs new file mode 100644 index 0000000000..9ec9fa11f1 --- /dev/null +++ b/src/Stripe.net/Entities/PaymentMethods/PaymentMethodUpi.cs @@ -0,0 +1,18 @@ +// File generated from our OpenAPI spec +namespace Stripe +{ + using Newtonsoft.Json; + using Stripe.Infrastructure; + using STJS = System.Text.Json.Serialization; + + [STJS.JsonConverter(typeof(STJStripeEntityConverter))] + public class PaymentMethodUpi : StripeEntity + { + /// + /// Customer's unique Virtual Payment Address. + /// + [JsonProperty("vpa")] + [STJS.JsonPropertyName("vpa")] + public string Vpa { get; set; } + } +} diff --git a/src/Stripe.net/Entities/PaymentRecords/PaymentRecord.cs b/src/Stripe.net/Entities/PaymentRecords/PaymentRecord.cs index 23e2b3675c..81fcf0c0f7 100644 --- a/src/Stripe.net/Entities/PaymentRecords/PaymentRecord.cs +++ b/src/Stripe.net/Entities/PaymentRecords/PaymentRecord.cs @@ -126,8 +126,8 @@ public class PaymentRecord : StripeEntity, IHasId, IHasMetadata, public string LatestPaymentAttemptRecord { get; set; } /// - /// Has the value true if the object exists in live mode or the value false if - /// the object exists in test mode. + /// If the object exists in live mode, the value is true. If the object exists in + /// test mode, the value is false. /// [JsonProperty("livemode")] [STJS.JsonPropertyName("livemode")] diff --git a/src/Stripe.net/Entities/PaymentRecords/PaymentRecordPaymentMethodDetails.cs b/src/Stripe.net/Entities/PaymentRecords/PaymentRecordPaymentMethodDetails.cs index 4714c63d8c..39ce60636a 100644 --- a/src/Stripe.net/Entities/PaymentRecords/PaymentRecordPaymentMethodDetails.cs +++ b/src/Stripe.net/Entities/PaymentRecords/PaymentRecordPaymentMethodDetails.cs @@ -258,6 +258,10 @@ public class PaymentRecordPaymentMethodDetails : StripeEntity [JsonProperty("exp_month")] [STJS.JsonPropertyName("exp_month")] - public long ExpMonth { get; set; } + public long? ExpMonth { get; set; } /// /// Four-digit number representing the card's expiration year. /// [JsonProperty("exp_year")] [STJS.JsonPropertyName("exp_year")] - public long ExpYear { get; set; } + public long? ExpYear { get; set; } /// /// Uniquely identifies this particular card number. You can use this attribute to check @@ -129,7 +129,7 @@ public class PaymentRecordPaymentMethodDetailsCard : StripeEntity [JsonProperty("moto")] [STJS.JsonPropertyName("moto")] - public bool Moto { get; set; } + public bool? Moto { get; set; } /// /// Identifies which network this charge was processed on. Can be amex, diff --git a/src/Stripe.net/Entities/PaymentRecords/PaymentRecordPaymentMethodDetailsCardThreeDSecure.cs b/src/Stripe.net/Entities/PaymentRecords/PaymentRecordPaymentMethodDetailsCardThreeDSecure.cs index e7de0ceb20..ff6d7c611b 100644 --- a/src/Stripe.net/Entities/PaymentRecords/PaymentRecordPaymentMethodDetailsCardThreeDSecure.cs +++ b/src/Stripe.net/Entities/PaymentRecords/PaymentRecordPaymentMethodDetailsCardThreeDSecure.cs @@ -17,6 +17,38 @@ public class PaymentRecordPaymentMethodDetailsCardThreeDSecure : StripeEntity + /// The 3D Secure cryptogram, also known as the "authentication value" (AAV, CAVV or AEVV). + /// + [JsonProperty("cryptogram")] + [STJS.JsonPropertyName("cryptogram")] + public string Cryptogram { get; set; } + + /// + /// The Electronic Commerce Indicator (ECI). A protocol-level field indicating what degree + /// of authentication was performed. + /// One of: 01, 02, 03, 04, 05, 06, or 07. + /// + [JsonProperty("electronic_commerce_indicator")] + [STJS.JsonPropertyName("electronic_commerce_indicator")] + public string ElectronicCommerceIndicator { get; set; } + + /// + /// The exemption requested via 3DS and accepted by the issuer at authentication time. + /// One of: low_risk, or none. + /// + [JsonProperty("exemption_indicator")] + [STJS.JsonPropertyName("exemption_indicator")] + public string ExemptionIndicator { get; set; } + + /// + /// Whether Stripe requested the value of exemption_indicator in the transaction. + /// This will depend on the outcome of Stripe's internal risk assessment. + /// + [JsonProperty("exemption_indicator_applied")] + [STJS.JsonPropertyName("exemption_indicator_applied")] + public bool? ExemptionIndicatorApplied { get; set; } + /// /// Indicates the outcome of 3D Secure authentication. /// One of: attempt_acknowledged, authenticated, exempted, diff --git a/src/Stripe.net/Entities/PaymentRecords/PaymentRecordPaymentMethodDetailsCrypto.cs b/src/Stripe.net/Entities/PaymentRecords/PaymentRecordPaymentMethodDetailsCrypto.cs index b12d486fde..885dc0f562 100644 --- a/src/Stripe.net/Entities/PaymentRecords/PaymentRecordPaymentMethodDetailsCrypto.cs +++ b/src/Stripe.net/Entities/PaymentRecords/PaymentRecordPaymentMethodDetailsCrypto.cs @@ -17,7 +17,7 @@ public class PaymentRecordPaymentMethodDetailsCrypto : StripeEntity /// The blockchain network that the transaction was sent on. - /// One of: base, ethereum, polygon, or solana. + /// One of: base, ethereum, polygon, solana, or tempo. /// [JsonProperty("network")] [STJS.JsonPropertyName("network")] diff --git a/src/Stripe.net/Entities/PaymentRecords/PaymentRecordPaymentMethodDetailsUpi.cs b/src/Stripe.net/Entities/PaymentRecords/PaymentRecordPaymentMethodDetailsUpi.cs new file mode 100644 index 0000000000..8532c46f19 --- /dev/null +++ b/src/Stripe.net/Entities/PaymentRecords/PaymentRecordPaymentMethodDetailsUpi.cs @@ -0,0 +1,18 @@ +// File generated from our OpenAPI spec +namespace Stripe +{ + using Newtonsoft.Json; + using Stripe.Infrastructure; + using STJS = System.Text.Json.Serialization; + + [STJS.JsonConverter(typeof(STJStripeEntityConverter))] + public class PaymentRecordPaymentMethodDetailsUpi : StripeEntity + { + /// + /// Customer's unique Virtual Payment Address. + /// + [JsonProperty("vpa")] + [STJS.JsonPropertyName("vpa")] + public string Vpa { get; set; } + } +} diff --git a/src/Stripe.net/Entities/Payouts/Payout.cs b/src/Stripe.net/Entities/Payouts/Payout.cs index 44e702f8e1..062ebf0147 100644 --- a/src/Stripe.net/Entities/Payouts/Payout.cs +++ b/src/Stripe.net/Entities/Payouts/Payout.cs @@ -262,8 +262,8 @@ public BalanceTransaction FailureBalanceTransaction public string FailureMessage { get; set; } /// - /// Has the value true if the object exists in live mode or the value false if - /// the object exists in test mode. + /// If the object exists in live mode, the value is true. If the object exists in + /// test mode, the value is false. /// [JsonProperty("livemode")] [STJS.JsonPropertyName("livemode")] diff --git a/src/Stripe.net/Entities/Plans/Plan.cs b/src/Stripe.net/Entities/Plans/Plan.cs index 09c559f4e1..559c2d5ea9 100644 --- a/src/Stripe.net/Entities/Plans/Plan.cs +++ b/src/Stripe.net/Entities/Plans/Plan.cs @@ -127,8 +127,8 @@ public class Plan : StripeEntity, IHasId, IHasMetadata, IHasObject public long IntervalCount { get; set; } /// - /// Has the value true if the object exists in live mode or the value false if - /// the object exists in test mode. + /// If the object exists in live mode, the value is true. If the object exists in + /// test mode, the value is false. /// [JsonProperty("livemode")] [STJS.JsonPropertyName("livemode")] diff --git a/src/Stripe.net/Entities/Prices/Price.cs b/src/Stripe.net/Entities/Prices/Price.cs index 3744f6024a..70ec34e6c6 100644 --- a/src/Stripe.net/Entities/Prices/Price.cs +++ b/src/Stripe.net/Entities/Prices/Price.cs @@ -107,8 +107,8 @@ public class Price : StripeEntity, IHasId, IHasMetadata, IHasObject public bool? Deleted { get; set; } /// - /// Has the value true if the object exists in live mode or the value false if - /// the object exists in test mode. + /// If the object exists in live mode, the value is true. If the object exists in + /// test mode, the value is false. /// [JsonProperty("livemode")] [STJS.JsonPropertyName("livemode")] diff --git a/src/Stripe.net/Entities/ProductFeatures/ProductFeature.cs b/src/Stripe.net/Entities/ProductFeatures/ProductFeature.cs index f8efef874e..a82ff027b8 100644 --- a/src/Stripe.net/Entities/ProductFeatures/ProductFeature.cs +++ b/src/Stripe.net/Entities/ProductFeatures/ProductFeature.cs @@ -45,8 +45,8 @@ public class ProductFeature : StripeEntity, IHasId, IHasObject public Entitlements.Feature EntitlementFeature { get; set; } /// - /// Has the value true if the object exists in live mode or the value false if - /// the object exists in test mode. + /// If the object exists in live mode, the value is true. If the object exists in + /// test mode, the value is false. /// [JsonProperty("livemode")] [STJS.JsonPropertyName("livemode")] diff --git a/src/Stripe.net/Entities/Products/Product.cs b/src/Stripe.net/Entities/Products/Product.cs index d2e1c04f9b..3562656f70 100644 --- a/src/Stripe.net/Entities/Products/Product.cs +++ b/src/Stripe.net/Entities/Products/Product.cs @@ -118,8 +118,8 @@ public Price DefaultPrice public List Images { get; set; } /// - /// Has the value true if the object exists in live mode or the value false if - /// the object exists in test mode. + /// If the object exists in live mode, the value is true. If the object exists in + /// test mode, the value is false. /// [JsonProperty("livemode")] [STJS.JsonPropertyName("livemode")] diff --git a/src/Stripe.net/Entities/PromotionCodes/PromotionCode.cs b/src/Stripe.net/Entities/PromotionCodes/PromotionCode.cs index 6aa9eb07a0..8363ad3eeb 100644 --- a/src/Stripe.net/Entities/PromotionCodes/PromotionCode.cs +++ b/src/Stripe.net/Entities/PromotionCodes/PromotionCode.cs @@ -112,8 +112,8 @@ public Customer Customer public DateTime? ExpiresAt { get; set; } /// - /// Has the value true if the object exists in live mode or the value false if - /// the object exists in test mode. + /// If the object exists in live mode, the value is true. If the object exists in + /// test mode, the value is false. /// [JsonProperty("livemode")] [STJS.JsonPropertyName("livemode")] diff --git a/src/Stripe.net/Entities/Quotes/Quote.cs b/src/Stripe.net/Entities/Quotes/Quote.cs index 52ee056760..9bc02fbf62 100644 --- a/src/Stripe.net/Entities/Quotes/Quote.cs +++ b/src/Stripe.net/Entities/Quotes/Quote.cs @@ -334,8 +334,8 @@ public Invoice Invoice public StripeList LineItems { get; set; } /// - /// Has the value true if the object exists in live mode or the value false if - /// the object exists in test mode. + /// If the object exists in live mode, the value is true. If the object exists in + /// test mode, the value is false. /// [JsonProperty("livemode")] [STJS.JsonPropertyName("livemode")] diff --git a/src/Stripe.net/Entities/Radar/EarlyFraudWarnings/EarlyFraudWarning.cs b/src/Stripe.net/Entities/Radar/EarlyFraudWarnings/EarlyFraudWarning.cs index 302bd2bc49..e233d64f74 100644 --- a/src/Stripe.net/Entities/Radar/EarlyFraudWarnings/EarlyFraudWarning.cs +++ b/src/Stripe.net/Entities/Radar/EarlyFraudWarnings/EarlyFraudWarning.cs @@ -95,8 +95,8 @@ public Charge Charge public string FraudType { get; set; } /// - /// Has the value true if the object exists in live mode or the value false if - /// the object exists in test mode. + /// If the object exists in live mode, the value is true. If the object exists in + /// test mode, the value is false. /// [JsonProperty("livemode")] [STJS.JsonPropertyName("livemode")] diff --git a/src/Stripe.net/Entities/Radar/PaymentEvaluations/PaymentEvaluation.cs b/src/Stripe.net/Entities/Radar/PaymentEvaluations/PaymentEvaluation.cs index 9287c11a47..4e90134737 100644 --- a/src/Stripe.net/Entities/Radar/PaymentEvaluations/PaymentEvaluation.cs +++ b/src/Stripe.net/Entities/Radar/PaymentEvaluations/PaymentEvaluation.cs @@ -63,15 +63,8 @@ public class PaymentEvaluation : StripeEntity, IHasId, IHasMe public List Events { get; set; } /// - /// Collection of scores and insights for this payment evaluation. - /// - [JsonProperty("insights")] - [STJS.JsonPropertyName("insights")] - public PaymentEvaluationInsights Insights { get; set; } - - /// - /// Has the value true if the object exists in live mode or the value false if - /// the object exists in test mode. + /// If the object exists in live mode, the value is true. If the object exists in + /// test mode, the value is false. /// [JsonProperty("livemode")] [STJS.JsonPropertyName("livemode")] @@ -99,5 +92,21 @@ public class PaymentEvaluation : StripeEntity, IHasId, IHasMe [JsonProperty("payment_details")] [STJS.JsonPropertyName("payment_details")] public PaymentEvaluationPaymentDetails PaymentDetails { get; set; } + + /// + /// Recommended action based on the score of the fraudulent_payment signal. Possible values + /// are block and continue. + /// One of: block, or continue. + /// + [JsonProperty("recommended_action")] + [STJS.JsonPropertyName("recommended_action")] + public string RecommendedAction { get; set; } + + /// + /// Collection of signals for this payment evaluation. + /// + [JsonProperty("signals")] + [STJS.JsonPropertyName("signals")] + public PaymentEvaluationSignals Signals { get; set; } } } diff --git a/src/Stripe.net/Entities/Radar/PaymentEvaluations/PaymentEvaluationInsights.cs b/src/Stripe.net/Entities/Radar/PaymentEvaluations/PaymentEvaluationInsights.cs deleted file mode 100644 index 4b27fb754c..0000000000 --- a/src/Stripe.net/Entities/Radar/PaymentEvaluations/PaymentEvaluationInsights.cs +++ /dev/null @@ -1,28 +0,0 @@ -// File generated from our OpenAPI spec -namespace Stripe.Radar -{ - using System; - using Newtonsoft.Json; - using Stripe.Infrastructure; - using STJS = System.Text.Json.Serialization; - - [STJS.JsonConverter(typeof(STJStripeEntityConverter))] - public class PaymentEvaluationInsights : StripeEntity - { - /// - /// The timestamp when the evaluation was performed. - /// - [JsonProperty("evaluated_at")] - [JsonConverter(typeof(UnixDateTimeConverter))] - [STJS.JsonPropertyName("evaluated_at")] - [STJS.JsonConverter(typeof(STJUnixDateTimeConverter))] - public DateTime EvaluatedAt { get; set; } = Stripe.Infrastructure.DateTimeUtils.UnixEpoch; - - /// - /// Scores, insights and recommended action for one scorer for this PaymentEvaluation. - /// - [JsonProperty("fraudulent_dispute")] - [STJS.JsonPropertyName("fraudulent_dispute")] - public PaymentEvaluationInsightsFraudulentDispute FraudulentDispute { get; set; } - } -} diff --git a/src/Stripe.net/Entities/Radar/PaymentEvaluations/PaymentEvaluationInsightsFraudulentDispute.cs b/src/Stripe.net/Entities/Radar/PaymentEvaluations/PaymentEvaluationInsightsFraudulentDispute.cs deleted file mode 100644 index 8c48264693..0000000000 --- a/src/Stripe.net/Entities/Radar/PaymentEvaluations/PaymentEvaluationInsightsFraudulentDispute.cs +++ /dev/null @@ -1,28 +0,0 @@ -// File generated from our OpenAPI spec -namespace Stripe.Radar -{ - using Newtonsoft.Json; - using Stripe.Infrastructure; - using STJS = System.Text.Json.Serialization; - - [STJS.JsonConverter(typeof(STJStripeEntityConverter))] - public class PaymentEvaluationInsightsFraudulentDispute : StripeEntity - { - /// - /// Recommended action based on the risk score. Possible values are block and - /// continue. - /// One of: block, or continue. - /// - [JsonProperty("recommended_action")] - [STJS.JsonPropertyName("recommended_action")] - public string RecommendedAction { get; set; } - - /// - /// Stripe Radar’s evaluation of the risk level of the payment. Possible values for - /// evaluated payments are between 0 and 100, with higher scores indicating higher risk. - /// - [JsonProperty("risk_score")] - [STJS.JsonPropertyName("risk_score")] - public long RiskScore { get; set; } - } -} diff --git a/src/Stripe.net/Entities/Radar/PaymentEvaluations/PaymentEvaluationSignals.cs b/src/Stripe.net/Entities/Radar/PaymentEvaluations/PaymentEvaluationSignals.cs new file mode 100644 index 0000000000..ae176ebb44 --- /dev/null +++ b/src/Stripe.net/Entities/Radar/PaymentEvaluations/PaymentEvaluationSignals.cs @@ -0,0 +1,18 @@ +// File generated from our OpenAPI spec +namespace Stripe.Radar +{ + using Newtonsoft.Json; + using Stripe.Infrastructure; + using STJS = System.Text.Json.Serialization; + + [STJS.JsonConverter(typeof(STJStripeEntityConverter))] + public class PaymentEvaluationSignals : StripeEntity + { + /// + /// A payment evaluation signal with evaluated_at, risk_level, and score fields. + /// + [JsonProperty("fraudulent_payment")] + [STJS.JsonPropertyName("fraudulent_payment")] + public PaymentEvaluationSignalsFraudulentPayment FraudulentPayment { get; set; } + } +} diff --git a/src/Stripe.net/Entities/Radar/PaymentEvaluations/PaymentEvaluationSignalsFraudulentPayment.cs b/src/Stripe.net/Entities/Radar/PaymentEvaluations/PaymentEvaluationSignalsFraudulentPayment.cs new file mode 100644 index 0000000000..afe505aa07 --- /dev/null +++ b/src/Stripe.net/Entities/Radar/PaymentEvaluations/PaymentEvaluationSignalsFraudulentPayment.cs @@ -0,0 +1,39 @@ +// File generated from our OpenAPI spec +namespace Stripe.Radar +{ + using System; + using Newtonsoft.Json; + using Stripe.Infrastructure; + using STJS = System.Text.Json.Serialization; + + [STJS.JsonConverter(typeof(STJStripeEntityConverter))] + public class PaymentEvaluationSignalsFraudulentPayment : StripeEntity + { + /// + /// The time when this signal was evaluated. + /// + [JsonProperty("evaluated_at")] + [JsonConverter(typeof(UnixDateTimeConverter))] + [STJS.JsonPropertyName("evaluated_at")] + [STJS.JsonConverter(typeof(STJUnixDateTimeConverter))] + public DateTime EvaluatedAt { get; set; } = Stripe.Infrastructure.DateTimeUtils.UnixEpoch; + + /// + /// Risk level of this signal, based on the score. + /// One of: elevated, highest, or normal. + /// + [JsonProperty("risk_level")] + [STJS.JsonPropertyName("risk_level")] + public string RiskLevel { get; set; } + + /// + /// Score for this insight. Possible values for evaluated payments are -1 and any value + /// between 0 and 100. The value is returned with two decimal places. A score of -1 + /// indicates a test integration and higher scores indicate a higher likelihood of the + /// signal being true. + /// + [JsonProperty("score")] + [STJS.JsonPropertyName("score")] + public decimal Score { get; set; } + } +} diff --git a/src/Stripe.net/Entities/Radar/ValueListItems/ValueListItem.cs b/src/Stripe.net/Entities/Radar/ValueListItems/ValueListItem.cs index ec4a09b7c1..4e5c029c35 100644 --- a/src/Stripe.net/Entities/Radar/ValueListItems/ValueListItem.cs +++ b/src/Stripe.net/Entities/Radar/ValueListItems/ValueListItem.cs @@ -55,8 +55,8 @@ public class ValueListItem : StripeEntity, IHasId, IHasObject public bool? Deleted { get; set; } /// - /// Has the value true if the object exists in live mode or the value false if - /// the object exists in test mode. + /// If the object exists in live mode, the value is true. If the object exists in + /// test mode, the value is false. /// [JsonProperty("livemode")] [STJS.JsonPropertyName("livemode")] diff --git a/src/Stripe.net/Entities/Radar/ValueLists/ValueList.cs b/src/Stripe.net/Entities/Radar/ValueLists/ValueList.cs index 1ef5668e4a..a339fedce5 100644 --- a/src/Stripe.net/Entities/Radar/ValueLists/ValueList.cs +++ b/src/Stripe.net/Entities/Radar/ValueLists/ValueList.cs @@ -63,12 +63,13 @@ public class ValueList : StripeEntity, IHasId, IHasMetadata, IHasObje /// /// The type of items in the value list. One of card_fingerprint, card_bin, - /// email, ip_address, country, string, - /// case_sensitive_string, customer_id, sepa_debit_fingerprint, or - /// us_bank_account_fingerprint. + /// crypto_fingerprint, email, ip_address, country, + /// string, case_sensitive_string, customer_id, + /// sepa_debit_fingerprint, or us_bank_account_fingerprint. /// One of: card_bin, card_fingerprint, case_sensitive_string, - /// country, customer_id, email, ip_address, - /// sepa_debit_fingerprint, string, or us_bank_account_fingerprint. + /// country, crypto_fingerprint, customer_id, email, + /// ip_address, sepa_debit_fingerprint, string, or + /// us_bank_account_fingerprint. /// [JsonProperty("item_type")] [STJS.JsonPropertyName("item_type")] @@ -82,8 +83,8 @@ public class ValueList : StripeEntity, IHasId, IHasMetadata, IHasObje public StripeList ListItems { get; set; } /// - /// Has the value true if the object exists in live mode or the value false if - /// the object exists in test mode. + /// If the object exists in live mode, the value is true. If the object exists in + /// test mode, the value is false. /// [JsonProperty("livemode")] [STJS.JsonPropertyName("livemode")] diff --git a/src/Stripe.net/Entities/Reporting/ReportTypes/ReportType.cs b/src/Stripe.net/Entities/Reporting/ReportTypes/ReportType.cs index 2ebaf358c5..e7951341e1 100644 --- a/src/Stripe.net/Entities/Reporting/ReportTypes/ReportType.cs +++ b/src/Stripe.net/Entities/Reporting/ReportTypes/ReportType.cs @@ -66,8 +66,8 @@ public class ReportType : StripeEntity, IHasId, IHasObject public List DefaultColumns { get; set; } /// - /// Has the value true if the object exists in live mode or the value false if - /// the object exists in test mode. + /// If the object exists in live mode, the value is true. If the object exists in + /// test mode, the value is false. /// [JsonProperty("livemode")] [STJS.JsonPropertyName("livemode")] diff --git a/src/Stripe.net/Entities/Reserve/Holds/Hold.cs b/src/Stripe.net/Entities/Reserve/Holds/Hold.cs index a8a198f221..fe58e86c74 100644 --- a/src/Stripe.net/Entities/Reserve/Holds/Hold.cs +++ b/src/Stripe.net/Entities/Reserve/Holds/Hold.cs @@ -78,8 +78,8 @@ public class Hold : StripeEntity, IHasId, IHasMetadata, IHasObject public bool IsReleasable { get; set; } /// - /// Has the value true if the object exists in live mode or the value false if - /// the object exists in test mode. + /// If the object exists in live mode, the value is true. If the object exists in + /// test mode, the value is false. /// [JsonProperty("livemode")] [STJS.JsonPropertyName("livemode")] diff --git a/src/Stripe.net/Entities/Reserve/Plans/Plan.cs b/src/Stripe.net/Entities/Reserve/Plans/Plan.cs index 338e56b6cd..7558c78fa9 100644 --- a/src/Stripe.net/Entities/Reserve/Plans/Plan.cs +++ b/src/Stripe.net/Entities/Reserve/Plans/Plan.cs @@ -69,8 +69,8 @@ public class Plan : StripeEntity, IHasId, IHasMetadata, IHasObject public PlanFixedRelease FixedRelease { get; set; } /// - /// Has the value true if the object exists in live mode or the value false if - /// the object exists in test mode. + /// If the object exists in live mode, the value is true. If the object exists in + /// test mode, the value is false. /// [JsonProperty("livemode")] [STJS.JsonPropertyName("livemode")] diff --git a/src/Stripe.net/Entities/Reserve/Releases/Release.cs b/src/Stripe.net/Entities/Reserve/Releases/Release.cs index 5041108522..fc347bd622 100644 --- a/src/Stripe.net/Entities/Reserve/Releases/Release.cs +++ b/src/Stripe.net/Entities/Reserve/Releases/Release.cs @@ -62,8 +62,8 @@ public class Release : StripeEntity, IHasId, IHasMetadata, IHasObject public string Currency { get; set; } /// - /// Has the value true if the object exists in live mode or the value false if - /// the object exists in test mode. + /// If the object exists in live mode, the value is true. If the object exists in + /// test mode, the value is false. /// [JsonProperty("livemode")] [STJS.JsonPropertyName("livemode")] diff --git a/src/Stripe.net/Entities/Reviews/Review.cs b/src/Stripe.net/Entities/Reviews/Review.cs index 327f609eda..a391af5c12 100644 --- a/src/Stripe.net/Entities/Reviews/Review.cs +++ b/src/Stripe.net/Entities/Reviews/Review.cs @@ -109,8 +109,8 @@ public Charge Charge public ReviewLocation IpAddressLocation { get; set; } /// - /// Has the value true if the object exists in live mode or the value false if - /// the object exists in test mode. + /// If the object exists in live mode, the value is true. If the object exists in + /// test mode, the value is false. /// [JsonProperty("livemode")] [STJS.JsonPropertyName("livemode")] diff --git a/src/Stripe.net/Entities/SetupAttempts/SetupAttempt.cs b/src/Stripe.net/Entities/SetupAttempts/SetupAttempt.cs index f467b2b1d4..fcc33c3ef1 100644 --- a/src/Stripe.net/Entities/SetupAttempts/SetupAttempt.cs +++ b/src/Stripe.net/Entities/SetupAttempts/SetupAttempt.cs @@ -153,8 +153,8 @@ public Customer Customer public List FlowDirections { get; set; } /// - /// Has the value true if the object exists in live mode or the value false if - /// the object exists in test mode. + /// If the object exists in live mode, the value is true. If the object exists in + /// test mode, the value is false. /// [JsonProperty("livemode")] [STJS.JsonPropertyName("livemode")] diff --git a/src/Stripe.net/Entities/SetupAttempts/SetupAttemptPaymentMethodDetails.cs b/src/Stripe.net/Entities/SetupAttempts/SetupAttemptPaymentMethodDetails.cs index 92312d1d9f..ac31d68c73 100644 --- a/src/Stripe.net/Entities/SetupAttempts/SetupAttemptPaymentMethodDetails.cs +++ b/src/Stripe.net/Entities/SetupAttempts/SetupAttemptPaymentMethodDetails.cs @@ -101,6 +101,10 @@ public class SetupAttemptPaymentMethodDetails : StripeEntity + { + } +} diff --git a/src/Stripe.net/Entities/SetupIntents/SetupIntent.cs b/src/Stripe.net/Entities/SetupIntents/SetupIntent.cs index 16e367610a..612f5dac78 100644 --- a/src/Stripe.net/Entities/SetupIntents/SetupIntent.cs +++ b/src/Stripe.net/Entities/SetupIntents/SetupIntent.cs @@ -215,8 +215,8 @@ public Customer Customer /// naver_pay, nz_bank_account, oxxo, p24, pay_by_bank, /// payco, paynow, paypal, payto, pix, promptpay, /// revolut_pay, samsung_pay, satispay, sepa_debit, - /// sofort, swish, twint, us_bank_account, wechat_pay, or - /// zip. + /// sofort, swish, twint, upi, us_bank_account, + /// wechat_pay, or zip. /// [JsonProperty("excluded_payment_method_types")] [STJS.JsonPropertyName("excluded_payment_method_types")] @@ -279,8 +279,8 @@ public SetupAttempt LatestAttempt #endregion /// - /// Has the value true if the object exists in live mode or the value false if - /// the object exists in test mode. + /// If the object exists in live mode, the value is true. If the object exists in + /// test mode, the value is false. /// [JsonProperty("livemode")] [STJS.JsonPropertyName("livemode")] diff --git a/src/Stripe.net/Entities/SetupIntents/SetupIntentNextAction.cs b/src/Stripe.net/Entities/SetupIntents/SetupIntentNextAction.cs index 9f0831050d..529ac95488 100644 --- a/src/Stripe.net/Entities/SetupIntents/SetupIntentNextAction.cs +++ b/src/Stripe.net/Entities/SetupIntents/SetupIntentNextAction.cs @@ -27,6 +27,10 @@ public class SetupIntentNextAction : StripeEntity [STJS.JsonPropertyName("type")] public string Type { get; set; } + [JsonProperty("upi_handle_redirect_or_display_qr_code")] + [STJS.JsonPropertyName("upi_handle_redirect_or_display_qr_code")] + public SetupIntentNextActionUpiHandleRedirectOrDisplayQrCode UpiHandleRedirectOrDisplayQrCode { get; set; } + /// /// When confirming a SetupIntent with Stripe.js, Stripe.js depends on the contents of this /// dictionary to invoke authentication flows. The shape of the contents is subject to diff --git a/src/Stripe.net/Entities/SetupIntents/SetupIntentNextActionUpiHandleRedirectOrDisplayQrCode.cs b/src/Stripe.net/Entities/SetupIntents/SetupIntentNextActionUpiHandleRedirectOrDisplayQrCode.cs new file mode 100644 index 0000000000..74b5036acc --- /dev/null +++ b/src/Stripe.net/Entities/SetupIntents/SetupIntentNextActionUpiHandleRedirectOrDisplayQrCode.cs @@ -0,0 +1,22 @@ +// File generated from our OpenAPI spec +namespace Stripe +{ + using Newtonsoft.Json; + using Stripe.Infrastructure; + using STJS = System.Text.Json.Serialization; + + [STJS.JsonConverter(typeof(STJStripeEntityConverter))] + public class SetupIntentNextActionUpiHandleRedirectOrDisplayQrCode : StripeEntity + { + /// + /// The URL to the hosted UPI instructions page, which allows customers to view the QR code. + /// + [JsonProperty("hosted_instructions_url")] + [STJS.JsonPropertyName("hosted_instructions_url")] + public string HostedInstructionsUrl { get; set; } + + [JsonProperty("qr_code")] + [STJS.JsonPropertyName("qr_code")] + public SetupIntentNextActionUpiHandleRedirectOrDisplayQrCodeQrCode QrCode { get; set; } + } +} diff --git a/src/Stripe.net/Entities/SetupIntents/SetupIntentNextActionUpiHandleRedirectOrDisplayQrCodeQrCode.cs b/src/Stripe.net/Entities/SetupIntents/SetupIntentNextActionUpiHandleRedirectOrDisplayQrCodeQrCode.cs new file mode 100644 index 0000000000..c63fe17723 --- /dev/null +++ b/src/Stripe.net/Entities/SetupIntents/SetupIntentNextActionUpiHandleRedirectOrDisplayQrCodeQrCode.cs @@ -0,0 +1,35 @@ +// File generated from our OpenAPI spec +namespace Stripe +{ + using System; + using Newtonsoft.Json; + using Stripe.Infrastructure; + using STJS = System.Text.Json.Serialization; + + [STJS.JsonConverter(typeof(STJStripeEntityConverter))] + public class SetupIntentNextActionUpiHandleRedirectOrDisplayQrCodeQrCode : StripeEntity + { + /// + /// The date (unix timestamp) when the QR code expires. + /// + [JsonProperty("expires_at")] + [JsonConverter(typeof(UnixDateTimeConverter))] + [STJS.JsonPropertyName("expires_at")] + [STJS.JsonConverter(typeof(STJUnixDateTimeConverter))] + public DateTime ExpiresAt { get; set; } = Stripe.Infrastructure.DateTimeUtils.UnixEpoch; + + /// + /// The image_url_png string used to render QR code. + /// + [JsonProperty("image_url_png")] + [STJS.JsonPropertyName("image_url_png")] + public string ImageUrlPng { get; set; } + + /// + /// The image_url_svg string used to render QR code. + /// + [JsonProperty("image_url_svg")] + [STJS.JsonPropertyName("image_url_svg")] + public string ImageUrlSvg { get; set; } + } +} diff --git a/src/Stripe.net/Entities/SetupIntents/SetupIntentPaymentMethodOptions.cs b/src/Stripe.net/Entities/SetupIntents/SetupIntentPaymentMethodOptions.cs index dacf1e4a6a..26bee2cc6c 100644 --- a/src/Stripe.net/Entities/SetupIntents/SetupIntentPaymentMethodOptions.cs +++ b/src/Stripe.net/Entities/SetupIntents/SetupIntentPaymentMethodOptions.cs @@ -48,6 +48,10 @@ public class SetupIntentPaymentMethodOptions : StripeEntity - /// Bank account verification method. + /// Bank account verification method. The default value is automatic. /// One of: automatic, instant, or microdeposits. /// [JsonProperty("verification_method")] diff --git a/src/Stripe.net/Entities/SetupIntents/SetupIntentPaymentMethodOptionsCardMandateOptions.cs b/src/Stripe.net/Entities/SetupIntents/SetupIntentPaymentMethodOptionsCardMandateOptions.cs index 3858ab45a4..183aaa4a45 100644 --- a/src/Stripe.net/Entities/SetupIntents/SetupIntentPaymentMethodOptionsCardMandateOptions.cs +++ b/src/Stripe.net/Entities/SetupIntents/SetupIntentPaymentMethodOptionsCardMandateOptions.cs @@ -11,7 +11,7 @@ namespace Stripe public class SetupIntentPaymentMethodOptionsCardMandateOptions : StripeEntity { /// - /// Amount to be charged for future payments. + /// Amount to be charged for future payments, specified in the presentment currency. /// [JsonProperty("amount")] [STJS.JsonPropertyName("amount")] diff --git a/src/Stripe.net/Entities/SetupIntents/SetupIntentPaymentMethodOptionsUpi.cs b/src/Stripe.net/Entities/SetupIntents/SetupIntentPaymentMethodOptionsUpi.cs new file mode 100644 index 0000000000..4e1ae76174 --- /dev/null +++ b/src/Stripe.net/Entities/SetupIntents/SetupIntentPaymentMethodOptionsUpi.cs @@ -0,0 +1,15 @@ +// File generated from our OpenAPI spec +namespace Stripe +{ + using Newtonsoft.Json; + using Stripe.Infrastructure; + using STJS = System.Text.Json.Serialization; + + [STJS.JsonConverter(typeof(STJStripeEntityConverter))] + public class SetupIntentPaymentMethodOptionsUpi : StripeEntity + { + [JsonProperty("mandate_options")] + [STJS.JsonPropertyName("mandate_options")] + public SetupIntentPaymentMethodOptionsUpiMandateOptions MandateOptions { get; set; } + } +} diff --git a/src/Stripe.net/Entities/SetupIntents/SetupIntentPaymentMethodOptionsUpiMandateOptions.cs b/src/Stripe.net/Entities/SetupIntents/SetupIntentPaymentMethodOptionsUpiMandateOptions.cs new file mode 100644 index 0000000000..03f9e1bf82 --- /dev/null +++ b/src/Stripe.net/Entities/SetupIntents/SetupIntentPaymentMethodOptionsUpiMandateOptions.cs @@ -0,0 +1,46 @@ +// File generated from our OpenAPI spec +namespace Stripe +{ + using System; + using Newtonsoft.Json; + using Stripe.Infrastructure; + using STJS = System.Text.Json.Serialization; + + [STJS.JsonConverter(typeof(STJStripeEntityConverter))] + public class SetupIntentPaymentMethodOptionsUpiMandateOptions : StripeEntity + { + /// + /// Amount to be charged for future payments. + /// + [JsonProperty("amount")] + [STJS.JsonPropertyName("amount")] + public long? Amount { get; set; } + + /// + /// One of fixed or maximum. If fixed, the amount param refers + /// to the exact amount to be charged in future payments. If maximum, the amount + /// charged can be up to the value passed for the amount param. + /// One of: fixed, or maximum. + /// + [JsonProperty("amount_type")] + [STJS.JsonPropertyName("amount_type")] + public string AmountType { get; set; } + + /// + /// A description of the mandate or subscription that is meant to be displayed to the + /// customer. + /// + [JsonProperty("description")] + [STJS.JsonPropertyName("description")] + public string Description { get; set; } + + /// + /// End date of the mandate or subscription. + /// + [JsonProperty("end_date")] + [JsonConverter(typeof(UnixDateTimeConverter))] + [STJS.JsonPropertyName("end_date")] + [STJS.JsonConverter(typeof(STJUnixDateTimeConverter))] + public DateTime? EndDate { get; set; } + } +} diff --git a/src/Stripe.net/Entities/SetupIntents/SetupIntentPaymentMethodOptionsUsBankAccount.cs b/src/Stripe.net/Entities/SetupIntents/SetupIntentPaymentMethodOptionsUsBankAccount.cs index 392017fa4a..71693cb1f4 100644 --- a/src/Stripe.net/Entities/SetupIntents/SetupIntentPaymentMethodOptionsUsBankAccount.cs +++ b/src/Stripe.net/Entities/SetupIntents/SetupIntentPaymentMethodOptionsUsBankAccount.cs @@ -17,7 +17,7 @@ public class SetupIntentPaymentMethodOptionsUsBankAccount : StripeEntity - /// Bank account verification method. + /// Bank account verification method. The default value is automatic. /// One of: automatic, instant, or microdeposits. /// [JsonProperty("verification_method")] diff --git a/src/Stripe.net/Entities/ShippingRates/ShippingRate.cs b/src/Stripe.net/Entities/ShippingRates/ShippingRate.cs index 8151a64ede..3e27711113 100644 --- a/src/Stripe.net/Entities/ShippingRates/ShippingRate.cs +++ b/src/Stripe.net/Entities/ShippingRates/ShippingRate.cs @@ -67,8 +67,8 @@ public class ShippingRate : StripeEntity, IHasId, IHasMetadata, IH public ShippingRateFixedAmount FixedAmount { get; set; } /// - /// Has the value true if the object exists in live mode or the value false if - /// the object exists in test mode. + /// If the object exists in live mode, the value is true. If the object exists in + /// test mode, the value is false. /// [JsonProperty("livemode")] [STJS.JsonPropertyName("livemode")] diff --git a/src/Stripe.net/Entities/Sigma/ScheduledQueryRuns/ScheduledQueryRun.cs b/src/Stripe.net/Entities/Sigma/ScheduledQueryRuns/ScheduledQueryRun.cs index eed1b9760b..8e2fe8acb4 100644 --- a/src/Stripe.net/Entities/Sigma/ScheduledQueryRuns/ScheduledQueryRun.cs +++ b/src/Stripe.net/Entities/Sigma/ScheduledQueryRuns/ScheduledQueryRun.cs @@ -59,8 +59,8 @@ public class ScheduledQueryRun : StripeEntity, IHasId, IHasOb public File File { get; set; } /// - /// Has the value true if the object exists in live mode or the value false if - /// the object exists in test mode. + /// If the object exists in live mode, the value is true. If the object exists in + /// test mode, the value is false. /// [JsonProperty("livemode")] [STJS.JsonPropertyName("livemode")] diff --git a/src/Stripe.net/Entities/SourceMandateNotifications/SourceMandateNotification.cs b/src/Stripe.net/Entities/SourceMandateNotifications/SourceMandateNotification.cs index 88501c2b19..2220083111 100644 --- a/src/Stripe.net/Entities/SourceMandateNotifications/SourceMandateNotification.cs +++ b/src/Stripe.net/Entities/SourceMandateNotifications/SourceMandateNotification.cs @@ -56,8 +56,8 @@ public class SourceMandateNotification : StripeEntity public DateTime Created { get; set; } = Stripe.Infrastructure.DateTimeUtils.UnixEpoch; /// - /// Has the value true if the object exists in live mode or the value false if - /// the object exists in test mode. + /// If the object exists in live mode, the value is true. If the object exists in + /// test mode, the value is false. /// [JsonProperty("livemode")] [STJS.JsonPropertyName("livemode")] diff --git a/src/Stripe.net/Entities/SourceTransactions/SourceTransaction.cs b/src/Stripe.net/Entities/SourceTransactions/SourceTransaction.cs index 8d6359d8b8..0e166a827e 100644 --- a/src/Stripe.net/Entities/SourceTransactions/SourceTransaction.cs +++ b/src/Stripe.net/Entities/SourceTransactions/SourceTransaction.cs @@ -68,8 +68,8 @@ public class SourceTransaction : StripeEntity, IHasId, IHasOb public SourceTransactionGbpCreditTransfer GbpCreditTransfer { get; set; } /// - /// Has the value true if the object exists in live mode or the value false if - /// the object exists in test mode. + /// If the object exists in live mode, the value is true. If the object exists in + /// test mode, the value is false. /// [JsonProperty("livemode")] [STJS.JsonPropertyName("livemode")] diff --git a/src/Stripe.net/Entities/Sources/Source.cs b/src/Stripe.net/Entities/Sources/Source.cs index 6dd37de327..136dda5357 100644 --- a/src/Stripe.net/Entities/Sources/Source.cs +++ b/src/Stripe.net/Entities/Sources/Source.cs @@ -153,8 +153,8 @@ public class Source : StripeEntity, IHasId, IHasMetadata, IHasObject, IP public SourceKlarna Klarna { get; set; } /// - /// Has the value true if the object exists in live mode or the value false if - /// the object exists in test mode. + /// If the object exists in live mode, the value is true. If the object exists in + /// test mode, the value is false. /// [JsonProperty("livemode")] [STJS.JsonPropertyName("livemode")] diff --git a/src/Stripe.net/Entities/SubscriptionSchedules/SubscriptionSchedule.cs b/src/Stripe.net/Entities/SubscriptionSchedules/SubscriptionSchedule.cs index af304e8fe0..906de053fe 100644 --- a/src/Stripe.net/Entities/SubscriptionSchedules/SubscriptionSchedule.cs +++ b/src/Stripe.net/Entities/SubscriptionSchedules/SubscriptionSchedule.cs @@ -170,8 +170,8 @@ public Customer Customer public string EndBehavior { get; set; } /// - /// Has the value true if the object exists in live mode or the value false if - /// the object exists in test mode. + /// If the object exists in live mode, the value is true. If the object exists in + /// test mode, the value is false. /// [JsonProperty("livemode")] [STJS.JsonPropertyName("livemode")] diff --git a/src/Stripe.net/Entities/Subscriptions/Subscription.cs b/src/Stripe.net/Entities/Subscriptions/Subscription.cs index 00e1caa5f2..58ef80e44a 100644 --- a/src/Stripe.net/Entities/Subscriptions/Subscription.cs +++ b/src/Stripe.net/Entities/Subscriptions/Subscription.cs @@ -434,8 +434,8 @@ public Invoice LatestInvoice #endregion /// - /// Has the value true if the object exists in live mode or the value false if - /// the object exists in test mode. + /// If the object exists in live mode, the value is true. If the object exists in + /// test mode, the value is false. /// [JsonProperty("livemode")] [STJS.JsonPropertyName("livemode")] @@ -520,7 +520,7 @@ public Account OnBehalfOf /// /// Specifies an interval for how often to bill for any pending invoice items. It is - /// analogous to calling Create an + /// analogous to calling Create an /// invoice for the given subscription at the specified interval. /// [JsonProperty("pending_invoice_item_interval")] diff --git a/src/Stripe.net/Entities/Subscriptions/SubscriptionCancellationDetails.cs b/src/Stripe.net/Entities/Subscriptions/SubscriptionCancellationDetails.cs index 5e3e8e87ab..3b20d689ee 100644 --- a/src/Stripe.net/Entities/Subscriptions/SubscriptionCancellationDetails.cs +++ b/src/Stripe.net/Entities/Subscriptions/SubscriptionCancellationDetails.cs @@ -29,8 +29,8 @@ public class SubscriptionCancellationDetails : StripeEntity /// Why this subscription was canceled. - /// One of: cancellation_requested, payment_disputed, or - /// payment_failed. + /// One of: canceled_by_retention_policy, cancellation_requested, + /// payment_disputed, or payment_failed. /// [JsonProperty("reason")] [STJS.JsonPropertyName("reason")] diff --git a/src/Stripe.net/Entities/Subscriptions/SubscriptionPauseCollection.cs b/src/Stripe.net/Entities/Subscriptions/SubscriptionPauseCollection.cs index f80a46c88e..0d7b93118d 100644 --- a/src/Stripe.net/Entities/Subscriptions/SubscriptionPauseCollection.cs +++ b/src/Stripe.net/Entities/Subscriptions/SubscriptionPauseCollection.cs @@ -10,8 +10,7 @@ namespace Stripe public class SubscriptionPauseCollection : StripeEntity { /// - /// The payment collection behavior for this subscription while paused. One of - /// keep_as_draft, mark_uncollectible, or void. + /// The payment collection behavior for this subscription while paused. /// One of: keep_as_draft, mark_uncollectible, or void. /// [JsonProperty("behavior")] diff --git a/src/Stripe.net/Entities/Subscriptions/SubscriptionPaymentSettingsPaymentMethodOptionsAcssDebit.cs b/src/Stripe.net/Entities/Subscriptions/SubscriptionPaymentSettingsPaymentMethodOptionsAcssDebit.cs index 6be1d0aed2..9b905919e5 100644 --- a/src/Stripe.net/Entities/Subscriptions/SubscriptionPaymentSettingsPaymentMethodOptionsAcssDebit.cs +++ b/src/Stripe.net/Entities/Subscriptions/SubscriptionPaymentSettingsPaymentMethodOptionsAcssDebit.cs @@ -13,7 +13,7 @@ public class SubscriptionPaymentSettingsPaymentMethodOptionsAcssDebit : StripeEn public SubscriptionPaymentSettingsPaymentMethodOptionsAcssDebitMandateOptions MandateOptions { get; set; } /// - /// Bank account verification method. + /// Bank account verification method. The default value is automatic. /// One of: automatic, instant, or microdeposits. /// [JsonProperty("verification_method")] diff --git a/src/Stripe.net/Entities/Subscriptions/SubscriptionPaymentSettingsPaymentMethodOptionsCardMandateOptions.cs b/src/Stripe.net/Entities/Subscriptions/SubscriptionPaymentSettingsPaymentMethodOptionsCardMandateOptions.cs index 5a6638bee7..5f968a1fa5 100644 --- a/src/Stripe.net/Entities/Subscriptions/SubscriptionPaymentSettingsPaymentMethodOptionsCardMandateOptions.cs +++ b/src/Stripe.net/Entities/Subscriptions/SubscriptionPaymentSettingsPaymentMethodOptionsCardMandateOptions.cs @@ -9,7 +9,7 @@ namespace Stripe public class SubscriptionPaymentSettingsPaymentMethodOptionsCardMandateOptions : StripeEntity { /// - /// Amount to be charged for future payments. + /// Amount to be charged for future payments, specified in the presentment currency. /// [JsonProperty("amount")] [STJS.JsonPropertyName("amount")] diff --git a/src/Stripe.net/Entities/Subscriptions/SubscriptionPaymentSettingsPaymentMethodOptionsUsBankAccount.cs b/src/Stripe.net/Entities/Subscriptions/SubscriptionPaymentSettingsPaymentMethodOptionsUsBankAccount.cs index 3c0648f84a..528c6f4c45 100644 --- a/src/Stripe.net/Entities/Subscriptions/SubscriptionPaymentSettingsPaymentMethodOptionsUsBankAccount.cs +++ b/src/Stripe.net/Entities/Subscriptions/SubscriptionPaymentSettingsPaymentMethodOptionsUsBankAccount.cs @@ -13,7 +13,7 @@ public class SubscriptionPaymentSettingsPaymentMethodOptionsUsBankAccount : Stri public SubscriptionPaymentSettingsPaymentMethodOptionsUsBankAccountFinancialConnections FinancialConnections { get; set; } /// - /// Bank account verification method. + /// Bank account verification method. The default value is automatic. /// One of: automatic, instant, or microdeposits. /// [JsonProperty("verification_method")] diff --git a/src/Stripe.net/Entities/Tax/CalculationLineItems/CalculationLineItem.cs b/src/Stripe.net/Entities/Tax/CalculationLineItems/CalculationLineItem.cs index fc86d59c57..b34de50dd1 100644 --- a/src/Stripe.net/Entities/Tax/CalculationLineItems/CalculationLineItem.cs +++ b/src/Stripe.net/Entities/Tax/CalculationLineItems/CalculationLineItem.cs @@ -25,7 +25,7 @@ public class CalculationLineItem : StripeEntity, IHasId, IH /// /// The line item amount in the smallest currency unit. If + /// href="https://docs.stripe.com/currencies#minor-units">smallest currency unit. If /// tax_behavior=inclusive, then this amount includes taxes. Otherwise, taxes were /// calculated on top of this amount. /// @@ -35,15 +35,15 @@ public class CalculationLineItem : StripeEntity, IHasId, IH /// /// The amount of tax calculated for this line item, in the smallest currency unit. + /// href="https://docs.stripe.com/currencies#minor-units">smallest currency unit. /// [JsonProperty("amount_tax")] [STJS.JsonPropertyName("amount_tax")] public long AmountTax { get; set; } /// - /// Has the value true if the object exists in live mode or the value false if - /// the object exists in test mode. + /// If the object exists in live mode, the value is true. If the object exists in + /// test mode, the value is false. /// [JsonProperty("livemode")] [STJS.JsonPropertyName("livemode")] diff --git a/src/Stripe.net/Entities/Tax/CalculationLineItems/CalculationLineItemTaxBreakdown.cs b/src/Stripe.net/Entities/Tax/CalculationLineItems/CalculationLineItemTaxBreakdown.cs index a69ad3f4ee..086c38dbc7 100644 --- a/src/Stripe.net/Entities/Tax/CalculationLineItems/CalculationLineItemTaxBreakdown.cs +++ b/src/Stripe.net/Entities/Tax/CalculationLineItems/CalculationLineItemTaxBreakdown.cs @@ -10,7 +10,7 @@ public class CalculationLineItemTaxBreakdown : StripeEntity /// The amount of tax, in the smallest currency unit. + /// href="https://docs.stripe.com/currencies#minor-units">smallest currency unit. /// [JsonProperty("amount")] [STJS.JsonPropertyName("amount")] @@ -52,7 +52,7 @@ public class CalculationLineItemTaxBreakdown : StripeEntity /// The amount on which tax is calculated, in the smallest currency unit. + /// href="https://docs.stripe.com/currencies#minor-units">smallest currency unit. /// [JsonProperty("taxable_amount")] [STJS.JsonPropertyName("taxable_amount")] diff --git a/src/Stripe.net/Entities/Tax/Calculations/Calculation.cs b/src/Stripe.net/Entities/Tax/Calculations/Calculation.cs index d44541462e..ffb2b3a259 100644 --- a/src/Stripe.net/Entities/Tax/Calculations/Calculation.cs +++ b/src/Stripe.net/Entities/Tax/Calculations/Calculation.cs @@ -32,7 +32,7 @@ public class Calculation : StripeEntity, IHasId, IHasObject /// /// Total amount after taxes in the smallest currency unit. + /// href="https://docs.stripe.com/currencies#minor-units">smallest currency unit. /// [JsonProperty("amount_total")] [STJS.JsonPropertyName("amount_total")] @@ -76,8 +76,8 @@ public class Calculation : StripeEntity, IHasId, IHasObject public StripeList LineItems { get; set; } /// - /// Has the value true if the object exists in live mode or the value false if - /// the object exists in test mode. + /// If the object exists in live mode, the value is true. If the object exists in + /// test mode, the value is false. /// [JsonProperty("livemode")] [STJS.JsonPropertyName("livemode")] diff --git a/src/Stripe.net/Entities/Tax/Calculations/CalculationShippingCost.cs b/src/Stripe.net/Entities/Tax/Calculations/CalculationShippingCost.cs index 842ab6ee94..b54e8eb2e8 100644 --- a/src/Stripe.net/Entities/Tax/Calculations/CalculationShippingCost.cs +++ b/src/Stripe.net/Entities/Tax/Calculations/CalculationShippingCost.cs @@ -11,7 +11,7 @@ public class CalculationShippingCost : StripeEntity { /// /// The shipping amount in the smallest currency unit. If + /// href="https://docs.stripe.com/currencies#minor-units">smallest currency unit. If /// tax_behavior=inclusive, then this amount includes taxes. Otherwise, taxes were /// calculated on top of this amount. /// @@ -21,7 +21,7 @@ public class CalculationShippingCost : StripeEntity /// /// The amount of tax calculated for shipping, in the smallest currency unit. + /// href="https://docs.stripe.com/currencies#minor-units">smallest currency unit. /// [JsonProperty("amount_tax")] [STJS.JsonPropertyName("amount_tax")] diff --git a/src/Stripe.net/Entities/Tax/Calculations/CalculationShippingCostTaxBreakdown.cs b/src/Stripe.net/Entities/Tax/Calculations/CalculationShippingCostTaxBreakdown.cs index c744c24ff4..15c710df34 100644 --- a/src/Stripe.net/Entities/Tax/Calculations/CalculationShippingCostTaxBreakdown.cs +++ b/src/Stripe.net/Entities/Tax/Calculations/CalculationShippingCostTaxBreakdown.cs @@ -10,7 +10,7 @@ public class CalculationShippingCostTaxBreakdown : StripeEntity /// The amount of tax, in the smallest currency unit. + /// href="https://docs.stripe.com/currencies#minor-units">smallest currency unit. /// [JsonProperty("amount")] [STJS.JsonPropertyName("amount")] @@ -52,7 +52,7 @@ public class CalculationShippingCostTaxBreakdown : StripeEntity /// The amount on which tax is calculated, in the smallest currency unit. + /// href="https://docs.stripe.com/currencies#minor-units">smallest currency unit. /// [JsonProperty("taxable_amount")] [STJS.JsonPropertyName("taxable_amount")] diff --git a/src/Stripe.net/Entities/Tax/Calculations/CalculationTaxBreakdown.cs b/src/Stripe.net/Entities/Tax/Calculations/CalculationTaxBreakdown.cs index 44557161ec..2deff671ba 100644 --- a/src/Stripe.net/Entities/Tax/Calculations/CalculationTaxBreakdown.cs +++ b/src/Stripe.net/Entities/Tax/Calculations/CalculationTaxBreakdown.cs @@ -10,7 +10,7 @@ public class CalculationTaxBreakdown : StripeEntity { /// /// The amount of tax, in the smallest currency unit. + /// href="https://docs.stripe.com/currencies#minor-units">smallest currency unit. /// [JsonProperty("amount")] [STJS.JsonPropertyName("amount")] @@ -42,7 +42,7 @@ public class CalculationTaxBreakdown : StripeEntity /// /// The amount on which tax is calculated, in the smallest currency unit. + /// href="https://docs.stripe.com/currencies#minor-units">smallest currency unit. /// [JsonProperty("taxable_amount")] [STJS.JsonPropertyName("taxable_amount")] diff --git a/src/Stripe.net/Entities/Tax/Registrations/Registration.cs b/src/Stripe.net/Entities/Tax/Registrations/Registration.cs index 308518cf32..4a25f10235 100644 --- a/src/Stripe.net/Entities/Tax/Registrations/Registration.cs +++ b/src/Stripe.net/Entities/Tax/Registrations/Registration.cs @@ -76,8 +76,8 @@ public class Registration : StripeEntity, IHasId, IHasObject public DateTime? ExpiresAt { get; set; } /// - /// Has the value true if the object exists in live mode or the value false if - /// the object exists in test mode. + /// If the object exists in live mode, the value is true. If the object exists in + /// test mode, the value is false. /// [JsonProperty("livemode")] [STJS.JsonPropertyName("livemode")] diff --git a/src/Stripe.net/Entities/Tax/Settings/Settings.cs b/src/Stripe.net/Entities/Tax/Settings/Settings.cs index 89ae794b59..ff3d70e478 100644 --- a/src/Stripe.net/Entities/Tax/Settings/Settings.cs +++ b/src/Stripe.net/Entities/Tax/Settings/Settings.cs @@ -34,8 +34,8 @@ public class Settings : StripeEntity, IHasObject public SettingsHeadOffice HeadOffice { get; set; } /// - /// Has the value true if the object exists in live mode or the value false if - /// the object exists in test mode. + /// If the object exists in live mode, the value is true. If the object exists in + /// test mode, the value is false. /// [JsonProperty("livemode")] [STJS.JsonPropertyName("livemode")] diff --git a/src/Stripe.net/Entities/Tax/TransactionLineItems/TransactionLineItem.cs b/src/Stripe.net/Entities/Tax/TransactionLineItems/TransactionLineItem.cs index 6fc61a6992..25127f6836 100644 --- a/src/Stripe.net/Entities/Tax/TransactionLineItems/TransactionLineItem.cs +++ b/src/Stripe.net/Entities/Tax/TransactionLineItems/TransactionLineItem.cs @@ -25,7 +25,7 @@ public class TransactionLineItem : StripeEntity, IHasId, IH /// /// The line item amount in the smallest currency unit. If + /// href="https://docs.stripe.com/currencies#minor-units">smallest currency unit. If /// tax_behavior=inclusive, then this amount includes taxes. Otherwise, taxes were /// calculated on top of this amount. /// @@ -35,15 +35,15 @@ public class TransactionLineItem : StripeEntity, IHasId, IH /// /// The amount of tax calculated for this line item, in the smallest currency unit. + /// href="https://docs.stripe.com/currencies#minor-units">smallest currency unit. /// [JsonProperty("amount_tax")] [STJS.JsonPropertyName("amount_tax")] public long AmountTax { get; set; } /// - /// Has the value true if the object exists in live mode or the value false if - /// the object exists in test mode. + /// If the object exists in live mode, the value is true. If the object exists in + /// test mode, the value is false. /// [JsonProperty("livemode")] [STJS.JsonPropertyName("livemode")] diff --git a/src/Stripe.net/Entities/Tax/Transactions/Transaction.cs b/src/Stripe.net/Entities/Tax/Transactions/Transaction.cs index a0052cc7dd..5e93c5ec38 100644 --- a/src/Stripe.net/Entities/Tax/Transactions/Transaction.cs +++ b/src/Stripe.net/Entities/Tax/Transactions/Transaction.cs @@ -68,8 +68,8 @@ public class Transaction : StripeEntity, IHasId, IHasMetadata, IHas public StripeList LineItems { get; set; } /// - /// Has the value true if the object exists in live mode or the value false if - /// the object exists in test mode. + /// If the object exists in live mode, the value is true. If the object exists in + /// test mode, the value is false. /// [JsonProperty("livemode")] [STJS.JsonPropertyName("livemode")] diff --git a/src/Stripe.net/Entities/Tax/Transactions/TransactionShippingCost.cs b/src/Stripe.net/Entities/Tax/Transactions/TransactionShippingCost.cs index 7649c591ff..8de7c46403 100644 --- a/src/Stripe.net/Entities/Tax/Transactions/TransactionShippingCost.cs +++ b/src/Stripe.net/Entities/Tax/Transactions/TransactionShippingCost.cs @@ -11,7 +11,7 @@ public class TransactionShippingCost : StripeEntity { /// /// The shipping amount in the smallest currency unit. If + /// href="https://docs.stripe.com/currencies#minor-units">smallest currency unit. If /// tax_behavior=inclusive, then this amount includes taxes. Otherwise, taxes were /// calculated on top of this amount. /// @@ -21,7 +21,7 @@ public class TransactionShippingCost : StripeEntity /// /// The amount of tax calculated for shipping, in the smallest currency unit. + /// href="https://docs.stripe.com/currencies#minor-units">smallest currency unit. /// [JsonProperty("amount_tax")] [STJS.JsonPropertyName("amount_tax")] diff --git a/src/Stripe.net/Entities/Tax/Transactions/TransactionShippingCostTaxBreakdown.cs b/src/Stripe.net/Entities/Tax/Transactions/TransactionShippingCostTaxBreakdown.cs index ceceb03da2..27d10fee97 100644 --- a/src/Stripe.net/Entities/Tax/Transactions/TransactionShippingCostTaxBreakdown.cs +++ b/src/Stripe.net/Entities/Tax/Transactions/TransactionShippingCostTaxBreakdown.cs @@ -10,7 +10,7 @@ public class TransactionShippingCostTaxBreakdown : StripeEntity /// The amount of tax, in the smallest currency unit. + /// href="https://docs.stripe.com/currencies#minor-units">smallest currency unit. /// [JsonProperty("amount")] [STJS.JsonPropertyName("amount")] @@ -52,7 +52,7 @@ public class TransactionShippingCostTaxBreakdown : StripeEntity /// The amount on which tax is calculated, in the smallest currency unit. + /// href="https://docs.stripe.com/currencies#minor-units">smallest currency unit. /// [JsonProperty("taxable_amount")] [STJS.JsonPropertyName("taxable_amount")] diff --git a/src/Stripe.net/Entities/TaxIds/TaxId.cs b/src/Stripe.net/Entities/TaxIds/TaxId.cs index 69d79fdf5c..d62fc8c21b 100644 --- a/src/Stripe.net/Entities/TaxIds/TaxId.cs +++ b/src/Stripe.net/Entities/TaxIds/TaxId.cs @@ -99,8 +99,8 @@ public Customer Customer public bool? Deleted { get; set; } /// - /// Has the value true if the object exists in live mode or the value false if - /// the object exists in test mode. + /// If the object exists in live mode, the value is true. If the object exists in + /// test mode, the value is false. /// [JsonProperty("livemode")] [STJS.JsonPropertyName("livemode")] diff --git a/src/Stripe.net/Entities/TaxRates/TaxRate.cs b/src/Stripe.net/Entities/TaxRates/TaxRate.cs index 22eddd3d1a..07504570a2 100644 --- a/src/Stripe.net/Entities/TaxRates/TaxRate.cs +++ b/src/Stripe.net/Entities/TaxRates/TaxRate.cs @@ -121,8 +121,8 @@ public class TaxRate : StripeEntity, IHasId, IHasMetadata, IHasObject public string JurisdictionLevel { get; set; } /// - /// Has the value true if the object exists in live mode or the value false if - /// the object exists in test mode. + /// If the object exists in live mode, the value is true. If the object exists in + /// test mode, the value is false. /// [JsonProperty("livemode")] [STJS.JsonPropertyName("livemode")] diff --git a/src/Stripe.net/Entities/Terminal/Configurations/Configuration.cs b/src/Stripe.net/Entities/Terminal/Configurations/Configuration.cs index 6300d8eab9..d84e9327fe 100644 --- a/src/Stripe.net/Entities/Terminal/Configurations/Configuration.cs +++ b/src/Stripe.net/Entities/Terminal/Configurations/Configuration.cs @@ -56,8 +56,8 @@ public class Configuration : StripeEntity, IHasId, IHasObject public bool? IsAccountDefault { get; set; } /// - /// Has the value true if the object exists in live mode or the value false if - /// the object exists in test mode. + /// If the object exists in live mode, the value is true. If the object exists in + /// test mode, the value is false. /// [JsonProperty("livemode")] [STJS.JsonPropertyName("livemode")] diff --git a/src/Stripe.net/Entities/Terminal/Locations/Location.cs b/src/Stripe.net/Entities/Terminal/Locations/Location.cs index 5629799a45..6df9d3345b 100644 --- a/src/Stripe.net/Entities/Terminal/Locations/Location.cs +++ b/src/Stripe.net/Entities/Terminal/Locations/Location.cs @@ -78,8 +78,8 @@ public class Location : StripeEntity, IHasId, IHasMetadata, IHasObject public string DisplayNameKanji { get; set; } /// - /// Has the value true if the object exists in live mode or the value false if - /// the object exists in test mode. + /// If the object exists in live mode, the value is true. If the object exists in + /// test mode, the value is false. /// [JsonProperty("livemode")] [STJS.JsonPropertyName("livemode")] diff --git a/src/Stripe.net/Entities/Terminal/Readers/Reader.cs b/src/Stripe.net/Entities/Terminal/Readers/Reader.cs index b5ff8f5bb0..cf28061c9a 100644 --- a/src/Stripe.net/Entities/Terminal/Readers/Reader.cs +++ b/src/Stripe.net/Entities/Terminal/Readers/Reader.cs @@ -90,8 +90,8 @@ public class Reader : StripeEntity, IHasId, IHasMetadata, IHasObject public DateTime? LastSeenAt { get; set; } /// - /// Has the value true if the object exists in live mode or the value false if - /// the object exists in test mode. + /// If the object exists in live mode, the value is true. If the object exists in + /// test mode, the value is false. /// [JsonProperty("livemode")] [STJS.JsonPropertyName("livemode")] diff --git a/src/Stripe.net/Entities/TestHelpers/TestClocks/TestClock.cs b/src/Stripe.net/Entities/TestHelpers/TestClocks/TestClock.cs index e349c0ea09..26b0711d69 100644 --- a/src/Stripe.net/Entities/TestHelpers/TestClocks/TestClock.cs +++ b/src/Stripe.net/Entities/TestHelpers/TestClocks/TestClock.cs @@ -67,8 +67,8 @@ public class TestClock : StripeEntity, IHasId, IHasObject public DateTime FrozenTime { get; set; } = Stripe.Infrastructure.DateTimeUtils.UnixEpoch; /// - /// Has the value true if the object exists in live mode or the value false if - /// the object exists in test mode. + /// If the object exists in live mode, the value is true. If the object exists in + /// test mode, the value is false. /// [JsonProperty("livemode")] [STJS.JsonPropertyName("livemode")] diff --git a/src/Stripe.net/Entities/Tokens/Token.cs b/src/Stripe.net/Entities/Tokens/Token.cs index 2b3b136c10..358cbbb1ca 100644 --- a/src/Stripe.net/Entities/Tokens/Token.cs +++ b/src/Stripe.net/Entities/Tokens/Token.cs @@ -86,8 +86,8 @@ public class Token : StripeEntity, IHasId, IHasObject public DateTime Created { get; set; } = Stripe.Infrastructure.DateTimeUtils.UnixEpoch; /// - /// Has the value true if the object exists in live mode or the value false if - /// the object exists in test mode. + /// If the object exists in live mode, the value is true. If the object exists in + /// test mode, the value is false. /// [JsonProperty("livemode")] [STJS.JsonPropertyName("livemode")] diff --git a/src/Stripe.net/Entities/Topups/Topup.cs b/src/Stripe.net/Entities/Topups/Topup.cs index c84791cc5e..61177a4643 100644 --- a/src/Stripe.net/Entities/Topups/Topup.cs +++ b/src/Stripe.net/Entities/Topups/Topup.cs @@ -113,7 +113,7 @@ public BalanceTransaction BalanceTransaction /// /// Error code explaining reason for top-up failure if available (see the errors section for a list of codes). + /// href="https://stripe.com/api/errors">the errors section for a list of codes). /// [JsonProperty("failure_code")] [STJS.JsonPropertyName("failure_code")] @@ -127,8 +127,8 @@ public BalanceTransaction BalanceTransaction public string FailureMessage { get; set; } /// - /// Has the value true if the object exists in live mode or the value false if - /// the object exists in test mode. + /// If the object exists in live mode, the value is true. If the object exists in + /// test mode, the value is false. /// [JsonProperty("livemode")] [STJS.JsonPropertyName("livemode")] diff --git a/src/Stripe.net/Entities/Transfers/Transfer.cs b/src/Stripe.net/Entities/Transfers/Transfer.cs index 9352539950..fdd32b08d8 100644 --- a/src/Stripe.net/Entities/Transfers/Transfer.cs +++ b/src/Stripe.net/Entities/Transfers/Transfer.cs @@ -186,8 +186,8 @@ public Charge DestinationPayment #endregion /// - /// Has the value true if the object exists in live mode or the value false if - /// the object exists in test mode. + /// If the object exists in live mode, the value is true. If the object exists in + /// test mode, the value is false. /// [JsonProperty("livemode")] [STJS.JsonPropertyName("livemode")] diff --git a/src/Stripe.net/Entities/Treasury/CreditReversals/CreditReversal.cs b/src/Stripe.net/Entities/Treasury/CreditReversals/CreditReversal.cs index bffa7c38e7..8f69cf6e80 100644 --- a/src/Stripe.net/Entities/Treasury/CreditReversals/CreditReversal.cs +++ b/src/Stripe.net/Entities/Treasury/CreditReversals/CreditReversal.cs @@ -72,8 +72,8 @@ public class CreditReversal : StripeEntity, IHasId, IHasMetadata public string HostedRegulatoryReceiptUrl { get; set; } /// - /// Has the value true if the object exists in live mode or the value false if - /// the object exists in test mode. + /// If the object exists in live mode, the value is true. If the object exists in + /// test mode, the value is false. /// [JsonProperty("livemode")] [STJS.JsonPropertyName("livemode")] diff --git a/src/Stripe.net/Entities/Treasury/DebitReversals/DebitReversal.cs b/src/Stripe.net/Entities/Treasury/DebitReversals/DebitReversal.cs index 316ae7606d..06a13228a8 100644 --- a/src/Stripe.net/Entities/Treasury/DebitReversals/DebitReversal.cs +++ b/src/Stripe.net/Entities/Treasury/DebitReversals/DebitReversal.cs @@ -78,8 +78,8 @@ public class DebitReversal : StripeEntity, IHasId, IHasMetadata, public DebitReversalLinkedFlows LinkedFlows { get; set; } /// - /// Has the value true if the object exists in live mode or the value false if - /// the object exists in test mode. + /// If the object exists in live mode, the value is true. If the object exists in + /// test mode, the value is false. /// [JsonProperty("livemode")] [STJS.JsonPropertyName("livemode")] diff --git a/src/Stripe.net/Entities/Treasury/FinancialAccounts/FinancialAccount.cs b/src/Stripe.net/Entities/Treasury/FinancialAccounts/FinancialAccount.cs index 946a5a662b..a631632dbc 100644 --- a/src/Stripe.net/Entities/Treasury/FinancialAccounts/FinancialAccount.cs +++ b/src/Stripe.net/Entities/Treasury/FinancialAccounts/FinancialAccount.cs @@ -86,8 +86,8 @@ public class FinancialAccount : StripeEntity, IHasId, IHasMeta public bool IsDefault { get; set; } /// - /// Has the value true if the object exists in live mode or the value false if - /// the object exists in test mode. + /// If the object exists in live mode, the value is true. If the object exists in + /// test mode, the value is false. /// [JsonProperty("livemode")] [STJS.JsonPropertyName("livemode")] diff --git a/src/Stripe.net/Entities/Treasury/InboundTransfers/InboundTransfer.cs b/src/Stripe.net/Entities/Treasury/InboundTransfers/InboundTransfer.cs index 3991f63cfa..e6c9730d13 100644 --- a/src/Stripe.net/Entities/Treasury/InboundTransfers/InboundTransfer.cs +++ b/src/Stripe.net/Entities/Treasury/InboundTransfers/InboundTransfer.cs @@ -102,8 +102,8 @@ public class InboundTransfer : StripeEntity, IHasId, IHasMetada public InboundTransferLinkedFlows LinkedFlows { get; set; } /// - /// Has the value true if the object exists in live mode or the value false if - /// the object exists in test mode. + /// If the object exists in live mode, the value is true. If the object exists in + /// test mode, the value is false. /// [JsonProperty("livemode")] [STJS.JsonPropertyName("livemode")] diff --git a/src/Stripe.net/Entities/Treasury/OutboundPayments/OutboundPayment.cs b/src/Stripe.net/Entities/Treasury/OutboundPayments/OutboundPayment.cs index ec56a5e18d..3140b7c1c8 100644 --- a/src/Stripe.net/Entities/Treasury/OutboundPayments/OutboundPayment.cs +++ b/src/Stripe.net/Entities/Treasury/OutboundPayments/OutboundPayment.cs @@ -135,8 +135,8 @@ public class OutboundPayment : StripeEntity, IHasId, IHasMetada public string HostedRegulatoryReceiptUrl { get; set; } /// - /// Has the value true if the object exists in live mode or the value false if - /// the object exists in test mode. + /// If the object exists in live mode, the value is true. If the object exists in + /// test mode, the value is false. /// [JsonProperty("livemode")] [STJS.JsonPropertyName("livemode")] diff --git a/src/Stripe.net/Entities/Treasury/OutboundTransfers/OutboundTransfer.cs b/src/Stripe.net/Entities/Treasury/OutboundTransfers/OutboundTransfer.cs index 7349e37b21..ae871122d2 100644 --- a/src/Stripe.net/Entities/Treasury/OutboundTransfers/OutboundTransfer.cs +++ b/src/Stripe.net/Entities/Treasury/OutboundTransfers/OutboundTransfer.cs @@ -118,8 +118,8 @@ public class OutboundTransfer : StripeEntity, IHasId, IHasMeta public string HostedRegulatoryReceiptUrl { get; set; } /// - /// Has the value true if the object exists in live mode or the value false if - /// the object exists in test mode. + /// If the object exists in live mode, the value is true. If the object exists in + /// test mode, the value is false. /// [JsonProperty("livemode")] [STJS.JsonPropertyName("livemode")] diff --git a/src/Stripe.net/Entities/Treasury/ReceivedCredits/ReceivedCredit.cs b/src/Stripe.net/Entities/Treasury/ReceivedCredits/ReceivedCredit.cs index dcff65c43d..a3ca172f1b 100644 --- a/src/Stripe.net/Entities/Treasury/ReceivedCredits/ReceivedCredit.cs +++ b/src/Stripe.net/Entities/Treasury/ReceivedCredits/ReceivedCredit.cs @@ -95,8 +95,8 @@ public class ReceivedCredit : StripeEntity, IHasId, IHasObject public ReceivedCreditLinkedFlows LinkedFlows { get; set; } /// - /// Has the value true if the object exists in live mode or the value false if - /// the object exists in test mode. + /// If the object exists in live mode, the value is true. If the object exists in + /// test mode, the value is false. /// [JsonProperty("livemode")] [STJS.JsonPropertyName("livemode")] diff --git a/src/Stripe.net/Entities/Treasury/ReceivedDebits/ReceivedDebit.cs b/src/Stripe.net/Entities/Treasury/ReceivedDebits/ReceivedDebit.cs index 6856970909..b55a2bb2b4 100644 --- a/src/Stripe.net/Entities/Treasury/ReceivedDebits/ReceivedDebit.cs +++ b/src/Stripe.net/Entities/Treasury/ReceivedDebits/ReceivedDebit.cs @@ -95,8 +95,8 @@ public class ReceivedDebit : StripeEntity, IHasId, IHasObject public ReceivedDebitLinkedFlows LinkedFlows { get; set; } /// - /// Has the value true if the object exists in live mode or the value false if - /// the object exists in test mode. + /// If the object exists in live mode, the value is true. If the object exists in + /// test mode, the value is false. /// [JsonProperty("livemode")] [STJS.JsonPropertyName("livemode")] diff --git a/src/Stripe.net/Entities/Treasury/TransactionEntries/TransactionEntry.cs b/src/Stripe.net/Entities/Treasury/TransactionEntries/TransactionEntry.cs index 11cb0c0f97..fbee855ece 100644 --- a/src/Stripe.net/Entities/Treasury/TransactionEntries/TransactionEntry.cs +++ b/src/Stripe.net/Entities/Treasury/TransactionEntries/TransactionEntry.cs @@ -93,8 +93,8 @@ public class TransactionEntry : StripeEntity, IHasId, IHasObje public string FlowType { get; set; } /// - /// Has the value true if the object exists in live mode or the value false if - /// the object exists in test mode. + /// If the object exists in live mode, the value is true. If the object exists in + /// test mode, the value is false. /// [JsonProperty("livemode")] [STJS.JsonPropertyName("livemode")] diff --git a/src/Stripe.net/Entities/Treasury/Transactions/Transaction.cs b/src/Stripe.net/Entities/Treasury/Transactions/Transaction.cs index ae067d5723..ce70cdc2eb 100644 --- a/src/Stripe.net/Entities/Treasury/Transactions/Transaction.cs +++ b/src/Stripe.net/Entities/Treasury/Transactions/Transaction.cs @@ -106,8 +106,8 @@ public class Transaction : StripeEntity, IHasId, IHasObject public string FlowType { get; set; } /// - /// Has the value true if the object exists in live mode or the value false if - /// the object exists in test mode. + /// If the object exists in live mode, the value is true. If the object exists in + /// test mode, the value is false. /// [JsonProperty("livemode")] [STJS.JsonPropertyName("livemode")] diff --git a/src/Stripe.net/Entities/WebhookEndpoints/WebhookEndpoint.cs b/src/Stripe.net/Entities/WebhookEndpoints/WebhookEndpoint.cs index e8c963adad..f2113e123a 100644 --- a/src/Stripe.net/Entities/WebhookEndpoints/WebhookEndpoint.cs +++ b/src/Stripe.net/Entities/WebhookEndpoints/WebhookEndpoint.cs @@ -83,8 +83,8 @@ public class WebhookEndpoint : StripeEntity, IHasId, IHasMetada public List EnabledEvents { get; set; } /// - /// Has the value true if the object exists in live mode or the value false if - /// the object exists in test mode. + /// If the object exists in live mode, the value is true. If the object exists in + /// test mode, the value is false. /// [JsonProperty("livemode")] [STJS.JsonPropertyName("livemode")] diff --git a/src/Stripe.net/Services/Accounts/AccountCapabilitiesOptions.cs b/src/Stripe.net/Services/Accounts/AccountCapabilitiesOptions.cs index 9097b43835..70d265f7ca 100644 --- a/src/Stripe.net/Services/Accounts/AccountCapabilitiesOptions.cs +++ b/src/Stripe.net/Services/Accounts/AccountCapabilitiesOptions.cs @@ -414,6 +414,13 @@ public class AccountCapabilitiesOptions : INestedOptions [STJS.JsonPropertyName("twint_payments")] public AccountCapabilitiesTwintPaymentsOptions TwintPayments { get; set; } + /// + /// The upi_payments capability. + /// + [JsonProperty("upi_payments")] + [STJS.JsonPropertyName("upi_payments")] + public AccountCapabilitiesUpiPaymentsOptions UpiPayments { get; set; } + /// /// The us_bank_account_ach_payments capability. /// diff --git a/src/Stripe.net/Services/Accounts/AccountCapabilitiesUpiPaymentsOptions.cs b/src/Stripe.net/Services/Accounts/AccountCapabilitiesUpiPaymentsOptions.cs new file mode 100644 index 0000000000..8b7553f2aa --- /dev/null +++ b/src/Stripe.net/Services/Accounts/AccountCapabilitiesUpiPaymentsOptions.cs @@ -0,0 +1,20 @@ +// File generated from our OpenAPI spec +namespace Stripe +{ + using Newtonsoft.Json; + using Stripe.Infrastructure; + using STJS = System.Text.Json.Serialization; + + [STJS.JsonConverter(typeof(STJStripeOptionsConverter))] + public class AccountCapabilitiesUpiPaymentsOptions : INestedOptions + { + /// + /// 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. + /// + [JsonProperty("requested")] + [STJS.JsonPropertyName("requested")] + public bool? Requested { get; set; } + } +} diff --git a/src/Stripe.net/Services/Checkout/Sessions/SessionCreateOptions.cs b/src/Stripe.net/Services/Checkout/Sessions/SessionCreateOptions.cs index ea5728cb22..644ab4660d 100644 --- a/src/Stripe.net/Services/Checkout/Sessions/SessionCreateOptions.cs +++ b/src/Stripe.net/Services/Checkout/Sessions/SessionCreateOptions.cs @@ -203,8 +203,8 @@ public class SessionCreateOptions : BaseOptions, IHasMetadata /// naver_pay, nz_bank_account, oxxo, p24, pay_by_bank, /// payco, paynow, paypal, payto, pix, promptpay, /// revolut_pay, samsung_pay, satispay, sepa_debit, - /// sofort, swish, twint, us_bank_account, wechat_pay, or - /// zip. + /// sofort, swish, twint, upi, us_bank_account, + /// wechat_pay, or zip. /// [JsonProperty("excluded_payment_method_types")] [STJS.JsonPropertyName("excluded_payment_method_types")] @@ -221,6 +221,14 @@ public class SessionCreateOptions : BaseOptions, IHasMetadata [STJS.JsonConverter(typeof(STJUnixDateTimeConverter))] public DateTime? ExpiresAt { get; set; } + /// + /// The integration identifier for this Checkout Session. Multiple Checkout Sessions can + /// have the same integration identifier. + /// + [JsonProperty("integration_identifier")] + [STJS.JsonPropertyName("integration_identifier")] + public string IntegrationIdentifier { get; set; } + /// /// Generate a post-purchase Invoice for one-time payments. /// @@ -397,8 +405,8 @@ public class SessionCreateOptions : BaseOptions, IHasMetadata /// multibanco, naver_pay, nz_bank_account, oxxo, p24, /// pay_by_bank, payco, paynow, paypal, payto, /// pix, promptpay, revolut_pay, samsung_pay, satispay, - /// sepa_debit, sofort, swish, twint, us_bank_account, - /// wechat_pay, or zip. + /// sepa_debit, sofort, swish, twint, upi, + /// us_bank_account, wechat_pay, or zip. /// [JsonProperty("payment_method_types")] [STJS.JsonPropertyName("payment_method_types")] @@ -519,7 +527,8 @@ public class SessionCreateOptions : BaseOptions, IHasMetadata /// /// The UI mode of the Session. Defaults to hosted. - /// One of: custom, embedded, or hosted. + /// One of: custom, elements, embedded, embedded_page, + /// form, hosted, or hosted_page. /// [JsonProperty("ui_mode")] [STJS.JsonPropertyName("ui_mode")] diff --git a/src/Stripe.net/Services/Checkout/Sessions/SessionPaymentMethodOptionsCryptoOptions.cs b/src/Stripe.net/Services/Checkout/Sessions/SessionPaymentMethodOptionsCryptoOptions.cs new file mode 100644 index 0000000000..c1f8971b1c --- /dev/null +++ b/src/Stripe.net/Services/Checkout/Sessions/SessionPaymentMethodOptionsCryptoOptions.cs @@ -0,0 +1,35 @@ +// File generated from our OpenAPI spec +namespace Stripe.Checkout +{ + using Newtonsoft.Json; + using Stripe.Infrastructure; + using STJS = System.Text.Json.Serialization; + + [STJS.JsonConverter(typeof(STJStripeOptionsConverter))] + public class SessionPaymentMethodOptionsCryptoOptions : INestedOptions + { + /// + /// Indicates that you intend to make future payments with this PaymentIntent's payment + /// method. + /// + /// If you provide a Customer with the PaymentIntent, you can use this parameter to attach the payment method to + /// the Customer after the PaymentIntent is confirmed and the customer completes any + /// required actions. If you don't provide a Customer, you can still attach the payment method to a + /// Customer after the transaction completes. + /// + /// If the payment method is card_present and isn't a digital wallet, Stripe creates + /// and attaches a generated_card + /// payment method representing the card to the Customer instead. + /// + /// When processing card payments, Stripe uses setup_future_usage to help you comply + /// with regional legislation and network rules, such as SCA. + /// + [JsonProperty("setup_future_usage")] + [STJS.JsonPropertyName("setup_future_usage")] + public string SetupFutureUsage { get; set; } + } +} diff --git a/src/Stripe.net/Services/Checkout/Sessions/SessionPaymentMethodOptionsOptions.cs b/src/Stripe.net/Services/Checkout/Sessions/SessionPaymentMethodOptionsOptions.cs index aca4ddd0b1..bbc65ec806 100644 --- a/src/Stripe.net/Services/Checkout/Sessions/SessionPaymentMethodOptionsOptions.cs +++ b/src/Stripe.net/Services/Checkout/Sessions/SessionPaymentMethodOptionsOptions.cs @@ -100,6 +100,13 @@ public class SessionPaymentMethodOptionsOptions : INestedOptions [STJS.JsonPropertyName("cashapp")] public SessionPaymentMethodOptionsCashappOptions Cashapp { get; set; } + /// + /// contains details about the Crypto payment method options. + /// + [JsonProperty("crypto")] + [STJS.JsonPropertyName("crypto")] + public SessionPaymentMethodOptionsCryptoOptions Crypto { get; set; } + /// /// contains details about the Customer Balance payment method options. /// @@ -310,6 +317,13 @@ public class SessionPaymentMethodOptionsOptions : INestedOptions [STJS.JsonPropertyName("twint")] public SessionPaymentMethodOptionsTwintOptions Twint { get; set; } + /// + /// contains details about the UPI payment method options. + /// + [JsonProperty("upi")] + [STJS.JsonPropertyName("upi")] + public SessionPaymentMethodOptionsUpiOptions Upi { get; set; } + /// /// contains details about the Us Bank Account payment method options. /// diff --git a/src/Stripe.net/Services/Checkout/Sessions/SessionPaymentMethodOptionsUpiMandateOptionsOptions.cs b/src/Stripe.net/Services/Checkout/Sessions/SessionPaymentMethodOptionsUpiMandateOptionsOptions.cs new file mode 100644 index 0000000000..d12f160619 --- /dev/null +++ b/src/Stripe.net/Services/Checkout/Sessions/SessionPaymentMethodOptionsUpiMandateOptionsOptions.cs @@ -0,0 +1,46 @@ +// File generated from our OpenAPI spec +namespace Stripe.Checkout +{ + using System; + using Newtonsoft.Json; + using Stripe.Infrastructure; + using STJS = System.Text.Json.Serialization; + + [STJS.JsonConverter(typeof(STJStripeOptionsConverter))] + public class SessionPaymentMethodOptionsUpiMandateOptionsOptions : INestedOptions + { + /// + /// Amount to be charged for future payments. + /// + [JsonProperty("amount")] + [STJS.JsonPropertyName("amount")] + public long? Amount { get; set; } + + /// + /// One of fixed or maximum. If fixed, the amount param refers + /// to the exact amount to be charged in future payments. If maximum, the amount + /// charged can be up to the value passed for the amount param. + /// One of: fixed, or maximum. + /// + [JsonProperty("amount_type")] + [STJS.JsonPropertyName("amount_type")] + public string AmountType { get; set; } + + /// + /// A description of the mandate or subscription that is meant to be displayed to the + /// customer. + /// + [JsonProperty("description")] + [STJS.JsonPropertyName("description")] + public string Description { get; set; } + + /// + /// End date of the mandate or subscription. + /// + [JsonProperty("end_date")] + [JsonConverter(typeof(UnixDateTimeConverter))] + [STJS.JsonPropertyName("end_date")] + [STJS.JsonConverter(typeof(STJUnixDateTimeConverter))] + public DateTime? EndDate { get; set; } + } +} diff --git a/src/Stripe.net/Services/Checkout/Sessions/SessionPaymentMethodOptionsUpiOptions.cs b/src/Stripe.net/Services/Checkout/Sessions/SessionPaymentMethodOptionsUpiOptions.cs new file mode 100644 index 0000000000..2ab641aaf2 --- /dev/null +++ b/src/Stripe.net/Services/Checkout/Sessions/SessionPaymentMethodOptionsUpiOptions.cs @@ -0,0 +1,25 @@ +// File generated from our OpenAPI spec +namespace Stripe.Checkout +{ + using Newtonsoft.Json; + using Stripe.Infrastructure; + using STJS = System.Text.Json.Serialization; + + [STJS.JsonConverter(typeof(STJStripeOptionsConverter))] + public class SessionPaymentMethodOptionsUpiOptions : INestedOptions + { + /// + /// Additional fields for Mandate creation. + /// + [JsonProperty("mandate_options")] + [STJS.JsonPropertyName("mandate_options")] + public SessionPaymentMethodOptionsUpiMandateOptionsOptions MandateOptions { get; set; } + + /// + /// One of: none, off_session, or on_session. + /// + [JsonProperty("setup_future_usage")] + [STJS.JsonPropertyName("setup_future_usage")] + public string SetupFutureUsage { get; set; } + } +} diff --git a/src/Stripe.net/Services/Checkout/Sessions/SessionSubscriptionDataOptions.cs b/src/Stripe.net/Services/Checkout/Sessions/SessionSubscriptionDataOptions.cs index a73e06dd23..6080cc8694 100644 --- a/src/Stripe.net/Services/Checkout/Sessions/SessionSubscriptionDataOptions.cs +++ b/src/Stripe.net/Services/Checkout/Sessions/SessionSubscriptionDataOptions.cs @@ -81,6 +81,15 @@ public class SessionSubscriptionDataOptions : INestedOptions, IHasMetadata [STJS.JsonPropertyName("on_behalf_of")] public string OnBehalfOf { get; set; } + /// + /// Specifies an interval for how often to bill for any pending invoice items. It is + /// analogous to calling Create an + /// invoice for the given subscription at the specified interval. + /// + [JsonProperty("pending_invoice_item_interval")] + [STJS.JsonPropertyName("pending_invoice_item_interval")] + public SessionSubscriptionDataPendingInvoiceItemIntervalOptions PendingInvoiceItemInterval { get; set; } + /// /// Determines how to handle prorations resulting from the billing_cycle_anchor. If /// no value is passed, the default is create_prorations. diff --git a/src/Stripe.net/Services/Checkout/Sessions/SessionSubscriptionDataPendingInvoiceItemIntervalOptions.cs b/src/Stripe.net/Services/Checkout/Sessions/SessionSubscriptionDataPendingInvoiceItemIntervalOptions.cs new file mode 100644 index 0000000000..10520dfd98 --- /dev/null +++ b/src/Stripe.net/Services/Checkout/Sessions/SessionSubscriptionDataPendingInvoiceItemIntervalOptions.cs @@ -0,0 +1,29 @@ +// File generated from our OpenAPI spec +namespace Stripe.Checkout +{ + using Newtonsoft.Json; + using Stripe.Infrastructure; + using STJS = System.Text.Json.Serialization; + + [STJS.JsonConverter(typeof(STJStripeOptionsConverter))] + public class SessionSubscriptionDataPendingInvoiceItemIntervalOptions : INestedOptions + { + /// + /// Specifies invoicing frequency. Either day, week, month or + /// year. + /// One of: day, month, week, or year. + /// + [JsonProperty("interval")] + [STJS.JsonPropertyName("interval")] + public string Interval { get; set; } + + /// + /// The number of intervals between invoices. For example, interval=month and + /// interval_count=3 bills every 3 months. Maximum of one year interval allowed (1 + /// year, 12 months, or 52 weeks). + /// + [JsonProperty("interval_count")] + [STJS.JsonPropertyName("interval_count")] + public long? IntervalCount { get; set; } + } +} diff --git a/src/Stripe.net/Services/CreditNotePreviewLines/CreditNotePreviewLinesLineOptions.cs b/src/Stripe.net/Services/CreditNotePreviewLines/CreditNotePreviewLinesLineOptions.cs index 63d3182e8b..8a62443362 100644 --- a/src/Stripe.net/Services/CreditNotePreviewLines/CreditNotePreviewLinesLineOptions.cs +++ b/src/Stripe.net/Services/CreditNotePreviewLines/CreditNotePreviewLinesLineOptions.cs @@ -7,7 +7,7 @@ namespace Stripe using STJS = System.Text.Json.Serialization; [STJS.JsonConverter(typeof(STJStripeOptionsConverter))] - public class CreditNotePreviewLinesLineOptions : INestedOptions + public class CreditNotePreviewLinesLineOptions : INestedOptions, IHasMetadata { /// /// The line item amount to credit. Only valid when type is invoice_line_item. @@ -34,6 +34,16 @@ public class CreditNotePreviewLinesLineOptions : INestedOptions [STJS.JsonPropertyName("invoice_line_item")] public string InvoiceLineItem { get; set; } + /// + /// Set of key-value pairs that you can + /// attach to an object. This can be useful for storing additional information about the + /// object in a structured format. Individual keys can be unset by posting an empty value to + /// them. All keys can be unset by posting an empty value to metadata. + /// + [JsonProperty("metadata")] + [STJS.JsonPropertyName("metadata")] + public Dictionary Metadata { get; set; } + /// /// The line item quantity to credit. /// diff --git a/src/Stripe.net/Services/CreditNotes/CreditNoteLineOptions.cs b/src/Stripe.net/Services/CreditNotes/CreditNoteLineOptions.cs index 40aad5c9f4..a084eafb18 100644 --- a/src/Stripe.net/Services/CreditNotes/CreditNoteLineOptions.cs +++ b/src/Stripe.net/Services/CreditNotes/CreditNoteLineOptions.cs @@ -7,7 +7,7 @@ namespace Stripe using STJS = System.Text.Json.Serialization; [STJS.JsonConverter(typeof(STJStripeOptionsConverter))] - public class CreditNoteLineOptions : INestedOptions + public class CreditNoteLineOptions : INestedOptions, IHasMetadata { /// /// The line item amount to credit. Only valid when type is invoice_line_item. @@ -34,6 +34,16 @@ public class CreditNoteLineOptions : INestedOptions [STJS.JsonPropertyName("invoice_line_item")] public string InvoiceLineItem { get; set; } + /// + /// Set of key-value pairs that you can + /// attach to an object. This can be useful for storing additional information about the + /// object in a structured format. Individual keys can be unset by posting an empty value to + /// them. All keys can be unset by posting an empty value to metadata. + /// + [JsonProperty("metadata")] + [STJS.JsonPropertyName("metadata")] + public Dictionary Metadata { get; set; } + /// /// The line item quantity to credit. /// diff --git a/src/Stripe.net/Services/CustomerPaymentMethods/CustomerPaymentMethodListOptions.cs b/src/Stripe.net/Services/CustomerPaymentMethods/CustomerPaymentMethodListOptions.cs index 3db08a835d..ee78537693 100644 --- a/src/Stripe.net/Services/CustomerPaymentMethods/CustomerPaymentMethodListOptions.cs +++ b/src/Stripe.net/Services/CustomerPaymentMethods/CustomerPaymentMethodListOptions.cs @@ -33,7 +33,7 @@ public class CustomerPaymentMethodListOptions : ListOptions /// oxxo, p24, pay_by_bank, payco, paynow, paypal, /// payto, pix, promptpay, revolut_pay, samsung_pay, /// satispay, sepa_debit, sofort, swish, twint, - /// us_bank_account, wechat_pay, or zip. + /// upi, us_bank_account, wechat_pay, or zip. /// [JsonProperty("type")] [STJS.JsonPropertyName("type")] diff --git a/src/Stripe.net/Services/CustomerPaymentSources/CustomerPaymentSourceService.cs b/src/Stripe.net/Services/CustomerPaymentSources/CustomerPaymentSourceService.cs index 494c55863e..a7a8e58697 100644 --- a/src/Stripe.net/Services/CustomerPaymentSources/CustomerPaymentSourceService.cs +++ b/src/Stripe.net/Services/CustomerPaymentSources/CustomerPaymentSourceService.cs @@ -35,7 +35,7 @@ public CustomerPaymentSourceService(IStripeClient client) /// ///

If the card’s owner has no default card, then the new card will become the default. /// However, if the owner already has a default, then it will not change. To change the - /// default, you should update the + /// default, you should update the /// customer to have a new default_source.

. ///
public virtual IPaymentSource Create(string parentId, CustomerPaymentSourceCreateOptions options = null, RequestOptions requestOptions = null) @@ -49,7 +49,7 @@ public virtual IPaymentSource Create(string parentId, CustomerPaymentSourceCreat /// ///

If the card’s owner has no default card, then the new card will become the default. /// However, if the owner already has a default, then it will not change. To change the - /// default, you should update the + /// default, you should update the /// customer to have a new default_source.

. ///
public virtual Task CreateAsync(string parentId, CustomerPaymentSourceCreateOptions options = null, RequestOptions requestOptions = null, CancellationToken cancellationToken = default) diff --git a/src/Stripe.net/Services/InvoiceItems/InvoiceItemCreateOptions.cs b/src/Stripe.net/Services/InvoiceItems/InvoiceItemCreateOptions.cs index fce6d09bda..31bfc7d810 100644 --- a/src/Stripe.net/Services/InvoiceItems/InvoiceItemCreateOptions.cs +++ b/src/Stripe.net/Services/InvoiceItems/InvoiceItemCreateOptions.cs @@ -115,12 +115,24 @@ public class InvoiceItemCreateOptions : BaseOptions, IHasMetadata public InvoiceItemPricingOptions Pricing { get; set; } /// - /// Non-negative integer. The quantity of units for the invoice item. + /// Non-negative integer. The quantity of units for the invoice item. Use + /// quantity_decimal instead to provide decimal precision. This field will be + /// deprecated in favor of quantity_decimal in a future version. /// [JsonProperty("quantity")] [STJS.JsonPropertyName("quantity")] public long? Quantity { get; set; } + /// + /// Non-negative decimal with at most 12 decimal places. The quantity of units for the + /// invoice item. + /// + [JsonProperty("quantity_decimal")] + [JsonConverter(typeof(DecimalStringConverter))] + [STJS.JsonNumberHandling(STJS.JsonNumberHandling.AllowReadingFromString | STJS.JsonNumberHandling.WriteAsString)] + [STJS.JsonPropertyName("quantity_decimal")] + public decimal? QuantityDecimal { get; set; } + /// /// The ID of a subscription to add this invoice item to. When left blank, the invoice item /// is added to the next upcoming scheduled invoice. When set, scheduled invoices for diff --git a/src/Stripe.net/Services/InvoiceItems/InvoiceItemUpdateOptions.cs b/src/Stripe.net/Services/InvoiceItems/InvoiceItemUpdateOptions.cs index 52b64aba8a..8e748277f2 100644 --- a/src/Stripe.net/Services/InvoiceItems/InvoiceItemUpdateOptions.cs +++ b/src/Stripe.net/Services/InvoiceItems/InvoiceItemUpdateOptions.cs @@ -82,12 +82,24 @@ public class InvoiceItemUpdateOptions : BaseOptions, IHasMetadata public InvoiceItemPricingOptions Pricing { get; set; } /// - /// Non-negative integer. The quantity of units for the invoice item. + /// Non-negative integer. The quantity of units for the invoice item. Use + /// quantity_decimal instead to provide decimal precision. This field will be + /// deprecated in favor of quantity_decimal in a future version. /// [JsonProperty("quantity")] [STJS.JsonPropertyName("quantity")] public long? Quantity { get; set; } + /// + /// Non-negative decimal with at most 12 decimal places. The quantity of units for the line + /// item. + /// + [JsonProperty("quantity_decimal")] + [JsonConverter(typeof(DecimalStringConverter))] + [STJS.JsonNumberHandling(STJS.JsonNumberHandling.AllowReadingFromString | STJS.JsonNumberHandling.WriteAsString)] + [STJS.JsonPropertyName("quantity_decimal")] + public decimal? QuantityDecimal { get; set; } + /// /// Only required if a default diff --git a/src/Stripe.net/Services/InvoiceLineItems/InvoiceLineItemUpdateOptions.cs b/src/Stripe.net/Services/InvoiceLineItems/InvoiceLineItemUpdateOptions.cs index e81d598d86..12040adddf 100644 --- a/src/Stripe.net/Services/InvoiceLineItems/InvoiceLineItemUpdateOptions.cs +++ b/src/Stripe.net/Services/InvoiceLineItems/InvoiceLineItemUpdateOptions.cs @@ -49,11 +49,11 @@ public class InvoiceLineItemUpdateOptions : BaseOptions, IHasMetadata /// attach to an object. This can be useful for storing additional information about the /// object in a structured format. Individual keys can be unset by posting an empty value to /// them. All keys can be unset by posting an empty value to metadata. For type=subscription - /// line items, the incoming metadata specified on the request is directly used to set this - /// value, in contrast to type=invoiceitem line - /// items, where any existing metadata on the invoice line is merged with the incoming data. + /// href="https://stripe.com/api/invoices/line_item">type=subscription line items, the + /// incoming metadata specified on the request is directly used to set this value, in + /// contrast to type=invoiceitem + /// line items, where any existing metadata on the invoice line is merged with the incoming + /// data. /// [JsonProperty("metadata")] [STJS.JsonPropertyName("metadata")] @@ -87,12 +87,24 @@ public class InvoiceLineItemUpdateOptions : BaseOptions, IHasMetadata public InvoiceLineItemPricingOptions Pricing { get; set; } /// - /// Non-negative integer. The quantity of units for the line item. + /// Non-negative integer. The quantity of units for the line item. Use + /// quantity_decimal instead to provide decimal precision. This field will be + /// deprecated in favor of quantity_decimal in a future version. /// [JsonProperty("quantity")] [STJS.JsonPropertyName("quantity")] public long? Quantity { get; set; } + /// + /// Non-negative decimal with at most 12 decimal places. The quantity of units for the line + /// item. + /// + [JsonProperty("quantity_decimal")] + [JsonConverter(typeof(DecimalStringConverter))] + [STJS.JsonNumberHandling(STJS.JsonNumberHandling.AllowReadingFromString | STJS.JsonNumberHandling.WriteAsString)] + [STJS.JsonPropertyName("quantity_decimal")] + public decimal? QuantityDecimal { get; set; } + /// /// A list of up to 10 tax amounts for this line item. This can be useful if you calculate /// taxes on your own or use a third-party to calculate them. You cannot set tax amounts if diff --git a/src/Stripe.net/Services/Invoices/InvoiceLineOptions.cs b/src/Stripe.net/Services/Invoices/InvoiceLineOptions.cs index eae7f756fb..5bb9909213 100644 --- a/src/Stripe.net/Services/Invoices/InvoiceLineOptions.cs +++ b/src/Stripe.net/Services/Invoices/InvoiceLineOptions.cs @@ -111,12 +111,24 @@ public class InvoiceLineOptions : INestedOptions, IHasMetadata, IHasId public InvoiceLinePricingOptions Pricing { get; set; } /// - /// Non-negative integer. The quantity of units for the line item. + /// Non-negative integer. The quantity of units for the line item. Use + /// quantity_decimal instead to provide decimal precision. This field will be + /// deprecated in favor of quantity_decimal in a future version. /// [JsonProperty("quantity")] [STJS.JsonPropertyName("quantity")] public long? Quantity { get; set; } + /// + /// Non-negative decimal with at most 12 decimal places. The quantity of units for the line + /// item. + /// + [JsonProperty("quantity_decimal")] + [JsonConverter(typeof(DecimalStringConverter))] + [STJS.JsonNumberHandling(STJS.JsonNumberHandling.AllowReadingFromString | STJS.JsonNumberHandling.WriteAsString)] + [STJS.JsonPropertyName("quantity_decimal")] + public decimal? QuantityDecimal { get; set; } + /// /// A list of up to 10 tax amounts for this line item. This can be useful if you calculate /// taxes on your own or use a third-party to calculate them. You cannot set tax amounts if diff --git a/src/Stripe.net/Services/Invoices/InvoiceService.cs b/src/Stripe.net/Services/Invoices/InvoiceService.cs index 0c2aa564b3..b55177a876 100644 --- a/src/Stripe.net/Services/Invoices/InvoiceService.cs +++ b/src/Stripe.net/Services/Invoices/InvoiceService.cs @@ -93,7 +93,7 @@ public virtual Task AttachPaymentAsync(string id, InvoiceAttachPaymentO /// ///

This endpoint creates a draft invoice for a given customer. The invoice remains a - /// draft until you finalize the + /// draft until you finalize the /// invoice, which allows you to pay or send the invoice to your customers.

. ///
@@ -104,7 +104,7 @@ public virtual Invoice Create(InvoiceCreateOptions options, RequestOptions reque /// ///

This endpoint creates a draft invoice for a given customer. The invoice remains a - /// draft until you finalize the + /// draft until you finalize the /// invoice, which allows you to pay or send the invoice to your customers.

. ///
@@ -179,7 +179,7 @@ public virtual Task CreatePreviewAsync(InvoiceCreatePreviewOptions opti ///

Permanently deletes a one-off invoice draft. This cannot be undone. Attempts to /// delete invoices that are no longer in a draft state will fail; once an invoice has been /// finalized or if an invoice is for a subscription, it must be voided.

. + /// href="https://stripe.com/api/invoices/void">voided.

. ///
public virtual Invoice Delete(string id, InvoiceDeleteOptions options = null, RequestOptions requestOptions = null) { @@ -190,7 +190,7 @@ public virtual Invoice Delete(string id, InvoiceDeleteOptions options = null, Re ///

Permanently deletes a one-off invoice draft. This cannot be undone. Attempts to /// delete invoices that are no longer in a draft state will fail; once an invoice has been /// finalized or if an invoice is for a subscription, it must be voided.

. + /// href="https://stripe.com/api/invoices/void">voided.

. ///
public virtual Task DeleteAsync(string id, InvoiceDeleteOptions options = null, RequestOptions requestOptions = null, CancellationToken cancellationToken = default) { @@ -465,15 +465,15 @@ public virtual Task UpdateLinesAsync(string id, InvoiceUpdateLinesOptio /// ///

Mark a finalized invoice as void. This cannot be undone. Voiding an invoice is - /// similar to deletion, however it + /// similar to deletion, however it /// only applies to finalized invoices and maintains a papertrail where the invoice can /// still be found.

. /// ///

Consult with local regulations to determine whether and how an invoice might be /// amended, canceled, or voided in the jurisdiction you’re doing business in. You might - /// need to issue another invoice - /// or credit note instead. - /// Stripe recommends that you consult with your legal counsel for advice specific to your + /// need to issue another invoice or credit note instead. Stripe + /// recommends that you consult with your legal counsel for advice specific to your /// business.

. ///
public virtual Invoice VoidInvoice(string id, InvoiceVoidOptions options = null, RequestOptions requestOptions = null) @@ -483,15 +483,15 @@ public virtual Invoice VoidInvoice(string id, InvoiceVoidOptions options = null, /// ///

Mark a finalized invoice as void. This cannot be undone. Voiding an invoice is - /// similar to deletion, however it + /// similar to deletion, however it /// only applies to finalized invoices and maintains a papertrail where the invoice can /// still be found.

. /// ///

Consult with local regulations to determine whether and how an invoice might be /// amended, canceled, or voided in the jurisdiction you’re doing business in. You might - /// need to issue another invoice - /// or credit note instead. - /// Stripe recommends that you consult with your legal counsel for advice specific to your + /// need to issue another invoice or credit note instead. Stripe + /// recommends that you consult with your legal counsel for advice specific to your /// business.

. ///
public virtual Task VoidInvoiceAsync(string id, InvoiceVoidOptions options = null, RequestOptions requestOptions = null, CancellationToken cancellationToken = default) diff --git a/src/Stripe.net/Services/Issuing/Cardholders/CardholderIndividualCardIssuingUserTermsAcceptanceOptions.cs b/src/Stripe.net/Services/Issuing/Cardholders/CardholderIndividualCardIssuingUserTermsAcceptanceOptions.cs index 8177ad2875..95314082d9 100644 --- a/src/Stripe.net/Services/Issuing/Cardholders/CardholderIndividualCardIssuingUserTermsAcceptanceOptions.cs +++ b/src/Stripe.net/Services/Issuing/Cardholders/CardholderIndividualCardIssuingUserTermsAcceptanceOptions.cs @@ -11,7 +11,6 @@ public class CardholderIndividualCardIssuingUserTermsAcceptanceOptions : INested { /// /// The Unix timestamp marking when the cardholder accepted the Authorized User Terms. - /// Required for Celtic Spend Card users. /// [JsonProperty("date")] [JsonConverter(typeof(UnixDateTimeConverter))] @@ -20,8 +19,7 @@ public class CardholderIndividualCardIssuingUserTermsAcceptanceOptions : INested public DateTime? Date { get; set; } /// - /// The IP address from which the cardholder accepted the Authorized User Terms. Required - /// for Celtic Spend Card users. + /// The IP address from which the cardholder accepted the Authorized User Terms. /// [JsonProperty("ip")] [STJS.JsonPropertyName("ip")] diff --git a/src/Stripe.net/Services/Issuing/Cards/CardCreateOptions.cs b/src/Stripe.net/Services/Issuing/Cards/CardCreateOptions.cs index 36a2531cf5..39b0ed53b9 100644 --- a/src/Stripe.net/Services/Issuing/Cards/CardCreateOptions.cs +++ b/src/Stripe.net/Services/Issuing/Cards/CardCreateOptions.cs @@ -50,6 +50,15 @@ public class CardCreateOptions : BaseOptions, IHasMetadata [STJS.JsonPropertyName("financial_account")] public string FinancialAccount { get; set; } + /// + /// Rules that control the lifecycle of this card, such as automatic cancellation. Refer to + /// our documentation + /// for more details. + /// + [JsonProperty("lifecycle_controls")] + [STJS.JsonPropertyName("lifecycle_controls")] + public CardLifecycleControlsOptions LifecycleControls { get; set; } + /// /// Set of key-value pairs that you can /// attach to an object. This can be useful for storing additional information about the diff --git a/src/Stripe.net/Services/Issuing/Cards/CardLifecycleControlsCancelAfterOptions.cs b/src/Stripe.net/Services/Issuing/Cards/CardLifecycleControlsCancelAfterOptions.cs new file mode 100644 index 0000000000..97e540ee67 --- /dev/null +++ b/src/Stripe.net/Services/Issuing/Cards/CardLifecycleControlsCancelAfterOptions.cs @@ -0,0 +1,20 @@ +// File generated from our OpenAPI spec +namespace Stripe.Issuing +{ + using Newtonsoft.Json; + using Stripe.Infrastructure; + using STJS = System.Text.Json.Serialization; + + [STJS.JsonConverter(typeof(STJStripeOptionsConverter))] + public class CardLifecycleControlsCancelAfterOptions : INestedOptions + { + /// + /// The card is automatically cancelled when it makes this number of non-zero payment + /// authorizations and transactions. The count includes penny authorizations, but doesn't + /// include non-payment actions, such as authorization advice. + /// + [JsonProperty("payment_count")] + [STJS.JsonPropertyName("payment_count")] + public long? PaymentCount { get; set; } + } +} diff --git a/src/Stripe.net/Services/Issuing/Cards/CardLifecycleControlsOptions.cs b/src/Stripe.net/Services/Issuing/Cards/CardLifecycleControlsOptions.cs new file mode 100644 index 0000000000..63246c7dee --- /dev/null +++ b/src/Stripe.net/Services/Issuing/Cards/CardLifecycleControlsOptions.cs @@ -0,0 +1,18 @@ +// File generated from our OpenAPI spec +namespace Stripe.Issuing +{ + using Newtonsoft.Json; + using Stripe.Infrastructure; + using STJS = System.Text.Json.Serialization; + + [STJS.JsonConverter(typeof(STJStripeOptionsConverter))] + public class CardLifecycleControlsOptions : INestedOptions + { + /// + /// Cancels the card after the specified conditions are met. + /// + [JsonProperty("cancel_after")] + [STJS.JsonPropertyName("cancel_after")] + public CardLifecycleControlsCancelAfterOptions CancelAfter { get; set; } + } +} diff --git a/src/Stripe.net/Services/PaymentIntents/PaymentIntentConfirmOptions.cs b/src/Stripe.net/Services/PaymentIntents/PaymentIntentConfirmOptions.cs index 2c08c54bdb..a671cc0826 100644 --- a/src/Stripe.net/Services/PaymentIntents/PaymentIntentConfirmOptions.cs +++ b/src/Stripe.net/Services/PaymentIntents/PaymentIntentConfirmOptions.cs @@ -61,8 +61,8 @@ public class PaymentIntentConfirmOptions : BaseOptions /// naver_pay, nz_bank_account, oxxo, p24, pay_by_bank, /// payco, paynow, paypal, payto, pix, promptpay, /// revolut_pay, samsung_pay, satispay, sepa_debit, - /// sofort, swish, twint, us_bank_account, wechat_pay, or - /// zip. + /// sofort, swish, twint, upi, us_bank_account, + /// wechat_pay, or zip. /// [JsonProperty("excluded_payment_method_types")] [STJS.JsonPropertyName("excluded_payment_method_types")] diff --git a/src/Stripe.net/Services/PaymentIntents/PaymentIntentCreateOptions.cs b/src/Stripe.net/Services/PaymentIntents/PaymentIntentCreateOptions.cs index 9a73b1134a..6518428c29 100644 --- a/src/Stripe.net/Services/PaymentIntents/PaymentIntentCreateOptions.cs +++ b/src/Stripe.net/Services/PaymentIntents/PaymentIntentCreateOptions.cs @@ -167,8 +167,8 @@ public class PaymentIntentCreateOptions : BaseOptions, IHasMetadata /// naver_pay, nz_bank_account, oxxo, p24, pay_by_bank, /// payco, paynow, paypal, payto, pix, promptpay, /// revolut_pay, samsung_pay, satispay, sepa_debit, - /// sofort, swish, twint, us_bank_account, wechat_pay, or - /// zip. + /// sofort, swish, twint, upi, us_bank_account, + /// wechat_pay, or zip. ///
[JsonProperty("excluded_payment_method_types")] [STJS.JsonPropertyName("excluded_payment_method_types")] diff --git a/src/Stripe.net/Services/PaymentIntents/PaymentIntentPaymentMethodDataOptions.cs b/src/Stripe.net/Services/PaymentIntents/PaymentIntentPaymentMethodDataOptions.cs index a9fff22aa9..b7c78afd63 100644 --- a/src/Stripe.net/Services/PaymentIntents/PaymentIntentPaymentMethodDataOptions.cs +++ b/src/Stripe.net/Services/PaymentIntents/PaymentIntentPaymentMethodDataOptions.cs @@ -436,13 +436,21 @@ public class PaymentIntentPaymentMethodDataOptions : INestedOptions, IHasMetadat /// naver_pay, nz_bank_account, oxxo, p24, pay_by_bank, /// payco, paynow, paypal, payto, pix, promptpay, /// revolut_pay, samsung_pay, satispay, sepa_debit, - /// sofort, swish, twint, us_bank_account, wechat_pay, or - /// zip. + /// sofort, swish, twint, upi, us_bank_account, + /// wechat_pay, or zip. /// [JsonProperty("type")] [STJS.JsonPropertyName("type")] public string Type { get; set; } + /// + /// If this is a upi PaymentMethod, this hash contains details about the UPI payment + /// method. + /// + [JsonProperty("upi")] + [STJS.JsonPropertyName("upi")] + public PaymentIntentPaymentMethodDataUpiOptions Upi { get; set; } + /// /// If this is an us_bank_account PaymentMethod, this hash contains details about the /// US bank account payment method. diff --git a/src/Stripe.net/Services/PaymentIntents/PaymentIntentPaymentMethodDataUpiMandateOptionsOptions.cs b/src/Stripe.net/Services/PaymentIntents/PaymentIntentPaymentMethodDataUpiMandateOptionsOptions.cs new file mode 100644 index 0000000000..28b6958c58 --- /dev/null +++ b/src/Stripe.net/Services/PaymentIntents/PaymentIntentPaymentMethodDataUpiMandateOptionsOptions.cs @@ -0,0 +1,46 @@ +// File generated from our OpenAPI spec +namespace Stripe +{ + using System; + using Newtonsoft.Json; + using Stripe.Infrastructure; + using STJS = System.Text.Json.Serialization; + + [STJS.JsonConverter(typeof(STJStripeOptionsConverter))] + public class PaymentIntentPaymentMethodDataUpiMandateOptionsOptions : INestedOptions + { + /// + /// Amount to be charged for future payments. + /// + [JsonProperty("amount")] + [STJS.JsonPropertyName("amount")] + public long? Amount { get; set; } + + /// + /// One of fixed or maximum. If fixed, the amount param refers + /// to the exact amount to be charged in future payments. If maximum, the amount + /// charged can be up to the value passed for the amount param. + /// One of: fixed, or maximum. + /// + [JsonProperty("amount_type")] + [STJS.JsonPropertyName("amount_type")] + public string AmountType { get; set; } + + /// + /// A description of the mandate or subscription that is meant to be displayed to the + /// customer. + /// + [JsonProperty("description")] + [STJS.JsonPropertyName("description")] + public string Description { get; set; } + + /// + /// End date of the mandate or subscription. + /// + [JsonProperty("end_date")] + [JsonConverter(typeof(UnixDateTimeConverter))] + [STJS.JsonPropertyName("end_date")] + [STJS.JsonConverter(typeof(STJUnixDateTimeConverter))] + public DateTime? EndDate { get; set; } + } +} diff --git a/src/Stripe.net/Services/PaymentIntents/PaymentIntentPaymentMethodDataUpiOptions.cs b/src/Stripe.net/Services/PaymentIntents/PaymentIntentPaymentMethodDataUpiOptions.cs new file mode 100644 index 0000000000..d5fa8e26fb --- /dev/null +++ b/src/Stripe.net/Services/PaymentIntents/PaymentIntentPaymentMethodDataUpiOptions.cs @@ -0,0 +1,18 @@ +// File generated from our OpenAPI spec +namespace Stripe +{ + using Newtonsoft.Json; + using Stripe.Infrastructure; + using STJS = System.Text.Json.Serialization; + + [STJS.JsonConverter(typeof(STJStripeOptionsConverter))] + public class PaymentIntentPaymentMethodDataUpiOptions : INestedOptions + { + /// + /// Configuration options for setting up an eMandate. + /// + [JsonProperty("mandate_options")] + [STJS.JsonPropertyName("mandate_options")] + public PaymentIntentPaymentMethodDataUpiMandateOptionsOptions MandateOptions { get; set; } + } +} diff --git a/src/Stripe.net/Services/PaymentIntents/PaymentIntentPaymentMethodOptionsAcssDebitOptions.cs b/src/Stripe.net/Services/PaymentIntents/PaymentIntentPaymentMethodOptionsAcssDebitOptions.cs index 48de0dad0f..ff4d1d794b 100644 --- a/src/Stripe.net/Services/PaymentIntents/PaymentIntentPaymentMethodOptionsAcssDebitOptions.cs +++ b/src/Stripe.net/Services/PaymentIntents/PaymentIntentPaymentMethodOptionsAcssDebitOptions.cs @@ -54,7 +54,7 @@ public class PaymentIntentPaymentMethodOptionsAcssDebitOptions : INestedOptions public string TargetDate { get; set; } /// - /// Bank account verification method. + /// Bank account verification method. The default value is automatic. /// One of: automatic, instant, or microdeposits. /// [JsonProperty("verification_method")] diff --git a/src/Stripe.net/Services/PaymentIntents/PaymentIntentPaymentMethodOptionsCardMandateOptionsOptions.cs b/src/Stripe.net/Services/PaymentIntents/PaymentIntentPaymentMethodOptionsCardMandateOptionsOptions.cs index 410e63e2b7..9b7ee1cd2a 100644 --- a/src/Stripe.net/Services/PaymentIntents/PaymentIntentPaymentMethodOptionsCardMandateOptionsOptions.cs +++ b/src/Stripe.net/Services/PaymentIntents/PaymentIntentPaymentMethodOptionsCardMandateOptionsOptions.cs @@ -11,7 +11,7 @@ namespace Stripe public class PaymentIntentPaymentMethodOptionsCardMandateOptionsOptions : INestedOptions { /// - /// Amount to be charged for future payments. + /// Amount to be charged for future payments, specified in the presentment currency. /// [JsonProperty("amount")] [STJS.JsonPropertyName("amount")] diff --git a/src/Stripe.net/Services/PaymentIntents/PaymentIntentPaymentMethodOptionsOptions.cs b/src/Stripe.net/Services/PaymentIntents/PaymentIntentPaymentMethodOptionsOptions.cs index 4b8af60ab4..69b3cd4ede 100644 --- a/src/Stripe.net/Services/PaymentIntents/PaymentIntentPaymentMethodOptionsOptions.cs +++ b/src/Stripe.net/Services/PaymentIntents/PaymentIntentPaymentMethodOptionsOptions.cs @@ -399,6 +399,14 @@ public class PaymentIntentPaymentMethodOptionsOptions : INestedOptions [STJS.JsonPropertyName("twint")] public PaymentIntentPaymentMethodOptionsTwintOptions Twint { get; set; } + /// + /// If this is a upi PaymentIntent, this sub-hash contains details about the UPI + /// payment method options. + /// + [JsonProperty("upi")] + [STJS.JsonPropertyName("upi")] + public PaymentIntentPaymentMethodOptionsUpiOptions Upi { get; set; } + /// /// If this is a us_bank_account PaymentMethod, this sub-hash contains details about /// the US bank account payment method options. diff --git a/src/Stripe.net/Services/PaymentIntents/PaymentIntentPaymentMethodOptionsUpiMandateOptionsOptions.cs b/src/Stripe.net/Services/PaymentIntents/PaymentIntentPaymentMethodOptionsUpiMandateOptionsOptions.cs new file mode 100644 index 0000000000..dd0cb92a5c --- /dev/null +++ b/src/Stripe.net/Services/PaymentIntents/PaymentIntentPaymentMethodOptionsUpiMandateOptionsOptions.cs @@ -0,0 +1,46 @@ +// File generated from our OpenAPI spec +namespace Stripe +{ + using System; + using Newtonsoft.Json; + using Stripe.Infrastructure; + using STJS = System.Text.Json.Serialization; + + [STJS.JsonConverter(typeof(STJStripeOptionsConverter))] + public class PaymentIntentPaymentMethodOptionsUpiMandateOptionsOptions : INestedOptions + { + /// + /// Amount to be charged for future payments. + /// + [JsonProperty("amount")] + [STJS.JsonPropertyName("amount")] + public long? Amount { get; set; } + + /// + /// One of fixed or maximum. If fixed, the amount param refers + /// to the exact amount to be charged in future payments. If maximum, the amount + /// charged can be up to the value passed for the amount param. + /// One of: fixed, or maximum. + /// + [JsonProperty("amount_type")] + [STJS.JsonPropertyName("amount_type")] + public string AmountType { get; set; } + + /// + /// A description of the mandate or subscription that is meant to be displayed to the + /// customer. + /// + [JsonProperty("description")] + [STJS.JsonPropertyName("description")] + public string Description { get; set; } + + /// + /// End date of the mandate or subscription. + /// + [JsonProperty("end_date")] + [JsonConverter(typeof(UnixDateTimeConverter))] + [STJS.JsonPropertyName("end_date")] + [STJS.JsonConverter(typeof(STJUnixDateTimeConverter))] + public DateTime? EndDate { get; set; } + } +} diff --git a/src/Stripe.net/Services/PaymentIntents/PaymentIntentPaymentMethodOptionsUpiOptions.cs b/src/Stripe.net/Services/PaymentIntents/PaymentIntentPaymentMethodOptionsUpiOptions.cs new file mode 100644 index 0000000000..efcc6fb09a --- /dev/null +++ b/src/Stripe.net/Services/PaymentIntents/PaymentIntentPaymentMethodOptionsUpiOptions.cs @@ -0,0 +1,25 @@ +// File generated from our OpenAPI spec +namespace Stripe +{ + using Newtonsoft.Json; + using Stripe.Infrastructure; + using STJS = System.Text.Json.Serialization; + + [STJS.JsonConverter(typeof(STJStripeOptionsConverter))] + public class PaymentIntentPaymentMethodOptionsUpiOptions : INestedOptions + { + /// + /// Configuration options for setting up an eMandate. + /// + [JsonProperty("mandate_options")] + [STJS.JsonPropertyName("mandate_options")] + public PaymentIntentPaymentMethodOptionsUpiMandateOptionsOptions MandateOptions { get; set; } + + /// + /// One of: none, off_session, or on_session. + /// + [JsonProperty("setup_future_usage")] + [STJS.JsonPropertyName("setup_future_usage")] + public string SetupFutureUsage { get; set; } + } +} diff --git a/src/Stripe.net/Services/PaymentIntents/PaymentIntentPaymentMethodOptionsUsBankAccountOptions.cs b/src/Stripe.net/Services/PaymentIntents/PaymentIntentPaymentMethodOptionsUsBankAccountOptions.cs index 0169bb6454..e6fb6461e0 100644 --- a/src/Stripe.net/Services/PaymentIntents/PaymentIntentPaymentMethodOptionsUsBankAccountOptions.cs +++ b/src/Stripe.net/Services/PaymentIntents/PaymentIntentPaymentMethodOptionsUsBankAccountOptions.cs @@ -76,7 +76,7 @@ public class PaymentIntentPaymentMethodOptionsUsBankAccountOptions : INestedOpti public string TransactionPurpose { get; set; } /// - /// Bank account verification method. + /// Bank account verification method. The default value is automatic. /// One of: automatic, instant, or microdeposits. /// [JsonProperty("verification_method")] diff --git a/src/Stripe.net/Services/PaymentIntents/PaymentIntentService.cs b/src/Stripe.net/Services/PaymentIntents/PaymentIntentService.cs index 683bbdccf7..a0339fd948 100644 --- a/src/Stripe.net/Services/PaymentIntents/PaymentIntentService.cs +++ b/src/Stripe.net/Services/PaymentIntents/PaymentIntentService.cs @@ -63,9 +63,10 @@ public virtual Task ApplyCustomerBalanceAsync(string id, PaymentI /// status of requires_capture, the remaining amount_capturable is /// automatically refunded.

. /// - ///

You can’t cancel the PaymentIntent for a Checkout Session. Expire the Checkout - /// Session instead.

. + ///

You can directly cancel the PaymentIntent for a Checkout Session only when the + /// PaymentIntent has a status of requires_capture. Otherwise, you must expire the Checkout + /// Session.

. ///
public virtual PaymentIntent Cancel(string id, PaymentIntentCancelOptions options = null, RequestOptions requestOptions = null) { @@ -83,9 +84,10 @@ public virtual PaymentIntent Cancel(string id, PaymentIntentCancelOptions option /// status of requires_capture, the remaining amount_capturable is /// automatically refunded.

. /// - ///

You can’t cancel the PaymentIntent for a Checkout Session. Expire the Checkout - /// Session instead.

. + ///

You can directly cancel the PaymentIntent for a Checkout Session only when the + /// PaymentIntent has a status of requires_capture. Otherwise, you must expire the Checkout + /// Session.

. ///
public virtual Task CancelAsync(string id, PaymentIntentCancelOptions options = null, RequestOptions requestOptions = null, CancellationToken cancellationToken = default) { diff --git a/src/Stripe.net/Services/PaymentIntents/PaymentIntentUpdateOptions.cs b/src/Stripe.net/Services/PaymentIntents/PaymentIntentUpdateOptions.cs index 495e37d9d3..5c7d3bc993 100644 --- a/src/Stripe.net/Services/PaymentIntents/PaymentIntentUpdateOptions.cs +++ b/src/Stripe.net/Services/PaymentIntents/PaymentIntentUpdateOptions.cs @@ -114,8 +114,8 @@ public class PaymentIntentUpdateOptions : BaseOptions, IHasMetadata /// naver_pay, nz_bank_account, oxxo, p24, pay_by_bank, /// payco, paynow, paypal, payto, pix, promptpay, /// revolut_pay, samsung_pay, satispay, sepa_debit, - /// sofort, swish, twint, us_bank_account, wechat_pay, or - /// zip. + /// sofort, swish, twint, upi, us_bank_account, + /// wechat_pay, or zip. /// [JsonProperty("excluded_payment_method_types")] [STJS.JsonPropertyName("excluded_payment_method_types")] diff --git a/src/Stripe.net/Services/PaymentLinks/PaymentLinkCreateOptions.cs b/src/Stripe.net/Services/PaymentLinks/PaymentLinkCreateOptions.cs index 42638b1305..253dfcb8f3 100644 --- a/src/Stripe.net/Services/PaymentLinks/PaymentLinkCreateOptions.cs +++ b/src/Stripe.net/Services/PaymentLinks/PaymentLinkCreateOptions.cs @@ -199,7 +199,7 @@ public class PaymentLinkCreateOptions : BaseOptions, IHasMetadata /// mobilepay, multibanco, oxxo, p24, pay_by_bank, /// paynow, paypal, payto, pix, promptpay, /// satispay, sepa_debit, sofort, swish, twint, - /// us_bank_account, wechat_pay, or zip. + /// upi, us_bank_account, wechat_pay, or zip. /// [JsonProperty("payment_method_types")] [STJS.JsonPropertyName("payment_method_types")] diff --git a/src/Stripe.net/Services/PaymentLinks/PaymentLinkUpdateOptions.cs b/src/Stripe.net/Services/PaymentLinks/PaymentLinkUpdateOptions.cs index 08ae02f6d7..7881db1035 100644 --- a/src/Stripe.net/Services/PaymentLinks/PaymentLinkUpdateOptions.cs +++ b/src/Stripe.net/Services/PaymentLinks/PaymentLinkUpdateOptions.cs @@ -164,7 +164,7 @@ public class PaymentLinkUpdateOptions : BaseOptions, IHasMetadata /// mobilepay, multibanco, oxxo, p24, pay_by_bank, /// paynow, paypal, payto, pix, promptpay, /// satispay, sepa_debit, sofort, swish, twint, - /// us_bank_account, wechat_pay, or zip. + /// upi, us_bank_account, wechat_pay, or zip. /// [JsonProperty("payment_method_types")] [STJS.JsonPropertyName("payment_method_types")] diff --git a/src/Stripe.net/Services/PaymentMethodConfigurations/PaymentMethodConfigurationCreateOptions.cs b/src/Stripe.net/Services/PaymentMethodConfigurations/PaymentMethodConfigurationCreateOptions.cs index 9fbbd89ab6..2b0a280a71 100644 --- a/src/Stripe.net/Services/PaymentMethodConfigurations/PaymentMethodConfigurationCreateOptions.cs +++ b/src/Stripe.net/Services/PaymentMethodConfigurations/PaymentMethodConfigurationCreateOptions.cs @@ -548,6 +548,14 @@ public class PaymentMethodConfigurationCreateOptions : BaseOptions [STJS.JsonPropertyName("twint")] public PaymentMethodConfigurationTwintOptions Twint { get; set; } + /// + /// Unified Payment Interface (UPI) is India's leading payment method with exponential + /// growth since it launched in 2016. + /// + [JsonProperty("upi")] + [STJS.JsonPropertyName("upi")] + public PaymentMethodConfigurationUpiOptions Upi { get; set; } + /// /// Stripe users in the United States can accept ACH direct debit payments from customers /// with a US bank account using the Automated Clearing House (ACH) payments system operated diff --git a/src/Stripe.net/Services/PaymentMethodConfigurations/PaymentMethodConfigurationUpdateOptions.cs b/src/Stripe.net/Services/PaymentMethodConfigurations/PaymentMethodConfigurationUpdateOptions.cs index 7dcad8e75c..d3ac5fbdd9 100644 --- a/src/Stripe.net/Services/PaymentMethodConfigurations/PaymentMethodConfigurationUpdateOptions.cs +++ b/src/Stripe.net/Services/PaymentMethodConfigurations/PaymentMethodConfigurationUpdateOptions.cs @@ -548,6 +548,14 @@ public class PaymentMethodConfigurationUpdateOptions : BaseOptions [STJS.JsonPropertyName("twint")] public PaymentMethodConfigurationTwintOptions Twint { get; set; } + /// + /// Unified Payment Interface (UPI) is India's leading payment method with exponential + /// growth since it launched in 2016. + /// + [JsonProperty("upi")] + [STJS.JsonPropertyName("upi")] + public PaymentMethodConfigurationUpiOptions Upi { get; set; } + /// /// Stripe users in the United States can accept ACH direct debit payments from customers /// with a US bank account using the Automated Clearing House (ACH) payments system operated diff --git a/src/Stripe.net/Services/PaymentMethodConfigurations/PaymentMethodConfigurationUpiDisplayPreferenceOptions.cs b/src/Stripe.net/Services/PaymentMethodConfigurations/PaymentMethodConfigurationUpiDisplayPreferenceOptions.cs new file mode 100644 index 0000000000..dfb13e513a --- /dev/null +++ b/src/Stripe.net/Services/PaymentMethodConfigurations/PaymentMethodConfigurationUpiDisplayPreferenceOptions.cs @@ -0,0 +1,19 @@ +// File generated from our OpenAPI spec +namespace Stripe +{ + using Newtonsoft.Json; + using Stripe.Infrastructure; + using STJS = System.Text.Json.Serialization; + + [STJS.JsonConverter(typeof(STJStripeOptionsConverter))] + public class PaymentMethodConfigurationUpiDisplayPreferenceOptions : INestedOptions + { + /// + /// The account's preference for whether or not to display this payment method. + /// One of: none, off, or on. + /// + [JsonProperty("preference")] + [STJS.JsonPropertyName("preference")] + public string Preference { get; set; } + } +} diff --git a/src/Stripe.net/Services/PaymentMethodConfigurations/PaymentMethodConfigurationUpiOptions.cs b/src/Stripe.net/Services/PaymentMethodConfigurations/PaymentMethodConfigurationUpiOptions.cs new file mode 100644 index 0000000000..ee095ce889 --- /dev/null +++ b/src/Stripe.net/Services/PaymentMethodConfigurations/PaymentMethodConfigurationUpiOptions.cs @@ -0,0 +1,18 @@ +// File generated from our OpenAPI spec +namespace Stripe +{ + using Newtonsoft.Json; + using Stripe.Infrastructure; + using STJS = System.Text.Json.Serialization; + + [STJS.JsonConverter(typeof(STJStripeOptionsConverter))] + public class PaymentMethodConfigurationUpiOptions : INestedOptions + { + /// + /// Whether or not the payment method should be displayed. + /// + [JsonProperty("display_preference")] + [STJS.JsonPropertyName("display_preference")] + public PaymentMethodConfigurationUpiDisplayPreferenceOptions DisplayPreference { get; set; } + } +} diff --git a/src/Stripe.net/Services/PaymentMethods/PaymentMethodCreateOptions.cs b/src/Stripe.net/Services/PaymentMethods/PaymentMethodCreateOptions.cs index 8c700e9a67..a666aa3564 100644 --- a/src/Stripe.net/Services/PaymentMethods/PaymentMethodCreateOptions.cs +++ b/src/Stripe.net/Services/PaymentMethods/PaymentMethodCreateOptions.cs @@ -472,12 +472,20 @@ public class PaymentMethodCreateOptions : BaseOptions, IHasMetadata /// oxxo, p24, pay_by_bank, payco, paynow, paypal, /// payto, pix, promptpay, revolut_pay, samsung_pay, /// satispay, sepa_debit, sofort, swish, twint, - /// us_bank_account, wechat_pay, or zip. + /// upi, us_bank_account, wechat_pay, or zip. /// [JsonProperty("type")] [STJS.JsonPropertyName("type")] public string Type { get; set; } + /// + /// If this is a upi PaymentMethod, this hash contains details about the UPI payment + /// method. + /// + [JsonProperty("upi")] + [STJS.JsonPropertyName("upi")] + public PaymentMethodUpiOptions Upi { get; set; } + /// /// If this is an us_bank_account PaymentMethod, this hash contains details about the /// US bank account payment method. diff --git a/src/Stripe.net/Services/PaymentMethods/PaymentMethodListOptions.cs b/src/Stripe.net/Services/PaymentMethods/PaymentMethodListOptions.cs index c506576249..2f66ccafba 100644 --- a/src/Stripe.net/Services/PaymentMethods/PaymentMethodListOptions.cs +++ b/src/Stripe.net/Services/PaymentMethods/PaymentMethodListOptions.cs @@ -47,7 +47,7 @@ public class PaymentMethodListOptions : ListOptions /// oxxo, p24, pay_by_bank, payco, paynow, paypal, /// payto, pix, promptpay, revolut_pay, samsung_pay, /// satispay, sepa_debit, sofort, swish, twint, - /// us_bank_account, wechat_pay, or zip. + /// upi, us_bank_account, wechat_pay, or zip. /// [JsonProperty("type")] [STJS.JsonPropertyName("type")] diff --git a/src/Stripe.net/Services/PaymentMethods/PaymentMethodUpiMandateOptionsOptions.cs b/src/Stripe.net/Services/PaymentMethods/PaymentMethodUpiMandateOptionsOptions.cs new file mode 100644 index 0000000000..11fb323682 --- /dev/null +++ b/src/Stripe.net/Services/PaymentMethods/PaymentMethodUpiMandateOptionsOptions.cs @@ -0,0 +1,46 @@ +// File generated from our OpenAPI spec +namespace Stripe +{ + using System; + using Newtonsoft.Json; + using Stripe.Infrastructure; + using STJS = System.Text.Json.Serialization; + + [STJS.JsonConverter(typeof(STJStripeOptionsConverter))] + public class PaymentMethodUpiMandateOptionsOptions : INestedOptions + { + /// + /// Amount to be charged for future payments. + /// + [JsonProperty("amount")] + [STJS.JsonPropertyName("amount")] + public long? Amount { get; set; } + + /// + /// One of fixed or maximum. If fixed, the amount param refers + /// to the exact amount to be charged in future payments. If maximum, the amount + /// charged can be up to the value passed for the amount param. + /// One of: fixed, or maximum. + /// + [JsonProperty("amount_type")] + [STJS.JsonPropertyName("amount_type")] + public string AmountType { get; set; } + + /// + /// A description of the mandate or subscription that is meant to be displayed to the + /// customer. + /// + [JsonProperty("description")] + [STJS.JsonPropertyName("description")] + public string Description { get; set; } + + /// + /// End date of the mandate or subscription. + /// + [JsonProperty("end_date")] + [JsonConverter(typeof(UnixDateTimeConverter))] + [STJS.JsonPropertyName("end_date")] + [STJS.JsonConverter(typeof(STJUnixDateTimeConverter))] + public DateTime? EndDate { get; set; } + } +} diff --git a/src/Stripe.net/Services/PaymentMethods/PaymentMethodUpiOptions.cs b/src/Stripe.net/Services/PaymentMethods/PaymentMethodUpiOptions.cs new file mode 100644 index 0000000000..81b7d46006 --- /dev/null +++ b/src/Stripe.net/Services/PaymentMethods/PaymentMethodUpiOptions.cs @@ -0,0 +1,18 @@ +// File generated from our OpenAPI spec +namespace Stripe +{ + using Newtonsoft.Json; + using Stripe.Infrastructure; + using STJS = System.Text.Json.Serialization; + + [STJS.JsonConverter(typeof(STJStripeOptionsConverter))] + public class PaymentMethodUpiOptions : INestedOptions + { + /// + /// Configuration options for setting up an eMandate. + /// + [JsonProperty("mandate_options")] + [STJS.JsonPropertyName("mandate_options")] + public PaymentMethodUpiMandateOptionsOptions MandateOptions { get; set; } + } +} diff --git a/src/Stripe.net/Services/Payouts/PayoutService.cs b/src/Stripe.net/Services/Payouts/PayoutService.cs index 9b75d58ca6..9a7a029351 100644 --- a/src/Stripe.net/Services/Payouts/PayoutService.cs +++ b/src/Stripe.net/Services/Payouts/PayoutService.cs @@ -58,8 +58,8 @@ public virtual Task CancelAsync(string id, PayoutCancelOptions options = /// ///

If you create a manual payout on a Stripe account that uses multiple payment source /// types, you need to specify the source type balance that the payout draws from. The balance object details available - /// and pending amounts by source type.

. + /// href="https://stripe.com/api/balances/object">balance object details available and + /// pending amounts by source type.

. ///
public virtual Payout Create(PayoutCreateOptions options, RequestOptions requestOptions = null) { @@ -76,8 +76,8 @@ public virtual Payout Create(PayoutCreateOptions options, RequestOptions request /// ///

If you create a manual payout on a Stripe account that uses multiple payment source /// types, you need to specify the source type balance that the payout draws from. The balance object details available - /// and pending amounts by source type.

. + /// href="https://stripe.com/api/balances/object">balance object details available and + /// pending amounts by source type.

. /// public virtual Task CreateAsync(PayoutCreateOptions options, RequestOptions requestOptions = null, CancellationToken cancellationToken = default) { diff --git a/src/Stripe.net/Services/Radar/ValueLists/ValueListCreateOptions.cs b/src/Stripe.net/Services/Radar/ValueLists/ValueListCreateOptions.cs index a2d5d4f241..e1e1e7bf89 100644 --- a/src/Stripe.net/Services/Radar/ValueLists/ValueListCreateOptions.cs +++ b/src/Stripe.net/Services/Radar/ValueLists/ValueListCreateOptions.cs @@ -18,13 +18,14 @@ public class ValueListCreateOptions : BaseOptions, IHasMetadata /// /// Type of the items in the value list. One of card_fingerprint, card_bin, - /// email, ip_address, country, string, - /// case_sensitive_string, customer_id, sepa_debit_fingerprint, or - /// us_bank_account_fingerprint. Use string if the item type is unknown or - /// mixed. + /// crypto_fingerprint, email, ip_address, country, + /// string, case_sensitive_string, customer_id, + /// sepa_debit_fingerprint, or us_bank_account_fingerprint. Use string + /// if the item type is unknown or mixed. /// One of: card_bin, card_fingerprint, case_sensitive_string, - /// country, customer_id, email, ip_address, - /// sepa_debit_fingerprint, string, or us_bank_account_fingerprint. + /// country, crypto_fingerprint, customer_id, email, + /// ip_address, sepa_debit_fingerprint, string, or + /// us_bank_account_fingerprint. /// [JsonProperty("item_type")] [STJS.JsonPropertyName("item_type")] diff --git a/src/Stripe.net/Services/SetupIntents/SetupIntentCreateOptions.cs b/src/Stripe.net/Services/SetupIntents/SetupIntentCreateOptions.cs index 079b6401e8..f97bfc5371 100644 --- a/src/Stripe.net/Services/SetupIntents/SetupIntentCreateOptions.cs +++ b/src/Stripe.net/Services/SetupIntents/SetupIntentCreateOptions.cs @@ -90,8 +90,8 @@ public class SetupIntentCreateOptions : BaseOptions, IHasMetadata /// naver_pay, nz_bank_account, oxxo, p24, pay_by_bank, /// payco, paynow, paypal, payto, pix, promptpay, /// revolut_pay, samsung_pay, satispay, sepa_debit, - /// sofort, swish, twint, us_bank_account, wechat_pay, or - /// zip. + /// sofort, swish, twint, upi, us_bank_account, + /// wechat_pay, or zip. /// [JsonProperty("excluded_payment_method_types")] [STJS.JsonPropertyName("excluded_payment_method_types")] diff --git a/src/Stripe.net/Services/SetupIntents/SetupIntentPaymentMethodDataOptions.cs b/src/Stripe.net/Services/SetupIntents/SetupIntentPaymentMethodDataOptions.cs index 411f1f8734..d60f002867 100644 --- a/src/Stripe.net/Services/SetupIntents/SetupIntentPaymentMethodDataOptions.cs +++ b/src/Stripe.net/Services/SetupIntents/SetupIntentPaymentMethodDataOptions.cs @@ -436,13 +436,21 @@ public class SetupIntentPaymentMethodDataOptions : INestedOptions, IHasMetadata /// naver_pay, nz_bank_account, oxxo, p24, pay_by_bank, /// payco, paynow, paypal, payto, pix, promptpay, /// revolut_pay, samsung_pay, satispay, sepa_debit, - /// sofort, swish, twint, us_bank_account, wechat_pay, or - /// zip. + /// sofort, swish, twint, upi, us_bank_account, + /// wechat_pay, or zip. /// [JsonProperty("type")] [STJS.JsonPropertyName("type")] public string Type { get; set; } + /// + /// If this is a upi PaymentMethod, this hash contains details about the UPI payment + /// method. + /// + [JsonProperty("upi")] + [STJS.JsonPropertyName("upi")] + public SetupIntentPaymentMethodDataUpiOptions Upi { get; set; } + /// /// If this is an us_bank_account PaymentMethod, this hash contains details about the /// US bank account payment method. diff --git a/src/Stripe.net/Services/SetupIntents/SetupIntentPaymentMethodDataUpiMandateOptionsOptions.cs b/src/Stripe.net/Services/SetupIntents/SetupIntentPaymentMethodDataUpiMandateOptionsOptions.cs new file mode 100644 index 0000000000..09b710e31c --- /dev/null +++ b/src/Stripe.net/Services/SetupIntents/SetupIntentPaymentMethodDataUpiMandateOptionsOptions.cs @@ -0,0 +1,46 @@ +// File generated from our OpenAPI spec +namespace Stripe +{ + using System; + using Newtonsoft.Json; + using Stripe.Infrastructure; + using STJS = System.Text.Json.Serialization; + + [STJS.JsonConverter(typeof(STJStripeOptionsConverter))] + public class SetupIntentPaymentMethodDataUpiMandateOptionsOptions : INestedOptions + { + /// + /// Amount to be charged for future payments. + /// + [JsonProperty("amount")] + [STJS.JsonPropertyName("amount")] + public long? Amount { get; set; } + + /// + /// One of fixed or maximum. If fixed, the amount param refers + /// to the exact amount to be charged in future payments. If maximum, the amount + /// charged can be up to the value passed for the amount param. + /// One of: fixed, or maximum. + /// + [JsonProperty("amount_type")] + [STJS.JsonPropertyName("amount_type")] + public string AmountType { get; set; } + + /// + /// A description of the mandate or subscription that is meant to be displayed to the + /// customer. + /// + [JsonProperty("description")] + [STJS.JsonPropertyName("description")] + public string Description { get; set; } + + /// + /// End date of the mandate or subscription. + /// + [JsonProperty("end_date")] + [JsonConverter(typeof(UnixDateTimeConverter))] + [STJS.JsonPropertyName("end_date")] + [STJS.JsonConverter(typeof(STJUnixDateTimeConverter))] + public DateTime? EndDate { get; set; } + } +} diff --git a/src/Stripe.net/Services/SetupIntents/SetupIntentPaymentMethodDataUpiOptions.cs b/src/Stripe.net/Services/SetupIntents/SetupIntentPaymentMethodDataUpiOptions.cs new file mode 100644 index 0000000000..82c1ac6163 --- /dev/null +++ b/src/Stripe.net/Services/SetupIntents/SetupIntentPaymentMethodDataUpiOptions.cs @@ -0,0 +1,18 @@ +// File generated from our OpenAPI spec +namespace Stripe +{ + using Newtonsoft.Json; + using Stripe.Infrastructure; + using STJS = System.Text.Json.Serialization; + + [STJS.JsonConverter(typeof(STJStripeOptionsConverter))] + public class SetupIntentPaymentMethodDataUpiOptions : INestedOptions + { + /// + /// Configuration options for setting up an eMandate. + /// + [JsonProperty("mandate_options")] + [STJS.JsonPropertyName("mandate_options")] + public SetupIntentPaymentMethodDataUpiMandateOptionsOptions MandateOptions { get; set; } + } +} diff --git a/src/Stripe.net/Services/SetupIntents/SetupIntentPaymentMethodOptionsAcssDebitOptions.cs b/src/Stripe.net/Services/SetupIntents/SetupIntentPaymentMethodOptionsAcssDebitOptions.cs index 0c77c9673b..b028704894 100644 --- a/src/Stripe.net/Services/SetupIntents/SetupIntentPaymentMethodOptionsAcssDebitOptions.cs +++ b/src/Stripe.net/Services/SetupIntents/SetupIntentPaymentMethodOptionsAcssDebitOptions.cs @@ -26,7 +26,7 @@ public class SetupIntentPaymentMethodOptionsAcssDebitOptions : INestedOptions public SetupIntentPaymentMethodOptionsAcssDebitMandateOptionsOptions MandateOptions { get; set; } /// - /// Bank account verification method. + /// Bank account verification method. The default value is automatic. /// One of: automatic, instant, or microdeposits. /// [JsonProperty("verification_method")] diff --git a/src/Stripe.net/Services/SetupIntents/SetupIntentPaymentMethodOptionsCardMandateOptionsOptions.cs b/src/Stripe.net/Services/SetupIntents/SetupIntentPaymentMethodOptionsCardMandateOptionsOptions.cs index 63ed9452f4..e4b29c2afa 100644 --- a/src/Stripe.net/Services/SetupIntents/SetupIntentPaymentMethodOptionsCardMandateOptionsOptions.cs +++ b/src/Stripe.net/Services/SetupIntents/SetupIntentPaymentMethodOptionsCardMandateOptionsOptions.cs @@ -11,7 +11,7 @@ namespace Stripe public class SetupIntentPaymentMethodOptionsCardMandateOptionsOptions : INestedOptions { /// - /// Amount to be charged for future payments. + /// Amount to be charged for future payments, specified in the presentment currency. /// [JsonProperty("amount")] [STJS.JsonPropertyName("amount")] diff --git a/src/Stripe.net/Services/SetupIntents/SetupIntentPaymentMethodOptionsOptions.cs b/src/Stripe.net/Services/SetupIntents/SetupIntentPaymentMethodOptionsOptions.cs index 1b9a633456..f619fc5595 100644 --- a/src/Stripe.net/Services/SetupIntents/SetupIntentPaymentMethodOptionsOptions.cs +++ b/src/Stripe.net/Services/SetupIntents/SetupIntentPaymentMethodOptionsOptions.cs @@ -87,6 +87,14 @@ public class SetupIntentPaymentMethodOptionsOptions : INestedOptions [STJS.JsonPropertyName("sepa_debit")] public SetupIntentPaymentMethodOptionsSepaDebitOptions SepaDebit { get; set; } + /// + /// If this is a upi SetupIntent, this sub-hash contains details about the UPI + /// payment method options. + /// + [JsonProperty("upi")] + [STJS.JsonPropertyName("upi")] + public SetupIntentPaymentMethodOptionsUpiOptions Upi { get; set; } + /// /// If this is a us_bank_account SetupIntent, this sub-hash contains details about /// the US bank account payment method options. diff --git a/src/Stripe.net/Services/SetupIntents/SetupIntentPaymentMethodOptionsUpiMandateOptionsOptions.cs b/src/Stripe.net/Services/SetupIntents/SetupIntentPaymentMethodOptionsUpiMandateOptionsOptions.cs new file mode 100644 index 0000000000..18834187d1 --- /dev/null +++ b/src/Stripe.net/Services/SetupIntents/SetupIntentPaymentMethodOptionsUpiMandateOptionsOptions.cs @@ -0,0 +1,46 @@ +// File generated from our OpenAPI spec +namespace Stripe +{ + using System; + using Newtonsoft.Json; + using Stripe.Infrastructure; + using STJS = System.Text.Json.Serialization; + + [STJS.JsonConverter(typeof(STJStripeOptionsConverter))] + public class SetupIntentPaymentMethodOptionsUpiMandateOptionsOptions : INestedOptions + { + /// + /// Amount to be charged for future payments. + /// + [JsonProperty("amount")] + [STJS.JsonPropertyName("amount")] + public long? Amount { get; set; } + + /// + /// One of fixed or maximum. If fixed, the amount param refers + /// to the exact amount to be charged in future payments. If maximum, the amount + /// charged can be up to the value passed for the amount param. + /// One of: fixed, or maximum. + /// + [JsonProperty("amount_type")] + [STJS.JsonPropertyName("amount_type")] + public string AmountType { get; set; } + + /// + /// A description of the mandate or subscription that is meant to be displayed to the + /// customer. + /// + [JsonProperty("description")] + [STJS.JsonPropertyName("description")] + public string Description { get; set; } + + /// + /// End date of the mandate or subscription. + /// + [JsonProperty("end_date")] + [JsonConverter(typeof(UnixDateTimeConverter))] + [STJS.JsonPropertyName("end_date")] + [STJS.JsonConverter(typeof(STJUnixDateTimeConverter))] + public DateTime? EndDate { get; set; } + } +} diff --git a/src/Stripe.net/Services/SetupIntents/SetupIntentPaymentMethodOptionsUpiOptions.cs b/src/Stripe.net/Services/SetupIntents/SetupIntentPaymentMethodOptionsUpiOptions.cs new file mode 100644 index 0000000000..ee257c2415 --- /dev/null +++ b/src/Stripe.net/Services/SetupIntents/SetupIntentPaymentMethodOptionsUpiOptions.cs @@ -0,0 +1,25 @@ +// File generated from our OpenAPI spec +namespace Stripe +{ + using Newtonsoft.Json; + using Stripe.Infrastructure; + using STJS = System.Text.Json.Serialization; + + [STJS.JsonConverter(typeof(STJStripeOptionsConverter))] + public class SetupIntentPaymentMethodOptionsUpiOptions : INestedOptions + { + /// + /// Configuration options for setting up an eMandate. + /// + [JsonProperty("mandate_options")] + [STJS.JsonPropertyName("mandate_options")] + public SetupIntentPaymentMethodOptionsUpiMandateOptionsOptions MandateOptions { get; set; } + + /// + /// One of: none, off_session, or on_session. + /// + [JsonProperty("setup_future_usage")] + [STJS.JsonPropertyName("setup_future_usage")] + public string SetupFutureUsage { get; set; } + } +} diff --git a/src/Stripe.net/Services/SetupIntents/SetupIntentPaymentMethodOptionsUsBankAccountOptions.cs b/src/Stripe.net/Services/SetupIntents/SetupIntentPaymentMethodOptionsUsBankAccountOptions.cs index 65c2cffa83..8edeb2b003 100644 --- a/src/Stripe.net/Services/SetupIntents/SetupIntentPaymentMethodOptionsUsBankAccountOptions.cs +++ b/src/Stripe.net/Services/SetupIntents/SetupIntentPaymentMethodOptionsUsBankAccountOptions.cs @@ -30,7 +30,7 @@ public class SetupIntentPaymentMethodOptionsUsBankAccountOptions : INestedOption public SetupIntentPaymentMethodOptionsUsBankAccountNetworksOptions Networks { get; set; } /// - /// Bank account verification method. + /// Bank account verification method. The default value is automatic. /// One of: automatic, instant, or microdeposits. /// [JsonProperty("verification_method")] diff --git a/src/Stripe.net/Services/SetupIntents/SetupIntentUpdateOptions.cs b/src/Stripe.net/Services/SetupIntents/SetupIntentUpdateOptions.cs index 4f4fd1d08f..5677596bfb 100644 --- a/src/Stripe.net/Services/SetupIntents/SetupIntentUpdateOptions.cs +++ b/src/Stripe.net/Services/SetupIntents/SetupIntentUpdateOptions.cs @@ -62,8 +62,8 @@ public class SetupIntentUpdateOptions : BaseOptions, IHasMetadata /// naver_pay, nz_bank_account, oxxo, p24, pay_by_bank, /// payco, paynow, paypal, payto, pix, promptpay, /// revolut_pay, samsung_pay, satispay, sepa_debit, - /// sofort, swish, twint, us_bank_account, wechat_pay, or - /// zip. + /// sofort, swish, twint, upi, us_bank_account, + /// wechat_pay, or zip. /// [JsonProperty("excluded_payment_method_types")] [STJS.JsonPropertyName("excluded_payment_method_types")] diff --git a/src/Stripe.net/Services/SubscriptionItems/SubscriptionItemCreateOptions.cs b/src/Stripe.net/Services/SubscriptionItems/SubscriptionItemCreateOptions.cs index 68fd21c33d..438609f587 100644 --- a/src/Stripe.net/Services/SubscriptionItems/SubscriptionItemCreateOptions.cs +++ b/src/Stripe.net/Services/SubscriptionItems/SubscriptionItemCreateOptions.cs @@ -107,7 +107,7 @@ public class SubscriptionItemCreateOptions : BaseOptions, IHasMetadata /// /// If set, the proration will be calculated as though the subscription was updated at the /// given time. This can be used to apply the same proration that was previewed with the upcoming invoice endpoint. + /// href="https://stripe.com/api/invoices/create_preview">upcoming invoice endpoint. /// [JsonProperty("proration_date")] [JsonConverter(typeof(UnixDateTimeConverter))] diff --git a/src/Stripe.net/Services/SubscriptionItems/SubscriptionItemDeleteOptions.cs b/src/Stripe.net/Services/SubscriptionItems/SubscriptionItemDeleteOptions.cs index 396c569840..1692e3d393 100644 --- a/src/Stripe.net/Services/SubscriptionItems/SubscriptionItemDeleteOptions.cs +++ b/src/Stripe.net/Services/SubscriptionItems/SubscriptionItemDeleteOptions.cs @@ -67,7 +67,7 @@ public class SubscriptionItemDeleteOptions : BaseOptions /// /// If set, the proration will be calculated as though the subscription was updated at the /// given time. This can be used to apply the same proration that was previewed with the upcoming invoice endpoint. + /// href="https://stripe.com/api/invoices/create_preview">upcoming invoice endpoint. /// [JsonProperty("proration_date")] [JsonConverter(typeof(UnixDateTimeConverter))] diff --git a/src/Stripe.net/Services/SubscriptionItems/SubscriptionItemUpdateOptions.cs b/src/Stripe.net/Services/SubscriptionItems/SubscriptionItemUpdateOptions.cs index 057b999ac1..7f896f953b 100644 --- a/src/Stripe.net/Services/SubscriptionItems/SubscriptionItemUpdateOptions.cs +++ b/src/Stripe.net/Services/SubscriptionItems/SubscriptionItemUpdateOptions.cs @@ -117,7 +117,7 @@ public class SubscriptionItemUpdateOptions : BaseOptions, IHasMetadata /// /// If set, the proration will be calculated as though the subscription was updated at the /// given time. This can be used to apply the same proration that was previewed with the upcoming invoice endpoint. + /// href="https://stripe.com/api/invoices/create_preview">upcoming invoice endpoint. /// [JsonProperty("proration_date")] [JsonConverter(typeof(UnixDateTimeConverter))] diff --git a/src/Stripe.net/Services/Subscriptions/SubscriptionCreateOptions.cs b/src/Stripe.net/Services/Subscriptions/SubscriptionCreateOptions.cs index 85aa58683f..0e133ae954 100644 --- a/src/Stripe.net/Services/Subscriptions/SubscriptionCreateOptions.cs +++ b/src/Stripe.net/Services/Subscriptions/SubscriptionCreateOptions.cs @@ -288,7 +288,7 @@ public class SubscriptionCreateOptions : BaseOptions, IHasMetadata /// /// Specifies an interval for how often to bill for any pending invoice items. It is - /// analogous to calling Create an + /// analogous to calling Create an /// invoice for the given subscription at the specified interval. /// [JsonProperty("pending_invoice_item_interval")] diff --git a/src/Stripe.net/Services/Subscriptions/SubscriptionPauseCollectionOptions.cs b/src/Stripe.net/Services/Subscriptions/SubscriptionPauseCollectionOptions.cs index 4a02779eb8..ba36a5b60a 100644 --- a/src/Stripe.net/Services/Subscriptions/SubscriptionPauseCollectionOptions.cs +++ b/src/Stripe.net/Services/Subscriptions/SubscriptionPauseCollectionOptions.cs @@ -10,8 +10,7 @@ namespace Stripe public class SubscriptionPauseCollectionOptions : INestedOptions { /// - /// The payment collection behavior for this subscription while paused. One of - /// keep_as_draft, mark_uncollectible, or void. + /// The payment collection behavior for this subscription while paused. /// One of: keep_as_draft, mark_uncollectible, or void. /// [JsonProperty("behavior")] diff --git a/src/Stripe.net/Services/Subscriptions/SubscriptionPaymentSettingsPaymentMethodOptionsCardMandateOptionsOptions.cs b/src/Stripe.net/Services/Subscriptions/SubscriptionPaymentSettingsPaymentMethodOptionsCardMandateOptionsOptions.cs index c0033eaf1e..c36f46a8d1 100644 --- a/src/Stripe.net/Services/Subscriptions/SubscriptionPaymentSettingsPaymentMethodOptionsCardMandateOptionsOptions.cs +++ b/src/Stripe.net/Services/Subscriptions/SubscriptionPaymentSettingsPaymentMethodOptionsCardMandateOptionsOptions.cs @@ -9,7 +9,7 @@ namespace Stripe public class SubscriptionPaymentSettingsPaymentMethodOptionsCardMandateOptionsOptions : INestedOptions { /// - /// Amount to be charged for future payments. + /// Amount to be charged for future payments, specified in the presentment currency. /// [JsonProperty("amount")] [STJS.JsonPropertyName("amount")] diff --git a/src/Stripe.net/Services/Subscriptions/SubscriptionService.cs b/src/Stripe.net/Services/Subscriptions/SubscriptionService.cs index e12ec294ca..0bd0630f4c 100644 --- a/src/Stripe.net/Services/Subscriptions/SubscriptionService.cs +++ b/src/Stripe.net/Services/Subscriptions/SubscriptionService.cs @@ -36,7 +36,7 @@ public SubscriptionService(IStripeClient client) /// ///

Any pending invoice items that you’ve created are still charged at the end of the /// period, unless manually deleted. If you’ve set the + /// href="https://stripe.com/api/invoiceitems/delete">deleted. If you’ve set the /// subscription to cancel at the end of the period, any pending prorations are also left in /// place and collected at the end of the period. But if the subscription is set to cancel /// immediately, pending prorations are removed if invoice_now and prorate are @@ -61,7 +61,7 @@ public virtual Subscription Cancel(string id, SubscriptionCancelOptions options /// ///

Any pending invoice items that you’ve created are still charged at the end of the /// period, unless manually deleted. If you’ve set the + /// href="https://stripe.com/api/invoiceitems/delete">deleted. If you’ve set the /// subscription to cancel at the end of the period, any pending prorations are also left in /// place and collected at the end of the period. But if the subscription is set to cancel /// immediately, pending prorations are removed if invoice_now and prorate are diff --git a/src/Stripe.net/Services/Subscriptions/SubscriptionUpdateOptions.cs b/src/Stripe.net/Services/Subscriptions/SubscriptionUpdateOptions.cs index 5d3f0c3206..f98d738446 100644 --- a/src/Stripe.net/Services/Subscriptions/SubscriptionUpdateOptions.cs +++ b/src/Stripe.net/Services/Subscriptions/SubscriptionUpdateOptions.cs @@ -250,7 +250,7 @@ public class SubscriptionUpdateOptions : BaseOptions, IHasMetadata ///

/// Specifies an interval for how often to bill for any pending invoice items. It is - /// analogous to calling Create an + /// analogous to calling Create an /// invoice for the given subscription at the specified interval. /// [JsonProperty("pending_invoice_item_interval")] diff --git a/src/Stripe.net/Services/Tax/Calculations/CalculationLineItemOptions.cs b/src/Stripe.net/Services/Tax/Calculations/CalculationLineItemOptions.cs index c9354b9623..25bacdb947 100644 --- a/src/Stripe.net/Services/Tax/Calculations/CalculationLineItemOptions.cs +++ b/src/Stripe.net/Services/Tax/Calculations/CalculationLineItemOptions.cs @@ -11,7 +11,7 @@ public class CalculationLineItemOptions : INestedOptions, IHasMetadata { /// /// A positive integer representing the line item's total price in the smallest currency unit. If + /// href="https://docs.stripe.com/currencies#minor-units">smallest currency unit. If /// tax_behavior=inclusive, then this amount includes taxes. Otherwise, taxes are /// calculated on top of this amount. /// diff --git a/src/Stripe.net/Services/Tax/Calculations/CalculationShippingCostOptions.cs b/src/Stripe.net/Services/Tax/Calculations/CalculationShippingCostOptions.cs index e1f68d1e7a..ceeccab752 100644 --- a/src/Stripe.net/Services/Tax/Calculations/CalculationShippingCostOptions.cs +++ b/src/Stripe.net/Services/Tax/Calculations/CalculationShippingCostOptions.cs @@ -10,7 +10,7 @@ public class CalculationShippingCostOptions : INestedOptions { /// /// A positive integer in the smallest currency unit + /// href="https://docs.stripe.com/currencies#minor-units">smallest currency unit /// representing the shipping charge. If tax_behavior=inclusive, then this amount /// includes taxes. Otherwise, taxes are calculated on top of this amount. /// diff --git a/src/Stripe.net/Services/Tax/Transactions/TransactionCreateReversalOptions.cs b/src/Stripe.net/Services/Tax/Transactions/TransactionCreateReversalOptions.cs index c9352d2011..4a19c23504 100644 --- a/src/Stripe.net/Services/Tax/Transactions/TransactionCreateReversalOptions.cs +++ b/src/Stripe.net/Services/Tax/Transactions/TransactionCreateReversalOptions.cs @@ -11,7 +11,7 @@ public class TransactionCreateReversalOptions : BaseOptions, IHasMetadata { /// /// A flat amount to reverse across the entire transaction, in the smallest currency unit in + /// href="https://docs.stripe.com/currencies#minor-units">smallest currency unit in /// negative. This value represents the total amount to refund from the transaction, /// including taxes. /// diff --git a/src/Stripe.net/Services/Tax/Transactions/TransactionLineItemOptions.cs b/src/Stripe.net/Services/Tax/Transactions/TransactionLineItemOptions.cs index b0a8406bf1..ace10c2dbb 100644 --- a/src/Stripe.net/Services/Tax/Transactions/TransactionLineItemOptions.cs +++ b/src/Stripe.net/Services/Tax/Transactions/TransactionLineItemOptions.cs @@ -11,7 +11,7 @@ public class TransactionLineItemOptions : INestedOptions, IHasMetadata { /// /// The amount to reverse, in the smallest currency unit in + /// href="https://docs.stripe.com/currencies#minor-units">smallest currency unit in /// negative. /// [JsonProperty("amount")] @@ -20,7 +20,7 @@ public class TransactionLineItemOptions : INestedOptions, IHasMetadata /// /// The amount of tax to reverse, in the smallest currency unit in + /// href="https://docs.stripe.com/currencies#minor-units">smallest currency unit in /// negative. /// [JsonProperty("amount_tax")] diff --git a/src/Stripe.net/Services/Tax/Transactions/TransactionShippingCostOptions.cs b/src/Stripe.net/Services/Tax/Transactions/TransactionShippingCostOptions.cs index 2b737aa431..a0390b8f85 100644 --- a/src/Stripe.net/Services/Tax/Transactions/TransactionShippingCostOptions.cs +++ b/src/Stripe.net/Services/Tax/Transactions/TransactionShippingCostOptions.cs @@ -10,7 +10,7 @@ public class TransactionShippingCostOptions : INestedOptions { /// /// The amount to reverse, in the smallest currency unit in + /// href="https://docs.stripe.com/currencies#minor-units">smallest currency unit in /// negative. /// [JsonProperty("amount")] @@ -19,7 +19,7 @@ public class TransactionShippingCostOptions : INestedOptions /// /// The amount of tax to reverse, in the smallest currency unit in + /// href="https://docs.stripe.com/currencies#minor-units">smallest currency unit in /// negative. /// [JsonProperty("amount_tax")] diff --git a/src/Stripe.net/Services/TestHelpers/ConfirmationTokens/ConfirmationTokenPaymentMethodDataOptions.cs b/src/Stripe.net/Services/TestHelpers/ConfirmationTokens/ConfirmationTokenPaymentMethodDataOptions.cs index 9c968e46b4..86bc312422 100644 --- a/src/Stripe.net/Services/TestHelpers/ConfirmationTokens/ConfirmationTokenPaymentMethodDataOptions.cs +++ b/src/Stripe.net/Services/TestHelpers/ConfirmationTokens/ConfirmationTokenPaymentMethodDataOptions.cs @@ -436,13 +436,21 @@ public class ConfirmationTokenPaymentMethodDataOptions : INestedOptions, IHasMet /// naver_pay, nz_bank_account, oxxo, p24, pay_by_bank, /// payco, paynow, paypal, payto, pix, promptpay, /// revolut_pay, samsung_pay, satispay, sepa_debit, - /// sofort, swish, twint, us_bank_account, wechat_pay, or - /// zip. + /// sofort, swish, twint, upi, us_bank_account, + /// wechat_pay, or zip. ///
[JsonProperty("type")] [STJS.JsonPropertyName("type")] public string Type { get; set; } + /// + /// If this is a upi PaymentMethod, this hash contains details about the UPI payment + /// method. + /// + [JsonProperty("upi")] + [STJS.JsonPropertyName("upi")] + public ConfirmationTokenPaymentMethodDataUpiOptions Upi { get; set; } + /// /// If this is an us_bank_account PaymentMethod, this hash contains details about the /// US bank account payment method. diff --git a/src/Stripe.net/Services/TestHelpers/ConfirmationTokens/ConfirmationTokenPaymentMethodDataUpiMandateOptionsOptions.cs b/src/Stripe.net/Services/TestHelpers/ConfirmationTokens/ConfirmationTokenPaymentMethodDataUpiMandateOptionsOptions.cs new file mode 100644 index 0000000000..7b210a8700 --- /dev/null +++ b/src/Stripe.net/Services/TestHelpers/ConfirmationTokens/ConfirmationTokenPaymentMethodDataUpiMandateOptionsOptions.cs @@ -0,0 +1,46 @@ +// File generated from our OpenAPI spec +namespace Stripe.TestHelpers +{ + using System; + using Newtonsoft.Json; + using Stripe.Infrastructure; + using STJS = System.Text.Json.Serialization; + + [STJS.JsonConverter(typeof(STJStripeOptionsConverter))] + public class ConfirmationTokenPaymentMethodDataUpiMandateOptionsOptions : INestedOptions + { + /// + /// Amount to be charged for future payments. + /// + [JsonProperty("amount")] + [STJS.JsonPropertyName("amount")] + public long? Amount { get; set; } + + /// + /// One of fixed or maximum. If fixed, the amount param refers + /// to the exact amount to be charged in future payments. If maximum, the amount + /// charged can be up to the value passed for the amount param. + /// One of: fixed, or maximum. + /// + [JsonProperty("amount_type")] + [STJS.JsonPropertyName("amount_type")] + public string AmountType { get; set; } + + /// + /// A description of the mandate or subscription that is meant to be displayed to the + /// customer. + /// + [JsonProperty("description")] + [STJS.JsonPropertyName("description")] + public string Description { get; set; } + + /// + /// End date of the mandate or subscription. + /// + [JsonProperty("end_date")] + [JsonConverter(typeof(UnixDateTimeConverter))] + [STJS.JsonPropertyName("end_date")] + [STJS.JsonConverter(typeof(STJUnixDateTimeConverter))] + public DateTime? EndDate { get; set; } + } +} diff --git a/src/Stripe.net/Services/TestHelpers/ConfirmationTokens/ConfirmationTokenPaymentMethodDataUpiOptions.cs b/src/Stripe.net/Services/TestHelpers/ConfirmationTokens/ConfirmationTokenPaymentMethodDataUpiOptions.cs new file mode 100644 index 0000000000..399e0448fd --- /dev/null +++ b/src/Stripe.net/Services/TestHelpers/ConfirmationTokens/ConfirmationTokenPaymentMethodDataUpiOptions.cs @@ -0,0 +1,18 @@ +// File generated from our OpenAPI spec +namespace Stripe.TestHelpers +{ + using Newtonsoft.Json; + using Stripe.Infrastructure; + using STJS = System.Text.Json.Serialization; + + [STJS.JsonConverter(typeof(STJStripeOptionsConverter))] + public class ConfirmationTokenPaymentMethodDataUpiOptions : INestedOptions + { + /// + /// Configuration options for setting up an eMandate. + /// + [JsonProperty("mandate_options")] + [STJS.JsonPropertyName("mandate_options")] + public ConfirmationTokenPaymentMethodDataUpiMandateOptionsOptions MandateOptions { get; set; } + } +} diff --git a/src/Stripe.net/Services/TestHelpers/Issuing/Authorizations/AuthorizationRiskAssessmentCardTestingRiskOptions.cs b/src/Stripe.net/Services/TestHelpers/Issuing/Authorizations/AuthorizationRiskAssessmentCardTestingRiskOptions.cs index 12593170ba..e9a6f1ae65 100644 --- a/src/Stripe.net/Services/TestHelpers/Issuing/Authorizations/AuthorizationRiskAssessmentCardTestingRiskOptions.cs +++ b/src/Stripe.net/Services/TestHelpers/Issuing/Authorizations/AuthorizationRiskAssessmentCardTestingRiskOptions.cs @@ -34,8 +34,8 @@ public class AuthorizationRiskAssessmentCardTestingRiskOptions : INestedOptions /// One of: elevated, highest, low, normal, not_assessed, /// or unknown. /// - [JsonProperty("risk_level")] - [STJS.JsonPropertyName("risk_level")] - public string RiskLevel { get; set; } + [JsonProperty("level")] + [STJS.JsonPropertyName("level")] + public string Level { get; set; } } } diff --git a/src/Stripe.net/Services/TestHelpers/Issuing/Authorizations/AuthorizationRiskAssessmentMerchantDisputeRiskOptions.cs b/src/Stripe.net/Services/TestHelpers/Issuing/Authorizations/AuthorizationRiskAssessmentMerchantDisputeRiskOptions.cs index 0dc9f97140..831ad2c9b0 100644 --- a/src/Stripe.net/Services/TestHelpers/Issuing/Authorizations/AuthorizationRiskAssessmentMerchantDisputeRiskOptions.cs +++ b/src/Stripe.net/Services/TestHelpers/Issuing/Authorizations/AuthorizationRiskAssessmentMerchantDisputeRiskOptions.cs @@ -24,8 +24,8 @@ public class AuthorizationRiskAssessmentMerchantDisputeRiskOptions : INestedOpti /// One of: elevated, highest, low, normal, not_assessed, /// or unknown. /// - [JsonProperty("risk_level")] - [STJS.JsonPropertyName("risk_level")] - public string RiskLevel { get; set; } + [JsonProperty("level")] + [STJS.JsonPropertyName("level")] + public string Level { get; set; } } } diff --git a/src/Stripe.net/Services/WebhookEndpoints/WebhookEndpointCreateOptions.cs b/src/Stripe.net/Services/WebhookEndpoints/WebhookEndpointCreateOptions.cs index 75c27c3a6c..4f7991478b 100644 --- a/src/Stripe.net/Services/WebhookEndpoints/WebhookEndpointCreateOptions.cs +++ b/src/Stripe.net/Services/WebhookEndpoints/WebhookEndpointCreateOptions.cs @@ -43,7 +43,8 @@ public class WebhookEndpointCreateOptions : BaseOptions, IHasMetadata /// 2025-03-31.basil, 2025-04-30.basil, 2025-05-28.basil, /// 2025-06-30.basil, 2025-07-30.basil, 2025-08-27.basil, /// 2025-09-30.clover, 2025-10-29.clover, 2025-11-17.clover, - /// 2025-12-15.clover, 2026-01-28.clover, or 2026-02-25.clover. + /// 2025-12-15.clover, 2026-01-28.clover, 2026-02-25.clover, or + /// 2026-03-25.dahlia. /// [JsonProperty("api_version")] [STJS.JsonPropertyName("api_version")]