autumn-best-practices

Autumn Integration Guide

Safety Notice

This listing is imported from skills.sh public index metadata. Review upstream SKILL.md and repository scripts before running.

Copy this and send it to your AI assistant to learn

Install skill "autumn-best-practices" with this command: npx skills add useautumn/skills/useautumn-skills-autumn-best-practices

Autumn Integration Guide

Always consult docs.useautumn.com for code examples and latest API.

Autumn is a TypeScript-first billing SDK supporting subscriptions, usage-based pricing, credits, trials, and more via Stripe.

Quick Reference

Environment Variables

  • AUTUMN_SECRET_KEY
  • API key (required). Get one at app.useautumn.com

Installation

npm install autumn-js # Node.js pip install autumn-py # Python

Core Methods

Method Purpose

customers.create

Create or get customer (idempotent)

checkout

Get Stripe URL or payment preview

attach

Confirm purchase (card on file)

cancel

Cancel subscription

check

Verify feature access

track

Record usage

products.list

Get products with billing scenarios

Core Config Options

Option Notes

secretKey

Required. From env AUTUMN_SECRET_KEY

baseURL

Optional. Defaults to https://api.useautumn.com

Billing Patterns

Check → Work → Track

Always follow this order for protected actions:

const { data } = await autumn.check({ customer_id, feature_id: "api_calls" }); if (!data.allowed) return { error: "Limit reached" };

const result = await doWork();

await autumn.track({ customer_id, feature_id: "api_calls", value: 1 }); return result;

Two-Step Checkout

const { data } = await autumn.checkout({ customer_id, product_id: "pro" });

if (data.url) return redirect(data.url); // New customer → Stripe

// Returning customer → show confirmation, then: await autumn.attach({ customer_id, product_id: "pro" });

Product Scenarios

Use products.list to get scenarios. Don't build custom logic.

Scenario Meaning

new

Not subscribed

active

Currently on plan

scheduled

Scheduled for future

upgrade

Higher tier available

downgrade

Lower tier available

renew

Cancelled, can reactivate

Feature Types

Type Behavior

boolean

Access granted or denied

metered

Usage tracked against limit

credit_system

Pool for multiple features

React Hooks

Hook Purpose

useCustomer

Get customer, checkout, attach, check

usePricingTable

Get products with scenarios

import { AutumnProvider } from "autumn-js/react";

<AutumnProvider>{children}</AutumnProvider>

Handler Imports

Framework Import

Next.js autumn-js/next

React Router autumn-js/react-router

Hono autumn-js/hono

Express autumn-js/express

Fastify autumn-js/fastify

Generic autumn-js/backend

Common Gotchas

  • URL field - Checkout URL is data.url , not data.checkout_url

  • Frontend checks - For UX only. Always enforce on backend

  • Track after success - Only track usage after work completes

  • Credit systems - Track metered features, not the credit system itself

  • Cancel via free plan - Prefer attach({ product_id: "free" }) over cancel()

  • Idempotent creation - customers.create returns existing customer if ID exists

Resources

  • Docs

  • API Reference

  • LLMs.txt

  • GitHub

Source Transparency

This detail page is rendered from real SKILL.md content. Trust labels are metadata-based hints, not a safety guarantee.

Related Skills

Related by shared tags or category signals.

General

autumn-add-payments

No summary provided by upstream source.

Repository SourceNeeds Review
General

autumn-add-usage-tracking

No summary provided by upstream source.

Repository SourceNeeds Review
General

autumn-create-customer

No summary provided by upstream source.

Repository SourceNeeds Review
General

OpenClaw Skill Growth

Make OpenClaw Skills observable, diagnosable, and safely improvable over time. Use this when the user wants to maintain many SKILL.md files, inspect repeated...

Registry SourceRecently Updated
211Profile unavailable