Skip to main content

Terrific Integration - WooCommerce

Who this is for: Your developer or WordPress admin. Some steps require both.


​What Terrific provides: Your Store ID and Embedding ID come from your Terrific contact. Have them ready before starting.

Before you begin

Check these before starting. If any are missing, the product sync may pull incomplete data or skip products entirely.

  • Admin access to your WordPress / WooCommerce site.

  • Products are Published (not draft or private) and marked In stock.

  • Each product has a SKU filled in. Products without a SKU may appear but can run into checkout issues.

  • Your Store ID and Embedding ID are confirmed with your Terrific contact.

Step 1. Embed the SDK

The Terrific SDK loads everything needed to render Terrific components on your site. It goes in the <head> of every page.

Add the script tag

Paste the following inside your site's <head> section, before the closing </head> tag:

<script src="https://terrific.live/terrific-sdk.js" storeid="YOUR_STORE_ID" async></script>

Replace YOUR_STORE_ID with the Store ID provided by your Terrific contact.

Option A. Theme functions.php (developer path)

1. Go to Appearance → Theme File Editor:

2. Then select functions.php from right handed menu:

3. Add the following:

function add_terrific_sdk_to_head() {
echo '<script src="https://terrific.live/terrific-sdk.js" storeid="YOUR_STORE_ID" async></script>';
}
add_action('wp_head', 'add_terrific_sdk_to_head');

4. Save changes.

Option B. Header plugin (no-code path)

1. Go to Plugins → Add New:

2. Install a plugin such as Insert Headers and Footers or WPCode:

3. Select Code Snippets → Header & Footer:

4. Paste the script tag into the Header text area replacing YOUR_STORE_ID with your Terrific Store ID:

5. Hit Save Changes.

Step 2. Add the embed block

The embed block tells Terrific where to render its component on the page. Paste it in the body of the page or template where you want the Terrific experience to appear.

<div data-source="terrific" embedding-id="YOUR_EMBEDDING_ID"></div>

Replace YOUR_EMBEDDING_ID with the ID of the specific component you want to display. The Embedding ID lives inside the Terrific platform, in the setup of the specific component.

Where to place the embed block on WooCommerce

  • Homepage — Add a Custom HTML block to your homepage and paste the embed block inside it.

  • Product pages (PDPs) — Insert via a shortcode plugin, or add to single-product.php in your theme.

  • Category pages — Add to the archive or category template in your theme.

If you need precise placement inside a specific PHP template file, locate the corresponding file in Appearance → Theme File Editor, then insert:

<?php echo '<div data-source="terrific" embedding-id="YOUR_EMBEDDING_ID"></div>'; ?>

Or you can add directly on a Custom HTML block:

Save Changes and that's it!

Step 3. Confirm the WooCommerce REST API is active

Terrific reads your WooCommerce catalog through the WooCommerce REST API. You'll generate a read-only API key, identify the products to feature, and share the details with your Terrific contact. Our team handles the connection on our side.

Confirm the WooCommerce REST API is active

Visit the following URL in a browser (replace with your domain):

https://your-store.com/wp-json/wc/v3/

If you see a page of text or data, the API is active. If you see a 404 or error, go to WP Admin → Settings → Permalinks and click Save Changes once; no other changes needed. Then try the URL again.

Generate your API keys

These keys let Terrific read your product catalog. They are read-only and you can revoke them at any time.

1. In WordPress, go to WooCommerce → Settings.

2. Open the Advanced tab, then click REST API.

3. Click Add key (or Create an API key).

4. Set a Description (e.g. Terrific), choose an admin user, and set Permissions to Read.

5. Click Generate API key.

6. Copy both the Consumer Key and the Consumer Secret immediately and share with Terrific team.

You can find more information about API Keys here.

Did this answer your question?