Skip to content
Contents

HelpPurchase orders

Rate contracts: a vendor's agreed rates for a period

Write a vendor's agreed rates for a year or a month, send the contract for approval, and see when it is in force, expired or closed.

A rate contract is the price a vendor agreed for some materials, for a period: an annual one (ARC) or a monthly one (MRC). It records, for each material, the rate per unit, the smallest order and the most you may buy in all. Contracts in the sidebar lists them, newest first; choose a state to see only those in force, expired and so on.

Writing one

Contracts → New contract.

  • Vendor. Only a vendor your company has approved.
  • Kind and days. The first and last day, both included. A contract holds for three years at most, and its last day must not have passed.
  • Plants. Tick the plants it holds for. None ticked: every plant.
  • Materials and rates. Each material once, from your catalogue. The rate is rupees per one unit of the material's own unit. The smallest order and the most to buy are optional: with no cap, the contract commits to no quantity.
  • Many at once. Fill from Excel takes the vendor's whole price list: Material, Rate, Smallest order, Most to buy, Make and Remarks. Each material once (a second row naming it is marked on the first reading); a code is found in any case. A rate with more than six decimals (a price worked out in Excel) is rounded to six and its row says so. Template gives you the sheet to fill in; choose your file and the page shows its rows like Excel. A cell in red says what is wrong: fix it there (or leave the row out) and press Check again. Use N lines puts the good rows into the form, after the lines you typed. Nothing is saved until you send the form. At most 50 lines at a time.
  • Make. The make the vendor supplies on this line (SKF, say). Empty: any approved make of the material. If the material lists approved makes (Materials), a make it does not list is shown in red on the contract, is not offered to a request line, and cannot be ordered: ask whoever keeps the catalogue to approve it first. The make goes on the PO's line.
  • What is agreed of each material. If your company keeps attributes about contract lines (a grade, a standard), each material asks for them. Left empty, a line starts with what its material holds; what you write is kept over it, and clearing one clears it. The contract's page says them, and so does the page that orders from it.
  • Terms and remarks. Payment and delivery terms in words; the approvers read them.

It is saved as a draft with its own number from your company's series (Settings → Numbering, "Rate contracts"). A draft can be edited or thrown away. A PO ordered against the contract starts with what its line agrees.

Rates that move with a price index

Some vendors' prices follow a published figure (hot-rolled coil, copper). Under Contracts → Price indexes add the index, once, with what its values are in; then enter what it said for each month as the figures come out. A month that already has a value is corrected, and an order already made keeps its rate.

On a contract line, Rate moves with an index: give the base month (the index needs a value for it: the line keeps it, so a later correction of that figure never changes what was agreed) and the share that moves, in per cent of the rate. The rate you type is the base rate. An order then takes

> base rate × (1 + share × (the index now ÷ its base value − 1))

for the month it is made in. The company rule contracts.index_lag_months (Settings → Rules) makes it take the month before (or up to three before) for an index whose figure comes after the month ends.

  • A month with no value has no rate: the order is refused and says which index and month to enter; a contract is not offered on a request line while its month has none.
  • The contract's page says how each rate moves and what it is for this month; the page that orders from it shows the rate it would be made at.
  • The PO says on its note which index, which month and what the index said, so the vendor and the approvers can follow the rate.
  • The approvers see that the rates move, and that the most the contract commits to is at the base rates.
  • Stop using an index to keep new lines from following it; lines that already do keep working.

Approval

Send the draft for approval from its page. A contract commits the company for its days, so by default it always needs an approver from your company's policy (Settings → Approvals, "Rate contracts"); with nobody named it is refused, saying so. A company that does not want this turns off the rule "A rate contract always needs an approver before it is ordered from" under Settings → Rules, and a contract with no policy is then approved as it is sent.

  • While it is with the approvers it cannot be changed.
  • If they send it back, it is a draft again and shows what they said.
  • An approved contract is never edited. To change a rate or the days, close it and write a new one.

When it is in force

An approved contract is In force between its first and last day, Starts later before them and Expired after them: this is read from the days, so a contract can never be left in force past its last day.

