Server SDK Migration Guideanchor


This page is only relevant for:

  • PHP migrating from version 5.5.0 and below,
  • Python migrating from version 3.59.0 and below,
  • Java migrating from version 2.109.0 and below,
  • .NET migrating from version 4.18.0 and below,
  • Node migrating from version 2.24.0 and below,
  • Ruby migrating from version 3.4.0 and below.

You can skip this guide if you are starting a new integration using the latest version of an SDK.


Braintree makes regular updates to our server SDKs which follow semantic versioning guidelines. This page will guide you through the largest breaking changes that are specific to the language you are integrating with Braintree. Check the SDK's [CHANGELOG]( for more information on changes.

SDK major version 5anchor

.NET Standard 2.0anchor

Previous versions of the Braintree .NET SDK targeted .NET Standard 1.3 to support older versions of .NET Core. Starting with version 5.0.0, the SDK targets .NET Standard 2.0 and NET Framework 4.5.2.

HTTP static clientanchor

For .NET Core integrations, previous versions of the Braintree .NET SDK allowed you to opt-in to re-using a static HttpClient to avoid socket exhaustion scenarios. Starting with version 5.0.0, we removed this option and updated the SDK so that all configurations use one instance of HttpClient.


Previous versions of the Braintree .NET SDK used a custom Enumeration class, which did not support JSON serialization. Starting with version 5.0.0, the SDK uses .NET Enum types. Additionally, the type MASTER_CARD in the CreditCardType enum was renamed to MASTERCARD.


Down For Maintenance exceptions have been renamed to Service Unavailable exceptions, since we do not bring our services down to perform maintenance operations anymore.

We also added additional timeout exceptions to give extra clarity on the source (client request vs gateway response).

For more information, check our guide on Exceptions.

Further readinganchor