# Print on demand: sell T-shirts and mugs with your designs, no stock

Print on demand from Bulgaria: how T-shirt and mug printing works without stock, a printer in Bulgaria or the EU, real margin, VAT, OSS, GPSR and returns.

Source: https://cloudcart.com/en/blog/print-on-demand-online-store · CloudCart · 2026-11-06

In short: print on demand (POD) is selling online without stock. You upload your design to your store, and the print shop prints the T-shirt or mug only after a customer orders, then ships it straight to them. You pay for printing only on items you sell. In a sample calculation, a €29.90 T-shirt (VAT included) leaves about €5.45 before profit tax.

This guide is written by the CloudCart team, the Bulgarian ecommerce platform, for founders selling in or from Bulgaria and to customers across the EU. It is not tax advice: your accountant confirms the setup for your company.

## How print on demand works, step by step

The print shop keeps the blank T-shirts, mugs and hoodies, and you keep the brand, the prices and the customer.

- You create the design. A file with a transparent background, in the size the print shop asks for.

- You list the product in your store. A mockup with the design, sizes and colours as variants, the fabric composition and your price.

- The customer orders and pays. By card, cash on delivery (COD) or bank transfer. Your company issues the sales document.

- You pass the order to the print shop. Product, size, colour, design file and the customer's address.

- The print shop prints and ships. The parcel goes by courier directly to the customer, and you get the tracking number.

- You handle after-sales service. Sizes, returns and faulty prints.

