@stigg/bulk-import
TypeScript icon, indicating that this package has built-in type declarations

1.7.0 • Public • Published

Bulk import customers to Stigg

Stigg Logo

After creating your product catalog in Stigg, you can import your existing customers into Stigg.

This tool will manage the import process:

  • It reads the list of customers to import from a JSON file.
  • It's idempotent - feel safe to re-run it.

Usage

Prepare input json files

The CLI support import data of customers, subscriptions and feature usage into Stigg.

Import customers

Create a file customers.json that contains all the customers.

The file should be in the following schema:

{
  "customers": [
    {
      "customerId": "lorem-ipsum",
      "email": "lorem@ipsum.com", // optional
      "name": "Lorem-ipsum", // optional
      "billingId": "cus_MvdQq1bVD1BQHe", // optional - if an existing customer in Stripe
      "paymentMethodId": "pm_1N04AHEdaKWoSZ0OgP78RflV", // required for paid customers
      "metadata": {
        // optional - set metadata for the customer
        isTest: "true",
      },
    },
    // ...
  ],
}

Import subscriptions

Create a file subscriptions.json that contains all the subscriptions.

{
  "subscriptions": [
    {
      "customerId": "lorem-ipsum",
      "planId": "plan-local-env-p-1",
      "resourceId": "site-1", // optional - required for multiple subscriptions product
      "billingPeriod": "MONTHLY", // optional - required for paid plan
      "unitQuantity": 5, // optional - required for per-unit paid plan
      "startDate": "2022-01-01T00:00:00.000Z", // optional - used for backdating
      "metadata": { // optional - set metadata for the subscription
        "isTest": "true"
      }
    },
    // ...
  ]
}

Import feature usage

Create a file usage.json that contains all the features' up-to-date usage.

{
  "usages": [
    {
      "customerId": "lorem-ipsum",
      "resourceId": "site-1", // optional - required for multiple subscriptions product
      "featureId": "feature-seats",
      "usage": 5
    }
    // ...
  ]
}

Execute bulk import

  • Obtain Server API key from https://app.stigg.io/account/settings
  • Export it as environment variable:
    export STIGG_SERVER_API_KEY='<SERVER-API-KEY>'
    
  • Initiate the bulk import process (you can either import all at once or do it separately):
    npx @stigg/bulk-import --customers-file customers.json --subscriptions-file subscriptions.json --usage-file usage.json
    
  • During the import process there will be a progress bar.
  • At the end of the process a summary will be displayed.

Readme

Keywords

none

Package Sidebar

Install

npm i @stigg/bulk-import

Weekly Downloads

0

Version

1.7.0

License

MIT

Unpacked Size

51.4 kB

Total Files

29

Last publish

Collaborators

  • yelena-stigg
  • aaviran-stigg
  • yt-stigg
  • nadavsho
  • alexfedin
  • mortal94
  • itzik.stigg
  • oratstigg
  • stiggnpc
  • nadavstigg
  • royyy
  • antonzy