Authentication Overview
Waffo Pancake supports two authentication methods for API access:API Key Authentication
API Keys provide permanent server-to-server authentication using RSA-SHA256 signatures. The private key never leaves your server.Request Headers
API Key authentication does not require the
X-Environment header. Each API Key is bound to either test or prod at creation time. The environment is determined by which key successfully verifies the signature.One key covers every store. The API Key and
X-Merchant-Id are merchant-level: all stores under your merchant account share the same credential, and the store a call acts on comes from the request itself — the storeId field on endpoints that take one, or the store that owns the productId on checkout sessions. The store ID shown on the Dashboard’s Integration page is only an example value (by default your most recently created store) and does not change when you switch stores; copy the ID of the store you actually mean to target.Using the SDK (Recommended)
Signing Algorithm (Manual Integration)
If you’re not using the SDK, you need to implement RSA-SHA256 request signing:Manual Signing Examples
Keep your server clock NTP-syncedThe accepted timestamp window is asymmetric: from 5 minutes behind server time to 1 minute ahead of it. A clock running fast is the tighter constraint — if your server clock is more than 1 minute ahead, every signed request is rejected with
401 Unauthorized even though the signature itself is correct.Store Slug Authentication
For public-facing checkout flows, use Store Slug authentication. This allows visitors to create checkout sessions and query public store data without API Key credentials.Request Headers
Example
Creating API Keys
1
Go to API & Development Page
Navigate to Dashboard → API & Development → API Keys
2
Create API Key
Click “Create API Key” to generate a new RSA key pair. The public key is sent to the server automatically.
3
Name and Configure
Give it a descriptive name (e.g., “Production Server”) and select the target environment (Test or Production).
4
Download Private Key
Download your private key immediately. It will not be shown again.
Authentication Method Comparison
Authentication Errors
Security Best Practices
- Never expose private keys in client-side code, version control, or public repositories
- Use HTTPS for all API requests
- Verify Webhook signatures to prevent forged requests
- Separate test and production keys — create distinct keys for each environment
- Rotate keys regularly, especially after team member changes
- Monitor API usage in the Dashboard for unusual activity