In September 2026, reviewing PayBridgeNP’s Nepali checkout, I found the delivery address labelled “ढुवानी”, which means transport, and saved details labelled “सुरक्षित”, which means secure. They now read “डेलिभरी ठेगाना” and “तपाईंको सेभ गरिएका विवरण”, and a test fails if the old words come back. The same review found one countdown on the eSewa page still in English digits, while every other clock used Nepali ones. It uses Nepali digits now.

Time#

Nepal is UTC+5:45, and PayBridgeNP’s servers run on UTC. A payment at 00:10 in Kathmandu is 18:25 the previous day in UTC, so a date formatted without the Nepal time zone shows the wrong day. On 1 Shrawan, the first day of the fiscal year, it would show the wrong year too.

Some providers also send times with no time zone, written in Kathmandu time. Those are read as Nepal time, and times with an explicit zone are read as given. Dates shown to buyers and merchants go through one set of Nepal-time helpers, and a test fails the build if one of those pages formats a date without the zone.

Phone numbers#

The checkout once accepted 9343434343. No operator uses 93x. Different parts of the product had their own rules. The SMS sender allowed unused ranges, and the check in the browser only allowed numbers starting with 97 or 98.

There’s now one rule, taken from Google’s open libphonenumber data, which lists the mobile prefixes in use. A mistyped number doesn’t stop a payment, but it can stop the receipt SMS reaching the buyer. A number whose prefix isn’t on the list is logged rather than refused, in case a new range has been added.

Receipts#

PDF receipts bundle Noto Sans Devanagari so the Nepali text renders. The PDF library can’t use variable font weights, so receipts use one weight and set headings apart with size and spacing.