Skip to main content
Plugins Docs About Support Pricing My Account Browse Plugins
Commerce

Bodholdt Atelier

Sell your art from a store you own, with no platform cut

v1.10.10 · Oct 24, 2026
PHP 7.4+
WP 6.0+
GPL-licensed
14-day money-back
Documentation

Get Bodholdt Atelier

Sell your art from a white-label storefront you own, with certificates of authenticity, per-buyer watermarking, collector records (CRM), and royalty splits. The free edition runs on your own Stripe or PayPal with every feature a license has. Download it free.

Free

$0

Free forever:

  • Your own Stripe or PayPal, and no license key to manage
  • Every work type and checkout
  • Certificates of authenticity and provenance
  • Per-buyer watermarking with signed, expiring downloads
  • The music pipeline, and EU VAT including the EU import scheme (IOSS)
  • Collector records (CRM) and royalty splits
  • White-label storefront
  • Commissions with milestone payments and booking
  • Recurring patron subscriptions with content drip
  • Foundry, Marketplace and the Lightroom publish API
  • Automatic updates in your dashboard, with no license key to enter
See the free edition →

Atelier

$39.00 /yr

Paying annually saves 35% against twelve monthly payments.

What a license gets you:

  • Email support from me, for as long as your license is active
  • It pays for the work that keeps Bodholdt Atelier going
Buy Atelier →

14-day money-back guarantee. Monthly and annual plans cancel anytime from your customer portal, and you keep access to the end of the period you paid for.

Every feature keeps working whether or not a license is active. A license adds email support from me. Prices are in US dollars and do not include tax. Any sales tax, VAT or GST that applies is added at checkout.

See full feature comparison →
Feature FreeAtelier
Licensed sites No license neededUp to 127
Every work type and checkout IncludedIncluded
Certificates of authenticity and provenance IncludedIncluded
Per-buyer watermarking with signed, expiring downloads IncludedIncluded
Music pipeline IncludedIncluded
EU VAT and IOSS, collectors CRM, royalty splits IncludedIncluded
White-label storefront IncludedIncluded
Patron subscriptions with content drip IncludedIncluded
Commissions with milestone payments and booking IncludedIncluded
Foundry (multi-artist collective + payouts) IncludedIncluded
Marketplace (cross-artist discovery) IncludedIncluded
Publish API with Adobe Lightroom plugin IncludedIncluded
Automatic updates in your dashboard IncludedIncluded
Email support while active Not includedIncluded

The free edition contains no license client, so nothing limits where you install it, and it carries every feature a license does. Updates arrive in your dashboard on both editions. A license adds email support from me while it is active, and buying one pays for the work. One license activates on up to 127 sites. Bug reports, pre-sales and billing questions are always free, whichever edition you run, and free-edition questions get answered when we can.

Try it free

Start with the free edition

A complete one-artist studio, free forever. The free edition gives you every work type (originals, prints, limited editions, music, photography, digital downloads, and more), Stripe, PayPal, and simulated checkout, certificates of authenticity with full provenance, per-buyer watermarking with signed, expiring downloads, EU VAT and IOSS handling, the music pipeline, a collectors CRM, royalty splits, and a white-label storefront you control (logo, accent color, light or dark mode, and corner radius). It also includes recurring patron subscriptions with content drip, commissions with milestone payments and booking, Foundry for running a multi-artist collective with Stripe Connect payouts and a leaderboard, Marketplace for cross-artist discovery, and the Publish API with its Adobe Lightroom plugin. Updates arrive in your dashboard on both editions. A license adds email support from me while it is active, and buying one pays for the work; it does not add features. One license activates on up to 127 sites.

The free edition of Bodholdt Atelier is free and GPL. No email, no account, no license key.

Download Bodholdt Atelier

Optional. The download above never asks for an email, and this does not change that. One short message per release, and you can leave at any time.

Prefer RSS? The changelog feed lists each new release of every Bodholdt Labs plugin.

Real screens from Bodholdt Atelier

These are real admin screens, not mockups. Click any one to view it full size.

