Industry guide · POS

Consignment and Thrift Store Software: Oversells, Ledgers and Payouts

The short answer

Probably not yet, and then suddenly yes. If you run one or two stores under 300 active consignors and sell mostly on the floor, SimpleConsign or Ricochet or ConsignCloud is the right call and a build is vanity. Once online passes 30 percent of revenue across three or more channels, you are past 800 consignors, or payout day eats a full person, the math flips: in Digital Heroes delivery across 2,000-plus projects, a focused first release with item-level reservation, the consignor ledger, AI intake and two marketplaces runs $60,000 to $130,000 in 12 to 16 weeks, and a full platform with six channels, ACH payouts, tax reporting and multi-location routing runs $150,000 to $400,000 phased over 6 to 12 months. Budget 3 to 5 weeks of that just to rebuild honest opening balances from your old export.

Why consignment software makes or breaks a resale operator

Every other retailer sells the same SKU two hundred times. You sell one Patagonia fleece, once, and owe a stranger 40 percent of it within 30 days. Your inventory is 14,000 rows deep and every row has a quantity of one, an owner who is not you, a markdown clock, and an expiration with a decision waiting at the end: return, donate, or convert to store property. That is not retail inventory, it is a ledger of other people's money wearing a price tag.

The category tools, ConsignPro, SimpleConsign, Ricochet, ConsignCloud, Liberty from Resaleworld, understand consignors and splits and cost a few hundred dollars per location per month. What they do not do is run your business at scale: marketplace sync is thin or one way, reporting stops at the store level, and the API, where it exists, is a CSV export. The real retail platforms, Shopify POS (Point of Sale), Square for Retail, Lightspeed, handle multi-location and payments properly and have no concept of a consignor, which is why the operator who chose Shopify now runs consignor accounting in a Google Sheet with 14 tabs and a VLOOKUP that broke in March.

The scene that should decide this: Saturday, 2:10 pm. A buyer at the Northside register scans a Free People dress, tag 40118. At 2:14 pm a Poshmark buyer purchases the same dress, because nobody delisted it, so your manager cancels the order, takes the strike, refunds a stranger. Meanwhile a consignor is on hold asking why her March payout is $18 short of her own math, and 40 bins sit in the back because a single item takes 90 seconds to enter by hand. None of those three is a staff problem. All three are a data model problem.

One item, six channels, and the oversell that costs you a consignor

The good stuff goes to eBay, Poshmark, Depop, Mercari, Whatnot and your Shopify store, because a $220 bag moves in days online and sits for a season in store. So one unit is listed in six places and delisting lives in your head. At 200 sales a week you will oversell, and every oversell costs a marketplace metric, a refund, and a consignor who watched her item sell twice and get paid zero times.

The incumbents cannot fix this because their sync is built around a quantity field. SimpleConsign and Ricochet will push to Shopify, some to eBay, but the loop back is slow or absent, and none treat Poshmark or Whatnot as first-class channels. There is no "reserve unit 40118 everywhere the instant it is scanned" in a tool that assumes quantity 3.

A custom build inverts it. One item record is the source of truth with a state machine: available, reserved, sold, returned, expired. The register scan does not decrement a count, it fires a reservation event, and channel workers race to delist within seconds. Where a marketplace has no API, the same worker drives an authenticated browser session, and failed delists surface to a human, not to a refund.

The consignor ledger nobody trusts

Ask a consignor with 300 items what she is owed. Your system says $412. She says $487. The truth is buried in five places: the contract split, a promo that took 30 percent off at the register, a marketplace fee, a return processed 11 days later, and a store credit conversion done by hand.

Off-the-shelf tools store a balance, not a history: they compute a number and overwrite it, so a correction in April silently rewrites February. When a consignor disputes, your defense is your manager's memory.

The build is append-only. Every event touching money is an immutable line: sold at $120, channel fee $10.80, split 60/40 per contract v2 signed 2025-03-04, consignor credit $65.52, return reversal. The balance is derived, never stored as fact. Statements become reproducible for any past date, your accountant ties the liability account to the penny, and a dispute takes 40 seconds instead of 40 minutes.