The design and the brand are yours, so you are responsible for what is printed and for product safety. The general rules for selling without stock are in the guide to [what dropshipping is and how to start it in Bulgaria and the EU](https://cloudcart.com/en/blog/what-is-dropshipping).

## T-shirt and mug printing: DTG, DTF, sublimation and screen printing

The printing method decides how the design looks, how long it survives washing and what one item costs. Print on demand uses methods that print a single item with no setup: DTG and DTF for T-shirts, sublimation for mugs and polyester clothing.

| Method | How it works | Best for | Single item |

| DTG (direct to garment) | Ink is applied straight onto the fabric, like an inkjet printer | Cotton T-shirts, photos and many colours | Yes |

| DTF (direct to film) | The design is printed on film and transferred with a heat press | Cotton, polyester and blends, dark colours | Yes |

| Sublimation | Under heat, the ink bonds with a polymer coating or polyester fibres | Photo mugs, polyester T-shirts, cushions | Yes |

| Screen printing | Each colour goes through a separate screen (stencil) | Logo T-shirts for companies and events, large runs | Rarely, because of the setup |

Sublimation needs polyester or a coated mug. Order samples and wash a T-shirt 3-4 times to see if the print cracks.

## A print shop in Bulgaria or elsewhere in the EU: how to choose a partner

Choose the partner by delivery time to the customer, sample quality and the terms for faulty prints first, and by price only after that.

|  | Print shop in Bulgaria | Print shop in another EU country |

| Delivery time to a Bulgarian customer | Shorter: printing plus a domestic courier | Longer: printing plus international delivery |

| Cash on delivery | Yes, with a Bulgarian courier | Rarely |

| Invoice and VAT | Bulgarian invoice with VAT | A purchase from another EU country, with separate VAT rules |

| Faulty items and size exchanges | Returns to a local address | Returns abroad, or a new item at your cost |

Cash on delivery is still common in Bulgaria. With a local print shop the parcel can go with Econt or Speedy, the two largest Bulgarian couriers, which collect the COD amount. If the print shop is in another EU country, talk to your accountant before the first order: a Bulgarian company that is not VAT-registered must register once its purchases of goods from other EU countries exceed €10,000 in a calendar year (Article 99 of the Bulgarian VAT Act).

### Selling to customers in other EU countries: the €10,000 threshold and OSS

A Bulgarian store shipping to consumers in other EU countries charges Bulgarian VAT until its total cross-border sales to EU consumers exceed €10,000 a year, the EU-wide threshold on [Your Europe](https://europa.eu/youreurope/business/taxation/vat/cross-border-vat/index_en.htm). Above it, you charge the VAT rate of the customer's country. You do not need a VAT number in every country: through the One-Stop Shop (OSS) you register once with the NRA (National Revenue Agency) and declare the VAT for all EU countries in one quarterly return, as described on the [European Commission's OSS page](https://vat-one-stop-shop.ec.europa.eu/one-stop-shop_en). The setup is covered step by step in the article on [OSS and EU VAT for cross-border sales](https://cloudcart.com/en/blog/oss-eu-vat-cross-border-sales).

With EU fulfilment, a print shop in Germany shipping to a customer in Germany sends a parcel that never crosses a border, and that sale may need a different VAT treatment. Agree the VAT setup with your accountant before you switch on another country.

### Questions to ask before you sign

Ask which blanks, colours and sizes are always in stock, what file and print areas the shop needs, how many days it takes to print and dispatch, whether it ships without its own logo and prices, who pays for a new item and the courier when a print is faulty, and whether you get a VAT invoice for every order.

## How much you make with print on demand: the real numbers

A €29.90 T-shirt (VAT included) leaves a VAT-registered merchant about €5.45, or roughly 22% of the price excluding VAT. A €19.90 mug leaves about €4.

The print shop prices (€11 for a T-shirt with a front print and €6.50 for a mug, excluding VAT) are placeholders: replace them with your partner's quote. The customer pays shipping separately. The card fee is the CloudCart Pay standard rate from Jan 1, 2027 (1.29% + €0.05 for consumer EEA cards), and the platform is Baby Pack (€14/month billed annually, excluding VAT, up to 100 products) at 50 orders a month.

| Line | T-shirt | Mug |

| Retail price, VAT included | €29.90 | €19.90 |

| 20% VAT due to the NRA | −€4.98 | −€3.32 |

| Print shop: blank and print (VAT deducted) | −€11.00 | −€6.50 |

| Card payment fee | −€0.44 | −€0.31 |

| Advertising per order | −€7.00 | −€5.00 |

| Reserve for faulty items and exchanges (3% of the price excluding VAT) | −€0.75 | −€0.50 |

| Platform | −€0.28 | −€0.28 |

| Left before profit tax | €5.45 | €3.99 |

At €12 of ad spend per order, the same T-shirt leaves €0.45, so the profit comes from orders with more than one item (a T-shirt and a mug with the same design, a set for a team) and from returning customers. How to set a price that covers every line is explained in the article on [pricing, margin and markup](https://cloudcart.com/en/blog/pricing-margin-online-store).

A company established in Bulgaria must register for VAT when its annual domestic turnover exceeds €51,130. The threshold applies from Jan 1, 2026 and is published on the [NRA's VAT page](https://nra.bg/wps/portal/nra/taxes/dds-v-balgariya) (in Bulgarian, Article 96 of the VAT Act).

> CloudCart Pay 0% transaction fee through Dec 31, 2026 In the calculation, the card fee is €0.44 per T-shirt. With CloudCart Pay this line is €0 until the end of 2026, and customers pay with Apple Pay and Google Pay. How CloudCart Pay works →

## Slogan T-shirts and your own designs: how to create designs with AI

AI tools produce a first version of a design in minutes, and you choose, fix and prepare the file for printing. The best-selling slogan T-shirts usually speak to a narrow group: a profession, a hobby, a city, a sport or an inside joke of a community.

- Pick a group of people first, then the design. “T-shirts for cyclists in Plovdiv” sells more easily than “funny T-shirts”.

- Generate ideas. Ask ChatGPT or Gemini for 30 short slogans for the group, and generate illustrations in one style with Krea or ChatGPT. Add “transparent background, solid colours, no fine gradients” to the prompt, because subtle gradients print poorly.

- Clean up the file. Check the spelling, remove stray details and export a PNG with a transparent background in the size the print shop asked for.

- Order samples of your best 3-5 designs. A photo of the real sample sells better than the mockup.

Important: do not print other people's brands, club logos, cartoon characters or photos of famous people without permission. Under Article 13 of Bulgaria's Marks and Geographical Indications Act, putting someone else's mark on goods and offering them for sale is use of the mark, which the owner can prohibit. AI generators sometimes repeat familiar characters, so check every design.

[Aura Studio](https://cloudcart.com/en/aura) writes product descriptions, SEO titles and translations from your store data and product photos. You accept or edit them.

## Personalised T-shirts and photo mugs: how customers upload their own file

Personalised T-shirts and photo mugs sell with a field where the customer types their text or uploads their photo. In CloudCart this is done with the Product Options app, which adds fields to the product page without creating new products.

- Install the app. Install Product Options; Products → Options appears in the menu.

- Create the option. With + Create new option you set the name the customer sees (for example “Your text”) and the field type: text, dropdown, checkboxes or file.

- Add a price if personalisation costs more. Each value can add an amount, for example for a back print.

- Make the field required. The product cannot go into the cart until the customer fills it in.

- Choose which products it applies to. Selected products, a category, a vendor or a smart collection: one “Upload your photo” field covers all mugs.

- Take the file from the order. The text and the uploaded file sit on the product line in the order details. You download the file there and send it to the print shop. The field accepts files up to 25 MB in formats such as JPG, PNG, GIF, TIFF and PDF, so tell customers which formats to use.

The number of options depends on the plan: 5 in Baby Pack, 10 in Starter Pack and unlimited in CC Pro and CC Master, according to the [pricing page](https://cloudcart.com/en/pricing). Do not delete a file-type option while open orders still use it: deleting the option also deletes the files customers uploaded. Enter sizes and colours as product variants in the [catalog](https://cloudcart.com/en/catalog), and keep options for what the customer adds.

## GPSR, labels and the responsible person: what applies to your T-shirts and mugs

When you sell a T-shirt or mug printed by someone else under your own brand, you are the manufacturer under the General Product Safety Regulation (GPSR). Under Article 3(8) of [Regulation (EU) 2023/988](https://eur-lex.europa.eu/legal-content/EN/TXT/?uri=CELEX:32023R0988), whoever has a product made and markets it under their own name or trade mark is a manufacturer. The regulation applies from Dec 13, 2024, and every product on the EU market needs an economic operator established in the EU: a manufacturer, importer, authorised representative or fulfilment service provider.

For a print on demand store in Bulgaria this means four practical steps:

- Manufacturer details on the product page. Your company or brand name, a postal address and a contact email, visible before purchase.

- Product identification. A photo, model and SKU for each variant, so any item can be traced to its batch.

- Documents from the print shop. The blank's material, the inks and whether the mug is food safe, in writing.

- Fabric composition in the customer's language. The composition of textile products must be visible in the store before purchase, with the percentages from the label (“100% cotton”). For customers in Bulgaria, that means Bulgarian.

What exactly goes on the product page and in which CloudCart fields is covered in the article on [GPSR and product safety](https://cloudcart.com/en/blog/gpsr-product-safety-online-sellers).

> 0% commission No share of your sales, on every plan In the sample calculation the T-shirt leaves €5.45. A platform with a 2% commission would take another €0.60 from every sale, or 11% of your profit. With CloudCart you pay only for the plan. How 0% commission works →

## Print on demand returns: when the customer can withdraw

A customer has 14 days to withdraw from a T-shirt or mug with a design from your catalog, even if it was printed for their order. The exception covers only products made to the customer's own specifications: with their name, photo or text.

The 14-day right of withdrawal applies across the EU ([Your Europe](https://europa.eu/youreurope/citizens/consumers/shopping/returns/index_en.htm)), and in Bulgaria it is set by Article 50 of the Consumer Protection Act. Under Article 57, item 3 of the same act, it does not cover goods made to the consumer's specifications or clearly personalised.

| Situation | 14-day right of withdrawal | What you do |

| T-shirt with a catalog design, chosen size and colour | Yes | Accept the return and refund within 14 days (Article 54) |

| T-shirt with the customer's name or text | No (Article 57, item 3) | State the exception in your terms and on the product page |

| Mug with the customer's photo | No (Article 57, item 3) | The same, plus a clear photo upload field |

| Smudged, crooked or faded print | A complaint, whatever the product | A new item or a refund, and you claim the faulty one from the print shop |

From Sep 24, 2026, Article 52a of the Consumer Protection Act also requires a visible withdrawal function, labelled “withdraw from contract here” or similar, available for the whole withdrawal period. Deadlines, the withdrawal form and complaints are explained in the article on [returns and consumer rights](https://cloudcart.com/en/blog/returns-consumer-rights-online-store).

## How to build a print on demand store in CloudCart

In CloudCart a print on demand store is built with the admin's own tools: variants for sizes and colours, Product Options for personalisation, the Suppliers app for print shop prices and the built-in couriers for delivery. You do not need a separate printing app.

- Create the products. Each design is a product, and sizes and colours are variants. Add mockups, sample photos, composition and manufacturer details.

- Add a size chart. The Size Chart app adds a chart button to the product pages and categories you choose.

- Link the products to the print shop. In the Suppliers app you keep the print shop and its contacts, and for each product and variant its price and code. The “Products by orders” view collects the quantities sold across all orders and groups them by supplier. Filter by the status of orders not yet sent for printing (without a filter, cancelled and returned orders are counted too) and export the table.

- Automate the forwarding. The platform does not forward orders on its own: the store sends a webhook for every new order (order.created) to the print shop's system or your script, or an AI assistant with a PAT token collects new orders into a table.

- Switch on payments and delivery. Cards with CloudCart Pay, cash on delivery and the couriers built into checkout, including Econt, DPD (Speedy) and BOX NOW parcel lockers, as on the shipping page . The COD amount goes to whoever holds the courier contract.

- Documents and the NRA. The invoice and the sales document are issued from the order. Under Ordinance N-18 (Bulgaria's sales-reporting rules for online stores), the N18 Audit app prepares the monthly XML file for the NRA in the alternative regime. Everything about it is on the invoices and Ordinance N-18 page.

> Store run by an AI assistant New designs in the store with one sentence With a PAT token from the admin, Claude Code, ChatGPT/Codex or Gemini CLI creates the products, arranges the categories and writes the descriptions, and builds a table of orders for the print shop when you need one. How to run a store with an AI assistant →

## The most common print on demand mistakes

- A hundred designs and no target group. A wide catalog burns the ad budget. Start with 10-20 designs for one community and add more based on what sells.

- A size chart with only S, M, L. Give the real measurements.

- A delivery time without the printing days. Printing plus courier.

> New store €1/month for the first 3 months Test 10-20 designs and one print shop with real orders. The offer is for new stores until Dec 31, 2026. Start your store for €1 →

## Frequently asked questions

**What is print on demand?**

Print on demand is a model in which a T-shirt or mug is printed with your design only after a customer orders it. You hold no stock, and the print shop ships directly to the customer. You sell and answer to the buyer.

**Is print on demand profitable?**

In the sample calculation, a €29.90 T-shirt (VAT included) leaves about €5.45 before profit tax, and a €19.90 mug about €4. The print shop's price and advertising per order matter most.

**Do I need a company for print on demand in Bulgaria?**

Yes. Regular sales for profit are made by a trader, most often a sole trader (ET) or a single-member limited liability company (EOOD). The store is registered with the NRA under Ordinance N-18 before the first sale, and VAT registration is mandatory above €51,130 of annual domestic turnover. Confirm the setup with an accountant.

**Do I need OSS to sell print on demand products across the EU?**

You need it once your sales to consumers in other EU countries exceed €10,000 a year. Above that threshold you charge each customer's national VAT and declare it in one quarterly OSS return with the NRA.

**Can a customer return a personalised T-shirt?**

No, when the T-shirt carries their name, photo or text: under Article 57, item 3 of the Consumer Protection Act, the right of withdrawal does not cover goods made to the consumer's specifications. A catalog design can be returned within 14 days. A faulty print always gives the customer the right to complain.

**Does GPSR apply to print on demand products?**

Yes. GPSR applies from Dec 13, 2024 to all consumer products in the EU, including T-shirts and mugs. Under your own brand you carry the manufacturer's obligations: contact details and product identification on the product page.

Questions about products, options or your print shop? Write to us at [support@cloudcart.com](https://cloudcart.commailto:support@cloudcart.com).
