Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion CODEGEN_VERSION
Original file line number Diff line number Diff line change
@@ -1 +1 @@
44014016ec56efb57a8cf6d0ee0771c2e6b4eebe
baff58c9d515cdd5f5c3231d101989d588788c6f
2 changes: 1 addition & 1 deletion OPENAPI_VERSION
Original file line number Diff line number Diff line change
@@ -1 +1 @@
v2349
v2442
2 changes: 1 addition & 1 deletion src/Stripe.net/Constants/ApiVersion.cs
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ namespace Stripe
{
internal class ApiVersion
{
public const string Current = "2026-07-29.dahlia";
public const string Current = "2026-08-26.dahlia";
public const string CurrentMajor = "dahlia";
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -64,6 +64,10 @@ public class AccountSessionComponents : StripeEntity<AccountSessionComponents>
[STJS.JsonPropertyName("payment_disputes")]
public AccountSessionComponentsPaymentDisputes PaymentDisputes { get; set; }

[JsonProperty("payment_method_settings")]
[STJS.JsonPropertyName("payment_method_settings")]
public AccountSessionComponentsPaymentMethodSettings PaymentMethodSettings { get; set; }

[JsonProperty("payments")]
[STJS.JsonPropertyName("payments")]
public AccountSessionComponentsPayments Payments { get; set; }
Expand Down
Original file line number Diff line number Diff line change
@@ -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 AccountSessionComponentsPaymentMethodSettings : StripeEntity<AccountSessionComponentsPaymentMethodSettings>
{
/// <summary>
/// Whether the embedded component is enabled.
/// </summary>
[JsonProperty("enabled")]
[STJS.JsonPropertyName("enabled")]
public bool Enabled { get; set; }

[JsonProperty("features")]
[STJS.JsonPropertyName("features")]
public AccountSessionComponentsPaymentMethodSettingsFeatures Features { get; set; }
}
}
Original file line number Diff line number Diff line change
@@ -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(STJStripeEntityConverter))]
public class AccountSessionComponentsPaymentMethodSettingsFeatures : StripeEntity<AccountSessionComponentsPaymentMethodSettingsFeatures>
{
/// <summary>
/// Whether Stripe user authentication is disabled. This value can only be <c>true</c> for
/// accounts where <c>controller.requirement_collection</c> is <c>application</c> for the
/// account. This is <c>false</c> by default.
/// </summary>
[JsonProperty("disable_stripe_user_authentication")]
[STJS.JsonPropertyName("disable_stripe_user_authentication")]
public bool DisableStripeUserAuthentication { get; set; }
}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,55 @@
// File generated from our OpenAPI spec
namespace Stripe.Billing
{
using Newtonsoft.Json;
using Stripe.Infrastructure;
using STJS = System.Text.Json.Serialization;

/// <summary>
/// A resource for the feedback options model (for custom cancellation reasons).
/// </summary>
[STJS.JsonConverter(typeof(STJStripeEntityConverter))]
public class FeedbackOption : StripeEntity<FeedbackOption>, IHasId, IHasObject
{
/// <summary>
/// Unique identifier for the object.
/// </summary>
[JsonProperty("id")]
[STJS.JsonPropertyName("id")]
public string Id { get; set; }

/// <summary>
/// String representing the object's type. Objects of the same type share the same value.
/// </summary>
[JsonProperty("object")]
[STJS.JsonPropertyName("object")]
public string Object { get; set; }

/// <summary>
/// An arbitrary string attached to the object. Often useful for displaying to users.
/// </summary>
[JsonProperty("description")]
[STJS.JsonPropertyName("description")]
public string Description { get; set; }

/// <summary>
/// If the object exists in live mode, the value is <c>true</c>. If the object exists in
/// test mode, the value is <c>false</c>.
/// </summary>
[JsonProperty("livemode")]
[STJS.JsonPropertyName("livemode")]
public bool Livemode { get; set; }

/// <summary>
/// The feedback option's status.
/// One of: <c>active</c>, or <c>inactive</c>.
/// </summary>
[JsonProperty("status")]
[STJS.JsonPropertyName("status")]
public string Status { get; set; }

[JsonProperty("status_transitions")]
[STJS.JsonPropertyName("status_transitions")]
public FeedbackOptionStatusTransitions StatusTransitions { get; set; }
}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
// File generated from our OpenAPI spec
namespace Stripe.Billing
{
using System;
using Newtonsoft.Json;
using Stripe.Infrastructure;
using STJS = System.Text.Json.Serialization;

[STJS.JsonConverter(typeof(STJStripeEntityConverter))]
public class FeedbackOptionStatusTransitions : StripeEntity<FeedbackOptionStatusTransitions>
{
/// <summary>
/// The time the feedback option was deactivated, if any. Measured in seconds since Unix
/// epoch.
/// </summary>
[JsonProperty("deactivated_at")]
[JsonConverter(typeof(UnixDateTimeConverter))]
[STJS.JsonPropertyName("deactivated_at")]
[STJS.JsonConverter(typeof(STJUnixDateTimeConverter))]
public DateTime? DeactivatedAt { get; set; }
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@
namespace Stripe.BillingPortal
{
using System.Collections.Generic;
using System.Linq;
using Newtonsoft.Json;
using Stripe.Infrastructure;
using STJS = System.Text.Json.Serialization;
Expand All @@ -16,6 +17,39 @@ public class ConfigurationFeaturesSubscriptionCancelCancellationReason : StripeE
[STJS.JsonPropertyName("enabled")]
public bool Enabled { get; set; }

#region Expandable FeedbackOptions

/// <summary>
/// (IDs of the FeedbackOptions)
/// The IDs of custom feedback options configured for this cancellation reason.
/// </summary>
[JsonIgnore]
[STJS.JsonIgnore]
public List<string> FeedbackOptionIds
{
get => this.InternalFeedbackOptions?.Select((x) => x.Id).ToList();
set => this.InternalFeedbackOptions = SetExpandableArrayIds<Billing.FeedbackOption>(value);
}

/// <summary>
/// (Expanded)
/// The IDs of custom feedback options configured for this cancellation reason.
///
/// For more information, see the <a href="https://stripe.com/docs/expand">expand documentation</a>.
/// </summary>
[JsonIgnore]
[STJS.JsonIgnore]
public List<Billing.FeedbackOption> FeedbackOptions
{
get => this.InternalFeedbackOptions?.Select((x) => x.ExpandedObject).ToList();
set => this.InternalFeedbackOptions = SetExpandableArrayObjects(value);
}

[JsonProperty("feedback_options", ItemConverterType = typeof(ExpandableFieldConverter<Billing.FeedbackOption>))]
[STJS.JsonPropertyName("feedback_options")]
internal List<ExpandableField<Billing.FeedbackOption>> InternalFeedbackOptions { get; set; }
#endregion

/// <summary>
/// Which cancellation reasons will be given as options to the customer.
/// One of: <c>customer_service</c>, <c>low_quality</c>, <c>missing_features</c>,
Expand Down
12 changes: 10 additions & 2 deletions src/Stripe.net/Entities/BillingPortal/Sessions/SessionFlow.cs
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,13 @@ public class SessionFlow : StripeEntity<SessionFlow>
[STJS.JsonPropertyName("after_completion")]
public SessionFlowAfterCompletion AfterCompletion { get; set; }

/// <summary>
/// Configuration when <c>flow.type=customer_update</c>.
/// </summary>
[JsonProperty("customer_update")]
[STJS.JsonPropertyName("customer_update")]
public SessionFlowCustomerUpdate CustomerUpdate { get; set; }

/// <summary>
/// Configuration when <c>flow.type=subscription_cancel</c>.
/// </summary>
Expand All @@ -35,8 +42,9 @@ public class SessionFlow : StripeEntity<SessionFlow>

/// <summary>
/// Type of flow that the customer will go through.
/// One of: <c>payment_method_update</c>, <c>subscription_cancel</c>,
/// <c>subscription_update</c>, or <c>subscription_update_confirm</c>.
/// One of: <c>customer_update</c>, <c>payment_method_update</c>,
/// <c>subscription_cancel</c>, <c>subscription_update</c>, or
/// <c>subscription_update_confirm</c>.
/// </summary>
[JsonProperty("type")]
[STJS.JsonPropertyName("type")]
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
// File generated from our OpenAPI spec
namespace Stripe.BillingPortal
{
using Newtonsoft.Json;
using Stripe.Infrastructure;
using STJS = System.Text.Json.Serialization;

[STJS.JsonConverter(typeof(STJStripeEntityConverter))]
public class SessionFlowCustomerUpdate : StripeEntity<SessionFlowCustomerUpdate>
{
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -8,5 +8,12 @@ namespace Stripe
[STJS.JsonConverter(typeof(STJStripeEntityConverter))]
public class ChargePaymentMethodDetailsCardWalletLink : StripeEntity<ChargePaymentMethodDetailsCardWalletLink>
{
/// <summary>
/// The <a href="https://docs.stripe.com/payments/link/link-payment-methods">funding source
/// group code</a> applied to this Link payment at confirmation time.
/// </summary>
[JsonProperty("funding_source_group")]
[STJS.JsonPropertyName("funding_source_group")]
public string FundingSourceGroup { get; set; }
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -15,5 +15,13 @@ public class ChargePaymentMethodDetailsLink : StripeEntity<ChargePaymentMethodDe
[JsonProperty("country")]
[STJS.JsonPropertyName("country")]
public string Country { get; set; }

/// <summary>
/// The <a href="https://docs.stripe.com/payments/link/link-payment-methods">funding source
/// group code</a> applied to this Link payment at confirmation time.
/// </summary>
[JsonProperty("funding_source_group")]
[STJS.JsonPropertyName("funding_source_group")]
public string FundingSourceGroup { get; set; }
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,7 @@ public class ChargePaymentMethodDetailsPix : StripeEntity<ChargePaymentMethodDet
public string Fingerprint { get; set; }

/// <summary>
/// ID of the multi use Mandate generated by the PaymentIntent.
/// ID of the multi use Mandate generated by the PaymentIntent or SetupIntent.
/// </summary>
[JsonProperty("mandate")]
[STJS.JsonPropertyName("mandate")]
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ namespace Stripe
public class ChargePaymentMethodDetailsTwint : StripeEntity<ChargePaymentMethodDetailsTwint>
{
/// <summary>
/// ID of the multi use Mandate generated by the PaymentIntent.
/// ID of the multi use Mandate generated by the PaymentIntent or SetupIntent.
/// </summary>
[JsonProperty("mandate")]
[STJS.JsonPropertyName("mandate")]
Expand Down
4 changes: 2 additions & 2 deletions src/Stripe.net/Entities/Checkout/Sessions/Session.cs
Original file line number Diff line number Diff line change
Expand Up @@ -490,8 +490,8 @@ public PaymentLink PaymentLink
#endregion

/// <summary>
/// Configure whether a Checkout Session should collect a payment method. Defaults to
/// <c>always</c>.
/// Configure whether a Checkout Session should collect a payment method for sessions with
/// mode <c>payment</c>. Defaults to <c>always</c>.
/// One of: <c>always</c>, or <c>if_required</c>.
/// </summary>
[JsonProperty("payment_method_collection")]
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -18,5 +18,14 @@ public class SessionPaymentMethodOptionsCardRestrictions : StripeEntity<SessionP
[JsonProperty("brands_blocked")]
[STJS.JsonPropertyName("brands_blocked")]
public List<string> BrandsBlocked { get; set; }

/// <summary>
/// Card funding types to block for this Checkout Session. Supported values are
/// <c>credit</c>, <c>debit</c>, and <c>prepaid</c>.
/// One of: <c>credit</c>, <c>debit</c>, or <c>prepaid</c>.
/// </summary>
[JsonProperty("funding_types_blocked")]
[STJS.JsonPropertyName("funding_types_blocked")]
public List<string> FundingTypesBlocked { get; set; }
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -15,9 +15,7 @@ public class SessionPermissions : StripeEntity<SessionPermissions>
/// shipping details. If set to <c>server_only</c>, only your server is allowed to update
/// the shipping details.
///
/// When set to <c>server_only</c>, you must add the onShippingDetailsChange event handler
/// when initializing the Stripe Checkout client and manually update the shipping details
/// from your server using the Stripe API.
/// This parameter is only supported when <c>ui_mode=elements</c>.
/// One of: <c>client_only</c>, or <c>server_only</c>.
/// </summary>
[JsonProperty("update_shipping_details")]
Expand Down
3 changes: 2 additions & 1 deletion src/Stripe.net/Entities/Climate/Orders/Order.cs
Original file line number Diff line number Diff line change
Expand Up @@ -131,7 +131,8 @@ public class Order : StripeEntity<Order>, IHasId, IHasMetadata, IHasObject
public List<OrderDeliveryDetail> DeliveryDetails { get; set; }

/// <summary>
/// The year this order is expected to be delivered.
/// The year this order is expected to be delivered. If the year is in the past, the order
/// is a spot purchase and will be delivered within 30 days of purchase.
/// </summary>
[JsonProperty("expected_delivery_year")]
[STJS.JsonPropertyName("expected_delivery_year")]
Expand Down
3 changes: 2 additions & 1 deletion src/Stripe.net/Entities/Climate/Products/Product.cs
Original file line number Diff line number Diff line change
Expand Up @@ -48,7 +48,8 @@ public class Product : StripeEntity<Product>, IHasId, IHasObject
public Dictionary<string, ProductCurrentPricesPerMetricTon> CurrentPricesPerMetricTon { get; set; }

/// <summary>
/// The year in which the carbon removal is expected to be delivered.
/// The year in which the carbon removal is expected to be delivered. If the year is in the
/// past, this represents spot inventory with guaranteed delivery.
/// </summary>
[JsonProperty("delivery_year")]
[STJS.JsonPropertyName("delivery_year")]
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@
namespace Stripe
{
using System;
using System.Collections.Generic;
using Newtonsoft.Json;
using Stripe.Infrastructure;
using STJS = System.Text.Json.Serialization;
Expand All @@ -18,7 +19,7 @@ namespace Stripe
/// confirmation</a>.
/// </summary>
[STJS.JsonConverter(typeof(STJStripeEntityConverter))]
public class ConfirmationToken : StripeEntity<ConfirmationToken>, IHasId, IHasObject
public class ConfirmationToken : StripeEntity<ConfirmationToken>, IHasId, IHasMetadata, IHasObject
{
/// <summary>
/// Unique identifier for the object.
Expand Down Expand Up @@ -68,6 +69,14 @@ public class ConfirmationToken : StripeEntity<ConfirmationToken>, IHasId, IHasOb
[STJS.JsonPropertyName("mandate_data")]
public ConfirmationTokenMandateData MandateData { get; set; }

/// <summary>
/// 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.
/// </summary>
[JsonProperty("metadata")]
[STJS.JsonPropertyName("metadata")]
public Dictionary<string, string> Metadata { get; set; }

/// <summary>
/// ID of the PaymentIntent that this ConfirmationToken was used to confirm, or null if this
/// ConfirmationToken has not yet been used.
Expand Down
Loading
Loading