SortingGo Print Service — Frequently Asked Questions

What is SortingGo Print Service?

It's a background service and Web console installed on a Windows PC, handling label design, data format management, printer management, and printing. It's not an APP, and it's not a cloud print service — it runs on the local network.

What's the Web console URL and the default port?

The default port is 28088. On the Windows PC itself you can open http://localhost:28088; from a phone or other device, use the Windows PC's LAN IP instead, e.g. http://192.168.1.50:28088 (on a phone, localhost refers to the phone itself, not the PC).

What if the phone APP can't connect to Print Service?

Check in order: 1) open the service URL in a browser on the Windows PC itself to confirm it's running; 2) open the same URL in the phone's browser — failure here is usually a firewall or Wi-Fi client-isolation issue; 3) confirm the IP and port entered in the APP are correct; 4) create a new API Key and test again. On success, the APP shows a successful connection and the number of label formats.

Can it be used without internet access?

Yes. LAN printing and the Web console both work fully offline; only downloading a new version, license activation, or external services may require internet access.

What information should never be shared with AI or support?

Never provide a full API Key, password, Signed Entitlement license credential, internal network credentials, or order data containing personal information. When you need help, providing the version, when it happened, an error screenshot, and a masked partial value is enough.

How do I report an issue?

Please provide the Print Service version, Windows version, APP version and phone model, printer brand/model and connection type, when it happened, an error screenshot, the print history record ID, and a log excerpt. Never attach a full API Key, password, or license credential.

Where's the database, and how do I back it up?

In an installer deployment, data lives under C:\ProgramData\SortingGoPrintService, with the main database at data\labelprint.db. Before backing up, it's best to stop the service, then copy all three files: labelprint.db, labelprint.db-wal, and labelprint.db-shm.

What are lookup sources for?

After uploading an Excel file like a product or customer master, bind a join field to it in Data Formats — then labels can use those Excel columns (barcode, price, origin, ...), resolved automatically by the server at print time, without having to include those columns in every print job's data.

What happens when I re-import?

Re-importing replaces that source's entire dataset with the new Excel file. Rows with an empty key are skipped; rows with a duplicate key are overwritten by the later row. The import result shows how many rows were skipped or overwritten.

Why can't I delete a lookup source?

The source is still bound to a data format. Remove the binding on the Data Formats page first, then come back and delete it. Deleting a source removes all of its rows permanently.

What happens when a key isn't found at print time?

A row with no matching key has its lookup field printed blank — the label still prints without error. If lookup fields on your labels are mostly blank, check whether the join field's value matches the key in the lookup source.

Will the built-in default data formats and label templates overwrite my changes?

No. If the database already has a data format or label template with the same ID at service startup, your changes are never overwritten.

What happens if I delete a data format?

Deleting a data format also deletes any label formats bound to it — confirm before deleting, and back it up with "Export" to JSON first if needed. Built-in system formats can't be deleted.

What's a lookup-source binding?

It sets a field on the data format as the join field, matched against a lookup source's key, along with a virtual-field prefix (e.g. pinfo). Once bound, the Label Designer can use lookup fields like "pinfo.barcode", resolved to real values by the server at print time. Remember to click "Save This Data Format" after any change.

How do computed fields work?

A computed field is generated by the server before printing, using a concatenation expression like {product_code}+','+{quantity}. It can reference raw fields, other computed fields, and lookup fields — commonly used to assemble barcode content.

Can I build fields directly from an Excel header row?

Yes — use "Choose Sample Excel" and apply the header row to bulk-create fields. Note: this clears the format's existing fields, lookup bindings, and computed fields, then rebuilds from the Excel header — remember to save afterward.

What image formats does the image element support? Any size limits?

PNG, JPEG, and WebP are supported; SVG and GIF are not. Files should be under 512KB, with original width/height under 1200px. The image fit mode can be Contain, Cover, or Stretch.

How do the detail table and aggregate fields work on subtotal labels?

Each subtotal layout can have only one detail table; when the row count exceeds one page's capacity, it automatically continues onto the next page. Aggregate fields (count or sum) always show the total for the whole group, and a page marker is added automatically when split across pages, e.g. "(1/2) Total 123".

Why is the printed label shifted, clipped, or the wrong scale?

Check whether the label layout's paper width/height and DPI match the real label paper (e.g. 60x40 mm) and the printer's resolution (203 or 300 DPI), then verify the printer's own paper settings and calibration. In Windows driver mode, use "Windows Driver Calibration" to fine-tune X/Y offset and scale.

Can I fine-tune an element's position precisely?

Yes — select an element and use the arrow keys to nudge it in 0.5mm steps (hold Shift for 1.0mm); you can also type X/Y coordinates and width/height (mm) directly in the properties panel.

