Skip to content

Webshop Configuration

The module is available unless WEBSHOP_ENABLED=false is set in the .env file, which hides every webshop setting and screen at once. With that left alone, the shop is turned on from the settings:

  1. Open the Settings panel in Lychee.
  2. Locate the Webshop section and turn on webshop_enabled.
  3. Set the currency, and the defaults used when a new purchasable is created.
  4. Decide how orders are fulfilled: automatically once payment completes, and/or when you click Mark as Delivered.

Auto-fulfillment settings

SettingDescriptionDefault
webshop_enabledMaster toggle. Albums and photos can be set as purchasable.off
webshop_currencyCurrency used for display and charging. Must be a valid ISO 4217 code.EUR
webshop_offlineSkip payment processing entirely. Orders go straight to the offline status.off
webshop_allow_guest_checkoutLet customers check out without an account. They must then provide an email address.on
webshop_auto_fulfill_enabledMake the content available automatically once a payment completes, when Lychee can.on
webshop_manual_fulfill_enabledMake the content available when you click Mark as Delivered, when Lychee can.on
webshop_default_price_centsPrice, in cents, pre-filled for a new purchasable.0
webshop_default_licenseLicense pre-filled for a new purchasable: personal, commercial, or extended.personal
webshop_default_sizeSize pre-filled for a new purchasable: medium, medium2x, original, or full.medium
webshop_default_descriptionDescription used when a purchasable has none of its own.No description provided.
webshop_terms_urlOptional link to your terms and conditions, shown at checkout.empty
webshop_privacy_urlOptional link to your privacy policy, shown at checkout.empty
webshop_lycheeorg_disclaimer_enabledShow the LycheeOrg non-liability disclaimer on the order page.on

Before pricing anything, define the catalogue of sizes in the shop management screens. Both lists are global and reused across every album.

  • Print sizes - a display label, a width and a height in cm or inch, and an optional paper type. Used for physical prints, which require a shipping address at checkout.
  • Pixel sizes - a display label and a width and height in pixels, for digital deliveries at a dimension of your choosing.

Both can be deactivated instead of deleted, which hides them from customers while keeping past orders readable.

Alongside them, Lychee can sell the size variants it already stores:

VariantMeaning
medium, medium2xThe medium previews generated on import
originalThe file as uploaded, downloadable directly
fullThe largest export you can produce, which Lychee does not hold. Always fulfilled manually

Products are configured per album, and optionally per photo.

  1. Navigate to the album you want to sell photos from.
  2. Open the album settings and go to the Shop Management tab.
  3. Write the description customers will see, and an owner’s note for yourself if useful.
  4. Add prices. Each line is a combination of a license type and a size, with its own price; the same size can appear several times under different licenses. Two lines with the same license and size are rejected as duplicates.
  5. Save with Set Purchasable, or Set Purchasable and propagate to apply the same configuration to the sub-albums.

At least one price is required for an album to become purchasable. Disable takes it back off sale without losing the prices.

Admin webshop configuration

Setting sizes and prices

When the webshop is active on an album:

  • A basket icon appears in the top-right corner of each photo thumbnail on hover.

Basket icon on thumbnail hover

  • Clicking it opens a selector for the size, the license, and an optional note for that item.

Size and price selector

  • Selected items go to a basket visible in the top-right corner of the page, where each line can be removed and the whole basket cleared.

Shopping cart

  • Checkout runs in three steps: Your info, Payment, Confirmation. Guests enter an email address and accept the privacy policy and terms; a shipping address is requested when the basket contains a print.

Checkout

  • The confirmation page shows the order number and the transaction ID. Customers need both to come back to their order later, so the page tells them to keep them.

Payment confirmation