- #1999 Add support for
SecondaryColor
onAccount
- #1997 Add
Description
onWebhookEndpoint
- #1996 Add missing events for
TaxId
andCapability
- #1988 Add support for
CancellationReason
on IssuingCard
- #1987 Add missing properties on
Review
- #1982 Fix deadlock in
AsyncUtils.ToEnumerable()
- #1978 Add
CalculatedStatementDescriptor
onCharge
- #1976 Remove System.Linq.Async dependency
- #1970 Add
RawJObject
getter toStripeEntity
- #1973 Support for asynchronous autopagination
- #1972 Add
net461
as a target framework
- #1966 Add support for
SpendingControls
on IssuingCard
andCardholder
- #1965 Add support for
PauseCollection
onSubscription
- #1964 Add new capabilities for AU Becs Debit and tax reporting
- #1963 Support RequestedAt being nullable
- This is technically a breaking change, but we're releasing as a patch version as the non-nullable type made it impossible to deserialize
Capability
objects in many cases.
- This is technically a breaking change, but we're releasing as a patch version as the non-nullable type made it impossible to deserialize
- #1960 Add new fields to Issuing
Card
andAuthorization
- Add
Amount
andAmountCurrency
toAuthorization
- Add
MerchantAmount
andMerchantCurrency
toAuthorization
- Add
PendingRequest
toAuthorization
- Add
ReplacedBy
toCard
- Add
Amount
andMetadata
toAuthorizationApproveOptions
- Add
Metadata
toAuthorizationDeclineOptions
- Add
- #1955 Multiple changes for Issuing APIs
- Rename
Speed
toService
on IssuingCard
- Rename
WalletProvider
toWallet
andAddressZipCheck
toAddressPostalCodeCheck
on IssuingAuthorization
- Mark
IsDefault
as deprecated on IssuingCardholder
- Rename
- #1953 Add support for
Shipping
andShippingAddressCollection
on CheckoutSession
- #1951 Add multiple missing features
DomainName
filter when listingApplePayDomain
Name
filter when listing IssuingCard
Amount
onSource
UpdateTransferGroup
onTopup
creationDescription
onTopup
updateStatus
filter when listingTopup
- #1952 Add support for
ThreeDSecure
on IssuingAuthorization
- #1945 Add support for
Description
,Iin
andIssuer
onPaymentMethod
- #1944 Add support for
Metadata
onWebhookEndpoint
- #1942 Add support for
ExpiryCheck
on IssuingAuthorization
- #1940 Add support for
Errors
inRequirements
onAccount
,Capability
andPerson
- #1941 Add support for
payment_intent.processing
Major version release for new API version 2020-03-02
.
Pull requests included in this release (cf. #1934) (
- #1933
⚠️ Drop support for .NET Standard 1.2 - #1935 Remove conditional compilation macros in tests
- #1932
⚠️ Add support for passing parameters when deleting a Subscription Item - #1936 Get accurate runtime version
- #1937
⚠️ Move to API version2020-03-02
and remove deprecated properties - #1938 Add support for
NextInvoiceSequence
onCustomer
- #1928 Add support for listing Checkout
Session
and passing tax rate information
- #1926 Add support for
ProrationBehavior
onSubscriptionSchedule
- #1927 Add support for
Timezone
onReportRun
- #1910 Add support for Wechat on
Source
- #1923 Add support for
additional_verification
as a validpurpose
onFile
- #1921 Add support for
Amount
onSessionPaymentIntentTransferDataOptions
- #1920 Add
PaymentMethodOptions
when updating aPaymentIntent
and aSetupIntent
- #1919 Use a static instance for default
HttpClient
- #1914 Remove specialize private setter on
Coupon
- #1911 Rename a couple directories and files to follow convention
- #1908 Add support for returning orders
- #1903 Adds support for
ErrorOnRequiresAction
onPaymentIntent
- #1906 Add support for
Structure
onAccount
- #1905 Add support for
Shipping.Speed
andShipping.TrackingURL
on IssuingCard
- #1902 Make
OutOfBandAmount
nullable onCreditNote
- This is technically a breaking change, but we're releasing as a patch version as the non-nullable type made it impossible to deserialize
credit_note
objects in many cases.
- This is technically a breaking change, but we're releasing as a patch version as the non-nullable type made it impossible to deserialize
- #1899 Add support for
Metadata
on CheckoutSession
- #1895 Add support for
PendingUpdate
andProrationBehavior
onSubscription
APIs.
- #1896 Add support for
CreditNoteLineItem
- #1894 Fix sepa debit deserialization on MandatePaymentMethodDetails
- #1893 Add
ReportingCategory
toBalanceTransaction
- #1892 Improve support for
SpendingLimits
on IssuingCard
- #1891 Internal cleanup of the library to remove SharedOptions classes and define parameters in their respective Create or Update options classes.
- #1885 Add public
Service.Client
setter
- #1890 Add
new()
constraint to options generic types
- #1888 Adds
ExecutivesProvided
toAccount
- #1887 Add support for
Metadata
andLivemode
to TerminalReader
andLocation
- #1881 Make
StripeTypeRegistry.ObjectsToTypes
dictionary public
- #1878 Mark
Connect
as obsolete onWebhookEndpoint
and add documentation
- #1877 Add support for
AuthorizationControls
on IssuingCardholder
- #1872 Add support for AU BECS Debit on PaymentMethod
- #1869 Add
EventUtility.ValidateSignature
method
- #1866 Add
Network
andGeneratedCard
onCharge
for card and card-present transactions
- #1838 Major version released with the following breaking changes in it:
- #1863
⚠️ Pin to API version2019-12-03
- #1837
⚠️ RenamedParametersOptions
toReportRunParametersOptions
onReportRun
- #1841
⚠️ Created
is not be nullable anymore on any resource - #1852
⚠️ RemovedPhonNumber
on IssuingCardholder
in favour ofPhoneNumber
andPersonalIdNumber
on Person creation and update in favour ofIdNumber
- #1850
⚠️ Rename a few options classes to have Options in the name instead of OptionInvoiceUpcomingInvoiceItemOption
is nowInvoiceUpcomingInvoiceItemOptions
.SubscriptionItemOption
is nowSubscriptionItemOptions
.SubscriptionItemUpdateOption
is now merged intoSubscriptionItemOptions
.
- #1851 Fix multiple TODOs in tests
- #1863
- #1861 Allow filtering Invoices by
Status
- #1856 Add support for
CreditNote
preview - #1855 Default optional options for custom actions to null
- #1854 Add support for reverse auto-pagination passing
EndingBefore
- #1849 Add support for
OutOfBandAmount
onCreditNote
creation
- #1847 Add support for
SubscriptionScheduleStartDate.Now
- #1845 Add
PaymentIntent
filter when listingDispute
s
- #1842 Add support for
ViolatedAuthorizationControls
on IssuingAuthorization
- #1831 Multiple API changes
- Add
Disputed
toCharge
- Add
PaymentIntent
toRefund
andDispute
- Add
Charge
toDisputeListParams
- Add
PaymentIntent
toRefundListParams
andRefundParams
- Add
- #1830 Add support for iDEAL and SEPA debit on
PaymentMethod
- #1826 Move to the latest API version and add new changes
- Move to API version
2019-11-05
- Add
DefaultSettings
onSubscriptionSchedule
- Remove
BillingThresholds
,CollectionMethod
,DefaultPaymentMethod
andDefaultSource
andinvoice_settings
fromSubscriptionSchedule
OffSession
onPaymentIntent
is now always a boolean- Disabling using global settings when serializing or deserializing JSON.
- Move to API version
- #1829 Add support for
UseStripeSdk
onPaymentIntent
create and confirm
- #1824 Fix
SucceededAt
onReportRun
to be nullable- This is technically a breaking change, but we're releasing as a patch version as the non-nullable type made it impossible to deserialize
report_run
objects in many cases.
- This is technically a breaking change, but we're releasing as a patch version as the non-nullable type made it impossible to deserialize
- #1822 Add missing
Installments
option inPaymentIntentPaymentMethodOptionsCardOptions
- #1819 Add support for
PendingInvoiceItemInterval
onSubscription
- #1818 Add support for installments for MX accounts
- #1815 Multiple breaking changes:
- Pin to the latest API version
2019-10-17
- Remove
RenewalBehavior
onSubscriptionSchedule
- Remove
RenewalInterval
as a parameter onSubscriptionSchedule
- Pin to the latest API version
- #1814 Add various API changes
Requirements
andIsDefault
on IssuingCardholder
.- Fix the name of
PhoneNumber
on IssuingCardholder
. PaymentMethodDetails.AuBecsDebit
onCharge
.PaymentBehavior
onSubscriptionItem
creation is now supported.SubscriptionData.TrialFromPlan
is now supported on CheckoutSession
creation.
- #1813 Add support for Account and Person
Token
creation
- #1812 Remove the
Card.ThreeDSecure
property
- #1810 Add
DeviceType
filter when listing TerminalReader
s
- #1809 Fix
Quantity
to be nullable onSubscriptionSchedulePhaseItem
- #1694 Major version release. Refer to our migration guide for v30 for a list of backwards incompatible changes to watch out for.
Pull requests included in this release (cf. #1694) (
- #1675
⚠️ Better string enums - #1699
⚠️ Init options with forced parameter values - #1713
⚠️ Remove various deprecated parameters and properties - #1715
⚠️ Remove support forExpandXXX
on each service - #1736
⚠️ Properly useSetupIntentPaymentMethodOptionsCardOptions
inSetupIntentPaymentMethodOptionsOptions
- #1738
⚠️ RemovedId
andFileId
suffixes to stay as close to the API as possible - #1744 Add a test to ensure that JSON names match property names
- #1739
⚠️ Renaming a few more fields for consistency - #1751 Remove dead code for service expansions
- #1752 Bump Stylecop.Analyzers to latest version
- #1755 Bump SourceLink and create symbol package
- #1788 Add a test to ensure all resources inherit from
StripeEntity<>
and fix all the ones not doing it yet - #1761
⚠️ Add a wholesome test to ensure proper JSON converters are applied - #1802
⚠️ Remove more deprecated stuff - #1803
⚠️ Remove moreId
/FileId
suffixes - #1805
⚠️ RenameSourceThreeDSecureCreateOptions.CardId
toSourceThreeDSecureCreateOptions.Card
- #1806
⚠️ FixExternalAccountUpdateOptions
- #1804 Enable test for JSON<->property name consistency
- #1807
⚠️ RenameAccountOpener
toRepresentative
and move to latest API version2019-10-08
- #1800 Add
PaymentIntentCanceled
andSetupIntentCanceled
constants - #1799 Start testing .NET Core 3.0
- #1798 Exclude auto-implemented properties from code coverage
- #1797 Support
Status
filter when listing TerminalReader
s
- #1794 Add support for FPX payment method
- #1789 Add
Last4
in AU BECSSource
- #1791 Add support for
Stripe-Should-Retry
header
- #1786 Properly pass the type in
StripeEntity
- #1785 Properly name
UnitAmountDecimal
onPlanTier
- #1783 Allow
VoidedAt
onCreditNote
to be nullable- This is technically a breaking change, but we're releasing as a patch version as the non-nullable type made it impossible to deserialize
credit_note
objects in most cases.
- This is technically a breaking change, but we're releasing as a patch version as the non-nullable type made it impossible to deserialize
- #1780 Bump API version to
2019-09-09
- #1778 Changes to
Account
andPerson
for identity verification
- #1775 Add support for
Authentication
andUrl
on IssuingAuthorization
- #1774 Add decimal properties to
PlanTierOptions
- #1770 Add support for
EndBehavior
onSubscriptionSchedule
- #1771 Add
StripeConfiguration.EnableTelemetry
flag
- #1767 Add
PendingVerification
onAccount
,Person
andCapability
- #1763 Add support for decimal amounts on
InvoiceItem
andPlan
and missingPeriod
- #1758 A few Billing changes
- Add support for
Schedule
toSubscription
- Add missing parameters to
UpcomingInvoiceOptions
andUpcomingInvoiceListLineItemsOptions
:Schedule
,SubscriptionCancelAt
andSubscriptionCancelNow
- Add missing properties and parameters for a
SubscriptionSchedule
phase:BillingThresholds
,CollectionMethod
,DefaultPaymentMethod
andInvoiceSettings
- Add support for
- #1760 Add support for
Mode
andSetupIntent
on CheckoutSession
- #1756 Add missing
StartDate
parameter forSubscriptionSchedule
Update
- #1750 Make
ChargePaymentMethodDetailsCard.Moto
nullable
- #1748
- Add support for
PIN
on IssuingCard
to reflect the status of a card's PIN - Add support for
Executive
on Person create, update and list
- Add support for
- #1747 Move to API version
2019-08-14
- Rename
platform_payments
totransfers
inAccount
- Introduce
executive
as a relationship onPerson
- Rename
- #1746 Fix argument names in
SetupIntentService
methods
- #1745 Fix duplicate expand values issue
- #1742 Support passing
Metadata
onBankAccount
creation
- #1734 Remove
SubscriptionScheduleRevision
.- Note that this is technically a breaking change, however we've chosen to release it as a minor version in light of the fact that this resource and its API methods were virtually unused.
- #1732
- Add support for
PaymentMethodDetails.Card.Moto
onCharge
- Add support
StatementDescriptorSuffix
onCharge
andPaymentIntent
- Add support
SubscriptionData.ApplicationFeePercent
on CheckoutSession
- Add support for
- #1733 Add missing
IHas*
interfaces everywhere
- #1723 Add support for Klarna on Sources
- #1727 Add missing Radar events
- #1724 Move the List
BalanceTransaction
API to/v1/balance_transactions
- #1722 Add support for
Metadata
onSubscriptionItemOption
- #1719 Add support for
Authenticated
on Charge for 3DS results inChargePaymentMethodDetailsCardThreeDSecure
- #1718 Fix
NullReferenceException
when auto-paginating without parameters
- #1716 Add support for
StatementDescriptor
onPaymentIntent
capture
- #1711 Add
Customer
filter when listingCreditNote
- #1712 Add
OffSession
parameter when updatingSubscriptionItem
- #1703 Ignore null elements when autopaginating
- #1710 Add support for
VoidedAt
onCreditNote
- #1708 Add support for
PaymentMethodOptions
onPaymentIntent
andSetupIntent
- #1706 Various changes relaed to SCA for Billing
- Add support for
PendingSetupIntent
onSubscription
- Add support for
PaymentBehavior
onSubscription
creation and update - Add support for
PaymentBehavior
onSubscriptionItem
update - Add support for
OffSession
when paying anInvoice
- Add support for
OffSession
onSubscription
creation and update
- Add support for
- #1705 Fix missing interfaces
- #1696 Add support for
Confirm
andReturnUrl
onSetupIntent
creation
- #1702 Don't create
AnyOf
instances with null values
- #1687 Add support for
SetupFutureUsage
onPaymentIntent
update and confirm - #1693 Add support for
SetupFutureUsage
on CheckoutSession
- #1689 Add documentation for the
PaymentIntent
resource and APIs
- #1688 Remove
Equals
andGetHashCode
methods fromAnyOf
- #1679 Add
CollectionMethod
forInvoice
andSubscription
- #1686 Allow
OffSession
to be a bool or a string onPaymentIntent
creation and confirmation
- #1682 Add support for the
SetupIntent
resource and APIs - #1684 Add
DefaultSource
andDefaultPaymentMethod
onSubscriptionSchedule
- #1680 Allow null API key in
StripeClient
- #1671 Use own JSON encoding options for telemetry data
- #1668 Manually enable TLS 1.2 for .NET Framework 4.5
- #1606 Add support for
CustomerBalanceTransaction
resource and APIs
- #1664 Add support for
MerchantAmount
MerchantCurrency
to IssuingTransaction
- #1665 Add support for
SubmitType
to CheckoutSession
- #1658 Add
ConfigureAwait(false)
to all async calls
- #1655 Add setters for expandable fields properties
Major version release. Refer to our migration guide for v27 for a list of backwards incompatible changes to watch out for.
Pull requests included in this release (cf. #1482):
- #1480 Remove unnecessary uses of
Mapper
- #1478 Better serialization
- #1483 Standardize signature of
OAuthTokenService.Deauthorize
- #1484 New
FromJson
method - #1485 Modernize
StripeConfiguration
- #1488 Simplify
Service
request methods - #1489 Replace
Parameter
custom class withKeyValuePair<string, string>
- #1490 Move base URLs out of resource services where possible
- #1481 Rewrite expandable field handling
- #1493 Refactor
Client
class - #1494 Minor code fixes
- #1496 Remove
Mapper
class - #1500 Minor improvements in
EventUtility
- #1499 Simplify handling of
Expand
andExtraParams
- #1504 More request encoding refactoring
- #1508 Introduce new
Request
class to represent requests to Stripe's API - #1509 Fixes to
FileService
andOAuthTokenService
- #1487 Replace
Requestor
withStripeClient
andHttpClient
- #1511 Remove extension methods
- #1513 Add support for telemetry
- #1516 Make
parent
onOrderItem
expandable - #1519 Add missing attributes to
StripeError
- #1518 Automatic request retries
- #1534 Remove parameters are internal only on
PaymentIntent
- #1537 Various minor cleanups
- #1536 Check validity of JSON in OK responses
- #1520 API key validation
- #1538 Enforce that all properties have a Json attribute
- #1542 Improved OAuth support
- #1563 Rename
DuplicateChargeDocumentation
to be more consistent withFileId
- #1495
AnyOf<>
generic class to handle polymorphic parameters - #1598 Add support for
file_link_data
- #1596 Add support for passing application information
- #1603 Rename
StripeConnectAccountId
toStripeAccount
- #1602 Update README
- #1609 Add wholesome test to check JSON names
- #1615 Remove
System.Collections.Immutable
dependency - #1616 Raise
ArgumentException
on null or empty IDs - #1623 Move default values for
SystemNetHttpClient
- #1622 Remove
StripeConfiguration.EnableTelemetry
flag - #1631 Refactor
StripeClient
setup in tests - #1632 Set base URLs in StripeClient instead of StripeConfiguration
- #1633 Add support for setting API key and client ID in
StripeClient
- #1634 Use
StripeClient
instance in tests - #1635 Add support for setting
MaxNetworkRetries
andAppInfo
inSystemNetHttpClient
- #1640 Make base URLs in
StripeClient
readonly - #1639 Make client in services readonly
- #1643 Add
AddRangeExpand
method toBaseOptions
- #1644 Add options classes for
Get
/GetAsync
methods - #1646 Deprecate
Expand
properties on services - #1647 Use constants instead of static strings
- #1648 Update
README.md
- #1637 Add support for
Location
on TerminalConnectionToken
- #1638 Add support for
Balance
and deprecateAccountBalance
on Customer
- #1628 Pin library to API version
2019-05-16
- #1626 Add support for
radar.early_warning_fraud
resource - #1629 Add missing
description
parameter toPayoutCreateOptions
- #1624 Update comment for
TaxId.Type
with new possible types
- #1617 Add
OffSession
parameter toPaymentIntent
- #1618 Add support for kana and kanji variations of statement descriptors
- #1612 Add support for the
Capability
resource and APIs
- #1613 Add
StartDate
toSubscription
- #1610 Mark
OperatorAccount
as deprecated across all Terminal APIs
- #1601 Add support for
ReplacementFor
andReplacementReason
on IssuingCard
creation - #1605 Fix multiple properties to have the right JSON name.
- #1600 Add support for
CustomerId
onPaymentIntentListOptions
- #1595 Add support for ACSS debit Sources
- #1593 Add missing event types
- #1572 Add support for the
TaxRate
resource and APIs
- #1578 Add support for the
TaxId
resource and APIs - #1587 Add missing
person.*
events - #1588 Add
CustomerEmail
toInvoice
- #1564 Add support for the
CreditNote
resource and APIs - #1574 Add support for
Address
,Name
,Phone
andPreferredLocales
onCustomer
and related fields onInvoice
- #1440 Add support for the Checkout
Session
resource and APIs - #1577 Add support for
Version
andSucceeded
properties inChargePaymentMethodDetailsCardThreeDSecure
- #1581 Add support for passing
PaymentMethodId
onCustomer
creation
- #1582 Fix
AuthorizationResponseCode
andCardholderVerificationMethod
onChargePaymentMethodDetailsCardPresentReceipt
to bestring
instead oflong
- #1583 Fix
BillingDetailsOptions
to supportEmail
,Name
andPhone
and remove the other invalid properties forPaymentMethod
create and update
- #1580 Make
payment_intent
onInvoice
expandable instead of being auto-expanded
- #1573 Add support for the
confirmation_method
parameter onPaymentIntent
creation
- #1567 Add support for
PaymentIntent
andPaymentMethod
onCustomer
,Invoice
andSubscription
- #1568 Add BECS Source Type
- #1562 Add support for
submit
when updating aDispute
- #1559 Added
Incomplete
andIncompleteExpired
subscription statuses
- #1557 Add support for
person_token
onPerson
creation
- #1552 Add support for API version 2019-03-14:
- The library is now pinned to API version
2019-03-14
. - Subscriptions are now created with
status: "incomplete"
if the first payment fails. PaymentIntentLastPaymentError
was removed in favour ofStripeError
.
- The library is now pinned to API version
- #1541 Add support for the
PaymentMethod
resource and APIs - #1554 Add support for deleting a Terminal
Location
andReader
- #1551 Add support for
columns
onReportRun
anddefault_columns
onReportType
- Fix 24.4.0 release. The version that was pushed to NuGet did not include the changes from 24.4.0.
- #1550 Add support for
amount
onIssuing.Transaction
- #1548 Add support for
backdate_start_date
andcancel_at
onSubscription
- #1547 Add support for
current_period_end
andcurrent_period_start
when listingInvoice
s
- #1533 Add support for
client_secret
andshipping
onPaymentIntent
confirmation - #1539 Add support for
status_transitions
andcreated
onInvoice
- #1545 Add support for
latest_invoice
onSubscription
- #1546 Add support for
api_version
onWebhookEndpoint
- #1531 Fix deserialization of
ChargeTransferData.Amount
when it isnull
- #1527 Fix encoding for
SubscriptionScheduleInvoiceSettingsOptions
andSubscriptionScheduleRenewalIntervalOptions
- #1530 Fix pinned API version to
2019-02-19
Important: This version is non-functional and has been yanked in favor of 24.0.1.
- #1492 Changes related to the new API version
2019-02-19
:- The library is now pinned to API version
2019-02-19
- Numerous changes to the
Account
resource and APIs:- The
legal_entity
property on the Account API resource has been replaced withindividual
,company
, andbusiness_type
. - The
verification
hash has been replaced with arequirements
hash. - Multiple top-level properties were moved to the
settings
hash. - The
keys
property onAccount
has been removed. Platforms should authenticate as their connected accounts with their own key via theStripe-Account
header.
- The
- The
Birthday
class is now namedDob
. - The
TermsOfServiceAcceptance
class is now namedAccountTosAcceptance
. - The
requested_capabilities
property onAccount
creation is now required for accounts in the US. - The deprecated parameter
save_source_to_customer
onPaymentIntent
has now been removed. Usesave_payment_method
instead.
- The library is now pinned to API version
- #1526 Add support for
card_present
sources
- #1523 Add support for
save_payment_method
when creating, updating and confirming aPaymentIntent
- #1524 Add support for
requested_capabilities
when creating or updating anAccount
andcapabilities
on theAccount
resource
- #1469 Add support for
transfer_data[destination]
onSubscription
. - #1501 Add support for API version
2019-02-11
with changes to Payment Intents- The library is now pinned to API version
2019-02-11
. PaymentIntentSourceAction
,PaymentIntentSourceActionValueAuthorizeWithUrl
andNextSourceAction
are now replaced byPaymentIntentNextAction
,PaymentIntentNextActionRedirectToUrl
andNextAction
instead.AllowedSourceTypes
is now replaced byPaymentMethodTypes
instead.
- The library is now pinned to API version
- #1491 Add support for
SubscriptionSchedule
andSubscriptionScheduleRevision
. Also add support forInvoiceSettings
on `Customer - #1512 Add support for
TransferData.Amount
onCharge
- #1498 Handle OAuth error messages in
StripeException
- #1470 Add support for OAuth methods
- #1438 Revert license change
- #1475 Add
OperatorAccount
to Terminal options - #1476 Added
receipt_url
property toCharge
- #1477 Added
paid_out_of_band
toInvoice
- #1456 Add support for
transfer_data
andapplication_fee_amount
onCharge
- #1468 Add support for
validate
onCustomer
update andCard
update and creation
- #1415 Add support for the
AccountLink
resource
- #1467 Add support for new parameters under
invoice_items[]
for the Upcoming Invoice API
- #1457 Add support for
invoice
andpending
when listing invoice items - #1458 Add support for
wallet_provider
onIssuing.Authorization
Major version release. Refer to our migration guide for v22 for a list of backwards incompatible changes to watch out for.
Pull requests included in this release (cf. #1416):
- #1413 Allow paging on upcoming invoice line items
- #1417 Add support for verifying sources
- #1418 Replace
RecipientActiveAccount
withBankAccount
- #1396 Fix deserialization logic for polymorphic types
- #1419 Replace public fields with properties
- #1422 Specify culture for string operations
- #1424 Remove overlapping method overloads
- #1425 Move
SerializerSettings
toStripeConfiguration
- #1426 Remove UTF-8 BOMs
- #1423 Replace constants with static read-only properties
- #1427 Fix compiler warnings
- #1428 Make
ObjectsToTypes
dictionary immutable - #1429 Remove
StripeList.TotalCount
- #1430 Rename some properties for consistency
- #1431 Rename
StripeDefaultCard
toDefaultCard
on Recipient - #1434 Make
Deleted
nullable on all Stripe objects - #1436 Make object instances in tests readonly
- #1435 Enable SourceLink
- #1437 Use Mono for .NET Framework targets on UNIX systems
- #1438 Fix license packaging
- #1439 Fix some remaining StyleCop rules violations
- #1433 Fix JSON serialization of Stripe objects
- #1441 Disable optimizations in
SecureCompare
- #1444 Refactor test infrastructure
- #1447 Minor fixes
- #1446 Force the use of lists over arrays
- #1451 Remove
Updated
andUpdatedBy
fromValueList
- #1450 Better handling of API version mismatch when deserializing events
- #1414 Add support for auto-pagination
- #1455 Add support for deserializing
account.application.*
events
- #1453 Fix an issue where a
System.ArgumentNullException
exception would be thrown when deserializing some events
- #1449 Add support for
invoice_now
andprorate
option on Subscription cancelation
- #1443 Fix properties on
AuthorizationControls
to be nullable. This should be a breaking change but since Issuing is in beta and the code does not work, we released it as a patch
- #1386 Add support for
ValueList
andValueListItem
for Radar
- #1405 Add support for
issuing_card
when creating anEphemeralKey
- #1395 Fix deserialization of objects with
DateTime
properties
- #1394 Add support for
type
when listingProducts
- #1393 Add
last_payment_error
onPaymentIntent
- #1387 Add XML comments to
IBalanceTransactionSource
,IExternalAccount
andIPaymentSource
- #1388 Add support for Terminal resources
- #1389 Add support for providing
client_secret
when retrieving sources and payment intents - #1390 Rename files to fix warnings
- #1383 Add
Created
andCreatedRange
toCouponListOptions
,ProductListOptions
andRefundListOptions
- #1385 Add
Source
toChargeListOptions
- #1343 Add new API endpoints for the
Invoice
resource. - #1373 Add support for
flat_amount
onPlan
. - #1372 Support new properties and parameters for PaymentIntent: #1372
- #1377 Fix an issue where dictionary keys (such as
Metadata
keys) weren't URL-encoded
- #1366 Add
TrialPeriodDays
toPlanUpdateOptions
- #1332 Add support for the
Person
resource - #1342 Add support for the
WebhookEndpoint
resource - #1364 Add support for
unit_label
on Product creation andactive
on Plan creation
- #1353 Fix encoder to handle null values in dictionaries
- #1355 Fix handling of
Expand*
properties in list requests - #1356 Add
AuthorizationControls
toIssuing.CardCreateOptions
andIssuing.CardUpdateOptions
- #1358 Ignore culture when encoding parameters
- #1347 Add
IHasMetadata
interface to all resource classes that support metadata - #1348 Add
CardId
andBankAccountId
toTokenCreateOptions
Major version release. Refer to our migration guide for v20 for a list of backwards incompatible changes to watch out for.
Pull requests included in this release (cf. #1293):
- #1275 Properly re-architecture the library to handle various source abstractions
- #1276 Rewrite parameter encoding logic
- #1282 Rename
SourceTransactionCanceled
constant toSourceTransactionCreated
, addSourceTransactionUpdated
constant - #1283 Handle
DateTime
s directly in the encoder - #1284 Remove
StripeDeleted
class, addDeleted
property to deletable resource classes - #1285 Rename
image
property toImage
inStripeSku
andStripeSkuSharedOptions
classes - #1252 Remove the
Stripe
prefix from all classes - #1286 Rename
ScheduledQuery*
toScheduledQueryRun*
, moveScheduledQueryRun
classes inStripe.Sigma
namespace - #1287 Standardize method signatures in
InvoiceService
andRefundService
- #1288 Standardize method signatures in
FileUploadService
- #1291 Move balance transaction methods out of
BalanceService
and into newBalanceTransactionService
class - #1269 Add interfaces to all services for standard CRUD methods
- #1298 Make all value types in options classes nullable
- #1302 Upgrade to API version 2018-09-24
- #1301 Update all options classes to match the API's nesting structure
- #1303 Rename
LiveMode
property toLivemode
everywhere - #1304 Sanitize source files
- #1306 Remove +x flag from source files
- #1305 Use
BasicService
as the parent class for all services - #1307 Sort service methods alphabetically
- #1310 Verify requests in tests
- #1308 Standardize request method implementations in services
- #1309 Group resource class files in folders
- #1312 Group test files in folders to match main project's structure
- #1311 Add missing properties on resource and options class, rename a few properties
- #1315 Add
InvoiceItem
class, distinct fromInvoiceLineItem
- #1316 Automatically convert Unix timestamps to
DateTime
s - #1318 Create coverage report and upload to coveralls.io
- #1319 Fix artifacts path in
appveyor.yml
- #1317 Revamp interfaces on Stripe resource classes
- #1320 Replace
ExternalAccount
andPaymentSource
classes byIExternalAccount
andIPaymentSource
interfaces - #1321 Replace
BalanceTransactionSource
class byIBalanceTransactionSource
interface - #1322 Use
IHasObject
interface instead ofdynamic
fordata.object
attribute of event objects - #1323 Fix remaining warnings in .NET Framework specific code
- #1328 Add some missing tests
- #1329 Use an interface for
PaymentIntentSourceAction
- #1331 Use
long
instead ofint
for all integer numeric types - #1340 Change the signature of request methods on
UsageRecordService
to accept a subscription item ID - #1337 Rename
SourceTokenOrExistingSourceId
toSourceId
inChargeCreationOptions
class - #1345 Add
ChargeExpired
constant
- #1327 Add
TransferGroup
toStripeChargeUpdateOptions
- #1297 Add .NET Standard 2.0 target
- #1300 Make internals visible to Newtonsoft.Json
- #1296 Add
Description
onStripeTransfer
,StripeTransferCreateOptions
andStripeTransferUpdateOptions
- #1222 Add support for Payment Intent resource.
- #1290 Add
AccountToken
toStripeAccountCreateOptions
andStripeAccountUpdateOptions
- #1273 Add
ExchangeRate
toStripeBalanceTransaction
- #1270 Add
StatusTransitions
toStripeOrderListOptions
- #1272 Add support for reporting resources
- #1268 Add
Mandate
andReceiver
toStripeSourceCreateOptions
- #1266 Fix type of
PercentOff
onStripeCoupon
(this is technically breaking, but the previous implementation didn't work, so we're releasing as a minor)
- #1262 Add
AuthorizationCode
toStripeCharge
- Fix 19.0.0 release. The version that was pushed to NuGet did not include the changes from 19.0.0.
- #1259 Upgrade to API version 2018-08-23
List of backwards incompatible changes:
BusinessVatId
onStripeCustomer
/StripeCustomerCreateOptions
/StripeCustomerUpdateOptions
is replaced withTaxInfo
Amount
onStripePlanTier
/StripePlanTierOptions
is replaced withUnitAmount
PercentOff
onStripeCouponCreateOptions
is now adecimal
(used to be anint
)- Request methods on
StripeSubscriptionService
no longer accept astring customerId
argument. Instead, the customer ID should be provided in the appropriate options class (StripeSubscriptionCreateOptions
, etc.) StripeSubscriptionService.Cancel
&CancelAsync
no longer accept abool cancelAtPeriodEnd
argument. If you want to delete a subscription at the end of the period, you can update the subscription withCancelAtPeriodEnd
StripeProduct
no longer has aSkus
property
- #1257 Add support for passing options to
StripeInvoiceService.Pay
/PayAsync
- #1255 Make
StripeInvoiceItemCreateOptions.Amount
optional
- #1251 Add support for usage record summaries
- #1250 Add
UnitLabel
toStripeProduct
and fix deserialization ofBillingReason
onStripeInvoice
- #1242 Add
Created
toStripeAccount
- #1239 Add
RiskScore
toStripeOutcome
- #1237 Add support for Stripe Issuing
- #1165 Add support for expanding
Source
onStripeBalanceTransaction
- #1232 Fix some code style issues reported by StyleCop.Analyzers. This should have no functional impact on the library.
- #1234 Add
Customer
toStripeSourceCreateOptions
- #1233 Add
OriginalSource
toStripeSourceCreateOptions
- #1228 Add
AutoAdvance
toStripeInvoice
- #1210 Fix
CustomerSourcedDeleted
typo toCustomerSourceDeleted
, addCustomerSourceExpiring
- #1214 Add
InvoiceItems
andSubscriptionBillingCycleAnchor
toStripeUpcomingInvoiceOptions
- #1224 Change webhook signature verification to allow for future timestamps (within the tolerance)
- #1218 Generic plugin for encoding lists
- #1223 Add missing properties to invoice item objects and creation/update requests
- #1221 Add support for expanding
Outcome.Rule
onStripeCharge
- #1216 Add support for Level 3 Data on charge creation
- #1219 Add
Name
toStripeCouponUpdateOptions
- #1213 Add
AggregateUsage
toStripePlanCreateOptions
- #1207 Add
AmountRemaining
andBillingReason
toStripeInvoice
- #1208 Fix namespace of
StripeListOptionsWithCreated
- #1211 Add
Name
toStripeCoupon
andStripeCouponCreateOptions
- #1205 Add
Action
toStripeUsageRecordCreateOptions
- #1201 Add support for
document_back
on account objects and creation/update requests
- #1203 Add
ProductId
toStripePlanUpdateOptions
- #1200 Add
Active
to plan parameter and response classes
- #1199 Add
HostedInvoiceUrl
andInvoicePdf
to invoices
- #1198 Add
Subscription
toStripeSubscriptionItem
- #1195 Add
Email
toStripeCustomerListOptions
(for real this time)
- #1191 Move
BankAccountOptions
to theStripe
namespace- This change is technically breaking, but it won't break most code because it's like to already have a
using Stripe
in the same file, so we've released it as a minor release
- This change is technically breaking, but it won't break most code because it's like to already have a
- #1182 Add support
SubscriptionTaxPercent
andSubscriptionTrialFromPlan
parameters for fetching upcoming invoices
- #1176 Properly handle bank account token deserialization
- #1174 Add support for Sigma scheduled queries
- #1172 Add support for
invoice_prefix
attribute on customer objects and creation/update requests
- #1163 Fix encoding of
BillingCycleAnchor
property inStripeSubscriptionCreateOptions
- #1160 Add internal properties to
StripeCard
- #1159 Add
AmountPaid
property toStripeInvoice
andTrialFromPlan
property toSubscriptionSharedOptions
- #1146 Fix
BillingCycleAnchor
inStripeSubscriptionCreateOptions
to only accept timestamps - #1157 Add
Email
toStripeCustomerListOptions
- #1154 Add
SepaDebitIdealSourceId
property toStripeSourceCreateOptions
(for creating SEPA Direct Debit sources from iDEAL sources)
- #1152 Fix an issue where user-settable IDs would not be URL-encoded
- #1151 Fix an issue when running the library with .NET Framework 4.5+ in non-Windows environments
- #1150 Flexible/Metered Billing API support
- #1147 Fix
CancelAtPeriodEnd
parameter inStripeSubscriptionUpdateOptions
- #1145 Use
ConfigureAwait(false)
for all async invocations
- #1144 Modify
StripeDateTimeConverter
so that it writes timestamps as standard epochs instead of in Microsoft's customDate
format
- #1139 Add support for expanding more attributes and change
Charge.Outcome
to be auto-expanded - #1140 Add support for arbitrary attribute expansion
- #1143 Fix
Metadata
encoding onStripeSubscriptionItem
- #1138 Add support for
redirect_url
in login link creation requests
- #1135 Add support for
Created
andProductId
parameters in plan listing requests
- #1128 Add support for custom URL bases
- #1126 Revert Newtonsoft.Json dependency back to 9.0.1
- #1117 Add
ISupportMetadata
interface to all Stripe entities that support metadata - #1119 Add
FailureReason
property toStripeRedirect
- #1123 Upgrade Newtonsoft.Json dependency to 11.0.1
- #1105 Add parameterless constructors to all services
- #1107 Minor webhook signing improvements
- #1103 Add support for expanding
product
on plan objects
- #1097 Add support for deserializing
source_mandate_notification
objects - #1099 Upgrade API version to 2018-02-06 and add support for Product & Plan API
- #1096 Add support for
StripeSource
class inSource
wrapper
- #967 Remove the
TotalCount
property of list objects - #1072 Add support for managing external accounts
- #1080 Fix card listing
- #1083 Add specialized
ListOptions
classes for all API resources - #1084 Fix
single_use
string constant - #1086 Fix
fulfiled
attribute - #1089 Use top-level
statement_descriptor
attribute on source objects - #1091 Fix synchronous
login_link
creation - #1093 Upgrade to API version 2017-12-14
- #1069 Allow setting
three_d_secure[customer]
when creating 3DS sources - #1071 Add support for account debits
- #1074 Add support for expanding
application
on charge objects - #1077 Fix parameters being sent twice when creating subscriptions
- #1064 Support for listing sources on customers
- #1054 Fix file uploading when the extension is not known
- #1055 Fix
DueDate
encoding forStripeInvoiceCreateOptions
- #1060 Fix invoice listing
- #1056 Add
Automatic
forStripePayout
- #1057 Support for passing extra parameters
- #1058 Add
Paid
forStripeInvoiceListOptions
- #1050 Make exchange rate APIs singular (released as patch because these APIs are brand new and because 11.7.0 never made it to Nuget anyway)
- #1047 Support for listing source transactions
- #1049 Support for listing and retrieving exchange rates
- #1044 Improvements to parameter encoding
- Main user-facing fix is that dictionary keys are now URL-encoded correctly (in case they contained characters incompatible with URLs)
- #1035 Signature fixes for webhook signature verification
- Explicitly dispose of
HMACSHA256
after use so that its buffer cannot be inadvertently leaked - Use
SafeUTF8.GetBytes
so that unrecognized codepoints are not silently replaced with "?"
- Explicitly dispose of
- #1040 Add a few field definitions that were missing from API resources
- #1034 Add
Customer
toStripeBankAccount
- #1031 Support for manual subscription payments
- #1028 Support for attaching/detaching sources to/from customers
- #1029 Correctly encode custom coupon and plan IDs in API URLs
- #986 Add support for shipping on customer create and update
- #997 Add support for the Ephmeral Key API resource
- #1002 Add access for
StripeResponse
onStripeException
- #1005 Add support for updating card source expiration date
- #1008 Use bearer authorization everywhere and by default
- #1021 Add
PreferredLanguage
for Bancontact sources
- #1007 Add support for Apple Pay Domain resource
- #1018 Add event constants
ChargeRefundUpdated
andInvoiceUpcoming
- #1019 Add
StripeChargeCaptureOptions
and use it for charge capture - #1022 Add support for SKUs
- #1025 Add
Discountable
forStripeInvoiceLineItem
Note that this changelog is relatively new and we haven't yet backfilled it. For details on old releases, check out the releases page: