Rhythm does not include a Console screen for creating a stock record directly, deleting one, or writing a recorded movement without processing it. You can do those actions only through the API. This reference explains the rules that apply when you do: what a stock record or movement needs before it saves, what you can change after it exists, and how batch requests behave. For day-to-day stock adjustments, transfers, stock levels, and history, use the stock tasks for Orders & Inventory. Stock records and recorded movements can also carry your Rhythm account's custom field values. To learn what custom fields are and how your organization adds them, see Custom Fields Explained.
Creating a Stock Record Directly
A direct create request must pass three checks before Rhythm saves the stock record:
| Rule | What is refused |
|---|---|
| The record's identifier must match the warehouse, item, and SKU it names | A record with an identifier that does not match those fields |
| The item must be set up to track inventory | A stock record for an item that does not track inventory |
| A SKU-tracked item's record must include a SKU; any other item's record must not | A missing SKU on a SKU-tracked item, or a SKU on an item that is not SKU-tracked |
After those checks pass, Rhythm does not validate the starting counts. You can create a record with any combination of the seven stock counts and a business unit, including large non-zero counts, and Rhythm saves it with no movement behind it. Because no movement created the stock, there is no transaction or cost-of-goods entry that explains how the stock arrived.
Warning
A stock record created this way cannot later be explained by adding up its movement history, because it has no movement history. If you need stock counts that trace back to a transaction, create the record through a recorded movement instead of a direct write.
The item-tracking and SKU rules apply only when you directly create or edit a stock record. A processed recorded movement follows different rules: it can still create or change stock for an item that does not track inventory, and a transfer can create its destination record without a SKU even when the item is tracked by SKU.
Changing a Stock Record After It Exists
After a stock record is saved, you cannot directly edit its counts or settings. To change what the record counts, use a recorded movement.
You can still make these direct changes:
| Change | Allowed? |
|---|---|
| Counts (on hand, available, committed, and the rest) or tracking settings | No — refused |
| Free-text notes | Yes |
| Your Rhythm account's custom field values | Yes |
| Every other field in the same request as notes or custom fields | No — the whole request is refused if anything else changes |
Rhythm runs the identifier-match, tracking, and SKU rules again every time the record saves, even when you only change notes or custom fields. If an item's tracking level changes after records already exist for it, such as from tracking by item to tracking by SKU, every existing record for that item fails those rules the next time it saves.
Deleting a Stock Record
You can delete a stock record directly through the API, and deleting it removes its counts. If any recorded movement still references the deleted record, that movement's history points to a record that no longer exists.
Changing Many Stock Records in One Batch Request
You can create, change, or delete several stock records in one batch request instead of sending one request per record. Rhythm checks each operation against the same rules as a single request, and a failed operation is refused in its own result.
Tip
Check each operation's own result in the batch response. Whether the whole batch succeeds or fails together is not guaranteed, so do not assume one failed operation stopped the rest from saving, or that one successful operation means every operation in the request succeeded.
Annotating a Recorded Movement
A recorded movement, which is the record of a receipt, shipment, adjustment, or transfer, can carry free-text notes and your Rhythm account's custom field values. You can add or change those notes and custom field values after the movement is saved.
Changing Anything Else on a Recorded Movement
After a recorded movement is saved, you cannot change anything except notes and custom fields. If a request changes several fields at once and even one field is not notes or a custom field, Rhythm refuses the whole request and saves nothing.
Changing Many Recorded Movements in One Batch Request
You can create, change, or delete several recorded movements in one batch request, the same way you can with stock records. A movement saved this way is only recorded; it is not processed, so it does not affect any stock count. Saving a movement this way also prevents it from being processed later, because the workflow that applies a movement's effect to stock treats an already recorded movement as done.
Warning
If you write movements through the batch route instead of processing them, your stock counts will not reflect those movements. Reconcile a stock record's counts against its movement history if the two disagree; a movement in the history with no matching change to the counts was likely written this way.