The dashboard tiles: revenue kept at one hundred percent beside what a marketplace cut would have taken, open commissions, live works, and the activity log of sales.
Your studio at a glance: what you kept (all of it), open commissions, live works, and your rank with the trophies still to earn. The activity log lists what actually happened. Ranks and trophies are here by default; the XP arcade is a separate switch and stays off until you turn it on.
The create-a-work picker: nine of the thirteen kinds, from unique piece, limited edition and made to order to client gallery, commission slot, patronage tier and webcomic.
Thirteen kinds of Work to choose from, including one-of-a-kind originals, numbered editions, made to order, digital downloads, music, photographs, client galleries, commission slots, patronage tiers and bundles.
The CRM list: segment chips for everyone, buyers, VIP, patrons and subscribers, and the first contacts with their tier, lifetime value and order count.
One contact list across every channel, segmented into buyers, VIPs, patrons, subscribers, commission clients and lapsed collectors, each row showing lifetime value, order count and tier.
The order ledger: buyer, items and total for the most recent orders, from a commissioned dinner service to a monthly patron charge.
An order ledger with the buyer, items, total and date, and an invoice on every paid order. Switch VAT on and you also get takings broken down by country, which is a starting point for an EU VAT One-Stop Shop (OSS) or EU import scheme (IOSS) return.
The setup banner and its first step: name your studio and pick a currency, with Save and Continue, and the set-up-checkout step waiting below.
A four-step setup that takes you from an empty install to an open storefront, with one step flagged as the next thing to do.
The storefront appearance settings: studio name, an optional logo, the brand accent color, and the light, dark or match-the-visitor choice.
White-label storefront settings: your studio name, a logo, one brand accent color that the readable shades are derived from, light or dark or match-the-visitor, corner style and font.

A full art-business platform for WordPress. Sell originals, prints, limited editions, commissions, music, photography, and digital downloads from a white-label storefront you control, complete with galleries, a collector CRM, fulfillment, certificates of authenticity, patron subscriptions, and gamified studio tools. It's self-hosted, so nobody takes a cut of your sales except your payment processor.

White-label storefront with your brand, your logo, and light or dark mode

Originals, prints, limited editions, and bundles

Commissions with milestone tracking

Music, photography, webcomics, and digital downloads

Collector records (CRM), fulfillment, and shipping

Certificates of authenticity and maker's proof

Patron subscriptions and content drip

Stripe and PayPal checkout, with no cut taken by Bodholdt Labs

Gamified studio, with ranks, trophies and a setup checklist, plus an optional XP arcade you can switch on

  • White-label storefront with your brand, your logo, and light or dark mode
  • Originals, prints, limited editions, and bundles
  • Commissions with milestone tracking
  • Music, photography, webcomics, and digital downloads
  • Collector records (CRM), fulfillment, and shipping
  • Certificates of authenticity and maker's proof
  • Patron subscriptions and content drip
  • Stripe and PayPal checkout, with no cut taken by Bodholdt Labs
  • Gamified studio, with ranks, trophies and a setup checklist, plus an optional XP arcade you can switch on
Version
1.10.10
PHP Required
7.4+
WordPress
6.0+
Setup
Activate and go
License
Commercial GPL

Published test runs cover Bodholdt Backup for Google Drive, Bodholdt Backup for OneDrive and Bodholdt Licensing so far.

v1.10.10 · Oct 24, 2026
  • Visitors can check out only when checkout takes real money. With the simulated checkout, Stripe test keys or the PayPal sandbox, only administrators can place orders, so you can test, and visitors see "This store is not taking orders yet." Before, any visitor could complete an order in those modes without paying, which released files and marked originals sold. Meanwhile the storefront pages ask page caches, server and CDN caches included, not to keep them, since they change when the store goes live.
  • Stripe checkout takes card payments only, which include Apple Pay and Google Pay where Stripe offers them. Bank debits and vouchers were treated as paid before the money arrived. If your Stripe account offers them, add the checkout.session.async_payment_succeeded event to your webhook after updating: a payment begun with one before the update is then fulfilled when the money arrives.
  • Commission deposits and milestone payments now open Stripe's payment page; they used to end on the WordPress login screen, or on the dashboard for someone signed in to the site. A payment counts only for the amount due when it arrives. One that comes to less, because the artist raised the amount while the buyer was paying, is listed on the commission screen under Payments not counted, and the buyer is told. Without live Stripe, buyers can't pay on the commission page, which says so, and the artist records each payment from the commission screen. Before, the buyer's button marked a payment received when nothing was paid.
  • A buyer is charged the price of the license tier they pick (with name your price, at least that price). Every tier of a fixed-price Work used to be charged the artwork's own price, and on a name-your-price Work the amount the buyer named (at least the Work's minimum), whichever tier they picked. A sync license is charged its sync price. On a fixed-price Work, trade buyers get the default trade discount on the tier they choose, and they are no longer offered a promo discount that a trade price does not take. A fixed-price Work with license tiers no longer uses its own wholesale price, so with no default trade discount set, trade buyers pay the tier's price.
  • Every license tier can be chosen. Before, tiers whose names came down to the same plain letters and digits shared one choice, for example any two names written only in Japanese.
  • The caches of the common page cache plugins are cleared when you save a Work whose license tiers or sync license changed, and once after you update to this version, because some tiers get new keys (such as tiers whose names contain ö, 商 or €): a Work page saved before could not sell them. If another cache plugin, your host or a CDN caches your pages, clear that cache at those times too.
  • Store cards and a Work's page show the price of its first license tier, which is what the buy form starts on (with name your price, the least a buyer can pay). A bundle lists each piece, and works out its saving, at the price of the personal license the bundle gives, or the piece's cheapest tier. They used to leave the tiers out.
  • Connect with Stripe opens Stripe's onboarding and keeps the artist's profile, and saving the profile no longer disconnects the account. Sales go to an artist's account only once Stripe can pay it out. With Foundry on, the buy panel no longer says the artist keeps 100%, since a collective fee may apply.
  • In yen and other currencies without decimal places, a sale through an artist's Stripe account (Foundry) asked Stripe for a collective fee 100 times too large, so the checkout failed or the artist was paid too little. The fee is now the set percentage of the sale.
  • Until you connect Stripe or PayPal with live keys, finishing the setup guide adds "Atelier setup finished" to the Activity Log, not "Atelier opened for business". The guide and the dashboard's setup card now promise a published storefront, not an open one, and the guide's last step is Publish the storefront.
  • Patron renewals are recorded whatever API version your Stripe webhook uses. With a current version, the default for new Stripe accounts, no renewal was recorded, so a patron who kept paying lost access 33 days after subscribing (368 days on a yearly tier) while Stripe kept charging them. Renewals in yen and other currencies without decimal places are recorded at the amount paid, not a hundredth of it. Each renewal is recorded once, even when Stripe sends its event more than once, and if saving a renewal fails partway, nothing of it is kept and Stripe is asked to send it again.
