Merchandise Store
Set up a branded merchandise store for your studio. Students and parents can browse and purchase gear printed on-demand by Printful — no inventory required. Printful ships orders directly to customers.
- 1
Open the Store setup wizard
Go to Dashboard > Store. If your store hasn't been connected yet, you'll land on the setup wizard. You must have Owner or Manager access.
- 2
Get your Printful credentials
You'll need a Printful account. Log in to Printful, open your store, and find your Store ID (a number like 123456) in the store settings. Then go to Settings > API and generate a new API key.
- 3
Enter your Printful Store ID and API key
Paste both values into Step 2 of the wizard and click Connect. MyDojang will verify your credentials with Printful before saving — you'll see an error if anything is incorrect.
- 4
Enable the store and configure checkout
In Step 3, flip the 'Store enabled' switch to make your store publicly visible. The 'Allow guest checkout' toggle lets visitors purchase without a member account — leave this on for the widest reach.
- 5
Your store URL
After finishing setup, your public store is available at your studio's store link (shown on the Store Settings page). Share it with your students and parents.
- 1
Curated product catalog (MVP)
In the current release, products are added to your store via the admin catalog — contact support or your platform administrator to add specific Printful products to your store. A self-service product picker is planned for a future release.
- 2
Products appear automatically
Once products are added to your store catalog, they appear on the Store page. Each product shows its variants (sizes, colors) along with the retail price you've configured.
- 3
Printful handles fulfillment
Printful prints each item on demand when an order is placed. You don't hold any stock — there is no inventory to manage.
- 1
Open a product's variant pricing
On the Store management page, click on a product to expand its variants. Each variant (size + color combination) has its own retail price.
- 2
Enter a retail price
Type the price in dollars (e.g., 25.00). The retail price must be higher than Printful's base cost for that variant — the system will warn you if the price is too low.
- 3
Your margin
The difference between the retail price and Printful's base cost is your studio's margin. This amount is transferred to your Stripe Connect account after each successful order.
- 4
Save changes
Click Save after updating prices. Changes take effect immediately for new orders.
- 1
Hide unavailable sizes or colors
Toggle individual variants on or off from the product detail view. Disabled variants are hidden from the public store so customers can't add them to their cart.
- 2
Re-enable at any time
Flip the variant toggle back on to make it available again. There is no delay — the change is instant.
- 1
Order list
Go to Dashboard > Store > Orders to see all orders placed through your store. Orders show the customer name, items purchased, total amount, and current fulfillment status.
- 2
Order statuses
Orders move through: PENDING (payment confirmed, submitting to Printful) → PROCESSING (Printful accepted) → SHIPPED (tracking available) → DELIVERED. Failed submissions show as FAILED.
- 3
Tracking information
Once Printful ships an order, the tracking number and carrier appear on the order detail page. Customers also receive a shipping notification from Printful directly.
- 1
Customer checks out
The customer completes checkout via Stripe. Your studio's Stripe Connect account captures the full retail amount.
- 2
Order submitted to Printful
MyDojang automatically submits the order to Printful immediately after payment. Printful charges the base product cost to your connected Printful account.
- 3
Printing and shipping
Printful prints the item and ships it directly to the customer's address. You receive your margin (retail price minus Printful cost) via Stripe.
- 4
Tracking update
When Printful ships the order, a webhook updates the order status to SHIPPED and records the tracking number in MyDojang.
- 1
Identify FAILED orders
Orders that couldn't be submitted to Printful (e.g., due to a temporary API outage) appear with a FAILED status on the Orders page.
- 2
Click Retry
Each FAILED order has a Retry button. Clicking it re-submits the order to Printful. If the issue was temporary, the order will move to PROCESSING.
- 3
Automatic retry cron
A background cron job also retries FAILED orders automatically every hour, so most failures resolve without manual intervention.
- 4
Contact support if retries fail
If an order continues to fail after multiple retries, use Dashboard > Support to open a ticket. Include the order ID so the team can investigate.