Step-by-step help for sales associates and site managers using STF POS on the sales floor. This guide now follows the updated operations documents for cart building, checkout, refunds, reports, barcode registration, and first-time setup.
This guide covers how to build a cart before checkout: scanning items with a Bluetooth barcode scanner, searching the product catalog by name, and adding free-text custom items when a product is not in the catalog.
Before You Begin
Make sure:
Your Bluetooth scanner has been selected in Settings → Scanner preferences (see Guide 12, Part 2)
The sync badge at the top of the screen is not showing an error
If you will be collecting card payment, also confirm your card reader is ready before opening checkout — see Guide 02 — Card Checkout.
Step 1 — Open the Sale Tab
Tap the Sale tab. Scanning is active automatically — you do not need to tap anything to arm the scanner.
Step 2 — Add Items by Scanning
Scan the first item's barcode with your Bluetooth scanner. The item name, price, and quantity appear as a line in the cart.
Continue scanning items. Each scan either adds a new line or increases the quantity on an existing line if the same item is scanned again.
To adjust quantity on an item:
Tap the − or + buttons on that item's row to decrease or increase the quantity.
To remove an item entirely:
Tap the delete (trash) icon on that item's row.
Step 3 — Add Items by Searching the Catalog
Use this method when an item exists in the catalog but you cannot scan it — for example, if the barcode label is torn or missing.
Find the product search field in the item entry area. Its placeholder reads "Search by name or barcode."
Start typing the product name or a part of it. For example, type water to find "Bottled Water 16oz."
A list of matching products appears below the search field, in a table with Name, Pack $, Price, and Stock columns.
Tap the + (Add) button at the right of the product's row to add it to the cart.
The item is added at its unit price by default. Turn on the Pack $ filter toggle above the search field to add the product at its pack price/level instead.
The item appears in the cart with a quantity of 1. Adjust the quantity as needed using the − and + buttons.
Step 4 — Add a Free-Text Custom Item
Use this when an item is not in the catalog and you need to charge a specific dollar amount. Common uses: event fees, donations, service charges, or miscellaneous items.
Find the custom item entry area below the product search field.
In the Item name field, type a short, clear description (e.g., Event Registration Fee or Donation).
In the Price field, type the dollar amount (e.g., 5.00).
Tap Add to add it to the cart.
The item appears in the cart as a custom line with the label you typed and the price you entered.
Step 5 — Review the Cart Totals
Before opening checkout, check the totals panel at the top of the cart:
Subtotal — the sum of all item prices before tax or fees
Tax — applicable tax (if your site is tax-enabled)
Card fee — a service fee added for card payments (if your site uses one)
Total — the amount the customer owes
If your manager has enabled a discount on this transaction, a blue banner shows the discount percentage applied.
Next Step — Proceed to Checkout
Once all items are in the cart and the totals look correct, choose a checkout method:
For Stripe M2: your reader must be powered on and prepared in Settings (see Guide 12, Part 3)
For Manual: know the amount to charge on the external terminal before going to it
Step 1 — Open Checkout and Select Card
Tap the Checkout button at the bottom of the Sale screen.
The checkout modal opens showing the sale total.
Tap Card.
Step 2 — Verify or Switch the Payment Method
A Payment method indicator appears in the checkout controls row showing the current method (e.g., "Manual" or "Stripe Reader").
Manual (default)
Stripe M2
What it means
You charge the external terminal; confirm in-app
App drives the Stripe M2 reader directly
Manager PIN required to switch?
No — Manual is the default; no PIN needed to use it
Switching away from Manual requires no PIN; switching to Manual from Stripe requires Manager Override PIN if Stripe is the device default
If the method shown is already what you need, skip to Step 3 for your method. To switch, tap the Payment method button and select the correct option from the dropdown. If a Manager Override dialog appears, enter the PIN and tap OK.
Step 3 (Manual) — Process the Card on the External Terminal
STF POS shows the total amount due on screen.
Take the customer to your site's external card terminal (or bring the terminal to them).
Process the card payment for the exact amount shown in STF POS on the external terminal.
Wait for the external terminal to show a successful approval.
Step 4 (Manual) — Confirm the Payment in STF POS
After the external terminal approves the payment, return to the STF POS checkout modal.
Find the card charge line showing the amount.
Tap Charge complete? to record the payment in STF POS.
The charge line updates to show the amount as collected.
Step 3 (Stripe M2) — Collect the Card Payment
A card charge line appears showing the full sale amount.
Tap the Charge button (or the card reader indicator button on the charge line).
The app sends a payment request to the Stripe M2 reader. If the reader is already prepared and connected, STF POS reuses that live connection; otherwise a progress bar appears with the message "Looking for an available reader."
When the reader is ready, it beeps or lights up. Prompt the customer to tap, insert, or swipe their card on the reader.
The reader processes the payment. Watch the progress bar — it advances through stages automatically.
When the payment is approved, the charge line changes to show "Collected" and the amount. STF POS plays a short positive confirmation tone.
Step 5 — Complete the Transaction
Once the card charge is collected (either method):
A Transaction Complete screen appears (or the checkout modal shows a green completion state).
The app prompts for a receipt choice:
Text — type the customer's 10-digit phone number (digits only, no dashes) and send.
Email — type the customer's email address and send.
Toggle the Notify me of future deals pill on only when the customer opts in.
No — skip the receipt.
The sale is recorded and the cart clears, ready for the next transaction.
Backing Out Before Completion
Inside checkout you have two ways to step away before the sale is finalized:
Back to cart — returns to the cart with all items intact.
This guide covers how to accept a cash payment, calculate change due, and complete a cash transaction. No card reader or external terminal is needed for cash sales.
Review the cart totals before proceeding. The total shown is the amount you will collect in cash.
Step 2 — Open Checkout and Select Cash
Tap the Checkout button at the bottom of the Sale screen.
The checkout modal opens.
Tap Cash.
Step 3 — Enter Cash Tendered
After selecting Cash, a cash tendered input field appears.
Type the dollar amount the customer handed you (for example, 20.00 if they gave you a $20 bill).
The app immediately calculates and displays the change due below the total.
About cash rounding: If your site uses cash rounding, the app may round the total to the nearest whole dollar for cash transactions. A note appears automatically: "Rounding change to whole dollars." The rounded amount is shown in the totals area — you do not need to do anything.
Step 4 — Confirm Change Due
Verify the change due amount shown on screen.
Count out the correct change from your cash drawer and give it to the customer.
Step 5 — Complete the Transaction
Once the cash tendered amount is entered and equals or exceeds the total, the Complete button becomes active.
Tap Complete.
The Transaction Complete screen appears.
The app may prompt for a receipt choice.
Text — type the customer's 10-digit phone number and send.
Email — type the customer's email address and send.
Toggle the Notify me of future deals pill on only when the customer opts in.
No — skip the receipt.
The sale is recorded and the cart clears.
Backing Out or Voiding Before Completion
Inside checkout you have two ways to step away from a sale before tapping Complete:
Back to cart — returns to the cart with all items intact so you can add or fix items, then re-open checkout.
Void — discards the ticket entirely (a reason is required and the void is logged). See Guide 06 — Voiding a Sale.
There is no longer a way to silently abandon a started ticket — you either complete it, step back to the cart, or void it with a reason.
This guide covers how to accept payment across two or more payment methods in a single transaction — for example, a customer paying with two credit cards, or part cash and part card.
What Is Split Checkout?
Split checkout means the customer is paying with more than one payment method for the same sale. Common scenarios:
A customer wants to put $20 on one card and the rest on another
A customer has some cash and wants to put the remainder on a card
A customer needs to split a large purchase across two cards with different limits
If any card payments will go through the Stripe M2 reader, make sure it is prepared (see Guide 12, Part 3)
If using the external terminal (Manual), know the amount to charge on it before going to the terminal
Step 1 — Open Checkout and Select Split
Tap Checkout.
In the checkout modal, tap Split.
Step 2 — Enter Each Payment Portion
The Split workflow shows both a Cash field and one or more Card charge lines.
Cash portion (if any)
In the Cash field, type the dollar amount the customer is paying in cash (e.g., 10.00).
The remaining balance is automatically shown on the card charge line below.
First card
A card charge line shows the remaining balance after cash.
You can edit the amount on the card line if needed (for example, if the first card can only cover part of the remaining balance).
Tap the Charge button on the card line.
Stripe M2: the reader activates — have the customer tap, insert, or swipe their card.
Manual (external terminal): process the amount on the external terminal, then tap Charge complete? on the charge line.
When payment is approved, the card line shows as collected and locks.
Adding a second card
If the balance is not fully covered by cash and the first card, tap Add card to create a second card charge line.
The remaining balance fills in automatically.
Process the second card the same way as the first.
Repeat if additional cards are needed.
Step 3 — Complete the Transaction
Once all payment lines (cash + all card charges) sum to the sale total or more, the Complete button becomes active.
Tap Complete.
The Transaction Complete screen appears.
If the customer wants a receipt, choose Text and enter their phone number, or choose Email and enter their email address. Toggle the Notify me of future deals pill on only when the customer opts in. Otherwise tap No.
Refunds on Split-Tender Sales
If you need to refund a split-tender sale, the refund is proportionally split back to the original payment methods: the cash portion is refunded as cash, and the card portion is reversed to the original card(s). The refund dialog will show the breakdown.
Audience: Site manager Requires: Manager Override PIN
This guide covers how to process a refund on a completed transaction — returning all or part of the amount paid back to the customer. Refunds always start from the original receipt and always require the Manager Override PIN.
Before You Begin
Have the following ready:
The original receipt number or knowledge of when the transaction occurred (so you can find it)
The Manager Override PIN
Void vs. Refund — Quick Reference
Void
Refund
When
Sale is in draft (not yet completed)
Sale is fully completed
Payment
No money moved — nothing to reverse
Reverses the charge to the customer
Who can do it
Any associate
Manager (PIN required)
Found in
Inside checkout (tap Checkout, then Void)
Receipt detail in Reports or Recent Transactions
Step 1 — Find the Original Receipt
From the Sale tab (if it was a recent transaction today):
Tap the Sale tab.
Scroll down to Recent Transactions.
Find the transaction and tap it to open the receipt detail.
From the Reports tab:
Tap the Reports tab.
Scroll to Transaction history.
Locate the transaction by date or receipt number.
Tap View to open the receipt detail.
Step 2 — Open the Refund Action
In the receipt detail, scroll to the bottom.
Look for the refund or return section. You will see one of two action buttons depending on the payment method:
Refund to original card — for Stripe card transactions (the most common type). Its description reads "Start a manager-authorized refund from this original receipt."
Complete local refund — for the local return flow (e.g., cash or external-terminal sales). Its description reads "Complete a manager-authorized refund from this original receipt."
Tap the button that is shown.
Step 3 — Select Items to Refund
The Return items dialog opens, showing each item from the original receipt.
For each item you are refunding, use the − and + buttons to set the quantity being returned. The maximum quantity for each item is the original quantity minus any amounts already refunded on prior returns.
Full refund: Tap Select all to set every item to its maximum refundable quantity.
Partial refund: Set only the quantities for the items being returned.
The dialog displays:
Selected units — total number of items being returned
Estimated refund — dollar amount to be returned to the customer
Remaining refundable — what will still be refundable after this transaction
Step 4 — Select a Return Reason
Below the item list, select the reason for this return:
Reason
Use When
Faulty
The item was defective or damaged
Incorrect charge
The customer was charged the wrong amount or for the wrong item
Other
None of the above
Step 5 — Enter the Manager Override PIN
Below the reason section, a PIN entry field appears.
Enter the Manager Override PIN (minimum 4 digits).
The PIN validates automatically when the correct number of digits is entered — you do not need to tap a separate confirm button.
Step 6 — Confirm the Refund
Once the items, reason, and PIN are all entered, a Confirm button (or "Refund" / "Start return" button) becomes active.
Tap Confirm.
For Stripe card transactions: the refund is submitted to Stripe. The customer's bank will return the funds to their card — typically within 5–10 business days depending on the bank.
A confirmation message appears showing the refund amount.
Partial Refunds
A partial refund returns only the selected items — not the entire transaction. After a partial refund:
The receipt detail shows the original total, the refunded amount, and the effective total (what was ultimately collected)
The remaining items are still refundable up to their original quantities
Refunds on Split-Tender Sales
If the original sale was paid with a combination of cash and card, the refund is allocated proportionally:
The cash portion of the sale → refunded as cash (given back to the customer from the drawer)
The card portion of the sale → reversed to the original card
The return dialog will show both the cash portion and card portion of the refund so you know what to give back.
This guide covers how to cancel a sale that is currently in progress — before it is completed. This is called a void.
What Is a Void?
A void cancels a sale while it is still a draft — after items have been added to the cart but before the transaction is finalized. No payment is taken; the sale is simply discarded. All void events are logged with a reason code for your manager's review.
When Would You Void?
A customer decides they do not want any of the items after you have already scanned them
You accidentally scanned the wrong items and it is easier to start over
A card payment attempt failed and you need to start a fresh sale
You are in a training session and want to clear a practice cart
Step 1 — Open the Void Dialog
Void lives inside checkout, not on the cart header. This makes every teardown a deliberate decision at the point of sale.
With items in the cart on the Sale tab:
Tap Checkout to open the checkout screen.
In the checkout header you'll see two exits: Back to cart (returns to the cart with the ticket intact) and Void (discards the ticket).
Tap Void. The checkout closes and the Void sale dialog opens.
Step 2 — Select a Reason
The dialog asks you to select a reason for voiding. Tap the reason dropdown and select the option that best describes why you are canceling:
Option
Use When
Customer changed mind
The customer decided not to purchase
Mis-scan/wrong item
Items were scanned in error — easier to restart
Payment issue
A payment problem (terminal error, declined card) required restarting
Training
This was a practice transaction
System/error recovery
A technical issue required restarting the sale
Other
None of the above — see warning below
Step 3 — Confirm the Void
After selecting a reason (and entering a note if required), the Void button becomes active.
Tap Void.
The cart clears. The voided draft is logged to the server and will appear in your manager's void report.
The Sale tab returns to an empty state, ready for a new transaction.
After Voiding
If you voided because a card terminal had an issue, check with your manager before attempting a new sale to make sure no phantom charge was created.
If the void was due to a scan error, simply start scanning again.
This guide covers how to look up a product's details — price, stock level, description — without starting or modifying a sale. Use this workflow when a customer asks about an item, you want to verify a price before ringing it up, or you need to check stock availability on the floor.
When Would You Use This?
A customer asks "how much is this?" and you want to confirm the price before scanning into a sale
You want to check the current stock level of a product
A barcode is damaged and you want to identify the product before attempting to add it to a cart
You are checking whether an item is in the catalog at all
Method A — Scan a Barcode on the Catalog Tab
Use this method when you have the physical item and want to look it up by scanning its barcode.
Tap the Catalog tab.
The scanner is active automatically — you do not need to tap anything.
Scan the item's barcode with your Bluetooth scanner.
If the barcode matches a product in your site's catalog, the product detail card opens immediately, showing:
Product name
Unit price (and pack price if configured)
Current stock level
Barcode(s) associated with the product
Any additional product details your site has configured
Method B — Search by Name on the Catalog Tab
Use this method when you do not have the barcode or the barcode will not scan.
Tap the Catalog tab.
Tap the search field at the top. Its placeholder reads "Search by name or barcode."
Type the product name or part of it. For example, type water to find "Bottled Water 16oz."
A list of matching products appears. Tap any product row to open its detail card.
The product detail card shows the same information as a barcode scan: name, price, stock level, and barcodes.
What the Detail Card Shows
Field
What It Means
Name
The product's display name as configured in the catalog
Unit price
The standard per-unit selling price
Pack price
The price when selling at the pack quantity (shown only when configured)
Stock
Current on-hand quantity for your site
Barcode(s)
One or more barcodes linked to this product
Closing the Detail Card
Tap anywhere outside the detail card, or tap the back/close control, to dismiss it and return to the Catalog tab search view.
Ready to Add to a Sale?
If after looking up the item you want to add it to a cart:
A digital receipt is a receipt sent to the customer electronically, by Text (SMS) or Email — the two delivery channels are peers and use the same prompt. This guide covers how to send (or re-send) a digital receipt after a sale has already been completed — for example, if the customer asked for a receipt after you already tapped No at the completion prompt, or if a receipt did not arrive and needs to be resent. Both channels are sent from the same screen.
Before You Begin
Step 1 — Find the Transaction
You can find the transaction two ways, depending on when the sale happened.
Option A — Sale tab (same session, today's transactions)
Tap the Sale tab.
Scroll down past the cart area to the Recent Transactions section.
Find the transaction by date/time or amount. Transactions are listed most recent first.
Tap the transaction row to open the receipt detail.
Option B — Reports tab (any transaction, including older ones)
Tap the Reports tab.
Scroll to the Transaction history card.
Find the transaction. Use the filters at the top to narrow by date if needed.
Tap View next to the transaction to open the receipt detail.
Step 2 — Open the Receipt Detail and Tap Resend
The receipt detail screen or dialog opens, showing the full transaction: items, totals, and payment summary.
Scroll to the bottom of the receipt detail.
Tap the Resend Receipt button.
Step 3 — Choose Text or Email and Send
The same prompt used at checkout opens, retitled Resend Receipt.
Tap Text or Email at the top of the prompt. The unselected option appears in grey; the selected option uses the store's brand color.
The phone number or email is pre-filled from the original sale when available. Edit it if the customer wants the receipt sent to a different destination.
Text: enter a 10-digit phone number. Digits only — no dashes, spaces, or country codes. Example: 2025551234.
Email: enter the customer's email address.
(Optional) Tap the Notify me of future deals pill toggle on if the customer wants promotional messages. Leave it off otherwise.
Tap Send. The prompt closes and a short confirmation toast appears when the request has been accepted.
Delivery Status
The receipt detail shows a single Receipt Status line near the top, reflecting the destination captured on the original sale. Live delivery state is tracked only for Text receipts; Email shows the channel but not a granular status.
Receipt Status line
What It Means
SMS – Sending to ••1234
The text is queued and being sent (last four digits of the number shown)
SMS – Sent to ••1234
The text was handed off successfully
SMS – Delivered to ••1234
The carrier confirmed delivery
SMS – Failed (reason)
The text could not be delivered — check the number and resend
SMS – Awaiting status
No delivery update has come back yet — check again in a minute
Email
An email destination was captured. The app does not display a per-message email delivery state.
Receipt Declined
No phone or email was captured at the time of sale
Audience: Site manager Requires: Manager Override PIN for most actions
This guide covers the capabilities available to site managers beyond the standard associate workflow: applying manager discounts, switching payment methods, accessing full reports, and managing the Manager Override PIN.
Overview of Manager Capabilities
As a site manager, you can perform the following actions that require the Manager Override PIN:
Apply a manager discount to a sale
Switch the payment method to Manual (external terminal) on a Stripe-configured site or device
Issue refunds from completed receipts (see Guide 05)
View full Reports — expanded metrics, all date ranges, all actors
Applying a Manager Discount
A manager discount applies a percentage discount to the pre-tax subtotal of the current sale. The percentage is configured per site by your administrator.
Add items to the cart on the Sale tab.
Tap Checkout to open the checkout modal.
In the checkout controls row (at the top of the modal), look for the Manager Discount toggle or button.
If the discount is not active, tapping it opens the Manager Override dialog. Enter the PIN and tap OK.
Once the PIN is validated, the discount is applied. A blue confirmation banner appears below the totals, showing the discount percentage and dollar amount.
The totals recalculate immediately to reflect the discount.
Applying an Owner Discount
An owner discount subtracts a fixed dollar amount (not a percentage) from the current ticket. It is applied to the pre-tax subtotal after any manager discount, so tax and fees recalculate on the reduced amount. Owner discounts are commission-neutral — they do not reduce the Site Manager Commission.
Add items to the cart and tap Checkout.
In the checkout controls row, tap the Owner Discount chip (next to Manager Discount).
The Owner Override dialog opens with the approval message and phone number. Enter the dollar amount to discount and the Owner Override PIN.
The amount cannot exceed the current ticket total. On success, the discount applies and a confirmation banner shows the amount.
Tap the active Owner Discount chip again to clear it.
Switching to the Manual (External Terminal) Payment Method
If your effective device default is Stripe, and a customer needs to pay on an external terminal instead, you can switch to Manual for that transaction. Sites configured with External as the default card processor, or devices explicitly overridden to Manual, already use Manual by default after the device config syncs.
Add items to the cart and tap Checkout.
Tap Card as the payment method.
In the checkout controls row, find the Payment method button. It shows the current method name (e.g., "Stripe Reader").
Tap it to open the payment method dropdown.
Select Manual from the list.
If Manual is not already the default, the Manager Override dialog appears. Enter the PIN and tap OK.
The checkout workflow switches to manual confirmation mode — see Guide 02 — Card Checkout for the remaining steps.
Accessing Full Reports
Managers with Full Reports access can see expanded metrics and unrestricted date filters in the Reports tab.
Refunds also require the Manager Override PIN and are always started from a receipt. See the complete step-by-step in Guide 05 — Issuing a Refund.
Support Requests
Android devices can submit support requests from the native Support modal. Operators tap Open Ticket in the modal header, choose a type, enter a description, optionally enter a callback number, then tap Send. The type defaults to Sales, with Missing Barcode directly below it. Missing Barcode requests require one to three camera photos; the yellow Take Photo button sits beside the barcode value field, captured thumbnails appear below the camera preview, and the app attempts to decode the barcode from the camera preview while still allowing the request when a value cannot be read.
The request modal keeps Cancel and Send in the header. Tapping Cancel closes the request modal and clears the draft back to the default Sales type with empty fields.
If the main backend is offline or temporarily unavailable, the Android app queues the request and syncs it automatically when connectivity returns. The queued request keeps the same site, device, submitted timestamp, and queue token so support staff can see the original device context after sync.
Operations Admin and Super Admin users can triage requests in the web console under Manager → Support → Requests. The Requests card supports filtering by site, type, and status; sorting by clicking the Submitted, Site, Type, or Status column headers; opening request details with photo thumbnails and full-size images; and updating status through Open, In Progress, In Development, In Testing, Resolved, Closed, or Canceled.
Site Manager, Reports Admin, and Sales Associate roles do not have access to the Support Requests panel.
Manager PIN Management
The Manager Override PIN is not managed from the Android app. To set or change the PIN:
Log into the STF POS web console.
Go to Manager → Admin → Stripe (Transaction settings).
Find the Manager Override Pin field. The separate Owner Override Pin field lives directly alongside it and gates the Owner Discount action.
Audience: Site managers (Full Reports) and associates with Basic Reports access
This guide walks through every section of the Reports tab — what it shows, what the numbers mean, and how to find a specific transaction.
Who Can See the Reports Tab?
The Reports tab is visible based on access level configured for your device:
Access Level
What You Can See
No access
Reports tab is hidden entirely
Basic access
Transaction history, sales count, return/void count, low inventory. Date range is locked to the active season.
Full access
Everything in Basic, plus: commission and fee totals, tender mix breakdown, daily tender totals, custom date ranges, and filter by specific user or device.
The Filters Card
The Filters card appears at the top of the Reports content area. Tap the expand icon (or the filters area) to open it.
Date range
Basic access: The date filter is locked to Active Season (the current selling season for your site). You will see a note: "Active season is locked for this device." This is expected behavior — no action needed.
Full access: You can select Active Season or use a custom date range by tapping the start and end date fields. The data shown in all cards below updates to match your selection.
Actor filter (Full access only)
Filter transactions by who processed them:
All — shows all transactions from all users and devices
User — shows only transactions from a specific staff member
Device — shows only transactions from a specific register
Low inventory threshold
A slider that sets the stock percentage below which items appear in the Low Inventory card. The default is 100% — slide it to the left to narrow to more severely low items (e.g., below 50% of capacity).
Resync
At the bottom of the Filters card, a Resync button triggers a fresh data pull from the server. Tap it if the report figures look stale.
The Sales Summary Card
Shows overall sales metrics for the filtered period.
Field
What It Shows
Total revenue
Sum of all completed sales (after discounts, before refunds)
Transactions
Number of completed sale transactions
Returns / Voids
Number of returned or voided transactions
Full access adds:
Field
What It Shows
Commission
Total commission amount and rate (if applicable to your site)
Tax collected
Total tax amount across all sales
Card fees collected
Service fee revenue from card transactions
Service fees collected
Any other applicable fee revenue
Sales trend chart
A sparkline chart showing daily revenue over the filtered period
The Tender Mix Card (Full access only)
Shows how customers paid — the split between cash and card.
Shows receipt destinations captured at Android checkout for the filtered period.
Columns
Column
What It Shows
Sale date
Date and time the customer receipt choice was captured
Receipt #
The sale receipt number tied to the contact
Site
The site where the sale was completed
Channel
Text or Email
Destination
The phone number or email address entered by the operator
Opt in
Whether the customer opted into promotional messages
Opt-in time
When the opt-in was recorded, if selected
Use the Export button to download the filtered Customers report as an Excel workbook for follow-up campaigns. Email receipt rows are sent by the backend; SMS rows continue to follow the configured SMS sender path.
The Report Sync Card
A status card at the top of the Reports content area (above or alongside the Sales Summary) showing:
Last synced — when the data was last successfully updated from the server
Last attempt — when the last sync was tried (may differ from last success if it failed)
Error message — any sync error message (tap to see details)
Resync button — tap to force a fresh sync immediately
Audience: Site manager Requires: A device granted the Barcode Registration capability by an administrator
This guide covers how to register a barcode — assigning one or more barcode labels to an existing catalog product — directly from the Android app. Barcode registration can be queued while the device is offline. Once the queued registration syncs to the server and the catalog refreshes, scanning that label on the Sale tab adds the product to the cart automatically (see Guide 01 — Ringing Up a Sale).
Before You Begin
The product you are labeling must already exist in your site catalog. Barcode registration attaches barcodes to existing products; it does not create new products.
You need a working scanner (Bluetooth SPP or HID), or you can type barcodes by hand.
The device does not need to be online to queue barcode registrations. If the network is offline or unreliable, the Android app stores the registration locally and syncs it automatically when connectivity returns.
Step 1 — Open Barcode Registration
Tap the Catalog tab.
On the Site Catalog card, find the Barcode registration button (it sits next to Generate QR Sheet in the card header).
Tap Barcode registration. The registration dialog opens, focuses the search field, and starts a background catalog refresh when the device is online.
At the top of the dialog, three status badges tell you whether you can proceed:
Badge
Healthy value
Meaning
Network
Online
The device can reach the server now; offline registrations will wait in the local queue
Scanner
(varies)
Whether a scanner is connected and armed
API
Configured
The app has the connection details it needs to sync queued registrations
Step 2 — Find and Select the Product
In the Search catalog field (placeholder "Search by name or barcode"), type the product name or an existing barcode.
Tap the product in the results list to select it. The app clears keyboard focus and automatically arms the selected HID or Bluetooth SPP scanner when available.
The selected-product panel shows the product name, how many existing barcodes it already has (as pills, with "+N more" if there are many), or "No barcodes synced for this product yet."
Step 3 — Choose the Barcode Level
Under Barcode level, tap the chip for the packaging level this barcode represents — for example Case, Pack, or Unit. The available chips depend on how the product is packaged.
Step 4 — Capture Barcodes
You can add barcodes two ways:
Scan them:
Select a product. The app automatically arms the scanner when HID or Bluetooth SPP is available. If you paused it, tap Start to arm it again. The label toggles to Pause while armed.
Scan each barcode. Each scan is added to the Queued barcodes list below.
Type them:
Type the value in the Manual barcode entry field.
Tap the + at the end of the field to queue it.
Each queued row shows the value, its normalized form, and the chosen level, with a trash icon to remove it.
Step 5 — Register the Queued Barcodes
Tap Register barcode (or Register N barcodes when more than one is queued).
If any queued barcode already belongs to another product, a Confirm shared barcodes dialog lists them. Tap Register anyway to proceed, or Cancel to go back and remove them.
The app stores the registrations in the local sync queue, clears the search and manual entry fields, clears the selected product, pauses the scanner, and resets Barcode level to Unit.
The queued barcodes appear under Recent registrations (shown as BARCODE → Product) for this session. They become live after the queue syncs successfully and the catalog refreshes.
If any registrations are waiting to upload, the dialog shows a Registration sync section with the pending count. If the server rejects a queued barcode, the section keeps the failed row and shows the reason. Tap Retry failed after correcting the issue or reconnecting.
After Registering
The new barcode is live for your site only after the registration syncs to the server and the catalog refreshes on devices. Test it by scanning the label on the Sale tab after sync — the product should add to the cart at the level you chose.
Existing barcodes for a product are shown whenever you re-select it, so you can confirm what is already registered before adding more.
Audience: Sales associate or site manager setting up a device for the first time Time required: 10–15 minutes
This guide walks you through connecting the STF POS app to your site, pairing your Bluetooth barcode scanner, and pairing your Stripe M2 card reader. Complete all four parts before your first sale.
What You Will Need
Before you begin, have the following ready:
The STF POS web console URL for your organization (your manager or IT will provide this — it looks like https://pos.yourorganization.org)
A device name for this tablet (e.g., "Register 1" or "Main Entrance Handheld") — your manager may assign one
Wi-Fi access at your location
If using a Stripe M2 reader: the physical reader, charged and powered on
If using a Bluetooth SPP scanner: the scanner, charged and turned on
Part 1 — Connect the App to Your Site
Open the STF POS app on your device. The first-time setup screen appears.
In the Web console URL field, type the address your manager provided.
In the Device name field, type a name that identifies this device (e.g., "Register 1").
Tap Save & Continue.
The app submits a registration request and displays: "This device will request admin approval."
Once your manager approves the device from the web console, the app transitions automatically to Device Mode. You will see four tabs along the bottom: Sale, Catalog, Reports, and Settings.
Part 2 — Pair the Bluetooth SPP Scanner
Skip this section if your scanner uses a USB cable (HID mode) or if you are not using a barcode scanner.
Step 1: Pair the scanner to Android first
Before setting up the scanner in the STF POS app, you must pair it to the Android device through Android's system Bluetooth settings (outside of the STF POS app).
On your Android device, open Settings → Connected devices → Pair new device (exact wording varies by device).
Turn on your scanner. Consult your scanner's manual to put it into pairing mode (usually holding a button until the LED flashes).
Select the scanner from the discovered device list in Android Bluetooth settings.
Confirm the pairing when prompted.
The scanner should now appear in your Android paired devices list.
Step 2: Select Bluetooth SPP in STF POS
Open the STF POS app and tap the Settings tab.
Scroll to the Scanner preferences section.
Under Scanner, you will see two buttons: HID Scanner and Bluetooth SPP. Tap Bluetooth SPP.
If a Bluetooth permission prompt appears on screen, tap Grant Bluetooth permission.
After permission is granted, a Bluetooth SPP scanner section expands below the buttons. A dropdown shows the text "Select paired SPP scanner."
Tap the dropdown and choose your scanner from the list of paired devices.
The status line below the dropdown updates to confirm the scanner is selected.
Part 3 — Pair the Stripe M2 Card Reader
Skip this section if your site uses a different payment method (external terminal, Tap to Pay, or cash only).
Make sure your Stripe M2 reader is charged and powered on. Hold the button on the reader until the LED starts blinking.
Place the reader within a few feet of the tablet.
In the STF POS app, tap the Settings tab.
Scroll to the Pairing and readiness section. You will see a line that reads "Current default: Stripe Reader."
Tap Prepare Stripe Reader.
A progress bar appears while the app searches for and connects to the reader.
When the reader is ready, the status line in the Settings tab updates to show the connected reader ID and battery level.
Part 4 — Verify Your Sync Status
Before your first sale, confirm the app is online and synced.
At the top of any screen in the app, look for the sync status badge — a small pill-shaped indicator near the site name.
If the badge shows a green or neutral color with your site name, the device is online and synced. You are ready to sell.
If the badge shows a warning color or an alert icon, tap it to see the sync detail screen.
From the sync detail screen, tap Sync now to manually trigger a sync.
You Are Ready
With your device approved, scanner paired, and card reader prepared, you are ready to start ringing up sales.
This Email and SMS Privacy Policy explains how Seasonal Sprint collects and uses email addresses and mobile phone numbers for digital receipts, customer support notifications, and transaction-related communications.
Information We Collect
When you voluntarily provide your email address or mobile phone number at checkout, through our point-of-sale system, on our website, or while requesting customer support, Seasonal Sprint may collect your email address or mobile phone number for the purpose of sending electronic communications related to your transaction, receipt, or customer support request.
How We Use Email Addresses and Mobile Phone Numbers
Seasonal Sprint uses email addresses and mobile phone numbers only for transactional and customer-service purposes, including:
Digital receipt delivery
Support ticket creation confirmations
Support ticket status updates
Requests for additional information related to a support case
Support ticket resolution notifications
Transaction-related customer service communications
SMS messages from this campaign are not used for marketing, advertising, promotional offers, abandoned cart reminders, or third-party promotional messaging.
Non-Sharing of Mobile Information and SMS Consent
No mobile information, including mobile phone numbers, SMS opt-in data, and SMS consent, will be shared with third parties or affiliates for marketing or promotional purposes.
Text messaging originator opt-in data and consent will not be shared with any third parties, except as necessary for service providers to operate the SMS messaging service on Seasonal Sprint's behalf.
Email addresses and mobile phone numbers may be shared with service providers that help Seasonal Sprint operate its messaging, point-of-sale, receipt, email, SMS, or customer support systems. These service providers are permitted to use this information only as necessary to provide services on Seasonal Sprint's behalf and are not allowed to use it for their own marketing or promotional purposes.
Data Retention
Seasonal Sprint retains email addresses, mobile phone numbers, receipt records, support records, and messaging records only as long as reasonably necessary for transaction records, support purposes, legal compliance, fraud prevention, and business operations.
Changes to This Policy
Seasonal Sprint may update this Email and SMS Privacy Policy from time to time. Continued use of email or SMS communications after changes are posted means you accept the updated policy.
Contact Us
For questions about this Email and SMS Privacy Policy, contact Seasonal Sprint at 480-686-0806.
Terms & Conditions
Agreement to Receive Email and SMS Communications
By voluntarily providing your email address or mobile phone number at checkout, through our point-of-sale system, on our website, or while requesting customer support, you agree to receive email and/or SMS communications from Seasonal Sprint related to digital receipts, customer support, and transaction-related notifications.
Electronic communications are optional and are not required to complete a transaction.
Opt-In
Customers opt in to electronic communications by voluntarily providing their email address or mobile phone number and requesting communication by email or SMS.
For digital receipts, customers opt in by providing their email address or mobile phone number at checkout and requesting an email or SMS receipt.
For support notifications, customers opt in by providing their email address or mobile phone number when requesting customer support or when agreeing to receive support-related updates.
Message Frequency
Message frequency varies based on customer activity. For receipt messages, customers may receive an email or SMS message after each transaction where they request a digital receipt. For support notifications, customers may receive messages when a support ticket is created, updated, requires additional information, or is resolved.
Message and Data Rates
For SMS messages, message and data rates may apply depending on your mobile carrier and plan.
Opt-Out Instructions
You may opt out of SMS messages at any time by replying STOP. After opting out, you may receive a final confirmation message confirming that you have been unsubscribed. After that, you will no longer receive SMS messages from this campaign unless you opt in again.
You may opt out of non-transactional email communications by using the unsubscribe link included in the email, if applicable, or by contacting Seasonal Sprint directly. Transactional emails related to receipts, purchases, support requests, or legal/business records may still be sent when necessary to provide the requested service or maintain required records.
Help Instructions
For SMS help, reply HELP.
For email or SMS assistance, contact Seasonal Sprint directly at 480-686-0806.
Carrier Disclaimer
SMS delivery is subject to your mobile carrier's network availability. Carriers are not liable for delayed or undelivered messages.
Eligibility
You must be the account holder, email address owner, mobile phone number owner, or have the account holder's permission to provide an email address or mobile phone number for electronic communications.