Skip to main content
AnyVet
Back to docs

Inventory

Run Procurement and Receiving

How to operate the PR, PO, and receiving workflow for stock procurement.

Section: Inventory
Updated: 2026-03-09
Tags: inventory, procurement, pr, po, receiving

Run Procurement and Receiving

AnyVet Smart follows a PR (Purchase Requisition) -> PO (Purchase Order) -> Receive workflow. Because procurement, admin, and stock teams share the same data, state transitions should not be skipped arbitrarily.

Full Flow Summary

  1. A requester creates the PR.
  2. The request moves through review into SUBMITTED and APPROVED.
  3. An approved PR is converted into a PO.
  4. When goods arrive, the team records received quantity, batch number, and expiry.
  5. The result appears in receiving history and stock balance.

Operate the PR Screen

Select the PR context inside /stock/pr-po.

Main PR information

  • created date and time
  • PR number
  • requester
  • linked supplier
  • status

PR status flow

  • DRAFT
  • SUBMITTED
  • APPROVED
  • REJECTED
  • CONVERTED
  • FULLY_CONVERTED
  • CANCELLED

Practical meaning

  • DRAFT: not yet under review
  • SUBMITTED: waiting for approval
  • APPROVED: ready for PO conversion
  • CONVERTED / FULLY_CONVERTED: partially or fully turned into PO work
  • REJECTED: needs correction
  • CANCELLED: no longer used

Typical PR actions

  • open detail
  • edit draft
  • change status
  • convert an approved PR into a PO

Warning: Once a PR is beyond draft, operational traceability is usually better if the team creates a new request or manages the issue through conversion logic instead of editing the old request heavily.

Operate the PO Screen

Switch the same /stock/pr-po area into the PO context.

Main PO information

  • created date and time
  • PO number
  • linked PR number
  • supplier
  • status

PO status flow

  • DRAFT
  • SUBMITTED
  • APPROVED
  • PARTIALLY_RECEIVED
  • RECEIVED
  • CANCELLED

Practical meaning

  • APPROVED: ordered and waiting for delivery
  • PARTIALLY_RECEIVED: only part of the order has arrived
  • RECEIVED: receiving is complete

Important PO behavior

Marking a PO as received is not just a label change. It leads into actual receiving work.

Process Receiving

Receiving happens in /stock/add-receive/[poId].

Check first

  • PO number
  • supplier
  • total items
  • fully received count
  • partially received count
  • pending item count

Main item-level receiving fields

  • received quantity
  • batch number
  • expiry date

Receiving rules

  • Record the actual received quantity, even if it is less than ordered.
  • For medications and expiry-sensitive items, enter batch and expiry whenever possible.
  • Remaining quantity can be completed in later partial receiving.

Over-receiving

If entered quantity is greater than the remaining quantity, the system warns about over-receiving.

Warning: Over-receiving creates a gap between purchase records and inventory value. Confirm whether the difference is due to supplier error, bonus stock, or unit mismatch before continuing.

Review Receive Order History

/stock/receive-order is the operational history for completed receiving.

Useful situations

  • confirming when a PO was actually received
  • checking whether batch or expiry details were missed
  • reviewing delayed or partial delivery patterns
  • tracing why stock increased

Example Role Split

Reception / staff

  • may create PRs
  • usually focus on shortage reporting rather than approval

Hospital admin

  • approve PRs
  • review supplier conditions
  • confirm POs

Stock lead or responsible staff

  • compare physical goods against the PO
  • enter batch and expiry
  • handle partial and over-receiving decisions

Practical Tips

  • Accurate units at PR stage reduce receiving mistakes later.
  • Once a PO exists, do not change supplier terms informally without correcting the system record.
  • Expiry-aware stock should have expiry entered at receiving time so alert widgets work correctly.