Guides
WooCommerce plugin
Take TigerPay payments on a WooCommerce store without writing code. The customer pays on the TigerPay page, and the plugin marks the order paid when the webhook arrives.
Before you start#
- WordPress 6.5 or newer, WooCommerce 8.0 or newer, and PHP 7.4 or newer. This page describes plugin version 1.1.1.
- Your store currency must be AED. If it is not, the plugin hides itself at checkout and shows a notice in the admin.
- A TigerPay merchant account with a test key. Live payments need your account to be verified first.
- The plugin works with the classic checkout, the block checkout, and High-Performance Order Storage.
- Your site must be on public
https, so TigerPay can reach your webhook.
Install#
- Download the plugin ZIP file (
tigerpay-payments-1.1.1.zip) from your TigerPay dashboard, under Online payments. - In WordPress, go to Plugins → Add New → Upload Plugin, choose the ZIP and click Install Now. (Or unzip it into
/wp-content/plugins/so you have a folder calledtigerpay-payments.) - Click Activate. WooCommerce must be active.
Set it up in test mode#
- Go to WooCommerce → Settings → Payments and open the TigerPay method. In the current plugin version it is listed as “TigerPay”.
- Paste your test secret key (starts with
sk_test_) into Test secret key. - Leave Test mode ticked, and tick Enable.
- Copy the Webhook URL shown on the same page. It looks like
https://your-store.com/?wc-api=tigerpay. - In your TigerPay dashboard, add a test webhook endpoint with that URL. Select these events:
payment.succeeded,payment.failed,payment.cancelledandrefund.succeeded. You can also selectrefund.failedto get a note on the order when a refund fails. - Copy the endpoint's signing secret (starts with
whsec_) into Test webhook signing secret in WooCommerce. - Click Save changes, then place a test order. Ask TigerPay for test card details.
Settings#
| Setting | Details |
|---|---|
| Enable/Disable | Turns the payment method on. Off by default. |
| Title | The name customers see at checkout. Default: Pay by card. |
| Description | The text shown under the name at checkout. |
| Test mode | On by default. Uses the test key and no real money moves. Turn it off to take live payments. |
| Live secret key / Test secret key | Your sk_live_ and sk_test_ keys. The plugin refuses a key with the wrong start. |
| Webhook URL | Read only. Add this as an endpoint in your TigerPay dashboard. |
| Live / Test webhook signing secret | The whsec_ secrets of your live and test endpoints. Each one has to match the mode. |
Go live#
- When TigerPay has enabled live payments for you, create a live key and a live webhook endpoint with the same Webhook URL.
- Paste the live key and the live webhook secret into the plugin.
- Untick Test mode and save.
- Place one small real order, then refund it, to check everything.
How it works#
- Customer
Chooses to pay by card and clicks the button at checkout. The order is created as Pending payment.
- Plugin
Creates a TigerPay payment for the order total, using the order number as the
reference, and sends the customer to the TigerPay page. - TigerPay
The customer pays. TigerPay sends a signed webhook to your store, and sends the customer back to your order-received page.
- Plugin
Checks the signature and the amount, and marks the order paid. If the customer comes back before the webhook has arrived, the plugin asks TigerPay once for the status.
| TigerPay payment | WooCommerce order |
|---|---|
succeeded | Paid. WooCommerce moves it on as for any paid order, and the payment id is saved. |
failed or expired | Failed |
cancelled | Cancelled |
| Paid, but the amount, currency or order number does not match | On hold, with a note. Check it in your TigerPay dashboard before you ship. |
The minimum card payment is AED 2.00.
Refunds#
Open the order, click Refund, enter the amount, and use the button that refunds through TigerPay. Part refunds work, and the total refunded can never be more than the customer paid. The plugin adds a note to the order, and a second note when the refund.succeeded webhook arrives.
Keep the refund reason short
The refund reason can be up to 64 characters. The plugin shortens longer reasons automatically.
Troubleshooting#
| Problem | What to check |
|---|---|
| The payment method does not show at checkout | Is it enabled? Is the store currency AED? Is there a secret key for the mode you are in? |
| Orders stay on Pending payment | The webhook is not arriving or not accepted. Check the endpoint URL in the TigerPay dashboard, that you chose the right events, and that the signing secret in the plugin is the one for that endpoint and mode. Make sure the site is public https and not behind a password, a firewall or maintenance mode. |
| "Invalid signature" in the log | The webhook secret is for another endpoint or the other mode, or your server clock is off by more than 5 minutes. |
| An order is On hold | The paid amount or order number did not match. Compare the order with the payment in your TigerPay dashboard. |
| Need details | Go to WooCommerce → Status → Logs and open the log with the source tigerpay-payments. Keys and secrets are never written to it. |