SSABSUSAcademy
Warehouse

Supplies in SABSUS

Receive inventory from a supplier into a storage location with invoice media, product lines, quantities, prices, tax, and optional payment transaction.

Supplies in SABSUS visual guide
DifficultyIntermediate
Time12 minutes
ModeInteractive walkthrough
Fields30 explained

Voice explanation

Audio source: supplies-en.mp3

Listen to a short explanation of what this section is for, what to fill in, and why the data matters.

Step-by-step instructions

A manager can create a supply document that increases the right warehouse stock, links to the right supplier, keeps invoice proof, records tax, and optionally creates the matching finance transaction.

Use the interactive screenshot walkthrough first. Switch steps with the step dots, then read what to fill and why it matters.

Fields on this screen

Supplies list

How to fill: Open Supplies and check the table before adding another receiving document.

Why: Duplicate receiving rows double count inventory and confuse supplier statements.

Add

How to fill: Click Add in the top-right corner to create a new supply draft.

Why: The draft creates a document ID and opens the receiving form.

Storage

How to fill: Open Storage and select the warehouse where the goods actually arrived.

Why: This is the location whose stock should increase.

Supplier

How to fill: Open Supplier and choose the vendor from supplier profiles.

Why: Supplier history, invoice lookup, and purchasing reports depend on the correct vendor.

Currency

How to fill: Open Currency and confirm the invoice currency.

Why: The amount, payment transaction, and finance reports must use the same currency.

Invoice upload

How to fill: Click Upload invoice and attach a clear photo or file.

Why: The invoice is proof for quantities, prices, taxes, and supplier disputes.

Select product

How to fill: Open Select product and search by product or ingredient name.

Why: Only real product rows can update stock correctly.

Quantity

How to fill: Enter delivered quantity in the product unit shown by the form.

Why: Quantity controls the warehouse increase.

Price

How to fill: Enter unit price from the invoice.

Why: Price creates purchase cost and line subtotal.

Total

How to fill: Verify the automatically calculated total before adding the line.

Why: This catches quantity or price mistakes before saving.

Add product line

How to fill: Click Add after product, quantity, and price are correct.

Why: The line is not saved as part of the supply until it is added.

Tax

How to fill: Enter supply-level tax from the invoice.

Why: Tax keeps finance and reports aligned with the supplier document.

Payment switch

How to fill: Enable Payment only when the supplier is paid now or the receiving document should create a finance transaction.

Why: You can receive inventory without paying immediately.

Payment amount

How to fill: Enter the amount paid, usually subtotal plus tax.

Why: Finance reconciliation needs the paid amount to match the invoice or partial payment.

Settlement account

How to fill: Choose the cash, bank, or acquiring account used to pay the supplier.

Why: The expense must leave the correct account.

Payment comment

How to fill: Write a short comment such as Paid on receiving invoice or Partial supplier payment.

Why: Comments explain the transaction without changing inventory data.

Save

How to fill: Save after storage, supplier, currency, invoice, product lines, tax, and payment fields are reviewed.

Why: Saved supplies become the source for warehouse stock, purchases, finance, reports, and future AI agents.

Verify row

How to fill: Return to the Supplies list and verify amount, tax, employee, storage, supplier, and items.

Why: List verification proves the row was written and loaded back from the real database.

Common mistakes

  • Saving a supply without adding product lines.
  • Choosing the wrong storage, which increases stock in the wrong location.
  • Choosing the wrong supplier or creating a supplier duplicate before receiving.
  • Typing quantity in the wrong unit, for example pieces when the product unit is kilograms.
  • Entering invoice total as unit price instead of line price per unit.
  • Forgetting tax when the supplier invoice includes tax.
  • Turning on Payment for unpaid deliveries and accidentally creating an expense transaction.
  • Selecting the wrong settlement account for supplier payment.
  • Uploading an invoice but not checking that product lines match it.
  • Editing supplies directly in Supabase without refreshing related app data.
AI Agent Field Reference for implementation

This block is intentionally below the human instructions. It explains storage names and downstream dependencies for automation, support, and future AI agents.