v1.10.9 · Oct 21, 2026
  • The License screen now says that email support ends 30 days after a license lapses, which is what its notice during those 30 days already said. It used to read as if support ended the moment a license lapsed.
  • The privacy notes in docs/PRIVACY.md now say what the update checks are used for, as well as what they send: Bodholdt Labs counts installs from them, one site for each site address that checks for updates.
v1.10.8 · Oct 6, 2026
  • A copy with no license key entered is no longer offered updates it cannot download. Each update downloads with your key, so until now such a copy was offered every new version and then failed to install it with "Download failed. Forbidden". That includes a site you deactivated, because Deactivate removes the key from that site. Enter your key on the License screen and updates are offered again.
  • The License screen, its notice and these notes now say that updates need your license key entered. The 1.10.3 and 1.10.4 notes below say updates arrive in your dashboard whether or not you hold a license. That was never true of this copy, which downloads each update with your key. Since 1 October 2026, a license that lapses keeps receiving updates on any site where its key stays entered.
  • A license that lapsed now shows on the License screen as Not active or Expired, and a site where it was confirmed before keeps showing its plan and site allowance. It used to show a one-seat community plan and usually an Invalid label, which suggested the key was wrong, and clearing the key is the one thing that stops the updates a lapsed license still receives. Invalid now appears only when the store does not recognize the key as an Atelier key. The screen also says what a lapse changes: every feature keeps working, updates keep arriving while the key is entered, and email support ends until you renew.
  • A site whose license key is entered but not active now gets a notice of its own, in place of the one for an unactivated copy. It says that a lapsed license keeps receiving updates while its key stays entered, and that renewing brings back email support. The old notice suggested activating, which the store refuses for a lapsed key.
  • The Music Release description and this readme's feature list no longer name another music platform.
  • The feature list in this readme now says that the licensing layer confirms your license key with bodholdtlabs.com and never switches a feature off. It used to call that layer simulated by default.
  • The default label of the Bodholdt Friday banner now reads "Bodholdt Friday: support the artist direct". A label you set yourself is unchanged.
  • The privacy notes in docs/PRIVACY.md now list every request the plugin makes to bodholdtlabs.com, edition by edition. They used to say the license check ran only if you entered a server URL.
  • When WordPress downloads an update, your license key now goes only with this plugin's own download from bodholdtlabs.com, over HTTPS. Until now it was added to any download link of the same shape, including another plugin's download from another store that runs the same licensing software. License checks and update downloads also no longer follow a redirect, so the key cannot be passed on to another address.
  • The LICENSE file now names Bodholdt Atelier. It was copied from another Bodholdt plugin when this one was started and still named that plugin. Your rights under the GPL, version 2 or later, are unchanged.
  • This copy now says in its own header that it takes updates from bodholdtlabs.com. WordPress matches an installed plugin to WordPress.org by folder name, so if a plugin with this folder name were ever listed there, the header keeps WordPress from offering it in place of this copy. Nothing about how this copy updates changes.
v1.10.7 · Sep 5, 2026
  • Two notices counted down to something that never happens. If a license could not be confirmed, the plugin said the features it unlocks would keep working for so many more days, which reads as a warning that they will then stop. They will not. Every feature in this plugin works on every install whether or not a license is active, and it always has. What a license actually carries is email support and a site allowance, so that is what the notices now count down to.
