Stripi
Simpler Stripe API.
An alternative to node-stripe where:
- Error responses matches Stripe's responses exactly
- Does not wrap around the API - you set the method, route, and request body yourself
Thus, you're not limited to this repo keeping up with Stripe's API
- Uses Bluebird for promises
- Must smaller library overall
In other words, READ THE STRIPE API YOURSELF.
API
new Stripe(key, version)
var stripe = Stripe(key, 1)
key
is your secret API key.
version
is the API version, by default 1
.
You don't need to set the version
,
but this is in case Stripe upgrades their API version in the future - no updated to this repo would be necesasry.
Stripe#{method}(route [, requestBody] [, callback])
stripe.post('/tokens', {
card: {
number: 4242424242424242,
exp_month: 12,
exp_year: 2014,
cvc: 123
}
}, function (err, card) {
assert.ifError(err)
assert(card.id)
})
stripe.post('/tokens', {
card: {
number: 4242424242424242,
exp_month: 12,
exp_year: 2014,
cvc: 123
}
}).then(function (card) {
assert(card.id)
})
method
- the request methodroute
- the route after the version. Leading /
is optional. For example, for https://api.stripe.com/v1/tokens
, you only need to put in /tokens
or tokens
.request
(optional) - the request body. Should be an object or null
(GET
requests).err
- the error if the response was not a 200 status code.response
- the response body. Should be an object.
Errors
Errors match Stripe's errors exactly.
err.message
err.type
err.code
err.param
err.status
- The status code, so you know whether its a 4xx
error or a 5xx
error.