CLI Configuration
Master advanced configuration options and customization techniques for the TagadaPay CLI v3.Plugin Manifest
Theplugin.manifest.json file is the core configuration for your plugin:
plugin.manifest.json
Manifest Fields Explained
pluginId (required)
pluginId (required)
Unique identifier for your plugin
- Must be unique across the TagadaPay platform
- Used for deployment identification
- Cannot be changed once deployed
name (required)
name (required)
Human-readable plugin name - Displayed in the TagadaPay dashboard - Can contain spaces and special
characters
json "name": "Premium Checkout Experience" version (required)
version (required)
Semantic version number - Follows SemVer format:
MAJOR.MINOR.PATCH - Used in deployment names - Helps
track plugin updates json "version": "2.1.0" pages (required)
pages (required)
Array of page configurationsEach page defines a route in your plugin:
path: URL path (supports parameters with:param)features: Array of feature types or objects with requirementsisDefault: Mark as default page (one per plugin)isEntry: Mark as entry pointremappable: Allow path remapping to external URLsdescription: Optional page description
mode (optional)
mode (optional)
Plugin loading mode -
"direct-mode": Load plugin directly (default, recommended) - "iframe-mode":
Load in iframe (legacy) json "mode": "direct-mode" router (optional)
router (optional)
Advanced routing configuration
basePath: Base path for all routesmatcher: Path pattern to match (uses path-to-regexp)excluder: Pattern to exclude from matching
Page Features
Standard Features
Simple string features for common page types:Complex Features with Requirements
Features that need specific data or capabilities:landing- Landing pagescheckout- Checkout flowsthankyou- Order confirmationproduct-page- Product detailscatalog- Product listingsupsell- Upsell offerspost-purchase- Post-purchase flowsstatic- Static content
payment- Payment processingshipping- Shipping calculationcustomer- Customer dataorder- Order informationcart- Shopping cartinventory- Inventory management
Path Remapping
Path remapping allows external URLs to map to internal plugin paths:Enable Remapping
Mark pages as remappable in your manifest:Example Remap Scenario
Testing Remapping Locally
Local Development Config
Create.local.json for local development:
.local.json
storeId: Your development store IDaccountId: Your account IDcustomerId: Test customer ID (optional)config: Configuration variant name (matchesconfig/*.jsonfilename)basePath: Override base path (usually undefined)apiUrl: API endpoint for development
Configuration Variants
Directory Structure
Environment Configs
Development
config/development.json
Staging
config/staging.json
Production
config/production.json
Theme Variants
config/variants/theme-blue.json
config/variants/holiday-special.json
Deployment Configuration
Deploy with Specific Config
Config Priority
The CLI resolves configuration in this order:- Command-line config (
--configflag) - Interactive selection
.local.json(for local development)- Default/no config (uses store settings only)
Environment Variables
Set global CLI preferences:Using Environment-Specific URLs
CLI Config File
Create~/.tgdclirc for persistent CLI settings:
~/.tgdclirc
Advanced Configuration
Custom Build Directory
plugin.manifest.json
Custom CDN Configuration
config/production.json
Analytics Configuration
config/production.json
Feature Flags
config/production.json
Configuration Validation
The CLI automatically validates your configuration:Best Practices
1. Environment-Specific Configs
✅ Do:2. Sensitive Data
✅ Do:3. Config Versioning
config/production.json
4. Documentation
Add README for each config variant:config/variants/README.md
