Перейти к содержимому

Consignment vs principal

Это содержимое пока не доступно на вашем языке.

Every car has a sourcing mode:

  • Principal — you bought it. The capital risk is yours. The car hits your inventory account.
  • Consignment — the supplier (consignor) still owns it. You hold it on their behalf, recover your costs, and earn a commission on sale. The car never hits inventory.

The two Add car buttons on the Cars page (+ Principal and + Consigned) choose the mode. They open the same form with a sourcing toggle; you can also flip the toggle inside the form.

cars.consignorCounterpartyId IS NOT NULL is the canonical signal — every server check branches on this column directly. The form sets it when sourcing = consignment + you pick a consignor counterparty.

Purchase:
Dr 1100 Inventory of Cars <purchase + landed cost in home>
Cr Vault (cash mode) OR
Cr 2000 Accounts Payable (credit mode, tagged to supplier)
Each cost row (auction fee, freight, duty, repair):
Dr 1100 Inventory of Cars <cost in home>
Cr Vault / 2000
Sale (via invoice):
Dr 1050 AR / Vault <sale price + tax in home>
Cr 4000 Revenue
Cr 2100 Tax Payable
AND
Dr 5000 Purchase Cost <original purchase in home>
Dr 5020 Landed Cost <sum of landed cost rows>
Cr 1100 Inventory of Cars <total>
Purchase: NOTHING POSTS to inventory or vault.
Each cost row (the costs you advanced on behalf of the consignor):
Dr 1300 Due from Consignors <cost in home, tagged to consignor>
Cr Vault / 2000
Sale (via invoice):
Dr 1050 AR / Vault <sale price + tax in home>
Cr 4xxx Commission Income <your margin>
Cr 2100 Tax Payable
Cr 1300 Due from Consignors <reverse the costs>
Cr 2050 Payable to Consignor <net owed to supplier>

No COGS, no inventory derecognition. The consignor gets paid the net of “sale price minus your costs minus your commission” through 2050.

AspectPrincipalConsignment
CounterpartySupplier (optional, in AP if credit)Consignor (required)
Inventory account1100 carries landed costNever touched
Cost rowsCapitalize into 1100Capitalize into 1300
Sale GLRevenue + COGS splitCommission only
Sold-status flipsYes (sold_locally / sold_import)Yes (same logic)
Cancelled with “returned to supplier” reasonAllowedRejected (consignor IS the supplier)