Intake is the real bottleneck, and this is where AI earns its keep

Your ceiling is not sales. It is how many items an hour a person can photograph, measure, grade, price and tag. In the shops we have timed, a good tagger runs 25 to 40 items an hour, and that number is your growth curve. No off-the-shelf tool solves it, because they all assume a human types the item in.

Intake is the one place AI does real work in this category. A photo station and a vision model draft the record: brand off the label, category, color, material from the care tag, measurements against a reference marker, condition notes from visible wear, and a title written for how people search on that channel. A pricing model reads your own sold history for that brand plus comparable sold listings and proposes a band the tagger accepts or overrides in one tap. The human stops being a typist and becomes a reviewer. Two more AI jobs pay for themselves: an after-hours agent answering the three real consignor questions from live ledger data, where is my payout, what sold, when do my items expire; and a forecast flagging at day 21 what will never sell at current price.

Markdowns and expirations run on a whiteboard

Your contract says 20 percent off at day 30, 40 percent at day 60, expire at day 90, then store property or back to the consignor. Multiply by 14,000 items and staggered intake dates and you get the whiteboard, the Sunday "pull the pink tags" ritual, and items sitting at full price for 140 days. The category tools' markdown schedules work for one store with one rule. They break when you need a different schedule per category, a different split band above $200, an expiration that pauses while an item is out on a marketplace, and a notice to the consignor before ownership transfers. That last one is not a nicety: ownership transfer is the legal event in most consignment contracts, and if you cannot prove notice went out on the right date you have a problem, not a policy.

A custom build makes the contract a versioned object attached to the item. Splits slide by price band, schedules vary by category and consignor tier, and the nightly repricing job writes a reason code on every change so your floor team knows why a tag says $34. Expiration triggers email then SMS with delivery receipts stored against the item, and transfer to store property fires only after that notice window elapses.

Payouts, W-9s, and the money you legally cannot keep

At 400 active consignors, payout day is a person, a spreadsheet and a checkbook. At 1,200 it is the same person, and the risk stops being effort and becomes compliance. Once a consignor crosses the annual reporting threshold you need a W-9 on file and the year-to-date total ready, and if that lives in three systems you find out in January. Worse: unclaimed consignor balances are not yours. Uncashed checks and dormant credit fall under state unclaimed property rules, with dormancy periods, due diligence letters and annual filings, and a system that quietly zeroes old balances is an expensive audit.

ConsignPro and its peers print a check run and stop there. None will collect a W-9 digitally, track year-to-date payouts per tax identity across locations, run an ACH batch, handle a failed payout, or age a dormant balance and draft the letter.

The build makes payout a first-class flow: onboarding collects the W-9 and bank details once. Payouts run as ACH batches with retries and failure handling, store credit is a real ledger balance, not a sticky note, year-to-date totals roll up per tax identity across locations, and dormant balances age into a due diligence queue with the letter drafted. If you also buy outright, the same intake feeds the secondhand dealer reporting your jurisdiction requires, LeadsOnline and its equivalents, with seller ID capture and hold periods enforced by the system rather than by a 19 year old on a Saturday.

What this costs and how long it takes

Digital Heroes numbers, from our delivery across 2,000-plus projects, not a survey. A focused first release, item-level inventory with the reservation model, contracts and the append-only ledger, AI-assisted intake, two marketplaces plus Shopify, and a consignor portal, lands at $60,000 to $130,000 and ships in 12 to 16 weeks. A full platform, adding six channels, ACH payouts with tax reporting and dormancy, multi-location routing, buy-outright with police reporting, forecasting and a staff mobile app, runs $150,000 to $400,000 phased across 6 to 12 months.

