POS + General Ledger + Inventory + Payroll — All Included on Every Plan | Free Updates Forever

Understanding Stock Transaction Types

Understanding Stock Transaction Types

Every time inventory moves in AccuArk, a stock transaction is recorded in the inventory_stock_transactions table. Each transaction captures what happened, when, where, by whom, and how much stock was affected. This article explains every transaction type the system creates.

Transaction Type Reference

The following table lists all stock transaction types, their effect on inventory, and what triggers them:

Transaction TypeStock EffectTriggered By
PurchasePositive (adds stock)Receiving items on a Purchase Order. Each received line item creates a Purchase transaction at the PO's location and zone.
PurchaseOrderReturnNegative (removes stock)Returning items on a Purchase Order. When you click the return button on a received PO line and enter a return quantity, stock is reversed and a negative transaction is logged.
MovePaired positive and negativeTransferring stock between locations or zones via the Stock Move form. Two transactions are created atomically: one negative at the source location/zone and one positive at the destination.
AdjustmentPositive, negative, or zeroManual stock adjustments. Direction depends on the reason code: Increase (+) adds stock, Decrease (-) removes stock, No Change (N) records a cost-only correction with zero quantity.
VoidReversal of originalVoiding a previous adjustment or stock move. The void transaction creates the opposite effect of the original to restore stock to its pre-transaction state.
SaleNegative (removes stock)Completing a sale at the Point of Sale. Each sold line item creates a Sale transaction that deducts stock from the selling location. For Virtual Kits, individual component items are deducted.
ReturnPositive (adds stock)Processing a customer return at the Point of Sale. The returned quantity is added back to inventory at the return location.
ReturnCanceledNegative (removes stock)Cancelling a previously processed customer return. Reverses the stock that was added back during the original return.
RefundVariesProcessing a refund at the Point of Sale. May or may not affect stock depending on whether the items are being physically returned.
AssemblyBuildPaired: components negative, assembly positiveBuilding assembly items via the Assembly Build form. Component items are deducted from stock and the finished assembly quantity is added to stock.
AssemblyBreakPaired: assembly negative, components positiveDisassembling a built assembly. The reverse of AssemblyBuild: assembly stock is removed and component items are returned to stock.
ServiceZero or informationalService-type items recorded for tracking purposes. Service items do not track physical stock so this is primarily for audit logging.
OtherVariesMiscellaneous transactions that do not fit other categories. Used by system processes or custom integrations.

Fields Recorded on Every Transaction

Each stock transaction record captures a comprehensive set of data for audit and reporting:

FieldDescription
Transaction IDUnique auto-generated identifier for this transaction
Item IDThe inventory item affected
Transaction TypeOne of the types listed above
Linked Transaction IDReference to a related transaction (e.g., the PO ID for Purchase transactions, the original transaction ID for Void transactions)
QuantityThe number of units affected. Positive for stock additions, negative for stock removals.
Cost at TimeThe item cost at the time of the transaction, preserving historical cost data
Price at TimeThe item price at the time of the transaction
Date/TimeThe exact timestamp when the transaction was recorded
LocationThe primary location where the transaction occurred
From LocationFor moves: the source location
To LocationFor moves: the destination location
From ZoneFor moves: the source zone within the source location
To ZoneFor moves: the destination zone within the destination location
UserThe user who performed or triggered the transaction
ReferenceOptional reference number (PO number, adjustment reference, etc.)
NotesFree-text notes added by the user
VendorFor purchase-related transactions: the vendor on the PO
BillFor purchase-related transactions: the linked accounts payable bill
Void FlagWhether this transaction has been voided

How Transactions Link Together

Many transactions reference related records through the Linked Transaction ID field:

  • Purchase and PurchaseOrderReturn transactions link to the Purchase Order ID, allowing you to trace any stock addition or return back to the original order
  • Move transactions are created in pairs. Each pair shares a reference, and the from/to location and zone fields identify which is the source and which is the destination
  • Void transactions link back to the original transaction they reversed, creating a clear audit chain
  • Sale and Return transactions link to the POS transaction or invoice that generated them
  • AssemblyBuild and AssemblyBreak create multiple linked transactions: one for the finished assembly and one for each component consumed or returned

Transaction Immutability

Stock transactions in AccuArk are immutable once saved. They cannot be edited or deleted. If a transaction was made in error, the correct approach is to void it, which creates a new reversing transaction rather than modifying the original. This design ensures a complete and tamper-proof audit trail.

Tips

  • Use the Linked Transaction ID to trace a transaction back to its source document (PO, sale, adjustment)
  • Cost at Time is valuable for historical reporting because it captures what the cost was when the transaction occurred, even if the item cost has changed since then
  • Void transactions always come in pairs — the original marked as voided, plus a new reversing transaction. Both remain visible in the history for full transparency
  • Move transactions always come in pairs — look for matching references to see both sides of a transfer
Was this article helpful?
Back to Inventory & Stock Management Contact Support
Please note: This article is intended as a general guide. AccuArk© is continuously improved through regular software updates, so some screens, labels, or features described here may appear slightly different in your version. If something doesn't match or you need further assistance, please don't hesitate to contact our support team.
Still need help?

Our support team is ready to assist you.

Submit a Ticket