Creem setup
This page is primarily for administrators and developers configuring billing.
1. Create or access a Creem account
Section titled “1. Create or access a Creem account”- Sign in to Creem.
- Confirm you can switch between test and live mode.
2. Get API keys (test and live)
Section titled “2. Get API keys (test and live)”- Open your Creem dashboard settings.
- Copy and store these values for both test and live mode:
- API key (used as
SecretKeyin app configuration)
3. Configure webhook endpoint
Section titled “3. Configure webhook endpoint”- Open your Creem dashboard webhook settings.
- Create endpoint:
https://<your-domain>/api/creem/webhook. - For local development, you can use a tunnel (for example ngrok) to forward webhook events to your local machine.
4. Copy webhook signing secret
Section titled “4. Copy webhook signing secret”- Open your webhook endpoint details in Creem.
- Copy the signing secret.
- Save it as
Creem:WebhookSecretin app configuration.
5. Prepare pricing in Aisman first
Section titled “5. Prepare pricing in Aisman first”Before go-live, finish your pricing setup inside Aisman:
- Define tiers, included features, add-ons, currencies, and region-specific overrides in the pricing admin UI.
- Use the admin page as the source of truth for pricing data; Creem products are created dynamically at checkout time and cached for reuse.
- Verify which prices are tax-exclusive (Creem applies taxes on top of your prices automatically when tax mode is set to exclusive).
- Activate only the tiers, features, and add-ons you want customers to see.
- The pricing admin area is restricted to the master pricing role.
Aisman creates Creem products on the fly during checkout and caches them for subsequent purchases with the same configuration. You do not need to pre-create products in Creem manually.
6. Understand checkout mode
Section titled “6. Understand checkout mode”- Aisman uses an integrated Creem checkout experience inside the pricing flow.
- Products are created dynamically and cached in a
CreemProductCachetable for reuse. - Subscription checkout includes the selected tier together with supported add-ons.
- For seat-based organization tiers, the checkout includes the number of seats as units.
- All prices are sent as tax-exclusive so Creem calculates and adds taxes on top of your listed price where applicable.
7. Add Creem values to appsettings.json
Section titled “7. Add Creem values to appsettings.json”Set configuration values in appsettings.json (or environment-specific secure configuration):
{ "Creem": { "ApiKey": "your-creem-api-key", "WebhookSecret": "your-webhook-secret", "BaseUrl": "https://api.creem.io" }}Use appsettings.Development.json for test-mode overrides:
{ "Creem": { "ApiKey": "your-test-api-key", "WebhookSecret": "your-test-webhook-secret", "BaseUrl": "https://test-api.creem.io" }}Do not commit real live secrets to source control.
8. Test in test mode
Section titled “8. Test in test mode”- Run checkout in test mode.
- Use Creem test cards.
- Verify webhook delivery and app-side subscription updates.
- Confirm payment failure and retry scenarios are handled.
- Test seat-based billing by purchasing an organization tier with multiple seats.
9. Go-live checklist
Section titled “9. Go-live checklist”Before switching to production:
- Replace all test keys with live keys in
appsettings.json. - Confirm webhook endpoint and live signing secret.
- Re-test an end-to-end purchase in live-safe conditions.
- Monitor first live events in Creem dashboard and application logs.
Related docs
Section titled “Related docs”- Pricing and subscriptions
- Output processing for post-agent processing workflow