v1.10.6 · Sep 5, 2026
  • The readme in this download described a paid edition that does not exist. It said a license adds commissions, patron subscriptions, the Foundry, the marketplace, the Lightroom pipeline, priority support and managed updates. Six of those seven are in the edition you already have, and the seventh, priority support, was retired everywhere on the same day this was written, because nothing ever delivered it. Nothing about the plugin changes here. It only stops describing itself wrongly. What a license actually adds is email support from the developer while it is active, and a site allowance of up to 127 activations.
v1.10.5 · Sep 5, 2026
  • Wording only. Seven notices and hints used a dash where a full stop or a comma belongs. House style here is plain sentences, and a dash standing in for punctuation is the one thing our own writing rules single out. Nothing about behaviour changes. Dashes that stand in for "no value yet" in a table cell or an empty dropdown are left exactly as they are, because there they are not punctuation.
v1.10.4 · Sep 4, 2026
  • The License screen still had one sentence contradicting the table right underneath it. 1.10.3 corrected the table to say that updates arrive in your dashboard whether or not you hold a license, and left the paragraph above it saying a license adds them. The paragraph now agrees with the table. What a license adds is email support and a record of your site count.
  • The setup checklist said "this build runs a simulated checkout, no keys needed", which was never true of the build. Simulated checkout is where you start, and live Stripe and PayPal are both in every copy. It now says that.
  • The unactivated notice said activating "unlocks updates". It does not, and the License screen in the same release says so. It now says what activating actually does.
  • Two headings used a dash where a comma or a colon belongs.
v1.10.3 · Sep 4, 2026
  • The License screen had two rows that were not true. It said an unlicensed copy gets "updates by manual download", when the free edition has updated itself from your dashboard for some time now, exactly like a licensed one. And it offered "community support", which is a channel we have never actually run. The table now says updates work the same either way, and that what a license adds is email support from the developer. Nothing about what a license does has changed; the screen was describing it wrongly.
v1.10.2 · Sep 1, 2026
  • One number, everywhere. The License screen's summary said a license adds "an unlimited site allowance", while the table directly beneath it, the storefront and the update notice all said up to 127 activations. 127 is the real figure and always has been: a license record stores the site allowance as a signed tinyint, so 127 is this plugin's unlimited rather than a placeholder. The summary now says it too, and the 1.10.1 and 1.10.0 notes below have been corrected for the same reason. Nothing about what a license does has changed.
v1.10.1
  • The admin screens caught up with the change. The License screen still showed a three-row plan table naming Solo, Pro and Agency with 5, 10 and 25 seats, and four screens could still say a feature was "available on Atelier Pro and above". None of it was reachable, because nothing is gated any more, but it was still there to read. The License screen now describes what a license actually adds: automatic updates, email support, and a site allowance of up to 127 activations.
v1.10.0
  • Atelier is one product now. The Solo, Pro and Agency tiers are retired. Everything the plugin can do is in every copy of it: patron subscriptions with content drip, commissions with milestone payments and booking, the multi-artist Foundry with Stripe Connect payouts, the cross-artist Marketplace, and the Publish API with its Adobe Lightroom plugin. A license buys automatic updates in your dashboard, support, and a site allowance of up to 127 activations. It does not buy a feature.
  • Why. The free edition already shipped an all-open licensing stub, while a paid base-tier license locked the Foundry, the Marketplace and the Lightroom publish API. Paying made the product worse than not paying. Agency, meanwhile, added no feature over Pro at all. Rather than keep a ladder that ran the wrong way, the ladder is gone.
  • Nothing is taken away. If you hold a license of any tier, you keep everything you had and gain whatever your old tier withheld. Your site allowance is now up to 127 activations.
v1.9.8
  • Plainer writing in the storefront and the work editor. Checkout messages, the maker's proof captions and every field label used long dashes where a full stop or a colon reads more easily.
v1.9.7
  • Plainer writing. A few messages used long dashes where a full stop or a separator reads more easily. Nothing functional changed.
v1.9.6
  • Plainer writing. The description, the feature list and the FAQ answers used long dashes where a colon, a comma or a full stop reads more easily. Nothing about the plugin changed, only how it is described.
v1.9.5
  • The docs your readme cites are now in your download. The build excluded `docs/TESTING.md` and `docs/PAYMENTS.md` while this readme pointed you at both. Both ship again, and a build-time guard refuses to package an archive whose readme cites a file that is not in it.
  • Editions are named before you buy. The feature list and the FAQ now say which edition carries commissions and patron subscriptions (Atelier Solo and up) and which carries the multi-artist Foundry, the cross-artist Marketplace, and the Lightroom publish API (Atelier Pro and up), instead of answering an unqualified yes.
  • `docs/PAYMENTS.md` opens by saying what your edition includes, and its menu paths and quoted confirmation screens match what the plugin actually shows.