FieldStored asPurposeWhy it matters
Supply IDsupplies.id / SupplyStruct.IDUnique receiving document identifier.Inventory movements, invoice references, payment transactions, reports, support, and AI agents need a stable supply ID.
Companysupplies.companyCompany workspace that owns the supply.Prevents receiving rows from one workspace from appearing in another company.
Supply datesupplies.date / SupplyStruct.DateDate and time when goods were received or invoice should be recorded.Stock history, supplier statements, tax period, and purchasing reports depend on the receiving date.
Suppliersupplies.supplier / SupplyStruct.SupplierFirestore supplier profile ID.Links the receiving document to vendor contacts, invoice history, quality claims, and supplier reports.
Storagesupplies.storage / SupplyStruct.StorageWarehouse or storage location receiving the goods.This decides where inventory increases and prevents stock from appearing in the wrong branch or warehouse.
Employeesupplies.employee / SupplyStruct.EmplyyEmployee or user who created the receiving document.Useful for accountability, audit, and explaining who accepted the delivery.
Currencysupplies.currency / SupplyStruct.CurrencyCurrency used by the invoice and line totals.Finance reports and supplier reconciliation need explicit currency, especially for multi-currency companies.
Invoice imagessupplies.images / SupplyStruct.Image[]Uploaded invoice photos or files stored in Supabase Storage.Invoice proof lets managers verify supplier, tax, quantities, prices, and disputes.
Itemssupplies.items[] / SupplyStruct.Items[]List of product movement lines received in this supply.Inventory can only increase correctly when each delivered product is recorded as a line item.
Item IDsupplies.items[].IDUnique line identifier.Line IDs help audits, edits, imports, and AI explanations refer to a concrete row.
Item datesupplies.items[].dateDate stored on the product movement line.Keeps product movement history aligned with the supply date.
Movement typesupplies.items[].Type = +Stock movement direction.A supply should add stock; agents must not confuse it with write-off, transfer, or sale consumption.
Productsupplies.items[].ProductProduct or ingredient ID being received.This is the actual stock item that increases in storage.
Quantitysupplies.items[].GrossDelivered quantity in the product unit.Stock levels and reorder decisions depend on accurate quantity.
Unitproducts.unit_of_measurementMeasurement unit shown for the product, such as kg, pcs, or l.Quantity without unit is ambiguous for staff, reports, and AI agents.
Unit pricesupplies.items[].PriceSupplier price for one unit.Used for receiving cost, purchase history, margin, and supplier comparison.
Line amountsupplies.items[].amountQuantity multiplied by unit price.Forms the supply subtotal and makes invoice reconciliation possible.
Taxsupplies.tax / SupplyStruct.TaxTax charged on the supply invoice.Finance, tax reports, supplier statements, and total explanations depend on this number.
Subtotalsupplies.amountSum of added item line amounts before supply-level tax.Used in list totals and purchasing reports.
Total with taxsupplies.amount + supplies.taxOperational total managers compare with invoice and payment amount.This is the number people expect to reconcile against the supplier invoice.
Payment switchSupply form switchCustomModel.yorNWhether a finance transaction is created or kept for this supply.Receiving inventory and paying the supplier are related but separate events; the switch controls whether they are saved together.
Transaction IDsupplies.transaction_id / SupplyStruct.TransactionLinked finance transaction when payment is enabled.Allows support and AI agents to connect receiving to the expense transaction.
Transaction amounttransactions.amountMoney paid to supplier.Should usually equal invoice total when the supply is paid immediately.
Settlement accounttransactions.from_accountFinance account used to pay the supplier.Cash, bank, and acquiring accounts must stay accurate for reconciliation.
Transaction commenttransactions.commentShort payment note.Explains why the expense exists without burying data in the supply line.
Transaction categorytransactions.category = SupplyFinance category for supplier receiving payments.Reports can separate supply expenses from payroll, transfers, refunds, and other costs.
Statussupplies.status / SupplyStruct.Status[]Status history or audit metadata for the supply.Can support approvals, created state, review state, and future automation.
Created atsupplies.created_atTimestamp when the row was written.Useful for setup troubleshooting and audit history.
App cacheFFAppState().SupplyClient-side list of supplies after app loading.After backend edits, the app must reload before the list shows current rows.
Reload markerscompany.loadproduct / loadstorage / loadsupplier / loadaccountCompany timestamps used to refresh related lists.Native and backend changes need these markers so the form sees products, warehouses, suppliers, and accounts.

Use these guides to connect this section to adjacent SABSUS workflows.