FORM / FIELD GUIDE
From checkout
to your next creation.
Choose a handoff, keep your private receipt, and follow the instructions for your files.
1. Purchase and receive your files
- Choose the $2 model, $5 model with fitting, or $79 Creator Pipeline Kit. Give your name and email. For accessories, describe one rigid item in 20–450 characters and choose a category and avatar scale.
- An optional direct HTTPS PNG or JPG reference guides color and texture. Describe the item’s geometry in your brief. Confirm your design rights and the terms.
- Complete Stripe Checkout. Save the private receipt URL shown after payment. It is your order access link; do not share it publicly.
- The kit downloads immediately after payment verification. Source models generate automatically for both accessory services. The $2 ZIP unlocks when source checks pass. The $5 service continues through Studio fitting and final .rbxm delivery.
Email receipts, owner purchase alerts and delivery messages send when the studio’s sending service is connected. Your private receipt remains the source of truth for delivery and progress.
2. Import your accessory
Model ZIP: extract the whole archive. Keep accessory.gltf, accessory.bin and textures together, then use Studio’s 3D Importer with Scale Unit set to Studs. The OBJ alternative and ROBLOX_CHECKS.json are also included. Use the Accessory Fitting Tool for positioning and attachments, inspect the result on your avatar, and run Roblox validation.
Fitted .rbxm: insert the file into Roblox Studio and test the Accessory on the agreed avatar. Contact the studio with your order number for the included fit adjustment.
Source checks cannot judge every visual defect or guarantee an exact avatar fit. Marketplace submission, account eligibility, fees, moderation and listing management remain in your Roblox account.
3. Use the Creator Pipeline Kit
The ZIP includes QUICKSTART.md, a full README, Python tools, Blender preparation, a Studio importer template, example configuration and offline tests. You need Python 3.10+, Blender 4.x, Roblox Studio and your own Meshy account and credits.
On Windows, open PowerShell inside the extracted folder:
py -m venv .venv
.\.venv\Scripts\python.exe -m pip install -r requirements.txt
Copy-Item .env.example .envEdit .env locally. Add your Meshy key, your Blender executable if needed, and your own Roblox Open Cloud credentials only if you want development Model upload. Add an original isolated reference image and update manifest.json. Run one item first:
.\.venv\Scripts\python.exe ugc_pipeline.py validate
.\.venv\Scripts\python.exe ugc_pipeline.py generate --only 01 --confirm-spend
.\.venv\Scripts\python.exe ugc_pipeline.py prepare --only 01Inspect the model and report before uploading. With your creator destination configured:
.\.venv\Scripts\python.exe ugc_pipeline.py upload --only 01 --confirm-upload --confirm-rights
.\.venv\Scripts\python.exe ugc_pipeline.py export-ids --only 01Open work/ROBLOX_STUDIO_HANDOFF.md and run the generated importer in Studio’s Command Bar. Repeating a command resumes saved work. The all command runs generation, preparation and upload together after setup. Keep .env and work/ private. This uploads development Models; final wearable publication remains in Studio.
4. What is the “upload secret”?
MODEL_AUTOMATION_SECRET is the site’s private shared password for its worker endpoints. It allows the fulfillment worker to claim a paid job, update generation progress and upload its finished ZIP to private delivery storage. It is not an image, file, Roblox password or Roblox API key, and customers never need it.
To configure it, create a unique random value of at least 32 characters in a password manager. In this Site’s environment settings, add MODEL_AUTOMATION_SECRET, mark it as a secret, and publish to apply it. An existing configured secret should be kept; changing it requires updating any external worker that uses it.
Manual delivery: open the private Studio desk, sign in as the owner, open a paid fitted order and select Upload fitted .rbxm. Choose the Accessory saved from Studio, smaller than 25 MB. The owner sign-in authorizes this upload; no secret needs to be pasted into the page. A model-only order is normally delivered automatically.
Roblox upload in the kit: ROBLOX_API_KEY is your own Open Cloud key. Create it in Roblox Creator Dashboard with Assets access for your user or group, then put it in the kit’s local .env together with ROBLOX_CREATOR_TYPE and ROBLOX_CREATOR_ID. The command above uploads the prepared file to that destination. Never put the website’s automation secret into the customer kit.
5. Owner setup and automation
The Studio desk shows payment mode, model readiness and email status. Orders, generation state, delivery files and pending emails are stored on the server. Closing a customer’s page does not cancel provider webhooks.
- Stripe: configure STRIPE_SECRET_KEY and STRIPE_WEBHOOK_SECRET as secrets. Set SITE_ORIGIN to the current HTTPS domain and SALES_ENABLED=true. Register /api/stripe/webhook in Stripe for checkout.session.completed, checkout.session.async_payment_succeeded, checkout.session.expired and charge.refunded. Verify test purchases before switching to matching live keys and a live webhook.
- Models: configure MESHY_API_KEY, MESHY_WEBHOOK_SECRET and MODEL_AUTOMATION_SECRET as secrets. Enable MODEL_AUTOMATION_ENABLED=true, MODEL_AUTOMATION_MODE=webhooks and MESHY_WEBHOOK_ENABLED=true. Set the Meshy webhook to /api/meshy/events/<MESHY_WEBHOOK_SECRET>. Keep credits available.
- Email: add RESEND_API_KEY as a secret and RESEND_FROM_EMAIL as a verified sender in Resend. Set OWNER_NOTIFICATION_EMAIL to your alert inbox and optionally SUPPORT_EMAIL as the reply address. Publish to apply these settings. Every submitted service request or checkout request queues an owner email marked payment not confirmed. Fitting requests are labeled FITTING REQUEST and include the customer brief and contact details. Verified payments queue a separate owner alert and customer receipt; paid fitted orders are labeled FITTING REQUIRED. Another owner alert is sent when the source model is ready for fitting; completed deliveries queue a customer download message. The desk displays pending, sent and review counts and has a retry button. Failed sends are preserved; configured payment/provider webhooks request retries while email is pending, and receipt/desk requests also retry due messages; an email outage never cancels a paid order.
- Fitting: source generation is automatic. Download the source ZIP from the fitted order, complete the visual fit in Studio, and upload the .rbxm. Exact arbitrary-avatar fitting and Marketplace publishing require Studio work and are not completed by the website.
Test payments collect no money but model generation still uses real Meshy credits. Full refunds revoke future downloads; files already downloaded cannot be recalled. Do not include account keys or another customer’s work in deliveries.
6. If something needs attention
- Payment pending: refresh your private receipt. Files unlock only after verified payment.
- Generation needs assistance: contact the studio with the order number. A failed or ambiguous provider submission is held for review to prevent duplicate charges; the studio can help or refund through Stripe.
- Missing texture: extract the complete ZIP and keep its relative filenames together before importing.
- No email: check spam and use your saved receipt URL. The owner should check sender setup and the email queue in the desk.
- Kit missing a module: use the same virtual-environment Python for installation and every command. Install requirements.txt again with that interpreter.
- Upload rejected: use a real Studio-saved binary .rbxm for fitted delivery, not a renamed ZIP. In the kit, check your Open Cloud permissions and creator ID, then read the preparation report before retrying.