All integration tutorials
UnityCreate → implement → sell

How to sell licenses for a Unity game or asset

Add product-scoped license validation to a Unity build, then publish that same product in a branded Store that takes payment and delivers the key automatically.

0% PermitCore commission Your payment account Automatic license delivery
C# / Unity
Unity Package Manager → Install from git URL
https://github.com/permitCore-spec/permitcore-sdk-unity.git#v2.1.1
using PermitCore;
using UnityEngine;

var client = new PermitCoreClient("https://api.permitcore.dev");
var result = await client.ValidateAsync(
    licenseKey,
    Application.version,
    productId);

if (!result.IsValid)
    ShowLicenseScreen(result.Message);
One connected workflow

From product record to paid customer

Use PermitCore for the licensing layer and Store checkout. Verified paid evidence triggers the configured license issuance and queues the delivery email; test actual delivery before launch.

  1. 01
    Create

    Create the product and license policy

    In Products, create the software your key unlocks. Choose its activation limit, validity, offline grace period, version range, and feature flags.

    • Create one product per game or paid asset
    • Set device limits and optional offline grace
    • Copy the product ID from the Admin panel
    • Create a test key before building the release
  2. 02
    Implement

    Install the Unity SDK and scope the key

    Put license activation in the first-run flow and validation at startup. Pass your product ID so a valid key for another product cannot unlock this one.

    These are application fragments: supply your own key/product variables and UI or host flow. A validation call does not register a device or reserve a floating session. Check failure before protected work. Offline use needs explicitly configured trusted public keys; follow the SDK 2.1.1 offline setup. For C++, use the vcpkg registry and pinned baseline in its installation reference, rather than assuming a built-in public port.

    https://github.com/permitCore-spec/permitcore-sdk-unity.git#v2.1.1
    • Keep the product ID with the build configuration
    • Activate once on the customer device
    • Validate on later launches
    • Map feature flags to editions or DLC
    Read the complete Unity SDK reference
  3. 03
    Verify

    Test the real validation path

    Use the generated test key to validate the happy path, then revoke it and confirm the game blocks access. Desktop, mobile, and console builds can also verify signed offline tokens locally; WebGL uses the online validation path.

  4. 04
    Sell

    Publish the product in your Store

    Connect your chosen Stripe, Paddle or Lemon Squeezy account, add the product to your branded PermitCore Store, and publish. Account credentials, matching catalog prices and signed webhook configuration are required. PermitCore processes the verified payment and handles Store license fulfillment.

    • Add screenshots and a clear product description
    • Price the game or asset in your Store
    • Connect your chosen Store payment provider
    • Test checkout and automatic key delivery
    Follow the Store setup guide
    PermitCore branded Store showing software products ready to buy
    Verified payment triggers license issuance and the delivery email queue.
Before you ship

Unity production checklist

The sample is intentionally small. Add these safeguards before making licensing part of a paid release.

  • Do not place privileged Admin API credentials in the Unity client.
  • Test revoked, expired, wrong-product, and activation-limit responses.
  • Use Unity's device identifier where its lifecycle matches your target platform.
  • Choose online grace or signed offline activation deliberately for each build target.
The complete commercial path

Stop at a working sale, not a working API call.

Create the license policy, ship the Unity integration, and give buyers a Store where they can purchase it.