Skip to main content
This is the creem core package with full API access and advanced configuration options.

Migrating from creem_io?

Follow the migration guide to replace the deprecated wrapper with the core creem SDK.

Overview

The creem package is the official TypeScript SDK for the Creem API, providing:
  • Full API coverage with all available endpoints
  • Type-safe with comprehensive TypeScript definitions
  • Standalone functions optimized for tree-shaking
  • Configurable retry strategies with backoff options
  • Custom HTTP client support
  • Environment selection for production and test environments
  • MCP server support for AI applications (Claude, Cursor)
  • Debug logging for development

Installation

Install with your preferred package manager:

Quick Start


Environment Variables

We recommend storing your credentials in environment variables:

API Resources

The SDK organizes all operations into logical resources:

Products

Checkouts

Customers

Subscriptions

Update Behavior Options: - proration-charge-immediately: Calculate proration and charge immediately - proration-charge: Calculate proration and charge at next billing cycle - proration-none: No proration, just switch the plan

Licenses

Discounts

Transactions


Standalone functions (tree-shakable)

Every SDK method is also available as a standalone function. This is useful for browser / serverless environments where bundle size matters.

Webhooks

The creem TypeScript SDK includes helpers for verifying webhook signatures and parsing raw webhook payloads. It does not include opinionated access-management callbacks, so your application remains responsible for deciding which events grant or revoke access.
  • If you’re on Next.js, prefer the @creem_io/nextjs Webhook helper.
  • Otherwise, use constructWebhookEventEntity in your HTTP endpoint:

TypeScript Support

The SDK is written in TypeScript and provides comprehensive type definitions:
All API responses are fully typed, and the SDK automatically converts snake_case to camelCase for better TypeScript/JavaScript experience.

Error Handling

The SDK throws errors when API calls fail. Always wrap SDK calls in try-catch blocks:

References


For feedback or issues, open a PR or issue on the Creem SDK GitHub.