Server SDK Migration Guide
Overview
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](https://github.com/braintree/braintree_node/blob/master/CHANGELOG.md) for more information on changes.
SDK major version 3
Node versions
Starting with version 3.0.0, the Braintree Node SDK targets Node versions 10+ and npm CLI 6+.
Creating a gateway instance
Previous code examples used the function connect()
to set up the Braintree Gateway. This method was deprecated in version 2.15.0, and removed in version 3.0.0. Instead, initialize the gateway by creating a new instance:
- Node.js
const gateway = new braintree.BraintreeGateway({
environment: braintree.Environment.Sandbox,
merchantId: 'your_merchant_id',
publicKey: 'your_public_key',
privateKey: 'your_private_key'
});
Search methods for expiring credit cards updated
Previous versions of the Node SDK contained a bug where the expired
and expiringBetween
methods on CreditCardGateway
returned an array of credit card ids rather than the full results. These methods have been updated to return either an iterable response or a stream containing the full credit card result objects. See expiringBetween
for more details.
Exceptions
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.