TinyShip
TinyShip
 TinyShip
TinyShip
TinyShip Documentation
TinyShip User GuideGetting StartedBasic Configuration
Payment configurationStripeDodo Payments ConfigurationCreemPayPalWeChat PayAlipayDynamic PricingPayment testing
Credits System ConfigurationAffiliate System Configuration
Storage Service ConfigurationDatabase ConfigurationCaptcha Configuration
Development Best PracticesLocal E2E Workflow
User GuidePayment

Creem

Configure Creem payments

Creem is a checkout built for indie developers selling internationally. Onboarding is lighter than Stripe, and it supports one-time payments and subscriptions.

Setup

  1. Create a Creem account

    • Go to the Creem website
    • Sign up and finish verification
  2. Get API credentials

    • Open the Creem Dashboard
    • Go to the API settings page
    • Generate an API key and a webhook secret
  3. Create a product

    • Create the product in the Dashboard or through the API
    • Set the price and billing period
    • Copy the product ID. You will set it as creemProductId
  4. Configure the webhook

    • Go to Developers → Webhooks
    • Add this URL: https://yourdomain.com/api/payment/webhook/creem

Environment variables

Add these to .env:

# Creem
CREEM_API_KEY=creem_xxxxxxxx             # API key
CREEM_SERVER_URL=https://api.creem.io    # Optional. Defaults to the test API: https://test-api.creem.io
CREEM_WEBHOOK_SECRET=whsec_xxxxxxxx      # Webhook signing secret

CREEM_SERVER_URL is optional. When it is unset, the app uses https://test-api.creem.io.

Features

  • Multiple currencies
  • Flexible pricing
  • One-time payments and subscriptions
  • A modern API
  • A simpler review process than Stripe
  • A practical option for indie developers

Plan example

The config/payment.ts example below applies only to static pricing (the default). With dynamic pricing, you do not need to edit config/payment.ts. Create the plan in the admin panel at /admin/pricing and fill in creemProductId there.

monthlyCreem: {
  provider: 'creem',
  id: 'monthlyCreem',
  amount: 10,
  currency: 'USD',
  duration: {
    months: 1,
    type: 'recurring'
  },
  creemProductId: 'prod_1M1c4ktVmvLgrNtpVB9oQf',
  i18n: {
    'en': {
      name: 'Monthly Plan (Creem)',
      description: 'Perfect for short-term projects via Creem',
      duration: 'month',
      features: ['All premium features', 'Priority support']
    },
  }
}

Back to Payment overview

Dodo Payments Configuration

Configure Dodo Payments

PayPal

Configure PayPal payments

On this page

SetupEnvironment variablesFeaturesPlan example