Skip to main content

CLI Reference

The Hilt CLI is the operational layer for technical merchants and support-minded teams who want fast checks without opening the dashboard.

The dashboard is still the recommended way to launch a new template. The CLI is strongest once the merchant workflow is already live.

In the dashboard you will see templates. In the CLI, those same merchant objects are exposed as products.

Installation

The CLI is currently distributed from the Hilt source tree, not as a public npm package.

Build from source

git clone https://github.com/hilt/hilt-stack.git
cd hilt-stack
npm install
npm run build --workspace=packages/cli

Run it without a global install

After the build, you can invoke the CLI directly from the workspace:

node packages/cli/dist/index.js --help

Or through npm workspaces:

npm exec --workspace=packages/cli hilt -- --help

That is the cleanest launch-safe way to use it today.

Configure the API target

Typical environment:

export HILT_API_URL="https://api.hilt.so"

If you do not set HILT_API_URL, the CLI uses its configured default.

Version and help

Version

hilt --version

Representative output:

1.0.0

Top-level help

hilt --help

Current output:

Usage: hilt [options] [command]

Hilt Pay CLI

Options:
-v, --version Print the current version
-h, --help Show help

Commands:
login [options] Authenticate with Hilt and store your session token
logout Clear the stored session token
whoami Show the currently authenticated user
keys Manage API keys for Hilt Pay integrations
pay Hilt Pay merchant lookup and support workflows
help [command] display help for command

pay help

hilt pay --help

Current output:

Usage: hilt pay [options] [command]

Hilt Pay merchant lookup and support workflows

Options:
-h, --help Show help

Commands:
products Inspect launched products and templates
members Inspect membership and access state
receipts Inspect shareable payment receipts
help [command] display help for command

Authentication commands

hilt login
hilt logout
hilt whoami

hilt login

Interactive email/password login:

hilt login

Pre-fill the email prompt:

hilt login --email merchant@example.com

Use an existing Hilt token directly:

hilt login --token <jwt>

Current help output:

Usage: hilt login [options]

Authenticate with Hilt and store your session token

Options:
--email <email> Your Hilt account email
--token <token> Log in with an existing API token directly
-h, --help Show help

The CLI stores the session token in the OS config store and reuses it for later commands.

hilt logout

hilt logout

Clears the stored token.

hilt whoami

hilt whoami

Shows the current stored identity.

API key commands

hilt keys list
hilt keys create --name "Production integration"
hilt keys revoke <key_id>

hilt keys --help

Usage: hilt keys [options] [command]

Manage API keys for Hilt Pay integrations

Options:
-h, --help Show help

Commands:
list [options] List API keys for the current account
create [options] Create a new API key
revoke <id> Revoke an API key
help [command] display help for command

hilt keys list

hilt keys list
hilt keys list --json

Shows:

  • key id
  • prefix
  • permissions
  • sandbox state
  • creation and last-use dates
  • usage summary
  • recent activity

hilt keys create

hilt keys create --name "Production integration"
hilt keys create --name "Sandbox checks" --sandbox
hilt keys create --name "Production integration" --json

The raw key is printed once. Store it immediately.

hilt keys revoke

hilt keys revoke <key_id>

Revocation is immediate and permanent.

Hilt Pay commands

Current Hilt Pay commands in the CLI include:

hilt pay products list
hilt pay products get <id>
hilt pay products archive <id>

hilt pay members list
hilt pay members lookup --wallet BUYER_WALLET
hilt pay members lookup --identity buyer_handle
hilt pay members lookup --tx TRANSACTION_SIGNATURE
hilt pay members get <membership_id>

hilt pay receipts list
hilt pay receipts get <id>

Product commands

List products

hilt pay products list
hilt pay products list --status ACTIVE --type PAYMENT_LINK
hilt pay products list --limit 50 --offset 0 --json

Maps to:

GET /v1/products

Get one product

hilt pay products get <product_id>
hilt pay products get <product_id> --json

Maps to:

GET /v1/products/{product_id}

Archive a product

hilt pay products archive <product_id>

Maps to:

DELETE /v1/products/{product_id}

Membership commands

List memberships

hilt pay members list
hilt pay members list --product <product_id>
hilt pay members list --status ACTIVE --platform TELEGRAM
hilt pay members list --limit 50 --offset 0 --json

Maps to:

GET /v1/memberships

Lookup memberships

hilt pay members lookup --wallet BUYER_WALLET
hilt pay members lookup --identity @crzypeas
hilt pay members lookup --tx 5zLCm5...
hilt pay members lookup --product <product_id> --wallet BUYER_WALLET --json

Maps to:

GET /v1/memberships/lookup

Get one membership

hilt pay members get <membership_id>
hilt pay members get <membership_id> --json

Maps to:

GET /v1/memberships/{membership_id}

Receipt commands

List receipts

hilt pay receipts list
hilt pay receipts list --page 1 --per-page 50
hilt pay receipts list --wallet BUYER_WALLET --json

Maps to:

GET /v1/receipts

Get one receipt

hilt pay receipts get <receipt_id>
hilt pay receipts get <receipt_id> --json

Maps to:

GET /v1/receipt/{receipt_id}

JSON output mode

Most list and get commands support:

--json

Use JSON mode when:

  • piping into jq
  • storing snapshots in scripts
  • wiring the CLI into support or ops automation

Example workflows

Find out whether a buyer really paid

hilt pay members lookup --tx 5zLCm5...
hilt pay receipts list --wallet BUYER_WALLET

Review all active products

hilt pay products list --status ACTIVE

Inspect a support case by identity

hilt pay members lookup --identity @crzypeas
hilt pay receipts get <receipt_id>

Current scope and limitations

The CLI is intentionally operational today.

That means it currently focuses on:

  • login
  • key management
  • product inspection
  • member lookup
  • receipt retrieval

It does not currently expose full publish-time creation flows for:

  • product creation and editing
  • membership creation
  • buyer checkout orchestration
  • merchant-defined webhook management
  • Stripe billing management
  • advanced support ticket workflows

For those, use the dashboard and the API directly.

This is by design for launch: the dashboard is the safest place to shape live templates, while the CLI is the fastest place to inspect and support them afterward.

Operational guidance

Use the CLI when you need:

  • terminal-based auth and key checks
  • quick merchant lookups
  • scripted merchant workflows
  • receipt or membership verification without opening the dashboard
  • repeatable operational checks around the same products already created in the app

Use the dashboard when you need:

  • template creation and branding
  • buyer journey shaping
  • member management
  • payment review
  • customer support context
  • billing and runtime management

For deeper route examples, keep API Reference and Examples open alongside the CLI.