WP Manifestindependent plugin directory
manifest / ecommerce / oyster-woocommerce

Oyster for WooCommerce releases

Oyster for WooCommerce. WordPress plugin bringing Oyster's AI skin analysis and personalised product recommendations to WooCommerce stores.

by Oyster Skin · github.com/oysterai/oyster-woocommerce · website

0stars
58release downloads
≈10active sites
0forks

Install

The author publishes release zips, so WP-CLI can install straight from GitHub:

wp plugin install https://github.com/oysterai/oyster-woocommerce/releases/download/v0.17.0/oyster-woocommerce.zip

Readme

=== Oyster for WooCommerce === Contributors: oysterskin Tags: woocommerce, skincare, ai, recommendations, face scan Requires at least: 6.4 Tested up to: 7.1 Requires PHP: 8.1 WC requires at least: 8.0 WC tested up to: 11.1 Stable tag: 0.17.1 License: GPLv2 or later License URI: https://www.gnu.org/licenses/gpl-2.0.html

Add Oyster's AI face-scan skincare concierge to your WooCommerce store. Shoppers scan their skin and get personalized product recommendations from your own catalog.

== Description ==

Oyster for WooCommerce connects your store to your Oyster vendor account and puts an AI-powered skin-scan widget on your storefront. Shoppers take a quick face scan, receive a personalized routine built from your products, and check out natively — with every order attributed back to the scan that drove it.

All AI analysis, recommendation, and reporting happens in Oyster's platform; this plugin is a thin, secure bridge between your WooCommerce store and Oyster. Analytics, orders, and billing live in your Oyster vendor dashboard, which the plugin deep-links to.

Features:

  • Connect your store to an Oyster vendor account.
  • Floating skin-scan launcher on your storefront, with configurable branding.
  • Inline scan via the "Oyster Skin Scan" block or the [oyster_scan] shortcode.
  • Standalone scan page: create a page with the scan on it from Oyster → Widget, then share the link. It isn't added to your menus, and it stays out of search engines and your site's own search until you choose otherwise.
  • Automatic catalog sync — published simple and variable products sync to Oyster whenever you save them, plus a one-click full import/re-sync under Oyster → Catalog.
  • Richer product data for better recommendations — an Oyster ingredients field on every product (one ingredient per line), a Skin Type product attribute, and an Oyster size / volume field, all synced to Oyster. Populate them by hand or via the WooCommerce product CSV importer.
  • Full attribute sync — a product's brand (native WooCommerce brands), primary category, and weight sync to Oyster automatically alongside price, stock and images.
  • Native checkout attribution — the widget's recommended products add straight to your WooCommerce cart, and every resulting paid order is attributed back to the scan that drove it, visible in your Oyster vendor dashboard.

== Privacy ==

This plugin adds a small amount of information to a WooCommerce order when it's attributed to an Oyster skin scan: a batch id, a routine id, and a widget attribution id (all opaque identifiers, not personal data on their own). These are included in WordPress's built-in Tools → Export Personal Data and Tools → Erase Personal Data requests alongside the rest of that order's data. Your Oyster vendor connection settings (business name, widget keys, storefront URL) are store configuration, not customer data, and aren't part of these requests.

== External services ==

This plugin connects to Oyster's API (https://api.oysterskin.com) to authenticate your vendor account and load your widget configuration, and loads the Oyster widget bundle from https://widget-lib.oysterskin.com on your storefront. Your Oyster account credentials are used only to obtain an access token, which is stored encrypted on your site. See https://oysterskin.com/privacy for Oyster's privacy policy and https://oysterskin.com/terms for terms of service.

== Installation ==

  1. Install and activate WooCommerce.
  2. Upload the plugin to /wp-content/plugins/oyster-woocommerce and activate it.
  3. If you don't have an Oyster vendor account yet, create one at https://dash.oysterskin.com/register and verify your email.
  4. Go to Oyster → Connection in wp-admin and log in with your Oyster vendor account.
  5. Configure the launcher under Oyster → Widget.
  6. Run your first catalog sync under Oyster → Catalog.

== Changelog ==

= 0.17.1 =

  • Fixed: the color you set on your Oyster dashboard now reaches the widget. The plugin was sending a color of its own on every page, and the widget reads a color coming from the page as the storefront deliberately overriding you, so your dashboard setting never got a chance to apply. Leave Primary color blank on Oyster > Widget to follow your dashboard, or set one there to override it for this store only.

