Open Sky Commerce / Documentation

Payment Processors

Open Sky Commerce supports four payment processors: Stripe, Authorize.net, Clover, and Square. Only one is active at a time. All credentials are configured entirely through the admin panel — no payment-related environment variables are needed.

How Configuration Works

Navigate to Admin → Settings → Payment Settings. You will see tabs for each processor. Enter credentials in any tab, select which processor is active, and save. Credentials are encrypted using your APP_ENCRYPTION_KEY before being stored in the PaymentSettings database table. Secret keys are never returned to the browser — they are decrypted on the server at transaction time only.

Switching processors takes effect immediately with no redeployment.

Stripe

Stripe uses Stripe Elements (React Stripe JS) for a fully hosted card form. It also supports subscription billing via stored payment methods.

Required Fields (enter in admin panel)

  • Publishable Keypk_live_... or pk_test_...
  • Secret Keysk_live_... or sk_test_...
  • Webhook Secretwhsec_... (optional for local dev)

Where to Get Your Credentials

  1. Sign in to the Stripe Dashboard.
  2. Go to Developers → API keys.
  3. Copy the Publishable key and Secret key. Use test-mode keys (pk_test_ / sk_test_) while developing and live-mode keys (pk_live_ / sk_live_) in production.
  4. For the Webhook Secret, go to Developers → Webhooks → Add endpoint, set the URL to https://yourstore.com/api/webhooks/stripe, subscribe to payment_intent.succeeded and payment_intent.payment_failed, then copy the Signing secret.

Webhook Setup

In your Stripe dashboard, create a webhook endpoint pointing to:

https://yourstore.com/api/webhooks/stripe

Subscribe to payment_intent.succeeded and payment_intent.payment_failed. Copy the signing secret into the Webhook Secret field in the admin panel.

Authorize.net

Uses Authorize.net Accept.js for PCI-compliant card data handling. The environment can be toggled between sandbox and production directly in the admin panel.

Required Fields (enter in admin panel)

  • API Login ID
  • Transaction Key
  • Public Client Key
  • Environment — Sandbox or Production

Where to Get Your Credentials

  1. Sign in to the Authorize.net Sandbox (for testing) or live account (for production).
  2. Go to Account → Settings → Security Settings → API Credentials & Keys.
  3. Your API Login ID is displayed on that page. Click New Transaction Key to generate a Transaction Key.
  4. For the Public Client Key, go to Account → Settings → Security Settings → Manage Public Client Key and click Submit to reveal or generate it.
  5. Set Environment to Sandbox while testing and Production when you go live.

Clover

Clover processes online payments using an API access key and merchant ID. No point-of-sale hardware is required for web transactions.

Required Fields (enter in admin panel)

  • API Access Key
  • Merchant ID

Where to Get Your Credentials

  1. Sign in to the Clover Developer Portal.
  2. Select your app (or create one) and go to REST Configuration.
  3. Your Merchant ID (MID) appears in the URL of your Clover merchant dashboard and under Account & Setup → Merchants.
  4. To generate an API Access Token, go to your merchant dashboard → Account & Setup → API Tokens and create a new token with the required permissions (Orders and Payments write access).

Square

Square uses the Square Web Payments SDK. You'll need credentials from the Square Developer dashboard.

Required Fields (enter in admin panel)

  • Application ID
  • Location ID
  • Access Token
  • Webhook Secret — required for inventory sync via Square webhooks

Where to Get Your Credentials

  1. Sign in to the Square Developer Portal.
  2. Select your application (or click Create your first application).
  3. In the Credentials tab, copy the Application ID and Access Token. Use the Sandbox credentials for testing and Production credentials when going live.
  4. In the Locations tab, copy the Location ID for the location you want to process payments under.
  5. For the Webhook Secret, go to Webhooks → Subscriptions → Add subscription. Set the notification URL to https://yourstore.com/api/webhooks/square, subscribe to the inventory and catalog events you need, then copy the Signature key shown after saving.

Switching Processors

  1. Go to Admin → Settings → Payment Settings.
  2. Click the tab for the processor you want to activate.
  3. Enter its credentials, then select it as the active provider and save.

The storefront checkout will immediately begin using the newly selected processor.

Subscriptions & Recurring Billing

All four processors support subscription products. When a customer purchases a subscription, their payment method identifier is stored (encrypted) on the subscription order. A billing cron job at /api/cron/billing charges renewals off-session using the stored payment method. See Subscriptions for setup details.