WooCommerce setup guide

Connect WooCommerce to flashtimer

Give flashtimer a key to your store and your countdown timers follow your coupons and product sales: change a coupon's expiry date in WooCommerce and the timer in your emails changes with it. There is no plugin to install, you don't need a developer, and it takes about five minutes.

  • No plugin to install
  • Pro and up
  • About five minutes
  • Disconnect any time
flashtimer connected to WooCommerce: No plugin to install, Pro and up, About five minutes, Disconnect any time.

Before you start

What you need

  • Owner or admin in flashtimer

    Connecting an integration is up to your organization's owners and admins, on Pro and up.

  • An administrator login to WordPress

    One that can open WooCommerce → Settings. A Shop manager login works too. If you don't see that menu, ask whoever manages the site.

  • A store on https

    Your shop's address has to start with https://, which nearly every shop's does. WooCommerce only accepts keys over a secure connection.

Step by step

Connect WooCommerce

First you make a key for flashtimer in your WordPress admin (steps 1 to 3), then you paste it into flashtimer (steps 4 and 5). The last step is only there if you want to see what flashtimer added to your store.

  1. In WooCommerce

    Step 1: In WordPress, open WooCommerce → Settings → Advanced → REST API

    Sign in to your WordPress admin. In the menu on the left click WooCommerce, then Settings. Along the top click Advanced, and in the row of links under it click REST API keys.

    A key is your store's way of giving another service access of its own, which you can take away again whenever you like. Click Add key.

    your-store.com/wp-admin
    WooCommerce Settings on the Advanced tab with REST API keys selected, an empty list of keys, and the Add key button marked.
  2. In WooCommerce

    Step 2: Name the key flashtimer and choose Read/Write

    In Description, type flashtimer, so you recognise the key later. Leave User as it is: it is you.

    Set Permissions to Read/Write. This is the step people miss: with Read alone, flashtimer can see your coupons but can't ask your store to tell it when one changes, and the connection is refused. Then click Generate API key.

    your-store.com/wp-admin
    The Key details form with flashtimer typed in Description, the User field showing the admin, Permissions set to Read/Write and marked, and a Generate API key button.
    What flashtimer does with each permission
    Read
    Reads your coupons (code and expiry date), your products' sale dates and, for Stock Monitor, how many of a product are left.
    Write
    Adds flashtimer's four coupon webhooks to your store when you connect, updates their secret when you ask for a new one, and removes them when you disconnect. Nothing else.

    flashtimer never changes a coupon, a product, a price, an order or your stock. WooCommerce has no narrower permission than Read/Write for adding webhooks.

  3. In WooCommerce

    Step 3: Copy the Consumer key and the Consumer secret

    Your store shows two values: a Consumer key that starts with ck_ and a Consumer secret that starts with cs_. Keep this page open, or use the Copy buttons and paste both somewhere safe for a minute.

    WooCommerce shows the secret only this once. If you leave the page before copying it, click Revoke key on the list and make a new one. Treat both like a password.

    your-store.com/wp-admin
    The message API Key generated successfully, with the Consumer key and Consumer secret fields, each with a Copy button, and a Revoke key link.
  4. In flashtimer

    Step 4: In flashtimer, paste your store's address and the two keys

    In flashtimer, go to Settings → Integrations, open the E-commerce tab and click WooCommerce.

    In Store URL, type the address your shop opens at, starting with https://, like https://your-store.com. Not the address of the admin. Paste the key that starts with ck_ into Consumer Key and the one that starts with cs_ into Consumer Secret, then click Connect WooCommerce.

    app.flashtimer.com
    flashtimer's WooCommerce dialog with the Store URL, Consumer Key and Consumer Secret filled in, and the Connect WooCommerce button.
  5. In flashtimer

    Step 5: Connected: choose what flashtimer does by itself

    The dialog shows Connected and your store's address. flashtimer has asked your store to tell it whenever a coupon is added, changed, deleted or restored, and it also checks your store every few minutes.

    Under Automation, all three choices start ticked. Auto-create timers makes a timer for each coupon with an expiry date and each product with a sale end date, Auto-update timers moves a timer's end when you change that date, and Auto-archive timers puts a timer away when the coupon is deleted or the sale is over. Untick what you'd rather do yourself: your choice is saved as you make it.

    The fourth choice, Include single-use coupons, starts unticked. Coupons meant for one customer (limited to one use, tied to email addresses, or generated by a cart-recovery plugin for each abandoned cart) get no timer, because a store can make hundreds of them a week. Tick it only if you want timers for those too.

    That's the connection done.

    app.flashtimer.com
    flashtimer's WooCommerce dialog showing Connected, the store's address, the webhook signing secret marked Done, the three Automation choices ticked, Include single-use coupons unticked, and a Disconnect button.
  6. In WooCommerceOptional

    Step 6: See what flashtimer added to your store

    Back in WordPress, on the same Advanced tab, click Webhooks. You'll find four entries that start with flashtimer, one each for a coupon being created, updated, deleted and restored. They are how your store tells flashtimer about a change within seconds.

    There is nothing to do here. Leave them Active and don't delete them: if one goes missing, flashtimer still catches up every few minutes, and asks you to connect again to put it back. Disconnecting in flashtimer removes all four.

    your-store.com/wp-admin
    WooCommerce's Webhooks list with four active webhooks named flashtimer, for coupon.restored, coupon.deleted, coupon.updated and coupon.created, each delivering to api.flashtimer.com.

