Selling products on consignment creates two separate tracking problems.
You need to know what is physically available to sell. You also need to know who owns each item and how much that owner is owed after a sale.
Those are not the same thing.
A Shopify inventory quantity can tell you that five units are available. A sales report can show what sold. But neither, on its own, provides a complete consignment settlement ledger with commission rules, payout approvals, and payment history.
The most reliable setup connects Shopify’s product, inventory, and order records to a separate ownership and settlement process.
For a small operation, that process can start in a carefully structured spreadsheet. As vendor numbers, transactions, and exceptions grow, a dedicated system becomes more practical.
- Separate inventory, ownership, and money
Build the workflow around three distinct records:
Inventory:
What units are physically present and sellable?
Ownership:
Which consignor owns those units?
Settlement:
What amount is owed, approved, and paid?
A product’s vendor label can help organize reporting, but it does not establish ownership of every physical unit or execute a payout.
Likewise, an inventory location represents where fulfillment stock is managed. It should not automatically become a substitute for a consignor account.
Keeping these concepts separate prevents common mistakes, such as paying a vendor for unpaid orders or treating a refund as proof that an item physically returned to stock.
- Define the settlement rules before calculating payouts
Document the commercial rules your system needs to implement.
At minimum, establish the vendor share, eligible sales basis, discount treatment, return treatment, payout timing, and any agreed deductions.
For example:
Illustrative rule:
Vendor receives 60% of eligible merchandise revenue.
Eligible merchandise revenue:
Item selling amount after allocated discounts
and merchandise-related reversals.
Tax and shipping:
Excluded from this example.
Eligibility:
Payment confirmed and agreed holding period completed.
This is an operational example, not a recommended contract or accounting treatment. Have your accountant or adviser confirm how consignment should be recorded for your business.
Avoid ambiguous labels such as “60% of sales.” Different people may interpret “sales” as the original price, discounted price, order total, or cash received.
Also distinguish a percentage split from a fixed amount per unit. They behave differently during promotions.
- Give each consignor a stable identifier
Vendor names can change or be entered inconsistently. Use a stable internal reference alongside the display name.
For example:
Consignor ID: CONS-014
Display name: River Studio
Settlement rule: RULE-014-V2
Maintain a separate consignor register for contact details, statement preferences, and payment references.
Keep bank details and other sensitive information in an appropriately secured system, not a public product field or a spreadsheet shared broadly with vendors.
Where practical, use Shopify’s product vendor field consistently for reporting. If that field already represents the brand, preserve its meaning and maintain consignor ownership separately.
A product’s brand and the person supplying it on consignment are not necessarily the same entity.
- Choose an ownership model that matches the stock
For unique goods, a distinct item record and SKU make attribution straightforward:
SKU: CONS014-VASE-001
Owner: CONS-014
Received quantity: 1
For multiple identical units from one consignor, a shared product variant can work if the ownership relationship remains unambiguous.
The difficult case is identical goods from different consignors.
Suppose two vendors each supply five identical mugs. A pooled quantity of ten does not tell you which vendor’s unit was sold.
You need either separate stock identities or an external allocation ledger with an explicit rule, such as assigning sales to the oldest eligible receipt first.
Do not infer ownership later from whatever inventory remains. Record the allocation when the sale becomes attributable.
If a single unit has multiple beneficiaries, store the split explicitly and validate that the allocations match the agreed total.
- Record receipts and inventory movements
Create an intake record for each consignment receipt.
Useful fields include:
Receipt ID
Consignor ID
Product and variant identifiers
SKU
Quantity received
Condition
Physical location
Received date
Settlement rule version
Then record subsequent movements separately: sales, customer returns, transfers, damage, and stock returned to the consignor.
Do not count an inter-location transfer as a sale or a new consignment receipt.
For a simplified physical reconciliation:
Expected closing units =
Opening physical units
+ Vendor receipts
+ Customer returns physically received
+ Transfers in
− Units dispatched or handed to customers
− Stock returned to vendors
− Write-offs
− Transfers out
Reconcile sellable and unsellable stock separately. A damaged returned item may be physically present without being available for sale.
- Build the settlement ledger at line-item level
An order can contain products from several consignors. The order total is therefore too broad for accurate settlement.
Use a ledger that links each allocation to the relevant order line:
Ledger entry ID
Source transaction or adjustment ID
Order ID
Order line ID
Consignor ID
Ownership allocation ID
Quantity
Currency
Eligible merchandise amount
Vendor share
Settlement rule version
Eligibility date
Statement ID
Status
A practical status progression is:
Pending
→ Eligible
→ Approved
→ Paid
Keep disputed or blocked entries identifiable rather than silently omitting them.
Store the settlement rule that applied to the transaction. Changing a vendor’s rate next month should not recalculate last month’s approved earnings.
- Calculate discounts and shared orders correctly
Consider an illustrative transaction:
Original merchandise amount: $100
Allocated discount: $10
Eligible merchandise amount: $90
Vendor share: 60%
Vendor earning: $54
Retailer portion: $36
For a spreadsheet where the eligible amount is in D2 and the vendor rate is in E2:
=ROUND(D2*E2,2)
This example assumes a two-decimal currency. Apply the appropriate currency precision and rounding policy.
For order-level discounts, use the discount allocation attributable to the item. Do not subtract the entire order discount from every vendor’s line.
Also avoid deducting the same discount twice when your source amount is already net of discounts.
Shopify’s sales reporting distinguishes gross sales, discounts, and sales reversals. Map those concepts deliberately to your settlement rules rather than treating every report total as payout-ready revenue.
- Treat returns and refunds as separate financial and stock events
A refund can occur without a physical return. A physical return can arrive before a refund is processed.
Record both dimensions.
For an item that generated a $54 vendor earning, a full eligible reversal could create:
Original earning: +$54
Reversal entry: −$54
If the original statement has already been paid, preserve it. Add a linked adjustment to a later settlement rather than rewriting payment history.
Partial refunds require more care. A merchandise refund may affect the vendor’s earning differently from a shipping-only goodwill refund.
Exchanges can involve a reversal for one item and a new sale for another. If the replacement belongs to a different consignor, settle each side independently.
Use the original rule and allocation when calculating a reversal, not the vendor’s current commission rate.
- Do not use sales reports as proof of payment
Shopify sales reports include pending, unpaid, and canceled orders, and they do not track the movement of payments between you and customers. Chargebacks are not included in sales reports.
That makes a vendor sales total a useful reconciliation input, not sufficient evidence that the whole amount is eligible for payout.
Your settlement process should separately evaluate payment status, refunds, disputes, holding periods, and prior payouts.
Similarly, a payment-provider deposit can combine many orders and adjustments. It is not itself a consignor statement.
Keep these checks distinct:
What was sold?
What payment was received?
What is eligible under the vendor rule?
What has already been paid?
- Understand the limits of cost-per-item reporting
Shopify’s cost-per-item field supports profit reporting. It is a static cost value, and profit reports depend on costs recorded when products were sold.
A percentage-based consignment obligation can vary with the selling price, discount, and settlement terms.
For example:
60% of a $100 sale = $60
60% of an $80 sale = $48
A fixed cost field does not, by itself, represent that changing obligation.
Use cost data according to your approved accounting approach, but do not treat a profit report as proof that a consignor’s payable has been calculated or paid.
Maintain the settlement ledger even if cost reporting is also useful.
- Reconcile and approve statements before paying
For each settlement period, reconcile the vendor’s stock activity and earnings.
A statement should show:
Opening unpaid balance
Eligible sales
Linked reversals
Approved adjustments
Amount approved for payment
Amount paid
Closing unpaid balance
Payment reference
Include enough order-line or item references for the consignor to understand the calculation without exposing unnecessary customer information.
Keep currencies separate unless you have an explicit conversion policy and recorded exchange-rate basis.
Approve the statement before initiating payment. Mark it paid only after the payment outcome is confirmed and its reference is recorded.
If a transfer fails, retain that failure state. Exporting a payment file or clicking a payment button is not evidence that the vendor received the funds.
- Scale the process without losing its audit trail
A spreadsheet is reasonable when transaction volume and ownership rules remain manageable.
Move toward a dedicated system when you regularly face pooled ownership, many consignors, retroactive adjustments, multi-currency settlements, or several staff editing the ledger.
Evaluate any proposed system against those exact requirements. A vendor sales report is not necessarily a consignment-management system, and a commission calculator is not necessarily a payout service.
For a custom integration, prioritize idempotency and reconciliation:
Read source order and adjustment
→ Identify the ownership allocation
→ Apply the saved settlement rule
→ Create a unique ledger entry
→ Reconcile against source records
Use durable identifiers to prevent the same transaction from generating earnings twice. Repeated notifications, retries, and partial failures should not create duplicate payables.
The recommended workflow
Start with clear ownership and settlement records, then connect them to Shopify sales and inventory.
Register consignors
→ Define settlement rules
→ Record stock receipts
→ Attribute sold units
→ Calculate line-level earnings
→ Record reversals
→ Reconcile statements
→ Approve and confirm payouts
The central principle is simple: Shopify can supply valuable inventory and sales records, but a reliable consignment operation also needs a traceable answer to two questions, who owned the unit that sold, and has that owner already been paid?