WooCommerce Integration

Seamlessly deliver digital products through Continuata when customers purchase from your WordPress/WooCommerce store.

Integration Methods

Choose the integration method that best fits your WordPress setup:

WordPress Plugin (Recommended)

Official plugin that integrates directly with WooCommerce.

  • • Easy setup and configuration
  • • Automatic SKU mapping
  • • Built-in email templates
  • • WordPress admin integration

Webhook Integration

Direct webhook setup for custom implementations.

  • • More technical setup
  • • Greater customization
  • • Custom order processing
  • • Advanced filtering options

Method 1: WordPress Plugin Setup

Step 1: Install the Plugin

  1. Download the Continuata WooCommerce plugin
  2. In WordPress admin, go to Plugins → Add New → Upload Plugin
  3. Upload the plugin zip file and activate it
  4. Navigate to WooCommerce → Continuata Settings

Step 2: Configure API Connection

  1. Get your API key from Continuata dashboard (Settings → API Keys)
  2. Enter your organization ID and API key in the plugin settings
  3. Test the connection by clicking "Test API Connection"
  4. Save settings

Step 3: Map Products

  1. Go to Products in WooCommerce admin
  2. Edit a digital product
  3. In the "Continuata" meta box, select the corresponding Continuata product
  4. Configure download settings (expiration, download limits)
  5. Save the product

Method 2: Webhook Integration

For advanced users who prefer direct webhook integration:

Step 1: Configure Webhook Endpoint

Set up WooCommerce to send order completion webhooks to Continuata:

Add this to your theme's functions.php or a custom plugin:

add_action('woocommerce_order_status_completed', function($order_id) {
    $order = wc_get_order($order_id);
    
    // Only process orders with digital products
    if (!$order->has_downloadable_item()) return;
    
    $webhook_data = [
        'order_id' => $order_id,
        'customer_email' => $order->get_billing_email(),
        'customer_name' => $order->get_billing_first_name() . ' ' . $order->get_billing_last_name(),
        'items' => []
    ];
    
    foreach ($order->get_items() as $item) {
        $product = $item->get_product();
        if ($product && $product->is_downloadable()) {
            $webhook_data['items'][] = [
                'sku' => $product->get_sku(),
                'name' => $product->get_name(),
                'quantity' => $item->get_quantity()
            ];
        }
    }
    
    // Send to Continuata webhook
    wp_remote_post('https://continuata.io/webhooks/YOUR_ORG_ID/woocommerce', [
        'body' => json_encode($webhook_data),
        'headers' => [
            'Content-Type' => 'application/json',
            'X-WooCommerce-Signature' => hash_hmac('sha256', json_encode($webhook_data), 'your_webhook_secret')
        ]
    ]);
});

Step 2: Configure SKU Mapping

Map WooCommerce product SKUs to Continuata products in your dashboard (Settings → Integrations → SKU Mapping).

Email Templates

Customize how download links are delivered to customers:

Plugin Email Template

Branded emails sent directly from WordPress.

  • • Matches your site branding
  • • Integrates with WooCommerce emails
  • • Customizable via WordPress admin

Continuata Email Service

Professional transactional emails from Continuata.

  • • High deliverability rates
  • • Professional templates
  • • Automatic retry logic

Testing Your Integration

Test Checklist

  • Create a test digital product in WooCommerce
  • Map it to a Continuata product
  • Place a test order and complete payment
  • Verify download token is generated
  • Test the download link functionality
  • Check that email delivery works (if configured)

Advanced Configuration

Custom Fields Mapping

Map WooCommerce custom fields to Continuata download token metadata:

// Example: Map customer license type to token metadata
add_filter('continuata_token_metadata', function($metadata, $order, $product) {
    $license_type = get_post_meta($product->get_id(), '_license_type', true);
    $metadata['license_type'] = $license_type;
    return $metadata;
}, 10, 3);

Conditional Delivery

Only generate download tokens for specific order conditions:

// Example: Only deliver for orders over $50
add_filter('continuata_should_deliver', function($should_deliver, $order) {
    return $order->get_total() >= 50.00;
}, 10, 2);

Plugin Available

Download the official WooCommerce plugin from yourdashboard integrations page or contact support@continuata.com for assistance.