Purchase, Redemption, Interest Calculation, Sell, Write-off, Amortize, Yearly Amortize Process, GOI Category Transfer, Investment Depreciation and Mutual Fund Transfer.
| Cert No | Script | Party | Units | Face Value | Book Value | Rate | Settlement Date | Maturity Date | Accrued Interest | Maturity Value | Status | Settlement |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| {{ h.certNo }} | {{ h.scriptName }} | {{ h.party }} | {{ h.units | number }} | ₹{{ h.faceValue | number: '1.2-2' }} | ₹{{ carryingValue(h) | number: '1.2-2' }} | {{ h.interestRate }}% | {{ h.purchaseDate }} | {{ h.maturityDate }} | ₹{{ accrued(h) | number: '1.2-2' }} | ₹{{ maturity(h) | number: '1.2-2' }} | {{ h.status === 'PENDING_SETTLEMENT' ? 'PENDING SETTLEMENT' : h.status }} | @if (h.status === 'PENDING_SETTLEMENT') { } @else if (h.glTransactionId) { GL {{ h.glTransactionId }} } |
| No {{ instrumentLabel(bondType) }} holdings yet. | ||||||||||||
Market rate (Daily Script Master) as on {{ purchaseMarketRate.rateDate }}: Close {{ purchaseMarketRate.closeRate | number: '1.2-4' }} @if (purchaseMarketRate.lowRate && purchaseMarketRate.highRate) { (Low {{ purchaseMarketRate.lowRate | number: '1.2-4' }} – High {{ purchaseMarketRate.highRate | number: '1.2-4' }}) } @if (purchaseMarketRate.rateDate !== purchaseForm.dealDate) { — no rate entered for the deal date, the latest earlier rate is used. }
@if (purchaseRateOutOfRange) {Warning: the rate entered is outside the day's market range.
} } @else if (purchaseMarketRate === null) {No rate in the Daily Script Master for this script — enter the day's rate there first.
}| Dr / Cr | GL Code | GL Name | Amount |
|---|---|---|---|
| {{ l.side }} | {{ l.glCode }} | {{ l.glName || '—' }} | ₹{{ l.amount | number: '1.2-2' }} |
Select a script, enter the amount and CR. To A/c to see the entry.
}{{ redeemError }}
} @if (redeemQuote; as q) {Dr {{ redeemBankGlCode }} Bank ₹{{ q.netAmount | number: '1.2-2' }} · Cr {{ q.investmentGlCode }} Investment ₹{{ q.bookValueSold - (splitPremium(q) ? q.premiumCleared! : 0) | number: '1.2-2' }} @if (splitPremium(q)) { · Cr {{ q.premiumGlCode }} Premium ₹{{ q.premiumCleared | number: '1.2-2' }} } @if (q.profitLoss > 0) { · Cr 400405 Profit on Redemption ₹{{ q.profitLoss | number: '1.2-2' }} } @else if (q.profitLoss < 0) { · Dr 500604 Premium Amortisation ₹{{ -q.profitLoss | number: '1.2-2' }} }
}| Deal No | Script | Type | Int Date | Amount | Status | |
|---|---|---|---|---|---|---|
| {{ t.dealNo }} | {{ t.scriptCode }} — {{ t.scriptDesc }} | {{ t.lineType === 'COUPON' ? 'Coupon' : 'Provision' }} | {{ t.intDate }} | ₹{{ (t.lineType === 'COUPON' ? t.grossInterest : t.amount) | number: '1.2-2' }} | {{ t.overdue ? 'Overdue — post now' : t.postable ? 'Due today' : 'Due on ' + t.intDate }} |
Days are 30/360. A provision books the interest earned since the last coupon; the coupon then clears what is already booked. Post each line with Generate Voucher on or after its date, in date order — the JV voucher is passed as it is raised.
| Type | Int Date | From | To | Days | Int % | Gross Interest | Already Booked | Amount | Accounting | Voucher |
|---|---|---|---|---|---|---|---|---|---|---|
| {{ r.type === 'COUPON' ? 'Coupon' : 'Provision' }} @if (r.due && !r.posted) { Due } | {{ r.intDate }} | {{ r.fromDate }} | {{ r.toDate }} | {{ r.days }} | {{ sc.intRate }} | ₹{{ r.grossInterest | number: '1.2-2' }} | ₹{{ r.alreadyBooked | number: '1.2-2' }} | ₹{{ r.amount | number: '1.2-2' }} |
@if (r.type === 'COUPON') {
Dr Bank ₹{{ r.grossInterest | number: '1.0-0' }}
@if (r.alreadyBooked > 0) {
Cr {{ interestReceivableGl.glCode }} Int. Receivable ₹{{ r.alreadyBooked | number: '1.0-0' }}
}
Cr {{ sc.interestGlCode }} Int. Income ₹{{ r.amount | number: '1.0-0' }}
} @else {
Dr {{ interestReceivableGl.glCode }} Int. Receivable ₹{{ r.amount | number: '1.0-0' }}
Cr {{ sc.interestGlCode }} Int. Income ₹{{ r.amount | number: '1.0-0' }}
}
|
@if (r.posted) { Posted · {{ r.voucherNo }} } @else if (r.postable) { } @else if (r.dueSoon) { 🔔 Due {{ r.intDate }} } |
| No interest lines — check the rate, last interest date and maturity date. | ||||||||||
Interest income GL: {{ sc.interestGlCode }} — {{ sc.interestGlName }} · Interest receivable GL: {{ interestReceivableGl.glCode }}.
} @else {Select a Deal No and press Retrieve to see its interest schedule.
}HTM securities are not sold except under liquidity stress, with the Board's permission and the reason recorded.
} @if (saleQuoteError) {{{ saleQuoteError }}
} @if (saleQuote; as q) {On Settle: Dr Bank ₹{{ q.netAmount | number: '1.2-2' }} @if (q.brokerage) { · Dr 500602 Brokerage ₹{{ q.brokerage | number: '1.2-2' }} } · Cr {{ q.investmentGlCode }} Investment ₹{{ q.bookValueSold - (splitPremium(q) ? q.premiumCleared! : 0) | number: '1.2-2' }} @if (splitPremium(q)) { · Cr {{ q.premiumGlCode }} Premium ₹{{ q.premiumCleared | number: '1.2-2' }} } @if (q.profitLoss > 0) { · Cr 400405 Profit ₹{{ q.profitLoss | number: '1.2-2' }} } @else if (q.profitLoss < 0) { · Dr 500605 Loss ₹{{ -q.profitLoss | number: '1.2-2' }} }
@if (q.accruedInterest) {Interest — manual entry: the buyer also pays interest for {{ q.accruedDays }} days since the last coupon, ₹{{ q.accruedInterest | number: '1.2-2' }}. It is not in this voucher; when it reaches the bank, pass a journal entry: Dr Bank ₹{{ q.accruedInterest | number: '1.2-2' }} @if (q.receivableCleared) { · Cr 100603 Int. Receivable ₹{{ q.receivableCleared | number: '1.2-2' }} (already provisioned) } · Cr Int. Income ₹{{ q.interestIncome | number: '1.2-2' }}
} }| Deal No | Script | Buyer | Units | Rate | Settlement Date | Net Amount | Profit / Loss | |
|---|---|---|---|---|---|---|---|---|
| {{ s.dealNo }} | {{ s.scriptCode }} — {{ s.scriptDesc }} | {{ s.partyName }} | {{ s.units | number: '1.0-6' }} | {{ s.saleRate }} | {{ s.settlementDate }} | ₹{{ s.netAmount | number: '1.2-2' }} | ₹{{ s.profitLoss | number: '1.2-2' }} | |
| No pending sales. | ||||||||
Voucher: Dr 500605 Loss on Investments ₹{{ writeoffAmount | number: '1.2-2' }} / Cr {{ writeoffHolding!.glCode }} Investment ₹{{ writeoffAmount | number: '1.2-2' }}. The loss is an expense of the year; the units stay held and later sales or the redemption work from the lower book value.
}No active HTM holding was bought above face value, so there is no premium to amortise.
} @if (amortSchedule; as d) {Each 31 March: premium still to amortise × days in the period ÷ days left to maturity. Voucher: Dr 500604 Amortisation of Premium / Cr {{ d.premiumGlCode }}. The last part is written off with the redemption.
| Year End | Period | Days | Amortisation | Premium Left | Status | |
|---|---|---|---|---|---|---|
| {{ r.kind === 'MATURITY' ? 'Maturity ' + r.fyEnd : r.fyEnd }} | {{ r.fromDate }} → {{ r.toDate }} | {{ r.days }} | ₹{{ r.amount | number: '1.2-2' }} | {{ r.premiumAfter === null || r.premiumAfter === undefined ? '' : '₹' + (r.premiumAfter | number: '1.2-2') }} | @if (r.posted) { Posted {{ r.voucherNo }} } @else if (r.kind === 'MATURITY') { With redemption } @else { Projected } | @if (r.postable) { } |
| Deal No | Script | Period | Days | Premium Left | Amortisation |
|---|---|---|---|---|---|
| {{ d.dealNo }} | {{ d.scriptCode }} {{ d.scriptDesc }} | {{ d.fromDate }} → {{ d.fyEnd }} | {{ d.days }} | ₹{{ d.unamortisedPremium | number: '1.2-2' }} | ₹{{ d.amount | number: '1.2-2' }} |
| {{ amortizeDueLoaded ? 'No holding has amortisation due for ' + amortizeFyEnd + '.' : 'Enter the year end and click Show Due.' }} | |||||
No other active security with the same coupon rate, maturity date and unit value. Add it in Script Master first.
} @if (goiHolding && goiToScript; as to) {@if (to.glCode === goiHolding!.glCode) { Same GL — the deal moves to {{ to.scriptCode }}; no accounting entry is needed. } @else { Voucher on transfer: Dr {{ to.glCode }} / Cr {{ goiHolding!.glCode }} at the book value of the holding; any premium not yet amortised stays in 100707. } Units, book value and the interest schedule stay the same.
}| Cert No | Script | Book Rate | Market Price | Depreciation |
|---|---|---|---|---|
| {{ t.holding.certNo }} | {{ t.holding.scriptName }} | {{ t.holding.purchaseRate }} | {{ t.marketPrice }} | ₹{{ t.depreciation | number: '1.2-2' }} |
| No holdings require depreciation provisioning. | ||||
| Date | Voucher No | Cert No | Type | Particulars | GL Posted | Amount |
|---|---|---|---|---|---|---|
| {{ t.txnDate }} | {{ t.voucherNo }} | {{ t.certNo }} | {{ t.txnType }} | {{ t.particulars }} | {{ t.glCode ? t.glCode + ' — ' + t.glName : t.glName || '—' }} | ₹{{ t.amount | number: '1.2-2' }} |
| No transactions yet. | ||||||