diff --git a/CHANGELOG.md b/CHANGELOG.md
index bd2ece2cda..d007c80035 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -78,6 +78,29 @@ This release changes the pinned API version to 2026-06-24.preview.
* Add support for event notification `V2MoneyManagementOutboundTransferUnderReviewEvent` with related object `V2.MoneyManagement.OutboundTransfer`
* ⚠️ Remove support for event notifications `V2CoreAccountIncludingConfigurationStorerCapabilityStatusUpdatedEvent` and `V2CoreAccountIncludingConfigurationStorerUpdatedEvent` with related object `V2.Core.Account`
+## 52.1.0 - 2026-06-24
+This release changes the pinned API version to 2026-06-24.dahlia.
+
+* [#3399](https://github.com/stripe/stripe-dotnet/pull/3399) Update generated code
+ * Add support for `ReleaseDetails` on `Reserve.Hold`
+ * Add support for `BuyerId` on `Charge.PaymentMethodDetails.Bizum`, `ConfirmationToken.PaymentMethodPreview.Bizum`, `ConfirmationToken.PaymentMethodPreview.Blik`, `PaymentAttemptRecord.PaymentMethodDetails.Bizum`, `PaymentMethod.Bizum`, `PaymentMethod.Blik`, and `PaymentRecord.PaymentMethodDetails.Bizum`
+ * Add support for `TransactionLinkId` on `Charge.PaymentMethodDetails.Card`
+ * Add support for `Fingerprint` on `Charge.PaymentMethodDetails.Pix`, `ConfirmationToken.PaymentMethodPreview.Pix`, `PaymentMethod.Pix`, and `SetupAttempt.PaymentMethodDetails.Pix`
+ * Add support for `Sunbit` on `Checkout.Session.PaymentMethodOptions`, `CheckoutSessionPaymentMethodOptionsOptions`, `PaymentIntent.PaymentMethodOptions`, and `PaymentIntentPaymentMethodOptionsOptions`
+ * Add support for `BillingCycleAnchorConfig` on `CheckoutSessionSubscriptionDataOptions`
+ * Add support for `WechatPay` on `Checkout.Session.PaymentMethodOptions`
+ * Add support for `MastercardCompliance` on `Dispute.Evidence.EnhancedEvidence`, `Dispute.EvidenceDetails.EnhancedEligibility`, and `DisputeEvidenceEnhancedEvidenceOptions`
+ * Add support for `StatusDetails` on `FinancialConnections.Account`
+ * ⚠️ Remove support for `StoredCredentialUsage` on `PaymentAttemptRecord.PaymentMethodDetails.Card` and `PaymentRecord.PaymentMethodDetails.Card`
+ * Add support for `SetupFutureUsage` on `PaymentIntent.PaymentMethodOptions.Satispay` and `PaymentIntentPaymentMethodOptionsSatispayOptions`
+ * Add support for `Satispay` on `SetupAttempt.PaymentMethodDetails`
+ * Add support for `CustomFields`, `Description`, and `Footer` on `Subscription.InvoiceSettings` and `SubscriptionInvoiceSettingsOptions`
+ * Add support for `PaymentMethodOptions` and `PaymentMethod` on `TopupCreateOptions`
+ * Add support for `Mode` on `V2.Commerce.ProductCatalogImport`
+ * Add support for `SunbitPayments` on `V2.Core.Account.Configuration.Merchant.Capabilities` and `V2CoreAccountConfigurationMerchantCapabilitiesOptions`
+ * Add support for `CryptoMoneyManager` and `MoneyManager` on `V2CoreAccountIdentityAttestationsTermsOfServiceOptions`
+ * ⚠️ Remove support for `CryptoStorer` and `Storer` on `V2CoreAccountIdentityAttestationsTermsOfServiceOptions`
+
## 52.1.0-alpha.2 - 2026-06-17
* [#3397](https://github.com/stripe/stripe-dotnet/pull/3397) Update generated code for private-preview
* Add support for `Get` method on resource `Radar.CustomerEvaluation`
diff --git a/CODEGEN_VERSION b/CODEGEN_VERSION
index 308e72af1a..001f568a9d 100644
--- a/CODEGEN_VERSION
+++ b/CODEGEN_VERSION
@@ -1 +1 @@
-088388aa159596ba4e240aeb0bb65d5bb4a562ab
\ No newline at end of file
+23a0d1c154d81b4b4185658446b2ee07f06f969a
\ No newline at end of file
diff --git a/OPENAPI_VERSION b/OPENAPI_VERSION
index c22138244c..7b59154f38 100644
--- a/OPENAPI_VERSION
+++ b/OPENAPI_VERSION
@@ -1 +1 @@
-v2323
\ No newline at end of file
+v2342
\ No newline at end of file
diff --git a/src/Stripe.net/Constants/ApiVersion.cs b/src/Stripe.net/Constants/ApiVersion.cs
index 740e4bc93e..d732dd8a12 100644
--- a/src/Stripe.net/Constants/ApiVersion.cs
+++ b/src/Stripe.net/Constants/ApiVersion.cs
@@ -3,6 +3,6 @@ namespace Stripe
{
internal class ApiVersion
{
- public const string Current = "2026-06-24.preview";
+ public const string Current = "2026-07-01.preview";
}
}
\ No newline at end of file
diff --git a/src/Stripe.net/Constants/EventTypes.cs b/src/Stripe.net/Constants/EventTypes.cs
index 00149fa025..377123e864 100644
--- a/src/Stripe.net/Constants/EventTypes.cs
+++ b/src/Stripe.net/Constants/EventTypes.cs
@@ -469,8 +469,13 @@ public static class EventTypes
public const string CustomerSubscriptionResumed = "customer.subscription.resumed";
///
- /// Occurs three days before a subscription's trial period is scheduled to end, or when a
- /// trial is ended immediately (using trial_end=now).
+ /// Occurs three days before a subscription's trial period is scheduled to end, or
+ /// immediately when a trial is ended early (for example, with trial_end=now or when
+ /// a Customer Portal plan change ends a trial). If a trial is shortened so that fewer than
+ /// three days remain, this event can fire immediately, including during the same
+ /// transaction that collects payment. Before sending payment-reminder communications from
+ /// this webhook, check the subscription status and latest invoice to determine whether
+ /// payment has already been collected.
///
public const string CustomerSubscriptionTrialWillEnd = "customer.subscription.trial_will_end";
diff --git a/src/Stripe.net/Entities/BalanceTransactions/BalanceTransaction.cs b/src/Stripe.net/Entities/BalanceTransactions/BalanceTransaction.cs
index 76b8948a2f..eb0c000d4c 100644
--- a/src/Stripe.net/Entities/BalanceTransactions/BalanceTransaction.cs
+++ b/src/Stripe.net/Entities/BalanceTransactions/BalanceTransaction.cs
@@ -175,13 +175,13 @@ public IBalanceTransactionSource Source
public string Status { get; set; }
///
- /// Transaction type: adjustment, advance, advance_funding,
- /// anticipation_repayment, application_fee, application_fee_refund,
- /// charge, climate_order_purchase, climate_order_refund,
- /// connect_collection_transfer, contribution, inbound_transfer,
- /// inbound_transfer_reversal, issuing_authorization_hold,
- /// issuing_authorization_release, issuing_dispute,
- /// issuing_transaction, obligation_outbound,
+ /// Transaction type: tax_fund, adjustment, advance,
+ /// advance_funding, anticipation_repayment, application_fee,
+ /// application_fee_refund, charge, climate_order_purchase,
+ /// climate_order_refund, connect_collection_transfer, contribution,
+ /// inbound_transfer, inbound_transfer_reversal,
+ /// issuing_authorization_hold, issuing_authorization_release,
+ /// issuing_dispute, issuing_transaction, obligation_outbound,
/// obligation_reversal_inbound, payment, payment_failure_refund,
/// payment_network_reserve_hold, payment_network_reserve_release,
/// payment_refund, payment_reversal, payment_unreconciled,
@@ -211,7 +211,7 @@ public IBalanceTransactionSource Source
/// refund, refund_failure, reserve_hold, reserve_release,
/// reserve_transaction, reserved_funds, stripe_balance_payment_debit,
/// stripe_balance_payment_debit_reversal, stripe_fee, stripe_fx_fee,
- /// tax_fee, topup, topup_reversal, transfer,
+ /// tax_fee, tax_fund, topup, topup_reversal, transfer,
/// transfer_cancel, transfer_failure, or transfer_refund.
///
[JsonProperty("type")]
diff --git a/src/Stripe.net/Entities/Capital/FinancingOffers/FinancingOffer.cs b/src/Stripe.net/Entities/Capital/FinancingOffers/FinancingOffer.cs
index 9854bc86b6..6123892afa 100644
--- a/src/Stripe.net/Entities/Capital/FinancingOffers/FinancingOffer.cs
+++ b/src/Stripe.net/Entities/Capital/FinancingOffers/FinancingOffer.cs
@@ -63,6 +63,17 @@ public class FinancingOffer : StripeEntity, IHasId, IHasMetadata
[STJS.JsonConverter(typeof(STJUnixDateTimeConverter))]
public DateTime Created { get; set; } = Stripe.Infrastructure.DateTimeUtils.UnixEpoch;
+ ///
+ /// The type of disclaimer to use for a financing offer in user-facing surfaces. The
+ /// corresponding disclaimer text to use for each disclaimer_variant value can be found in
+ /// the marketing docs.
+ /// One of: celtic_us_loan, fundbox_au_financing, youlend_de_financing,
+ /// youlend_fr_financing, youlend_uk_mca, or youlend_us_mca.
+ ///
+ [JsonProperty("disclaimer_variant")]
+ [STJS.JsonPropertyName("disclaimer_variant")]
+ public string DisclaimerVariant { get; set; }
+
///
/// Time at which the offer expires. Given in seconds since unix epoch.
///
diff --git a/src/Stripe.net/Entities/Capital/FinancingSummaries/FinancingSummaryDetails.cs b/src/Stripe.net/Entities/Capital/FinancingSummaries/FinancingSummaryDetails.cs
index ee8ba5b2d4..042c3b4f00 100644
--- a/src/Stripe.net/Entities/Capital/FinancingSummaries/FinancingSummaryDetails.cs
+++ b/src/Stripe.net/Entities/Capital/FinancingSummaries/FinancingSummaryDetails.cs
@@ -38,6 +38,18 @@ public class FinancingSummaryDetails : StripeEntity
[STJS.JsonPropertyName("current_repayment_interval")]
public FinancingSummaryDetailsCurrentRepaymentInterval CurrentRepaymentInterval { get; set; }
+ ///
+ /// The type of disclaimer to use for a financing offer in user-facing surfaces. The
+ /// corresponding disclaimer text to use for each disclaimer_variant value can be found in
+ /// the regulatory
+ /// compliance docs.
+ /// One of: celtic_us_loan, fundbox_au_financing, youlend_de_financing,
+ /// youlend_fr_financing, youlend_uk_mca, or youlend_us_mca.
+ ///
+ [JsonProperty("disclaimer_variant")]
+ [STJS.JsonPropertyName("disclaimer_variant")]
+ public string DisclaimerVariant { get; set; }
+
///
/// Fixed fee amount, in minor units. For example, 100 USD is represented as 10000.
///
diff --git a/src/Stripe.net/Entities/Cards/Card.cs b/src/Stripe.net/Entities/Cards/Card.cs
index fba1182582..d2968a8104 100644
--- a/src/Stripe.net/Entities/Cards/Card.cs
+++ b/src/Stripe.net/Entities/Cards/Card.cs
@@ -339,6 +339,13 @@ public Customer Customer
[STJS.JsonPropertyName("networks")]
public CardNetworks Networks { get; set; }
+ ///
+ /// Redaction status of this card. If not null, this card is associated to a redaction job.
+ ///
+ [JsonProperty("redaction")]
+ [STJS.JsonPropertyName("redaction")]
+ public CardRedaction Redaction { get; set; }
+
///
/// Status of a card based on the card issuer.
/// One of: regulated, or unregulated.
diff --git a/src/Stripe.net/Entities/Cards/CardRedaction.cs b/src/Stripe.net/Entities/Cards/CardRedaction.cs
new file mode 100644
index 0000000000..9f0422b853
--- /dev/null
+++ b/src/Stripe.net/Entities/Cards/CardRedaction.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(STJStripeEntityConverter))]
+ public class CardRedaction : StripeEntity
+ {
+ ///
+ /// Indicates whether this object and its related objects have been redacted or not.
+ /// One of: processing, redacted, or validated.
+ ///
+ [JsonProperty("status")]
+ [STJS.JsonPropertyName("status")]
+ public string Status { get; set; }
+ }
+}
diff --git a/src/Stripe.net/Entities/Charges/Charge.cs b/src/Stripe.net/Entities/Charges/Charge.cs
index b0bd98f6d4..2b1c8725bf 100644
--- a/src/Stripe.net/Entities/Charges/Charge.cs
+++ b/src/Stripe.net/Entities/Charges/Charge.cs
@@ -505,6 +505,14 @@ public PaymentIntent PaymentIntent
[STJS.JsonPropertyName("receipt_url")]
public string ReceiptUrl { get; set; }
+ ///
+ /// Redaction status of this charge. If not null, this charge is associated to a redaction
+ /// job.
+ ///
+ [JsonProperty("redaction")]
+ [STJS.JsonPropertyName("redaction")]
+ public ChargeRedaction Redaction { get; set; }
+
///
/// Whether the charge has been fully refunded. If the charge is only partially refunded,
/// this attribute will still be false.
diff --git a/src/Stripe.net/Entities/Charges/ChargePaymentMethodDetailsBizum.cs b/src/Stripe.net/Entities/Charges/ChargePaymentMethodDetailsBizum.cs
index 7902a803cb..d5350d137c 100644
--- a/src/Stripe.net/Entities/Charges/ChargePaymentMethodDetailsBizum.cs
+++ b/src/Stripe.net/Entities/Charges/ChargePaymentMethodDetailsBizum.cs
@@ -8,6 +8,13 @@ namespace Stripe
[STJS.JsonConverter(typeof(STJStripeEntityConverter))]
public class ChargePaymentMethodDetailsBizum : StripeEntity
{
+ ///
+ /// A unique identifier for the buyer as determined by the local payment processor.
+ ///
+ [JsonProperty("buyer_id")]
+ [STJS.JsonPropertyName("buyer_id")]
+ public string BuyerId { get; set; }
+
///
/// The Bizum transaction ID associated with this payment.
///
diff --git a/src/Stripe.net/Entities/Charges/ChargePaymentMethodDetailsCard.cs b/src/Stripe.net/Entities/Charges/ChargePaymentMethodDetailsCard.cs
index ca28009c02..087b19c34f 100644
--- a/src/Stripe.net/Entities/Charges/ChargePaymentMethodDetailsCard.cs
+++ b/src/Stripe.net/Entities/Charges/ChargePaymentMethodDetailsCard.cs
@@ -84,6 +84,16 @@ public class ChargePaymentMethodDetailsCard : StripeEntity
+ /// The Electronic Commerce Indicator (ECI) returned by the card network in the
+ /// authorization response. Indicates the level of authentication used. Only populated for
+ /// Visa and Mastercard transactions. The response value is the source of truth; it may
+ /// differ from the request value if the network downgraded the transaction.
+ ///
+ [JsonProperty("electronic_commerce_indicator")]
+ [STJS.JsonPropertyName("electronic_commerce_indicator")]
+ public string ElectronicCommerceIndicator { get; set; }
+
///
/// Two-digit number representing the card's expiration month.
///
@@ -246,6 +256,16 @@ public class ChargePaymentMethodDetailsCard : StripeEntity
+ /// Transaction Link ID (TLID) is a unique identifier for a transaction. This is used by
+ /// some card networks, such as Mastercard, for transaction linking, in addition to Network
+ /// Transaction IDs. This value will be present if it is returned by the financial network
+ /// in the authorization response, and null otherwise.
+ ///
+ [JsonProperty("transaction_link_id")]
+ [STJS.JsonPropertyName("transaction_link_id")]
+ public string TransactionLinkId { get; set; }
+
///
/// If this Card is part of a card wallet, this contains the details of the card wallet.
///
diff --git a/src/Stripe.net/Entities/Charges/ChargePaymentMethodDetailsCrypto.cs b/src/Stripe.net/Entities/Charges/ChargePaymentMethodDetailsCrypto.cs
index de7e39573d..19cf7e34e5 100644
--- a/src/Stripe.net/Entities/Charges/ChargePaymentMethodDetailsCrypto.cs
+++ b/src/Stripe.net/Entities/Charges/ChargePaymentMethodDetailsCrypto.cs
@@ -8,6 +8,20 @@ namespace Stripe
[STJS.JsonConverter(typeof(STJStripeEntityConverter))]
public class ChargePaymentMethodDetailsCrypto : StripeEntity
{
+ ///
+ /// The amount received for the crypto payment.
+ ///
+ [JsonProperty("amount_received")]
+ [STJS.JsonPropertyName("amount_received")]
+ public long AmountReceived { get; set; }
+
+ ///
+ /// The amount requested for the crypto payment.
+ ///
+ [JsonProperty("amount_requested")]
+ [STJS.JsonPropertyName("amount_requested")]
+ public long AmountRequested { get; set; }
+
///
/// The wallet address of the customer.
///
@@ -17,7 +31,8 @@ public class ChargePaymentMethodDetailsCrypto : StripeEntity
/// The blockchain network that the transaction was sent on.
- /// One of: base, ethereum, polygon, solana, or tempo.
+ /// One of: base, ethereum, polygon, solana, sui, or
+ /// tempo.
///
[JsonProperty("network")]
[STJS.JsonPropertyName("network")]
@@ -25,7 +40,8 @@ public class ChargePaymentMethodDetailsCrypto : StripeEntity
/// The token currency that the transaction was sent with.
- /// One of: phantom_cash, usdc, usdg, usdp, or usdt.
+ /// One of: phantom_cash, usdc, usdg, usdp, usdsui, or
+ /// usdt.
///
[JsonProperty("token_currency")]
[STJS.JsonPropertyName("token_currency")]
diff --git a/src/Stripe.net/Entities/Charges/ChargePaymentMethodDetailsGiftCard.cs b/src/Stripe.net/Entities/Charges/ChargePaymentMethodDetailsGiftCard.cs
index 9f2b19bcf1..001e3dbae6 100644
--- a/src/Stripe.net/Entities/Charges/ChargePaymentMethodDetailsGiftCard.cs
+++ b/src/Stripe.net/Entities/Charges/ChargePaymentMethodDetailsGiftCard.cs
@@ -34,6 +34,14 @@ public class ChargePaymentMethodDetailsGiftCard : StripeEntity
+ /// Uniquely identifies this particular gift card number. You can use this attribute to
+ /// check whether two transactions were made using the same gift card.
+ ///
+ [JsonProperty("fingerprint")]
+ [STJS.JsonPropertyName("fingerprint")]
+ public string Fingerprint { get; set; }
+
///
/// The first six digits of the gift card number.
///
diff --git a/src/Stripe.net/Entities/Charges/ChargePaymentMethodDetailsPix.cs b/src/Stripe.net/Entities/Charges/ChargePaymentMethodDetailsPix.cs
index 4a69313412..2a2abfc1c1 100644
--- a/src/Stripe.net/Entities/Charges/ChargePaymentMethodDetailsPix.cs
+++ b/src/Stripe.net/Entities/Charges/ChargePaymentMethodDetailsPix.cs
@@ -15,6 +15,14 @@ public class ChargePaymentMethodDetailsPix : StripeEntity
+ /// Uniquely identifies this particular Pix account. You can use this attribute to check
+ /// whether two Pix accounts are the same.
+ ///
+ [JsonProperty("fingerprint")]
+ [STJS.JsonPropertyName("fingerprint")]
+ public string Fingerprint { get; set; }
+
///
/// ID of the multi use Mandate generated by the PaymentIntent.
///
diff --git a/src/Stripe.net/Entities/Charges/ChargeRedaction.cs b/src/Stripe.net/Entities/Charges/ChargeRedaction.cs
new file mode 100644
index 0000000000..72bece0fc8
--- /dev/null
+++ b/src/Stripe.net/Entities/Charges/ChargeRedaction.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(STJStripeEntityConverter))]
+ public class ChargeRedaction : StripeEntity
+ {
+ ///
+ /// Indicates whether this object and its related objects have been redacted or not.
+ /// One of: processing, redacted, or validated.
+ ///
+ [JsonProperty("status")]
+ [STJS.JsonPropertyName("status")]
+ public string Status { get; set; }
+ }
+}
diff --git a/src/Stripe.net/Entities/Checkout/Sessions/Session.cs b/src/Stripe.net/Entities/Checkout/Sessions/Session.cs
index 3c84fa91ca..a5b8357451 100644
--- a/src/Stripe.net/Entities/Checkout/Sessions/Session.cs
+++ b/src/Stripe.net/Entities/Checkout/Sessions/Session.cs
@@ -641,6 +641,14 @@ public PaymentRecord PaymentRecord
[STJS.JsonPropertyName("recovered_from")]
public string RecoveredFrom { get; set; }
+ ///
+ /// The redaction status of the Checkout Session. If the Session is not redacted, this field
+ /// is null.
+ ///
+ [JsonProperty("redaction")]
+ [STJS.JsonPropertyName("redaction")]
+ public SessionRedaction Redaction { get; set; }
+
///
/// This parameter applies to ui_mode: embedded_page. Learn more about the redirect
diff --git a/src/Stripe.net/Entities/Checkout/Sessions/SessionItem.cs b/src/Stripe.net/Entities/Checkout/Sessions/SessionItem.cs
index 969dbbcf43..43d2ec9056 100644
--- a/src/Stripe.net/Entities/Checkout/Sessions/SessionItem.cs
+++ b/src/Stripe.net/Entities/Checkout/Sessions/SessionItem.cs
@@ -15,6 +15,13 @@ public class SessionItem : StripeEntity
[STJS.JsonPropertyName("key")]
public string Key { get; set; }
+ ///
+ /// Details on the subscription for this item.
+ ///
+ [JsonProperty("subscription")]
+ [STJS.JsonPropertyName("subscription")]
+ public SessionItemSubscription Subscription { get; set; }
+
///
/// The type of the item.
///
diff --git a/src/Stripe.net/Entities/Checkout/Sessions/SessionItemSubscription.cs b/src/Stripe.net/Entities/Checkout/Sessions/SessionItemSubscription.cs
new file mode 100644
index 0000000000..e135858c09
--- /dev/null
+++ b/src/Stripe.net/Entities/Checkout/Sessions/SessionItemSubscription.cs
@@ -0,0 +1,107 @@
+// File generated from our OpenAPI spec
+namespace Stripe.Checkout
+{
+ using System;
+ using System.Collections.Generic;
+ using Newtonsoft.Json;
+ using Stripe.Infrastructure;
+ using STJS = System.Text.Json.Serialization;
+
+ [STJS.JsonConverter(typeof(STJStripeEntityConverter))]
+ public class SessionItemSubscription : StripeEntity, IHasMetadata
+ {
+ ///
+ /// The description for the subscription.
+ ///
+ [JsonProperty("description")]
+ [STJS.JsonPropertyName("description")]
+ public string Description { get; set; }
+
+ ///
+ /// The items in the subscription.
+ ///
+ [JsonProperty("items")]
+ [STJS.JsonPropertyName("items")]
+ public List Items { get; set; }
+
+ ///
+ /// Set of key-value pairs attached to the subscription.
+ ///
+ [JsonProperty("metadata")]
+ [STJS.JsonPropertyName("metadata")]
+ public Dictionary Metadata { get; set; }
+
+ ///
+ /// Specifies an interval for how often to bill for any pending invoice items.
+ ///
+ [JsonProperty("pending_invoice_item_interval")]
+ [STJS.JsonPropertyName("pending_invoice_item_interval")]
+ public SessionItemSubscriptionPendingInvoiceItemInterval PendingInvoiceItemInterval { get; set; }
+
+ ///
+ /// Determines how to handle prorations when the subscription is updated.
+ /// One of: create_prorations, or none.
+ ///
+ [JsonProperty("proration_behavior")]
+ [STJS.JsonPropertyName("proration_behavior")]
+ public string ProrationBehavior { get; set; }
+
+ #region Expandable Subscription
+
+ ///
+ /// (ID of the Subscription)
+ /// The ID of the Subscription.
+ ///
+ [JsonIgnore]
+ [STJS.JsonIgnore]
+ public string SubscriptionId
+ {
+ get => this.InternalSubscription?.Id;
+ set => this.InternalSubscription = SetExpandableFieldId(value, this.InternalSubscription);
+ }
+
+ ///
+ /// (Expanded)
+ /// The ID of the Subscription.
+ ///
+ /// For more information, see the expand documentation.
+ ///
+ [JsonIgnore]
+ [STJS.JsonIgnore]
+ public Subscription Subscription
+ {
+ get => this.InternalSubscription?.ExpandedObject;
+ set => this.InternalSubscription = SetExpandableFieldObject(value, this.InternalSubscription);
+ }
+
+ [JsonProperty("subscription")]
+ [JsonConverter(typeof(ExpandableFieldConverter))]
+ [STJS.JsonPropertyName("subscription")]
+ [STJS.JsonConverter(typeof(STJExpandableFieldConverter))]
+ internal ExpandableField InternalSubscription { get; set; }
+ #endregion
+
+ ///
+ /// The Unix timestamp marking when the trial period ends.
+ ///
+ [JsonProperty("trial_end")]
+ [JsonConverter(typeof(UnixDateTimeConverter))]
+ [STJS.JsonPropertyName("trial_end")]
+ [STJS.JsonConverter(typeof(STJUnixDateTimeConverter))]
+ public DateTime? TrialEnd { get; set; }
+
+ ///
+ /// The number of trial period days before the customer is charged for the first time.
+ ///
+ [JsonProperty("trial_period_days")]
+ [STJS.JsonPropertyName("trial_period_days")]
+ public long? TrialPeriodDays { get; set; }
+
+ ///
+ /// Settings related to subscription trials.
+ ///
+ [JsonProperty("trial_settings")]
+ [STJS.JsonPropertyName("trial_settings")]
+ public SessionItemSubscriptionTrialSettings TrialSettings { get; set; }
+ }
+}
diff --git a/src/Stripe.net/Entities/Checkout/Sessions/SessionItemSubscriptionItem.cs b/src/Stripe.net/Entities/Checkout/Sessions/SessionItemSubscriptionItem.cs
new file mode 100644
index 0000000000..7cae21bc0c
--- /dev/null
+++ b/src/Stripe.net/Entities/Checkout/Sessions/SessionItemSubscriptionItem.cs
@@ -0,0 +1,53 @@
+// 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 SessionItemSubscriptionItem : StripeEntity
+ {
+ #region Expandable Price
+
+ ///
+ /// (ID of the Price)
+ /// The price for this subscription item.
+ ///
+ [JsonIgnore]
+ [STJS.JsonIgnore]
+ public string PriceId
+ {
+ get => this.InternalPrice?.Id;
+ set => this.InternalPrice = SetExpandableFieldId(value, this.InternalPrice);
+ }
+
+ ///
+ /// (Expanded)
+ /// The price for this subscription item.
+ ///
+ /// For more information, see the expand documentation.
+ ///
+ [JsonIgnore]
+ [STJS.JsonIgnore]
+ public Price Price
+ {
+ get => this.InternalPrice?.ExpandedObject;
+ set => this.InternalPrice = SetExpandableFieldObject(value, this.InternalPrice);
+ }
+
+ [JsonProperty("price")]
+ [JsonConverter(typeof(ExpandableFieldConverter))]
+ [STJS.JsonPropertyName("price")]
+ [STJS.JsonConverter(typeof(STJExpandableFieldConverter))]
+ internal ExpandableField InternalPrice { get; set; }
+ #endregion
+
+ ///
+ /// The quantity for this subscription item.
+ ///
+ [JsonProperty("quantity")]
+ [STJS.JsonPropertyName("quantity")]
+ public long? Quantity { get; set; }
+ }
+}
diff --git a/src/Stripe.net/Entities/Checkout/Sessions/SessionItemSubscriptionPendingInvoiceItemInterval.cs b/src/Stripe.net/Entities/Checkout/Sessions/SessionItemSubscriptionPendingInvoiceItemInterval.cs
new file mode 100644
index 0000000000..7c6295c973
--- /dev/null
+++ b/src/Stripe.net/Entities/Checkout/Sessions/SessionItemSubscriptionPendingInvoiceItemInterval.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(STJStripeEntityConverter))]
+ public class SessionItemSubscriptionPendingInvoiceItemInterval : StripeEntity
+ {
+ ///
+ /// 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/Entities/Checkout/Sessions/SessionItemSubscriptionTrialSettings.cs b/src/Stripe.net/Entities/Checkout/Sessions/SessionItemSubscriptionTrialSettings.cs
new file mode 100644
index 0000000000..2ff0c1a457
--- /dev/null
+++ b/src/Stripe.net/Entities/Checkout/Sessions/SessionItemSubscriptionTrialSettings.cs
@@ -0,0 +1,18 @@
+// 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 SessionItemSubscriptionTrialSettings : StripeEntity
+ {
+ ///
+ /// Defines how a subscription behaves when a free trial ends.
+ ///
+ [JsonProperty("end_behavior")]
+ [STJS.JsonPropertyName("end_behavior")]
+ public SessionItemSubscriptionTrialSettingsEndBehavior EndBehavior { get; set; }
+ }
+}
diff --git a/src/Stripe.net/Entities/Checkout/Sessions/SessionItemSubscriptionTrialSettingsEndBehavior.cs b/src/Stripe.net/Entities/Checkout/Sessions/SessionItemSubscriptionTrialSettingsEndBehavior.cs
new file mode 100644
index 0000000000..0d3cdc64fc
--- /dev/null
+++ b/src/Stripe.net/Entities/Checkout/Sessions/SessionItemSubscriptionTrialSettingsEndBehavior.cs
@@ -0,0 +1,20 @@
+// 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 SessionItemSubscriptionTrialSettingsEndBehavior : StripeEntity
+ {
+ ///
+ /// Indicates how the subscription should change when the trial ends if the user did not
+ /// provide a payment method.
+ /// One of: cancel, create_invoice, or pause.
+ ///
+ [JsonProperty("missing_payment_method")]
+ [STJS.JsonPropertyName("missing_payment_method")]
+ public string MissingPaymentMethod { get; set; }
+ }
+}
diff --git a/src/Stripe.net/Entities/Checkout/Sessions/SessionPaymentMethodOptions.cs b/src/Stripe.net/Entities/Checkout/Sessions/SessionPaymentMethodOptions.cs
index a64ec799f6..6e60333edd 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
+ {
+ ///
+ /// Controls when the funds will be captured from the customer's account.
+ ///
+ [JsonProperty("capture_method")]
+ [STJS.JsonPropertyName("capture_method")]
+ public string CaptureMethod { 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.
+ ///
+ [JsonProperty("setup_future_usage")]
+ [STJS.JsonPropertyName("setup_future_usage")]
+ public string SetupFutureUsage { get; set; }
+ }
+}
diff --git a/src/Stripe.net/Entities/Checkout/Sessions/SessionPaymentMethodOptionsWechatPay.cs b/src/Stripe.net/Entities/Checkout/Sessions/SessionPaymentMethodOptionsWechatPay.cs
new file mode 100644
index 0000000000..103ba955b1
--- /dev/null
+++ b/src/Stripe.net/Entities/Checkout/Sessions/SessionPaymentMethodOptionsWechatPay.cs
@@ -0,0 +1,50 @@
+// 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 SessionPaymentMethodOptionsWechatPay : StripeEntity
+ {
+ ///
+ /// The app ID registered with WeChat Pay. Only required when client is iOS or Android.
+ ///
+ [JsonProperty("app_id")]
+ [STJS.JsonPropertyName("app_id")]
+ public string AppId { get; set; }
+
+ ///
+ /// The client type that the end customer will pay from.
+ /// One of: android, ios, or web.
+ ///
+ [JsonProperty("client")]
+ [STJS.JsonPropertyName("client")]
+ public string Client { 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.
+ ///
+ [JsonProperty("setup_future_usage")]
+ [STJS.JsonPropertyName("setup_future_usage")]
+ public string SetupFutureUsage { get; set; }
+ }
+}
diff --git a/src/Stripe.net/Entities/Checkout/Sessions/SessionRedaction.cs b/src/Stripe.net/Entities/Checkout/Sessions/SessionRedaction.cs
new file mode 100644
index 0000000000..a429602c02
--- /dev/null
+++ b/src/Stripe.net/Entities/Checkout/Sessions/SessionRedaction.cs
@@ -0,0 +1,19 @@
+// 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 SessionRedaction : StripeEntity
+ {
+ ///
+ /// Indicates whether this object and its related objects have been redacted or not.
+ /// One of: processing, redacted, or validated.
+ ///
+ [JsonProperty("status")]
+ [STJS.JsonPropertyName("status")]
+ public string Status { get; set; }
+ }
+}
diff --git a/src/Stripe.net/Entities/ConfirmationTokens/ConfirmationTokenPaymentMethodPreviewBizum.cs b/src/Stripe.net/Entities/ConfirmationTokens/ConfirmationTokenPaymentMethodPreviewBizum.cs
index 64cabee29d..feb5026cb0 100644
--- a/src/Stripe.net/Entities/ConfirmationTokens/ConfirmationTokenPaymentMethodPreviewBizum.cs
+++ b/src/Stripe.net/Entities/ConfirmationTokens/ConfirmationTokenPaymentMethodPreviewBizum.cs
@@ -8,5 +8,11 @@ namespace Stripe
[STJS.JsonConverter(typeof(STJStripeEntityConverter))]
public class ConfirmationTokenPaymentMethodPreviewBizum : StripeEntity
{
+ ///
+ /// A unique identifier for the buyer as determined by the local payment processor.
+ ///
+ [JsonProperty("buyer_id")]
+ [STJS.JsonPropertyName("buyer_id")]
+ public string BuyerId { get; set; }
}
}
diff --git a/src/Stripe.net/Entities/ConfirmationTokens/ConfirmationTokenPaymentMethodPreviewBlik.cs b/src/Stripe.net/Entities/ConfirmationTokens/ConfirmationTokenPaymentMethodPreviewBlik.cs
index 8550e9d5e0..7902300d1c 100644
--- a/src/Stripe.net/Entities/ConfirmationTokens/ConfirmationTokenPaymentMethodPreviewBlik.cs
+++ b/src/Stripe.net/Entities/ConfirmationTokens/ConfirmationTokenPaymentMethodPreviewBlik.cs
@@ -8,5 +8,11 @@ namespace Stripe
[STJS.JsonConverter(typeof(STJStripeEntityConverter))]
public class ConfirmationTokenPaymentMethodPreviewBlik : StripeEntity
{
+ ///
+ /// A unique and immutable identifier assigned by BLIK to every buyer.
+ ///
+ [JsonProperty("buyer_id")]
+ [STJS.JsonPropertyName("buyer_id")]
+ public string BuyerId { get; set; }
}
}
diff --git a/src/Stripe.net/Entities/ConfirmationTokens/ConfirmationTokenPaymentMethodPreviewPix.cs b/src/Stripe.net/Entities/ConfirmationTokens/ConfirmationTokenPaymentMethodPreviewPix.cs
index 648c256d65..5bdaf6b914 100644
--- a/src/Stripe.net/Entities/ConfirmationTokens/ConfirmationTokenPaymentMethodPreviewPix.cs
+++ b/src/Stripe.net/Entities/ConfirmationTokens/ConfirmationTokenPaymentMethodPreviewPix.cs
@@ -8,5 +8,12 @@ namespace Stripe
[STJS.JsonConverter(typeof(STJStripeEntityConverter))]
public class ConfirmationTokenPaymentMethodPreviewPix : StripeEntity
{
+ ///
+ /// Uniquely identifies this particular Pix account. You can use this attribute to check
+ /// whether two Pix accounts are the same.
+ ///
+ [JsonProperty("fingerprint")]
+ [STJS.JsonPropertyName("fingerprint")]
+ public string Fingerprint { get; set; }
}
}
diff --git a/src/Stripe.net/Entities/Crypto/CustomerConsumerWallets/CustomerConsumerWallet.cs b/src/Stripe.net/Entities/Crypto/CustomerConsumerWallets/CustomerConsumerWallet.cs
new file mode 100644
index 0000000000..79cd68e08a
--- /dev/null
+++ b/src/Stripe.net/Entities/Crypto/CustomerConsumerWallets/CustomerConsumerWallet.cs
@@ -0,0 +1,60 @@
+// File generated from our OpenAPI spec
+namespace Stripe.Crypto
+{
+ using Newtonsoft.Json;
+ using Stripe.Infrastructure;
+ using STJS = System.Text.Json.Serialization;
+
+ ///
+ /// A consumer wallet represents a cryptocurrency wallet address associated with a Crypto
+ /// Customer.
+ ///
+ [STJS.JsonConverter(typeof(STJStripeEntityConverter))]
+ public class CustomerConsumerWallet : StripeEntity, IHasId, IHasObject
+ {
+ ///
+ /// Unique identifier for the object.
+ ///
+ [JsonProperty("id")]
+ [STJS.JsonPropertyName("id")]
+ public string Id { get; set; }
+
+ ///
+ /// String representing the object's type. Objects of the same type share the same value.
+ ///
+ [JsonProperty("object")]
+ [STJS.JsonPropertyName("object")]
+ public string Object { 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")]
+ public bool Livemode { get; set; }
+
+ ///
+ /// The blockchain network for this wallet.
+ /// One of: aptos, avalanche, base, bitcoin, ethereum,
+ /// optimism, polygon, solana, stellar, or worldchain.
+ ///
+ [JsonProperty("network")]
+ [STJS.JsonPropertyName("network")]
+ public string Network { get; set; }
+
+ ///
+ /// Whether ownership of this wallet has been verified.
+ ///
+ [JsonProperty("verified_ownership")]
+ [STJS.JsonPropertyName("verified_ownership")]
+ public bool VerifiedOwnership { get; set; }
+
+ ///
+ /// The wallet address.
+ ///
+ [JsonProperty("wallet_address")]
+ [STJS.JsonPropertyName("wallet_address")]
+ public string WalletAddress { get; set; }
+ }
+}
diff --git a/src/Stripe.net/Entities/Crypto/CustomerPaymentTokens/CustomerPaymentToken.cs b/src/Stripe.net/Entities/Crypto/CustomerPaymentTokens/CustomerPaymentToken.cs
new file mode 100644
index 0000000000..dbbf4517e9
--- /dev/null
+++ b/src/Stripe.net/Entities/Crypto/CustomerPaymentTokens/CustomerPaymentToken.cs
@@ -0,0 +1,52 @@
+// File generated from our OpenAPI spec
+namespace Stripe.Crypto
+{
+ using Newtonsoft.Json;
+ using Stripe.Infrastructure;
+ using STJS = System.Text.Json.Serialization;
+
+ ///
+ /// A read-only representation of a user's PaymentMethod for use in Crypto On Ramp
+ /// transactions.
+ ///
+ [STJS.JsonConverter(typeof(STJStripeEntityConverter))]
+ public class CustomerPaymentToken : StripeEntity, IHasId, IHasObject
+ {
+ ///
+ /// Unique identifier for the object.
+ ///
+ [JsonProperty("id")]
+ [STJS.JsonPropertyName("id")]
+ public string Id { get; set; }
+
+ ///
+ /// String representing the object's type. Objects of the same type share the same value.
+ ///
+ [JsonProperty("object")]
+ [STJS.JsonPropertyName("object")]
+ public string Object { get; set; }
+
+ ///
+ /// A card PaymentToken, this hash contains details of the card PaymentToken.
+ ///
+ [JsonProperty("card")]
+ [STJS.JsonPropertyName("card")]
+ public CustomerPaymentTokenCard Card { get; set; }
+
+ ///
+ /// Type of the Payment Token.
+ /// One of: card, or us_bank_account.
+ ///
+ [JsonProperty("type")]
+ [STJS.JsonPropertyName("type")]
+ public string Type { get; set; }
+
+ ///
+ /// A us_bank_account PaymentToken, this hash contains details of the US bank account
+ /// PaymentToken.
+ ///
+ [JsonProperty("us_bank_account")]
+ [STJS.JsonPropertyName("us_bank_account")]
+ public CustomerPaymentTokenUsBankAccount UsBankAccount { get; set; }
+ }
+}
diff --git a/src/Stripe.net/Entities/Crypto/CustomerPaymentTokens/CustomerPaymentTokenCard.cs b/src/Stripe.net/Entities/Crypto/CustomerPaymentTokens/CustomerPaymentTokenCard.cs
new file mode 100644
index 0000000000..51c08eebda
--- /dev/null
+++ b/src/Stripe.net/Entities/Crypto/CustomerPaymentTokens/CustomerPaymentTokenCard.cs
@@ -0,0 +1,56 @@
+// File generated from our OpenAPI spec
+namespace Stripe.Crypto
+{
+ using Newtonsoft.Json;
+ using Stripe.Infrastructure;
+ using STJS = System.Text.Json.Serialization;
+
+ [STJS.JsonConverter(typeof(STJStripeEntityConverter))]
+ public class CustomerPaymentTokenCard : StripeEntity
+ {
+ ///
+ /// Card brand. Can be amex, cartes_bancaires, diners, discover,
+ /// eftpos_au, jcb, link, mastercard, unionpay,
+ /// visa or unknown.
+ ///
+ [JsonProperty("brand")]
+ [STJS.JsonPropertyName("brand")]
+ public string Brand { get; set; }
+
+ ///
+ /// Two-digit number representing the card’s expiration month.
+ ///
+ [JsonProperty("exp_month")]
+ [STJS.JsonPropertyName("exp_month")]
+ 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; }
+
+ ///
+ /// Card funding type. Can be credit, debit, prepaid, or
+ /// unknown.
+ ///
+ [JsonProperty("funding")]
+ [STJS.JsonPropertyName("funding")]
+ public string Funding { get; set; }
+
+ ///
+ /// The last four digits of the card.
+ ///
+ [JsonProperty("last4")]
+ [STJS.JsonPropertyName("last4")]
+ public string Last4 { get; set; }
+
+ ///
+ /// If this Card is part of a card wallet, this contains the details of the card wallet.
+ ///
+ [JsonProperty("wallet")]
+ [STJS.JsonPropertyName("wallet")]
+ public CustomerPaymentTokenCardWallet Wallet { get; set; }
+ }
+}
diff --git a/src/Stripe.net/Entities/Crypto/CustomerPaymentTokens/CustomerPaymentTokenCardWallet.cs b/src/Stripe.net/Entities/Crypto/CustomerPaymentTokens/CustomerPaymentTokenCardWallet.cs
new file mode 100644
index 0000000000..2de557b2e1
--- /dev/null
+++ b/src/Stripe.net/Entities/Crypto/CustomerPaymentTokens/CustomerPaymentTokenCardWallet.cs
@@ -0,0 +1,19 @@
+// File generated from our OpenAPI spec
+namespace Stripe.Crypto
+{
+ using Newtonsoft.Json;
+ using Stripe.Infrastructure;
+ using STJS = System.Text.Json.Serialization;
+
+ [STJS.JsonConverter(typeof(STJStripeEntityConverter))]
+ public class CustomerPaymentTokenCardWallet : StripeEntity
+ {
+ ///
+ /// The type of the card wallet, one of apple_pay or google_pay.
+ /// One of: apple_pay, or google_pay.
+ ///
+ [JsonProperty("type")]
+ [STJS.JsonPropertyName("type")]
+ public string Type { get; set; }
+ }
+}
diff --git a/src/Stripe.net/Entities/Crypto/CustomerPaymentTokens/CustomerPaymentTokenUsBankAccount.cs b/src/Stripe.net/Entities/Crypto/CustomerPaymentTokens/CustomerPaymentTokenUsBankAccount.cs
new file mode 100644
index 0000000000..1197c60560
--- /dev/null
+++ b/src/Stripe.net/Entities/Crypto/CustomerPaymentTokens/CustomerPaymentTokenUsBankAccount.cs
@@ -0,0 +1,33 @@
+// File generated from our OpenAPI spec
+namespace Stripe.Crypto
+{
+ using Newtonsoft.Json;
+ using Stripe.Infrastructure;
+ using STJS = System.Text.Json.Serialization;
+
+ [STJS.JsonConverter(typeof(STJStripeEntityConverter))]
+ public class CustomerPaymentTokenUsBankAccount : StripeEntity
+ {
+ ///
+ /// Account type: checkings or savings.
+ /// One of: checking, or savings.
+ ///
+ [JsonProperty("account_type")]
+ [STJS.JsonPropertyName("account_type")]
+ public string AccountType { get; set; }
+
+ ///
+ /// The name of the bank.
+ ///
+ [JsonProperty("bank_name")]
+ [STJS.JsonPropertyName("bank_name")]
+ public string BankName { get; set; }
+
+ ///
+ /// Last four digits of the bank account number.
+ ///
+ [JsonProperty("last4")]
+ [STJS.JsonPropertyName("last4")]
+ public string Last4 { get; set; }
+ }
+}
diff --git a/src/Stripe.net/Entities/Crypto/Customers/Customer.cs b/src/Stripe.net/Entities/Crypto/Customers/Customer.cs
new file mode 100644
index 0000000000..851c18d5f1
--- /dev/null
+++ b/src/Stripe.net/Entities/Crypto/Customers/Customer.cs
@@ -0,0 +1,64 @@
+// File generated from our OpenAPI spec
+namespace Stripe.Crypto
+{
+ using System.Collections.Generic;
+ using Newtonsoft.Json;
+ using Stripe.Infrastructure;
+ using STJS = System.Text.Json.Serialization;
+
+ ///
+ /// This object represents a crypto onramp customer. Use it to get their kyc status and
+ /// payment methods.
+ ///
+ [STJS.JsonConverter(typeof(STJStripeEntityConverter))]
+ public class Customer : StripeEntity, IHasId, IHasObject
+ {
+ ///
+ /// Unique identifier for the object.
+ ///
+ [JsonProperty("id")]
+ [STJS.JsonPropertyName("id")]
+ public string Id { get; set; }
+
+ ///
+ /// String representing the object's type. Objects of the same type share the same value.
+ ///
+ [JsonProperty("object")]
+ [STJS.JsonPropertyName("object")]
+ public string Object { get; set; }
+
+ ///
+ /// The KYC region determined by the customer's address country.
+ /// One of: eu, or us.
+ ///
+ [JsonProperty("kyc_region")]
+ [STJS.JsonPropertyName("kyc_region")]
+ public string KycRegion { get; set; }
+
+ ///
+ /// List of KYC tiers and their verification status.
+ ///
+ [JsonProperty("kyc_tiers")]
+ [STJS.JsonPropertyName("kyc_tiers")]
+ public List KycTiers { get; set; }
+
+ ///
+ /// The set of KYC Fields provided for this customers.
+ /// One of: address_city, address_country, address_line_1,
+ /// address_line_2, address_postal_code, address_state,
+ /// attestation, birth_city, birth_country, dob,
+ /// first_name, id_document, id_number, id_type,
+ /// identifiers, last_name, nationalities, or selfie.
+ ///
+ [JsonProperty("provided_fields")]
+ [STJS.JsonPropertyName("provided_fields")]
+ public List ProvidedFields { get; set; }
+
+ ///
+ /// List of verifications and their outcome.
+ ///
+ [JsonProperty("verifications")]
+ [STJS.JsonPropertyName("verifications")]
+ public List Verifications { get; set; }
+ }
+}
diff --git a/src/Stripe.net/Entities/Crypto/Customers/CustomerKycTier.cs b/src/Stripe.net/Entities/Crypto/Customers/CustomerKycTier.cs
new file mode 100644
index 0000000000..8a1db8de92
--- /dev/null
+++ b/src/Stripe.net/Entities/Crypto/Customers/CustomerKycTier.cs
@@ -0,0 +1,38 @@
+// File generated from our OpenAPI spec
+namespace Stripe.Crypto
+{
+ using System.Collections.Generic;
+ using Newtonsoft.Json;
+ using Stripe.Infrastructure;
+ using STJS = System.Text.Json.Serialization;
+
+ [STJS.JsonConverter(typeof(STJStripeEntityConverter))]
+ public class CustomerKycTier : StripeEntity
+ {
+ ///
+ /// The KYC tier level (e.g., l0, l1, l2).
+ /// One of: l0, l1, or l2.
+ ///
+ [JsonProperty("tier")]
+ [STJS.JsonPropertyName("tier")]
+ public string Tier { get; set; }
+
+ ///
+ /// List of errors associated with this KYC tier verification.
+ /// One of: id_document_verification_failed, phone_verification_failed, or
+ /// user_has_reached_max_verification_attempts.
+ ///
+ [JsonProperty("verification_errors")]
+ [STJS.JsonPropertyName("verification_errors")]
+ public List VerificationErrors { get; set; }
+
+ ///
+ /// The verification status for this KYC tier.
+ /// One of: not_available, not_started, pending, rejected, or
+ /// verified.
+ ///
+ [JsonProperty("verification_status")]
+ [STJS.JsonPropertyName("verification_status")]
+ public string VerificationStatus { get; set; }
+ }
+}
diff --git a/src/Stripe.net/Entities/Crypto/Customers/CustomerVerification.cs b/src/Stripe.net/Entities/Crypto/Customers/CustomerVerification.cs
new file mode 100644
index 0000000000..50dd802d61
--- /dev/null
+++ b/src/Stripe.net/Entities/Crypto/Customers/CustomerVerification.cs
@@ -0,0 +1,38 @@
+// File generated from our OpenAPI spec
+namespace Stripe.Crypto
+{
+ using System.Collections.Generic;
+ using Newtonsoft.Json;
+ using Stripe.Infrastructure;
+ using STJS = System.Text.Json.Serialization;
+
+ [STJS.JsonConverter(typeof(STJStripeEntityConverter))]
+ public class CustomerVerification : StripeEntity
+ {
+ ///
+ /// List of errors associated with the verification.
+ /// One of: id_document_verification_failed, phone_verification_failed, or
+ /// user_has_reached_max_verification_attempts.
+ ///
+ [JsonProperty("errors")]
+ [STJS.JsonPropertyName("errors")]
+ public List Errors { get; set; }
+
+ ///
+ /// Type of verification.
+ /// One of: id_document_verified, kyc_verified, or phone_verified.
+ ///
+ [JsonProperty("name")]
+ [STJS.JsonPropertyName("name")]
+ public string Name { get; set; }
+
+ ///
+ /// Outcome of the verification.
+ /// One of: not_available, not_started, pending, rejected, or
+ /// verified.
+ ///
+ [JsonProperty("status")]
+ [STJS.JsonPropertyName("status")]
+ public string Status { get; set; }
+ }
+}
diff --git a/src/Stripe.net/Entities/Crypto/OnrampSessions/OnrampSession.cs b/src/Stripe.net/Entities/Crypto/OnrampSessions/OnrampSession.cs
new file mode 100644
index 0000000000..84178dfd75
--- /dev/null
+++ b/src/Stripe.net/Entities/Crypto/OnrampSessions/OnrampSession.cs
@@ -0,0 +1,107 @@
+// File generated from our OpenAPI spec
+namespace Stripe.Crypto
+{
+ using System;
+ using System.Collections.Generic;
+ using Newtonsoft.Json;
+ using Stripe.Infrastructure;
+ using STJS = System.Text.Json.Serialization;
+
+ ///
+ /// A Crypto Onramp Session represents your customer's session as they purchase
+ /// cryptocurrency through Stripe. Once payment is successful, Stripe will fulfill the
+ /// delivery of cryptocurrency to your user's wallet and contain a reference to the crypto
+ /// transaction ID.
+ ///
+ /// You can create an onramp session on your server and embed the widget on your frontend.
+ /// Alternatively, you can redirect your users to the standalone hosted onramp.
+ ///
+ /// Related guide: Integrate
+ /// the onramp.
+ ///
+ [STJS.JsonConverter(typeof(STJStripeEntityConverter))]
+ public class OnrampSession : StripeEntity, IHasId, IHasMetadata, IHasObject
+ {
+ ///
+ /// Unique identifier for the object.
+ ///
+ [JsonProperty("id")]
+ [STJS.JsonPropertyName("id")]
+ public string Id { get; set; }
+
+ ///
+ /// String representing the object's type. Objects of the same type share the same value.
+ ///
+ [JsonProperty("object")]
+ [STJS.JsonPropertyName("object")]
+ public string Object { get; set; }
+
+ ///
+ /// A client secret that can be used to drive a single session using our embedded widget.
+ ///
+ /// Related guide: Set up an
+ /// onramp integration.
+ ///
+ [JsonProperty("client_secret")]
+ [STJS.JsonPropertyName("client_secret")]
+ public string ClientSecret { get; set; }
+
+ ///
+ /// Time at which the object was created. Measured in seconds since the Unix epoch.
+ ///
+ [JsonProperty("created")]
+ [JsonConverter(typeof(UnixDateTimeConverter))]
+ [STJS.JsonPropertyName("created")]
+ [STJS.JsonConverter(typeof(STJUnixDateTimeConverter))]
+ public DateTime Created { get; set; } = Stripe.Infrastructure.DateTimeUtils.UnixEpoch;
+
+ ///
+ /// Has the value true if any user kyc details were provided during the creation of
+ /// the onramp session. Otherwise, has the value false.
+ ///
+ [JsonProperty("kyc_details_provided")]
+ [STJS.JsonPropertyName("kyc_details_provided")]
+ public bool KycDetailsProvided { 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")]
+ 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; }
+
+ ///
+ /// Redirect your users to the URL for a prebuilt frontend integration of the crypto onramp
+ /// on the standalone hosted onramp.
+ ///
+ /// Related guide: Mint
+ /// a session with a redirect url.
+ ///
+ [JsonProperty("redirect_url")]
+ [STJS.JsonPropertyName("redirect_url")]
+ public string RedirectUrl { get; set; }
+
+ ///
+ /// The status of the Onramp Session. One of = {initialized, rejected, requires_payment,
+ /// fulfillment_processing, fulfillment_complete}.
+ ///
+ [JsonProperty("status")]
+ [STJS.JsonPropertyName("status")]
+ public string Status { get; set; }
+
+ [JsonProperty("transaction_details")]
+ [STJS.JsonPropertyName("transaction_details")]
+ public OnrampSessionTransactionDetails TransactionDetails { get; set; }
+ }
+}
diff --git a/src/Stripe.net/Entities/Crypto/OnrampSessions/OnrampSessionTransactionDetails.cs b/src/Stripe.net/Entities/Crypto/OnrampSessions/OnrampSessionTransactionDetails.cs
new file mode 100644
index 0000000000..0423d058a9
--- /dev/null
+++ b/src/Stripe.net/Entities/Crypto/OnrampSessions/OnrampSessionTransactionDetails.cs
@@ -0,0 +1,126 @@
+// File generated from our OpenAPI spec
+namespace Stripe.Crypto
+{
+ using System.Collections.Generic;
+ using Newtonsoft.Json;
+ using Stripe.Infrastructure;
+ using STJS = System.Text.Json.Serialization;
+
+ [STJS.JsonConverter(typeof(STJStripeEntityConverter))]
+ public class OnrampSessionTransactionDetails : StripeEntity
+ {
+ ///
+ /// The amount of crypto the customer will get deposited into their wallet.
+ ///
+ [JsonProperty("destination_amount")]
+ [STJS.JsonPropertyName("destination_amount")]
+ public string DestinationAmount { get; set; }
+
+ ///
+ /// If a platform wants to lock the currencies an session will support, they can add
+ /// supported currencies to this array. If left null, the experience will allow selection of
+ /// all supported destination currencies.
+ /// One of: avax, btc, eth, matic, sol, usdc,
+ /// wld, or xlm.
+ ///
+ [JsonProperty("destination_currencies")]
+ [STJS.JsonPropertyName("destination_currencies")]
+ public List DestinationCurrencies { get; set; }
+
+ ///
+ /// The selected destination_currency to convert the source to. This should be
+ /// a crypto currency code. If destination_currencies is set, it must be a value in
+ /// that array.
+ /// One of: avax, btc, eth, matic, sol, usdc,
+ /// wld, or xlm.
+ ///
+ [JsonProperty("destination_currency")]
+ [STJS.JsonPropertyName("destination_currency")]
+ public string DestinationCurrency { get; set; }
+
+ ///
+ /// The specific crypto network the destination_currency is settled on. If
+ /// destination_networks is set, it must be a value in that array.
+ /// One of: avalanche, base, bitcoin, ethereum, optimism,
+ /// polygon, solana, stellar, or worldchain.
+ ///
+ [JsonProperty("destination_network")]
+ [STJS.JsonPropertyName("destination_network")]
+ public string DestinationNetwork { get; set; }
+
+ ///
+ /// If a platform wants to lock the supported networks, they can do so through this array.
+ /// If left null, the experience will allow selection of all supported networks.
+ /// One of: avalanche, base, bitcoin, ethereum, optimism,
+ /// polygon, solana, stellar, or worldchain.
+ ///
+ [JsonProperty("destination_networks")]
+ [STJS.JsonPropertyName("destination_networks")]
+ public List DestinationNetworks { get; set; }
+
+ ///
+ /// Details about the fees associated with this transaction.
+ ///
+ [JsonProperty("fees")]
+ [STJS.JsonPropertyName("fees")]
+ public OnrampSessionTransactionDetailsFees Fees { get; set; }
+
+ ///
+ /// Whether or not to lock the suggested wallet address.
+ ///
+ [JsonProperty("lock_wallet_address")]
+ [STJS.JsonPropertyName("lock_wallet_address")]
+ public bool? LockWalletAddress { get; set; }
+
+ ///
+ /// Speed at which the cryptocurrency is delivered to the wallet One of: instant
+ /// (default): crypto is delivered when payment is confirmed standard: crypto is
+ /// delivered when payment settles.
+ /// One of: instant, or standard.
+ ///
+ [JsonProperty("settlement_speed")]
+ [STJS.JsonPropertyName("settlement_speed")]
+ public string SettlementSpeed { get; set; }
+
+ ///
+ /// The amount of fiat we intend to onramp - excluding fees.
+ ///
+ [JsonProperty("source_amount")]
+ [STJS.JsonPropertyName("source_amount")]
+ public string SourceAmount { get; set; }
+
+ ///
+ /// A fiat currency code.
+ /// One of: eur, gbp, or usd.
+ ///
+ [JsonProperty("source_currency")]
+ [STJS.JsonPropertyName("source_currency")]
+ public string SourceCurrency { get; set; }
+
+ ///
+ /// The on-chain transaction hash (also referred to as transaction ID or tx_hash) of the
+ /// transaction that was sent to the customer's wallet. The format varies by chain (e.g.
+ /// 0xc257...1a95 on Ethereum, 5UB1...v3xZ on Solana, or a1b2...bf00 on
+ /// Bitcoin). This will only be set if the session reaches
+ /// status=fulfillment_complete and we've transferred the crypto successfully to the
+ /// external wallet.
+ ///
+ [JsonProperty("transaction_id")]
+ [STJS.JsonPropertyName("transaction_id")]
+ public string TransactionId { get; set; }
+
+ ///
+ /// The consumer's wallet address (where crypto will be sent to).
+ ///
+ [JsonProperty("wallet_address")]
+ [STJS.JsonPropertyName("wallet_address")]
+ public string WalletAddress { get; set; }
+
+ ///
+ /// The end customer's crypto wallet address (for each network) to use for this transaction.
+ ///
+ [JsonProperty("wallet_addresses")]
+ [STJS.JsonPropertyName("wallet_addresses")]
+ public OnrampSessionTransactionDetailsWalletAddresses WalletAddresses { get; set; }
+ }
+}
diff --git a/src/Stripe.net/Entities/Crypto/OnrampSessions/OnrampSessionTransactionDetailsFees.cs b/src/Stripe.net/Entities/Crypto/OnrampSessions/OnrampSessionTransactionDetailsFees.cs
new file mode 100644
index 0000000000..5390d069d5
--- /dev/null
+++ b/src/Stripe.net/Entities/Crypto/OnrampSessions/OnrampSessionTransactionDetailsFees.cs
@@ -0,0 +1,26 @@
+// File generated from our OpenAPI spec
+namespace Stripe.Crypto
+{
+ using Newtonsoft.Json;
+ using Stripe.Infrastructure;
+ using STJS = System.Text.Json.Serialization;
+
+ [STJS.JsonConverter(typeof(STJStripeEntityConverter))]
+ public class OnrampSessionTransactionDetailsFees : StripeEntity
+ {
+ ///
+ /// The cost associated with moving crypto from Stripe to the end consumer's wallet. e.g:
+ /// for ETH, this is called 'gas fee', for BTC this is a 'miner's fee'.
+ ///
+ [JsonProperty("network_fee_amount")]
+ [STJS.JsonPropertyName("network_fee_amount")]
+ public string NetworkFeeAmount { get; set; }
+
+ ///
+ /// Fee for processing the transaction.
+ ///
+ [JsonProperty("transaction_fee_amount")]
+ [STJS.JsonPropertyName("transaction_fee_amount")]
+ public string TransactionFeeAmount { get; set; }
+ }
+}
diff --git a/src/Stripe.net/Entities/Crypto/OnrampSessions/OnrampSessionTransactionDetailsWalletAddresses.cs b/src/Stripe.net/Entities/Crypto/OnrampSessions/OnrampSessionTransactionDetailsWalletAddresses.cs
new file mode 100644
index 0000000000..0d787d0bbc
--- /dev/null
+++ b/src/Stripe.net/Entities/Crypto/OnrampSessions/OnrampSessionTransactionDetailsWalletAddresses.cs
@@ -0,0 +1,82 @@
+// File generated from our OpenAPI spec
+namespace Stripe.Crypto
+{
+ using Newtonsoft.Json;
+ using Stripe.Infrastructure;
+ using STJS = System.Text.Json.Serialization;
+
+ [STJS.JsonConverter(typeof(STJStripeEntityConverter))]
+ public class OnrampSessionTransactionDetailsWalletAddresses : StripeEntity
+ {
+ ///
+ /// An avalanche address.
+ ///
+ [JsonProperty("avalanche")]
+ [STJS.JsonPropertyName("avalanche")]
+ public string Avalanche { get; set; }
+
+ ///
+ /// A base address.
+ ///
+ [JsonProperty("base_network")]
+ [STJS.JsonPropertyName("base_network")]
+ public string BaseNetwork { get; set; }
+
+ ///
+ /// A bitcoin address.
+ ///
+ [JsonProperty("bitcoin")]
+ [STJS.JsonPropertyName("bitcoin")]
+ public string Bitcoin { get; set; }
+
+ ///
+ /// The end customer's crypto wallet destination tag (for each network) to use for this
+ /// transaction.
+ ///
+ [JsonProperty("destination_tags")]
+ [STJS.JsonPropertyName("destination_tags")]
+ public OnrampSessionTransactionDetailsWalletAddressesDestinationTags DestinationTags { get; set; }
+
+ ///
+ /// An ethereum address.
+ ///
+ [JsonProperty("ethereum")]
+ [STJS.JsonPropertyName("ethereum")]
+ public string Ethereum { get; set; }
+
+ ///
+ /// An optimism address.
+ ///
+ [JsonProperty("optimism")]
+ [STJS.JsonPropertyName("optimism")]
+ public string Optimism { get; set; }
+
+ ///
+ /// A polygon address.
+ ///
+ [JsonProperty("polygon")]
+ [STJS.JsonPropertyName("polygon")]
+ public string Polygon { get; set; }
+
+ ///
+ /// A solana address.
+ ///
+ [JsonProperty("solana")]
+ [STJS.JsonPropertyName("solana")]
+ public string Solana { get; set; }
+
+ ///
+ /// A stellar address.
+ ///
+ [JsonProperty("stellar")]
+ [STJS.JsonPropertyName("stellar")]
+ public string Stellar { get; set; }
+
+ ///
+ /// A worldchain address.
+ ///
+ [JsonProperty("worldchain")]
+ [STJS.JsonPropertyName("worldchain")]
+ public string Worldchain { get; set; }
+ }
+}
diff --git a/src/Stripe.net/Entities/Crypto/OnrampSessions/OnrampSessionTransactionDetailsWalletAddressesDestinationTags.cs b/src/Stripe.net/Entities/Crypto/OnrampSessions/OnrampSessionTransactionDetailsWalletAddressesDestinationTags.cs
new file mode 100644
index 0000000000..6c12b3020b
--- /dev/null
+++ b/src/Stripe.net/Entities/Crypto/OnrampSessions/OnrampSessionTransactionDetailsWalletAddressesDestinationTags.cs
@@ -0,0 +1,18 @@
+// File generated from our OpenAPI spec
+namespace Stripe.Crypto
+{
+ using Newtonsoft.Json;
+ using Stripe.Infrastructure;
+ using STJS = System.Text.Json.Serialization;
+
+ [STJS.JsonConverter(typeof(STJStripeEntityConverter))]
+ public class OnrampSessionTransactionDetailsWalletAddressesDestinationTags : StripeEntity
+ {
+ ///
+ /// A stellar destination tag.
+ ///
+ [JsonProperty("stellar")]
+ [STJS.JsonPropertyName("stellar")]
+ public string Stellar { get; set; }
+ }
+}
diff --git a/src/Stripe.net/Entities/Crypto/OnrampTransactionLimits/OnrampTransactionLimits.cs b/src/Stripe.net/Entities/Crypto/OnrampTransactionLimits/OnrampTransactionLimits.cs
new file mode 100644
index 0000000000..f930995358
--- /dev/null
+++ b/src/Stripe.net/Entities/Crypto/OnrampTransactionLimits/OnrampTransactionLimits.cs
@@ -0,0 +1,50 @@
+// File generated from our OpenAPI spec
+namespace Stripe.Crypto
+{
+ using System.Collections.Generic;
+ using Newtonsoft.Json;
+ using Stripe.Infrastructure;
+ using STJS = System.Text.Json.Serialization;
+
+ ///
+ /// This object represents the limit for the remaining amount that the crypto customer can
+ /// onramp.
+ ///
+ [STJS.JsonConverter(typeof(STJStripeEntityConverter))]
+ public class OnrampTransactionLimits : StripeEntity, IHasObject
+ {
+ ///
+ /// String representing the object's type. Objects of the same type share the same value.
+ ///
+ [JsonProperty("object")]
+ [STJS.JsonPropertyName("object")]
+ public string Object { get; set; }
+
+ ///
+ /// The ID of the crypto customer.
+ ///
+ [JsonProperty("crypto_customer_id")]
+ [STJS.JsonPropertyName("crypto_customer_id")]
+ public string CryptoCustomerId { get; set; }
+
+ ///
+ /// The remaining onramp limit for the crypto customer, separated by currency, payment
+ /// method, and settlement speed.
+ ///
+ /// Limits are shown for currencies that correspond to the regions where the customer
+ /// previously transacted. If the customer has no prior transactions, we return limits for
+ /// all supported currencies.
+ ///
+ [JsonProperty("limits")]
+ [STJS.JsonPropertyName("limits")]
+ public Dictionary Limits { 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")]
+ public bool Livemode { get; set; }
+ }
+}
diff --git a/src/Stripe.net/Entities/Customers/Customer.cs b/src/Stripe.net/Entities/Customers/Customer.cs
index a31235815f..9417c62d24 100644
--- a/src/Stripe.net/Entities/Customers/Customer.cs
+++ b/src/Stripe.net/Entities/Customers/Customer.cs
@@ -261,6 +261,14 @@ public IPaymentSource DefaultSource
[STJS.JsonPropertyName("preferred_locales")]
public List PreferredLocales { get; set; }
+ ///
+ /// Redaction status of this customer. If not null, this customer is associated to a
+ /// redaction job.
+ ///
+ [JsonProperty("redaction")]
+ [STJS.JsonPropertyName("redaction")]
+ public CustomerRedaction Redaction { get; set; }
+
///
/// Mailing and shipping address for the customer. Appears on invoices emailed to this
/// customer.
diff --git a/src/Stripe.net/Entities/Customers/CustomerRedaction.cs b/src/Stripe.net/Entities/Customers/CustomerRedaction.cs
new file mode 100644
index 0000000000..fa4fd54c01
--- /dev/null
+++ b/src/Stripe.net/Entities/Customers/CustomerRedaction.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(STJStripeEntityConverter))]
+ public class CustomerRedaction : StripeEntity
+ {
+ ///
+ /// Indicates whether this object and its related objects have been redacted or not.
+ /// One of: processing, redacted, or validated.
+ ///
+ [JsonProperty("status")]
+ [STJS.JsonPropertyName("status")]
+ public string Status { get; set; }
+ }
+}
diff --git a/src/Stripe.net/Entities/Disputes/Dispute.cs b/src/Stripe.net/Entities/Disputes/Dispute.cs
index bbc1f6802d..899ee858fc 100644
--- a/src/Stripe.net/Entities/Disputes/Dispute.cs
+++ b/src/Stripe.net/Entities/Disputes/Dispute.cs
@@ -111,7 +111,8 @@ public Charge Charge
///
/// List of eligibility types that are included in enhanced_evidence.
- /// One of: visa_compelling_evidence_3, or visa_compliance.
+ /// One of: mastercard_compliance, visa_compelling_evidence_3, or
+ /// visa_compliance.
///
[JsonProperty("enhanced_eligibility_types")]
[STJS.JsonPropertyName("enhanced_eligibility_types")]
diff --git a/src/Stripe.net/Entities/Disputes/DisputeEvidenceDetailsEnhancedEligibility.cs b/src/Stripe.net/Entities/Disputes/DisputeEvidenceDetailsEnhancedEligibility.cs
index 2757a80f1f..618d830058 100644
--- a/src/Stripe.net/Entities/Disputes/DisputeEvidenceDetailsEnhancedEligibility.cs
+++ b/src/Stripe.net/Entities/Disputes/DisputeEvidenceDetailsEnhancedEligibility.cs
@@ -8,6 +8,10 @@ namespace Stripe
[STJS.JsonConverter(typeof(STJStripeEntityConverter))]
public class DisputeEvidenceDetailsEnhancedEligibility : StripeEntity
{
+ [JsonProperty("mastercard_compliance")]
+ [STJS.JsonPropertyName("mastercard_compliance")]
+ public DisputeEvidenceDetailsEnhancedEligibilityMastercardCompliance MastercardCompliance { get; set; }
+
[JsonProperty("visa_compelling_evidence_3")]
[STJS.JsonPropertyName("visa_compelling_evidence_3")]
public DisputeEvidenceDetailsEnhancedEligibilityVisaCompellingEvidence3 VisaCompellingEvidence3 { get; set; }
diff --git a/src/Stripe.net/Entities/Disputes/DisputeEvidenceDetailsEnhancedEligibilityMastercardCompliance.cs b/src/Stripe.net/Entities/Disputes/DisputeEvidenceDetailsEnhancedEligibilityMastercardCompliance.cs
new file mode 100644
index 0000000000..506c617b52
--- /dev/null
+++ b/src/Stripe.net/Entities/Disputes/DisputeEvidenceDetailsEnhancedEligibilityMastercardCompliance.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(STJStripeEntityConverter))]
+ public class DisputeEvidenceDetailsEnhancedEligibilityMastercardCompliance : StripeEntity
+ {
+ ///
+ /// Mastercard compliance eligibility status.
+ /// One of: fee_acknowledged, or requires_fee_acknowledgement.
+ ///
+ [JsonProperty("status")]
+ [STJS.JsonPropertyName("status")]
+ public string Status { get; set; }
+ }
+}
diff --git a/src/Stripe.net/Entities/Disputes/DisputeEvidenceEnhancedEvidence.cs b/src/Stripe.net/Entities/Disputes/DisputeEvidenceEnhancedEvidence.cs
index 51f3e33771..e1610d4636 100644
--- a/src/Stripe.net/Entities/Disputes/DisputeEvidenceEnhancedEvidence.cs
+++ b/src/Stripe.net/Entities/Disputes/DisputeEvidenceEnhancedEvidence.cs
@@ -8,6 +8,10 @@ namespace Stripe
[STJS.JsonConverter(typeof(STJStripeEntityConverter))]
public class DisputeEvidenceEnhancedEvidence : StripeEntity
{
+ [JsonProperty("mastercard_compliance")]
+ [STJS.JsonPropertyName("mastercard_compliance")]
+ public DisputeEvidenceEnhancedEvidenceMastercardCompliance MastercardCompliance { get; set; }
+
[JsonProperty("visa_compelling_evidence_3")]
[STJS.JsonPropertyName("visa_compelling_evidence_3")]
public DisputeEvidenceEnhancedEvidenceVisaCompellingEvidence3 VisaCompellingEvidence3 { get; set; }
diff --git a/src/Stripe.net/Entities/Disputes/DisputeEvidenceEnhancedEvidenceMastercardCompliance.cs b/src/Stripe.net/Entities/Disputes/DisputeEvidenceEnhancedEvidenceMastercardCompliance.cs
new file mode 100644
index 0000000000..82f7f604f6
--- /dev/null
+++ b/src/Stripe.net/Entities/Disputes/DisputeEvidenceEnhancedEvidenceMastercardCompliance.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(STJStripeEntityConverter))]
+ public class DisputeEvidenceEnhancedEvidenceMastercardCompliance : StripeEntity
+ {
+ ///
+ /// A field acknowledging the fee incurred when countering a Mastercard compliance dispute.
+ /// If this field is set to true, evidence can be submitted for the compliance dispute.
+ ///
+ [JsonProperty("fee_acknowledged")]
+ [STJS.JsonPropertyName("fee_acknowledged")]
+ public bool FeeAcknowledged { get; set; }
+ }
+}
diff --git a/src/Stripe.net/Entities/Events/Event.cs b/src/Stripe.net/Entities/Events/Event.cs
index 37bbadbe6b..6161373858 100644
--- a/src/Stripe.net/Entities/Events/Event.cs
+++ b/src/Stripe.net/Entities/Events/Event.cs
@@ -125,7 +125,10 @@ public class Event : StripeEntity, IHasId, IHasObject
/// application_fee.created, application_fee.refund.updated,
/// application_fee.refunded, balance.available,
/// balance_settings.updated, billing.alert.recovered,
- /// billing.alert.triggered, billing.credit_grant.created,
+ /// billing.alert.triggered, billing.credit_balance_transaction.created,
+ /// billing.credit_grant.created, billing.credit_grant.updated,
+ /// billing.meter.created, billing.meter.deactivated,
+ /// billing.meter.reactivated, billing.meter.updated,
/// billing_portal.configuration.created,
/// billing_portal.configuration.updated, billing_portal.session.created,
/// capability.updated, capital.financing_offer.accepted,
@@ -188,15 +191,15 @@ public class Event : StripeEntity, IHasId, IHasObject
/// invoice.payment_action_required, invoice.payment_attempt_required,
/// invoice.payment_failed, invoice.payment_succeeded, invoice.sent,
/// invoice.upcoming, invoice.updated, invoice.voided,
- /// invoice.will_be_due, invoice_payment.paid, invoiceitem.created,
- /// invoiceitem.deleted, issuing_authorization.created,
- /// issuing_authorization.request, issuing_authorization.updated,
- /// issuing_card.created, issuing_card.updated,
- /// issuing_cardholder.created, issuing_cardholder.updated,
- /// issuing_dispute.closed, issuing_dispute.created,
- /// issuing_dispute.funds_reinstated, issuing_dispute.funds_rescinded,
- /// issuing_dispute.submitted, issuing_dispute.updated,
- /// issuing_dispute_settlement_detail.created,
+ /// invoice.will_be_due, invoice_payment.detached,
+ /// invoice_payment.paid, invoiceitem.created, invoiceitem.deleted,
+ /// issuing_authorization.created, issuing_authorization.request,
+ /// issuing_authorization.updated, issuing_card.created,
+ /// issuing_card.updated, issuing_cardholder.created,
+ /// issuing_cardholder.updated, issuing_dispute.closed,
+ /// issuing_dispute.created, issuing_dispute.funds_reinstated,
+ /// issuing_dispute.funds_rescinded, issuing_dispute.submitted,
+ /// issuing_dispute.updated, issuing_dispute_settlement_detail.created,
/// issuing_dispute_settlement_detail.updated,
/// issuing_fraud_liability_debit.created,
/// issuing_personalization_design.activated,
@@ -270,11 +273,8 @@ public class Event : StripeEntity, IHasId, IHasObject
/// treasury.outbound_transfer.returned,
/// treasury.outbound_transfer.tracking_details_updated,
/// treasury.received_credit.created, treasury.received_credit.failed,
- /// treasury.received_credit.succeeded, treasury.received_debit.created,
- /// invoice_payment.detached, billing.credit_balance_transaction.created,
- /// billing.credit_grant.updated, billing.meter.created,
- /// billing.meter.deactivated, billing.meter.reactivated,
- /// billing.meter.updated, or ping.
+ /// treasury.received_credit.succeeded, treasury.received_debit.created, or
+ /// ping.
///
[JsonProperty("type")]
[STJS.JsonPropertyName("type")]
diff --git a/src/Stripe.net/Entities/FinancialConnections/Accounts/AccountStatusDetails.cs b/src/Stripe.net/Entities/FinancialConnections/Accounts/AccountStatusDetails.cs
index 7338164e5b..1e4064bf04 100644
--- a/src/Stripe.net/Entities/FinancialConnections/Accounts/AccountStatusDetails.cs
+++ b/src/Stripe.net/Entities/FinancialConnections/Accounts/AccountStatusDetails.cs
@@ -8,6 +8,10 @@ namespace Stripe.FinancialConnections
[STJS.JsonConverter(typeof(STJStripeEntityConverter))]
public class AccountStatusDetails : StripeEntity
{
+ [JsonProperty("active")]
+ [STJS.JsonPropertyName("active")]
+ public AccountStatusDetailsActive Active { get; set; }
+
[JsonProperty("inactive")]
[STJS.JsonPropertyName("inactive")]
public AccountStatusDetailsInactive Inactive { get; set; }
diff --git a/src/Stripe.net/Entities/FinancialConnections/Accounts/AccountStatusDetailsActive.cs b/src/Stripe.net/Entities/FinancialConnections/Accounts/AccountStatusDetailsActive.cs
new file mode 100644
index 0000000000..4653dcd091
--- /dev/null
+++ b/src/Stripe.net/Entities/FinancialConnections/Accounts/AccountStatusDetailsActive.cs
@@ -0,0 +1,37 @@
+// File generated from our OpenAPI spec
+namespace Stripe.FinancialConnections
+{
+ using System;
+ using Newtonsoft.Json;
+ using Stripe.Infrastructure;
+ using STJS = System.Text.Json.Serialization;
+
+ [STJS.JsonConverter(typeof(STJStripeEntityConverter))]
+ public class AccountStatusDetailsActive : StripeEntity
+ {
+ ///
+ /// The action (if any) to proactively relink the Account.
+ /// One of: none, or relink_required.
+ ///
+ [JsonProperty("action")]
+ [STJS.JsonPropertyName("action")]
+ public string Action { get; set; }
+
+ ///
+ /// The underlying cause of the Account becoming inactive.
+ /// One of: access_expired, institution_requirement, or unspecified.
+ ///
+ [JsonProperty("cause")]
+ [STJS.JsonPropertyName("cause")]
+ public string Cause { get; set; }
+
+ ///
+ /// When the Account is expected to become inactive, if applicable.
+ ///
+ [JsonProperty("expected_deactivation_date")]
+ [JsonConverter(typeof(UnixDateTimeConverter))]
+ [STJS.JsonPropertyName("expected_deactivation_date")]
+ [STJS.JsonConverter(typeof(STJUnixDateTimeConverter))]
+ public DateTime ExpectedDeactivationDate { get; set; } = Stripe.Infrastructure.DateTimeUtils.UnixEpoch;
+ }
+}
diff --git a/src/Stripe.net/Entities/FinancialConnections/Authorizations/AuthorizationStatusDetails.cs b/src/Stripe.net/Entities/FinancialConnections/Authorizations/AuthorizationStatusDetails.cs
index bd0889c77a..fad514c35e 100644
--- a/src/Stripe.net/Entities/FinancialConnections/Authorizations/AuthorizationStatusDetails.cs
+++ b/src/Stripe.net/Entities/FinancialConnections/Authorizations/AuthorizationStatusDetails.cs
@@ -8,6 +8,10 @@ namespace Stripe.FinancialConnections
[STJS.JsonConverter(typeof(STJStripeEntityConverter))]
public class AuthorizationStatusDetails : StripeEntity
{
+ [JsonProperty("active")]
+ [STJS.JsonPropertyName("active")]
+ public AuthorizationStatusDetailsActive Active { get; set; }
+
[JsonProperty("inactive")]
[STJS.JsonPropertyName("inactive")]
public AuthorizationStatusDetailsInactive Inactive { get; set; }
diff --git a/src/Stripe.net/Entities/FinancialConnections/Authorizations/AuthorizationStatusDetailsActive.cs b/src/Stripe.net/Entities/FinancialConnections/Authorizations/AuthorizationStatusDetailsActive.cs
new file mode 100644
index 0000000000..ce929c9009
--- /dev/null
+++ b/src/Stripe.net/Entities/FinancialConnections/Authorizations/AuthorizationStatusDetailsActive.cs
@@ -0,0 +1,29 @@
+// File generated from our OpenAPI spec
+namespace Stripe.FinancialConnections
+{
+ using System;
+ using Newtonsoft.Json;
+ using Stripe.Infrastructure;
+ using STJS = System.Text.Json.Serialization;
+
+ [STJS.JsonConverter(typeof(STJStripeEntityConverter))]
+ public class AuthorizationStatusDetailsActive : StripeEntity
+ {
+ ///
+ /// The action (if any) to proactively relink the Authorization.
+ /// One of: none, or relink_required.
+ ///
+ [JsonProperty("action")]
+ [STJS.JsonPropertyName("action")]
+ public string Action { get; set; }
+
+ ///
+ /// When the Authorization is expected to become inactive, if applicable.
+ ///
+ [JsonProperty("expected_deactivation_date")]
+ [JsonConverter(typeof(UnixDateTimeConverter))]
+ [STJS.JsonPropertyName("expected_deactivation_date")]
+ [STJS.JsonConverter(typeof(STJUnixDateTimeConverter))]
+ public DateTime ExpectedDeactivationDate { get; set; } = Stripe.Infrastructure.DateTimeUtils.UnixEpoch;
+ }
+}
diff --git a/src/Stripe.net/Entities/GiftCardOperations/GiftCardOperation.cs b/src/Stripe.net/Entities/GiftCardOperations/GiftCardOperation.cs
index 57fc9642a1..0c877c41bf 100644
--- a/src/Stripe.net/Entities/GiftCardOperations/GiftCardOperation.cs
+++ b/src/Stripe.net/Entities/GiftCardOperations/GiftCardOperation.cs
@@ -8,7 +8,7 @@ namespace Stripe
///
/// A GiftCardOperation represents an operation performed on a third-party gift card, such
- /// as activation, deactivation, reload, cashout, balance check, or void.
+ /// as activation, reload, cashout, balance check, or void.
///
[STJS.JsonConverter(typeof(STJStripeEntityConverter))]
public class GiftCardOperation : StripeEntity, IHasId, IHasObject
@@ -80,13 +80,6 @@ public class GiftCardOperation : StripeEntity, IHasId, IHasOb
[STJS.JsonConverter(typeof(STJUnixDateTimeConverter))]
public DateTime Created { get; set; } = Stripe.Infrastructure.DateTimeUtils.UnixEpoch;
- ///
- /// Details about a gift card deactivation operation.
- ///
- [JsonProperty("deactivation")]
- [STJS.JsonPropertyName("deactivation")]
- public GiftCardOperationDeactivation Deactivation { get; set; }
-
///
/// The failure code of the operation. Only present if the status is failed.
/// One of: action_not_supported, card_already_activated, card_expired,
@@ -190,7 +183,7 @@ public GiftCard GiftCard
///
/// The type of operation performed.
/// One of: activation, activation_void, balance_check, cashout,
- /// cashout_void, deactivation, reload, or reload_void.
+ /// cashout_void, reload, or reload_void.
///
[JsonProperty("type")]
[STJS.JsonPropertyName("type")]
diff --git a/src/Stripe.net/Entities/Identity/VerificationSessions/VerificationSessionRedaction.cs b/src/Stripe.net/Entities/Identity/VerificationSessions/VerificationSessionRedaction.cs
index acb79a7251..9ca62b4b4e 100644
--- a/src/Stripe.net/Entities/Identity/VerificationSessions/VerificationSessionRedaction.cs
+++ b/src/Stripe.net/Entities/Identity/VerificationSessions/VerificationSessionRedaction.cs
@@ -10,7 +10,7 @@ public class VerificationSessionRedaction : StripeEntity
/// Indicates whether this object and its related objects have been redacted or not.
- /// One of: processing, or redacted.
+ /// One of: processing, redacted, or validated.
///
[JsonProperty("status")]
[STJS.JsonPropertyName("status")]
diff --git a/src/Stripe.net/Entities/Invoices/InvoicePaymentSettings.cs b/src/Stripe.net/Entities/Invoices/InvoicePaymentSettings.cs
index ca93fa98c3..8a9ac3a2fc 100644
--- a/src/Stripe.net/Entities/Invoices/InvoicePaymentSettings.cs
+++ b/src/Stripe.net/Entities/Invoices/InvoicePaymentSettings.cs
@@ -41,8 +41,9 @@ public class InvoicePaymentSettings : StripeEntity
/// kr_card, link, momo, multibanco, naver_pay,
/// nz_bank_account, p24, pay_by_bank, payco, paynow,
/// paypal, payto, pix, promptpay, revolut_pay,
- /// sepa_credit_transfer, sepa_debit, sofort, stripe_balance,
- /// swish, twint, upi, us_bank_account, or wechat_pay.
+ /// satispay, sepa_credit_transfer, sepa_debit, sofort,
+ /// stripe_balance, swish, twint, upi, us_bank_account,
+ /// or wechat_pay.
///
[JsonProperty("payment_method_types")]
[STJS.JsonPropertyName("payment_method_types")]
diff --git a/src/Stripe.net/Entities/Issuing/Authorizations/Authorization.cs b/src/Stripe.net/Entities/Issuing/Authorizations/Authorization.cs
index 6297b9fba5..89c11cac01 100644
--- a/src/Stripe.net/Entities/Issuing/Authorizations/Authorization.cs
+++ b/src/Stripe.net/Entities/Issuing/Authorizations/Authorization.cs
@@ -207,6 +207,15 @@ public Cardholder Cardholder
[STJS.JsonPropertyName("merchant_amount")]
public long MerchantAmount { get; set; }
+ ///
+ /// The exchange rate used by the network to convert the merchant_amount to
+ /// amount. The merchant_amount multiplied with this rate will equal to the
+ /// amount.
+ ///
+ [JsonProperty("merchant_amount_exchange_rate")]
+ [STJS.JsonPropertyName("merchant_amount_exchange_rate")]
+ public decimal? MerchantAmountExchangeRate { get; set; }
+
///
/// The local currency that was presented to the cardholder for the authorization. This
/// currency can be different from the cardholder currency and the currency field on
@@ -247,6 +256,14 @@ public Cardholder Cardholder
[STJS.JsonPropertyName("pending_request")]
public AuthorizationPendingRequest PendingRequest { get; set; }
+ ///
+ /// Redaction status of this authorization. If the authorization is not redacted, this field
+ /// will be null.
+ ///
+ [JsonProperty("redaction")]
+ [STJS.JsonPropertyName("redaction")]
+ public AuthorizationRedaction Redaction { get; set; }
+
///
/// History of every time a pending_request authorization was approved/declined,
/// either by you directly or by Stripe (e.g. based on your spending_controls). If the
diff --git a/src/Stripe.net/Entities/Issuing/Authorizations/AuthorizationRedaction.cs b/src/Stripe.net/Entities/Issuing/Authorizations/AuthorizationRedaction.cs
new file mode 100644
index 0000000000..82abac581d
--- /dev/null
+++ b/src/Stripe.net/Entities/Issuing/Authorizations/AuthorizationRedaction.cs
@@ -0,0 +1,19 @@
+// 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 AuthorizationRedaction : StripeEntity
+ {
+ ///
+ /// Indicates whether this object and its related objects have been redacted or not.
+ /// One of: processing, redacted, or validated.
+ ///
+ [JsonProperty("status")]
+ [STJS.JsonPropertyName("status")]
+ public string Status { get; set; }
+ }
+}
diff --git a/src/Stripe.net/Entities/Issuing/Authorizations/AuthorizationTokenDetailsNetworkDataDevice.cs b/src/Stripe.net/Entities/Issuing/Authorizations/AuthorizationTokenDetailsNetworkDataDevice.cs
index 8abdad7096..6465c7f107 100644
--- a/src/Stripe.net/Entities/Issuing/Authorizations/AuthorizationTokenDetailsNetworkDataDevice.cs
+++ b/src/Stripe.net/Entities/Issuing/Authorizations/AuthorizationTokenDetailsNetworkDataDevice.cs
@@ -8,6 +8,13 @@ namespace Stripe.Issuing
[STJS.JsonConverter(typeof(STJStripeEntityConverter))]
public class AuthorizationTokenDetailsNetworkDataDevice : StripeEntity
{
+ ///
+ /// An identifier for the device used during wallet provisioning.
+ ///
+ [JsonProperty("device_id")]
+ [STJS.JsonPropertyName("device_id")]
+ public string DeviceId { get; set; }
+
///
/// The IP address of the device at provisioning time.
///
diff --git a/src/Stripe.net/Entities/Issuing/Cardholders/Cardholder.cs b/src/Stripe.net/Entities/Issuing/Cardholders/Cardholder.cs
index 323f00cc5a..e6fafbac29 100644
--- a/src/Stripe.net/Entities/Issuing/Cardholders/Cardholder.cs
+++ b/src/Stripe.net/Entities/Issuing/Cardholders/Cardholder.cs
@@ -113,6 +113,14 @@ public class Cardholder : StripeEntity, IHasId, IHasMetadata, IHasOb
[STJS.JsonPropertyName("preferred_locales")]
public List PreferredLocales { get; set; }
+ ///
+ /// Redaction status of this cardholder. If the cardholder is not redacted, this field will
+ /// be null.
+ ///
+ [JsonProperty("redaction")]
+ [STJS.JsonPropertyName("redaction")]
+ public CardholderRedaction Redaction { get; set; }
+
[JsonProperty("requirements")]
[STJS.JsonPropertyName("requirements")]
public CardholderRequirements Requirements { get; set; }
diff --git a/src/Stripe.net/Entities/Issuing/Cardholders/CardholderRedaction.cs b/src/Stripe.net/Entities/Issuing/Cardholders/CardholderRedaction.cs
new file mode 100644
index 0000000000..29b6cc6a08
--- /dev/null
+++ b/src/Stripe.net/Entities/Issuing/Cardholders/CardholderRedaction.cs
@@ -0,0 +1,19 @@
+// 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 CardholderRedaction : StripeEntity
+ {
+ ///
+ /// Indicates whether this object and its related objects have been redacted or not.
+ /// One of: processing, redacted, or validated.
+ ///
+ [JsonProperty("status")]
+ [STJS.JsonPropertyName("status")]
+ public string Status { get; set; }
+ }
+}
diff --git a/src/Stripe.net/Entities/Issuing/Cards/Card.cs b/src/Stripe.net/Entities/Issuing/Cards/Card.cs
index 284f5e4aa7..086bfcf4cd 100644
--- a/src/Stripe.net/Entities/Issuing/Cards/Card.cs
+++ b/src/Stripe.net/Entities/Issuing/Cards/Card.cs
@@ -194,6 +194,20 @@ public PersonalizationDesign PersonalizationDesign
internal ExpandableField InternalPersonalizationDesign { get; set; }
#endregion
+ ///
+ /// The program that this card belongs to — will not be nil.
+ ///
+ [JsonProperty("program")]
+ [STJS.JsonPropertyName("program")]
+ public string Program { get; set; }
+
+ ///
+ /// Redaction status of this card. If not null, this card is associated to a redaction job.
+ ///
+ [JsonProperty("redaction")]
+ [STJS.JsonPropertyName("redaction")]
+ public CardRedaction Redaction { get; set; }
+
#region Expandable ReplacedBy
///
diff --git a/src/Stripe.net/Entities/Issuing/Cards/CardRedaction.cs b/src/Stripe.net/Entities/Issuing/Cards/CardRedaction.cs
new file mode 100644
index 0000000000..90e09c3706
--- /dev/null
+++ b/src/Stripe.net/Entities/Issuing/Cards/CardRedaction.cs
@@ -0,0 +1,19 @@
+// 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 CardRedaction : StripeEntity
+ {
+ ///
+ /// Indicates whether this object and its related objects have been redacted or not.
+ /// One of: processing, redacted, or validated.
+ ///
+ [JsonProperty("status")]
+ [STJS.JsonPropertyName("status")]
+ public string Status { get; set; }
+ }
+}
diff --git a/src/Stripe.net/Entities/Issuing/Disputes/Dispute.cs b/src/Stripe.net/Entities/Issuing/Disputes/Dispute.cs
index 36a8e9310a..bf6daad7f3 100644
--- a/src/Stripe.net/Entities/Issuing/Disputes/Dispute.cs
+++ b/src/Stripe.net/Entities/Issuing/Disputes/Dispute.cs
@@ -130,6 +130,14 @@ public class Dispute : StripeEntity, IHasId, IHasMetadata, IHasObject,
[STJS.JsonPropertyName("provisional_credit")]
public DisputeProvisionalCredit ProvisionalCredit { get; set; }
+ ///
+ /// Redaction status of this dispute. If the dispute is not redacted, this field will be
+ /// null.
+ ///
+ [JsonProperty("redaction")]
+ [STJS.JsonPropertyName("redaction")]
+ public DisputeRedaction Redaction { get; set; }
+
///
/// Current status of the dispute.
/// One of: expired, lost, submitted, unsubmitted, or
diff --git a/src/Stripe.net/Entities/Issuing/Disputes/DisputeRedaction.cs b/src/Stripe.net/Entities/Issuing/Disputes/DisputeRedaction.cs
new file mode 100644
index 0000000000..22cf5ea2d2
--- /dev/null
+++ b/src/Stripe.net/Entities/Issuing/Disputes/DisputeRedaction.cs
@@ -0,0 +1,19 @@
+// 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 DisputeRedaction : StripeEntity
+ {
+ ///
+ /// Indicates whether this object and its related objects have been redacted or not.
+ /// One of: processing, redacted, or validated.
+ ///
+ [JsonProperty("status")]
+ [STJS.JsonPropertyName("status")]
+ public string Status { get; set; }
+ }
+}
diff --git a/src/Stripe.net/Entities/Issuing/Tokens/TokenNetworkDataDevice.cs b/src/Stripe.net/Entities/Issuing/Tokens/TokenNetworkDataDevice.cs
index 97acf4c320..16861a543e 100644
--- a/src/Stripe.net/Entities/Issuing/Tokens/TokenNetworkDataDevice.cs
+++ b/src/Stripe.net/Entities/Issuing/Tokens/TokenNetworkDataDevice.cs
@@ -15,6 +15,13 @@ public class TokenNetworkDataDevice : StripeEntity
[STJS.JsonPropertyName("device_fingerprint")]
public string DeviceFingerprint { get; set; }
+ ///
+ /// An identifier for the device used during wallet provisioning.
+ ///
+ [JsonProperty("device_id")]
+ [STJS.JsonPropertyName("device_id")]
+ public string DeviceId { get; set; }
+
///
/// The IP address of the device at provisioning time.
///
diff --git a/src/Stripe.net/Entities/Issuing/Transactions/Transaction.cs b/src/Stripe.net/Entities/Issuing/Transactions/Transaction.cs
index c0de5c1cdf..61c18e1a2c 100644
--- a/src/Stripe.net/Entities/Issuing/Transactions/Transaction.cs
+++ b/src/Stripe.net/Entities/Issuing/Transactions/Transaction.cs
@@ -270,6 +270,15 @@ public Dispute Dispute
[STJS.JsonPropertyName("merchant_amount")]
public long MerchantAmount { get; set; }
+ ///
+ /// The exchange rate used by the network to convert the merchant_amount to
+ /// amount. The merchant_amount multiplied with this rate will equal to the
+ /// amount.
+ ///
+ [JsonProperty("merchant_amount_exchange_rate")]
+ [STJS.JsonPropertyName("merchant_amount_exchange_rate")]
+ public decimal? MerchantAmountExchangeRate { get; set; }
+
///
/// The currency with which the merchant is taking payment.
///
@@ -304,6 +313,14 @@ public Dispute Dispute
[STJS.JsonPropertyName("purchase_details")]
public TransactionPurchaseDetails PurchaseDetails { get; set; }
+ ///
+ /// Redaction status of this transaction. If the transaction is not redacted, this field
+ /// will be null.
+ ///
+ [JsonProperty("redaction")]
+ [STJS.JsonPropertyName("redaction")]
+ public TransactionRedaction Redaction { get; set; }
+
#region Expandable Settlement
///
diff --git a/src/Stripe.net/Entities/Issuing/Transactions/TransactionRedaction.cs b/src/Stripe.net/Entities/Issuing/Transactions/TransactionRedaction.cs
new file mode 100644
index 0000000000..3520640c6c
--- /dev/null
+++ b/src/Stripe.net/Entities/Issuing/Transactions/TransactionRedaction.cs
@@ -0,0 +1,19 @@
+// 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 TransactionRedaction : StripeEntity
+ {
+ ///
+ /// Indicates whether this object and its related objects have been redacted or not.
+ /// One of: processing, redacted, or validated.
+ ///
+ [JsonProperty("status")]
+ [STJS.JsonPropertyName("status")]
+ public string Status { get; set; }
+ }
+}
diff --git a/src/Stripe.net/Entities/Orders/OrderPaymentSettingsPaymentMethodOptionsWechatPay.cs b/src/Stripe.net/Entities/Orders/OrderPaymentSettingsPaymentMethodOptionsWechatPay.cs
index 8137903f1e..d23d0b9123 100644
--- a/src/Stripe.net/Entities/Orders/OrderPaymentSettingsPaymentMethodOptionsWechatPay.cs
+++ b/src/Stripe.net/Entities/Orders/OrderPaymentSettingsPaymentMethodOptionsWechatPay.cs
@@ -9,7 +9,8 @@ namespace Stripe
public class OrderPaymentSettingsPaymentMethodOptionsWechatPay : StripeEntity
{
///
- /// The app ID registered with WeChat Pay. Only required when client is ios or android.
+ /// The app ID registered with WeChat Pay. Only required when client is ios, android, or
+ /// mini_program.
///
[JsonProperty("app_id")]
[STJS.JsonPropertyName("app_id")]
diff --git a/src/Stripe.net/Entities/PaymentAttemptRecords/PaymentAttemptRecordPaymentMethodDetailsBizum.cs b/src/Stripe.net/Entities/PaymentAttemptRecords/PaymentAttemptRecordPaymentMethodDetailsBizum.cs
index 727fe3a66b..4adfc21b9c 100644
--- a/src/Stripe.net/Entities/PaymentAttemptRecords/PaymentAttemptRecordPaymentMethodDetailsBizum.cs
+++ b/src/Stripe.net/Entities/PaymentAttemptRecords/PaymentAttemptRecordPaymentMethodDetailsBizum.cs
@@ -8,6 +8,13 @@ namespace Stripe
[STJS.JsonConverter(typeof(STJStripeEntityConverter))]
public class PaymentAttemptRecordPaymentMethodDetailsBizum : StripeEntity
{
+ ///
+ /// A unique identifier for the buyer as determined by the local payment processor.
+ ///
+ [JsonProperty("buyer_id")]
+ [STJS.JsonPropertyName("buyer_id")]
+ public string BuyerId { get; set; }
+
///
/// The Bizum transaction ID associated with this payment.
///
diff --git a/src/Stripe.net/Entities/PaymentAttemptRecords/PaymentAttemptRecordPaymentMethodDetailsCard.cs b/src/Stripe.net/Entities/PaymentAttemptRecords/PaymentAttemptRecordPaymentMethodDetailsCard.cs
index 879f8bfb11..458d3225bf 100644
--- a/src/Stripe.net/Entities/PaymentAttemptRecords/PaymentAttemptRecordPaymentMethodDetailsCard.cs
+++ b/src/Stripe.net/Entities/PaymentAttemptRecords/PaymentAttemptRecordPaymentMethodDetailsCard.cs
@@ -176,15 +176,6 @@ public class PaymentAttemptRecordPaymentMethodDetailsCard : StripeEntity
- /// The transaction type that was passed for an off-session, Merchant-Initiated transaction,
- /// one of recurring or unscheduled.
- /// One of: recurring, or unscheduled.
- ///
- [JsonProperty("stored_credential_usage")]
- [STJS.JsonPropertyName("stored_credential_usage")]
- public string StoredCredentialUsage { get; set; }
-
///
/// Populated if this transaction used 3D Secure authentication.
///
diff --git a/src/Stripe.net/Entities/PaymentAttemptRecords/PaymentAttemptRecordPaymentMethodDetailsCrypto.cs b/src/Stripe.net/Entities/PaymentAttemptRecords/PaymentAttemptRecordPaymentMethodDetailsCrypto.cs
index e7a918d8a4..2f5be13c03 100644
--- a/src/Stripe.net/Entities/PaymentAttemptRecords/PaymentAttemptRecordPaymentMethodDetailsCrypto.cs
+++ b/src/Stripe.net/Entities/PaymentAttemptRecords/PaymentAttemptRecordPaymentMethodDetailsCrypto.cs
@@ -8,6 +8,20 @@ namespace Stripe
[STJS.JsonConverter(typeof(STJStripeEntityConverter))]
public class PaymentAttemptRecordPaymentMethodDetailsCrypto : StripeEntity
{
+ ///
+ /// The amount received for the crypto payment.
+ ///
+ [JsonProperty("amount_received")]
+ [STJS.JsonPropertyName("amount_received")]
+ public long AmountReceived { get; set; }
+
+ ///
+ /// The amount requested for the crypto payment.
+ ///
+ [JsonProperty("amount_requested")]
+ [STJS.JsonPropertyName("amount_requested")]
+ public long AmountRequested { get; set; }
+
///
/// The wallet address of the customer.
///
@@ -17,7 +31,8 @@ public class PaymentAttemptRecordPaymentMethodDetailsCrypto : StripeEntity
/// The blockchain network that the transaction was sent on.
- /// One of: base, ethereum, polygon, solana, or tempo.
+ /// One of: base, ethereum, polygon, solana, sui, or
+ /// tempo.
///
[JsonProperty("network")]
[STJS.JsonPropertyName("network")]
@@ -25,7 +40,8 @@ public class PaymentAttemptRecordPaymentMethodDetailsCrypto : StripeEntity
/// The token currency that the transaction was sent with.
- /// One of: phantom_cash, usdc, usdg, usdp, or usdt.
+ /// One of: phantom_cash, usdc, usdg, usdp, usdsui, or
+ /// usdt.
///
[JsonProperty("token_currency")]
[STJS.JsonPropertyName("token_currency")]
diff --git a/src/Stripe.net/Entities/PaymentAttemptRecords/PaymentAttemptRecordPaymentMethodDetailsGiftCard.cs b/src/Stripe.net/Entities/PaymentAttemptRecords/PaymentAttemptRecordPaymentMethodDetailsGiftCard.cs
index 46669ea4b2..3969556e79 100644
--- a/src/Stripe.net/Entities/PaymentAttemptRecords/PaymentAttemptRecordPaymentMethodDetailsGiftCard.cs
+++ b/src/Stripe.net/Entities/PaymentAttemptRecords/PaymentAttemptRecordPaymentMethodDetailsGiftCard.cs
@@ -37,6 +37,14 @@ public class PaymentAttemptRecordPaymentMethodDetailsGiftCard : StripeEntity
+ /// Uniquely identifies this particular gift card number. You can use this attribute to
+ /// check whether two transactions were made using the same gift card.
+ ///
+ [JsonProperty("fingerprint")]
+ [STJS.JsonPropertyName("fingerprint")]
+ public string Fingerprint { get; set; }
+
///
/// The first six digits of the gift card number.
///
diff --git a/src/Stripe.net/Entities/PaymentIntents/PaymentIntent.cs b/src/Stripe.net/Entities/PaymentIntents/PaymentIntent.cs
index cdc8775d45..c47cea1463 100644
--- a/src/Stripe.net/Entities/PaymentIntents/PaymentIntent.cs
+++ b/src/Stripe.net/Entities/PaymentIntents/PaymentIntent.cs
@@ -606,6 +606,14 @@ public PaymentRecord PaymentRecord
[STJS.JsonPropertyName("receipt_email")]
public string ReceiptEmail { get; set; }
+ ///
+ /// Redaction status of this PaymentIntent. If the PaymentIntent isn't redacted, this field
+ /// is null.
+ ///
+ [JsonProperty("redaction")]
+ [STJS.JsonPropertyName("redaction")]
+ public PaymentIntentRedaction Redaction { get; set; }
+
#region Expandable Review
///
diff --git a/src/Stripe.net/Entities/PaymentIntents/PaymentIntentPaymentMethodOptions.cs b/src/Stripe.net/Entities/PaymentIntents/PaymentIntentPaymentMethodOptions.cs
index 25002fcbd7..506aebea90 100644
--- a/src/Stripe.net/Entities/PaymentIntents/PaymentIntentPaymentMethodOptions.cs
+++ b/src/Stripe.net/Entities/PaymentIntents/PaymentIntentPaymentMethodOptions.cs
@@ -236,6 +236,10 @@ public class PaymentIntentPaymentMethodOptions : StripeEntity
{
+ [JsonProperty("amount_reconciliation")]
+ [STJS.JsonPropertyName("amount_reconciliation")]
+ public PaymentIntentPaymentMethodOptionsCryptoAmountReconciliation AmountReconciliation { get; set; }
+
[JsonProperty("deposit_options")]
[STJS.JsonPropertyName("deposit_options")]
public PaymentIntentPaymentMethodOptionsCryptoDepositOptions DepositOptions { get; set; }
diff --git a/src/Stripe.net/Entities/PaymentIntents/PaymentIntentPaymentMethodOptionsCryptoAmountReconciliation.cs b/src/Stripe.net/Entities/PaymentIntents/PaymentIntentPaymentMethodOptionsCryptoAmountReconciliation.cs
new file mode 100644
index 0000000000..54c23d2f3f
--- /dev/null
+++ b/src/Stripe.net/Entities/PaymentIntents/PaymentIntentPaymentMethodOptionsCryptoAmountReconciliation.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(STJStripeEntityConverter))]
+ public class PaymentIntentPaymentMethodOptionsCryptoAmountReconciliation : StripeEntity
+ {
+ ///
+ /// Controls how crypto funding amounts are reconciled for the PaymentIntent.
+ /// One of: accept_partial_funding, or exact.
+ ///
+ [JsonProperty("type")]
+ [STJS.JsonPropertyName("type")]
+ public string Type { get; set; }
+ }
+}
diff --git a/src/Stripe.net/Entities/PaymentIntents/PaymentIntentPaymentMethodOptionsSatispay.cs b/src/Stripe.net/Entities/PaymentIntents/PaymentIntentPaymentMethodOptionsSatispay.cs
index 22b31b6fda..2f5023893a 100644
--- a/src/Stripe.net/Entities/PaymentIntents/PaymentIntentPaymentMethodOptionsSatispay.cs
+++ b/src/Stripe.net/Entities/PaymentIntents/PaymentIntentPaymentMethodOptionsSatispay.cs
@@ -14,5 +14,30 @@ public class PaymentIntentPaymentMethodOptionsSatispay : 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: 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/PaymentIntents/PaymentIntentPaymentMethodOptionsSunbit.cs b/src/Stripe.net/Entities/PaymentIntents/PaymentIntentPaymentMethodOptionsSunbit.cs
new file mode 100644
index 0000000000..5a4605ca1f
--- /dev/null
+++ b/src/Stripe.net/Entities/PaymentIntents/PaymentIntentPaymentMethodOptionsSunbit.cs
@@ -0,0 +1,42 @@
+// 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 PaymentIntentPaymentMethodOptionsSunbit : StripeEntity
+ {
+ ///
+ /// Controls when the funds will be captured from the customer's account.
+ ///
+ [JsonProperty("capture_method")]
+ [STJS.JsonPropertyName("capture_method")]
+ public string CaptureMethod { 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.
+ ///
+ [JsonProperty("setup_future_usage")]
+ [STJS.JsonPropertyName("setup_future_usage")]
+ public string SetupFutureUsage { get; set; }
+ }
+}
diff --git a/src/Stripe.net/Entities/PaymentIntents/PaymentIntentPaymentMethodOptionsWechatPay.cs b/src/Stripe.net/Entities/PaymentIntents/PaymentIntentPaymentMethodOptionsWechatPay.cs
index 1fd3888999..618955e601 100644
--- a/src/Stripe.net/Entities/PaymentIntents/PaymentIntentPaymentMethodOptionsWechatPay.cs
+++ b/src/Stripe.net/Entities/PaymentIntents/PaymentIntentPaymentMethodOptionsWechatPay.cs
@@ -9,7 +9,8 @@ namespace Stripe
public class PaymentIntentPaymentMethodOptionsWechatPay : StripeEntity
{
///
- /// The app ID registered with WeChat Pay. Only required when client is ios or android.
+ /// The app ID registered with WeChat Pay. Only required when client is ios, android, or
+ /// mini_program.
///
[JsonProperty("app_id")]
[STJS.JsonPropertyName("app_id")]
diff --git a/src/Stripe.net/Entities/PaymentIntents/PaymentIntentRedaction.cs b/src/Stripe.net/Entities/PaymentIntents/PaymentIntentRedaction.cs
new file mode 100644
index 0000000000..f312d21d97
--- /dev/null
+++ b/src/Stripe.net/Entities/PaymentIntents/PaymentIntentRedaction.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(STJStripeEntityConverter))]
+ public class PaymentIntentRedaction : StripeEntity
+ {
+ ///
+ /// Indicates whether this object and its related objects have been redacted or not.
+ /// One of: processing, redacted, or validated.
+ ///
+ [JsonProperty("status")]
+ [STJS.JsonPropertyName("status")]
+ public string Status { get; set; }
+ }
+}
diff --git a/src/Stripe.net/Entities/PaymentMethods/PaymentMethod.cs b/src/Stripe.net/Entities/PaymentMethods/PaymentMethod.cs
index 75ccb490a3..4034234547 100644
--- a/src/Stripe.net/Entities/PaymentMethods/PaymentMethod.cs
+++ b/src/Stripe.net/Entities/PaymentMethods/PaymentMethod.cs
@@ -333,6 +333,14 @@ public Customer Customer
[STJS.JsonPropertyName("rechnung")]
public PaymentMethodRechnung Rechnung { get; set; }
+ ///
+ /// Redaction status of this PaymentMethod. If the PaymentMethod is not redacted, this field
+ /// will be null.
+ ///
+ [JsonProperty("redaction")]
+ [STJS.JsonPropertyName("redaction")]
+ public PaymentMethodRedaction Redaction { get; set; }
+
[JsonProperty("revolut_pay")]
[STJS.JsonPropertyName("revolut_pay")]
public PaymentMethodRevolutPay RevolutPay { get; set; }
diff --git a/src/Stripe.net/Entities/PaymentMethods/PaymentMethodBizum.cs b/src/Stripe.net/Entities/PaymentMethods/PaymentMethodBizum.cs
index 285d8bedce..b5500d887b 100644
--- a/src/Stripe.net/Entities/PaymentMethods/PaymentMethodBizum.cs
+++ b/src/Stripe.net/Entities/PaymentMethods/PaymentMethodBizum.cs
@@ -8,5 +8,11 @@ namespace Stripe
[STJS.JsonConverter(typeof(STJStripeEntityConverter))]
public class PaymentMethodBizum : StripeEntity
{
+ ///
+ /// A unique identifier for the buyer as determined by the local payment processor.
+ ///
+ [JsonProperty("buyer_id")]
+ [STJS.JsonPropertyName("buyer_id")]
+ public string BuyerId { get; set; }
}
}
diff --git a/src/Stripe.net/Entities/PaymentMethods/PaymentMethodBlik.cs b/src/Stripe.net/Entities/PaymentMethods/PaymentMethodBlik.cs
index 2bf1ed91ad..1fa8c34375 100644
--- a/src/Stripe.net/Entities/PaymentMethods/PaymentMethodBlik.cs
+++ b/src/Stripe.net/Entities/PaymentMethods/PaymentMethodBlik.cs
@@ -8,5 +8,11 @@ namespace Stripe
[STJS.JsonConverter(typeof(STJStripeEntityConverter))]
public class PaymentMethodBlik : StripeEntity
{
+ ///
+ /// A unique and immutable identifier assigned by BLIK to every buyer.
+ ///
+ [JsonProperty("buyer_id")]
+ [STJS.JsonPropertyName("buyer_id")]
+ public string BuyerId { get; set; }
}
}
diff --git a/src/Stripe.net/Entities/PaymentMethods/PaymentMethodPix.cs b/src/Stripe.net/Entities/PaymentMethods/PaymentMethodPix.cs
index d876ec0578..858e3b3e15 100644
--- a/src/Stripe.net/Entities/PaymentMethods/PaymentMethodPix.cs
+++ b/src/Stripe.net/Entities/PaymentMethods/PaymentMethodPix.cs
@@ -8,5 +8,12 @@ namespace Stripe
[STJS.JsonConverter(typeof(STJStripeEntityConverter))]
public class PaymentMethodPix : StripeEntity
{
+ ///
+ /// Uniquely identifies this particular Pix account. You can use this attribute to check
+ /// whether two Pix accounts are the same.
+ ///
+ [JsonProperty("fingerprint")]
+ [STJS.JsonPropertyName("fingerprint")]
+ public string Fingerprint { get; set; }
}
}
diff --git a/src/Stripe.net/Entities/PaymentMethods/PaymentMethodRedaction.cs b/src/Stripe.net/Entities/PaymentMethods/PaymentMethodRedaction.cs
new file mode 100644
index 0000000000..66113e2d52
--- /dev/null
+++ b/src/Stripe.net/Entities/PaymentMethods/PaymentMethodRedaction.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(STJStripeEntityConverter))]
+ public class PaymentMethodRedaction : StripeEntity
+ {
+ ///
+ /// Indicates whether this object and its related objects have been redacted or not.
+ /// One of: processing, redacted, or validated.
+ ///
+ [JsonProperty("status")]
+ [STJS.JsonPropertyName("status")]
+ public string Status { get; set; }
+ }
+}
diff --git a/src/Stripe.net/Entities/PaymentRecords/PaymentRecordPaymentMethodDetailsBizum.cs b/src/Stripe.net/Entities/PaymentRecords/PaymentRecordPaymentMethodDetailsBizum.cs
index 8a7a6146ca..5ed8ca7965 100644
--- a/src/Stripe.net/Entities/PaymentRecords/PaymentRecordPaymentMethodDetailsBizum.cs
+++ b/src/Stripe.net/Entities/PaymentRecords/PaymentRecordPaymentMethodDetailsBizum.cs
@@ -8,6 +8,13 @@ namespace Stripe
[STJS.JsonConverter(typeof(STJStripeEntityConverter))]
public class PaymentRecordPaymentMethodDetailsBizum : StripeEntity
{
+ ///
+ /// A unique identifier for the buyer as determined by the local payment processor.
+ ///
+ [JsonProperty("buyer_id")]
+ [STJS.JsonPropertyName("buyer_id")]
+ public string BuyerId { get; set; }
+
///
/// The Bizum transaction ID associated with this payment.
///
diff --git a/src/Stripe.net/Entities/PaymentRecords/PaymentRecordPaymentMethodDetailsCard.cs b/src/Stripe.net/Entities/PaymentRecords/PaymentRecordPaymentMethodDetailsCard.cs
index 4aecb47e21..f90bbf2efb 100644
--- a/src/Stripe.net/Entities/PaymentRecords/PaymentRecordPaymentMethodDetailsCard.cs
+++ b/src/Stripe.net/Entities/PaymentRecords/PaymentRecordPaymentMethodDetailsCard.cs
@@ -176,15 +176,6 @@ public class PaymentRecordPaymentMethodDetailsCard : StripeEntity
- /// The transaction type that was passed for an off-session, Merchant-Initiated transaction,
- /// one of recurring or unscheduled.
- /// One of: recurring, or unscheduled.
- ///
- [JsonProperty("stored_credential_usage")]
- [STJS.JsonPropertyName("stored_credential_usage")]
- public string StoredCredentialUsage { get; set; }
-
///
/// Populated if this transaction used 3D Secure authentication.
///
diff --git a/src/Stripe.net/Entities/PaymentRecords/PaymentRecordPaymentMethodDetailsCrypto.cs b/src/Stripe.net/Entities/PaymentRecords/PaymentRecordPaymentMethodDetailsCrypto.cs
index 6acb605c15..c4869cb02b 100644
--- a/src/Stripe.net/Entities/PaymentRecords/PaymentRecordPaymentMethodDetailsCrypto.cs
+++ b/src/Stripe.net/Entities/PaymentRecords/PaymentRecordPaymentMethodDetailsCrypto.cs
@@ -8,6 +8,20 @@ namespace Stripe
[STJS.JsonConverter(typeof(STJStripeEntityConverter))]
public class PaymentRecordPaymentMethodDetailsCrypto : StripeEntity
{
+ ///
+ /// The amount received for the crypto payment.
+ ///
+ [JsonProperty("amount_received")]
+ [STJS.JsonPropertyName("amount_received")]
+ public long AmountReceived { get; set; }
+
+ ///
+ /// The amount requested for the crypto payment.
+ ///
+ [JsonProperty("amount_requested")]
+ [STJS.JsonPropertyName("amount_requested")]
+ public long AmountRequested { get; set; }
+
///
/// The wallet address of the customer.
///
@@ -17,7 +31,8 @@ public class PaymentRecordPaymentMethodDetailsCrypto : StripeEntity
/// The blockchain network that the transaction was sent on.
- /// One of: base, ethereum, polygon, solana, or tempo.
+ /// One of: base, ethereum, polygon, solana, sui, or
+ /// tempo.
///
[JsonProperty("network")]
[STJS.JsonPropertyName("network")]
@@ -25,7 +40,8 @@ public class PaymentRecordPaymentMethodDetailsCrypto : StripeEntity
/// The token currency that the transaction was sent with.
- /// One of: phantom_cash, usdc, usdg, usdp, or usdt.
+ /// One of: phantom_cash, usdc, usdg, usdp, usdsui, or
+ /// usdt.
///
[JsonProperty("token_currency")]
[STJS.JsonPropertyName("token_currency")]
diff --git a/src/Stripe.net/Entities/PaymentRecords/PaymentRecordPaymentMethodDetailsGiftCard.cs b/src/Stripe.net/Entities/PaymentRecords/PaymentRecordPaymentMethodDetailsGiftCard.cs
index 173777a03b..e8826d36c0 100644
--- a/src/Stripe.net/Entities/PaymentRecords/PaymentRecordPaymentMethodDetailsGiftCard.cs
+++ b/src/Stripe.net/Entities/PaymentRecords/PaymentRecordPaymentMethodDetailsGiftCard.cs
@@ -37,6 +37,14 @@ public class PaymentRecordPaymentMethodDetailsGiftCard : StripeEntity
+ /// Uniquely identifies this particular gift card number. You can use this attribute to
+ /// check whether two transactions were made using the same gift card.
+ ///
+ [JsonProperty("fingerprint")]
+ [STJS.JsonPropertyName("fingerprint")]
+ public string Fingerprint { get; set; }
+
///
/// The first six digits of the gift card number.
///
diff --git a/src/Stripe.net/Entities/QuotePreviewInvoices/QuotePreviewInvoicePaymentSettings.cs b/src/Stripe.net/Entities/QuotePreviewInvoices/QuotePreviewInvoicePaymentSettings.cs
index df16a1094f..5ae23e1cd6 100644
--- a/src/Stripe.net/Entities/QuotePreviewInvoices/QuotePreviewInvoicePaymentSettings.cs
+++ b/src/Stripe.net/Entities/QuotePreviewInvoices/QuotePreviewInvoicePaymentSettings.cs
@@ -41,8 +41,9 @@ public class QuotePreviewInvoicePaymentSettings : StripeEntitykr_card, link, momo, multibanco, naver_pay,
/// nz_bank_account, p24, pay_by_bank, payco, paynow,
/// paypal, payto, pix, promptpay, revolut_pay,
- /// sepa_credit_transfer, sepa_debit, sofort, stripe_balance,
- /// swish, twint, upi, us_bank_account, or wechat_pay.
+ /// satispay, sepa_credit_transfer, sepa_debit, sofort,
+ /// stripe_balance, swish, twint, upi, us_bank_account,
+ /// or wechat_pay.
///
[JsonProperty("payment_method_types")]
[STJS.JsonPropertyName("payment_method_types")]
diff --git a/src/Stripe.net/Entities/Reserve/Holds/Hold.cs b/src/Stripe.net/Entities/Reserve/Holds/Hold.cs
index fe58e86c74..54758b2f9a 100644
--- a/src/Stripe.net/Entities/Reserve/Holds/Hold.cs
+++ b/src/Stripe.net/Entities/Reserve/Holds/Hold.cs
@@ -102,6 +102,13 @@ public class Hold : StripeEntity, IHasId, IHasMetadata, IHasObject
[STJS.JsonPropertyName("reason")]
public string Reason { get; set; }
+ ///
+ /// List of ReserveReleases and the amounts released from this ReserveHold.
+ ///
+ [JsonProperty("release_details")]
+ [STJS.JsonPropertyName("release_details")]
+ public List ReleaseDetails { get; set; }
+
[JsonProperty("release_schedule")]
[STJS.JsonPropertyName("release_schedule")]
public HoldReleaseSchedule ReleaseSchedule { get; set; }
diff --git a/src/Stripe.net/Entities/Reserve/Holds/HoldReleaseDetail.cs b/src/Stripe.net/Entities/Reserve/Holds/HoldReleaseDetail.cs
new file mode 100644
index 0000000000..6bcf26de98
--- /dev/null
+++ b/src/Stripe.net/Entities/Reserve/Holds/HoldReleaseDetail.cs
@@ -0,0 +1,27 @@
+// File generated from our OpenAPI spec
+namespace Stripe.Reserve
+{
+ using Newtonsoft.Json;
+ using Stripe.Infrastructure;
+ using STJS = System.Text.Json.Serialization;
+
+ [STJS.JsonConverter(typeof(STJStripeEntityConverter))]
+ public class HoldReleaseDetail : StripeEntity
+ {
+ ///
+ /// The amount released by the ReserveRelease from this ReserveHold. A positive integer
+ /// representing how much is released in the smallest currency unit.
+ ///
+ [JsonProperty("amount")]
+ [STJS.JsonPropertyName("amount")]
+ public long Amount { get; set; }
+
+ ///
+ /// The ReserveRelease which released funds from this ReserveHold (e.g., resrel_123).
+ ///
+ [JsonProperty("reserve_release")]
+ [STJS.JsonPropertyName("reserve_release")]
+ public string ReserveRelease { get; set; }
+ }
+}
diff --git a/src/Stripe.net/Entities/SetupAttempts/SetupAttemptPaymentMethodDetails.cs b/src/Stripe.net/Entities/SetupAttempts/SetupAttemptPaymentMethodDetails.cs
index d2f88cbf28..862a50ed50 100644
--- a/src/Stripe.net/Entities/SetupAttempts/SetupAttemptPaymentMethodDetails.cs
+++ b/src/Stripe.net/Entities/SetupAttempts/SetupAttemptPaymentMethodDetails.cs
@@ -92,6 +92,10 @@ public class SetupAttemptPaymentMethodDetails : StripeEntity
{
+ ///
+ /// Uniquely identifies this particular Pix account. You can use this attribute to check
+ /// whether two Pix accounts are the same.
+ ///
+ [JsonProperty("fingerprint")]
+ [STJS.JsonPropertyName("fingerprint")]
+ public string Fingerprint { get; set; }
}
}
diff --git a/src/Stripe.net/Entities/GiftCardOperations/GiftCardOperationDeactivation.cs b/src/Stripe.net/Entities/SetupAttempts/SetupAttemptPaymentMethodDetailsSatispay.cs
similarity index 67%
rename from src/Stripe.net/Entities/GiftCardOperations/GiftCardOperationDeactivation.cs
rename to src/Stripe.net/Entities/SetupAttempts/SetupAttemptPaymentMethodDetailsSatispay.cs
index d212968d6b..22217fd27a 100644
--- a/src/Stripe.net/Entities/GiftCardOperations/GiftCardOperationDeactivation.cs
+++ b/src/Stripe.net/Entities/SetupAttempts/SetupAttemptPaymentMethodDetailsSatispay.cs
@@ -6,7 +6,7 @@ namespace Stripe
using STJS = System.Text.Json.Serialization;
[STJS.JsonConverter(typeof(STJStripeEntityConverter))]
- public class GiftCardOperationDeactivation : StripeEntity
+ public class SetupAttemptPaymentMethodDetailsSatispay : StripeEntity
{
}
}
diff --git a/src/Stripe.net/Entities/SetupIntents/SetupIntent.cs b/src/Stripe.net/Entities/SetupIntents/SetupIntent.cs
index 6990cd01b5..724c0a9fac 100644
--- a/src/Stripe.net/Entities/SetupIntents/SetupIntent.cs
+++ b/src/Stripe.net/Entities/SetupIntents/SetupIntent.cs
@@ -445,6 +445,14 @@ public PaymentMethod PaymentMethod
[STJS.JsonPropertyName("payment_method_types")]
public List PaymentMethodTypes { get; set; }
+ ///
+ /// Redaction status of this SetupIntent. If the SetupIntent isn't redacted, this field is
+ /// null.
+ ///
+ [JsonProperty("redaction")]
+ [STJS.JsonPropertyName("redaction")]
+ public SetupIntentRedaction Redaction { get; set; }
+
[JsonProperty("setup_details")]
[STJS.JsonPropertyName("setup_details")]
public SetupIntentSetupDetails SetupDetails { get; set; }
diff --git a/src/Stripe.net/Entities/SetupIntents/SetupIntentRedaction.cs b/src/Stripe.net/Entities/SetupIntents/SetupIntentRedaction.cs
new file mode 100644
index 0000000000..b22d507fee
--- /dev/null
+++ b/src/Stripe.net/Entities/SetupIntents/SetupIntentRedaction.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(STJStripeEntityConverter))]
+ public class SetupIntentRedaction : StripeEntity
+ {
+ ///
+ /// Indicates whether this object and its related objects have been redacted or not.
+ /// One of: processing, redacted, or validated.
+ ///
+ [JsonProperty("status")]
+ [STJS.JsonPropertyName("status")]
+ public string Status { get; set; }
+ }
+}
diff --git a/src/Stripe.net/Entities/SharedPayment/GrantedTokens/GrantedTokenPaymentMethodDetailsBizum.cs b/src/Stripe.net/Entities/SharedPayment/GrantedTokens/GrantedTokenPaymentMethodDetailsBizum.cs
index 3f48efe3cb..e71efd7e83 100644
--- a/src/Stripe.net/Entities/SharedPayment/GrantedTokens/GrantedTokenPaymentMethodDetailsBizum.cs
+++ b/src/Stripe.net/Entities/SharedPayment/GrantedTokens/GrantedTokenPaymentMethodDetailsBizum.cs
@@ -8,5 +8,11 @@ namespace Stripe.SharedPayment
[STJS.JsonConverter(typeof(STJStripeEntityConverter))]
public class GrantedTokenPaymentMethodDetailsBizum : StripeEntity
{
+ ///
+ /// A unique identifier for the buyer as determined by the local payment processor.
+ ///
+ [JsonProperty("buyer_id")]
+ [STJS.JsonPropertyName("buyer_id")]
+ public string BuyerId { get; set; }
}
}
diff --git a/src/Stripe.net/Entities/SharedPayment/GrantedTokens/GrantedTokenPaymentMethodDetailsBlik.cs b/src/Stripe.net/Entities/SharedPayment/GrantedTokens/GrantedTokenPaymentMethodDetailsBlik.cs
index a9a8e96623..3fcecf1faf 100644
--- a/src/Stripe.net/Entities/SharedPayment/GrantedTokens/GrantedTokenPaymentMethodDetailsBlik.cs
+++ b/src/Stripe.net/Entities/SharedPayment/GrantedTokens/GrantedTokenPaymentMethodDetailsBlik.cs
@@ -8,5 +8,11 @@ namespace Stripe.SharedPayment
[STJS.JsonConverter(typeof(STJStripeEntityConverter))]
public class GrantedTokenPaymentMethodDetailsBlik : StripeEntity
{
+ ///
+ /// A unique and immutable identifier assigned by BLIK to every buyer.
+ ///
+ [JsonProperty("buyer_id")]
+ [STJS.JsonPropertyName("buyer_id")]
+ public string BuyerId { get; set; }
}
}
diff --git a/src/Stripe.net/Entities/SharedPayment/GrantedTokens/GrantedTokenPaymentMethodDetailsPix.cs b/src/Stripe.net/Entities/SharedPayment/GrantedTokens/GrantedTokenPaymentMethodDetailsPix.cs
index ff3ad86bd7..c58e6056c5 100644
--- a/src/Stripe.net/Entities/SharedPayment/GrantedTokens/GrantedTokenPaymentMethodDetailsPix.cs
+++ b/src/Stripe.net/Entities/SharedPayment/GrantedTokens/GrantedTokenPaymentMethodDetailsPix.cs
@@ -8,5 +8,12 @@ namespace Stripe.SharedPayment
[STJS.JsonConverter(typeof(STJStripeEntityConverter))]
public class GrantedTokenPaymentMethodDetailsPix : StripeEntity
{
+ ///
+ /// Uniquely identifies this particular Pix account. You can use this attribute to check
+ /// whether two Pix accounts are the same.
+ ///
+ [JsonProperty("fingerprint")]
+ [STJS.JsonPropertyName("fingerprint")]
+ public string Fingerprint { get; set; }
}
}
diff --git a/src/Stripe.net/Entities/Sources/Source.cs b/src/Stripe.net/Entities/Sources/Source.cs
index 704333b728..1ca79ccc63 100644
--- a/src/Stripe.net/Entities/Sources/Source.cs
+++ b/src/Stripe.net/Entities/Sources/Source.cs
@@ -193,6 +193,14 @@ public class Source : StripeEntity, IHasId, IHasMetadata, IHasObject, IP
[STJS.JsonPropertyName("receiver")]
public SourceReceiver Receiver { get; set; }
+ ///
+ /// Redaction status of this source. If not null, this source is associated to a redaction
+ /// job.
+ ///
+ [JsonProperty("redaction")]
+ [STJS.JsonPropertyName("redaction")]
+ public SourceRedaction Redaction { get; set; }
+
[JsonProperty("redirect")]
[STJS.JsonPropertyName("redirect")]
public SourceRedirect Redirect { get; set; }
diff --git a/src/Stripe.net/Entities/Sources/SourceRedaction.cs b/src/Stripe.net/Entities/Sources/SourceRedaction.cs
new file mode 100644
index 0000000000..009f96419a
--- /dev/null
+++ b/src/Stripe.net/Entities/Sources/SourceRedaction.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(STJStripeEntityConverter))]
+ public class SourceRedaction : StripeEntity
+ {
+ ///
+ /// Indicates whether this object and its related objects have been redacted or not.
+ /// One of: processing, redacted, or validated.
+ ///
+ [JsonProperty("status")]
+ [STJS.JsonPropertyName("status")]
+ public string Status { get; set; }
+ }
+}
diff --git a/src/Stripe.net/Entities/Subscriptions/SubscriptionInvoiceSettings.cs b/src/Stripe.net/Entities/Subscriptions/SubscriptionInvoiceSettings.cs
index 0e2f34addb..f7ec351cb2 100644
--- a/src/Stripe.net/Entities/Subscriptions/SubscriptionInvoiceSettings.cs
+++ b/src/Stripe.net/Entities/Subscriptions/SubscriptionInvoiceSettings.cs
@@ -45,6 +45,27 @@ public List AccountTaxIds
internal List> InternalAccountTaxIds { get; set; }
#endregion
+ ///
+ /// A list of up to 4 custom fields to be displayed on the invoice.
+ ///
+ [JsonProperty("custom_fields")]
+ [STJS.JsonPropertyName("custom_fields")]
+ public List CustomFields { get; set; }
+
+ ///
+ /// An arbitrary string attached to the object. Often useful for displaying to users.
+ ///
+ [JsonProperty("description")]
+ [STJS.JsonPropertyName("description")]
+ public string Description { get; set; }
+
+ ///
+ /// Footer to be displayed on the invoice.
+ ///
+ [JsonProperty("footer")]
+ [STJS.JsonPropertyName("footer")]
+ public string Footer { get; set; }
+
[JsonProperty("issuer")]
[STJS.JsonPropertyName("issuer")]
public SubscriptionInvoiceSettingsIssuer Issuer { get; set; }
diff --git a/src/Stripe.net/Entities/Subscriptions/SubscriptionInvoiceSettingsCustomField.cs b/src/Stripe.net/Entities/Subscriptions/SubscriptionInvoiceSettingsCustomField.cs
new file mode 100644
index 0000000000..cb1e63c11c
--- /dev/null
+++ b/src/Stripe.net/Entities/Subscriptions/SubscriptionInvoiceSettingsCustomField.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(STJStripeEntityConverter))]
+ public class SubscriptionInvoiceSettingsCustomField : StripeEntity
+ {
+ ///
+ /// The name of the custom field.
+ ///
+ [JsonProperty("name")]
+ [STJS.JsonPropertyName("name")]
+ public string Name { get; set; }
+
+ ///
+ /// The value of the custom field.
+ ///
+ [JsonProperty("value")]
+ [STJS.JsonPropertyName("value")]
+ public string Value { get; set; }
+ }
+}
diff --git a/src/Stripe.net/Entities/Subscriptions/SubscriptionPaymentSettings.cs b/src/Stripe.net/Entities/Subscriptions/SubscriptionPaymentSettings.cs
index d737ab8fb7..54ac5af10e 100644
--- a/src/Stripe.net/Entities/Subscriptions/SubscriptionPaymentSettings.cs
+++ b/src/Stripe.net/Entities/Subscriptions/SubscriptionPaymentSettings.cs
@@ -33,8 +33,9 @@ public class SubscriptionPaymentSettings : StripeEntitykr_card, link, momo, multibanco, naver_pay,
/// nz_bank_account, p24, pay_by_bank, payco, paynow,
/// paypal, payto, pix, promptpay, revolut_pay,
- /// sepa_credit_transfer, sepa_debit, sofort, stripe_balance,
- /// swish, twint, upi, us_bank_account, or wechat_pay.
+ /// satispay, sepa_credit_transfer, sepa_debit, sofort,
+ /// stripe_balance, swish, twint, upi, us_bank_account,
+ /// or wechat_pay.
///
[JsonProperty("payment_method_types")]
[STJS.JsonPropertyName("payment_method_types")]
diff --git a/src/Stripe.net/Entities/TaxFunds/TaxFundContext.cs b/src/Stripe.net/Entities/TaxFunds/TaxFundContext.cs
index 5cf2c9e8ff..cd99d7ffe2 100644
--- a/src/Stripe.net/Entities/TaxFunds/TaxFundContext.cs
+++ b/src/Stripe.net/Entities/TaxFunds/TaxFundContext.cs
@@ -8,26 +8,44 @@ namespace Stripe
[STJS.JsonConverter(typeof(STJStripeEntityConverter))]
public class TaxFundContext : StripeEntity
{
+ ///
+ /// The Checkout Session associated with this sweep, if any.
+ ///
[JsonProperty("checkout_session")]
[STJS.JsonPropertyName("checkout_session")]
public string CheckoutSession { get; set; }
+ ///
+ /// The Credit Note associated with this sweep, if any.
+ ///
[JsonProperty("credit_note")]
[STJS.JsonPropertyName("credit_note")]
public string CreditNote { get; set; }
+ ///
+ /// The Invoice associated with this sweep, if any.
+ ///
[JsonProperty("invoice")]
[STJS.JsonPropertyName("invoice")]
public string Invoice { get; set; }
+ ///
+ /// The PaymentIntent associated with this sweep, if any.
+ ///
[JsonProperty("payment_intent")]
[STJS.JsonPropertyName("payment_intent")]
public string PaymentIntent { get; set; }
+ ///
+ /// The Refund associated with this sweep, if any.
+ ///
[JsonProperty("refund")]
[STJS.JsonPropertyName("refund")]
public string Refund { get; set; }
+ ///
+ /// The Tax Transaction associated with this sweep, if any.
+ ///
[JsonProperty("tax_transaction")]
[STJS.JsonPropertyName("tax_transaction")]
public string TaxTransaction { get; set; }
diff --git a/src/Stripe.net/Entities/TaxFunds/TaxFundDestination.cs b/src/Stripe.net/Entities/TaxFunds/TaxFundDestination.cs
index b5aa3e8127..02cf71e3b5 100644
--- a/src/Stripe.net/Entities/TaxFunds/TaxFundDestination.cs
+++ b/src/Stripe.net/Entities/TaxFunds/TaxFundDestination.cs
@@ -22,6 +22,10 @@ public class TaxFundDestination : StripeEntity
[STJS.JsonPropertyName("tax_fund_account")]
public TaxFundDestinationTaxFundAccount TaxFundAccount { get; set; }
+ ///
+ /// The type of account funds moved to or from. Either payments_balance or
+ /// tax_fund_account.
+ ///
[JsonProperty("type")]
[STJS.JsonPropertyName("type")]
public string Type { get; set; }
diff --git a/src/Stripe.net/Entities/TaxFunds/TaxFundDestinationPaymentsBalance.cs b/src/Stripe.net/Entities/TaxFunds/TaxFundDestinationPaymentsBalance.cs
index 8326aee640..8f4a21f684 100644
--- a/src/Stripe.net/Entities/TaxFunds/TaxFundDestinationPaymentsBalance.cs
+++ b/src/Stripe.net/Entities/TaxFunds/TaxFundDestinationPaymentsBalance.cs
@@ -10,6 +10,10 @@ public class TaxFundDestinationPaymentsBalance : StripeEntity
+ /// (ID of the BalanceTransaction)
+ /// The balance transaction on the payments balance side of the sweep.
+ ///
[JsonIgnore]
[STJS.JsonIgnore]
public string BalanceTransactionId
@@ -18,6 +22,12 @@ public string BalanceTransactionId
set => this.InternalBalanceTransaction = SetExpandableFieldId(value, this.InternalBalanceTransaction);
}
+ ///
+ /// (Expanded)
+ /// The balance transaction on the payments balance side of the sweep.
+ ///
+ /// For more information, see the expand documentation.
+ ///
[JsonIgnore]
[STJS.JsonIgnore]
public BalanceTransaction BalanceTransaction
diff --git a/src/Stripe.net/Entities/TaxFunds/TaxFundDestinationTaxFundAccount.cs b/src/Stripe.net/Entities/TaxFunds/TaxFundDestinationTaxFundAccount.cs
index 95693427ed..1d71222ef4 100644
--- a/src/Stripe.net/Entities/TaxFunds/TaxFundDestinationTaxFundAccount.cs
+++ b/src/Stripe.net/Entities/TaxFunds/TaxFundDestinationTaxFundAccount.cs
@@ -8,10 +8,16 @@ namespace Stripe
[STJS.JsonConverter(typeof(STJStripeEntityConverter))]
public class TaxFundDestinationTaxFundAccount : StripeEntity
{
+ ///
+ /// The tax fund financial account involved in the sweep.
+ ///
[JsonProperty("financial_account")]
[STJS.JsonPropertyName("financial_account")]
public string FinancialAccount { get; set; }
+ ///
+ /// The financial account transaction on the tax fund account side of the sweep.
+ ///
[JsonProperty("transaction")]
[STJS.JsonPropertyName("transaction")]
public string Transaction { get; set; }
diff --git a/src/Stripe.net/Entities/TaxFunds/TaxFundSource.cs b/src/Stripe.net/Entities/TaxFunds/TaxFundSource.cs
index 4044900dce..07df49b4e1 100644
--- a/src/Stripe.net/Entities/TaxFunds/TaxFundSource.cs
+++ b/src/Stripe.net/Entities/TaxFunds/TaxFundSource.cs
@@ -22,6 +22,10 @@ public class TaxFundSource : StripeEntity
[STJS.JsonPropertyName("tax_fund_account")]
public TaxFundSourceTaxFundAccount TaxFundAccount { get; set; }
+ ///
+ /// The type of account funds moved to or from. Either payments_balance or
+ /// tax_fund_account.
+ ///
[JsonProperty("type")]
[STJS.JsonPropertyName("type")]
public string Type { get; set; }
diff --git a/src/Stripe.net/Entities/TaxFunds/TaxFundSourcePaymentsBalance.cs b/src/Stripe.net/Entities/TaxFunds/TaxFundSourcePaymentsBalance.cs
index bc31791c9e..27c58aafb2 100644
--- a/src/Stripe.net/Entities/TaxFunds/TaxFundSourcePaymentsBalance.cs
+++ b/src/Stripe.net/Entities/TaxFunds/TaxFundSourcePaymentsBalance.cs
@@ -10,6 +10,10 @@ public class TaxFundSourcePaymentsBalance : StripeEntity
+ /// (ID of the BalanceTransaction)
+ /// The balance transaction on the payments balance side of the sweep.
+ ///
[JsonIgnore]
[STJS.JsonIgnore]
public string BalanceTransactionId
@@ -18,6 +22,12 @@ public string BalanceTransactionId
set => this.InternalBalanceTransaction = SetExpandableFieldId(value, this.InternalBalanceTransaction);
}
+ ///
+ /// (Expanded)
+ /// The balance transaction on the payments balance side of the sweep.
+ ///
+ /// For more information, see the expand documentation.
+ ///
[JsonIgnore]
[STJS.JsonIgnore]
public BalanceTransaction BalanceTransaction
diff --git a/src/Stripe.net/Entities/TaxFunds/TaxFundSourceTaxFundAccount.cs b/src/Stripe.net/Entities/TaxFunds/TaxFundSourceTaxFundAccount.cs
index 86a8fe37c8..5f8f9aa8cb 100644
--- a/src/Stripe.net/Entities/TaxFunds/TaxFundSourceTaxFundAccount.cs
+++ b/src/Stripe.net/Entities/TaxFunds/TaxFundSourceTaxFundAccount.cs
@@ -8,10 +8,16 @@ namespace Stripe
[STJS.JsonConverter(typeof(STJStripeEntityConverter))]
public class TaxFundSourceTaxFundAccount : StripeEntity
{
+ ///
+ /// The tax fund financial account involved in the sweep.
+ ///
[JsonProperty("financial_account")]
[STJS.JsonPropertyName("financial_account")]
public string FinancialAccount { get; set; }
+ ///
+ /// The financial account transaction on the tax fund account side of the sweep.
+ ///
[JsonProperty("transaction")]
[STJS.JsonPropertyName("transaction")]
public string Transaction { get; set; }
diff --git a/src/Stripe.net/Entities/TaxFunds/TaxFundTrigger.cs b/src/Stripe.net/Entities/TaxFunds/TaxFundTrigger.cs
index b213fec9b3..fd2e92036f 100644
--- a/src/Stripe.net/Entities/TaxFunds/TaxFundTrigger.cs
+++ b/src/Stripe.net/Entities/TaxFunds/TaxFundTrigger.cs
@@ -10,6 +10,10 @@ public class TaxFundTrigger : StripeEntity
{
#region Expandable BalanceTransaction
+ ///
+ /// (ID of the BalanceTransaction)
+ /// The balance transaction on the payments balance that triggered the sweep.
+ ///
[JsonIgnore]
[STJS.JsonIgnore]
public string BalanceTransactionId
@@ -18,6 +22,12 @@ public string BalanceTransactionId
set => this.InternalBalanceTransaction = SetExpandableFieldId(value, this.InternalBalanceTransaction);
}
+ ///
+ /// (Expanded)
+ /// The balance transaction on the payments balance that triggered the sweep.
+ ///
+ /// For more information, see the expand documentation.
+ ///
[JsonIgnore]
[STJS.JsonIgnore]
public BalanceTransaction BalanceTransaction
@@ -33,6 +43,9 @@ public BalanceTransaction BalanceTransaction
internal ExpandableField InternalBalanceTransaction { get; set; }
#endregion
+ ///
+ /// The type of event that triggered the sweep. Always balance_transaction.
+ ///
[JsonProperty("type")]
[STJS.JsonPropertyName("type")]
public string Type { get; set; }
diff --git a/src/Stripe.net/Entities/Tokens/Token.cs b/src/Stripe.net/Entities/Tokens/Token.cs
index 358cbbb1ca..b6d5fc22b9 100644
--- a/src/Stripe.net/Entities/Tokens/Token.cs
+++ b/src/Stripe.net/Entities/Tokens/Token.cs
@@ -93,6 +93,14 @@ public class Token : StripeEntity, IHasId, IHasObject
[STJS.JsonPropertyName("livemode")]
public bool Livemode { get; set; }
+ ///
+ /// Redaction status of this token. If not null, this token is associated to a redaction
+ /// job.
+ ///
+ [JsonProperty("redaction")]
+ [STJS.JsonPropertyName("redaction")]
+ public TokenRedaction Redaction { get; set; }
+
///
/// Type of the token: account, bank_account, card, or pii.
///
diff --git a/src/Stripe.net/Entities/Tokens/TokenRedaction.cs b/src/Stripe.net/Entities/Tokens/TokenRedaction.cs
new file mode 100644
index 0000000000..69d0084969
--- /dev/null
+++ b/src/Stripe.net/Entities/Tokens/TokenRedaction.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(STJStripeEntityConverter))]
+ public class TokenRedaction : StripeEntity
+ {
+ ///
+ /// Indicates whether this object and its related objects have been redacted or not.
+ /// One of: processing, redacted, or validated.
+ ///
+ [JsonProperty("status")]
+ [STJS.JsonPropertyName("status")]
+ public string Status { get; set; }
+ }
+}
diff --git a/src/Stripe.net/Entities/V2/Iam/ApiKeys/ApiKey.cs b/src/Stripe.net/Entities/V2/Iam/ApiKeys/ApiKey.cs
index 3086e1c8f8..a7c0516cc9 100644
--- a/src/Stripe.net/Entities/V2/Iam/ApiKeys/ApiKey.cs
+++ b/src/Stripe.net/Entities/V2/Iam/ApiKeys/ApiKey.cs
@@ -28,6 +28,13 @@ public class ApiKey : StripeEntity, IHasId, IHasObject
[STJS.JsonPropertyName("object")]
public string Object { get; set; }
+ ///
+ /// List of connect permissions for this API key.
+ ///
+ [JsonProperty("connect_permissions")]
+ [STJS.JsonPropertyName("connect_permissions")]
+ public List ConnectPermissions { get; set; }
+
///
/// Timestamp when the API key was created.
///
@@ -86,6 +93,13 @@ public class ApiKey : StripeEntity, IHasId, IHasObject
[STJS.JsonPropertyName("note")]
public string Note { get; set; }
+ ///
+ /// List of permissions for this API key.
+ ///
+ [JsonProperty("permissions")]
+ [STJS.JsonPropertyName("permissions")]
+ public List Permissions { get; set; }
+
///
/// Token set for a publishable key.
///
diff --git a/src/Stripe.net/Entities/V2/MoneyManagement/FinancialAccounts/FinancialAccount.cs b/src/Stripe.net/Entities/V2/MoneyManagement/FinancialAccounts/FinancialAccount.cs
index 3138214c86..da9597f8ee 100644
--- a/src/Stripe.net/Entities/V2/MoneyManagement/FinancialAccounts/FinancialAccount.cs
+++ b/src/Stripe.net/Entities/V2/MoneyManagement/FinancialAccounts/FinancialAccount.cs
@@ -61,6 +61,14 @@ public class FinancialAccount : StripeEntity, IHasId, IHasMeta
[STJS.JsonPropertyName("created")]
public DateTime Created { get; set; } = Stripe.Infrastructure.DateTimeUtils.UnixEpoch;
+ ///
+ /// If this is a credit FinancialAccount, this hash includes details specific to
+ /// credit FinancialAccounts.
+ ///
+ [JsonProperty("credit")]
+ [STJS.JsonPropertyName("credit")]
+ public FinancialAccountCredit Credit { get; set; }
+
///
/// A descriptive name for the FinancialAccount, up to 50 characters long. This name will be
/// used in the Stripe Dashboard and embedded components.
@@ -145,8 +153,8 @@ public class FinancialAccount : StripeEntity, IHasId, IHasMeta
/// Type of the FinancialAccount. An additional hash is included on the FinancialAccount
/// with a name matching this value. It contains additional information specific to the
/// FinancialAccount type.
- /// One of: accrued_fees, multiprocessor_settlement, other,
- /// payments, or storage.
+ /// One of: accrued_fees, credit, multiprocessor_settlement,
+ /// other, payments, or storage.
///
[JsonProperty("type")]
[STJS.JsonPropertyName("type")]
diff --git a/src/Stripe.net/Entities/V2/MoneyManagement/FinancialAccounts/FinancialAccountCredit.cs b/src/Stripe.net/Entities/V2/MoneyManagement/FinancialAccounts/FinancialAccountCredit.cs
new file mode 100644
index 0000000000..35d7e410f1
--- /dev/null
+++ b/src/Stripe.net/Entities/V2/MoneyManagement/FinancialAccounts/FinancialAccountCredit.cs
@@ -0,0 +1,26 @@
+// File generated from our OpenAPI spec
+namespace Stripe.V2.MoneyManagement
+{
+ using System.Collections.Generic;
+ using Newtonsoft.Json;
+ using Stripe.Infrastructure;
+ using STJS = System.Text.Json.Serialization;
+
+ [STJS.JsonConverter(typeof(STJStripeEntityConverter))]
+ public class FinancialAccountCredit : StripeEntity
+ {
+ ///
+ /// Details about how this credit FinancialAccount is funded.
+ ///
+ [JsonProperty("funded_by")]
+ [STJS.JsonPropertyName("funded_by")]
+ public FinancialAccountCreditFundedBy FundedBy { get; set; }
+
+ ///
+ /// The currencies supported by this credit FinancialAccount.
+ ///
+ [JsonProperty("supported_currencies")]
+ [STJS.JsonPropertyName("supported_currencies")]
+ public List SupportedCurrencies { get; set; }
+ }
+}
diff --git a/src/Stripe.net/Entities/V2/MoneyManagement/FinancialAccounts/FinancialAccountCreditFundedBy.cs b/src/Stripe.net/Entities/V2/MoneyManagement/FinancialAccounts/FinancialAccountCreditFundedBy.cs
new file mode 100644
index 0000000000..10431479df
--- /dev/null
+++ b/src/Stripe.net/Entities/V2/MoneyManagement/FinancialAccounts/FinancialAccountCreditFundedBy.cs
@@ -0,0 +1,26 @@
+// File generated from our OpenAPI spec
+namespace Stripe.V2.MoneyManagement
+{
+ using Newtonsoft.Json;
+ using Stripe.Infrastructure;
+ using STJS = System.Text.Json.Serialization;
+
+ [STJS.JsonConverter(typeof(STJStripeEntityConverter))]
+ public class FinancialAccountCreditFundedBy : StripeEntity
+ {
+ ///
+ /// Details for platform-funded credit FinancialAccounts.
+ ///
+ [JsonProperty("platform")]
+ [STJS.JsonPropertyName("platform")]
+ public FinancialAccountCreditFundedByPlatform Platform { get; set; }
+
+ ///
+ /// The type of funding source for this credit FinancialAccount.
+ /// One of: platform, or stripe.
+ ///
+ [JsonProperty("type")]
+ [STJS.JsonPropertyName("type")]
+ public string Type { get; set; }
+ }
+}
diff --git a/src/Stripe.net/Entities/V2/MoneyManagement/FinancialAccounts/FinancialAccountCreditFundedByPlatform.cs b/src/Stripe.net/Entities/V2/MoneyManagement/FinancialAccounts/FinancialAccountCreditFundedByPlatform.cs
new file mode 100644
index 0000000000..d72229515f
--- /dev/null
+++ b/src/Stripe.net/Entities/V2/MoneyManagement/FinancialAccounts/FinancialAccountCreditFundedByPlatform.cs
@@ -0,0 +1,18 @@
+// File generated from our OpenAPI spec
+namespace Stripe.V2.MoneyManagement
+{
+ using Newtonsoft.Json;
+ using Stripe.Infrastructure;
+ using STJS = System.Text.Json.Serialization;
+
+ [STJS.JsonConverter(typeof(STJStripeEntityConverter))]
+ public class FinancialAccountCreditFundedByPlatform : StripeEntity
+ {
+ ///
+ /// The platform FinancialAccount used to fund this credit FinancialAccount.
+ ///
+ [JsonProperty("financial_account")]
+ [STJS.JsonPropertyName("financial_account")]
+ public string FinancialAccount { get; set; }
+ }
+}
diff --git a/src/Stripe.net/Entities/V2/MoneyManagement/InboundTransfers/InboundTransfer.cs b/src/Stripe.net/Entities/V2/MoneyManagement/InboundTransfers/InboundTransfer.cs
index bb8c1eefc9..0c8d674a43 100644
--- a/src/Stripe.net/Entities/V2/MoneyManagement/InboundTransfers/InboundTransfer.cs
+++ b/src/Stripe.net/Entities/V2/MoneyManagement/InboundTransfers/InboundTransfer.cs
@@ -82,7 +82,8 @@ public class InboundTransfer : StripeEntity, IHasId, IHasObject
public InboundTransferTo To { get; set; }
///
- /// A list of history objects, representing changes in the state of the InboundTransfer.
+ /// A list of history objects, representing changes in the state of the InboundTransfer. The
+ /// most recent entry's type indicates the current status of the InboundTransfer.
///
[JsonProperty("transfer_history")]
[STJS.JsonPropertyName("transfer_history")]
diff --git a/src/Stripe.net/Entities/V2/MoneyManagement/PayoutIntents/PayoutIntentNextActionHandleFailure.cs b/src/Stripe.net/Entities/V2/MoneyManagement/PayoutIntents/PayoutIntentNextActionHandleFailure.cs
index 5e250b9573..0dd654fbde 100644
--- a/src/Stripe.net/Entities/V2/MoneyManagement/PayoutIntents/PayoutIntentNextActionHandleFailure.cs
+++ b/src/Stripe.net/Entities/V2/MoneyManagement/PayoutIntents/PayoutIntentNextActionHandleFailure.cs
@@ -11,7 +11,7 @@ public class PayoutIntentNextActionHandleFailure : StripeEntity
/// Open Enum. The reason for the failure.
/// One of: account_not_configured_as_recipient,
- /// currency_not_supported_for_financial_account_balance,
+ /// currency_not_supported_for_financial_account_balance, currency_required,
/// feature_not_active_for_recipient, fx_rate_drift_exceeded_after_review,
/// insufficient_funds, payout_method_account_type_incorrect,
/// payout_method_amount_limit_exceeded, payout_method_canceled_by_customer,
diff --git a/src/Stripe.net/Entities/V2/MoneyManagement/TransactionEntries/TransactionEntryTransactionDetails.cs b/src/Stripe.net/Entities/V2/MoneyManagement/TransactionEntries/TransactionEntryTransactionDetails.cs
index b0f2b53887..89b6658316 100644
--- a/src/Stripe.net/Entities/V2/MoneyManagement/TransactionEntries/TransactionEntryTransactionDetails.cs
+++ b/src/Stripe.net/Entities/V2/MoneyManagement/TransactionEntries/TransactionEntryTransactionDetails.cs
@@ -18,20 +18,20 @@ public class TransactionEntryTransactionDetails : StripeEntitydispute_reversal, financing_paydown, financing_paydown_reversal,
/// inbound_payment, inbound_payment_failure, inbound_transfer,
/// inbound_transfer_reversal, india_mdr_processing_fee,
- /// issuing_dispute, issuing_dispute_fraud_liability_debit,
- /// issuing_dispute_provisional_credit,
- /// issuing_dispute_provisional_credit_reversal, minimum_balance_hold,
- /// network_cost, obligation, outbound_payment,
- /// outbound_payment_reversal, outbound_transfer,
+ /// issuing_authorization, issuing_dispute,
+ /// issuing_dispute_fraud_liability_debit, issuing_dispute_provisional_credit,
+ /// issuing_dispute_provisional_credit_reversal, issuing_transaction,
+ /// minimum_balance_hold, network_cost, obligation,
+ /// outbound_payment, outbound_payment_reversal, outbound_transfer,
/// outbound_transfer_reversal, partial_capture_reversal,
/// payment_method_passthrough_fee, payment_network_reserved_funds,
/// platform_earning, platform_earning_refund, platform_fee,
- /// received_credit, received_credit_reversal, received_debit,
- /// received_debit_reversal, refund, refund_failure,
- /// risk_reserved_funds, stripe_balance_payment_debit,
- /// stripe_balance_payment_debit_reversal, stripe_fee, stripe_fee_tax,
- /// tax_fund, tax_withholding, transfer_reversal, or
- /// unreconciled_customer_funds.
+ /// platform_funded_credit_transaction, received_credit,
+ /// received_credit_reversal, received_debit, received_debit_reversal,
+ /// refund, refund_failure, risk_reserved_funds,
+ /// stripe_balance_payment_debit, stripe_balance_payment_debit_reversal,
+ /// stripe_fee, stripe_fee_tax, tax_fund, tax_withholding,
+ /// transfer_reversal, or unreconciled_customer_funds.
///
[JsonProperty("category")]
[STJS.JsonPropertyName("category")]
diff --git a/src/Stripe.net/Entities/V2/MoneyManagement/TransactionEntries/TransactionEntryTransactionDetailsFlow.cs b/src/Stripe.net/Entities/V2/MoneyManagement/TransactionEntries/TransactionEntryTransactionDetailsFlow.cs
index 3e482f75a3..61d6ac0442 100644
--- a/src/Stripe.net/Entities/V2/MoneyManagement/TransactionEntries/TransactionEntryTransactionDetailsFlow.cs
+++ b/src/Stripe.net/Entities/V2/MoneyManagement/TransactionEntries/TransactionEntryTransactionDetailsFlow.cs
@@ -8,6 +8,13 @@ namespace Stripe.V2.MoneyManagement
[STJS.JsonConverter(typeof(STJStripeEntityConverter))]
public class TransactionEntryTransactionDetailsFlow : StripeEntity
{
+ ///
+ /// If applicable, the connected account associated with this Transaction's flow.
+ ///
+ [JsonProperty("account")]
+ [STJS.JsonPropertyName("account")]
+ public string Account { get; set; }
+
///
/// If applicable, the ID of the Adjustment that created this Transaction.
///
@@ -72,6 +79,27 @@ public class TransactionEntryTransactionDetailsFlow : StripeEntity
+ /// If applicable, the ID of the Issuing authorization that created this Transaction.
+ ///
+ [JsonProperty("issuing_authorization")]
+ [STJS.JsonPropertyName("issuing_authorization")]
+ public string IssuingAuthorization { get; set; }
+
+ ///
+ /// If applicable, the ID of the Issuing dispute that created this Transaction.
+ ///
+ [JsonProperty("issuing_dispute")]
+ [STJS.JsonPropertyName("issuing_dispute")]
+ public string IssuingDispute { get; set; }
+
+ ///
+ /// If applicable, the ID of the Issuing transaction that created this Transaction.
+ ///
+ [JsonProperty("issuing_transaction")]
+ [STJS.JsonPropertyName("issuing_transaction")]
+ public string IssuingTransaction { get; set; }
+
///
/// If applicable, the ID of the OutboundPayment that created this Transaction.
///
@@ -218,7 +246,8 @@ public class TransactionEntryTransactionDetailsFlow : StripeEntityadjustment, application_fee, application_fee_refund,
/// charge, currency_conversion, debit_dispute, dispute,
- /// fee_transaction, inbound_transfer, outbound_payment,
+ /// fee_transaction, inbound_transfer, issuing_authorization,
+ /// issuing_dispute, issuing_transaction, outbound_payment,
/// outbound_transfer, payout, received_credit, received_debit,
/// refund, reserve_hold, reserve_release, tax_fund,
/// topup, transfer, transfer_reversal,
diff --git a/src/Stripe.net/Entities/V2/MoneyManagement/Transactions/Transaction.cs b/src/Stripe.net/Entities/V2/MoneyManagement/Transactions/Transaction.cs
index 46cc4778a7..843044e033 100644
--- a/src/Stripe.net/Entities/V2/MoneyManagement/Transactions/Transaction.cs
+++ b/src/Stripe.net/Entities/V2/MoneyManagement/Transactions/Transaction.cs
@@ -55,20 +55,20 @@ public class Transaction : StripeEntity, IHasId, IHasObject
/// dispute_reversal, financing_paydown, financing_paydown_reversal,
/// inbound_payment, inbound_payment_failure, inbound_transfer,
/// inbound_transfer_reversal, india_mdr_processing_fee,
- /// issuing_dispute, issuing_dispute_fraud_liability_debit,
- /// issuing_dispute_provisional_credit,
- /// issuing_dispute_provisional_credit_reversal, minimum_balance_hold,
- /// network_cost, obligation, outbound_payment,
- /// outbound_payment_reversal, outbound_transfer,
+ /// issuing_authorization, issuing_dispute,
+ /// issuing_dispute_fraud_liability_debit, issuing_dispute_provisional_credit,
+ /// issuing_dispute_provisional_credit_reversal, issuing_transaction,
+ /// minimum_balance_hold, network_cost, obligation,
+ /// outbound_payment, outbound_payment_reversal, outbound_transfer,
/// outbound_transfer_reversal, partial_capture_reversal,
/// payment_method_passthrough_fee, payment_network_reserved_funds,
/// platform_earning, platform_earning_refund, platform_fee,
- /// received_credit, received_credit_reversal, received_debit,
- /// received_debit_reversal, refund, refund_failure,
- /// risk_reserved_funds, stripe_balance_payment_debit,
- /// stripe_balance_payment_debit_reversal, stripe_fee, stripe_fee_tax,
- /// tax_fund, tax_withholding, transfer_reversal, or
- /// unreconciled_customer_funds.
+ /// platform_funded_credit_transaction, received_credit,
+ /// received_credit_reversal, received_debit, received_debit_reversal,
+ /// refund, refund_failure, risk_reserved_funds,
+ /// stripe_balance_payment_debit, stripe_balance_payment_debit_reversal,
+ /// stripe_fee, stripe_fee_tax, tax_fund, tax_withholding,
+ /// transfer_reversal, or unreconciled_customer_funds.
///
[JsonProperty("category")]
[STJS.JsonPropertyName("category")]
diff --git a/src/Stripe.net/Entities/V2/MoneyManagement/Transactions/TransactionFlow.cs b/src/Stripe.net/Entities/V2/MoneyManagement/Transactions/TransactionFlow.cs
index ccb86680c6..f04d9f495c 100644
--- a/src/Stripe.net/Entities/V2/MoneyManagement/Transactions/TransactionFlow.cs
+++ b/src/Stripe.net/Entities/V2/MoneyManagement/Transactions/TransactionFlow.cs
@@ -8,6 +8,13 @@ namespace Stripe.V2.MoneyManagement
[STJS.JsonConverter(typeof(STJStripeEntityConverter))]
public class TransactionFlow : StripeEntity
{
+ ///
+ /// If applicable, the connected account associated with this Transaction's flow.
+ ///
+ [JsonProperty("account")]
+ [STJS.JsonPropertyName("account")]
+ public string Account { get; set; }
+
///
/// If applicable, the ID of the Adjustment that created this Transaction.
///
@@ -72,6 +79,27 @@ public class TransactionFlow : StripeEntity
[STJS.JsonPropertyName("inbound_transfer")]
public string InboundTransfer { get; set; }
+ ///
+ /// If applicable, the ID of the Issuing authorization that created this Transaction.
+ ///
+ [JsonProperty("issuing_authorization")]
+ [STJS.JsonPropertyName("issuing_authorization")]
+ public string IssuingAuthorization { get; set; }
+
+ ///
+ /// If applicable, the ID of the Issuing dispute that created this Transaction.
+ ///
+ [JsonProperty("issuing_dispute")]
+ [STJS.JsonPropertyName("issuing_dispute")]
+ public string IssuingDispute { get; set; }
+
+ ///
+ /// If applicable, the ID of the Issuing transaction that created this Transaction.
+ ///
+ [JsonProperty("issuing_transaction")]
+ [STJS.JsonPropertyName("issuing_transaction")]
+ public string IssuingTransaction { get; set; }
+
///
/// If applicable, the ID of the OutboundPayment that created this Transaction.
///
@@ -218,7 +246,8 @@ public class TransactionFlow : StripeEntity
/// will contain the ID of the flow.
/// One of: adjustment, application_fee, application_fee_refund,
/// charge, currency_conversion, debit_dispute, dispute,
- /// fee_transaction, inbound_transfer, outbound_payment,
+ /// fee_transaction, inbound_transfer, issuing_authorization,
+ /// issuing_dispute, issuing_transaction, outbound_payment,
/// outbound_transfer, payout, received_credit, received_debit,
/// refund, reserve_hold, reserve_release, tax_fund,
/// topup, transfer, transfer_reversal,
diff --git a/src/Stripe.net/Infrastructure/Public/StripeTypeRegistry.cs b/src/Stripe.net/Infrastructure/Public/StripeTypeRegistry.cs
index 1356284fd7..ed3281d4be 100644
--- a/src/Stripe.net/Infrastructure/Public/StripeTypeRegistry.cs
+++ b/src/Stripe.net/Infrastructure/Public/StripeTypeRegistry.cs
@@ -63,6 +63,11 @@ public static class StripeTypeRegistry
{ "coupon", typeof(Coupon) },
{ "credit_note", typeof(CreditNote) },
{ "credit_note_line_item", typeof(CreditNoteLineItem) },
+ { "crypto.consumer_wallet", typeof(Crypto.CustomerConsumerWallet) },
+ { "crypto.customer", typeof(Crypto.Customer) },
+ { "crypto.onramp_session", typeof(Crypto.OnrampSession) },
+ { "crypto.onramp_transaction_limits", typeof(Crypto.OnrampTransactionLimits) },
+ { "crypto.payment_token", typeof(Crypto.CustomerPaymentToken) },
{ "customer", typeof(Customer) },
{ "customer_balance_transaction", typeof(CustomerBalanceTransaction) },
{ "customer_cash_balance_transaction", typeof(CustomerCashBalanceTransaction) },
diff --git a/src/Stripe.net/Services/Accounts/AccountDocumentsOptions.cs b/src/Stripe.net/Services/Accounts/AccountDocumentsOptions.cs
index f09c75ff75..b4fc03faa1 100644
--- a/src/Stripe.net/Services/Accounts/AccountDocumentsOptions.cs
+++ b/src/Stripe.net/Services/Accounts/AccountDocumentsOptions.cs
@@ -27,7 +27,8 @@ public class AccountDocumentsOptions : INestedOptions
public AccountDocumentsCompanyLicenseOptions CompanyLicense { get; set; }
///
- /// One or more documents showing the company's Memorandum of Association.
+ /// One or more documents showing the company's governing document (for example, a
+ /// memorandum of association, constitution, or articles of association).
///
[JsonProperty("company_memorandum_of_association")]
[STJS.JsonPropertyName("company_memorandum_of_association")]
diff --git a/src/Stripe.net/Services/BalanceTransactions/BalanceTransactionListOptions.cs b/src/Stripe.net/Services/BalanceTransactions/BalanceTransactionListOptions.cs
index e494a56600..d2058468cf 100644
--- a/src/Stripe.net/Services/BalanceTransactions/BalanceTransactionListOptions.cs
+++ b/src/Stripe.net/Services/BalanceTransactions/BalanceTransactionListOptions.cs
@@ -44,13 +44,14 @@ public class BalanceTransactionListOptions : ListOptions
public string Source { get; set; }
///
- /// Only returns transactions of the given type. One of: adjustment, advance,
- /// advance_funding, anticipation_repayment, application_fee,
- /// application_fee_refund, charge, climate_order_purchase,
- /// climate_order_refund, connect_collection_transfer, contribution,
- /// inbound_transfer, inbound_transfer_reversal,
- /// issuing_authorization_hold, issuing_authorization_release,
- /// issuing_dispute, issuing_transaction, obligation_outbound,
+ /// Only returns transactions of the given type. One of: tax_fund, adjustment,
+ /// advance, advance_funding, anticipation_repayment,
+ /// application_fee, application_fee_refund, charge,
+ /// climate_order_purchase, climate_order_refund,
+ /// connect_collection_transfer, contribution, inbound_transfer,
+ /// inbound_transfer_reversal, issuing_authorization_hold,
+ /// issuing_authorization_release, issuing_dispute,
+ /// issuing_transaction, obligation_outbound,
/// obligation_reversal_inbound, payment, payment_failure_refund,
/// payment_network_reserve_hold, payment_network_reserve_release,
/// payment_refund, payment_reversal, payment_unreconciled,
diff --git a/src/Stripe.net/Services/BalanceTransactions/BalanceTransactionService.cs b/src/Stripe.net/Services/BalanceTransactions/BalanceTransactionService.cs
index 9a2bfcb22f..5e6328bb24 100644
--- a/src/Stripe.net/Services/BalanceTransactions/BalanceTransactionService.cs
+++ b/src/Stripe.net/Services/BalanceTransactions/BalanceTransactionService.cs
@@ -48,10 +48,10 @@ public virtual Task GetAsync(string id, BalanceTransactionGe
///
///
Returns a list of transactions that have contributed to the Stripe account balance
- /// (e.g., charges, transfers, and so forth). The transactions are returned in sorted order,
+ /// (for example, charges, transfers, and so on). The transactions return in sorted order,
/// with the most recent transactions appearing first.
.
///
- ///
Note that this endpoint was previously called “Balance history” and used the path
+ ///
The previous name of this endpoint was “Balance history,” and it used the path
/// /v1/balance/history.
Returns a list of transactions that have contributed to the Stripe account balance
- /// (e.g., charges, transfers, and so forth). The transactions are returned in sorted order,
+ /// (for example, charges, transfers, and so on). The transactions return in sorted order,
/// with the most recent transactions appearing first.
.
///
- ///
Note that this endpoint was previously called “Balance history” and used the path
+ ///
The previous name of this endpoint was “Balance history,” and it used the path
/// /v1/balance/history.
Returns a list of transactions that have contributed to the Stripe account balance
- /// (e.g., charges, transfers, and so forth). The transactions are returned in sorted order,
+ /// (for example, charges, transfers, and so on). The transactions return in sorted order,
/// with the most recent transactions appearing first.
.
///
- ///
Note that this endpoint was previously called “Balance history” and used the path
+ ///
The previous name of this endpoint was “Balance history,” and it used the path
/// /v1/balance/history.
Returns a list of transactions that have contributed to the Stripe account balance
- /// (e.g., charges, transfers, and so forth). The transactions are returned in sorted order,
+ /// (for example, charges, transfers, and so on). The transactions return in sorted order,
/// with the most recent transactions appearing first.
.
///
- ///
Note that this endpoint was previously called “Balance history” and used the path
+ ///
The previous name of this endpoint was “Balance history,” and it used the path
/// /v1/balance/history.
.
///
public virtual IAsyncEnumerable ListAutoPagingAsync(BalanceTransactionListOptions options = null, RequestOptions requestOptions = null, CancellationToken cancellationToken = default)
diff --git a/src/Stripe.net/Services/Billing/CreditBalanceSummaries/CreditBalanceSummaryFilterApplicabilityScopeOptions.cs b/src/Stripe.net/Services/Billing/CreditBalanceSummaries/CreditBalanceSummaryFilterApplicabilityScopeOptions.cs
index 25ec17777c..23d81bb79b 100644
--- a/src/Stripe.net/Services/Billing/CreditBalanceSummaries/CreditBalanceSummaryFilterApplicabilityScopeOptions.cs
+++ b/src/Stripe.net/Services/Billing/CreditBalanceSummaries/CreditBalanceSummaryFilterApplicabilityScopeOptions.cs
@@ -28,7 +28,8 @@ public class CreditBalanceSummaryFilterApplicabilityScopeOptions : INestedOption
///
/// A list of prices that the credit grant can apply to. We currently only support the
- /// metered prices. Cannot be used in combination with price_type.
+ /// metered prices. Cannot be used in combination with price_type. Limit 20
+ /// prices.
///
[JsonProperty("prices")]
[STJS.JsonPropertyName("prices")]
diff --git a/src/Stripe.net/Services/Billing/CreditGrants/CreditGrantApplicabilityConfigScopeOptions.cs b/src/Stripe.net/Services/Billing/CreditGrants/CreditGrantApplicabilityConfigScopeOptions.cs
index 47c408414f..1bc9985786 100644
--- a/src/Stripe.net/Services/Billing/CreditGrants/CreditGrantApplicabilityConfigScopeOptions.cs
+++ b/src/Stripe.net/Services/Billing/CreditGrants/CreditGrantApplicabilityConfigScopeOptions.cs
@@ -28,7 +28,8 @@ public class CreditGrantApplicabilityConfigScopeOptions : INestedOptions
///
/// A list of prices that the credit grant can apply to. We currently only support the
- /// metered prices. Cannot be used in combination with price_type.
+ /// metered prices. Cannot be used in combination with price_type. Limit 20
+ /// prices.
///
[JsonProperty("prices")]
[STJS.JsonPropertyName("prices")]
diff --git a/src/Stripe.net/Services/Checkout/Sessions/SessionAutomaticTaxOptions.cs b/src/Stripe.net/Services/Checkout/Sessions/SessionAutomaticTaxOptions.cs
index 15fd4f6276..a25d786487 100644
--- a/src/Stripe.net/Services/Checkout/Sessions/SessionAutomaticTaxOptions.cs
+++ b/src/Stripe.net/Services/Checkout/Sessions/SessionAutomaticTaxOptions.cs
@@ -8,6 +8,25 @@ namespace Stripe.Checkout
[STJS.JsonConverter(typeof(STJStripeOptionsConverter))]
public class SessionAutomaticTaxOptions : INestedOptions
{
+ ///
+ /// Controls how much address information Checkout collects when automatic_tax
+ /// is enabled.
+ ///
+ /// Defaults to full, which collects the address fields needed for the most accurate
+ /// tax calculation. Set to minimal to collect only the fields required for tax in
+ /// the buyer's country, accepting potentially less precise tax calculation in exchange for
+ /// a streamlined form.
+ ///
+ /// Only honored when automatic_tax.enabled is true,
+ /// billing_address_collection is auto, the resolved tax address source is the
+ /// session billing address, and ui_mode is form.
+ /// One of: full, or minimal.
+ ///
+ [JsonProperty("address_collection_precision")]
+ [STJS.JsonPropertyName("address_collection_precision")]
+ public string AddressCollectionPrecision { get; set; }
+
///
/// Set to true to calculate tax
/// automatically using the customer's location.
diff --git a/src/Stripe.net/Services/Checkout/Sessions/SessionCreateOptions.cs b/src/Stripe.net/Services/Checkout/Sessions/SessionCreateOptions.cs
index b65e0e9db8..21fbe2e334 100644
--- a/src/Stripe.net/Services/Checkout/Sessions/SessionCreateOptions.cs
+++ b/src/Stripe.net/Services/Checkout/Sessions/SessionCreateOptions.cs
@@ -351,8 +351,6 @@ public class SessionCreateOptions : BaseOptions, IHasMetadata
///
/// If a Customer is created or
/// provided, the names can be saved to the Customer object as well.
- ///
- /// You can't set this parameter if ui_mode is custom.
///
[JsonProperty("name_collection")]
[STJS.JsonPropertyName("name_collection")]
diff --git a/src/Stripe.net/Services/Checkout/Sessions/SessionPaymentMethodOptionsOptions.cs b/src/Stripe.net/Services/Checkout/Sessions/SessionPaymentMethodOptionsOptions.cs
index c5f7786800..03b6c7e986 100644
--- a/src/Stripe.net/Services/Checkout/Sessions/SessionPaymentMethodOptionsOptions.cs
+++ b/src/Stripe.net/Services/Checkout/Sessions/SessionPaymentMethodOptionsOptions.cs
@@ -325,6 +325,13 @@ public class SessionPaymentMethodOptionsOptions : INestedOptions
[STJS.JsonPropertyName("sofort")]
public SessionPaymentMethodOptionsSofortOptions Sofort { get; set; }
+ ///
+ /// contains details about the Sunbit payment method options.
+ ///
+ [JsonProperty("sunbit")]
+ [STJS.JsonPropertyName("sunbit")]
+ public SessionPaymentMethodOptionsSunbitOptions Sunbit { get; set; }
+
///
/// contains details about the Swish payment method options.
///
diff --git a/src/Stripe.net/Services/Checkout/Sessions/SessionPaymentMethodOptionsSunbitOptions.cs b/src/Stripe.net/Services/Checkout/Sessions/SessionPaymentMethodOptionsSunbitOptions.cs
new file mode 100644
index 0000000000..23c7146c0b
--- /dev/null
+++ b/src/Stripe.net/Services/Checkout/Sessions/SessionPaymentMethodOptionsSunbitOptions.cs
@@ -0,0 +1,42 @@
+// 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 SessionPaymentMethodOptionsSunbitOptions : INestedOptions
+ {
+ ///
+ /// Controls when the funds will be captured from the customer's account.
+ ///
+ [JsonProperty("capture_method")]
+ [STJS.JsonPropertyName("capture_method")]
+ public string CaptureMethod { 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.
+ ///
+ [JsonProperty("setup_future_usage")]
+ [STJS.JsonPropertyName("setup_future_usage")]
+ public string SetupFutureUsage { get; set; }
+ }
+}
diff --git a/src/Stripe.net/Services/Checkout/Sessions/SessionSubscriptionDataBillingCycleAnchorConfigOptions.cs b/src/Stripe.net/Services/Checkout/Sessions/SessionSubscriptionDataBillingCycleAnchorConfigOptions.cs
new file mode 100644
index 0000000000..2050b9bd7d
--- /dev/null
+++ b/src/Stripe.net/Services/Checkout/Sessions/SessionSubscriptionDataBillingCycleAnchorConfigOptions.cs
@@ -0,0 +1,46 @@
+// 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 SessionSubscriptionDataBillingCycleAnchorConfigOptions : INestedOptions
+ {
+ ///
+ /// The day of the month the anchor should be. Ranges from 1 to 31.
+ ///
+ [JsonProperty("day_of_month")]
+ [STJS.JsonPropertyName("day_of_month")]
+ public long? DayOfMonth { get; set; }
+
+ ///
+ /// The hour of the day the anchor should be. Ranges from 0 to 23.
+ ///
+ [JsonProperty("hour")]
+ [STJS.JsonPropertyName("hour")]
+ public long? Hour { get; set; }
+
+ ///
+ /// The minute of the hour the anchor should be. Ranges from 0 to 59.
+ ///
+ [JsonProperty("minute")]
+ [STJS.JsonPropertyName("minute")]
+ public long? Minute { get; set; }
+
+ ///
+ /// The month to start full cycle periods. Ranges from 1 to 12.
+ ///
+ [JsonProperty("month")]
+ [STJS.JsonPropertyName("month")]
+ public long? Month { get; set; }
+
+ ///
+ /// The second of the minute the anchor should be. Ranges from 0 to 59.
+ ///
+ [JsonProperty("second")]
+ [STJS.JsonPropertyName("second")]
+ public long? Second { get; set; }
+ }
+}
diff --git a/src/Stripe.net/Services/Checkout/Sessions/SessionSubscriptionDataOptions.cs b/src/Stripe.net/Services/Checkout/Sessions/SessionSubscriptionDataOptions.cs
index 219557ed58..29eba7903f 100644
--- a/src/Stripe.net/Services/Checkout/Sessions/SessionSubscriptionDataOptions.cs
+++ b/src/Stripe.net/Services/Checkout/Sessions/SessionSubscriptionDataOptions.cs
@@ -39,6 +39,14 @@ public class SessionSubscriptionDataOptions : INestedOptions, IHasMetadata, IHas
[STJS.JsonConverter(typeof(STJUnixDateTimeConverter))]
public DateTime? BillingCycleAnchor { get; set; }
+ ///
+ /// Configures when the subscription schedule's billing cycle anchors to a specific day of
+ /// the week or month.
+ ///
+ [JsonProperty("billing_cycle_anchor_config")]
+ [STJS.JsonPropertyName("billing_cycle_anchor_config")]
+ public SessionSubscriptionDataBillingCycleAnchorConfigOptions BillingCycleAnchorConfig { get; set; }
+
///
/// Controls how prorations and invoices for subscriptions are calculated and orchestrated.
///
diff --git a/src/Stripe.net/Services/CreditNotePreviewLines/CreditNotePreviewLinesLineOptions.cs b/src/Stripe.net/Services/CreditNotePreviewLines/CreditNotePreviewLinesLineOptions.cs
index df3e1be72a..e2dac94340 100644
--- a/src/Stripe.net/Services/CreditNotePreviewLines/CreditNotePreviewLinesLineOptions.cs
+++ b/src/Stripe.net/Services/CreditNotePreviewLines/CreditNotePreviewLinesLineOptions.cs
@@ -59,7 +59,7 @@ public class CreditNotePreviewLinesLineOptions : INestedOptions, IHasMetadata, I
public long? Quantity { get; set; }
///
- /// A list of up to 10 tax amounts for the credit note line item. Not valid when
+ /// A list of up to 20 tax amounts for the credit note line item. Not valid when
/// tax_rates is used or if invoice is set up with
/// automatic_tax[enabled]=true.
///
diff --git a/src/Stripe.net/Services/CreditNotes/CreditNoteLineOptions.cs b/src/Stripe.net/Services/CreditNotes/CreditNoteLineOptions.cs
index 1694583aeb..8c16f801f6 100644
--- a/src/Stripe.net/Services/CreditNotes/CreditNoteLineOptions.cs
+++ b/src/Stripe.net/Services/CreditNotes/CreditNoteLineOptions.cs
@@ -59,7 +59,7 @@ public class CreditNoteLineOptions : INestedOptions, IHasMetadata, IHasSetTracki
public long? Quantity { get; set; }
///
- /// A list of up to 10 tax amounts for the credit note line item. Not valid when
+ /// A list of up to 20 tax amounts for the credit note line item. Not valid when
/// tax_rates is used or if invoice is set up with
/// automatic_tax[enabled]=true.
///
diff --git a/src/Stripe.net/Services/Crypto/CustomerConsumerWallets/CustomerConsumerWalletListOptions.cs b/src/Stripe.net/Services/Crypto/CustomerConsumerWallets/CustomerConsumerWalletListOptions.cs
new file mode 100644
index 0000000000..3c72531f8f
--- /dev/null
+++ b/src/Stripe.net/Services/Crypto/CustomerConsumerWallets/CustomerConsumerWalletListOptions.cs
@@ -0,0 +1,12 @@
+// File generated from our OpenAPI spec
+namespace Stripe.Crypto
+{
+ using Newtonsoft.Json;
+ using Stripe.Infrastructure;
+ using STJS = System.Text.Json.Serialization;
+
+ [STJS.JsonConverter(typeof(STJStripeOptionsConverter))]
+ public class CustomerConsumerWalletListOptions : ListOptions
+ {
+ }
+}
diff --git a/src/Stripe.net/Services/Crypto/CustomerConsumerWallets/CustomerConsumerWalletService.cs b/src/Stripe.net/Services/Crypto/CustomerConsumerWallets/CustomerConsumerWalletService.cs
new file mode 100644
index 0000000000..d2c6eda03e
--- /dev/null
+++ b/src/Stripe.net/Services/Crypto/CustomerConsumerWallets/CustomerConsumerWalletService.cs
@@ -0,0 +1,60 @@
+// File generated from our OpenAPI spec
+namespace Stripe.Crypto
+{
+ using System;
+ using System.Collections.Generic;
+ using System.Net;
+ using System.Net.Http;
+ using System.Threading;
+ using System.Threading.Tasks;
+
+ public class CustomerConsumerWalletService : Service,
+ INestedListable
+ {
+ public CustomerConsumerWalletService()
+ {
+ }
+
+ internal CustomerConsumerWalletService(ApiRequestor requestor)
+ : base(requestor)
+ {
+ }
+
+ public CustomerConsumerWalletService(IStripeClient client)
+ : base(client)
+ {
+ }
+
+ ///
+ ///
.
+ ///
+ public virtual Task GetAsync(string id, CustomerGetOptions options = null, RequestOptions requestOptions = null, CancellationToken cancellationToken = default)
+ {
+ return this.RequestAsync(BaseAddress.Api, HttpMethod.Get, $"/v1/crypto/customers/{WebUtility.UrlEncode(id)}", options, requestOptions, cancellationToken);
+ }
+ }
+}
diff --git a/src/Stripe.net/Services/Crypto/OnrampSessions/OnrampSessionCheckoutOptions.cs b/src/Stripe.net/Services/Crypto/OnrampSessions/OnrampSessionCheckoutOptions.cs
new file mode 100644
index 0000000000..6252a14684
--- /dev/null
+++ b/src/Stripe.net/Services/Crypto/OnrampSessions/OnrampSessionCheckoutOptions.cs
@@ -0,0 +1,18 @@
+// File generated from our OpenAPI spec
+namespace Stripe.Crypto
+{
+ using Newtonsoft.Json;
+ using Stripe.Infrastructure;
+ using STJS = System.Text.Json.Serialization;
+
+ [STJS.JsonConverter(typeof(STJStripeOptionsConverter))]
+ public class OnrampSessionCheckoutOptions : BaseOptions
+ {
+ ///
+ /// This hash contains details about the mandate to create.
+ ///
+ [JsonProperty("mandate_data")]
+ [STJS.JsonPropertyName("mandate_data")]
+ public OnrampSessionMandateDataOptions MandateData { get; set; }
+ }
+}
diff --git a/src/Stripe.net/Services/Crypto/OnrampSessions/OnrampSessionCreateOptions.cs b/src/Stripe.net/Services/Crypto/OnrampSessions/OnrampSessionCreateOptions.cs
new file mode 100644
index 0000000000..8e78182d30
--- /dev/null
+++ b/src/Stripe.net/Services/Crypto/OnrampSessions/OnrampSessionCreateOptions.cs
@@ -0,0 +1,179 @@
+// File generated from our OpenAPI spec
+namespace Stripe.Crypto
+{
+ using System.Collections.Generic;
+ using Newtonsoft.Json;
+ using Stripe.Infrastructure;
+ using STJS = System.Text.Json.Serialization;
+
+ [STJS.JsonConverter(typeof(STJStripeOptionsConverter))]
+ public class OnrampSessionCreateOptions : BaseOptions, IHasMetadata
+ {
+ ///
+ /// The IP address of the customer the platform intends to onramp.
+ ///
+ /// If the user's IP is in a region we can't support, we return an HTTP 400 with an
+ /// appropriate error code.
+ ///
+ /// We support IPv4 and IPv6 addresses. Geographic supportability is checked again later in
+ /// the onramp flow, which provides a way to hide the onramp option from ineligible users
+ /// for a better user experience.
+ ///
+ [JsonProperty("customer_ip_address")]
+ [STJS.JsonPropertyName("customer_ip_address")]
+ public string CustomerIpAddress { get; set; }
+
+ ///
+ /// The default amount of crypto to exchange into.
+ ///
+ /// * When left null, a default value is computed if source_amount,
+ /// destination_currency, and destination_network are set. * When set, both
+ /// destination_currency and destination_network must also be set. All
+ /// cryptocurrencies are supported to their full precisions (for example, 18 decimal places
+ /// for eth). We validate and generate an error if the amount exceeds the supported
+ /// precision based on the exchange currency. Setting source_amount is mutually
+ /// exclusive with setting destination_amount (only one or the other is supported).
+ /// Users can update the amount in the onramp UI.
+ ///
+ [JsonProperty("destination_amount")]
+ [STJS.JsonPropertyName("destination_amount")]
+ public string DestinationAmount { get; set; }
+
+ ///
+ /// The list of destination cryptocurrencies a user can choose from.
+ ///
+ /// * When left null, all supported cryptocurrencies are shown in the onramp UI subject to
+ /// destination_networks if set. * When set, it must be a non-empty array where all
+ /// values in the array are valid cryptocurrencies. You can use it to lock users to a
+ /// specific cryptocurrency by passing a single value array. Users cannot
+ /// override this parameter.
+ /// One of: avax, btc, eth, matic, sol, usdc,
+ /// wld, or xlm.
+ ///
+ [JsonProperty("destination_currencies")]
+ [STJS.JsonPropertyName("destination_currencies")]
+ public List DestinationCurrencies { get; set; }
+
+ ///
+ /// The default destination cryptocurrency.
+ ///
+ /// * When left null, the first value of destination_currencies is selected. * When
+ /// set, if destination_currencies is also set, the value of
+ /// destination_currency must be present in that array. To lock a
+ /// destination_currency, specify that value as the single value for
+ /// destination_currencies. Users can select a different cryptocurrency in the onramp
+ /// UI subject to destination_currencies if set.
+ /// One of: avax, btc, eth, matic, sol, usdc,
+ /// wld, or xlm.
+ ///
+ [JsonProperty("destination_currency")]
+ [STJS.JsonPropertyName("destination_currency")]
+ public string DestinationCurrency { get; set; }
+
+ ///
+ /// The default destination crypto network.
+ ///
+ /// * When left null, the first value of destination_networks is selected. * When
+ /// set, if destination_networks is also set, the value of destination_network
+ /// must be present in that array. To lock a destination_network, specify that value
+ /// as the single value for destination_networks. Users can select a different
+ /// network in the onramp UI subject to destination_networks if set.
+ /// One of: avalanche, base, bitcoin, ethereum, optimism,
+ /// polygon, solana, stellar, or worldchain.
+ ///
+ [JsonProperty("destination_network")]
+ [STJS.JsonPropertyName("destination_network")]
+ public string DestinationNetwork { get; set; }
+
+ ///
+ /// The list of destination crypto networks user can choose from.
+ ///
+ /// * When left null, all supported crypto networks are shown in the onramp UI. * When set,
+ /// it must be a non-empty array where values in the array are each a valid crypto network.
+ /// It can be used to lock users to a specific network by passing a single value array.
+ /// Users cannot override this parameter.
+ /// One of: avalanche, base, bitcoin, ethereum, optimism,
+ /// polygon, solana, stellar, or worldchain.
+ ///
+ [JsonProperty("destination_networks")]
+ [STJS.JsonPropertyName("destination_networks")]
+ public List DestinationNetworks { get; set; }
+
+ ///
+ /// Pre-populate some of the required KYC information for the user if you've already
+ /// collected it within your application.
+ ///
+ /// Related guide: Using
+ /// the API.
+ ///
+ [JsonProperty("kyc_details")]
+ [STJS.JsonPropertyName("kyc_details")]
+ public OnrampSessionKycDetailsOptions KycDetails { get; set; }
+
+ ///
+ /// Whether or not to lock the suggested wallet address. If destination tags are provided,
+ /// this will also lock the destination tags.
+ ///
+ [JsonProperty("lock_wallet_address")]
+ [STJS.JsonPropertyName("lock_wallet_address")]
+ public bool? LockWalletAddress { 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; }
+
+ ///
+ /// Speed at which the cryptocurrency is delivered to the wallet One of: instant
+ /// (default): crypto is delivered when payment is confirmed standard: crypto is
+ /// delivered when payment settles.
+ /// One of: instant, or standard.
+ ///
+ [JsonProperty("settlement_speed")]
+ [STJS.JsonPropertyName("settlement_speed")]
+ public string SettlementSpeed { get; set; }
+
+ ///
+ /// The default amount of fiat (in decimal) to exchange into crypto.
+ ///
+ /// * When left null, a default value is computed if destination_amount is set. *
+ /// When set, setting source_amount is mutually exclusive with setting
+ /// destination_amount (only one or the other is supported). We don't support
+ /// fractional pennies. If fractional minor units of a currency are passed in, it generates
+ /// an error. Users can update the value in the onramp UI.
+ ///
+ [JsonProperty("source_amount")]
+ [STJS.JsonPropertyName("source_amount")]
+ public string SourceAmount { get; set; }
+
+ ///
+ /// The default source fiat currency for the onramp session.
+ ///
+ /// * When left null, a default currency is selected based on user locale. * When set, it
+ /// must be one of the fiat currencies supported by onramp. Users can still select a
+ /// different currency in the onramp UI.
+ /// One of: eur, gbp, or usd.
+ ///
+ [JsonProperty("source_currency")]
+ [STJS.JsonPropertyName("source_currency")]
+ public string SourceCurrency { get; set; }
+
+ ///
+ /// The end customer's crypto wallet address (for each network) to use for this transaction.
+ ///
+ /// * When left null, the user enters their wallet in the onramp UI. * When set, the
+ /// platform must set either destination_networks or destination_network and
+ /// we perform address validation. Users can still select a different wallet in the onramp
+ /// UI.
+ ///
+ [JsonProperty("wallet_addresses")]
+ [STJS.JsonPropertyName("wallet_addresses")]
+ public OnrampSessionWalletAddressesOptions WalletAddresses { get; set; }
+ }
+}
diff --git a/src/Stripe.net/Services/Crypto/OnrampSessions/OnrampSessionGetOptions.cs b/src/Stripe.net/Services/Crypto/OnrampSessions/OnrampSessionGetOptions.cs
new file mode 100644
index 0000000000..4c699aca8d
--- /dev/null
+++ b/src/Stripe.net/Services/Crypto/OnrampSessions/OnrampSessionGetOptions.cs
@@ -0,0 +1,12 @@
+// File generated from our OpenAPI spec
+namespace Stripe.Crypto
+{
+ using Newtonsoft.Json;
+ using Stripe.Infrastructure;
+ using STJS = System.Text.Json.Serialization;
+
+ [STJS.JsonConverter(typeof(STJStripeOptionsConverter))]
+ public class OnrampSessionGetOptions : BaseOptions
+ {
+ }
+}
diff --git a/src/Stripe.net/Services/Crypto/OnrampSessions/OnrampSessionKycDetailsOptions.cs b/src/Stripe.net/Services/Crypto/OnrampSessions/OnrampSessionKycDetailsOptions.cs
new file mode 100644
index 0000000000..e970ba00d0
--- /dev/null
+++ b/src/Stripe.net/Services/Crypto/OnrampSessions/OnrampSessionKycDetailsOptions.cs
@@ -0,0 +1,12 @@
+// File generated from our OpenAPI spec
+namespace Stripe.Crypto
+{
+ using Newtonsoft.Json;
+ using Stripe.Infrastructure;
+ using STJS = System.Text.Json.Serialization;
+
+ [STJS.JsonConverter(typeof(STJStripeOptionsConverter))]
+ public class OnrampSessionKycDetailsOptions : INestedOptions
+ {
+ }
+}
diff --git a/src/Stripe.net/Services/Crypto/OnrampSessions/OnrampSessionListOptions.cs b/src/Stripe.net/Services/Crypto/OnrampSessions/OnrampSessionListOptions.cs
new file mode 100644
index 0000000000..e9ca5a8ab0
--- /dev/null
+++ b/src/Stripe.net/Services/Crypto/OnrampSessions/OnrampSessionListOptions.cs
@@ -0,0 +1,49 @@
+// File generated from our OpenAPI spec
+namespace Stripe.Crypto
+{
+ using System;
+ using Newtonsoft.Json;
+ using Stripe.Infrastructure;
+ using STJS = System.Text.Json.Serialization;
+
+ [STJS.JsonConverter(typeof(STJStripeOptionsConverter))]
+ public class OnrampSessionListOptions : ListOptions
+ {
+ ///
+ /// Only return onramp sessions that were created during the given date interval.
+ ///
+ [JsonProperty("created")]
+ [JsonConverter(typeof(AnyOfConverter))]
+ [STJS.JsonPropertyName("created")]
+ [STJS.JsonConverter(typeof(STJAnyOfConverter))]
+ public AnyOf Created { get; set; }
+
+ ///
+ /// The destination cryptocurrency to filter by.
+ /// One of: avax, btc, eth, matic, sol, usdc,
+ /// wld, or xlm.
+ ///
+ [JsonProperty("destination_currency")]
+ [STJS.JsonPropertyName("destination_currency")]
+ public string DestinationCurrency { get; set; }
+
+ ///
+ /// The destination blockchain network to filter by.
+ /// One of: avalanche, base, bitcoin, ethereum, optimism,
+ /// polygon, solana, stellar, or worldchain.
+ ///
+ [JsonProperty("destination_network")]
+ [STJS.JsonPropertyName("destination_network")]
+ public string DestinationNetwork { get; set; }
+
+ ///
+ /// The status of the Onramp Session. One of = {initialized, rejected, requires_payment,
+ /// fulfillment_processing, fulfillment_complete}.
+ /// One of: fulfillment_complete, fulfillment_processing, initialized,
+ /// rejected, or requires_payment.
+ ///
+ [JsonProperty("status")]
+ [STJS.JsonPropertyName("status")]
+ public string Status { get; set; }
+ }
+}
diff --git a/src/Stripe.net/Services/Crypto/OnrampSessions/OnrampSessionMandateDataCustomerAcceptanceOfflineOptions.cs b/src/Stripe.net/Services/Crypto/OnrampSessions/OnrampSessionMandateDataCustomerAcceptanceOfflineOptions.cs
new file mode 100644
index 0000000000..857ce016cf
--- /dev/null
+++ b/src/Stripe.net/Services/Crypto/OnrampSessions/OnrampSessionMandateDataCustomerAcceptanceOfflineOptions.cs
@@ -0,0 +1,12 @@
+// File generated from our OpenAPI spec
+namespace Stripe.Crypto
+{
+ using Newtonsoft.Json;
+ using Stripe.Infrastructure;
+ using STJS = System.Text.Json.Serialization;
+
+ [STJS.JsonConverter(typeof(STJStripeOptionsConverter))]
+ public class OnrampSessionMandateDataCustomerAcceptanceOfflineOptions : INestedOptions
+ {
+ }
+}
diff --git a/src/Stripe.net/Services/Crypto/OnrampSessions/OnrampSessionMandateDataCustomerAcceptanceOnlineOptions.cs b/src/Stripe.net/Services/Crypto/OnrampSessions/OnrampSessionMandateDataCustomerAcceptanceOnlineOptions.cs
new file mode 100644
index 0000000000..e80e54cac5
--- /dev/null
+++ b/src/Stripe.net/Services/Crypto/OnrampSessions/OnrampSessionMandateDataCustomerAcceptanceOnlineOptions.cs
@@ -0,0 +1,25 @@
+// File generated from our OpenAPI spec
+namespace Stripe.Crypto
+{
+ using Newtonsoft.Json;
+ using Stripe.Infrastructure;
+ using STJS = System.Text.Json.Serialization;
+
+ [STJS.JsonConverter(typeof(STJStripeOptionsConverter))]
+ public class OnrampSessionMandateDataCustomerAcceptanceOnlineOptions : INestedOptions
+ {
+ ///
+ /// The IP address from which the Mandate was accepted by the customer.
+ ///
+ [JsonProperty("ip_address")]
+ [STJS.JsonPropertyName("ip_address")]
+ public string IpAddress { get; set; }
+
+ ///
+ /// The user agent of the browser from which the Mandate was accepted by the customer.
+ ///
+ [JsonProperty("user_agent")]
+ [STJS.JsonPropertyName("user_agent")]
+ public string UserAgent { get; set; }
+ }
+}
diff --git a/src/Stripe.net/Services/Crypto/OnrampSessions/OnrampSessionMandateDataCustomerAcceptanceOptions.cs b/src/Stripe.net/Services/Crypto/OnrampSessions/OnrampSessionMandateDataCustomerAcceptanceOptions.cs
new file mode 100644
index 0000000000..3d7b02d867
--- /dev/null
+++ b/src/Stripe.net/Services/Crypto/OnrampSessions/OnrampSessionMandateDataCustomerAcceptanceOptions.cs
@@ -0,0 +1,46 @@
+// File generated from our OpenAPI spec
+namespace Stripe.Crypto
+{
+ using System;
+ using Newtonsoft.Json;
+ using Stripe.Infrastructure;
+ using STJS = System.Text.Json.Serialization;
+
+ [STJS.JsonConverter(typeof(STJStripeOptionsConverter))]
+ public class OnrampSessionMandateDataCustomerAcceptanceOptions : INestedOptions
+ {
+ ///
+ /// The time at which the customer accepted the Mandate.
+ ///
+ [JsonProperty("accepted_at")]
+ [JsonConverter(typeof(UnixDateTimeConverter))]
+ [STJS.JsonPropertyName("accepted_at")]
+ [STJS.JsonConverter(typeof(STJUnixDateTimeConverter))]
+ public DateTime? AcceptedAt { get; set; }
+
+ ///
+ /// If this is a Mandate accepted offline, this hash contains details about the offline
+ /// acceptance.
+ ///
+ [JsonProperty("offline")]
+ [STJS.JsonPropertyName("offline")]
+ public OnrampSessionMandateDataCustomerAcceptanceOfflineOptions Offline { get; set; }
+
+ ///
+ /// If this is a Mandate accepted online, this hash contains details about the online
+ /// acceptance.
+ ///
+ [JsonProperty("online")]
+ [STJS.JsonPropertyName("online")]
+ public OnrampSessionMandateDataCustomerAcceptanceOnlineOptions Online { get; set; }
+
+ ///
+ /// The type of customer acceptance information included with the Mandate. One of
+ /// online or offline.
+ /// One of: offline, or online.
+ ///
+ [JsonProperty("type")]
+ [STJS.JsonPropertyName("type")]
+ public string Type { get; set; }
+ }
+}
diff --git a/src/Stripe.net/Services/Crypto/OnrampSessions/OnrampSessionMandateDataOptions.cs b/src/Stripe.net/Services/Crypto/OnrampSessions/OnrampSessionMandateDataOptions.cs
new file mode 100644
index 0000000000..edc5718f36
--- /dev/null
+++ b/src/Stripe.net/Services/Crypto/OnrampSessions/OnrampSessionMandateDataOptions.cs
@@ -0,0 +1,18 @@
+// File generated from our OpenAPI spec
+namespace Stripe.Crypto
+{
+ using Newtonsoft.Json;
+ using Stripe.Infrastructure;
+ using STJS = System.Text.Json.Serialization;
+
+ [STJS.JsonConverter(typeof(STJStripeOptionsConverter))]
+ public class OnrampSessionMandateDataOptions : INestedOptions
+ {
+ ///
+ /// This hash contains details about the customer acceptance of the Mandate.
+ ///
+ [JsonProperty("customer_acceptance")]
+ [STJS.JsonPropertyName("customer_acceptance")]
+ public OnrampSessionMandateDataCustomerAcceptanceOptions CustomerAcceptance { get; set; }
+ }
+}
diff --git a/src/Stripe.net/Services/Crypto/OnrampSessions/OnrampSessionQuoteOptions.cs b/src/Stripe.net/Services/Crypto/OnrampSessions/OnrampSessionQuoteOptions.cs
new file mode 100644
index 0000000000..c6fcf86d86
--- /dev/null
+++ b/src/Stripe.net/Services/Crypto/OnrampSessions/OnrampSessionQuoteOptions.cs
@@ -0,0 +1,12 @@
+// File generated from our OpenAPI spec
+namespace Stripe.Crypto
+{
+ using Newtonsoft.Json;
+ using Stripe.Infrastructure;
+ using STJS = System.Text.Json.Serialization;
+
+ [STJS.JsonConverter(typeof(STJStripeOptionsConverter))]
+ public class OnrampSessionQuoteOptions : BaseOptions
+ {
+ }
+}
diff --git a/src/Stripe.net/Services/Crypto/OnrampSessions/OnrampSessionService.cs b/src/Stripe.net/Services/Crypto/OnrampSessions/OnrampSessionService.cs
new file mode 100644
index 0000000000..6febc55cc3
--- /dev/null
+++ b/src/Stripe.net/Services/Crypto/OnrampSessions/OnrampSessionService.cs
@@ -0,0 +1,148 @@
+// File generated from our OpenAPI spec
+namespace Stripe.Crypto
+{
+ using System;
+ using System.Collections.Generic;
+ using System.Net;
+ using System.Net.Http;
+ using System.Threading;
+ using System.Threading.Tasks;
+
+ public class OnrampSessionService : Service,
+ ICreatable,
+ IListable,
+ IRetrievable
+ {
+ public OnrampSessionService()
+ {
+ }
+
+ internal OnrampSessionService(ApiRequestor requestor)
+ : base(requestor)
+ {
+ }
+
+ public OnrampSessionService(IStripeClient client)
+ : base(client)
+ {
+ }
+
+ ///
+ ///
Completes a headless CryptoOnrampSession.
.
+ ///
+ ///
This method will attempt to confirm the payment and execute the quote to deliver the
+ /// crypto to the customer.
Returns a list of onramp sessions that match the filter criteria. The onramp sessions
+ /// are returned in sorted order, with the most recent onramp sessions appearing first.
Returns a list of onramp sessions that match the filter criteria. The onramp sessions
+ /// are returned in sorted order, with the most recent onramp sessions appearing first.
Returns a list of onramp sessions that match the filter criteria. The onramp sessions
+ /// are returned in sorted order, with the most recent onramp sessions appearing first.
Returns a list of onramp sessions that match the filter criteria. The onramp sessions
+ /// are returned in sorted order, with the most recent onramp sessions appearing first.
Retrieves the remaining onramp limit for a crypto customer.
.
+ ///
+ public virtual Task GetAsync(OnrampTransactionLimitsGetOptions options, RequestOptions requestOptions = null, CancellationToken cancellationToken = default)
+ {
+ return this.RequestAsync(BaseAddress.Api, HttpMethod.Get, $"/v1/crypto/onramp_transaction_limits", options, requestOptions, cancellationToken);
+ }
+ }
+}
diff --git a/src/Stripe.net/Services/CryptoService.cs b/src/Stripe.net/Services/CryptoService.cs
new file mode 100644
index 0000000000..aea87e3589
--- /dev/null
+++ b/src/Stripe.net/Services/CryptoService.cs
@@ -0,0 +1,33 @@
+// File generated from our OpenAPI spec
+namespace Stripe
+{
+ using System;
+ using System.Threading;
+ using System.Threading.Tasks;
+
+ public class CryptoService : Service
+ {
+ private Crypto.CustomerService customers;
+ private Crypto.OnrampSessionService onrampSessions;
+ private Crypto.OnrampTransactionLimitsService onrampTransactionLimits;
+
+ internal CryptoService(ApiRequestor requestor)
+ : base(requestor)
+ {
+ }
+
+ internal CryptoService(IStripeClient client)
+ : base(client)
+ {
+ }
+
+ public virtual Crypto.CustomerService Customers => this.customers ??= new Crypto.CustomerService(
+ this.Requestor);
+
+ public virtual Crypto.OnrampSessionService OnrampSessions => this.onrampSessions ??= new Crypto.OnrampSessionService(
+ this.Requestor);
+
+ public virtual Crypto.OnrampTransactionLimitsService OnrampTransactionLimits => this.onrampTransactionLimits ??= new Crypto.OnrampTransactionLimitsService(
+ this.Requestor);
+ }
+}
diff --git a/src/Stripe.net/Services/Disputes/DisputeEvidenceEnhancedEvidenceMastercardComplianceOptions.cs b/src/Stripe.net/Services/Disputes/DisputeEvidenceEnhancedEvidenceMastercardComplianceOptions.cs
new file mode 100644
index 0000000000..d7ff2529c3
--- /dev/null
+++ b/src/Stripe.net/Services/Disputes/DisputeEvidenceEnhancedEvidenceMastercardComplianceOptions.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 DisputeEvidenceEnhancedEvidenceMastercardComplianceOptions : INestedOptions
+ {
+ ///
+ /// A field acknowledging the fee incurred when countering a Mastercard compliance dispute.
+ /// If this field is set to true, evidence can be submitted for the compliance dispute.
+ ///
+ [JsonProperty("fee_acknowledged")]
+ [STJS.JsonPropertyName("fee_acknowledged")]
+ public bool? FeeAcknowledged { get; set; }
+ }
+}
diff --git a/src/Stripe.net/Services/Disputes/DisputeEvidenceEnhancedEvidenceOptions.cs b/src/Stripe.net/Services/Disputes/DisputeEvidenceEnhancedEvidenceOptions.cs
index dfbdb60550..82685dc6b7 100644
--- a/src/Stripe.net/Services/Disputes/DisputeEvidenceEnhancedEvidenceOptions.cs
+++ b/src/Stripe.net/Services/Disputes/DisputeEvidenceEnhancedEvidenceOptions.cs
@@ -8,6 +8,13 @@ namespace Stripe
[STJS.JsonConverter(typeof(STJStripeOptionsConverter))]
public class DisputeEvidenceEnhancedEvidenceOptions : INestedOptions
{
+ ///
+ /// Evidence provided for Mastercard compliance evidence submission.
+ ///
+ [JsonProperty("mastercard_compliance")]
+ [STJS.JsonPropertyName("mastercard_compliance")]
+ public DisputeEvidenceEnhancedEvidenceMastercardComplianceOptions MastercardCompliance { get; set; }
+
///
/// Evidence provided for Visa Compelling Evidence 3.0 evidence submission.
///
diff --git a/src/Stripe.net/Services/FinancialConnections/Sessions/SessionLimitsOptions.cs b/src/Stripe.net/Services/FinancialConnections/Sessions/SessionLimitsOptions.cs
index 72f93e3d64..56033e2b38 100644
--- a/src/Stripe.net/Services/FinancialConnections/Sessions/SessionLimitsOptions.cs
+++ b/src/Stripe.net/Services/FinancialConnections/Sessions/SessionLimitsOptions.cs
@@ -6,13 +6,34 @@ namespace Stripe.FinancialConnections
using STJS = System.Text.Json.Serialization;
[STJS.JsonConverter(typeof(STJStripeOptionsConverter))]
- public class SessionLimitsOptions : INestedOptions
+ public class SessionLimitsOptions : INestedOptions, IHasSetTracking
{
+ private long? accounts;
+
+ [JsonIgnore]
+ [STJS.JsonIgnore]
+ internal SetTracker SetTracker { get; } = new SetTracker();
+
///
- /// The number of accounts that can be linked in this Session.
+ /// The number of accounts that can be linked in this Session. Pass an empty value to allow
+ /// any number of accounts.
///
- [JsonProperty("accounts")]
+ [JsonProperty("accounts", NullValueHandling = NullValueHandling.Ignore)]
[STJS.JsonPropertyName("accounts")]
- public long? Accounts { get; set; }
+ [STJS.JsonIgnore(Condition = STJS.JsonIgnoreCondition.WhenWritingNull)]
+ public long? Accounts
+ {
+ get => this.accounts;
+ set
+ {
+ this.accounts = value;
+ this.SetTracker.Track();
+ }
+ }
+
+ bool IHasSetTracking.IsPropertySet(string propertyName)
+ {
+ return this.SetTracker.IsSet(propertyName);
+ }
}
}
diff --git a/src/Stripe.net/Services/InvoiceLineItems/InvoiceLineItemUpdateOptions.cs b/src/Stripe.net/Services/InvoiceLineItems/InvoiceLineItemUpdateOptions.cs
index d8028d4431..d5032d0287 100644
--- a/src/Stripe.net/Services/InvoiceLineItems/InvoiceLineItemUpdateOptions.cs
+++ b/src/Stripe.net/Services/InvoiceLineItems/InvoiceLineItemUpdateOptions.cs
@@ -147,7 +147,7 @@ public Dictionary Metadata
public decimal? QuantityDecimal { get; set; }
///
- /// A list of up to 10 tax amounts for this line item. This can be useful if you calculate
+ /// A list of up to 20 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
/// any line item has tax_rates
diff --git a/src/Stripe.net/Services/Invoices/InvoiceLineOptions.cs b/src/Stripe.net/Services/Invoices/InvoiceLineOptions.cs
index 2040bf7112..6f13e7be1e 100644
--- a/src/Stripe.net/Services/Invoices/InvoiceLineOptions.cs
+++ b/src/Stripe.net/Services/Invoices/InvoiceLineOptions.cs
@@ -175,7 +175,7 @@ public Dictionary Metadata
public decimal? QuantityDecimal { get; set; }
///
- /// A list of up to 10 tax amounts for this line item. This can be useful if you calculate
+ /// A list of up to 20 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
/// any line item has tax_rates
diff --git a/src/Stripe.net/Services/Invoices/InvoicePaymentSettingsOptions.cs b/src/Stripe.net/Services/Invoices/InvoicePaymentSettingsOptions.cs
index 0d1fca14fc..360210c6e5 100644
--- a/src/Stripe.net/Services/Invoices/InvoicePaymentSettingsOptions.cs
+++ b/src/Stripe.net/Services/Invoices/InvoicePaymentSettingsOptions.cs
@@ -57,8 +57,9 @@ public string DefaultMandate
/// kr_card, link, momo, multibanco, naver_pay,
/// nz_bank_account, p24, pay_by_bank, payco, paynow,
/// paypal, payto, pix, promptpay, revolut_pay,
- /// sepa_credit_transfer, sepa_debit, sofort, stripe_balance,
- /// swish, twint, upi, us_bank_account, or wechat_pay.
+ /// satispay, sepa_credit_transfer, sepa_debit, sofort,
+ /// stripe_balance, swish, twint, upi, us_bank_account,
+ /// or wechat_pay.
///
[JsonProperty("payment_method_types", NullValueHandling = NullValueHandling.Ignore)]
[STJS.JsonPropertyName("payment_method_types")]
diff --git a/src/Stripe.net/Services/Invoices/InvoiceSubscriptionDetailsItemOptions.cs b/src/Stripe.net/Services/Invoices/InvoiceSubscriptionDetailsItemOptions.cs
index 22a9078af5..2bbd2a9034 100644
--- a/src/Stripe.net/Services/Invoices/InvoiceSubscriptionDetailsItemOptions.cs
+++ b/src/Stripe.net/Services/Invoices/InvoiceSubscriptionDetailsItemOptions.cs
@@ -75,7 +75,10 @@ public List Discounts
}
///
- /// Subscription item to update.
+ /// Subscription item to update. If you omit id, the API adds a new subscription item
+ /// rather than updating the existing one. See Changing a
+ /// subscription's price.
///
[JsonProperty("id")]
[STJS.JsonPropertyName("id")]
diff --git a/src/Stripe.net/Services/Invoices/InvoiceSubscriptionDetailsOptions.cs b/src/Stripe.net/Services/Invoices/InvoiceSubscriptionDetailsOptions.cs
index 81f7cfe299..c56c239336 100644
--- a/src/Stripe.net/Services/Invoices/InvoiceSubscriptionDetailsOptions.cs
+++ b/src/Stripe.net/Services/Invoices/InvoiceSubscriptionDetailsOptions.cs
@@ -115,6 +115,20 @@ public List DefaultTaxRates
[STJS.JsonPropertyName("items")]
public List Items { get; set; }
+ ///
+ /// Previews the invoice that would be generated when pausing the subscription. Passing an
+ /// empty hash won't preview pausing and instead returns the next invoice.
+ ///
+ /// To receive a preview invoice, set invoicing_behavior to invoice. A preview
+ /// isn't available if the bill_for options produce no billable amounts.
+ ///
+ /// pending_invoice_item never has a preview available because pausing wouldn't
+ /// generate an invoice, and paused subscriptions don't generate invoices either.
+ ///
+ [JsonProperty("pause")]
+ [STJS.JsonPropertyName("pause")]
+ public InvoiceSubscriptionDetailsPauseOptions Pause { get; set; }
+
///
/// The pre-billing to apply to the subscription as a preview.
///
diff --git a/src/Stripe.net/Services/Invoices/InvoiceSubscriptionDetailsPauseBillForOptions.cs b/src/Stripe.net/Services/Invoices/InvoiceSubscriptionDetailsPauseBillForOptions.cs
new file mode 100644
index 0000000000..ebe4f72e1b
--- /dev/null
+++ b/src/Stripe.net/Services/Invoices/InvoiceSubscriptionDetailsPauseBillForOptions.cs
@@ -0,0 +1,27 @@
+// 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 InvoiceSubscriptionDetailsPauseBillForOptions : INestedOptions
+ {
+ ///
+ /// Controls when to bill for metered usage in the current period. Defaults to { type:
+ /// "now" }.
+ ///
+ [JsonProperty("outstanding_usage_through")]
+ [STJS.JsonPropertyName("outstanding_usage_through")]
+ public InvoiceSubscriptionDetailsPauseBillForOutstandingUsageThroughOptions OutstandingUsageThrough { get; set; }
+
+ ///
+ /// Controls when to credit for unused time on licensed items. Defaults to { type: "now"
+ /// }.
+ ///
+ [JsonProperty("unused_time_from")]
+ [STJS.JsonPropertyName("unused_time_from")]
+ public InvoiceSubscriptionDetailsPauseBillForUnusedTimeFromOptions UnusedTimeFrom { get; set; }
+ }
+}
diff --git a/src/Stripe.net/Services/Invoices/InvoiceSubscriptionDetailsPauseBillForOutstandingUsageThroughOptions.cs b/src/Stripe.net/Services/Invoices/InvoiceSubscriptionDetailsPauseBillForOutstandingUsageThroughOptions.cs
new file mode 100644
index 0000000000..f060ae7f89
--- /dev/null
+++ b/src/Stripe.net/Services/Invoices/InvoiceSubscriptionDetailsPauseBillForOutstandingUsageThroughOptions.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 InvoiceSubscriptionDetailsPauseBillForOutstandingUsageThroughOptions : INestedOptions
+ {
+ ///
+ /// When to bill metered usage in the current period.
+ /// One of: none, or now.
+ ///
+ [JsonProperty("type")]
+ [STJS.JsonPropertyName("type")]
+ public string Type { get; set; }
+ }
+}
diff --git a/src/Stripe.net/Services/Invoices/InvoiceSubscriptionDetailsPauseBillForUnusedTimeFromOptions.cs b/src/Stripe.net/Services/Invoices/InvoiceSubscriptionDetailsPauseBillForUnusedTimeFromOptions.cs
new file mode 100644
index 0000000000..c754cb5463
--- /dev/null
+++ b/src/Stripe.net/Services/Invoices/InvoiceSubscriptionDetailsPauseBillForUnusedTimeFromOptions.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 InvoiceSubscriptionDetailsPauseBillForUnusedTimeFromOptions : INestedOptions
+ {
+ ///
+ /// When to credit for unused time.
+ /// One of: item_current_period_start, none, or now.
+ ///
+ [JsonProperty("type")]
+ [STJS.JsonPropertyName("type")]
+ public string Type { get; set; }
+ }
+}
diff --git a/src/Stripe.net/Services/Invoices/InvoiceSubscriptionDetailsPauseOptions.cs b/src/Stripe.net/Services/Invoices/InvoiceSubscriptionDetailsPauseOptions.cs
new file mode 100644
index 0000000000..d430651370
--- /dev/null
+++ b/src/Stripe.net/Services/Invoices/InvoiceSubscriptionDetailsPauseOptions.cs
@@ -0,0 +1,34 @@
+// 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 InvoiceSubscriptionDetailsPauseOptions : INestedOptions
+ {
+ ///
+ /// Controls what to bill for when pausing the subscription.
+ ///
+ [JsonProperty("bill_for")]
+ [STJS.JsonPropertyName("bill_for")]
+ public InvoiceSubscriptionDetailsPauseBillForOptions BillFor { get; set; }
+
+ ///
+ /// Determines how to handle debits and credits when pausing. Defaults to
+ /// pending_invoice_item.
+ /// One of: invoice, or pending_invoice_item.
+ ///
+ [JsonProperty("invoicing_behavior")]
+ [STJS.JsonPropertyName("invoicing_behavior")]
+ public string InvoicingBehavior { get; set; }
+
+ ///
+ /// The type of pause to apply. Defaults to subscription.
+ ///
+ [JsonProperty("type")]
+ [STJS.JsonPropertyName("type")]
+ public string Type { get; set; }
+ }
+}
diff --git a/src/Stripe.net/Services/Orders/OrderPaymentSettingsPaymentMethodOptionsWechatPayOptions.cs b/src/Stripe.net/Services/Orders/OrderPaymentSettingsPaymentMethodOptionsWechatPayOptions.cs
index b1fbafb0c9..4fd67d91e5 100644
--- a/src/Stripe.net/Services/Orders/OrderPaymentSettingsPaymentMethodOptionsWechatPayOptions.cs
+++ b/src/Stripe.net/Services/Orders/OrderPaymentSettingsPaymentMethodOptionsWechatPayOptions.cs
@@ -9,7 +9,8 @@ namespace Stripe
public class OrderPaymentSettingsPaymentMethodOptionsWechatPayOptions : INestedOptions
{
///
- /// The app ID registered with WeChat Pay. Only required when client is ios or android.
+ /// The app ID registered with WeChat Pay. Only required when client is ios, android, or
+ /// mini_program.
///
[JsonProperty("app_id")]
[STJS.JsonPropertyName("app_id")]
diff --git a/src/Stripe.net/Services/PaymentAttemptRecords/PaymentAttemptRecordReportFailedOptions.cs b/src/Stripe.net/Services/PaymentAttemptRecords/PaymentAttemptRecordReportFailedOptions.cs
index d420717068..72db64ec9b 100644
--- a/src/Stripe.net/Services/PaymentAttemptRecords/PaymentAttemptRecordReportFailedOptions.cs
+++ b/src/Stripe.net/Services/PaymentAttemptRecords/PaymentAttemptRecordReportFailedOptions.cs
@@ -58,6 +58,13 @@ public Dictionary Metadata
[STJS.JsonPropertyName("payment_evaluations")]
public List PaymentEvaluations { get; set; }
+ ///
+ /// Information about the Payment Method debited for this payment.
+ ///
+ [JsonProperty("payment_method_details")]
+ [STJS.JsonPropertyName("payment_method_details")]
+ public PaymentAttemptRecordPaymentMethodDetailsOptions PaymentMethodDetails { get; set; }
+
///
/// Processor information for this payment.
///
diff --git a/src/Stripe.net/Services/PaymentAttemptRecords/PaymentAttemptRecordReportRefundOptions.cs b/src/Stripe.net/Services/PaymentAttemptRecords/PaymentAttemptRecordReportRefundOptions.cs
index 28f834305a..d7fb6e0bf4 100644
--- a/src/Stripe.net/Services/PaymentAttemptRecords/PaymentAttemptRecordReportRefundOptions.cs
+++ b/src/Stripe.net/Services/PaymentAttemptRecords/PaymentAttemptRecordReportRefundOptions.cs
@@ -72,6 +72,15 @@ public Dictionary Metadata
[STJS.JsonPropertyName("processor_details")]
public PaymentAttemptRecordProcessorDetailsOptions ProcessorDetails { get; set; }
+ ///
+ /// The reason for the refund. One of duplicate, fraudulent, or
+ /// requested_by_customer.
+ /// One of: duplicate, fraudulent, or requested_by_customer.
+ ///
+ [JsonProperty("reason")]
+ [STJS.JsonPropertyName("reason")]
+ public string Reason { get; set; }
+
///
/// A key to group refunds together.
///
diff --git a/src/Stripe.net/Services/PaymentIntents/PaymentIntentPaymentMethodDataOptions.cs b/src/Stripe.net/Services/PaymentIntents/PaymentIntentPaymentMethodDataOptions.cs
index fd33e1ba4a..6c38c3dff7 100644
--- a/src/Stripe.net/Services/PaymentIntents/PaymentIntentPaymentMethodDataOptions.cs
+++ b/src/Stripe.net/Services/PaymentIntents/PaymentIntentPaymentMethodDataOptions.cs
@@ -494,8 +494,8 @@ public class PaymentIntentPaymentMethodDataOptions : INestedOptions, IHasMetadat
public PaymentIntentPaymentMethodDataStripeBalanceOptions StripeBalance { get; set; }
///
- /// If this is a Sunbit PaymentMethod, this hash contains details about the Sunbit payment
- /// method.
+ /// If this is a sunbit PaymentMethod, this hash contains details about the Sunbit
+ /// payment method.
///
[JsonProperty("sunbit")]
[STJS.JsonPropertyName("sunbit")]
diff --git a/src/Stripe.net/Services/PaymentIntents/PaymentIntentPaymentMethodOptionsCryptoAmountReconciliationOptions.cs b/src/Stripe.net/Services/PaymentIntents/PaymentIntentPaymentMethodOptionsCryptoAmountReconciliationOptions.cs
new file mode 100644
index 0000000000..ba80440224
--- /dev/null
+++ b/src/Stripe.net/Services/PaymentIntents/PaymentIntentPaymentMethodOptionsCryptoAmountReconciliationOptions.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 PaymentIntentPaymentMethodOptionsCryptoAmountReconciliationOptions : INestedOptions
+ {
+ ///
+ /// Controls how crypto funding amounts are reconciled for the PaymentIntent.
+ /// One of: accept_partial_funding, or exact.
+ ///
+ [JsonProperty("type")]
+ [STJS.JsonPropertyName("type")]
+ public string Type { get; set; }
+ }
+}
diff --git a/src/Stripe.net/Services/PaymentIntents/PaymentIntentPaymentMethodOptionsCryptoOptions.cs b/src/Stripe.net/Services/PaymentIntents/PaymentIntentPaymentMethodOptionsCryptoOptions.cs
index 8286d62163..0adb8bfb3c 100644
--- a/src/Stripe.net/Services/PaymentIntents/PaymentIntentPaymentMethodOptionsCryptoOptions.cs
+++ b/src/Stripe.net/Services/PaymentIntents/PaymentIntentPaymentMethodOptionsCryptoOptions.cs
@@ -8,6 +8,13 @@ namespace Stripe
[STJS.JsonConverter(typeof(STJStripeOptionsConverter))]
public class PaymentIntentPaymentMethodOptionsCryptoOptions : INestedOptions
{
+ ///
+ /// Controls how crypto funding amounts are reconciled for this PaymentIntent.
+ ///
+ [JsonProperty("amount_reconciliation")]
+ [STJS.JsonPropertyName("amount_reconciliation")]
+ public PaymentIntentPaymentMethodOptionsCryptoAmountReconciliationOptions AmountReconciliation { get; set; }
+
///
/// Specific configuration for this PaymentIntent when the mode is deposit.
///
diff --git a/src/Stripe.net/Services/PaymentIntents/PaymentIntentPaymentMethodOptionsOptions.cs b/src/Stripe.net/Services/PaymentIntents/PaymentIntentPaymentMethodOptionsOptions.cs
index 93def7d61b..d4d4eeb72e 100644
--- a/src/Stripe.net/Services/PaymentIntents/PaymentIntentPaymentMethodOptionsOptions.cs
+++ b/src/Stripe.net/Services/PaymentIntents/PaymentIntentPaymentMethodOptionsOptions.cs
@@ -64,6 +64,7 @@ public class PaymentIntentPaymentMethodOptionsOptions : INestedOptions, IHasSetT
private PaymentIntentPaymentMethodOptionsShopeepayOptions shopeepay;
private PaymentIntentPaymentMethodOptionsSofortOptions sofort;
private PaymentIntentPaymentMethodOptionsStripeBalanceOptions stripeBalance;
+ private PaymentIntentPaymentMethodOptionsSunbitOptions sunbit;
private PaymentIntentPaymentMethodOptionsSwishOptions swish;
private PaymentIntentPaymentMethodOptionsTwintOptions twint;
private PaymentIntentPaymentMethodOptionsUpiOptions upi;
@@ -1034,6 +1035,23 @@ public PaymentIntentPaymentMethodOptionsStripeBalanceOptions StripeBalance
}
}
+ ///
+ /// If this is a sunbit PaymentMethod, this sub-hash contains details about the
+ /// Sunbit payment method options.
+ ///
+ [JsonProperty("sunbit", NullValueHandling = NullValueHandling.Ignore)]
+ [STJS.JsonPropertyName("sunbit")]
+ [STJS.JsonIgnore(Condition = STJS.JsonIgnoreCondition.WhenWritingNull)]
+ public PaymentIntentPaymentMethodOptionsSunbitOptions Sunbit
+ {
+ get => this.sunbit;
+ set
+ {
+ this.sunbit = value;
+ this.SetTracker.Track();
+ }
+ }
+
///
/// If this is a Swish PaymentMethod, this sub-hash contains details about the Swish
/// payment method options.
diff --git a/src/Stripe.net/Services/PaymentIntents/PaymentIntentPaymentMethodOptionsSatispayOptions.cs b/src/Stripe.net/Services/PaymentIntents/PaymentIntentPaymentMethodOptionsSatispayOptions.cs
index 582e277a09..e1a867e138 100644
--- a/src/Stripe.net/Services/PaymentIntents/PaymentIntentPaymentMethodOptionsSatispayOptions.cs
+++ b/src/Stripe.net/Services/PaymentIntents/PaymentIntentPaymentMethodOptionsSatispayOptions.cs
@@ -9,6 +9,7 @@ namespace Stripe
public class PaymentIntentPaymentMethodOptionsSatispayOptions : INestedOptions, IHasSetTracking
{
private string captureMethod;
+ private string setupFutureUsage;
[JsonIgnore]
[STJS.JsonIgnore]
@@ -37,6 +38,40 @@ public string CaptureMethod
}
}
+ ///
+ /// 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", NullValueHandling = NullValueHandling.Ignore)]
+ [STJS.JsonPropertyName("setup_future_usage")]
+ [STJS.JsonIgnore(Condition = STJS.JsonIgnoreCondition.WhenWritingNull)]
+ public string SetupFutureUsage
+ {
+ get => this.setupFutureUsage;
+ set
+ {
+ this.setupFutureUsage = value;
+ this.SetTracker.Track();
+ }
+ }
+
bool IHasSetTracking.IsPropertySet(string propertyName)
{
return this.SetTracker.IsSet(propertyName);
diff --git a/src/Stripe.net/Services/PaymentIntents/PaymentIntentPaymentMethodOptionsSunbitOptions.cs b/src/Stripe.net/Services/PaymentIntents/PaymentIntentPaymentMethodOptionsSunbitOptions.cs
new file mode 100644
index 0000000000..ecbe3d30fb
--- /dev/null
+++ b/src/Stripe.net/Services/PaymentIntents/PaymentIntentPaymentMethodOptionsSunbitOptions.cs
@@ -0,0 +1,69 @@
+// 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 PaymentIntentPaymentMethodOptionsSunbitOptions : INestedOptions, IHasSetTracking
+ {
+ private string captureMethod;
+
+ [JsonIgnore]
+ [STJS.JsonIgnore]
+ internal SetTracker SetTracker { get; } = new SetTracker();
+
+ ///
+ /// Controls when the funds are captured from the customer's account.
+ ///
+ /// If provided, this parameter overrides the behavior of the top-level capture_method
+ /// for this payment method type when finalizing the payment with this payment method type.
+ ///
+ /// If capture_method is already set on the PaymentIntent, providing an empty value
+ /// for this parameter unsets the stored value for this payment method type.
+ ///
+ [JsonProperty("capture_method", NullValueHandling = NullValueHandling.Ignore)]
+ [STJS.JsonPropertyName("capture_method")]
+ [STJS.JsonIgnore(Condition = STJS.JsonIgnoreCondition.WhenWritingNull)]
+ public string CaptureMethod
+ {
+ get => this.captureMethod;
+ set
+ {
+ this.captureMethod = value;
+ this.SetTracker.Track();
+ }
+ }
+
+ ///
+ /// 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; }
+
+ bool IHasSetTracking.IsPropertySet(string propertyName)
+ {
+ return this.SetTracker.IsSet(propertyName);
+ }
+ }
+}
diff --git a/src/Stripe.net/Services/PaymentIntents/PaymentIntentPaymentMethodOptionsWechatPayOptions.cs b/src/Stripe.net/Services/PaymentIntents/PaymentIntentPaymentMethodOptionsWechatPayOptions.cs
index d602aa3812..3f9f0e69f5 100644
--- a/src/Stripe.net/Services/PaymentIntents/PaymentIntentPaymentMethodOptionsWechatPayOptions.cs
+++ b/src/Stripe.net/Services/PaymentIntents/PaymentIntentPaymentMethodOptionsWechatPayOptions.cs
@@ -9,7 +9,8 @@ namespace Stripe
public class PaymentIntentPaymentMethodOptionsWechatPayOptions : INestedOptions
{
///
- /// The app ID registered with WeChat Pay. Only required when client is ios or android.
+ /// The app ID registered with WeChat Pay. Only required when client is ios, android, or
+ /// mini_program.
///
[JsonProperty("app_id")]
[STJS.JsonPropertyName("app_id")]
diff --git a/src/Stripe.net/Services/PaymentLinks/PaymentLinkCreateOptions.cs b/src/Stripe.net/Services/PaymentLinks/PaymentLinkCreateOptions.cs
index 1534c5a600..300089e737 100644
--- a/src/Stripe.net/Services/PaymentLinks/PaymentLinkCreateOptions.cs
+++ b/src/Stripe.net/Services/PaymentLinks/PaymentLinkCreateOptions.cs
@@ -204,6 +204,9 @@ public class PaymentLinkCreateOptions : BaseOptions, IHasMetadata
[STJS.JsonPropertyName("payment_method_collection")]
public string PaymentMethodCollection { get; set; }
+ ///
+ /// Payment-method-specific configuration.
+ ///
[JsonProperty("payment_method_options")]
[STJS.JsonPropertyName("payment_method_options")]
public PaymentLinkPaymentMethodOptionsOptions PaymentMethodOptions { get; set; }
diff --git a/src/Stripe.net/Services/PaymentMethods/PaymentMethodCreateOptions.cs b/src/Stripe.net/Services/PaymentMethods/PaymentMethodCreateOptions.cs
index f97fb5d4a2..c64ade47b0 100644
--- a/src/Stripe.net/Services/PaymentMethods/PaymentMethodCreateOptions.cs
+++ b/src/Stripe.net/Services/PaymentMethods/PaymentMethodCreateOptions.cs
@@ -522,8 +522,8 @@ public class PaymentMethodCreateOptions : BaseOptions, IHasMetadata
public PaymentMethodStripeBalanceOptions StripeBalance { get; set; }
///
- /// If this is a Sunbit PaymentMethod, this hash contains details about the Sunbit payment
- /// method.
+ /// If this is a sunbit PaymentMethod, this hash contains details about the Sunbit
+ /// payment method.
///
[JsonProperty("sunbit")]
[STJS.JsonPropertyName("sunbit")]
diff --git a/src/Stripe.net/Services/PaymentRecords/PaymentRecordReportPaymentAttemptFailedOptions.cs b/src/Stripe.net/Services/PaymentRecords/PaymentRecordReportPaymentAttemptFailedOptions.cs
index 9c459d9c4b..7f7ff394de 100644
--- a/src/Stripe.net/Services/PaymentRecords/PaymentRecordReportPaymentAttemptFailedOptions.cs
+++ b/src/Stripe.net/Services/PaymentRecords/PaymentRecordReportPaymentAttemptFailedOptions.cs
@@ -58,6 +58,13 @@ public Dictionary Metadata
[STJS.JsonPropertyName("payment_evaluations")]
public List PaymentEvaluations { get; set; }
+ ///
+ /// Information about the Payment Method debited for this payment.
+ ///
+ [JsonProperty("payment_method_details")]
+ [STJS.JsonPropertyName("payment_method_details")]
+ public PaymentRecordPaymentMethodDetailsOptions PaymentMethodDetails { get; set; }
+
///
/// Processor information for this payment.
///
diff --git a/src/Stripe.net/Services/PaymentRecords/PaymentRecordReportRefundOptions.cs b/src/Stripe.net/Services/PaymentRecords/PaymentRecordReportRefundOptions.cs
index 8152105d09..ed0200930b 100644
--- a/src/Stripe.net/Services/PaymentRecords/PaymentRecordReportRefundOptions.cs
+++ b/src/Stripe.net/Services/PaymentRecords/PaymentRecordReportRefundOptions.cs
@@ -72,6 +72,15 @@ public Dictionary Metadata
[STJS.JsonPropertyName("processor_details")]
public PaymentRecordProcessorDetailsOptions ProcessorDetails { get; set; }
+ ///
+ /// The reason for the refund. One of duplicate, fraudulent, or
+ /// requested_by_customer.
+ /// One of: duplicate, fraudulent, or requested_by_customer.
+ ///
+ [JsonProperty("reason")]
+ [STJS.JsonPropertyName("reason")]
+ public string Reason { get; set; }
+
///
/// A key to group refunds together.
///
diff --git a/src/Stripe.net/Services/SetupIntents/SetupIntentPaymentMethodDataOptions.cs b/src/Stripe.net/Services/SetupIntents/SetupIntentPaymentMethodDataOptions.cs
index e9942fea7f..ce8624ea56 100644
--- a/src/Stripe.net/Services/SetupIntents/SetupIntentPaymentMethodDataOptions.cs
+++ b/src/Stripe.net/Services/SetupIntents/SetupIntentPaymentMethodDataOptions.cs
@@ -494,8 +494,8 @@ public class SetupIntentPaymentMethodDataOptions : INestedOptions, IHasMetadata
public SetupIntentPaymentMethodDataStripeBalanceOptions StripeBalance { get; set; }
///
- /// If this is a Sunbit PaymentMethod, this hash contains details about the Sunbit payment
- /// method.
+ /// If this is a sunbit PaymentMethod, this hash contains details about the Sunbit
+ /// payment method.
///
[JsonProperty("sunbit")]
[STJS.JsonPropertyName("sunbit")]
diff --git a/src/Stripe.net/Services/Subscriptions/SubscriptionInvoiceSettingsCustomFieldOptions.cs b/src/Stripe.net/Services/Subscriptions/SubscriptionInvoiceSettingsCustomFieldOptions.cs
new file mode 100644
index 0000000000..b1f4e47b24
--- /dev/null
+++ b/src/Stripe.net/Services/Subscriptions/SubscriptionInvoiceSettingsCustomFieldOptions.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 SubscriptionInvoiceSettingsCustomFieldOptions : INestedOptions
+ {
+ ///
+ /// The name of the custom field. This may be up to 40 characters.
+ ///
+ [JsonProperty("name")]
+ [STJS.JsonPropertyName("name")]
+ public string Name { get; set; }
+
+ ///
+ /// The value of the custom field. This may be up to 140 characters.
+ ///
+ [JsonProperty("value")]
+ [STJS.JsonPropertyName("value")]
+ public string Value { get; set; }
+ }
+}
diff --git a/src/Stripe.net/Services/Subscriptions/SubscriptionInvoiceSettingsOptions.cs b/src/Stripe.net/Services/Subscriptions/SubscriptionInvoiceSettingsOptions.cs
index f1eedb1452..70947f676d 100644
--- a/src/Stripe.net/Services/Subscriptions/SubscriptionInvoiceSettingsOptions.cs
+++ b/src/Stripe.net/Services/Subscriptions/SubscriptionInvoiceSettingsOptions.cs
@@ -10,6 +10,7 @@ namespace Stripe
public class SubscriptionInvoiceSettingsOptions : INestedOptions, IHasSetTracking
{
private List accountTaxIds;
+ private List customFields;
[JsonIgnore]
[STJS.JsonIgnore]
@@ -32,6 +33,36 @@ public List AccountTaxIds
}
}
+ ///
+ /// A list of up to 4 custom fields to be displayed on the invoice.
+ ///
+ [JsonProperty("custom_fields", NullValueHandling = NullValueHandling.Ignore)]
+ [STJS.JsonPropertyName("custom_fields")]
+ [STJS.JsonIgnore(Condition = STJS.JsonIgnoreCondition.WhenWritingNull)]
+ public List CustomFields
+ {
+ get => this.customFields;
+ set
+ {
+ this.customFields = value;
+ this.SetTracker.Track();
+ }
+ }
+
+ ///
+ /// An arbitrary string attached to the object. Often useful for displaying to users.
+ ///
+ [JsonProperty("description")]
+ [STJS.JsonPropertyName("description")]
+ public string Description { get; set; }
+
+ ///
+ /// Footer to be displayed on the invoice.
+ ///
+ [JsonProperty("footer")]
+ [STJS.JsonPropertyName("footer")]
+ public string Footer { get; set; }
+
///
/// The connected account that issues the invoice. The invoice is presented with the
/// branding and support information of the specified account.
diff --git a/src/Stripe.net/Services/Subscriptions/SubscriptionItemOptions.cs b/src/Stripe.net/Services/Subscriptions/SubscriptionItemOptions.cs
index 0be0dc8b85..fb4a8e4319 100644
--- a/src/Stripe.net/Services/Subscriptions/SubscriptionItemOptions.cs
+++ b/src/Stripe.net/Services/Subscriptions/SubscriptionItemOptions.cs
@@ -74,7 +74,10 @@ public List Discounts
}
///
- /// Subscription item to update.
+ /// Subscription item to update. If you omit id, the API adds a new subscription item
+ /// rather than updating the existing one. See Changing a
+ /// subscription's price.
///
[JsonProperty("id")]
[STJS.JsonPropertyName("id")]
diff --git a/src/Stripe.net/Services/Subscriptions/SubscriptionPauseOptions.cs b/src/Stripe.net/Services/Subscriptions/SubscriptionPauseOptions.cs
index 4116bdcfdd..aeb72edff3 100644
--- a/src/Stripe.net/Services/Subscriptions/SubscriptionPauseOptions.cs
+++ b/src/Stripe.net/Services/Subscriptions/SubscriptionPauseOptions.cs
@@ -16,7 +16,7 @@ public class SubscriptionPauseOptions : BaseOptions
public SubscriptionBillForOptions BillFor { get; set; }
///
- /// Determines how to handle debits and credits when pausing. The default is
+ /// Determines how to handle debits and credits when pausing. Defaults to
/// pending_invoice_item.
/// One of: invoice, or pending_invoice_item.
///
diff --git a/src/Stripe.net/Services/Subscriptions/SubscriptionPaymentSettingsOptions.cs b/src/Stripe.net/Services/Subscriptions/SubscriptionPaymentSettingsOptions.cs
index 783cf4ed4b..a7ab09f521 100644
--- a/src/Stripe.net/Services/Subscriptions/SubscriptionPaymentSettingsOptions.cs
+++ b/src/Stripe.net/Services/Subscriptions/SubscriptionPaymentSettingsOptions.cs
@@ -39,8 +39,9 @@ public class SubscriptionPaymentSettingsOptions : INestedOptions, IHasSetTrackin
/// kr_card, link, momo, multibanco, naver_pay,
/// nz_bank_account, p24, pay_by_bank, payco, paynow,
/// paypal, payto, pix, promptpay, revolut_pay,
- /// sepa_credit_transfer, sepa_debit, sofort, stripe_balance,
- /// swish, twint, upi, us_bank_account, or wechat_pay.
+ /// satispay, sepa_credit_transfer, sepa_debit, sofort,
+ /// stripe_balance, swish, twint, upi, us_bank_account,
+ /// or wechat_pay.
///
[JsonProperty("payment_method_types", NullValueHandling = NullValueHandling.Ignore)]
[STJS.JsonPropertyName("payment_method_types")]
diff --git a/src/Stripe.net/Services/Subscriptions/SubscriptionService.cs b/src/Stripe.net/Services/Subscriptions/SubscriptionService.cs
index df44f138c4..b5ab02eef9 100644
--- a/src/Stripe.net/Services/Subscriptions/SubscriptionService.cs
+++ b/src/Stripe.net/Services/Subscriptions/SubscriptionService.cs
@@ -62,7 +62,7 @@ public virtual Task AttachCadenceAsync(string id, SubscriptionAtta
/// 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
- /// both set to true.
.
+ /// both set to false..
///
///
By default, upon subscription cancellation, Stripe stops automatic collection of all
/// finalized invoices for the customer. This is intended to prevent unexpected payment
@@ -88,7 +88,7 @@ public virtual Subscription Cancel(string id, SubscriptionCancelOptions options
/// 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
- /// both set to true.
.
+ /// both set to false..
///
///
By default, upon subscription cancellation, Stripe stops automatic collection of all
/// finalized invoices for the customer. This is intended to prevent unexpected payment
diff --git a/src/Stripe.net/Services/TestHelpers/ConfirmationTokens/ConfirmationTokenPaymentMethodDataOptions.cs b/src/Stripe.net/Services/TestHelpers/ConfirmationTokens/ConfirmationTokenPaymentMethodDataOptions.cs
index c774f140ae..1850414b15 100644
--- a/src/Stripe.net/Services/TestHelpers/ConfirmationTokens/ConfirmationTokenPaymentMethodDataOptions.cs
+++ b/src/Stripe.net/Services/TestHelpers/ConfirmationTokens/ConfirmationTokenPaymentMethodDataOptions.cs
@@ -494,8 +494,8 @@ public class ConfirmationTokenPaymentMethodDataOptions : INestedOptions, IHasMet
public ConfirmationTokenPaymentMethodDataStripeBalanceOptions StripeBalance { get; set; }
///
- /// If this is a Sunbit PaymentMethod, this hash contains details about the Sunbit payment
- /// method.
+ /// If this is a sunbit PaymentMethod, this hash contains details about the Sunbit
+ /// payment method.
///
[JsonProperty("sunbit")]
[STJS.JsonPropertyName("sunbit")]
diff --git a/src/Stripe.net/Services/Topups/TopupCreateOptions.cs b/src/Stripe.net/Services/Topups/TopupCreateOptions.cs
index a6d172a431..0019c9444e 100644
--- a/src/Stripe.net/Services/Topups/TopupCreateOptions.cs
+++ b/src/Stripe.net/Services/Topups/TopupCreateOptions.cs
@@ -53,6 +53,21 @@ public Dictionary Metadata
}
}
+ ///
+ /// The ID of a PaymentMethod representing the payment method to be used for the top-up. A
+ /// PaymentMethod of type us_bank_account can be used.
+ ///
+ [JsonProperty("payment_method")]
+ [STJS.JsonPropertyName("payment_method")]
+ public string PaymentMethod { get; set; }
+
+ ///
+ /// Payment method-specific configuration for this top-up.
+ ///
+ [JsonProperty("payment_method_options")]
+ [STJS.JsonPropertyName("payment_method_options")]
+ public TopupPaymentMethodOptionsOptions PaymentMethodOptions { get; set; }
+
///
/// The ID of a source to transfer funds from. For most users, this should be left
/// unspecified which will use the bank account that was set up in the dashboard for the
diff --git a/src/Stripe.net/Services/Topups/TopupPaymentMethodOptionsOptions.cs b/src/Stripe.net/Services/Topups/TopupPaymentMethodOptionsOptions.cs
new file mode 100644
index 0000000000..43b34a97ea
--- /dev/null
+++ b/src/Stripe.net/Services/Topups/TopupPaymentMethodOptionsOptions.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(STJStripeOptionsConverter))]
+ public class TopupPaymentMethodOptionsOptions : INestedOptions
+ {
+ [JsonProperty("us_bank_account")]
+ [STJS.JsonPropertyName("us_bank_account")]
+ public TopupPaymentMethodOptionsUsBankAccountOptions UsBankAccount { get; set; }
+ }
+}
diff --git a/src/Stripe.net/Services/Topups/TopupPaymentMethodOptionsUsBankAccountOptions.cs b/src/Stripe.net/Services/Topups/TopupPaymentMethodOptionsUsBankAccountOptions.cs
new file mode 100644
index 0000000000..3cbe5bad14
--- /dev/null
+++ b/src/Stripe.net/Services/Topups/TopupPaymentMethodOptionsUsBankAccountOptions.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(STJStripeOptionsConverter))]
+ public class TopupPaymentMethodOptionsUsBankAccountOptions : INestedOptions
+ {
+ [JsonProperty("network")]
+ [STJS.JsonPropertyName("network")]
+ public string Network { get; set; }
+ }
+}
diff --git a/src/Stripe.net/Services/V1Services.cs b/src/Stripe.net/Services/V1Services.cs
index f66fac135d..c26923a44a 100644
--- a/src/Stripe.net/Services/V1Services.cs
+++ b/src/Stripe.net/Services/V1Services.cs
@@ -30,6 +30,7 @@ public class V1Services : Service
private CountrySpecService countrySpecs;
private CouponService coupons;
private CreditNoteService creditNotes;
+ private CryptoService crypto;
private CustomerService customers;
private CustomerSessionService customerSessions;
private DelegatedCheckoutService delegatedCheckout;
@@ -179,6 +180,9 @@ internal V1Services(IStripeClient client)
public virtual CreditNoteService CreditNotes => this.creditNotes ??= new CreditNoteService(
this.Requestor);
+ public virtual CryptoService Crypto => this.crypto ??= new CryptoService(
+ this.Requestor);
+
public virtual CustomerService Customers => this.customers ??= new CustomerService(
this.Requestor);
diff --git a/src/Stripe.net/Services/V2/Iam/ApiKeys/ApiKeyCreateOptions.cs b/src/Stripe.net/Services/V2/Iam/ApiKeys/ApiKeyCreateOptions.cs
index 51213d3ad0..85c16168e8 100644
--- a/src/Stripe.net/Services/V2/Iam/ApiKeys/ApiKeyCreateOptions.cs
+++ b/src/Stripe.net/Services/V2/Iam/ApiKeys/ApiKeyCreateOptions.cs
@@ -1,6 +1,8 @@
// File generated from our OpenAPI spec
namespace Stripe.V2.Iam
{
+ using System;
+ using System.Collections.Generic;
using Newtonsoft.Json;
using Stripe.Infrastructure;
using STJS = System.Text.Json.Serialization;
@@ -8,6 +10,20 @@ namespace Stripe.V2.Iam
[STJS.JsonConverter(typeof(STJStripeOptionsConverter))]
public class ApiKeyCreateOptions : BaseOptions
{
+ ///
+ /// List of connect permissions for this API key.
+ ///
+ [JsonProperty("connect_permissions")]
+ [STJS.JsonPropertyName("connect_permissions")]
+ public List ConnectPermissions { get; set; }
+
+ ///
+ /// Timestamp at which the key expires. If not provided, the key never expires.
+ ///
+ [JsonProperty("expires_at")]
+ [STJS.JsonPropertyName("expires_at")]
+ public DateTime? ExpiresAt { get; set; }
+
///
/// Name for the API key.
///
@@ -22,6 +38,13 @@ public class ApiKeyCreateOptions : BaseOptions
[STJS.JsonPropertyName("note")]
public string Note { get; set; }
+ ///
+ /// List of permissions for this API key.
+ ///
+ [JsonProperty("permissions")]
+ [STJS.JsonPropertyName("permissions")]
+ public List Permissions { get; set; }
+
///
/// Public key for encrypting the API key secret. This must a PEM-formatted RSA key suitable
/// for encryption, >= 2048 bits. A public key is required when creating secret keys.
diff --git a/src/Stripe.net/Services/V2/Iam/ApiKeys/ApiKeyUpdateOptions.cs b/src/Stripe.net/Services/V2/Iam/ApiKeys/ApiKeyUpdateOptions.cs
index 8052f968cf..8fb18be8af 100644
--- a/src/Stripe.net/Services/V2/Iam/ApiKeys/ApiKeyUpdateOptions.cs
+++ b/src/Stripe.net/Services/V2/Iam/ApiKeys/ApiKeyUpdateOptions.cs
@@ -1,6 +1,7 @@
// File generated from our OpenAPI spec
namespace Stripe.V2.Iam
{
+ using System.Collections.Generic;
using Newtonsoft.Json;
using Stripe.Infrastructure;
using STJS = System.Text.Json.Serialization;
@@ -8,6 +9,13 @@ namespace Stripe.V2.Iam
[STJS.JsonConverter(typeof(STJStripeOptionsConverter))]
public class ApiKeyUpdateOptions : BaseOptions
{
+ ///
+ /// List of connect permissions for this API key.
+ ///
+ [JsonProperty("connect_permissions")]
+ [STJS.JsonPropertyName("connect_permissions")]
+ public List ConnectPermissions { get; set; }
+
///
/// Name to set for the API key. If blank, the field is left unchanged.
///
@@ -21,5 +29,12 @@ public class ApiKeyUpdateOptions : BaseOptions
[JsonProperty("note")]
[STJS.JsonPropertyName("note")]
public string Note { get; set; }
+
+ ///
+ /// List of permissions for this API key.
+ ///
+ [JsonProperty("permissions")]
+ [STJS.JsonPropertyName("permissions")]
+ public List Permissions { get; set; }
}
}
diff --git a/src/Stripe.net/Services/V2/MoneyManagement/FinancialAccounts/FinancialAccountCreateOptions.cs b/src/Stripe.net/Services/V2/MoneyManagement/FinancialAccounts/FinancialAccountCreateOptions.cs
index 0b69e59bb2..1d316eb31f 100644
--- a/src/Stripe.net/Services/V2/MoneyManagement/FinancialAccounts/FinancialAccountCreateOptions.cs
+++ b/src/Stripe.net/Services/V2/MoneyManagement/FinancialAccounts/FinancialAccountCreateOptions.cs
@@ -33,6 +33,7 @@ public class FinancialAccountCreateOptions : BaseOptions, IHasMetadata
///
/// The type of FinancialAccount to create.
+ /// One of: credit, or storage.
///
[JsonProperty("type")]
[STJS.JsonPropertyName("type")]
diff --git a/src/Stripe.net/Services/V2/MoneyManagement/FinancialAccounts/FinancialAccountListOptions.cs b/src/Stripe.net/Services/V2/MoneyManagement/FinancialAccounts/FinancialAccountListOptions.cs
index c870e12610..ce53be7df2 100644
--- a/src/Stripe.net/Services/V2/MoneyManagement/FinancialAccounts/FinancialAccountListOptions.cs
+++ b/src/Stripe.net/Services/V2/MoneyManagement/FinancialAccounts/FinancialAccountListOptions.cs
@@ -28,8 +28,8 @@ public class FinancialAccountListOptions : V2.ListOptions
///
/// Filter for FinancialAccount type. By default, FinancialAccounts of any
/// type are returned.
- /// One of: accrued_fees, multiprocessor_settlement, payments, or
- /// storage.
+ /// One of: accrued_fees, credit, multiprocessor_settlement,
+ /// payments, or storage.
///
[JsonProperty("types")]
[STJS.JsonPropertyName("types")]
diff --git a/src/Stripe.net/Services/WebhookEndpoints/WebhookEndpointCreateOptions.cs b/src/Stripe.net/Services/WebhookEndpoints/WebhookEndpointCreateOptions.cs
index 749f5e0b08..ca6c6430e3 100644
--- a/src/Stripe.net/Services/WebhookEndpoints/WebhookEndpointCreateOptions.cs
+++ b/src/Stripe.net/Services/WebhookEndpoints/WebhookEndpointCreateOptions.cs
@@ -47,7 +47,8 @@ public class WebhookEndpointCreateOptions : BaseOptions, IHasMetadata
/// 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, 2026-02-25.clover,
- /// 2026-03-25.dahlia, 2026-04-22.dahlia, or 2026-05-27.dahlia.
+ /// 2026-03-25.dahlia, 2026-04-22.dahlia, 2026-05-27.dahlia, or
+ /// 2026-06-24.dahlia.
///
[JsonProperty("api_version")]
[STJS.JsonPropertyName("api_version")]
@@ -87,7 +88,10 @@ public string Description
/// application_fee.created, application_fee.refund.updated,
/// application_fee.refunded, balance.available,
/// balance_settings.updated, billing.alert.triggered,
- /// billing.credit_grant.created, billing_portal.configuration.created,
+ /// billing.credit_balance_transaction.created, billing.credit_grant.created,
+ /// billing.credit_grant.updated, billing.meter.created,
+ /// billing.meter.deactivated, billing.meter.reactivated,
+ /// billing.meter.updated, billing_portal.configuration.created,
/// billing_portal.configuration.updated, billing_portal.session.created,
/// capability.updated, capital.financing_offer.accepted,
/// capital.financing_offer.accepted_other_offer,
@@ -230,11 +234,8 @@ public string Description
/// treasury.outbound_transfer.returned,
/// treasury.outbound_transfer.tracking_details_updated,
/// treasury.received_credit.created, treasury.received_credit.failed,
- /// treasury.received_credit.succeeded, treasury.received_debit.created,
- /// invoice_payment.detached, billing.credit_balance_transaction.created,
- /// billing.credit_grant.updated, billing.meter.created,
- /// billing.meter.deactivated, billing.meter.reactivated,
- /// billing.meter.updated, or ping.
+ /// treasury.received_credit.succeeded, treasury.received_debit.created, or
+ /// ping.
///
[JsonProperty("enabled_events")]
[STJS.JsonPropertyName("enabled_events")]
diff --git a/src/Stripe.net/Services/WebhookEndpoints/WebhookEndpointUpdateOptions.cs b/src/Stripe.net/Services/WebhookEndpoints/WebhookEndpointUpdateOptions.cs
index 00a3398645..9ec7be9943 100644
--- a/src/Stripe.net/Services/WebhookEndpoints/WebhookEndpointUpdateOptions.cs
+++ b/src/Stripe.net/Services/WebhookEndpoints/WebhookEndpointUpdateOptions.cs
@@ -45,7 +45,10 @@ public string Description
/// application_fee.created, application_fee.refund.updated,
/// application_fee.refunded, balance.available,
/// balance_settings.updated, billing.alert.triggered,
- /// billing.credit_grant.created, billing_portal.configuration.created,
+ /// billing.credit_balance_transaction.created, billing.credit_grant.created,
+ /// billing.credit_grant.updated, billing.meter.created,
+ /// billing.meter.deactivated, billing.meter.reactivated,
+ /// billing.meter.updated, billing_portal.configuration.created,
/// billing_portal.configuration.updated, billing_portal.session.created,
/// capability.updated, capital.financing_offer.accepted,
/// capital.financing_offer.accepted_other_offer,
@@ -188,11 +191,8 @@ public string Description
/// treasury.outbound_transfer.returned,
/// treasury.outbound_transfer.tracking_details_updated,
/// treasury.received_credit.created, treasury.received_credit.failed,
- /// treasury.received_credit.succeeded, treasury.received_debit.created,
- /// invoice_payment.detached, billing.credit_balance_transaction.created,
- /// billing.credit_grant.updated, billing.meter.created,
- /// billing.meter.deactivated, billing.meter.reactivated,
- /// billing.meter.updated, or ping.
+ /// treasury.received_credit.succeeded, treasury.received_debit.created, or
+ /// ping.
///
[JsonProperty("enabled_events")]
[STJS.JsonPropertyName("enabled_events")]
diff --git a/src/StripeTests/Services/GeneratedExamplesTest.cs b/src/StripeTests/Services/GeneratedExamplesTest.cs
index 09df785614..48f436a7cf 100644
--- a/src/StripeTests/Services/GeneratedExamplesTest.cs
+++ b/src/StripeTests/Services/GeneratedExamplesTest.cs
@@ -24318,7 +24318,7 @@ public void TestV2MoneyManagementFinancialAccountPost()
"{\"object\":\"v2.money_management.financial_account\",\"balance\":{\"available\":{\"key\":{\"currency\":\"USD\",\"value\":35}},\"inbound_pending\":{\"key\":{\"currency\":\"USD\",\"value\":11}},\"outbound_pending\":{\"key\":{\"currency\":\"USD\",\"value\":60}}},\"country\":\"country\",\"created\":\"1970-01-12T21:42:34.472Z\",\"id\":\"obj_123\",\"livemode\":true,\"status\":\"closed\",\"type\":\"accrued_fees\"}");
var options = new Stripe.V2.MoneyManagement.FinancialAccountCreateOptions
{
- Type = "storage",
+ Type = "credit",
};
var client = new StripeClient(this.Requestor);
var service = client.V2.MoneyManagement.FinancialAccounts;
@@ -24339,7 +24339,7 @@ public async Task TestV2MoneyManagementFinancialAccountPostAsync()
"{\"object\":\"v2.money_management.financial_account\",\"balance\":{\"available\":{\"key\":{\"currency\":\"USD\",\"value\":35}},\"inbound_pending\":{\"key\":{\"currency\":\"USD\",\"value\":11}},\"outbound_pending\":{\"key\":{\"currency\":\"USD\",\"value\":60}}},\"country\":\"country\",\"created\":\"1970-01-12T21:42:34.472Z\",\"id\":\"obj_123\",\"livemode\":true,\"status\":\"closed\",\"type\":\"accrued_fees\"}");
var options = new Stripe.V2.MoneyManagement.FinancialAccountCreateOptions
{
- Type = "storage",
+ Type = "credit",
};
var client = new StripeClient(this.Requestor);
var service = client.V2.MoneyManagement.FinancialAccounts;
@@ -26496,7 +26496,7 @@ public void TestV2MoneyManagementTransactionGet()
HttpMethod.Get,
"/v2/money_management/transactions",
(HttpStatusCode)200,
- "{\"data\":[{\"object\":\"v2.money_management.transaction\",\"amount\":{\"currency\":\"USD\",\"value\":96},\"balance_impact\":{\"available\":{\"currency\":\"USD\",\"value\":35},\"inbound_pending\":{\"currency\":\"USD\",\"value\":11},\"outbound_pending\":{\"currency\":\"USD\",\"value\":60}},\"category\":\"inbound_transfer_reversal\",\"created\":\"1970-01-12T21:42:34.472Z\",\"financial_account\":\"financial_account\",\"id\":\"obj_123\",\"livemode\":true,\"status\":\"pending\",\"status_transitions\":{}}],\"next_page_url\":null,\"previous_page_url\":null}");
+ "{\"data\":[{\"object\":\"v2.money_management.transaction\",\"amount\":{\"currency\":\"USD\",\"value\":96},\"balance_impact\":{\"available\":{\"currency\":\"USD\",\"value\":35},\"inbound_pending\":{\"currency\":\"USD\",\"value\":11},\"outbound_pending\":{\"currency\":\"USD\",\"value\":60}},\"category\":\"platform_earning_refund\",\"created\":\"1970-01-12T21:42:34.472Z\",\"financial_account\":\"financial_account\",\"id\":\"obj_123\",\"livemode\":true,\"status\":\"pending\",\"status_transitions\":{}}],\"next_page_url\":null,\"previous_page_url\":null}");
var client = new StripeClient(this.Requestor);
var service = client.V2.MoneyManagement.Transactions;
Stripe.V2.StripeList transactions = service
@@ -26513,7 +26513,7 @@ public async Task TestV2MoneyManagementTransactionGetAsync()
HttpMethod.Get,
"/v2/money_management/transactions",
(HttpStatusCode)200,
- "{\"data\":[{\"object\":\"v2.money_management.transaction\",\"amount\":{\"currency\":\"USD\",\"value\":96},\"balance_impact\":{\"available\":{\"currency\":\"USD\",\"value\":35},\"inbound_pending\":{\"currency\":\"USD\",\"value\":11},\"outbound_pending\":{\"currency\":\"USD\",\"value\":60}},\"category\":\"inbound_transfer_reversal\",\"created\":\"1970-01-12T21:42:34.472Z\",\"financial_account\":\"financial_account\",\"id\":\"obj_123\",\"livemode\":true,\"status\":\"pending\",\"status_transitions\":{}}],\"next_page_url\":null,\"previous_page_url\":null}");
+ "{\"data\":[{\"object\":\"v2.money_management.transaction\",\"amount\":{\"currency\":\"USD\",\"value\":96},\"balance_impact\":{\"available\":{\"currency\":\"USD\",\"value\":35},\"inbound_pending\":{\"currency\":\"USD\",\"value\":11},\"outbound_pending\":{\"currency\":\"USD\",\"value\":60}},\"category\":\"platform_earning_refund\",\"created\":\"1970-01-12T21:42:34.472Z\",\"financial_account\":\"financial_account\",\"id\":\"obj_123\",\"livemode\":true,\"status\":\"pending\",\"status_transitions\":{}}],\"next_page_url\":null,\"previous_page_url\":null}");
var client = new StripeClient(this.Requestor);
var service = client.V2.MoneyManagement.Transactions;
Stripe.V2.StripeList transactions = await service
@@ -26530,7 +26530,7 @@ public void TestV2MoneyManagementTransactionGetAutoPaging()
HttpMethod.Get,
"/v2/money_management/transactions",
(HttpStatusCode)200,
- "{\"data\":[{\"object\":\"v2.money_management.transaction\",\"amount\":{\"currency\":\"USD\",\"value\":96},\"balance_impact\":{\"available\":{\"currency\":\"USD\",\"value\":35},\"inbound_pending\":{\"currency\":\"USD\",\"value\":11},\"outbound_pending\":{\"currency\":\"USD\",\"value\":60}},\"category\":\"inbound_transfer_reversal\",\"created\":\"1970-01-12T21:42:34.472Z\",\"financial_account\":\"financial_account\",\"id\":\"obj_123\",\"livemode\":true,\"status\":\"pending\",\"status_transitions\":{}}],\"next_page_url\":null,\"previous_page_url\":null}");
+ "{\"data\":[{\"object\":\"v2.money_management.transaction\",\"amount\":{\"currency\":\"USD\",\"value\":96},\"balance_impact\":{\"available\":{\"currency\":\"USD\",\"value\":35},\"inbound_pending\":{\"currency\":\"USD\",\"value\":11},\"outbound_pending\":{\"currency\":\"USD\",\"value\":60}},\"category\":\"platform_earning_refund\",\"created\":\"1970-01-12T21:42:34.472Z\",\"financial_account\":\"financial_account\",\"id\":\"obj_123\",\"livemode\":true,\"status\":\"pending\",\"status_transitions\":{}}],\"next_page_url\":null,\"previous_page_url\":null}");
var client = new StripeClient(this.Requestor);
var service = client.V2.MoneyManagement.Transactions;
var transaction = service.ListAutoPaging().First();
@@ -26546,7 +26546,7 @@ public async Task TestV2MoneyManagementTransactionGetAutoPagingAsync()
HttpMethod.Get,
"/v2/money_management/transactions",
(HttpStatusCode)200,
- "{\"data\":[{\"object\":\"v2.money_management.transaction\",\"amount\":{\"currency\":\"USD\",\"value\":96},\"balance_impact\":{\"available\":{\"currency\":\"USD\",\"value\":35},\"inbound_pending\":{\"currency\":\"USD\",\"value\":11},\"outbound_pending\":{\"currency\":\"USD\",\"value\":60}},\"category\":\"inbound_transfer_reversal\",\"created\":\"1970-01-12T21:42:34.472Z\",\"financial_account\":\"financial_account\",\"id\":\"obj_123\",\"livemode\":true,\"status\":\"pending\",\"status_transitions\":{}}],\"next_page_url\":null,\"previous_page_url\":null}");
+ "{\"data\":[{\"object\":\"v2.money_management.transaction\",\"amount\":{\"currency\":\"USD\",\"value\":96},\"balance_impact\":{\"available\":{\"currency\":\"USD\",\"value\":35},\"inbound_pending\":{\"currency\":\"USD\",\"value\":11},\"outbound_pending\":{\"currency\":\"USD\",\"value\":60}},\"category\":\"platform_earning_refund\",\"created\":\"1970-01-12T21:42:34.472Z\",\"financial_account\":\"financial_account\",\"id\":\"obj_123\",\"livemode\":true,\"status\":\"pending\",\"status_transitions\":{}}],\"next_page_url\":null,\"previous_page_url\":null}");
var client = new StripeClient(this.Requestor);
var service = client.V2.MoneyManagement.Transactions;
var transaction = await service.ListAutoPagingAsync().FirstAsync();
@@ -26562,7 +26562,7 @@ public void TestV2MoneyManagementTransactionGet2()
HttpMethod.Get,
"/v2/money_management/transactions/id_123",
(HttpStatusCode)200,
- "{\"object\":\"v2.money_management.transaction\",\"amount\":{\"currency\":\"USD\",\"value\":96},\"balance_impact\":{\"available\":{\"currency\":\"USD\",\"value\":35},\"inbound_pending\":{\"currency\":\"USD\",\"value\":11},\"outbound_pending\":{\"currency\":\"USD\",\"value\":60}},\"category\":\"inbound_transfer_reversal\",\"created\":\"1970-01-12T21:42:34.472Z\",\"financial_account\":\"financial_account\",\"id\":\"obj_123\",\"livemode\":true,\"status\":\"pending\",\"status_transitions\":{}}");
+ "{\"object\":\"v2.money_management.transaction\",\"amount\":{\"currency\":\"USD\",\"value\":96},\"balance_impact\":{\"available\":{\"currency\":\"USD\",\"value\":35},\"inbound_pending\":{\"currency\":\"USD\",\"value\":11},\"outbound_pending\":{\"currency\":\"USD\",\"value\":60}},\"category\":\"platform_earning_refund\",\"created\":\"1970-01-12T21:42:34.472Z\",\"financial_account\":\"financial_account\",\"id\":\"obj_123\",\"livemode\":true,\"status\":\"pending\",\"status_transitions\":{}}");
var client = new StripeClient(this.Requestor);
var service = client.V2.MoneyManagement.Transactions;
Stripe.V2.MoneyManagement.Transaction transaction = service.Get(
@@ -26579,7 +26579,7 @@ public async Task TestV2MoneyManagementTransactionGet2Async()
HttpMethod.Get,
"/v2/money_management/transactions/id_123",
(HttpStatusCode)200,
- "{\"object\":\"v2.money_management.transaction\",\"amount\":{\"currency\":\"USD\",\"value\":96},\"balance_impact\":{\"available\":{\"currency\":\"USD\",\"value\":35},\"inbound_pending\":{\"currency\":\"USD\",\"value\":11},\"outbound_pending\":{\"currency\":\"USD\",\"value\":60}},\"category\":\"inbound_transfer_reversal\",\"created\":\"1970-01-12T21:42:34.472Z\",\"financial_account\":\"financial_account\",\"id\":\"obj_123\",\"livemode\":true,\"status\":\"pending\",\"status_transitions\":{}}");
+ "{\"object\":\"v2.money_management.transaction\",\"amount\":{\"currency\":\"USD\",\"value\":96},\"balance_impact\":{\"available\":{\"currency\":\"USD\",\"value\":35},\"inbound_pending\":{\"currency\":\"USD\",\"value\":11},\"outbound_pending\":{\"currency\":\"USD\",\"value\":60}},\"category\":\"platform_earning_refund\",\"created\":\"1970-01-12T21:42:34.472Z\",\"financial_account\":\"financial_account\",\"id\":\"obj_123\",\"livemode\":true,\"status\":\"pending\",\"status_transitions\":{}}");
var client = new StripeClient(this.Requestor);
var service = client.V2.MoneyManagement.Transactions;
Stripe.V2.MoneyManagement.Transaction transaction = await service
@@ -26596,7 +26596,7 @@ public void TestV2MoneyManagementTransactionEntryGet()
HttpMethod.Get,
"/v2/money_management/transaction_entries",
(HttpStatusCode)200,
- "{\"data\":[{\"object\":\"v2.money_management.transaction_entry\",\"balance_impact\":{\"available\":{\"currency\":\"USD\",\"value\":35},\"inbound_pending\":{\"currency\":\"USD\",\"value\":11},\"outbound_pending\":{\"currency\":\"USD\",\"value\":60}},\"created\":\"1970-01-12T21:42:34.472Z\",\"effective_at\":\"1970-01-03T20:38:28.043Z\",\"id\":\"obj_123\",\"livemode\":true,\"transaction\":\"transaction\",\"transaction_details\":{\"category\":\"inbound_transfer_reversal\",\"financial_account\":\"financial_account\"}}],\"next_page_url\":null,\"previous_page_url\":null}");
+ "{\"data\":[{\"object\":\"v2.money_management.transaction_entry\",\"balance_impact\":{\"available\":{\"currency\":\"USD\",\"value\":35},\"inbound_pending\":{\"currency\":\"USD\",\"value\":11},\"outbound_pending\":{\"currency\":\"USD\",\"value\":60}},\"created\":\"1970-01-12T21:42:34.472Z\",\"effective_at\":\"1970-01-03T20:38:28.043Z\",\"id\":\"obj_123\",\"livemode\":true,\"transaction\":\"transaction\",\"transaction_details\":{\"category\":\"platform_earning_refund\",\"financial_account\":\"financial_account\"}}],\"next_page_url\":null,\"previous_page_url\":null}");
var client = new StripeClient(this.Requestor);
var service = client.V2.MoneyManagement.TransactionEntries;
Stripe.V2.StripeList transactionEntries = service
@@ -26613,7 +26613,7 @@ public async Task TestV2MoneyManagementTransactionEntryGetAsync()
HttpMethod.Get,
"/v2/money_management/transaction_entries",
(HttpStatusCode)200,
- "{\"data\":[{\"object\":\"v2.money_management.transaction_entry\",\"balance_impact\":{\"available\":{\"currency\":\"USD\",\"value\":35},\"inbound_pending\":{\"currency\":\"USD\",\"value\":11},\"outbound_pending\":{\"currency\":\"USD\",\"value\":60}},\"created\":\"1970-01-12T21:42:34.472Z\",\"effective_at\":\"1970-01-03T20:38:28.043Z\",\"id\":\"obj_123\",\"livemode\":true,\"transaction\":\"transaction\",\"transaction_details\":{\"category\":\"inbound_transfer_reversal\",\"financial_account\":\"financial_account\"}}],\"next_page_url\":null,\"previous_page_url\":null}");
+ "{\"data\":[{\"object\":\"v2.money_management.transaction_entry\",\"balance_impact\":{\"available\":{\"currency\":\"USD\",\"value\":35},\"inbound_pending\":{\"currency\":\"USD\",\"value\":11},\"outbound_pending\":{\"currency\":\"USD\",\"value\":60}},\"created\":\"1970-01-12T21:42:34.472Z\",\"effective_at\":\"1970-01-03T20:38:28.043Z\",\"id\":\"obj_123\",\"livemode\":true,\"transaction\":\"transaction\",\"transaction_details\":{\"category\":\"platform_earning_refund\",\"financial_account\":\"financial_account\"}}],\"next_page_url\":null,\"previous_page_url\":null}");
var client = new StripeClient(this.Requestor);
var service = client.V2.MoneyManagement.TransactionEntries;
Stripe.V2.StripeList transactionEntries = await service
@@ -26630,7 +26630,7 @@ public void TestV2MoneyManagementTransactionEntryGetAutoPaging()
HttpMethod.Get,
"/v2/money_management/transaction_entries",
(HttpStatusCode)200,
- "{\"data\":[{\"object\":\"v2.money_management.transaction_entry\",\"balance_impact\":{\"available\":{\"currency\":\"USD\",\"value\":35},\"inbound_pending\":{\"currency\":\"USD\",\"value\":11},\"outbound_pending\":{\"currency\":\"USD\",\"value\":60}},\"created\":\"1970-01-12T21:42:34.472Z\",\"effective_at\":\"1970-01-03T20:38:28.043Z\",\"id\":\"obj_123\",\"livemode\":true,\"transaction\":\"transaction\",\"transaction_details\":{\"category\":\"inbound_transfer_reversal\",\"financial_account\":\"financial_account\"}}],\"next_page_url\":null,\"previous_page_url\":null}");
+ "{\"data\":[{\"object\":\"v2.money_management.transaction_entry\",\"balance_impact\":{\"available\":{\"currency\":\"USD\",\"value\":35},\"inbound_pending\":{\"currency\":\"USD\",\"value\":11},\"outbound_pending\":{\"currency\":\"USD\",\"value\":60}},\"created\":\"1970-01-12T21:42:34.472Z\",\"effective_at\":\"1970-01-03T20:38:28.043Z\",\"id\":\"obj_123\",\"livemode\":true,\"transaction\":\"transaction\",\"transaction_details\":{\"category\":\"platform_earning_refund\",\"financial_account\":\"financial_account\"}}],\"next_page_url\":null,\"previous_page_url\":null}");
var client = new StripeClient(this.Requestor);
var service = client.V2.MoneyManagement.TransactionEntries;
var transactionEntry = service.ListAutoPaging().First();
@@ -26646,7 +26646,7 @@ public async Task TestV2MoneyManagementTransactionEntryGetAutoPagingAsync()
HttpMethod.Get,
"/v2/money_management/transaction_entries",
(HttpStatusCode)200,
- "{\"data\":[{\"object\":\"v2.money_management.transaction_entry\",\"balance_impact\":{\"available\":{\"currency\":\"USD\",\"value\":35},\"inbound_pending\":{\"currency\":\"USD\",\"value\":11},\"outbound_pending\":{\"currency\":\"USD\",\"value\":60}},\"created\":\"1970-01-12T21:42:34.472Z\",\"effective_at\":\"1970-01-03T20:38:28.043Z\",\"id\":\"obj_123\",\"livemode\":true,\"transaction\":\"transaction\",\"transaction_details\":{\"category\":\"inbound_transfer_reversal\",\"financial_account\":\"financial_account\"}}],\"next_page_url\":null,\"previous_page_url\":null}");
+ "{\"data\":[{\"object\":\"v2.money_management.transaction_entry\",\"balance_impact\":{\"available\":{\"currency\":\"USD\",\"value\":35},\"inbound_pending\":{\"currency\":\"USD\",\"value\":11},\"outbound_pending\":{\"currency\":\"USD\",\"value\":60}},\"created\":\"1970-01-12T21:42:34.472Z\",\"effective_at\":\"1970-01-03T20:38:28.043Z\",\"id\":\"obj_123\",\"livemode\":true,\"transaction\":\"transaction\",\"transaction_details\":{\"category\":\"platform_earning_refund\",\"financial_account\":\"financial_account\"}}],\"next_page_url\":null,\"previous_page_url\":null}");
var client = new StripeClient(this.Requestor);
var service = client.V2.MoneyManagement.TransactionEntries;
var transactionEntry = await service.ListAutoPagingAsync()
@@ -26663,7 +26663,7 @@ public void TestV2MoneyManagementTransactionEntryGet2()
HttpMethod.Get,
"/v2/money_management/transaction_entries/id_123",
(HttpStatusCode)200,
- "{\"object\":\"v2.money_management.transaction_entry\",\"balance_impact\":{\"available\":{\"currency\":\"USD\",\"value\":35},\"inbound_pending\":{\"currency\":\"USD\",\"value\":11},\"outbound_pending\":{\"currency\":\"USD\",\"value\":60}},\"created\":\"1970-01-12T21:42:34.472Z\",\"effective_at\":\"1970-01-03T20:38:28.043Z\",\"id\":\"obj_123\",\"livemode\":true,\"transaction\":\"transaction\",\"transaction_details\":{\"category\":\"inbound_transfer_reversal\",\"financial_account\":\"financial_account\"}}");
+ "{\"object\":\"v2.money_management.transaction_entry\",\"balance_impact\":{\"available\":{\"currency\":\"USD\",\"value\":35},\"inbound_pending\":{\"currency\":\"USD\",\"value\":11},\"outbound_pending\":{\"currency\":\"USD\",\"value\":60}},\"created\":\"1970-01-12T21:42:34.472Z\",\"effective_at\":\"1970-01-03T20:38:28.043Z\",\"id\":\"obj_123\",\"livemode\":true,\"transaction\":\"transaction\",\"transaction_details\":{\"category\":\"platform_earning_refund\",\"financial_account\":\"financial_account\"}}");
var client = new StripeClient(this.Requestor);
var service = client.V2.MoneyManagement.TransactionEntries;
Stripe.V2.MoneyManagement.TransactionEntry transactionEntry = service
@@ -26680,7 +26680,7 @@ public async Task TestV2MoneyManagementTransactionEntryGet2Async()
HttpMethod.Get,
"/v2/money_management/transaction_entries/id_123",
(HttpStatusCode)200,
- "{\"object\":\"v2.money_management.transaction_entry\",\"balance_impact\":{\"available\":{\"currency\":\"USD\",\"value\":35},\"inbound_pending\":{\"currency\":\"USD\",\"value\":11},\"outbound_pending\":{\"currency\":\"USD\",\"value\":60}},\"created\":\"1970-01-12T21:42:34.472Z\",\"effective_at\":\"1970-01-03T20:38:28.043Z\",\"id\":\"obj_123\",\"livemode\":true,\"transaction\":\"transaction\",\"transaction_details\":{\"category\":\"inbound_transfer_reversal\",\"financial_account\":\"financial_account\"}}");
+ "{\"object\":\"v2.money_management.transaction_entry\",\"balance_impact\":{\"available\":{\"currency\":\"USD\",\"value\":35},\"inbound_pending\":{\"currency\":\"USD\",\"value\":11},\"outbound_pending\":{\"currency\":\"USD\",\"value\":60}},\"created\":\"1970-01-12T21:42:34.472Z\",\"effective_at\":\"1970-01-03T20:38:28.043Z\",\"id\":\"obj_123\",\"livemode\":true,\"transaction\":\"transaction\",\"transaction_details\":{\"category\":\"platform_earning_refund\",\"financial_account\":\"financial_account\"}}");
var client = new StripeClient(this.Requestor);
var service = client.V2.MoneyManagement.TransactionEntries;
Stripe.V2.MoneyManagement.TransactionEntry transactionEntry = await service
@@ -28399,7 +28399,7 @@ public void TestAlreadyExistsError()
{
var options = new Stripe.V2.MoneyManagement.FinancialAccountCreateOptions
{
- Type = "storage",
+ Type = "credit",
};
var client = new StripeClient(this.Requestor);
var service = client.V2.MoneyManagement.FinancialAccounts;
@@ -28424,7 +28424,7 @@ public async Task TestAlreadyExistsErrorAsync()
{
var options = new Stripe.V2.MoneyManagement.FinancialAccountCreateOptions
{
- Type = "storage",
+ Type = "credit",
};
var client = new StripeClient(this.Requestor);
var service = client.V2.MoneyManagement.FinancialAccounts;