Show 48 older releases
v1.9.4
  • The arcade (XP, ranks, HUD, level-up effects) and the Trophy Case are now off by default. Turn them on any time under the Game Feel tab in Settings. The setup guide is now a plain step-by-step checklist. Nothing else changes.
v1.9.3
  • American spellings throughout. The plugin and this changelog used British spellings in places (licence, colour, behaviour, cancelled). They now match the rest of Bodholdt Labs. Wording only, nothing behaves differently.
v1.9.2
  • The License screen now shows the number of sites you actually bought. Atelier Solo covers 5 sites and Atelier Pro covers 10, which is what the store has been issuing all along, but the plugin was printing 1 and 5. If you bought Solo and the screen read “Seats: 1”, nothing was ever wrong with your license and nothing was limiting you. The number on the screen was simply wrong. Atelier Agency is unchanged at 25.
  • Fixed the “items left” count under a limited-edition work so it reads correctly in every language.
v1.9.1 · Aug 15, 2026
  • EU VAT numbers are now only zero-rated when they are actually verified. Previously, if the EU's VIES verification service was unreachable, a cross-border business VAT number was accepted anyway and the sale was zero-rated. If that number later turned out not to be registered, the unpaid VAT was yours to cover. Now an unverifiable number is charged VAT at the buyer's destination rate, the number and its check result are recorded on the order, and the order note tells you to re-check it and refund the VAT if it clears. A number VIES confirms as valid is reverse-charged exactly as before.
v1.9.0
  • This is a quality and safety release. Every admin section is reachable again, payments are verified more strictly, and the public forms are protected against abuse.
  • Every studio section opens again. After the 1.8.0 menu tidy, opening Works, Orders, CRM, Shows, the License page, the Setup Quest, and the other sections from the in page tabs or a direct link could show "Sorry, you are not allowed to access this page." Those sections are now fully reachable while the sidebar stays calm with just Dashboard and Settings. If you were stuck on activation, you can now enter your license key and finish setup.
  • Stronger PayPal verification. A returning PayPal payment is now matched to the exact order and amount it paid for, so a completed payment can never be applied to a different or more expensive order.
  • Correct prices for yen and other zero decimal currencies. A price in Japanese yen now shows the same amount your customer is actually charged, instead of appearing one hundred times too high.
  • Fair EU VAT for business buyers. With tax inclusive pricing, a valid EU business buyer under reverse charge, and a buyer outside the EU, now pay the net price with the embedded VAT removed instead of the full amount.
  • Download limits are enforced exactly. A download link now honors its maximum download count even when several downloads start at the same moment.
  • Spam protection on public forms. Newsletter signup, commission requests, and studio visit booking now have rate limiting and a hidden honeypot, so the forms cannot be used to flood your inbox or your subscriber list, and cannot be turned into a tool to email strangers.
  • Certificates follow the order. A license certificate PDF now checks that its order is still paid and the license has not expired before it is shown, matching how downloads and certificates of authenticity already worked.
  • Affiliate self referrals are ignored. An affiliate can no longer earn a commission on their own purchase.
  • Secure connection for the Lightroom publisher. The Lightroom plugin now refuses to send your publish token unless the store URL uses https, and assumes https when you leave the scheme out.
  • Cleaner uninstall. Deleting the plugin now removes its data on every site of a multisite network and clears its cached license and update records, while still leaving your storefront page untouched.
  • Accurate promo end time. A Bodholdt Friday promo now ends at the moment you set in your site timezone.
  • Translation ready. A translation template is now bundled so the plugin can be translated into any language.
v1.8.2
  • Privacy tools (GDPR export and erase). The storefront now answers data subject requests through the built-in WordPress privacy tools. Export returns a buyer's orders, licenses, commissions, subscriptions, newsletter and contact records, bookings, and affiliate record; erase deletes the newsletter, booking, and contact rows, invalidates the license download token, and anonymizes orders, commissions, subscriptions, and affiliate earnings (name, email, and shipping address removed) while keeping amounts, tax, country, VAT number, and payment references required by tax law. The provenance hash chain is left intact. Suggested privacy-policy text is added to Settings > Privacy.
  • Safer subscriber export. The newsletter CSV export now neutralizes spreadsheet formula injection, so a subscriber name cannot run a formula when you open the file in Excel or Sheets.
  • Cleaner release package and accurate privacy notes. Internal build and testing notes are no longer included in the plugin download, and the bundled privacy documentation now correctly states that fonts are served from your own site (no Google Fonts CDN request).
v1.8.1
  • Countdown icon. The limited run countdown timer on a work page was the one spot still showing an emoji hourglass. It now uses the same brand icon as the rest of your storefront.
