Contact

ISPMT Function in ONLYOFFICE Spreadsheet Editor: Syntax and Examples

Financial Intermediate ONLYOFFICE Spreadsheet Editor

Calculate straight-line declining-balance interest with explicit period indexing, sign conventions and a comparison with annuity interest.

Verification status: See the evidence and test scope described in this guide. How formula examples are checked

Quick answer

=ISPMT(0.10,1,4,1200) is expected to return βˆ’90. The inspected formula is pv Γ— rate Γ— (per/nper βˆ’ 1): interest declines linearly as the period index increases. This differs from IPMT’s interest component of a constant-total-payment annuity.

Indexing caution: the official help says per must be from 1 to nper. The version-pinned implementation does not enforce that range and evaluates the same expression at 0, where it gives the full initial-balance interest. This guide distinguishes the documented interval from source-derived boundary behavior rather than silently assuming one-based annuity indexing.

Syntax and rate units

=ISPMT(rate, per, nper, pv)

All four arguments are required; there are no defaults, future-value argument or payment-timing flag.

Argument Meaning
rate Rate per modeled period
per Period index used in the straight-line expression
nper Total number of modeled periods; nonzero in the source guard
pv Starting amount, with sign chosen consistently

For monthly periods, divide an appropriate nominal annual rate by 12 and express the term in months. Do not pass an annual rate unchanged alongside monthly period counts. A positive starting amount and positive rate yield negative interest for indices below nper; reversing pv reverses the sign.

Step-by-step: a four-period straight-line example

  1. Enter rate 0.10 in B1, number of periods 4 in B2 and starting amount 1200 in B3.
  2. Enter indices 1, 2, 3, 4 in A6:A9.
  3. Put =ISPMT($B$1,A6,$B$2,$B$3) in B6 and fill down.
  4. Label the rows by their actual index; do not relabel them as a different repayment convention.
Index Source expression Expected interest
1 1200Γ—0.10Γ—(1/4βˆ’1) βˆ’90
2 1200Γ—0.10Γ—(2/4βˆ’1) βˆ’60
3 1200Γ—0.10Γ—(3/4βˆ’1) βˆ’30
4 1200Γ—0.10Γ—(4/4βˆ’1) 0

The implied equal principal step is 1200/4 = 300. At index 1 the remaining amount in this formula is 900; at index 4 it is zero. The source-derived control =ISPMT(0.10,0,4,1200) is expected to return βˆ’120, but index 0 lies outside the help’s stated 1-to-nper interval. This is an implementation observation from reading source, not an application-tested compatibility promise.

Advanced case: align the model with the repayment schedule

If a fictional equal-principal schedule charges interest on opening balances 1200, 900, 600, 300 before each principal repayment, the corresponding source-expression indices are 0, 1, 2, 3. Its expected interest amounts are βˆ’120, βˆ’90, βˆ’60, βˆ’30, totaling βˆ’300. The documented-index table 1, 2, 3, 4 instead totals βˆ’180 because it omits the initial full-balance charge and includes the terminal zero.

That difference is an indexing/model decision, not rounding. Decide when the interest is assessed and when principal is reduced before constructing the worksheet. If the agreement instead specifies equal total payments, use the annuity model associated with IPMT and PMT; straight-line principal reduction generally gives changing total payments.

A monthly arithmetic control is =ISPMT(0.12/12,1,12,1200), expected βˆ’11: the rate is 1% per month and the index 1 balance is 1100. This illustrates rate/period consistency without asserting that a real loan follows this repayment structure.

Errors and unchecked inputs

The explicit source domain guard is nper=0, which returns #DIV/0!. Existing conversion errors propagate. The wrapper does not floor per or nper, and it does not reject a negative count or an out-of-range index. For example, the expression at per=5,nper=4,pv=1200,rate=0.10 gives +30. That numerical result is not a sensible continuation of a fully repaid positive loan.

Validate positive integer term lengths and the intended index range in your worksheet rather than relying on the function to reject economically invalid inputs. A zero rate gives zero for nonzero nper; a negative pv reverses the worked signs. Do not remove the sign merely to make a table look positive without documenting whether it represents cash paid or received.

Availability and verification scope

Checked October 18, 2026 against the official ISPMT 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.