No two prices at once: a vendor never has two approved contracts for the same material in the same days at the same plant. A contract that would is refused when it is sent for approval, naming the contract in the way; close that one first, or change this one's days or plants.

Ordering from a contract

On an approved contract that is in force, Order from this contract makes a draft PO: choose the plant (one the contract holds for) and, for each material, how much to order and by when. The rates are the contract's: they are not typed again.

  • Each quantity must be at least the material's smallest order and within what is left of its cap. The contract's page shows, for each material, what has been ordered and what is left. Over what is left, the order is refused and says how much is left; order that, and the rest by an RFQ.
  • What is ordered is read from the purchase orders that stand: a draft, one with the approvers or an issued one. A cancelled PO gives its quantity back.
  • The draft PO is a direct PO made against the contract: it says so, links back to the contract, and goes the company's way to be issued (including its approver, if your company has every direct PO approved).
  • Two buyers ordering at the same moment can never between them pass a cap.

From a request line: the fast lane

Open an accepted request line (Requests → Lines). If a contract in force fits it, the dialog says A rate contract fits this line and shows the vendor, the contract's number, the rate per unit, what is left of the cap and the last day. The list marks such lines with Rate contract · ₹rate. Order from the contract makes a draft PO in one tap: the line's whole quantity at the contract's rate, for the line's plant, needed on the day the line is (never typed, never changed on the way). You check it and issue it from the PO page, by your company's way (including its approver, if every direct PO has one).

A contract fits when it is approved and between its days, its vendor is still approved, it has the material, it holds for the line's plant, and the whole quantity is within what is left and not below the smallest order. When several fit, the cheapest rate is first; none is chosen for you. A contract that holds the material but does not fit says why in one line ("only 20 left of 100, the line needs 30", "holds for other plants", "below its smallest order of 10"); the line then goes the normal way, into an RFQ (also when its make is not one of the material's approved makes). A line is bought whole: it is never split between a contract and an RFQ.

The line becomes On a rate contract and leaves the lines to source (it cannot go into a packet). If you cancel that PO the line comes back as accepted, and the contract gets its quantity back. Your company can switch the offer off under Settings → Rules (*Show an accepted request line the rate contract that fits it, with one tap to order*).

Reminders on your home

A buyer who manages contracts is told on Home → Needs your attention when an approved contract is close to its last day ("ends in 12 days: write the next one") or when a material with a cap is nearly all ordered ("2 materials are nearly all ordered"). Both open the contract. Your company chooses how early under Settings → Rules: *Show a contract on the home before its last day by* (days; 0 turns it off) and *Show a contract on the home when a capped material is ordered this far* (per cent of its cap; 0 turns it off).

Importing the contracts you already have

Contracts → Import from Excel brings in contracts from before SourcePro, so nobody types a year of them again.

  1. Download the Template and fill it in: one row for each material of a contract, with the vendor (its name as in your vendor list, or its GSTIN), the material's code, the rate, the smallest order and the most to buy (both optional), the kind (annual or monthly, ARC or MRC), the first and last day, the plants' codes (empty: every plant), the terms and, if you want it, the make the vendor supplies on that row. Rows with the same vendor, kind, days and plants make one contract. Your own file works too if its columns have the usual names.
  2. Check the file. Nothing is made yet. Each contract is shown as a new draft, already there (the vendor has a contract of that kind for those days) or needs a fix, with the row and the reason: the vendor is not in your list or not approved yet, a material or plant code is unknown, a rate is not a number, the last day has passed.
  3. Import. The new ones are made as drafts, numbered in your series, with "Imported from …" in their remarks. Nothing is approved by an import: open each draft, check its rates, and send it for approval.

A contract with one wrong row is left out whole, never half made; fix the row and import the file again. The contracts already made are found and left alone, so importing the same file twice never makes a contract twice.

Closing early

An approved contract that no longer holds (the vendor has left, the price is no good) is closed with Close early, saying why. The reason stays with the contract and in the audit trail, and what was ordered from it stays.

Last updated 15 Oct 2026. A message with a code? See the error codes.