Stock transfers move products between storage locations within your clinic β from the main store room to the dispensary, from the fridge to a consult room, or between any configured locations. Transfers keep stock counts accurate at each location without creating unnecessary adjustments, and they maintain a complete audit trail of every item moved.
π‘ In short: Select a source and destination, pick the products and quantities you want to move, review, and confirm. Both locations update instantly, and every transfer is recorded.
Why Use Stock Transfers?
β οΈ Transfer, don't adjust. If you're moving stock from one location to another, always use a transfer β not two manual adjustments. Transfers maintain a clear audit trail showing exactly what moved, where it went, and who moved it. Two separate adjustments look like stock appeared from nowhere and disappeared elsewhere.
Benefit | How it helps your practice |
Location-level accuracy | Know exactly what's in each room, fridge, or cupboard β not just a single total for the whole practice |
Full audit trail | Every transfer records who moved what, when, from where, and to where. Essential for compliance and investigating discrepancies |
Batch traceability | Batch numbers and expiry dates follow products between locations, maintaining full traceability for recalls or inspections |
Accurate reordering | Reorder alerts are based on location-level stock. Transfers ensure each location reflects its true stock level, so alerts trigger at the right time |
When to Transfer Stock
Scenario | From | To |
Restocking the dispensary | Main Store | Dispensary |
Preparing for surgery | Main Store | Surgery Cupboard |
Moving vaccines to the fridge | Delivery Area | Fridge |
Returning unused items after a procedure | Consult Room | Main Store |
Consolidating stock before a count | Multiple locations | Main Store |
How to Transfer Stock β Step by Step
Step 1: Create a Transfer Session
Go to Apps > Inventory from the top navigation
Select the Adjustments tab
Click New Adjustment in the top-right corner
In the dialog, Stock Transfer is selected by default
Choose the source location (where stock is coming from)
Choose the destination store β this defaults to your current store, but you can select a different store to set up a cross-store transfer
Choose the destination location within that store
Click Create Session
π You need at least 2 stock locations configured for your store to create a same-store transfer. If you only see one location, ask your Practice Manager to set up additional locations under Settings > Stock Locations.
Step 2: Select Products and Enter Quantities
The transfer session opens with a two-step wizard:
Step 1 of 2 β Select Items & Quantities
The left panel shows all products available at the source location, with:
Product name
Category
Current stock at the source
To add products:
Browse or search the product list using the search bar
Click the add button (+) on any product to add it to the transfer
Added products appear in the right panel ("Items to Transfer")
Enter the quantity you want to move for each item
π‘ Batch-tracked products: When adding a product that uses batch tracking, you'll be able to select which specific batch to transfer. This ensures the correct batch numbers and expiry dates follow the products to their new location.
π Cross-store transfers β reference lists only: When transferring to a different store, only products that belong to a shared reference list appear in the picker. Products not on a reference list are hidden automatically. If you scan a barcode for a product that isn't on a reference list, you'll see a message explaining why it can't be added.
For each item in the right panel, you can see:
Transfer Quantity β the amount you're moving (enter this)
Unit β the unit of measure (e.g. Tablets, Bottles, Doses)
Step 3: Review and Confirm
Click Next to move to the review step.
Step 2 of 2 β Review & Finalise
The review screen shows a summary of everything that will be transferred:
Source store and source location
Destination store and destination location
A list of all products with their transfer quantities
Batch details (if applicable)
Review carefully, then:
Click Complete Transfer to confirm and execute the transfer
Click Back to return and make changes
Click Cancel Transfer to discard the session entirely
Before completing, Lupa may ask you to tidy up the transfer:
If any products have no quantity set, or (for cross-store transfers) any products are not on a reference list, a prompt will appear asking whether to remove those items before proceeding. You can remove them or keep them β the transfer won't complete until every item is resolved.
Cross-store transfers β resolving reference lists:
For transfers to a different store, clicking Complete Transfer opens the Complete cross-store transfer pop-up. This shows:
Ready to transfer β products that already exist in the destination store and will move immediately
Needs resolution β products whose reference lists are not yet active at the destination store
For each list under Needs resolution, choose:
Enable list β activates that reference list at the destination store so the products can transfer
Skip β leaves those products behind; they won't be transferred
Once you've made a choice for every list, click Complete Transfer to finish.
What happens when you complete:
Stock is deducted from the source location
Stock is added to the destination location
Two stock movements are created for each product:
A Stock Transfer Out at the source (negative quantity)
A Stock Transfer In at the destination (positive quantity)
Both updates happen atomically β there's no in-between state
A brief animation confirms the transfer was successful, showing both the source and destination store names
β οΈ This action is final. Once completed, the stock has moved. To reverse a transfer, create a new transfer session with the source and destination swapped.
Using Suggested Transfers
If your store has more than one stock location, Lupa can suggest which transfers to make to bring a location's products back up to their optimal stock levels. Instead of manually checking each location, you pick a destination and Lupa works out what needs moving and where the surplus stock is coming from.
To open Suggested Transfers:
Go to Apps > Inventory and select the Sessions tab
Click Suggested Transfers in the toolbar
Step 1: Choose a destination location
Lupa lists your stock locations, each showing how many products are currently at or below their minimum stock level. Select the location you want to top up.
If all your locations are already above their minimum stock levels, Lupa will tell you β no transfers are needed right now.
Step 2: Review and adjust the suggested transfers
Lupa shows the transfers needed to top up the location you selected, drawing on surplus stock from other locations that are above their optimal levels. Transfers are grouped by source location, with each group labelled with the source and destination β for example, "Main Store β Dispensary" β and listing the products to move with suggested quantities.
From here you can:
Edit a quantity β type a different amount in the quantity field for any product
Remove a product β click the remove icon next to a product to exclude it from this transfer
Create one group's transfer β click Create transfer on a specific group to create just that transfer session
Create all transfers at once β click Create [N] transfers to create all the suggested transfer sessions in one go
π‘ Hover over a source or destination location name to see its minimum and optimal stock quantities for that product.
β οΈ Below-optimal warning: If the quantity you've entered would leave the source location below its own optimal stock level, Lupa flags this with a warning. You can still proceed β just be aware the source location may need restocking too.
If some products can't be fully topped up because no other location holds enough surplus stock above its optimal level, Lupa lists them separately so you know what's short.
What happens next
Each transfer Lupa creates is an ongoing transfer session β exactly like one you'd create manually via New Adjustment. Complete it through the normal transfer review flow to confirm the stock movement.
If Lupa creates exactly one transfer, it takes you straight to that session. If it creates more than one, you'll see a confirmation and can find all the new sessions in the Sessions tab.
Viewing Transfer History
All transfer sessions β ongoing, completed, and cancelled β appear in the Sessions tab of the Inventory module. For each session, you can see:
Session name and type (Stock Transfer or Stock Take)
Source and destination locations
Created at date and created by team member
Status β Ongoing, Completed, or Cancelled
Click any completed session to view the full details, including every product transferred and the quantities moved.
Stock Movements Audit Trail
Every completed transfer creates detailed records in the stock movements history. These records include:
Timestamp of when the transfer was completed
Employee who completed it
Product details including batch numbers and expiry dates
Quantity moved and the resulting stock levels at both locations
You can view stock movements for any product by navigating to its product details page.
Tips for Efficient Transfers
β Best practices from practices that run Lupa:
Batch transfers together β If you're restocking the dispensary with 10 items, do them all in one transfer session rather than 10 separate transfers
Transfer then move β Enter the transfer in Lupa first, then physically move the products. This ensures you don't forget to record the digital transfer
Check quantities first β Look at the source stock column before entering transfer amounts. Don't try to transfer more than what's available
Name your sessions β Click the pencil icon next to "Stock Transfer" to give sessions descriptive names like "Morning dispensary restock" for easier reference later
Verify on the other end β After transferring, spot-check a few items at the destination to confirm the physical and digital counts match
Autosave and Session Locking
How does autosave work?
How does autosave work?
Lupa automatically saves your transfer progress as you work. You'll see "Autosaved at [time]" in the header. If you navigate away and come back, your progress will be preserved as long as the session is still ongoing.
What is session locking?
What is session locking?
When you open a transfer session, it's locked to your account. Other team members will see a message saying "Session in use by [your name]" if they try to open it. This prevents conflicting edits. The lock is automatically released when you navigate away, complete, or cancel the session.
Troubleshooting
Problem | Solution |
Source location shows 0 stock for a product | The product may have already been transferred, dispensed, or adjusted. Check the stock movements history for recent changes |
Can't create a transfer β need at least 2 locations | Your store only has one stock location configured. Ask your Practice Manager to add more locations under Settings > Stock Locations |
Need to undo a transfer | Create a new transfer session with the source and destination swapped, using the same products and quantities. This effectively reverses the original transfer |
Session locked by someone else | Another team member has the session open. Ask them to close it, or wait for the lock to release automatically when they navigate away |
Next button is disabled | Make sure all added products have a quantity entered. Products with no quantity or zero quantity will prompt you to remove them before proceeding |
Products don't appear in the picker (cross-store transfer) | For transfers to a different store, only products on a shared reference list are shown. Products not on a reference list cannot be transferred across stores and are hidden from the picker |
Scanned barcode not found (cross-store transfer) | If the scanned product exists but isn't on a reference list, you'll see a message explaining it can't be transferred across stores. Add it to a reference list first, or use a same-store transfer instead |
Products don't appear in the picker (same-store transfer) | Only products with stock at the source location are shown. If a product has zero stock at the source, it won't appear in the list |
Suggested Transfers button is not visible | The button only appears when your store has more than one stock location configured. If you only have one location, ask your Practice Manager to add more under Settings > Stock Locations |
Suggested Transfers shows no transfers for a location | That location has no products at or below their minimum stock level right now, or no other location holds surplus stock above its optimal level for those products. Check the minimum and optimal stock levels set for each product |
Frequently Asked Questions
Can I transfer stock between different stores (clinics)?
Can I transfer stock between different stores (clinics)?
Yes β you can transfer stock between stores. When creating a transfer session, select a different store as the destination. Only products on a shared reference list can be included in a cross-store transfer. When you complete the transfer, you'll have the option to enable any reference lists at the destination store that aren't already active there.
Is there a limit to how many products I can transfer at once?
Is there a limit to how many products I can transfer at once?
No. You can add as many products as you need to a single transfer session. For large restocks, this is much more efficient than creating individual transfers.
Can I edit a completed transfer?
Can I edit a completed transfer?
No. Completed transfers are final and read-only. To correct an error, create a new transfer session with the correct details.
Do transfers affect product pricing or invoicing?
Do transfers affect product pricing or invoicing?
No. Transfers only move stock quantities between locations. They don't create charges, credits, or affect pricing.
Who can create and manage transfers?
Who can create and manage transfers?
Any team member with the Inventory permission can create, edit, complete, and cancel transfer sessions. Your Practice Manager controls permissions under Settings > Roles & Permissions.
