Ed25519-signed licenses with no call-home requirement. Four tiers of module access. Production/DR pairs and Active-Active clustering for enterprise uptime requirements.
min_license_level()Every module in DataFlow declares its minimum required license tier. The engine enforces license.tier ≥ module.min_level before each execution.
Annual subscription pricing. Pricing is based on the number of active data flows — not per-row, per-execution, or per-trading-partner charges. Contact us for multi-year and volume pricing.
The license tier is checked at three distinct points — before a flow is saved, before each step executes, and in the module listing UI — so module access restrictions are visible to designers, not just raised as runtime failures.
The API Gateway checks that every step in a flow references a module within the customer's licensed tier before allowing the flow to be saved. Out-of-tier modules are rejected with a clear error identifying the specific module and its required tier.
Before executing each step, the engine calls license_manager.check_module_tier(module_type, required_level). If the step's module requires a higher tier, execution fails immediately with a message like: "Module 'claude-ai' requires Professional (level 3), current license is Standard (level 2)."
The /api/v1/modules endpoint includes each module's min_license_level in its response. The Flow Designer uses this to visually dim or lock modules that are outside the current license tier — so users understand their options before building a flow.
Each license key is a signed JSON payload produced by VividMetriX using an Ed25519 private key. The engine verifies the signature against its embedded public key at startup and before each flow execution.
Every license carries a unique license ID, the customer name and email, the issued-at timestamp, and validity window (valid_from / valid_until). The is_expired() check runs locally.
The LicenseTier field encodes the tier level (1–4). The tier_satisfies(required) method is the single source of module gate checks throughout the engine.
The Entitlements struct carries max_flows, max_executions_per_day, max_modules, an optional allowed_modules allowlist, and a feature flag set.
The deployment_mode field and HaConfig struct encode the node's role in a cluster — including execution_enabled, max_nodes, and cluster_id. See the HA section below.
The license payload and its Ed25519 signature are bundled into a payload.signature format key. VividMetriX holds the signing private key; the platform embeds only the public key. Tampered licenses fail verification at startup.
Admins install licenses via POST /api/v1/license or the CLI. The LicenseManager exposes status_summary(), days_remaining(), and usage() for monitoring dashboards and alerting.
DataFlow's licensing system natively understands high-availability topology. Each node's license key encodes its role — the engine validates the deployment mode at startup and enforces execution restrictions automatically.
A single-server deployment. The node always executes flows. No replication is configured. Suitable for development, test, and lower-criticality production environments.
The active primary in a Production + DR pair. Executes all flows and continuously replicates flow definitions and credentials to the paired DR node. A typical HA customer purchases one Production and one DR license.
A warm standby node. Receives replicated flow definitions and credentials from the paired Production node but does not execute flows until promoted during a failover event. Promotion re-enables execution immediately.
All nodes execute flows simultaneously with bidirectional replication. Used for load-balanced, multi-node clusters where throughput and zero-downtime updates are required. Each node in the cluster requires its own full license.
dataflow-cli license promote command.
When deploying through AWS Marketplace or GCP Marketplace, DataFlow uses the same annual subscription tiers as direct licensing — billed through your cloud account with integrated metering.
Up to 5 active flows. Core module access — file transfer, processing, security, HTTP, email, and database query. No per-row or per-execution charges.
Up to 15 active flows. Adds cloud storage (S3, GCS, Azure Blob, R2), AS2, encryption (PGP, AES, Hash, HMAC), XML/JSON processing, and automation modules.
Up to 40 active flows. Adds ERP/CRM, AI/LLM, B2B/EDI, cloud data warehouses, pub/sub messaging, parallel execution, and SSO.
Unlimited active flows. All 49 modules — ODBC, AS4, OFTP2, S/MIME, sub-flows, data lineage, HA deployment modes, and air-gap support.
Marketplace billing is managed through your AWS or GCP account. Annual commit and private offer options are available — contact us for details. Pricing is identical whether you purchase directly or through a marketplace.