= 0.17.0 =

  • New: a scan page. Oyster → Widget can now create a page with the scan on it, so you can share a link to the scan without putting it on your storefront. Useful for a soft launch, a campaign, or trying the scan on a live site before showing it to every shopper.
  • The page starts unlisted: it stays out of your menus, out of search engines and out of your site's own search until you press Make it discoverable. Adding it to a menu yourself works at any time, whichever state it is in.
  • It is an ordinary WordPress page containing the "Oyster Skin Scan" block, so you can edit it, write your own copy around the scan, and style it like any other page. The floating launcher, the block and the [oyster_scan] shortcode are unchanged, and nothing about an existing storefront changes until you create the page yourself.
  • Fixed: a product whose image filename contains a space, square brackets or a non-ASCII character no longer fails to sync. WordPress reports those links unescaped, which makes them invalid URLs, and the product was being rejected over the name of its picture.

= 0.16.0 =

  • Scan pricing has moved to your Oyster dashboard. What shoppers pay for a scan, and how your scan pack is priced, are now set in one place instead of two. **Oyster

    Scan payments** links you straight there.

  • Nothing about your prices changes. Whatever you had set is what shoppers are charged, and your checkout keeps collecting exactly as it did.
  • Why: pricing is held on your Oyster account, not in WordPress. Editing it from here meant this plugin had to be updated and released before you could use anything new we added to pricing, and an out-of-date plugin could describe options that had already changed.
  • Oyster > Scan payments now does one job: choosing which of your checkout's payment methods a shopper may pay for a scan with. That stays here, because it is a fact about your checkout.

= 0.15.1 =

  • The Scan payments screen now says which price each field sets. The cost, shopper price and margin at the top are for a single scan, and the amount field says so — your pricing option applies to packs as well, which the screen never mentioned.
  • Prices changed on your Oyster dashboard now show here straight away. The screen was serving a cached copy for up to five minutes and only refreshed it when you saved something in WordPress, so the two could disagree with nothing saying why.
  • Trimmed the helper text on that screen to what tells you how to use a control.

= 0.15.0 =

  • The floating launcher is now off until you turn it on. If you never opened Oyster > Widget, your storefront was showing the floating scan button because that was the old default — it will stop showing after this update. Tick Show floating launcher on that screen to bring it back. If you had already saved that screen, whatever you chose there is untouched.
  • You can now sell scan packs: a shopper pays once and gets several scans, running the rest whenever they like with the payment reference we email them. Set the number of scans, how long a pack lasts and what it costs under Oyster > Scan payments. Your Oyster account decides whether packs are available to your store.
  • The whole pack is settled when it is bought, so a scan taken weeks later costs you nothing more.
  • Fixed: a shopper buying a discounted pack could be charged the price of a single scan instead of the pack price they were quoted. Orders are now never raised above the cheapest thing your store sells.
  • If your store no longer sells single scans, the single-scan pricing form is hidden rather than asking you to price something you cannot sell.

= 0.14.1 =

  • If your store's connection is not permitted to read scan pricing, the Scan payments screen now says so and offers to reconnect, instead of asking you to reload a page that could never have loaded.

= 0.14.0 =

  • If you collect scan payments through your own checkout, you can now choose which of your payment methods a shopper may pay for a scan with, under Oyster > Scan payments. Tick nothing — the default, and what your store does today — and every method you have enabled stays on offer.
  • Worth knowing before you choose: a method that settles an order without taking money, such as cash on delivery, cheque or direct bank transfer, hands the scan over as soon as the order is marked paid. That is useful while you are testing the integration, and expensive on a live storefront — the shopper gets their scan, you are billed for it, and nothing was collected.
  • Only methods your checkout has enabled can be picked, and the screen says so if the ones you picked are later all disabled — that would leave a shopper with no way to pay for a scan at all.
  • The scan widget no longer opens itself on your cart or checkout, whatever you have set under Oyster > Widget. A shopper who has reached those pages has decided what they are buying, and a scan opening over one of them has to be dismissed before they can finish. The floating launcher stays put — starting a scan from there is still theirs to choose.
  • "Scan pricing" is now Oyster > Scan payments, since it covers both what a scan costs and how it can be paid for.
  • Deleting the plugin now clears the last of the settings it stored.

= 0.13.1 =

  • The scan widget no longer appears over the checkout when a shopper is paying for their scan. That checkout opens in a new window mid-scan, so the launcher was inviting them to start a scan on top of the one they were already paying for, and had to be dismissed first. Ordinary order payment pages are unchanged.
  • If your storefront greets visitors with a popup, chat bubble or banner, those appear in that window too — they belong to your other plugins rather than this one, so this release adds a hook to hide them. The page now carries an oyster-scan-payment body class you can target with CSS, for example: body.oyster-scan-payment .newsletter-modal { display: none; }