v1.8.0
  • Admin UX pass. The section nav hides features you have turned off and groups the rest into Sell / People / Events, so a solo artist no longer scrolls past empty rooms. Off-state tabs can turn a feature on (and create its page) in one click. The long settings page becomes six sub-tabs, each with its own Save. Shipping zones and rates get row builders instead of a pipe-delimited textarea. Payments leads with a connection status card and masks your saved keys. The dashboard stays quiet until your first sale, then folds the "you kept 100%" comparison into your revenue. The setup quest spotlights one next step, and the CRM search filters as you type. Every emoji in the plugin, admin and storefront and emails alike, is replaced with crisp icons that match your brand. The arcade (quest, XP, trophies) is untouched.
v1.7.0
  • Solo edition now earns its keep. Patron subscriptions with content drip, and commissions with milestone/deposit payments (including studio-visit / appointment scheduling), are now Atelier Solo features rather than free. The complete one-off-sale loop stays free in Lite, along with every other work type, Stripe/PayPal/simulated checkout, orders, certificates of authenticity + provenance, per-buyer watermarking + signed expiring downloads, the collectors CRM, royalty splits, the white-label storefront, the music pipeline, EU VAT/IOSS, print-on-demand, promos/affiliates, gamification, and shows. Pro features (multi-artist Foundry, cross-artist Marketplace, Lightroom / Publish API) are unchanged. Enforcement never bricks: a feature is only hidden for a confirmed below-tier license. A server hiccup, expiry, or grace period never removes anything.
v1.6.1
  • Edition tiers tightened. The multi-artist Foundry, cross-artist Marketplace, and the Lightroom / Publish API are now Atelier Pro features. Solo licenses keep all core commerce unchanged. That covers the work types, checkout, certificates, provenance, watermarking, signed downloads, commissions, patronage, EU VAT/IOSS, royalty splits, collectors CRM, and white-label appearance. Enforcement never bricks: features are only hidden for a confirmed below-tier license; a server hiccup or grace period never removes anything.
v1.6.0
  • White-label storefront. Your public storefront, gallery, artist pages, and checkout now adopt *your* brand: upload your logo and set a single accent color plus Light/Dark/Auto and a corner style in Settings → Storefront appearance (with a live preview). It ships with clean, neutral defaults instead of a fixed theme, and readable hover/contrast shades are derived automatically. Status colors (available / sold / limited) keep their meaning.
v1.5.0
  • Licensing & automatic updates. Atelier now activates against the Bodholdt Licensing server and delivers in-dashboard automatic updates to licensed sites (it sends only your license key, site URL, and product name, never your store, customer, or sales data). Unactivated installs keep working in community mode.
v1.4.1
  • Admin polish: the section tabs and view headings now use crisp monochrome icons, and admin notices/forms match the dark studio theme.
v1.4.0
  • Privacy: web fonts (Roboto Mono, Orbitron) are now bundled and served locally instead of loaded from Google. No visitor IP is shared with a third party on page load.
  • The "Powered by Bodholdt Atelier" storefront credit is now opt-in (Settings → Studio) and hidden by default.
v1.3.0
  • Certificate signature: upload a signature image (Settings → Studio) and it's drawn on every Certificate of Authenticity, composited onto the dark certificate so it blends. The PDF engine now embeds JPEG images.
v1.2.0
  • Lossless audio downloads: offer a music release for download as MP3 320, FLAC, ALAC, or WAV (24-bit), transcoded on demand from one master upload (FFmpeg) and cached in the protected store. Buyers pick a format at checkout; the master is delivered as-is if FFmpeg isn't present.
v1.1.0
  • Shipping rate tables: charge by destination zone + parcel weight, not just a flat per-piece fee. Define zones (country groups + a catch-all) and weight bands in Settings → Shipping, set each Work's weight, and checkout looks up the rate (with the flat price as a safe fallback). A destination picker appears at checkout when VAT isn't collecting a country.
v1.0.1
  • Launch-readiness: compliance + go-live docs (docs/PAYMENTS.md, docs/PRIVACY.md with data inventory + adaptable privacy/terms starters, docs/TESTING.md for Stripe/PayPal sandbox wiring), Lightroom distribution guide + build script (a separate .lrplugin zip), and a text-only payment-trust line at checkout (nominative "powered by Stripe" / "redirected to PayPal", with no third-party logos bundled).