Can a label format be backed up or moved to another PC?

Yes. Use "Export" to save the label format as a JSON file, then "Import" it on the target environment to restore it; you can also use "Duplicate" to create a copy before editing. If you make a mistake, "Restore" reverts to the last saved layout.

What printer connection types are supported?

Three: network (TCP raw, commonly port 9100), USB/Bluetooth serial (COM port), and Windows system printers. Bluetooth SPP usually shows up as a COM port on Windows; BLE label printers are handled by the SortingGo APP's Device BLE mode instead, and don't need to be created here.

How do I choose a dialect (TSPL, ZPL, EPL, ESC/POS)?

Match Command protocol to what the printer supports: TSC-compatible printers usually use TSPL/TSPL2, Zebra-compatible printers use ZPL/ZPL II, older Zebra/Eltron-compatible printers use EPL, and thermal receipt printers use ESC/POS. Use Print content mode = Image when text should be rendered as bitmap data through that protocol. Printing streams of command text or blank labels usually means the protocol or content mode is wrong.

What if Chinese or other multilingual text prints as garbage characters?

First confirm the dialect is correct, then try each text encoding option (auto, utf-8, big5, gbk, shift_jis, cp949, cp874, cp1258, cp1252) — the test label prints a language sample for the selected charset. Raw mode is limited by the printer's built-in fonts; switch to Windows driver (PDF/Bitmap) mode if you need every language guaranteed to print correctly.

What's the difference between the Windows printer output modes?

Raw command mode sends TSPL/ZPL etc. commands directly — fast, but limited by the printer's fonts. Windows driver mode (PDF/Bitmap) renders via the system — most reliable for multilingual text, but needs Microsoft Edge. GDI fallback mode skips browser rendering. For high-volume printing, adjust the render performance mode (Low for stability, Medium balanced, High for throughput).

How do I diagnose an unresponsive printer?

First run "Test Print" on this page, then check in order: printer power and connection, IP/port for a network printer, whether the COM port exists and isn't occupied, and the Windows printer name. If it still fails, check Print History for details, or download the .bin command file and replay it with "Import Command File to Test Print".

Can I replay a previous print command?

Yes. Download the compiled .bin command file from a record's detail in Print History, then use "Import Command File to Test Print" on the Printers page to send it as-is to the printer, bypassing label format compilation. Only network / serial / Windows RAW printers support this; Windows driver mode does not.

What are the limits when importing Excel for printing?

Files are capped at 10 MB, with limits on row count, column count, cell length, and total cell count; cells containing formulas are rejected. Parsing never stages files on the server, and never creates or affects lookup sources. For large row counts, print in batches.

What if PDF export fails?

PDF rendering requires Microsoft Edge to be launchable by the service account. Confirm Edge is installed, check the service log, and try simplifying the layout (e.g. remove a large image) before testing again; if it still fails, upgrade to the latest Print Service version.

Why does the label carry a "trial" and SortingGo mark?

Without a PRO/ENT license (FREE, LITE, STD, or unlicensed), all output is forced to carry a trial and SortingGo mark — printing itself isn't otherwise limited. Removing the mark requires a valid Pro/Ent license; check the current decision on the License page.

Do multiple print jobs interfere with each other?

No. Jobs for the same physical printer enter a serialized queue and run in order; different printers each queue independently. Sending a lot of jobs at once means some waiting — avoid repeatedly clicking Print, or you may get duplicate labels.

If test print succeeds, is a real print guaranteed to succeed?

Not guaranteed. A real print is still affected by the label layout, the actual data content, the paper, and the printer's condition. It's best to print a small batch of real data first to confirm before running a large batch.

What can I look up in print history?

Filter by status (pending, printing, compiled, completed, failed, etc.), source (Web or API), and date range. Each record includes time, data format, label format, device, kind, count, copies, trial mark, and status, with command details available.

Does print history clear itself automatically?

The default retention is 90 days; set it to 0 to disable auto-clearing. Auto-clearing runs at service restart or the every-24-hours scheduled check — not immediately after you save the setting. To delete right away, use "Purge Print History" manually — but that action cannot be undone.

Can print history be exported?

Yes, to Excel — up to 5000 matching rows at a time. If you need more, narrow the date range and export in multiple batches.

Why do some records have no command file to download?

Windows driver mode (PDF/Bitmap) jobs don't produce a raw command file, or the job hasn't reached the compile stage yet, so there's no .bin to download. Raw-command print jobs can have their .bin downloaded from the record detail, useful for replay diagnostics.

Can I reprint only part of a job?

A single-label job can be expanded and you can check just the details you want to reprint; a subtotal label, being one page aggregating a whole group, always reprints as the entire group.

