PRICEMAT Function in ONLYOFFICE Spreadsheet Editor: Syntax and Examples
Price a security that pays its interest at maturity, separating the clean quote from accrued issue-to-settlement interest.
Verification status: See the evidence and test scope described in this guide. How formula examples are checked
Quick answer
=PRICEMAT(DATE(2026,7,15),DATE(2027,1,15),DATE(2026,1,15),0.05,0.10,0) is expected to return 97.5 per 100 face value. The issue-to-maturity interest is paid at maturity; the function discounts that final amount and subtracts issue-to-settlement accrued interest to obtain the quoted price.
This is a different cash-flow pattern from periodic coupons. There is no payment-frequency argument and no customizable redemption amount: the source formula uses principal 100.
Syntax and chronological inputs
=PRICEMAT(settlement, maturity, issue, rate, yld, [basis])
issue is the original issue date, rate is the annual interest rate accruing from issue and yld is the annual yield used to price the remaining term. Enter rates as decimals, such as 0.05 for 5%. For the intended model, enforce issue ≤ settlement < maturity yourself.
Basis defaults to 0 when omitted. The documented codes are 0 US (NASD) 30/360, 1 actual/actual, 2 actual/360, 3 actual/365 and 4 European 30/360. Use DATE for unambiguous numeric dates, settlement strictly before maturity, and consistent monetary units. Brackets mark optional syntax and are not typed.
Define three year fractions on the selected basis: u from issue to maturity, a from issue to settlement and t from settlement to maturity. The source evaluates 100 × ((1+u×rate)/(1+t×yld) − a×rate). The accrued-interest subtraction is why the returned clean quote differs from the full settlement value of the final cash flow.
Step-by-step: reconstruct the quoted price
- Put
=DATE(2026,7,15)in A2, settlement. - Put
=DATE(2027,1,15)in B2, maturity, and=DATE(2026,1,15)in C2, issue. - Enter rate
0.05in D2, yield0.10in E2 and basis0in F2. - In G2 enter
=PRICEMAT(A2,B2,C2,D2,E2,F2).
Under 30/360, u=1, a=0.5 and t=0.5. The maturity payment is 100×(1+1×0.05)=105. Its settlement value at 10% simple annual yield is 105/(1+0.5×0.10)=100. Accrued interest is 100×0.5×0.05=2.5. The clean quote is therefore 100−2.5=97.5.
| Formula | Expected price per 100 |
|---|---|
=PRICEMAT(A2,B2,C2,0.05,0.10,0) |
97.5 |
=PRICEMAT(A2,B2,C2,0.05,0.10) |
97.5, default basis 0 |
=PRICEMAT(A2,B2,C2,0.05,0,0) |
102.5 |
=PRICEMAT(A2,B2,C2,0,0.10,0) |
95.2380952381 approximately |
The zero-yield control removes discounting but still subtracts accrued interest. The zero-rate control has no issue interest and prices only the final principal. Both zero rate and zero yield are permitted by this wrapper’s explicit guards.
Advanced case: convert a clean quote to a settlement amount
For a fictional face amount of 10,000, the clean-price component is 97.5×10,000/100=9,750. The model’s accrued-interest component is 2.5×10,000/100=250, making the full settlement value 10,000 before any separate fees. The expected maturity payment is 10,500.
Do not treat the clean-price component alone as the amount invested when checking the yield: 105/100 over half a year gives 10%, while 105/97.5 would mix a full redemption cash flow with a quote that excludes accrued interest. Keep clean price, accrued interest and full settlement value in separate labeled columns.
The three year fractions are calculated separately. On leap-year or multi-year actual/actual spans, do not assume that a+t always reproduces u merely because the calendar dates are consecutive. Use the specified day-count implementation consistently.
Errors and issue-date limitations
Negative rate or yield, settlement at/after maturity, invalid basis and unsupported date serials return#NUM! in the inspected source after conversion. Date serials and basis are floored. Rate and yield remain ordinary numeric rates.
The wrapper checks that issue is a supported date but does not explicitly reject issue after settlement or maturity. The shared year-fraction calculation can still produce a number for an economically ill-ordered input set. A returned price therefore does not validate the chronology. Enforce the chronological relationship above before evaluating the formula.
YIELDMAT is the corresponding maturity-interest yield calculation, but its source rejects a zero issue rate even though PRICEMAT accepts it. Do not assume every boundary input is supported by both directions. These functions do not model periodic coupons, irregular interim cash flows or business-day adjustments.
Availability and verification scope
Checked October 18, 2026 against the official PRICEMAT help and official SDKJS source tagged v10.0.0.169. Desktop Editors 10.0 was released October 13, 2026. The original introduction version for this individual function is not established; current help does not mark it retired or deprecated.
All results in this guide are expected values from documentation, source inspection and independent arithmetic, not application observations. Neither the application nor its calculation engine was used to test these examples. The tag matches the installed version/build designation but does not establish identical behavior in every older release, mobile client, server deployment or imported workbook. Examples use English names and comma argument separators; adapt separators to editor settings. These fictional calculations explain a function, not an investment or borrowing recommendation.