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 Key —
pk_live_...orpk_test_... - Secret Key —
sk_live_...orsk_test_... - Webhook Secret —
whsec_...(optional for local dev)
Where to Get Your Credentials
- Sign in to the Stripe Dashboard.
- Go to Developers → API keys.
- 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. - For the Webhook Secret, go to Developers → Webhooks → Add endpoint, set the URL to
https://yourstore.com/api/webhooks/stripe, subscribe topayment_intent.succeededandpayment_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/stripeSubscribe 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
- Sign in to the Authorize.net Sandbox (for testing) or live account (for production).
- Go to Account → Settings → Security Settings → API Credentials & Keys.
- Your API Login ID is displayed on that page. Click New Transaction Key to generate a Transaction Key.
- For the Public Client Key, go to Account → Settings → Security Settings → Manage Public Client Key and click Submit to reveal or generate it.
- 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
- Sign in to the Clover Developer Portal.
- Select your app (or create one) and go to REST Configuration.
- Your Merchant ID (MID) appears in the URL of your Clover merchant dashboard and under Account & Setup → Merchants.
- 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
- Sign in to the Square Developer Portal.
- Select your application (or click Create your first application).
- In the Credentials tab, copy the Application ID and Access Token. Use the Sandbox credentials for testing and Production credentials when going live.
- In the Locations tab, copy the Location ID for the location you want to process payments under.
- 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
- Go to Admin → Settings → Payment Settings.
- Click the tab for the processor you want to activate.
- 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.