stripe

Stripe API wrapper

Stripe node.js bindings

Read about Version 2 here (Released October 18th, 2013)

npm install stripe

Documentation is available at https://stripe.com/docs/api/node.

Every resource is accessed via your stripe instance:

var stripe = require('stripe')(' your stripe API key ');
// stripe.{ RESOURCE_NAME }.{ METHOD_NAME } 

Every resource method accepts an optional callback as the last argument:

stripe.customers.create(
  { email: 'customer@example.com' },
  function(errcustomer) {
    err; // null if no error occurred 
    customer; // the created customer object 
  }
);

Additionally, every resource method returns a promise, so you don't have to use the regular callback. E.g.

// Create a new customer and then a new charge for that customer: 
stripe.customers.create({
  email: 'foo-customer@example.com'
}).then(function(customer) {
  return stripe.charges.create({
    amount: 1600,
    currency: 'usd',
    customer: customer.id
  });
}).then(function(charge) {
  // New charge created on a new customer 
}, function(err) {
  // Deal with an error 
});

To use the Stripe-Account header, simply pass an extra options hash:

// Retrieve the balance for a connected account: 
stripe.balance.retrieve({
  stripe_account: "acct_foo"
}).then(function(balance) {
  // The balance object for the connected account 
}, function(err) {
  // Error 
});

Where you see params it is a plain JavaScript object, e.g. { email: 'foo@example.com' }

  • stripe.setApiKey(' your secret api key ');
  • stripe.setTimeout(20000); // in ms (default is node's default: 120000ms)

Run the tests using npm:

$ npm install
$ npm test

If you wish, you may run tests using your Stripe Test API key by setting the environment variable STRIPE_TEST_API_KEY before running tests:

$ export STRIPE_TEST_API_KEY='sk_test....'
$ npm test

Note: On Windows use SET instead of export for setting the STRIPE_TEST_API_KEY environment variable.

If you don't have a prefixed key (in the form sk_test_...) you can get one by rolling your "Test Secret Key". This can be done under your dashboard (Account Setting -> API Keys -> Click the roll icon next to the "test secret key"). This should give you a new prefixed key ('sk_test_..'), which will then be usable by the node mocha tests.

Originally by Ask Bjørn Hansen (ask@develooper.com). Development was sponsored by YellowBot. Now officially maintained by Stripe.