= 0.13.0 =

  • If you take scan payments through your own checkout, you can now set what you charge for them. Add a percentage, add a fixed amount, or set your own price — Oyster's rate becomes your cost rather than your price. Find it under Oyster > Scan pricing, which also shows what a scan costs you and what you keep. This changes what a shopper is charged, never whether they are charged.
  • Your products list now shows which products reached Oyster, and you can filter it by synced, failed, or not yet synced.
  • When a product does not sync, the reason is shown against that product instead of only a count on the sync screen — including for products that never get sent, most often because they have no price. Database errors are translated into plain language, so a clash between two products sharing a SKU says so.
  • Scan orders are raised at no less than the price you set, so the amount charged cannot be altered from the browser.

= 0.12.1 =

  • Same changes as 0.12.0, re-issued. 0.12.0 was withdrawn before it could be installed, so upgrade straight to this one.

= 0.12.0 =

  • If Oyster has set your account up to take scan payments yourself, shoppers now pay for their scan through your own checkout instead of Oyster's — using the payment methods you already accept, and appearing in your orders like any other sale. Their scan starts as soon as the order is paid. Nothing to set up here: it switches on from your Oyster account, and stores that aren't set up this way are unaffected.
  • Scan payments appear as ordinary orders against a hidden "Skin scan" product, so refunds, taxes and reporting all work the way you'd expect. The product stays out of your storefront and search, and is safe to delete — it comes back when it's next needed.

= 0.11.0 =

  • Connecting your store now takes a second step: after your password, Oyster emails you a one-time code to enter. Connecting creates a credential this store keeps using, so a password on its own no longer hands one out — if someone learns your password, they still cannot connect a store to your account without also reading your email.
  • Your store now has its own connection credential instead of borrowing the login of whoever set it up. Two things stop breaking as a result: the connection no longer expires after about a month and quietly stops syncing, and it no longer dies when the person who connected it leaves or has their access changed.
  • Disconnecting now actually disconnects. It used to clear this site's copy and leave the connection live on Oyster's side; it is now retired properly. Deleting the plugin does the same on its way out, so a store you take down does not leave a working connection behind.

= 0.10.0 =

  • Shoppers coming back from their Oyster scan email now land straight on your checkout with the recommended routine already in the cart, instead of having to find the widget on your store and add every product again. Anything not synced yet or out of stock is left out, and if nothing can be added they land on the cart with a note explaining why rather than on an empty checkout. These orders are attributed to the scan exactly like ones started in the widget. Nothing to configure — it works as soon as this update is installed.

= 0.9.2 =

  • The Oyster logo now appears where you'd expect it: the Oyster item in the wp-admin sidebar carries the Oyster mark instead of a generic placeholder, and the plugin shows its own icon on the Updates screen r

Read the full README on GitHub →

Releases

TagPublishedAssetDownloads
v0.17.0 Sep 8, 2026 oyster-woocommerce.zip 1
v0.17.0 Sep 8, 2026 oyster-woocommerce-0.17.0.zip 6
v0.16.0 Sep 8, 2026 oyster-woocommerce.zip 0
v0.16.0 Sep 8, 2026 oyster-woocommerce-0.16.0.zip 0
v0.15.1 Sep 4, 2026 oyster-woocommerce.zip 1
v0.15.1 Sep 4, 2026 oyster-woocommerce-0.15.1.zip 9
v0.15.0 Sep 4, 2026 oyster-woocommerce-0.15.0.zip 1
v0.15.0 Sep 4, 2026 oyster-woocommerce.zip 1
v0.14.1 Aug 21, 2026 oyster-woocommerce-0.14.1.zip 8
v0.14.1 Aug 21, 2026 oyster-woocommerce.zip 0
v0.14.0 Aug 20, 2026 oyster-woocommerce.zip 0
v0.14.0 Aug 20, 2026 oyster-woocommerce-0.14.0.zip 3
v0.13.1 Aug 20, 2026 oyster-woocommerce-0.13.1.zip 1
v0.13.1 Aug 20, 2026 oyster-woocommerce.zip 0
v0.13.0 Aug 19, 2026 oyster-woocommerce-0.13.0.zip 3
v0.13.0 Aug 19, 2026 oyster-woocommerce.zip 0
v0.12.1 Aug 7, 2026 oyster-woocommerce.zip 4
v0.12.1 Aug 7, 2026 oyster-woocommerce-0.12.1.zip 4
v0.10.0 Jul 29, 2026 oyster-woocommerce-0.10.0.zip 2
v0.10.0 Jul 29, 2026 oyster-woocommerce.zip 2
v0.9.2 Jul 29, 2026 oyster-woocommerce-0.9.2.zip 1
v0.9.2 Jul 29, 2026 oyster-woocommerce.zip 1
v0.9.1 Jul 28, 2026 oyster-woocommerce-0.9.1.zip 0
v0.9.1 Jul 28, 2026 oyster-woocommerce.zip 2
v0.9.0 Jul 28, 2026 oyster-woocommerce-0.9.0.zip 0

Active-site estimate ≈10 comes from the v0.15.1 cohort. Method.