Skip to content

Creem setup

This page is primarily for administrators and developers configuring billing.

  1. Sign in to Creem.
  2. Confirm you can switch between test and live mode.
  1. Open your Creem dashboard settings.
  2. Copy and store these values for both test and live mode:
  • API key (used as SecretKey in app configuration)
  1. Open your Creem dashboard webhook settings.
  2. Create endpoint: https://<your-domain>/api/creem/webhook.
  3. For local development, you can use a tunnel (for example ngrok) to forward webhook events to your local machine.
  1. Open your webhook endpoint details in Creem.
  2. Copy the signing secret.
  3. Save it as Creem:WebhookSecret in app configuration.

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.

  • Aisman uses an integrated Creem checkout experience inside the pricing flow.
  • Products are created dynamically and cached in a CreemProductCache table 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.

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.

  1. Run checkout in test mode.
  2. Use Creem test cards.
  3. Verify webhook delivery and app-side subscription updates.
  4. Confirm payment failure and retry scenarios are handled.
  5. Test seat-based billing by purchasing an organization tier with multiple seats.

Before switching to production:

  1. Replace all test keys with live keys in appsettings.json.
  2. Confirm webhook endpoint and live signing secret.
  3. Re-test an end-to-end purchase in live-safe conditions.
  4. Monitor first live events in Creem dashboard and application logs.