Wrapper for the Cheddar recurring billing system APIs
npm install @tivetechnology/cheddar-apiThis module will simplify the process of integrating Cheddar into your existing JavaScript apps.
Table of Contents
- Installation
- Basic usage
- Implemented methods
- Running tests
- Credits
``bash`
npm i @tivetechnology/cheddar-api
`typescript
import { Cheddar } from "cheddar";
const cheddar = new Cheddar({
username: "email@example.com",
password: "passwordExample",
productCode: "PRODUCT_CODE",
});
cheddar
.getPlans()
.then((plans) => console.log(plans))
.catch((err) => console.error(err));
// When inside an async function, you can simply await any Cheddar function
const plans = await cheddar.getPlans();
`
- getPlans()getPlan(planCode)
- getCustomers(getCustomersRequest)
- getCustomer(customerCode)
- createCustomer(createCustomerRequest)
- editCustomerAndSubscription(editCustomerSubscriptionRequest)
- editCustomer(editCustomerRequest)
- editSubscription(editSubscriptionRequest)
- deleteCustomer(customerCode)
- cancelSubscription(customerCode)
- addItem(itemQuantityRequest)
- removeItem(itemQuantityRequest)
- setItemQuantity(setItemQuantityRequest)
- addCustomCharge(addCustomChargeRequest)
- deleteCustomCharge(deleteCustomChargeRequest)
- createOneTimeInvoice(createOneTimeInvoiceRequest)
- runOutstandingInvoice(outstandingInvoiceRequest)
- issueRefund(issueRefundRequest)
- issueVoid(issueVoidRequest)
- issueVoidOrRefund(issueVoidRequest)
- resendInvoiceEmail(issueVoidRequest)
- getPromotions()
- getPromotion(promotionCode)
-
All methods return a promise with the requested data in JSON format.
First add a config file (.env) with all your Cheddar credentials:
`env`
TEST_USERNAME=
TEST_PASSWORD=
TEST_PRODUCT_CODE=
TEST_PLAN_CODE=
TEST_ITEM_CODE=
TEST_PROMO_CODE=
Now you can install all dependencies and run the tests:
```
npm install
npm test
> WARNING: Only run the tests on a development account to prevent any side effects in production
Original work was done by Kevin Smith.
Ported to typescript by Victor Uvarov.