Code Monkey home page Code Monkey logo

exchange-addon-licensing's Introduction

Licensing add-on for iThemes Exchange

Build Status codecov.io

Licensing for iThemes Exchange allows you to sell license keys for your digital products.

Licensing is a commercial plugin available from Iron Bound Designs. The plugin is hosted here on a public Github repository in order to better faciliate community contributions from developers and users alike. If you have a suggestion, a bug report, or a patch for an issue, feel free to submit it here. We do ask, however, that if you are using the plugin on a live site that you please purchase a valid license from the website. We cannot provide support to anyone that does not hold a valid license key.

Installation

Stable

Download the latest version from the Releases tab on GitHub.

Trunk

Licensing uses composer for dependency management. After cloning the repository run the following command:

composer install --no-dev

Demo Data

Licensing comes with a bash script to create demo data. I recommend doing this on a clean WordPress install. Before running the import script, be sure to add at least one zip file to your media library. This is used to create demo products and releases.

From the main plugin directory run the following commands:

cd wp-cli
./demo-data.sh <size>

Size can be one of small, medium, large, or giant. I'd recommend sticking with small or medium, as the default Exchange admin won't scale well to a large purchase count.

Running the demo data script will create customers, product, releases, activations and renewal records.

Recommended Add-ons

  1. Recurring Payments. The Recurring Payments add-on allows you to limit the length of a license. It also allows you configure the license to auto-renew.

  2. Variants. The Product Variants add-on allows you to offer different activation limits depending on the type of license purchased. For example: individual, developer and unlimited license types.

  3. Stripe. The Stripe add-on is the easiest way to accept payments for your products. However, all payment gateways should work.

  4. wpMandrill. Licensing sends renewal reminders to your customers when their license key is about to expire. Additionally, emails can be sent to customers who have not yet updated to the latest version of your products. By installing the wpMandrill plugin, these notifications will be automatically sent out using Mandrill's HTTP API instead of wp_mail(). This should significantly improve the speed notifications are sent at.

  5. Manual Purchases. The Manual Purchases add-on allows you to manually create license keys if needed.

Help

Documentation can be found in our Help Center. Additionally, on every admin page has a Help tab with inline help for that screen.

HTTP API

Licensing comes with an HTTP API for handling product updates, site activations and deactivations, etc... The API is authenticated using Basic Auth for providing license keys and activation records.

A sample Plugin Updater and Theme Updater are provided. You can check these out to see how the API can be consumed.

WP CLI

Licensing has robust support for WP CLI. Just about anything you can do from the admin UI can be done via the command line. All commands are under the main itelic command followed by a grouping command.

For example this following will list the first 20 license keys:

wp itelic key list

This will disable the license key abcd-1234

wp itelic key disable abcd-1234

You can create a new release from the command line like so. This will create a new major release for the product with an id of 7. The new version will be 1.2 and the file ID used for updates is 7. This can be used in combination with the wp media import command to streamline how you release new updates for your software.

wp itelic release create --product=5 --version=1.2 --file=7 --type=major

Screenshots

Licenses

Edit License

Releases

New

New Release

Overview

Release Overview

Stats

Release Stats

Notification Editor

Release Notify

Reports

Renewals

Renewal Report

Licenses

Licenses Report

Installed Versions

Versions Report

Product

Edit Product

exchange-addon-licensing's People

Contributors

timothybjacobs avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.