Shopify
Accept KNET, mada, cards and Apple Pay in your Shopify store with the Teyra Pay app.
Not released yet
The Teyra Pay app for Shopify is built and waiting for Shopify's payments app review, so it isn't in the Shopify App Store yet. This page describes how setup works so you can prepare. Contact support@teyra.co to join the early access list.
The Teyra Pay Shopify app adds Teyra Pay as a payment option at your store's checkout. Customers are redirected to the Teyra Pay hosted checkout to pay with KNET, mada, cards, Apple Pay and other enabled methods, then come back to the Shopify order confirmation page. The app confirms every payment with the Teyra Pay API before Shopify marks the order as paid. Payments made through the app appear in your Teyra Pay dashboard with channel set to shopify and reference set to the Shopify payment ID.
Before you start
- A Teyra Pay account. Test mode works right away; live payments need an approved account.
- A Shopify store on a plan that supports third-party payment apps, and staff permissions to install apps.
- Your store currency must be one Teyra Pay supports (
KWD,SAR,AED,QAR,BHD,OMR,JOD,EGP). - Payment capture set to automatic in Shopify (Settings → Payments → Payment capture method). Teyra Pay charges the customer at checkout; manual capture isn't supported.
Setup
Install the app
From the Shopify App Store, search for Teyra Pay and click Install. Approve the permissions the app requests. Shopify then opens the app's Connect Teyra Pay page.
Connect your Teyra Pay account
Paste a secret API key from Developers → API keys in the Teyra Pay dashboard. Start with a test key (sk_test_…). The app checks the key with Teyra Pay before saving it.
Leave Webhook signing secret empty: the app registers its own webhook endpoint in your Teyra Pay account (you'll see it under Developers → Webhooks). Only fill it in if you created the endpoint yourself with the URL shown on the page.
Click Save and continue. The app tells Shopify it's ready and takes you back to Shopify's payment settings.
Activate the payment method
In Shopify admin, open Settings → Payments, find Teyra Pay under additional payment methods and activate it. Turn on test mode while you use a test key.
Test mode must match your key
Shopify test mode works only with a test key (sk_test_…), and live checkout only with a live key (sk_live_…). If they don't match, Teyra Pay declines the payment at checkout so real orders can't be marked paid with test payments.
Place a test order
Place an order in your store, pick Teyra Pay at checkout and pay with a test card on the test checkout page. Check that the order is marked Paid in Shopify and appears in the Teyra Pay dashboard.
Go live
When your Teyra Pay account is approved, open the app from Settings → Payments → Teyra Pay, save a live key (sk_live_…), then turn off test mode in Shopify.
What customers and orders see
| Teyra Pay payment | At checkout | Shopify order |
|---|---|---|
succeeded | Back to the order confirmation page | Paid |
failed | Back to checkout with a "payment declined" message; they can pick another method | No order |
processing | Back to Shopify | Pending until Teyra Pay confirms, then Paid (or the payment is declined) |
canceled, expired, or the customer leaves the payment page | Back to checkout to try again | No order |
Refunds
Refunds issued from the Shopify order page are sent to Teyra Pay automatically, in full or in part. Shopify shows the refund as pending until Teyra Pay confirms it, usually right away. If Teyra Pay can't refund (for example, more than the amount left), Shopify shows the refund as failed with the reason. Refunds also appear in the Teyra Pay dashboard.
Uninstalling
Uninstalling the app removes Teyra Pay from your checkout, and you can no longer refund earlier Teyra Pay orders from Shopify. Refund them from the Teyra Pay dashboard instead. The app deletes the data it stored about your store 48 hours after you uninstall. Your payments stay in your Teyra Pay account.
Troubleshooting
| Problem | Check |
|---|---|
| Teyra Pay doesn't appear at checkout | The payment method is activated in Shopify and the store currency is supported. |
| Checkout says the payment couldn't be processed right away | Test mode in Shopify matches your key (test key ↔ test mode), payment capture is automatic, and the key is connected in the app. |
| Orders stay Pending | In the Teyra Pay dashboard, look at the payment's status and the app's webhook deliveries under Developers → Webhooks. Don't delete the endpoint the app registered. If you did, save your key again in the app. |
Live payments fail with merchant_not_active | Your Teyra Pay account isn't approved yet. Use a test key. |