About autumn-create-customer
A setup skill for adding Autumn customer management to React and Node.js applications or backend-only services. It covers handler and provider setup, customer creation, and key integration decisions.
Key features
- 01React and Node.js integration paths
- 02Backend-only customer creation
- 03Next.js, Hono, Express, and Fastify handlers
- 04React customer provider and hook
- 05B2C and B2B customer ID guidance
Use cases
- 01Add Autumn customer handling to a React app
- 02Create customers from a backend service
- 03Choose user or organization customer IDs
Install
Copy the command and run it in a terminal.
$
npx skills add https:/ / github.com/ useautumn/ skills --skill autumn-create-customerAfter installing, type/autumn-create-customerin Claude Code to confirm it loaded.
Details
From the project READMEAutumn Customer Setup
Always consult docs.useautumn.com for code examples and latest API.
Quick Reference
Environment Variables
AUTUMN_SECRET_KEY- Required. Get one at app.useautumn.com
Installation
npm install autumn-js # Node.js
pip install autumn-py # Python
Integration Paths
| Stack | Path |
|---|---|
| React + Node.js | Mount handler + AutumnProvider |
| Backend only | Initialize client + call API |
Path A: React + Node.js
Handler Setup
| Framework | File | Import |
|---|---|---|
| Next.js App Router | app/api/autumn/[...all]/route.ts | autumn-js/next |
| React Router | app/routes/api.autumn.tsx | autumn-js/react-router |
| Hono | Any file | autumn-js/hono |
| Express | Any file | autumn-js/express |
| Fastify | Any file | autumn-js/fastify |
import { autumnHandler } from "autumn-js/next";
export const { GET, POST } = autumnHandler({
identify: async (request) => {
const session = await getSession(request);
return {
customerId: session.user.id, // or session.org.id for B2B
customerData: { name: session.user.name, email: session.user.email },
};
},
});
Client Setup
import { AutumnProvider } from "autumn-js/react";
<AutumnProvider>{children}</AutumnProvider>
// Different backend URL:
<AutumnProvider backendUrl={process.env.NEXT_PUBLIC_API_URL} />
Verify
import { useCustomer } from "autumn-js/react";
const { customer } = useCustomer();
console.log("Autumn customer:", customer);
Path B: Backend Only
Initialize
import { Autumn } from "autumn-js";
const autumn = new Autumn({ secretKey: process.env.AUTUMN_SECRET_KEY });
from autumn import Autumn
autumn = Autumn('am_sk_test_xxx')
Create Customer
const { data } = await autumn.customers.create({
id: "user_id_from_auth",
name: "Test User",
email: "[email protected]",
});
Common Gotchas
- B2C vs B2B - Decide if
customerIdis user ID or org ID before integrating - Idempotent -
customers.createreturns existing customer if ID exists - Backend URL - Pass
backendUrlto provider if API is on different domain - Secret key - Keep
AUTUMN_SECRET_KEYserver-side only
Resources
Comments
Markdown supported