What drives price up here, in order: each extra marketplace, because Poshmark and Whatnot have no clean public API and browser-driven integrations need maintenance forever. Then payout rails and tax reporting, because ACH failures and year-to-date tax identity rollups are real work. Then migration, which nobody budgets. Your ConsignPro or SimpleConsign export will carry duplicate consignors, three spellings of the same person, and balances that do not reconcile. Rebuilding an honest opening balance for 1,200 consignors is typically 3 to 5 weeks on its own, and you should insist on it: launching with a ledger your consignors do not believe kills the whole thing in month one.

Build vs buy: the position

Buy. Genuinely. One or two stores, under 300 active consignors, almost everything selling on the floor: SimpleConsign or Ricochet or ConsignCloud is the right answer and building is vanity. At that size your constraint is foot traffic, not software.

Build when these signals arrive together. Online is past 30 percent of revenue across three or more channels. You have 800-plus active consignors, or a payout run that eats more than a day of someone's week. You run three or more locations and want inventory to move between them. Someone maintains a spreadsheet the business would stop without. You have oversold twice this quarter. Or the strategic one: your intake data on brand, condition and sell-through by price band beats anything the incumbents can hand you. When four are true, the off-the-shelf tool has stopped saving you money and started capping your revenue. The honest comparison is not $300 a month against $90,000. It is $90,000 against two salaries and the growth you are not getting.

How to choose a developer for consignment and thrift store software

Make them whiteboard the data model before you talk price. If they draw a products table with a quantity column, end the meeting. The right answer separates the item, the consignor, the versioned contract and an append-only financial event log, reached for without prompting.

Make them explain the oversell problem back to you. Anyone who has shipped this talks about reservation events, idempotency, and what happens when a delist call fails, and will tell you which marketplaces have real APIs and which need a maintained browser integration. If they promise six clean API integrations including Poshmark, they have not done this.

Ask what they will do with your existing data. The good answer is a reconciliation plan and a signed-off opening balance per consignor, not "we will import the CSV." Ask who owns the code, and get the repository and cloud accounts in your name from week one. Require the money pieces to name a specific payments provider and approach to W-9 collection, year-to-date rollups and dormant balances. If compliance only comes up because you raised it, that is your answer.

Research & sources

The evidence behind this guide

Independent findings on why this investment pays off. Every link goes to the primary source.

  1. Retailers connecting point-of-sale and loyalty data in an omnichannel strategy reported up to 15% lower cost per purchase and nearly 20% higher incremental store revenue. Source: Deloitte (2024) →
  2. Based on responses from 39 retailers with a combined turnover in excess of EUR 1 trillion, ECR Retail Loss researchers estimated that self-checkout increases loss by an average of 22% in the year after implementation, with losses running 33% higher in stores with self-checkout than in comparable stores without it. Source: ECR Retail Loss / University of Leicester (Prof. Matt Hopkins) (2026) →
  3. 48% of private companies cite integration with legacy systems or technical debt as a top obstacle to realizing the full value of their digital and AI investments (behind data quality/availability at 72% and gaps in AI fluency or technology talent/leadership at 53%). Source: Deloitte (2026) →
  4. McKinsey argues software developer productivity can be measured by combining system-level metrics (DORA and SPACE) with its own outcome-oriented approach, which it reports deploying across nearly 20 tech, finance, and pharmaceutical companies - a claim that sparked significant debate in the engineering community. Source: McKinsey & Company (2023) →
Rohan Malhotra · Enterprise Software Consultant

Rohan advises mid-market and enterprise teams on ERP, CRM and custom software, and has led delivery on dozens of business-software builds.

Writes for Digital Heroes, shipping business software for 2,000+ brands across 55+ countries since 2017.

FAQ

Frequently asked questions

