Tryit Virtual Try
AI-powered virtual try-on for WooCommerce. Let your customers see how products look on them — before they buy.
Key Features
Everything included in this plugin
- One-click virtual try-on from any product page
- Photo upload with drag-and-drop support
- Webcam capture with live mirrored preview
- Real-time AI processing with progress indicator
- Download result image button
- Async queue processing (no PHP timeout)
- 3 AI providers: Replicate, FAL AI, Google Gemini
- Result caching to reduce API costs
- Per-product enable / disable control
- Analytics dashboard with daily chart
- HPOS (High-Performance Order Storage) compatible
- Rate limiting to prevent API abuse
Requirements
Before you install
| Requirement | Minimum | Recommended |
|---|---|---|
| WordPress | 6.0 | 6.8+ |
| WooCommerce | 7.0 | 9.0+ |
| PHP | 7.4 | 8.2+ |
| MySQL | 5.7 | 8.0+ |
| PHP Extensions | GD or Imagick (for image resizing) | |
| AI Provider Account | At least one of: Replicate, FAL AI, or Google AI Studio | |
Installation
Get up and running in minutes
-
Upload the Plugin In your WordPress admin go to
Plugins → Add New → Upload Plugin. Select thetryit-virtual-try.zipfile you downloaded from CodeCanyon and click Install Now. -
Activate Click Activate Plugin after installation. The plugin will automatically create its database tables and default settings.
-
Configure an AI Provider Go to
Virtual Try → AI Settings. Select your preferred AI provider and enter your API key. Click Test Connection to verify, then Save AI Settings. -
Enable on a Product Edit any WooCommerce product. In the right sidebar find the Virtual Try-On Settings panel. Check Enable Virtual Try-On, choose the product category, and save the product.
-
Test on the Frontend Visit the product page on your store. The Virtual Try-On button will appear. Upload a photo or use your webcam to test the full flow.
tryit-virtual-try folder via FTP to /wp-content/plugins/, then activate from the Plugins screen.
General Settings
Virtual Try → General
| Setting | Description | Default |
|---|---|---|
| Enable Plugin | Global on/off switch. When disabled, the try-on button is hidden on all product pages. | Enabled |
| Button Label | Text shown on the try-on button on product pages. | Virtual Try-On |
| Button Color | Try on button color can be changed. | Virtual Try-On |
| Button Position | Where the button appears on the product page: After Add to Cart, Before Add to Cart, or After Price. | After Add to Cart |
| Max Image Dimension | Images larger than this (px) are resized before being sent to the AI. Smaller = faster + cheaper. | 1280 |
| JPEG Quality | Compression quality (40–100%). Higher = better quality, larger file size. | 85% |
| Cache Results | Save AI results so identical requests return instantly without a new API call. | Enabled |
| Cache TTL | How long (seconds) to keep cached results. 86400 = 24 hours. |
86400 |
| Enable Analytics | Track try-on events and conversion data in the Analytics dashboard. | Enabled |
AI Settings
Virtual Try → AI Settings
Select your preferred AI provider and enter the corresponding API key. Use the Test Connection button to verify the key is valid before saving.
Flexible model-based API. Uses IDM-VTON for virtual try-on. Best for developers who want to experiment with different models.
Synchronous
Queue-based async API. Uses the IDM-VTON model. Fastest turnaround time. Recommended for production stores.
Async Queue
Uses Gemini 2.5 Flash image generation. Ideal if you already have a Google AI Studio account.
Synchronous
Product Setup
Enable try-on on individual products
-
Open a Product Go to
Products → All Productsand edit the product you want to enable try-on for. -
Find the Settings Panel Look for the Virtual Try-On Settings panel in the right sidebar of the product editor.
-
Enable Try-On Check the Enable Virtual Try-On checkbox.
-
Select Category Choose the product category that best matches. This tells the AI what kind of try-on to perform.
-
Save the Product Click Update. The try-on button will now appear on the product's frontend page.
Product Categories
| Category | Best For |
|---|---|
| Apparel / Clothing | T-shirts, shirts, jackets, dresses, hoodies |
| Eyewear | Glasses, sunglasses, goggles |
| Shoes / Footwear | Sneakers, boots, sandals, heels |
| Furniture | Sofas, chairs, tables (room placement) |
| Home Decoration | Lamps, rugs, wall art |
| Accessories | Hats, bags, jewellery, watches |
Replicate
How to get and use your Replicate API token
- Create an AccountVisit replicate.com and sign up for a free account.
- Go to API TokensClick your avatar (top-right) → Account Settings → API tokens tab.
- Create a TokenClick Create token, give it a name (e.g. "WooCommerce"), and copy the token string.
- Paste in PluginIn
Virtual Try → AI Settingsselect Replicate, paste the token and click Test Connection then Save.
FAL AI
Async queue-based virtual try-on — fastest provider
- Create an AccountVisit fal.ai and sign up.
- Go to API KeysNavigate to Dashboard → Settings → API Keys.
- Create a KeyClick Add key, copy the key string.
- Paste in PluginSelect FAL AI in AI Settings, paste the key, test and save.
How Async Processing Works
FAL AI uses a queue system. Unlike other providers, requests do not block PHP execution:
request_id instantlyGoogle Gemini
Image generation via Google AI Studio
- Get a Free API KeyVisit aistudio.google.com/app/apikey and sign in with your Google account.
- Create API KeyClick Create API key, copy the key.
- Paste in PluginSelect Google Gemini in AI Settings, paste the key, test and save.
gemini-2.5-flash-image by default. You can change the model name in AI Settings if Google releases a newer image generation model.
Analytics
Virtual Try → Analytics
| Metric | Description |
|---|---|
| Try-Ons (30 days) | Total completed virtual try-ons in the last 30 days. |
| Active Products | Number of products that had at least one try-on. |
| Conversion Rate | Percentage of try-on sessions that resulted in a purchase. |
| Avg Try-Ons / Day | Daily average over the last 30 days. |
| Daily Chart | Line chart showing try-ons per day across the full 30-day period. |
| Top Products | Products ranked by number of try-ons. |
tryon_completed in the wp_tryit_vt_analytics table.Caching
How result caching works
When Cache Results is enabled, the plugin stores AI-generated images as WordPress transients. Identical requests (same photo + same product) return the cached image instantly with no API call.
Cache Key
The cache key is an MD5 hash of: person image data + product ID + AI provider slug. This means:
- Same photo + same product = cache hit (instant result, no cost)
- Different photo + same product = cache miss (new API call)
- Same photo + different product = cache miss (new API call)
Storage
Results are stored in the wp_options table as WordPress transients (prefixed _transient_tryit_vt_). If you have Redis or Memcached configured, WordPress automatically uses those instead.
Clear Cache
To manually clear all cached results, run this SQL in phpMyAdmin:
-- Clear all Tryit Virtual Try cached results DELETE FROM wp_options WHERE option_name LIKE '_transient_tryit_vt_%' OR option_name LIKE '_transient_timeout_tryit_vt_%';
System Status
Virtual Try → System Status
The System Status page shows a real-time health check of your environment. Use it to diagnose problems before contacting support.
| Check | What It Verifies |
|---|---|
| WordPress Version | Must be 6.0 or higher |
| WooCommerce Active | WooCommerce plugin must be installed and active |
| PHP Version | Must be 7.4 or higher |
| GD Extension | Required for image resizing before API submission |
| cURL / HTTP | Required for outbound API calls |
| DB Tables | Verifies wp_tryit_vt_sessions and wp_tryit_vt_analytics exist |
| Active Provider | Shows the currently selected AI provider and whether it is configured |
FAQ
Frequently asked questions
getUserMedia (Chrome, Safari iOS 15+, Firefox).Virtual Try → General Settings and change the Button Label field to any text you like.Plugins → Add New → Upload Plugin and upload the new zip. WordPress will prompt you to replace the existing version. All settings and data are preserved.Troubleshooting
Common issues and solutions
| Error | Cause | Fix |
|---|---|---|
Fatal error: Class not found |
Autoloader failed or file missing | Deactivate and reactivate the plugin. Ensure all plugin files were uploaded correctly. |
DB table doesn't exist |
Tables weren't created on activation | Go to System Status and click Repair / Create Tables. |
API connection failed |
Wrong API key or provider outage | Use the Test Connection button in AI Settings with your key. Check provider status page. |
Request timed out |
PHP max_execution_time too low (for sync providers) | Increase max_execution_time to 300 in php.ini, or switch to FAL AI (async, no timeout). |
Could not fetch product image |
Product image URL not accessible by server | Ensure product images are publicly accessible. Local/dev sites behind a firewall will cause this error. |
| Chart not showing in Analytics | Chart.js CDN blocked or no data yet | Check browser console for CDN errors. Ensure Enable Analytics is on and at least one try-on has completed. |
Changelog
Version history
Version 1.0.0
Current March 2026- New Initial release with Replicate, FAL AI, and Google Gemini providers
- New Async submit + poll pattern for FAL AI (no PHP timeout)
- New Analytics dashboard with daily chart and top products
- New Result caching via WordPress transients
- New Per-product enable/disable and category selection
- New Webcam capture with live preview
- New Rate limiting (10 requests/hour per user)
- New System Status page with DB table repair tool
- New Configurable button label and position
- New HPOS (High-Performance Order Storage) compatibility