Can a reprint use a different printer or print multiple copies?

Yes. The reprint dialog lets you choose any server-side printer as the target, with a copy count from 1 to 99. Web reprint needs at least one server-side printer — set one up on the Printers page first if you don't have one.

Does reprinting remove the original trial mark?

No. Reprinting preserves the trial status of the source record — if the original carried a trial mark, the reprinted label still carries the trial and SortingGo mark.

Can a phone's BLE print job be reprinted from Web?

Yes. Print history from the APP's Device BLE mode also shows up in reprint search — reprinting from Web sends the job to whichever server-side printer you select.

What are API Keys for?

An API Key is the credential the SortingGo APP (or an external system) uses to call the Print Service's print API. Enter the server address and key in the APP's Settings > Print Settings to connect and print.

Can I see the plaintext API Key again later?

No. The plaintext is shown only once, at creation — once you leave the page it can never be viewed again, so copy and save it right away. If it's lost, just create a new key and revoke the old one.

What if the APP shows "API Key invalid"?

It's usually a typo or a revoked key. Revoke the old key here and create a new one, then enter the new key in the APP's print settings and test the connection. Once revoked, any APP currently using that key immediately loses print API access.

What's the difference between Admin and regular User?

A regular user can print and query; an admin can additionally manage users, API Keys, licensing, and high-risk settings (like purging print history). Use a regular-user account for day-to-day work, and switch to admin only for administrative tasks.

What's the default username and password? Why change it?

The default install credentials are admin / sortinggo. This is public information — anyone who can reach the service could log in — so change the password immediately after the first login. New user passwords must be at least 8 characters.

Which languages does each command dialect (TSPL, ZPL, EPL, ESC/POS) support, and how do I choose?

Whether text mode can print a given language depends on the printer's built-in fonts, not just a software setting: TSPL/TSPL2 already has font mappings attempted for every supported language (Chinese, English, Japanese, Korean, Thai, Vietnamese). ZPL/ZPL II ships with a Latin-only font by default — to print Chinese, Japanese, Korean, Thai, or Vietnamese you must set the "ZPL international font" in the printer settings (the filename of an Asian/international font built into or manually installed on the printer's memory, e.g. E:SIMSUN.FNT); without it, ZPL can only print Latin scripts like English or Spanish. ESC/POS already supports Chinese, Japanese, and Korean, but Thai has no matching code table and is unsupported. EPL does not support any non-Latin language. If you're unsure whether your printer actually has the matching font, the safest option is to switch "Print content mode" to image — the system renders the text into a bitmap before sending it, so it isn't limited by the printer's built-in fonts and every language is guaranteed to print. If a warning appears after printing, it tells you which field and which language failed to print under the current settings, along with a suggested fix.

How do I remove the trial mark?

You need a valid Pro or Ent license: import and activate a Signed Entitlement (compact JWS) issued by the licensing center on this page, or — in trust mode — have the APP report a PRO/ENT tier. FREE, LITE, and STD can still print, but output carries a trial mark.

What if license activation fails, or the trial mark still shows?

Check the "Trial Mark diagnostics" decision result: common causes are an expired license, failed signature verification, no verification public key configured, a license tier that isn't Pro/Ent, or a license missing the label_print_no_trial permission. Confirm you pasted the complete compact JWS, and re-obtain it from the licensing center if needed.

What are the refund limits, and what happens after a refund?

A refund can only be self-requested within 30 days of purchase, and only with an Owner Session (Email + License Key verified together -- a Recovery Session obtained by Email alone cannot do this). Once confirmed, the server immediately marks that License as refunded, and no device can activate or refresh it afterward -- this cannot be undone. The device that requested the refund clears its own local cache immediately; if other devices share the same License (Professional allows up to two), their local caches may remain valid until each one's own 30-day expiration -- this is a known behavior of the offline design, not a fault.

What's the difference between Normal Deactivate, Emergency Reset, and account recovery?

Normal Deactivate runs on a device that still works: it releases the slot immediately and never counts against the Reset quota -- prefer this whenever you're switching machines or the device is still usable. Emergency Reset is for a device that's lost, broken, or can't act for itself: it requires an Owner Session (verified with Email + License Key) first, counts against the rolling 365-day limit of 12, and revokes that device's license immediately with no way to undo it. "Forgot your License Key" is the recovery path when the Key itself is lost -- only an email is needed to get a limited Recovery Session, which can view the device list and run Reset, but cannot request a refund or reissue a Key; those two always require an Owner Session verified with Email + Key.

This page comes from the product's built-in help and is updated with each release. Your installed version is the final word on what the screen shows.

← Back to the Help Center

AI Help Center

📖 Help Center ChatGPT Gemini