Flight Deck manual
Everything from first install to buying shipping labels. Setting up for the first time? Chapters 1β5 are the only ones you have to read β the app is useful the moment your stores are connected.
01 Requirements
- macOS 12 or newer β universal build (Apple Silicon and Intel), notarized by Apple.
- Windows 10 or 11, 64-bit.
- A DTF Pilot license key (starts with
GSB-). You get one when you sign up; Shopify merchants get one automatically at install β it's in the app's admin page or your account portal. - For each WooCommerce store: REST API keys, created in that store's own admin (chapter 4).
- Shopify stores need nothing extra β they connect through your license.
02 Install
macOS
- Download the
.dmgfrom the download page. - Open it and drag DTF Pilot Flight Deck into your Applications folder.
- Launch it from Applications. The app is Apple-notarized, so it opens normally β no security warning to click through.
Windows
- Download the installer
.exefrom the download page. - Run it. If SmartScreen shows a blue βWindows protected your PCβ panel, click More info β Run anyway β the app is new enough that Microsoft's reputation system hasn't seen it many times yet.
- Flight Deck installs, starts, and adds itself to the system tray.
03 First-time setup
Open Settings β at the top of the window and work down the steps.
- License key. Paste your DTF Pilot key (
GSB-β¦) and press Test License. This connects Flight Deck to the cloud where your sheet files live. A failure here is almost always a typo or a key from a different account. - Shopify stores. Stores bound to your license appear automatically under Shopify stores on this license. Untick any this machine shouldn't monitor β handy when the front desk and the print room each run a copy.
- WooCommerce stores. Press + Add WooCommerce Store and enter the store URL plus its REST API keys (chapter 4). Add as many as you run; each gets its own card, folder, statuses and automation.
- Download folder. Under Settings β Downloads, choose where sheets should land. If your RIP watches a hot folder, point Flight Deck at it now and files arrive where the print room already looks.
04 Creating WooCommerce API keys
- In your store's WordPress admin, go to WooCommerce β Settings β Advanced β REST API.
- Click Add key.
- Description: something like Flight Deck. User: an administrator account.
- Permissions: Read is enough to monitor orders and download sheets. Choose Read/Write if you want Flight Deck to update order statuses after download or write tracking numbers back after buying a label.
- Click Generate API key, then copy the Consumer key and Consumer secret straight away β WooCommerce shows the secret only once.
- Paste both into the store's card in Flight Deck along with the store URL, and save.
05 Choosing which statuses to watch
Each WooCommerce store card has a Statuses to query setting β the statuses Flight Deck fetches. The default is pending, processing, on-hold, which is what most shops treat as open work.
Press Choose⦠to pick from the store's real status list, including custom statuses, and add the ones your workflow uses (a custom In Production or Ready to Ship, for example).
06 Downloads & where files go
Downloads land under the base folder you chose:
<base>/<store>/Job Reports/<mm-dd-yyyy>/ β job report PDFs <base>/<store>/<mm-dd-yyyy>/<order>/ β the sheet PNGs
The date layer is the download date, not the order date β so a Monday batch pulls the whole weekend into one dated folder. Turn it off with Group downloads by date.
Filenames
| Name | What it means |
|---|---|
1234-A.png | Order 1234, first sheet. Sheets are lettered A, B, C⦠|
x3-1234-A.png | The customer ordered 3 copies β print this sheet three times. |
1234-A - RUSH.png | Rush order, so priority is visible in the folder listing, not only on the ticket. On by default. |
Also in Settings β Downloads: include the store name in filenames, and append a fixed suffix to fixed-size sheet names (useful as a printer identifier).
Billing
07 Working the queue
The left rail lists every open order across every connected store.
Reading a card
- Order number, a β when all its sheets are already downloaded, the store name (shown when more than one store is connected), and the order total.
- Customer name and the order's status in that store's own color.
- The ship-by line, colour coded: Ship by β¦ on time Β· DUE TODAY Β· PAST DUE.
- A RUSH chip when the customer paid for rush turnaround.
- A π¦ marker once a shipping label has been bought.
Sorting and filtering
- Urgency (default): past due first, then due today, then rush, then earliest ship-by.
- Order #: newest or oldest first, for working the queue in sequence.
- The chip rows at the top are live counters and filters β click New, In Production, On Hold or a due-date chip to narrow the list; click again to clear.
- Search matches order number, customer name or store; the store and status dropdowns narrow further.
Downloading
Select an order to see its lines. Lines with gang sheet files show Download Sheets; Download All Sheets fetches every line at once. When a download finishes, a green ββ N sheets saved to β¦β appears β click it to open the folder.
08 Production tickets & printers
Flight Deck prints a paper ticket per order: header, ship-by banner (with a big !!!RUSH!!! block on rush orders), the product list with sheet dimensions, totals, addresses, and your own checklist footer lines. Tickets print through the printer's normal system driver, so thermal receipt printers and ordinary desktop printers both work.
- Print ticket prints it; Preview renders a PDF so you can tune fonts, header and footer without wasting roll.
- A manual print asks which printer to use β the configured one is highlighted, and each printer remembers the paper size last used on it.
- Auto-print: switch on Print a ticket automatically when a new order arrives. Only orders arriving after you arm it print β never the backlog.
09 Notifications & badges
With Settings β Notifications on, Flight Deck announces order activity even in the background. Clicking a notification brings the app forward with that order selected. Per store, choose:
- Any new order (default) β a banner the first time an order appears.
- Only chosen statuses β a banner when an order enters one of the checked statuses, including an order already in the list changing into it (βOrder #1234 is now On Holdβ).
Ticking a status the store isn't fetching yet automatically adds it to that store's fetched statuses β Flight Deck can only announce what it can see.
Send test notification, at the top of the Notifications section, fires a banner through the exact path real notifications use. If the test doesn't appear, the operating system is blocking them; if the test works but order notifications don't, check the per-store rules β and remember they fire on a refresh, not the instant the customer orders.
Badges
- macOS: the menu bar shows live New / In Production counts, with amber βtodayβ and red βlateβ chips. The Dock icon carries the open-order total.
- Windows: the taskbar button carries an overlay badge β red with the past-due count, amber with today's, otherwise green with the open total. The tray tooltip shows the full breakdown.
10 Automation
All of it is per store, because every store's workflow differs.
Auto-download
Switch it on in a WooCommerce store's card, or next to a Shopify store in the monitor list. New orders then pull their own sheets as they arrive, through exactly the same pipeline as pressing Download All β same naming, same job reports, same status updates.
After-download status & tags
- WooCommerce (per store): automatically move an order to a status of that store's choosing once its sheets download successfully. Needs Read/Write REST keys.
- Shopify: automatically add a tag such as
sheets-downloadedβ Shopify has no custom statuses, so filter by the tag in Shopify admin instead.
Auto-refresh
Choose how often Flight Deck checks your stores β every minute through to hourly, or 0 for manual only. The sidebar shows how long ago the last refresh ran.
11 Shipping labels
The Shipping tab quotes, buys and prints USPS, UPS and FedEx labels next to the orders they belong to. It runs on your own EasyPost account: money flows straight from you to EasyPost, and DTF Pilot adds nothing on top.
Getting EasyPost keys
- Sign up at easypost.com β free; you pay only for postage.
- Add a payment method under Account Settings β Billing. Use a bank account (ACH), not a card β card top-ups carry a 3.75% fee.
- Find your keys under Account Settings β API Keys. The test key (
EZTKβ¦) quotes and βbuysβ with no money and no real postage β start there; Flight Deck shows a standing TEST MODE banner and test labels print with a SAMPLE watermark. The production key (EZAKβ¦) buys real labels; switch once a test purchase has gone end to end.
USPS, UPS and FedEx carrier accounts are built in. If you have your own negotiated UPS/FedEx contract you can attach it in EasyPost and its rates appear in Flight Deck automatically.
Setting it up
Everything is under Settings β your store's card β Shipping (EasyPost), per store:
- API key β paste and press Test & save. Stored encrypted on that machine and never shown again.
- Label printer (4Γ6) β usually a different device from the ticket printer. Press Print test label before any money is involved.
- Packages β the boxes and tubes you actually ship in: name, LΓWΓH in inches, and empty weight (tare) in pounds.
- Ship-from locations β at least one. Fields marked * are carrier-required; UPS refuses a label without a phone number. Multi-location shops add each and mark a default.
- Weight suggestion β pre-fills each order's weight from its gang sheet length (lb per 10 ft of roll + lb per fixed sheet + package tare). Tune it to your film; it's always editable at buy time.
Buying
- One order: press π¦ Ship in the order details. Check address, package and weight β Get rates β pick a service β Buy. The label prints, saves under the store's
Shipping Labels/folder, and tracking plus status write back to the order. - Batch: on the Shipping tab, β/Ctrl-click orders (Shift-click for a range). They group by store, each row with its own package and pre-filled weight. Quote all, adjust any row, then Buy N labelsβ¦ β one confirmation shows every order and the total.
- π¦β means the label was bought but never printed (a paused printer, for example) β the parcel has no postage until you press Print now. The label file is always saved, so nothing is lost.
What happens to the order after the label
- WooCommerce β the tracking number is written onto the order (with WooCommerce Shipment Tracking plugin support), the status can move to whatever you choose, and the customer can get a tracking note.
- Shopify β the order is marked fulfilled with the tracking number, which is what clears it out of Shopify's Unfulfilled queue and fills in the customer's order-status page. Optionally Shopify sends its own shipping-confirmation email at the same time.
Shopify asks for one permission first. Fulfilling orders needs a permission the DTF Pilot app requests the first time you open it in your Shopify admin after updating β approve it once. Until then, labels still buy and print; the order just stays unfulfilled and the shipment shows β ORDER NOT MARKED FULFILLED. Press Mark fulfilled on that shipment in Shipping β Shipped to finish it with the tracking number you already bought.
12 Direct sales β phone & walk-in orders
Not every order comes from a store. Someone calls, texts or walks in β and until now that customer couldn't use your gang sheet builder at all. The Direct tab handles those jobs end to end: you take the order, the customer builds their gang sheet from a link you send, and the job runs through the same print-room routine as a store order.
Direct jobs live in the DTF Pilot cloud rather than on one computer, so every machine running Flight Deck on your licence sees the same queue in the same state. The counter and the print room can't disagree about what's been done.
Taking the order
Press + New direct sale and type what the customer tells you: name, company, email, phone, shipping address. Needed by is your turnaround promise β it shows on the customer's page and prints on the ticket as SHIP BY. Customer reference is their name for the job, a PO number or "Riverside Tigers", so you both quote the same thing. Shop note is yours alone and never shown to them.
The cloud assigns the order number as you create it, unique across every machine you run β safe to read down the phone.
The customer's link
Each job carries its own link to the builder. Email it from the job, or copy it into a text message. The customer checks the details you took over the phone, corrects anything wrong, adds their own note if they want, then builds the gang sheet in the full builder and saves. The job updates on every machine straight away.
Links expire after 30 days, and you can revoke one or issue a fresh one at any time.
Jobs with no artwork
A job doesn't need a gang sheet. A label-only job says No gang sheet yet and blocks nothing β you can still print a ticket, buy a label and mark it shipped.
Statuses, and the production lock
A job moves through New β Link sent β Sheet received β In production β Shipped β Completed. Most of that happens by itself: emailing the link, the customer submitting, you downloading the sheet, and buying a label each move it along.
Once a job reaches In production the customer's link shows the status and nothing else β no details form, no builder β so nobody edits artwork you've already printed. Moved it too early? Set the status back and their link works again.
Shipped, completed and cancelled jobs move to the Completed tab and are kept as a read-only record. If one was closed by mistake, Reopen order puts it back into production.
13 Prices & volume discounts
Settings β Direct sales holds the price list every direct job is quoted from. It lives with your licence, so every computer and every customer link uses the same one.
- Sold by length off the roll or by area, priced per foot, inch, metre or centimetre, in your own currency β a European shop never has to think in inches.
- Regular price is your undiscounted rate. Leave it at 0 and the customer sees no price at all, which is the sensible setting when you quote on the phone.
- Volume discounts are bands β "up to 10 ft β $8, up to 50 ft β $7, above β $6". The builder re-picks the band as the layout grows, so the discount applies itself on the customer's screen with no second quote from you.
- A regular with an agreed rate that isn't in the table gets a Special rate on their job, which beats the bands for that job only.
The price list is copied onto each job when you take it. Raise your prices this afternoon and the customer you quoted this morning still sees what you told them. When they submit, the quote is frozen onto the job β that's the figure to invoice, identical on every machine.
14 Emails to the customer & tracking
Customer emails look like they came from your shop β your name or logo in the header, and replies land in your inbox. Add the name and reply address in Settings β Direct sales and confirm it by clicking the link we email there. That confirmation step is what stops a typo silently swallowing every customer reply.
Running more than one shopfront? Add several addresses, mark one as the default, and choose per job with Sent as.
Marking a job Shipped or Completed emails the customer automatically β once, so nudging a status back and forth can't mail them twice. If you bought the label in Flight Deck, the tracking link and number are in it. The job records what was sent and to whom, and you can resend when someone loses the email.
15 Re-downloads & reports
Anything your licence has already paid for can be pulled again for free. A store order re-downloads from the order itself; a direct sale re-downloads from its job. Flight Deck marks which machine already has each file, so a second computer knows whether it needs to fetch it β the recovery path when a file is lost or a machine is replaced.
Reports π shows downloads, printed area, cost and sales by period and by store β the same numbers as your account portal, without leaving the app.
16 Updates
Flight Deck updates itself on macOS and Windows. A new version downloads quietly in the background, then offers to restart β decline and it installs the next time you quit, which matters in a shop where the app runs for weeks.
To check yourself: Help β Check for Updatesβ¦ on either platform, or the same item on the tray / menu-bar icon. It always answers β either you're up to date or it names the version coming. Press F1 for the built-in manual, which now has its own contents rail.
17 Troubleshooting
βTest Licenseβ fails
Check for a stray space in the pasted key, and that it's the key for this account (your account portal shows it). Behind a corporate firewall, the machine needs outbound HTTPS to dtfpilot.com and the DTF Pilot cloud.
A WooCommerce store shows no orders
- Confirm the store URL is the one customers use, including
https://. - Re-check the Consumer key/secret β the secret is shown only once when created, so a partially copied secret is a common cause.
- Check Statuses to query: if your open work sits in a custom status that isn't ticked, those orders exist but aren't fetched.
Status names look wrong or generic
The store needs DTF Pilot plugin 6.9.234 or newer to report its real (renamed or custom) status names. Update the plugin and refresh.
Auto-download didn't download anything
Usually the watermark working as designed: orders placed before you armed it are skipped, and Flight Deck says so explicitly (βskipped N orders placed before it was switched onβ). Use Reset to now for a clean starting point. Also check the store isn't paused and that the order really contains gang sheet lines.
No desktop notifications
- Press Send test notification in Settings β Notifications. If the test doesn't appear, the OS is blocking them.
- Windows: Settings β System β Notifications β notifications on globally, DTF Pilot Flight Deck allowed, and Focus assist not suppressing them.
- macOS: System Settings β Notifications β DTF Pilot Flight Deck β allow, and set the style to Alerts so banners stay until dismissed.
The ticket printer feeds a lot of blank roll
The Roll page (mm) setting doesn't match the page length in the printer driver. Set both to the same value β see chapter 8.
The app disappeared on Windows
Clicking β hides it to the tray β it's still running. Click the β tray icon to bring it back (drag it out of the ^ overflow so it stays visible), and quit properly from the tray menu.
Job report PDFs aren't appearing
Check that Settings β Downloads has Save a job report PDF enabled, and that the base download folder is on a drive that's actually mounted β a folder on a disconnected network share can fail quietly.
18 Getting support
Email support@dtfpilot.com with your license key and what you were doing when it went wrong. You'll get an answer from someone who runs a DTF shop, not a ticket queue.
Press F1 inside Flight Deck for the built-in quick help, which mirrors this manual's day-to-day chapters.