Once connected

What you can do next

  • Make a timer from a coupon or a sale

    Pro and up

    On the Timers page, open the arrow next to New timer and under Import choose WooCommerce. Pick a coupon or a product on sale and click Create timer: it counts down to that end date. A timer you make this way tells you when the date changes and offers to Sync.

  • Let new coupons and sales become timers by themselves

    Pro and up

    With Auto-create timers on, a new coupon with an expiry date gets a timer within seconds, and a product put on sale with an end date gets one within a few minutes. A sale scheduled to start later gets a timer that counts down to its start.

  • End a timer when a product runs low

    Business

    Open a timer, go to Automations and add a Stock Monitor: pick a product and the stock level at which the timer should end. The product needs Track stock quantity switched on in WooCommerce; for a product with variations, flashtimer counts all of them together.

Manage

Manage the connection

Disconnect
In Settings → Integrations → WooCommerce, click Disconnect. flashtimer removes its four webhooks from your store. Your timers stay and keep counting down; they stop following your store. To take the key away too, click Revoke on it under WooCommerce → Settings → Advanced → REST API keys.
Replace the keys
Make a new key in WordPress (steps 1 to 3) and connect again in flashtimer with your store's address and the new pair. Your Automation choices are kept, and the old webhooks are replaced, not doubled. Then revoke the old key.
Connect another store
An organization connects one store at a time. Connect with the other store's address and keys: timers that followed the old store are let go of, so they never follow a coupon from the wrong shop.
New signing secret
Click Regenerate next to the secret in flashtimer's dialog. flashtimer hands the new one to your store itself; there is nothing to paste.

Troubleshooting

If something doesn't work

Most problems show a message on flashtimer's Integrations page. Here's what each one means and what to do.

“These WooCommerce API keys are read-only.”
The key was made with Read permission. Make a new one with Read/Write (step 2) and connect again with it.
“WooCommerce refused these API keys.”
Check that the two values are in the right boxes (ck_ in Consumer Key, cs_ in Consumer Secret) with nothing cut off, and that the key still exists under REST API keys. The key's user has to be an administrator or a shop manager.
“There is no WordPress REST API at this address.”
Either the Store URL isn't your shop's own address, or WordPress is set to plain links. Use the address your shop opens at, and in WordPress go to Settings → Permalinks, choose anything but Plain and save.
“WordPress answered at this address, but WooCommerce's API isn't there.”
The address is a WordPress site, but WooCommerce isn't active on it. Check under Plugins that WooCommerce is activated, and that you typed the shop's address and not another site's.
“Something in front of your store … blocked flashtimer with HTTP 403.”
A security plugin, a firewall or bot protection stopped flashtimer before it reached WooCommerce. Ask whoever runs it to allow requests to /wp-json/wc/v3.
“Your store redirects to …”
Your shop lives at a slightly different address, usually with or without www. Connect again with the address the message names.
“flashtimer's webhooks were deleted from this store”
Someone removed one of the four webhooks in WordPress. Your timers still follow your store every few minutes. To get changes within seconds again, disconnect and connect again.
I changed a coupon's date and my timer didn't move
A timer you made yourself from a coupon, or linked by hand, doesn't change on its own: open it and click Sync to the new date. Timers that flashtimer created through Auto-create follow the coupon themselves, as long as Auto-update timers is ticked.
My new coupon didn't become a timer
Check that Auto-create timers is ticked, that the coupon is Published and that it has a Coupon expiry date that hasn't passed. A coupon limited to one use, tied to particular email addresses, or generated by a cart-recovery plugin gets no timer unless Include single-use coupons is ticked: those are made for one customer, not for a campaign.

Still stuck? Contact support.

Questions

Answered before you ask.