How much does custom consignment software cost for a 3-location store with 1,200 consignors?
Expect $60,000 to $130,000 for a focused first release covering item-level inventory, consignor contracts and ledger, AI-assisted intake, a consignor portal and two marketplace channels. A full platform with six channels, ACH payouts, tax reporting, multi-location routing and buy-outright reporting runs $150,000 to $400,000 phased over 6 to 12 months. These are Digital Heroes delivery bands across 2,000-plus projects. At your consignor count, budget 3 to 5 weeks inside that for rebuilding opening balances from your old system.
Should we build instead of using SimpleConsign or Ricochet?
Not until several things are true at once: online is past 30 percent of revenue across three or more channels, you have 800-plus active consignors, payout day eats more than a day of someone's week, you run three or more locations, and you have oversold twice this quarter. Below that, SimpleConsign or Ricochet is genuinely the right answer and building is a waste of capital. The trigger is not that the tool is bad, it is that the tool caps your revenue by not modeling one-of-a-kind inventory across channels.
How do we stop selling the same item in store and on Poshmark at the same time?
You need item-level reservation, not quantity sync. The register scan fires a reservation event on that single item record, and channel workers delist it everywhere within seconds, with each failed delist surfaced to a human instead of discovered through a refund. Off-the-shelf consignment tools cannot do this because their marketplace sync is built around a quantity field, and Poshmark and Whatnot have no clean public API, so those channels need a maintained browser-driven integration.
How long before we can actually run a store on the new system?
A focused first release ships in 12 to 16 weeks, and it should go live in one store before you touch the others. That release should include the reservation model, the consignor ledger, contracts and markdown schedules, AI-assisted intake and a consignor portal. Full platforms with six channels and ACH payouts phase over 6 to 12 months. Anyone promising a full multi-channel platform in eight weeks is selling you a rewrite in month nine.
Can we migrate our consignor balances out of ConsignPro without losing history?
Yes, but treat it as a project, not an import. Your export will carry duplicate consignor records, three spellings of the same person, items with no intake date, and balances that do not reconcile, so the real work is reconciliation and a signed-off opening balance per consignor. That is typically 3 to 5 weeks. Insist on it, because launching with a ledger your consignors do not believe is what kills these projects in month one.
Do we own the code if an agency builds our consignment platform?
You should, and you should confirm it before the contract is signed. Get the repository, the cloud accounts and the payments provider account in your company's name from week one, not handed over at the end. If the developer wants to host the code in their own organization or license it back to you, that is a lock-in structure and you should walk. Ownership includes the data model and the marketplace integrations, not just the front end.
Do we have to send 1099s to consignors, and can software handle the W-9s?
Your accountant decides the classification and the threshold that applies to your structure, but the software's job is unambiguous: collect the W-9 digitally at consignor onboarding, store it against a tax identity, and roll up year-to-date payouts per tax identity across all your locations so January is a report, not an archaeology dig. No off-the-shelf consignment tool does this, which is why the shoebox exists. Build it into onboarding rather than bolting it on later.
What are we legally supposed to do with unclaimed consignor balances?
You cannot keep them and you should not quietly zero them. Uncashed checks and dormant store credit fall under state unclaimed property rules, which carry dormancy periods, due diligence letters and annual filings, and the specifics vary by state, so confirm yours with counsel. A custom system ages dormant balances automatically into a due diligence queue with the letter drafted, which turns an audit exposure into a monthly task.
Is AI actually useful for thrift store intake or is it hype?
It is the single highest-return AI use in this category, because intake speed is your growth ceiling. A photo station plus a vision model drafts brand, category, color, material, measurements, condition notes and a channel-specific title, and a pricing model proposes a band from your own sold history plus comparable sold listings, so the tagger reviews instead of types. The other two that pay for themselves are an after-hours agent answering consignor questions from the live ledger and a forecast that flags at day 21 what will never sell at current price.
How much does it cost to build a custom POS system for a small business?
A single-location custom POS covering checkout, inventory, receipts, and payment integration typically lands between $30,000 and $70,000, based on Digital Heroes delivery data across 2,000+ projects. Multi-location systems with kitchen displays, franchise reporting, or offline sync usually run $80,000 to $250,000. The biggest cost drivers are custom hardware support and how much of the payment flow you build versus integrate.
How do I calculate whether custom software will pay for itself?
Divide the build cost by the monthly benefit, where benefit is hours saved times loaded hourly cost, plus subscription fees replaced, plus any revenue the software unlocks. Three staff saving 10 hours a week each at a $40 loaded rate is about $62,000 a year, which pays back a $60,000 build in roughly 12 months. Across Digital Heroes internal-tool projects, 12 to 24 months is the normal payback range, and anything projecting under 6 months usually means the spreadsheet is hiding costs.
How do I vet a development agency for a POS project specifically?
Ask to see a live POS or payments product they built, then ask exactly how they handled offline mode, receipt printing, and PCI scope, because those three areas expose anyone who has only built ordinary web apps. A competent agency will name the payment SDKs they used, such as Stripe Terminal or Adyen, and describe their terminal certification process without checking notes. If the portfolio is all marketing sites and dashboards, keep looking.
We run multiple restaurant locations on Toast. Would switching to a custom POS actually save money?
Usually only at 8 or more locations, where per-terminal software fees, add-on modules like online ordering and loyalty, and processing markup commonly total $8,000 to $20,000 per location per year in the statements Digital Heroes reviews for restaurant groups. A custom system converts that into a one-time build of $100,000 to $250,000 plus maintenance, which models out to 18 to 30 month payback for most groups. Under five locations, stay on Toast and put the money into operations.
Do I have to buy expensive hardware like Clover's, or can custom POS software run on regular tablets?
Custom POS software can run on off-the-shelf iPads or Android tablets costing $200 to $500, versus Clover stations that list between roughly $799 and $1,799 each before monthly software fees. The one piece you should not improvise is the card reader; use a certified terminal from your processor, such as a Stripe Terminal or Adyen device, paired to your app. That combination keeps hardware costs low without your software ever touching raw card data.
How do I calculate the payback period on a custom POS?
Add up what you pay per year today: subscription fees per terminal, add-on modules, and the gap between your effective processing rate and an interchange-plus rate, then divide the build cost by that total. A retail group paying $60,000 a year in fees and processing markup against a $150,000 build pays back in 2.5 years, before counting labor saved by workflows designed for your operation. Digital Heroes models 2 to 4 year payback for most multi-location operators and advises against building when the model shows longer.
Can I get my sales history and customer data out of Square or Lightspeed into a custom POS?
Yes. Square and Lightspeed both provide exports and APIs covering transactions, catalog, customers, and inventory, and migrating them is a standard 2 to 4 week workstream inside a POS build. The usual gaps are stored card tokens, which cannot leave the original processor without a formal token migration request, and gift card balances, which need careful reconciliation. Plan to run both systems in parallel for one or two weeks during cutover.
We run everything on spreadsheets and Airtable. How do we know it's time for custom software?
The reliable signals are re-typing the same data into multiple tools, one employee acting as human middleware between systems, and errors appearing in handoffs between teams. Hard limits force the issue too: Airtable's Team plan caps at 50,000 records per base, and Business costs $45 per seat per month, so a 20-person team pays about $10,800 a year for a tool it has already outgrown. When workarounds consume more hours than the tools save, the spreadsheet era is over.
What happens to my software if the agency shuts down or we stop working together?
Nothing dramatic, if the engagement was set up correctly: the code sits in your repository, hosting runs on your cloud account, and a handover document explains how to deploy and operate the system. Any competent replacement team can then take over in days rather than months. If the agency controls the repo, the servers, or the domain, fix that now, because renegotiating access during a dispute is the most expensive place to discover the problem.
Keep reading
let's build

Build something worth launching.

A plan, a team, a timeline, within 24 hours. No decks, no discovery calls. Tell us what you're building and we'll come back with a real scope and a real number.

message us directly · we reply within one business day

mission briefing

Monthly dispatch

Playbooks, real build costs, and what we're shipping. One email a month. No fluff.

visit us

New York HQ

1140 Broadway, Suite 704 · New York, NY 10001

Get directions
Online now

Hey there 👋 How can we help you today?