@akitabox/node-recurly

Library for accessing the api for the Recurly recurring billing service.

Stats

stars 🌟issues ⚠️updated 🛠created 🐣size 🏋️‍♀️
@akitabox/node-recurly
Minified + gzip package size for @akitabox/node-recurly in KB

Readme

Node-Recurly

Build Status

node-recurly is a node.js library for using the recurly recurring billing service. This library is intended to follow very closely the recurly documentation found at: http://dev.recurly.com/

Installation

git clone https://github.com/akitabox/node-recurly.git

or you can install with NPM

npm install https://github.com/akitabox/node-recurly.git --save

add a config file to your project that has contents similar to:

    module.exports = {
        API_KEY: 'secret',
        SUBDOMAIN:    '[your_account]',
        ENVIRONMENT:  'sandbox',
        DEBUG: false
    };

Optional Usage Behind Proxy

Export the environment variable HTTPS_PROXY or add proxy options in the config file created above as described here. Available proxy options include PROXY, STRICT_SSL, TUNNEL, PROXY_HEADER_WHITE_LIST and PROXY_HEADER_EXCLUSIVE_LIST.

Usage

    var Recurly = require('node-recurly');
    var recurly = new Recurly(require('./config'));

After that, just call the methods below:

Accounts

https://dev.recurly.com/docs/list-accounts

recurly.accounts.list(filter, callback)

recurly.accounts.create(details, callback)

recurly.accounts.update(accountcode, details, callback) 

recurly.accounts.get(accountcode, callback) 

recurly.accounts.close(accountcode, callback) 

recurly.accounts.reopen(accountcode, callback)

recurly.accounts.notes(accountcode, callback)

Adjustments

https://dev.recurly.com/docs/list-an-accounts-adjustments

recurly.adjustments.list(accountcode, callback)

recurly.adjustments.get(uuid, callback)

recurly.adjustments.create(accountcode, details, callback)

recurly.adjustments.remove(uuid, callback)

Billing Information

https://dev.recurly.com/docs/lookup-an-accounts-billing-info

recurly.billingInfo.update(accountcode, details, callback)

recurly.billingInfo.create(accountcode, details, callback) 

recurly.billingInfo.get(accountcode, callback) 

recurly.billingInfo.remove(accountcode, callback) 

Coupons

https://dev.recurly.com/docs/list-active-coupons

recurly.coupons.list(filter, callback)

recurly.coupons.get(couponcode, callback)

recurly.coupons.create(details, callback)

recurly.coupons.deactivate(couponcode, callback)

Coupon Redemptions

https://dev.recurly.com/docs/lookup-a-coupon-redemption-on-an-account

recurly.couponRedemption.redeem(couponcode, details, callback)

recurly.couponRedemption.get(accountcode, callback)

recurly.couponRedemption.remove(accountcode, callback)

recurly.couponRedemption.getByInvoice(invoicenumber, callback)

Invoices

https://dev.recurly.com/docs/list-invoices

recurly.invoices.list(filter, callback)

recurly.invoices.listByAccount(accountcode, filter, callback)

recurly.invoices.get(invoicenumber, callback)

recurly.invoices.create(accountcode, details, callback)

recurly.invoices.preview(accountcode, callback)

recurly.invoices.refundLineItems(invoicenumber, details, callback)

recurly.invoices.refundOpenAmount(invoicenumber, details, callback)

recurly.invoices.markSuccessful(invoicenumber, callback)

recurly.invoices.markFailed(invoicenumber, callback)

recurly.invoices.enterOfflinePayment(invoicenumber, details, callback)

(Subscription) Plans

https://dev.recurly.com/docs/list-plans

recurly.plans.list(filter, callback)

recurly.plans.get(plancode, callback) 

recurly.plans.create(details, callback)

recurly.plans.update(plancode, details, callback)

recurly.plans.remove(plancode, callback)

Plan Add-ons

https://dev.recurly.com/docs/list-add-ons-for-a-plan

recurly.planAddons.list(plancode, filter, callback)

recurly.planAddons.get(plancode, addoncode, callback) 

recurly.planAddons.create(plancode, details, callback)

recurly.planAddons.update(plancode, addoncode, details, callback)

recurly.planAddons.remove(plancode, addoncode, callback)

Subscriptions

https://dev.recurly.com/docs/list-subscriptions

recurly.subscriptions.list(filter, callback)

recurly.subscriptions.listByAccount(accountcode, filter, callback) 

recurly.subscriptions.get(uuid, callback) 

recurly.subscriptions.create(details, callback) 

recurly.subscriptions.preview(details, callback) 

recurly.subscriptions.update(uuid, details, callback) 

recurly.subscriptions.updateNotes(uuid, details, callback)

recurly.subscriptions.updatePreview(uuid, details, callback)

recurly.subscriptions.cancel(uuid, callback) 

recurly.subscriptions.reactivate(uuid, callback) 

recurly.subscriptions.terminate(uuid, refundType, callback) 

recurly.subscriptions.postpone(uuid, nextRenewalDate, callback) 

Subscription Usage

https://dev.recurly.com/docs/list-add-ons-usage

recurly.usage.list(uuid, addOnCode, billingStatus, callback)

recurly.usage.log(uuid, addOnCode, details, callback)

recurly.usage.get(uuid, addOnCode, usageId, callback)

recurly.usage.update(uuid, addOnCode, usageId, details, callback)

recurly.usage.remove(uuid, addOnCode, usageId, callback)

Transactions

https://dev.recurly.com/docs/list-transactions

recurly.transactions.list(filter, callback)

recurly.transactions.listByAccount(accountcode, filter, callback)

recurly.transactions.get(id, callback) 

recurly.transactions.create(details, callback) 

recurly.transactions.refund(id, amount, callback)

If you find any bugs or have a feature request, please open an issue on github!

The npm package download data comes from npm's download counts api and package details come from npms.io.