A purchase order, stock receipt, adjustment, or transfer all use the same process. This article explains where a movement number comes from, why Rhythm sometimes refuses to record a movement, and why a large movement can return a tracking token instead of finishing right away.
Where the Movement Number Comes From
Every new stock movement gets a number that is unique to your Rhythm account. The number starts with INV and then uses the next value in your account’s sequence, such as INV1024.
Processing a Movement
When you record one movement, or submit several movements together, Rhythm usually handles them in one request. You submit the movement, and Rhythm updates your stock counts right away.
Each movement must include a type, warehouse, product type and identifier, and quantity. If any of those details are missing, Rhythm refuses the movement instead of recording part of it.
For larger movements, Rhythm processes the work in the background instead of finishing it all at once. When that happens, you receive a tracking token instead of an immediate result, and you use that token to follow the movement until it finishes. You can start only one movement this way per request; Rhythm cannot start an entire batch as one background job.
Why Rhythm Says a Movement Was Already Recorded
If you or an integration resends a movement that was already saved, Rhythm checks whether the resend still includes the version information Rhythm assigned when it was saved. When that information is present, Rhythm recognizes the resend as the same movement and refuses to apply it again, which prevents an accidental duplicate count.
Warning
This protection depends on the saved movement’s version information staying intact. If someone copies an already-saved movement and removes that version information, Rhythm treats the copy as a new movement and records it again instead of refusing it.
New Locations Start at Zero
If a movement names a warehouse and bin combination that does not already have a stock record for that product, Rhythm creates the stock record automatically with a starting quantity of zero before recording the movement. You do not need to set up the location in advance; the first movement that uses it creates the stock record.
Permission
You need the appropriate stock permission for your Rhythm account to record a stock movement or start one as a background job.