autumn.config.ts file defines your pricing plans, features, and billing logic. This reference covers every parameter and option available.
Configuration files use TypeScript with full import support. Export your features and plans, then sync them with
atmn push.Configuration Structure
Your config file exports features and plans:autumn.config.ts
Features
Features define what can be metered, gated, or billed in your application.feature(config)
Unique identifier for the feature. Used in API calls and SDK methods.
Display name for the feature shown in dashboard and billing UI.
Feature type determining behavior:
"boolean"- Simple feature flag (on/off)"metered"- Usage-based feature with consumption tracking"credit_system"- Credit-based feature with cost mapping
Required for metered features. Determines usage behavior:
true- Single-use (consumed when used) like API calls, messagesfalse- Continuous-use (ongoing usage) like seats, storage
boolean or credit_system types.Required for credit_system features. Maps metered features to credit costs.Array of objects with:
metered_feature_id: string- ID of the metered featurecredit_cost: number- Credits required per usage
Optional array of event names that trigger this feature. Used for webhook integration.
Whether the feature is archived. Archived features are hidden but preserved for existing data.
Feature Types
Boolean Feature
Simple on/off feature flags:Metered Feature (Single-Use)
Features consumed when used - like API calls or messages:Metered Feature (Continuous-Use)
Features for ongoing usage - like seats or storage:Credit System Feature
Credit-based features with cost mapping:Plans
Plans combine features with pricing to create your subscription tiers.plan(config)
Unique identifier for the plan. Used in checkout and subscription APIs.
Display name for the plan shown in pricing tables and billing.
Optional description of the plan for marketing copy.
Optional grouping category for organizing plans in the dashboard.
Whether this plan is an add-on that can be purchased alongside other plans.
Whether to automatically assign this plan to new customers.
Base subscription price for the plan:
amount: number- Price in cents (e.g., 2000 = $20.00)interval: string- Billing interval:"month","quarter","semi_annual","year"
Array of
planFeature() objects defining what’s included in the plan.Optional free trial configuration:
duration_length: number- Trial duration (e.g., 14)duration_type: string- Duration type:"day","month","year"card_required: boolean- Whether card is required to start trial
Basic Plan Structure
Plan Features
Plan features define what’s included with each plan and how it’s priced.planFeature(config)
ID of the feature to include in this plan.
Amount included for free with the plan. For boolean features, omit this field.
Reset configuration for included amounts:
interval: string- Reset interval:"hour","day","week","month","quarter","semi_annual","year"
Pricing configuration for usage beyond included amounts.
Proration rules for quantity changes:
on_increase: string-"prorate"or"charge_immediately"on_decrease: string-"refund_immediately","prorate", or"no_action"
Rollover configuration for unused included amounts:
max: number- Maximum amount that can roll overexpiry_duration_type: string-"month","year", or"forever"expiry_duration_length: number- Expiry duration (ignored if type is “forever”)
Pricing Configuration
Theprice object supports multiple billing models:
Price per billing unit in cents.
Billing interval:
"month", "quarter", "semi_annual", "year". Omit for one-time charges.Billing method:
"usage_based"- Charge based on actual usage"prepaid"- Customer purchases fixed quantities upfront
Number of units per price. E.g., $5 per 100 credits =
amount: 500, billing_units: 100Tiered pricing configuration (alternative to flat pricing):
to: number | "inf"- Usage threshold for this tieramount: number- Price per unit in this tier
Maximum quantity that can be purchased (for usage_based billing).