v1.0.0
  • First stable release. Every master-plan feature is in: all 13 Work types, three checkout modes (simulated / Stripe / PayPal), COAs + tamper-evident provenance, watermarked signed downloads, commissions, subscriptions + drip, EU VAT/IOSS, music/serials/PoD/AR, Foundry + marketplace, bundles + royalty splits, affiliates + promos, email + newsletter, wholesale + consignment, Maker's Proof, the buyer PWA, the publish/Lightroom API, the full CRM, a WCAG 2.1 AA pass, and the Bodholdt Licensing layer.
  • Pre-1.0 QA: parallel security + correctness audits (no critical/high issues); added an SSRF guard on remote-image publishing and a named lock so the provenance chain can't fork under concurrent finalizes.
v0.27.0
  • Bodholdt Licensing layer: a License admin page to activate your key (domain-bound, daily re-validation), tiered features (Solo/Pro/Agency), simulated-by-default so it works without a server, and it never bricks an install.
v0.26.0
  • Publish API: a token-secured REST endpoint to create/update a Work from an uploaded image + metadata (re-publishing the same photo updates, not duplicates).
  • Adobe Lightroom Classic publish plugin (in /lightroom) that pushes finished photos straight from your catalog into your store over that endpoint.
v0.25.0
  • Accessibility (WCAG 2.1 AA) pass: visible keyboard focus everywhere, an accessible AR modal (focus trap + Escape + focus restore), site-locale on portal pages, higher text/border contrast, labelled fields, and full reduced-motion support.
v0.24.0
  • Full artist CRM: one contact directory across buyers, patrons, subscribers and commission clients, with segments (VIP, lapsed, …), search, channel badges, a purchase-history timeline, and editable per-contact notes & tags.
v0.23.0
  • On-chain provenance receipts: every certificate is SHA-256 fingerprinted and chained to the previous one, a tamper-evident ledger shown on the verify page and certificate. Optional free anchoring to Bitcoin via OpenTimestamps.
v0.22.0
  • Wholesale / trade pricing: a private trade code unlocks wholesale prices for galleries/shops (per-Work wholesale price or a global trade discount), shown with retail struck through.
  • Consignment ledger: a new admin page to track pieces placed with galleries/shops. It records the venue, commission %, status (out/sold/returned), and your net take after commission.
v0.21.0
  • Maker's Proof: a per-Work human-made attestation + generative-AI disclosure, plus medium, tools, hours, process notes and work-in-progress images, rendered as a trust panel on the storefront and a line on the certificate. In an AI-flooded market, honest provenance is the differentiator.
v0.20.0
  • PayPal checkout (Orders v2, SDK-free): create order → approve → capture on return, with a signature-verified webhook backstop. Sandbox/live toggle; configure under Settings → Payments.
  • Gateway abstraction: one helper picks the active processor (Stripe / PayPal / simulated) for the whole plugin.
v0.19.0
  • Buyer "My Collection" app: a private, no-login page listing every purchase with fresh download links, certificates and invoices. It installs to the phone home screen as a PWA (web manifest, GD-drawn app icons, offline page via a service worker).
  • The collection link is added to order receipts and the success page; enable it under Settings → Buyer app.
v0.18.0
  • Webcomic / Serial Work type: schedule episodes (title + page + release date); the storefront reader shows released episodes with prev/next and hides future ones behind a public release schedule.
  • Per-format music inventory: define formats as "Label | price | stock"; buyers pick a format with its own price and remaining-stock count, and a limited run (e.g. vinyl) depletes on sale.
v0.17.0
  • Subscription content drip: posts that unlock over a patron's membership, via a tokenized patron portal.
  • Sync-license tier for music (film/TV/ads) with an auto-generated sync license PDF.
v0.16.0
  • Pay-what-you-want everywhere: any fixed-price work can opt into name-your-price.
  • Vinyl pre-orders + crowdfunding goal bar (funded % / backers / ships-when).
v0.15.0
  • Show/fair inventory mode: reserve Works for a show; they auto-release when it ends.
  • Studio-visit booking: open-slot calendar + [bodholdt_atelier_book] form with artist/visitor emails.
v0.14.0
  • QR codes: a self-contained encoder (no library); scannable QR on the COA + downloadable per-Work QR for shows/merch.
v0.13.0
  • Collector CRM: lifetime value, tiers, and what each collector owns (from the order ledger).
  • File-type variants: buyers pick a format (PSD/PNG/SVG) at checkout and get that file.
v0.12.0
  • Client galleries: private, password-protected photo delivery (hidden from the public catalog).
  • Per-piece shipping: flat shipping price + ship-to address at checkout for physical works.
v0.11.0
  • Transactional email: branded order receipts (with download/COA/invoice links), artist sale notices, and commission notifications.
  • Newsletter capture: ESP-agnostic double opt-in (Mailchimp/Kit/FluentCRM/CSV), checkout opt-in + [bodholdt_atelier_subscribe] shortcode, subscribers admin + export.
v0.10.0
  • Affiliate/referral codes: shareable ?ref=CODE links with buyer discounts + tracked referrer commission.
  • Bodholdt-Friday promo mode: countdown banner, optional sitewide discount, and Foundry-fee waiver.
