The Settlement at Bellandur

N
Nishant Akbari Short Stories • 5 min read
Cover artwork for The Settlement at Bellandur

The Settlement at Bellandur

Through the fifth-floor glass, the floodlights of the business park opposite cast three rigid bands across the dark office—saffron along the acoustic ceiling tiles, white across the whiteboard, and emerald green over the row of monitors. Below, the traffic on Outer Ring Road had thinned to occasional airport cabs throwing up sheets of brown water beneath the Kadubeesanahalli flyover.

Nishant was cleaning the tip of a 0.5 mm mechanical pencil against his thumb, leaving a grey smudge of graphite on his skin. In the side mesh of his backpack sat an unpolished copper water bottle with the adhesive ring of an old label he had never fully scraped away. Deeper inside the front pocket, next to his newly renewed passport, was a shriveled marigold flower, hard as cardboard—the last dry remnant of the griha pravesh puja held five months ago in a flat in HSR Layout, before three cardboard boxes were shipped to London and the hallway went quiet.

On the screen, the reconciliation daemon was forty minutes away from the nightly banking cutoff.

"The payout job is going to pick it up at zero-two-hundred," Hari said. He was standing behind Nishant's ergonomic chair, a half-empty paper cup of machine ginger tea tilting in his hand. "If the clearing engine runs with the current state, we disburse over four crore to twenty-eight merchants for orders their inventory systems already cancelled."

"Show me the batch dump," Nishant said.

Hari leaned down and hit two keys. The query returned a clean, tabular slice of the midnight surge:

batch_id     | partner_bank | total_txns | internal_status | settlement_status | delta_inr
-------------+--------------+------------+-----------------+-------------------+---------------
SETTL_260814 | HDFC_UPI     | 1,418      | TIMEOUT_FAILED  | SETTLED_SUCCESS   | 4,12,04,500.00

Between 23:40 and 00:05, during the first twenty-five minutes of the Independence Day electronics sale, their acquiring bank’s UPI switch had stopped returning confirmations within the gateway’s thirty-second window. Under high load, an upstream commerce worker had collapsed the unconfirmed TIMEOUT_UNKNOWN state into a fatal TIMEOUT_FAILED. The checkout microservice had treated the timeout as a final rejection, firing inventory-release events; the phones and noise-cancelling headphones had returned to the pool and been bought by subsequent shoppers within minutes.

Then, at 01:14, the reconciliation file from their acquiring bank, built from the latest UPI settlement cycle, had dropped into the secure directory.

Every single one of those 1,418 debits had cleared at the payer's bank. Four crore twelve lakh rupees were reflected in the payment aggregator’s escrow account. The money was physically present in the pool, but the merchant order databases held no corresponding fulfillment records.

"If we let the automated settlement daemon fire," Hari said, his voice flat with fatigue, "the merchants get paid for ghost shipments. By tomorrow afternoon, fourteen hundred customers wake up on a holiday with tens of thousands debited from their accounts, no order confirmation, and customer support with an automated five-day resolution ticket. They'll go to consumer court before the long weekend ends."

"And if we push an immediate refund batch right now?" Nishant asked.

"The acquiring bank hasn't finished its own settlement shadow audit," Hari said, tapping the edge of the desk. "If their morning clearing sweep triggers an automatic return on their end while our refund worker also dispatches a debit from the escrow pool, we double-refund. If both refund paths fire, we create an escrow shortfall against the clean merchant liabilities."

Nishant spun the pencil once between his knuckles. A single WhatsApp notification flashed on his phone screen on the mousepad: a message from a UK number asking if he had remembered to settle the remaining society maintenance for the HSR flat. He did not unlock the phone.

The system was not broken. Every component had functioned according to its local specification: the acquiring switch had eventually confirmed the debits; the clearing file had reported the exact truth of the balances. The failure was merely the gap between instantaneous expectation and the heavy, nocturnal machinery of banking settlements.

"We don't trigger the refund worker, and we don't disburse to the merchants," Nishant said.

"That means splitting the batch manually," Hari said. "You have eighteen minutes before the settlement daemon takes an exclusive table lock."

Nishant pulled his chair in. His fingers moved without hurry across the low-profile keyboard. He opened a transaction block against the settlement staging schema:

BEGIN;

UPDATE recon_settlement_staging
SET settlement_disposition = 'HOLD_MANUAL_SUSPENSE',
    audit_reason = 'UPI_SUCCESS_GATEWAY_TIMEOUT_MISMATCH'
WHERE batch_id = 'SETTL_260814'
  AND internal_status = 'TIMEOUT_FAILED'
  AND settlement_status = 'SETTLED_SUCCESS';

INSERT INTO recon_suspense_ledger (
    rrn, npci_txn_id, amount_inr, customer_vpa, hold_category, created_at
)
SELECT rrn, npci_txn_id, amount_inr, customer_vpa, 'UNFULFILLED_ESCROW_HOLD', NOW()
FROM recon_settlement_staging
WHERE settlement_disposition = 'HOLD_MANUAL_SUSPENSE';

The staging query returned 1,418 rows staged for isolation.

Hari leaned over, verified the row count and the checksum of ₹4,12,04,500 against the acquiring bank's raw statement file on his laptop, and plugged his physical YubiKey into the side hub, tapping the gold contact to sign the production change window.

Nishant typed the closing line:

COMMIT;

The terminal returned in three seconds:

UPDATE 1418
INSERT 0 1418
COMMIT

The four crore was quarantined. When the automated cron triggered at 02:00, the daemon would disburse the clean sixty-eight crore of undisputed transactions to the merchants. The 1,418 disputed rows would sleep in the suspense ledger until the 07:00 AM banking reconciliation window, where a controlled, single-path refund-to-source batch could execute against the verified bank statement without the risk of duplicate payouts or an escrow deficit.

Hari looked at the confirmation lines, took a final sip of his cold ginger tea, and crushed the paper cup between his palms.

"That'll hold," Hari said. "The morning on-call can verify the statement with the escrow manager at eight."

"It'll hold," Nishant said.

Hari picked up his laptop bag, muttered something about catching a cab toward Sarjapur before the rain flooded the underpass, and let the heavy glass door of the floor swing shut behind him.

Nishant closed the terminal tabs one by one. He zipped his backpack, the brass zipper catching briefly on the frayed fabric of the front pouch where the dried marigold rested against his passport.

He walked down the fire stairs instead of waiting for the elevator. At the ground level, the security guard was half-asleep on a plastic chair beneath the fluttering tricolor banner tied to the porch railing.

Outside, the rain had settled into a fine, warm mist. The air smelled of wet asphalt and eucalyptus leaves crushed under tires. Nishant stood beneath the overhang for a minute, looking at the yellow reflections of the sodium streetlights stretching across the empty tarmac of Outer Ring Road, before turning his collar up against the damp and walking toward the main gate.


#ShortStories #UrbanFiction #Bengaluru #Storytelling #FlashFiction

Read more thoughtful essays and original stories on WritOn.

Open in WritOn App