v0.9.0
  • Bundles: group Works into a discounted combo; buyers receive every item.
  • Royalty splits: pay collaborators a percentage of each sale via Stripe Connect transfers.
v0.8.1
  • QA pass: oversell protection on the Stripe path, webhook rejects unsigned events, path-traversal guard on file delivery.
v0.8.0
  • Marketplace mode: a public storefront with search, type/artist filters, sort, a featured row, and an artists directory.
v0.7.0
  • Foundry (multi-artist) mode: run a collective/label/agency with per-artist works, profiles, XP/trophies, and a leaderboard.
  • Per-artist Stripe Connect payouts (destination charges) with an optional collective fee.
  • Public artist profile pages + bylines.
v0.6.0
  • Music: FFmpeg skip-protected 30s previews + lossless master ZIP delivery, per-track players.
  • Print-on-demand routing (theprintspace, FinerWorks) with a Fulfillments admin screen.
  • AR "view on your wall" room viewer (camera or room photo) with real-size scaling.
v0.5.1
  • Fixed VAT invoice layout (totals no longer overlap the amount) and PDF transliteration of accented characters.
v0.5.0
  • Built-in EU VAT/IOSS: EU-27 rate table, destination/OSS/IOSS rules, B2B reverse charge with VIES validation.
  • Country + VAT-number fields at checkout with a live VAT/total preview.
  • Auto-generated VAT invoice PDF per sale; admin VAT-collected-by-country report.
v0.4.0
  • Stripe-backed commission deposits + per-milestone payments (buyer pays from the portal).
  • Recurring patronage subscriptions via Stripe (subscription Checkout, renewal revenue, cancellation).
  • Patrons admin screen with active count, MRR, and one-click cancel.
v0.3.0
  • Per-buyer image watermarking (tiled preview + forensic delivery stamp), pure GD.
  • Signed, expiring, HMAC-protected download URLs streamed through PHP with download-count + expiry enforcement.
  • Real commission milestone workflow: admin control panel + tokenized buyer portal (accept quote, approve milestone gates).
v0.2.0
  • Live Stripe Checkout (no SDK) with idempotent finalize, webhook + signature verification.
  • Auto-generated Certificate of Authenticity + license PDFs via a built-in, dependency-free PDF writer.
  • Public scan-to-verify page and a basic download gate.
v0.1.0
  • Initial MVP foundation: Work engine + all 10 types, gamified cyberpunk admin, setup quest, storefront + simulated checkout, XP/levels/trophies.
After purchase, you'll receive a download link and license key by email. In your WordPress admin, go to Plugins → Add New → Upload Plugin, choose the ZIP you downloaded, click Install, then Activate. The plugin will prompt you for your license key on its settings page. Paste it in and you're live.
Each WordPress installation domain that activates the key counts as one site, including staging and development domains. Clear the key on an old site to release its activation before moving it. Why 127? A license record stores its site count in a small number field whose largest value is 127, so 127 sites is the most one license can hold.
Lifetime means the supported lifetime of the product, not the customer's lifetime. For a normal discontinuation, we aim to give 12 months' notice and a license for the closest equivalent successor. A binding legal, provider-policy, security, or privacy issue may require an earlier stop and a bounded recovery path instead. The current Terms of Service govern the details.
Yes. Open the Stripe billing portal from your account dashboard and cancel there. You keep access until the end of the billing period.
14 days, no questions asked, full refund. Open a ticket on our Support page (bodholdtlabs.com/support) using the email you bought with.
Two reasons: Stripe's per-transaction fees compound when you charge 12 times instead of once, and monthly subs have higher churn risk for us. Annual or lifetime is the better deal if you know you're sticking around.
Every copy of Atelier does everything: patron subscriptions with content drip, commissions with milestone payments and booking, the multi-artist Foundry with Stripe Connect payouts, the cross-artist Marketplace, and the Publish API with its Adobe Lightroom plugin. Updates arrive in your dashboard on both editions. A license adds email support from me while it is active, and buying one pays for the work. It does not unlock a feature, and it never takes one away. One license activates on up to 127 sites.
Yes. A free edition of Bodholdt Atelier is available now, self-served from bodholdtlabs.com. It runs a real white-label art storefront on your own Stripe or PayPal with every work type and checkout, certificates of authenticity and provenance, per-buyer watermarking, the music pipeline, EU VAT and IOSS, the collectors CRM, and royalty splits, so it doubles as an open-ended trial. It is not a cut-down edition: commissions, patron subscriptions, Foundry, Marketplace and the Lightroom publish API are all in it too. A license adds email support from me while it is active and pays for the work, and it carries the 14-day money-back guarantee.