Engineering & Infrastructure

Zero-Downtime Maintenance for a Remittance Platform: A Runbook for Upgrading With Money in Flight

What to check before the window, what to hold during it, and how to account for every outstanding response before you lift it

A money transfer platform cannot be upgraded like an ordinary website. When the work starts, money is already moving: a customer has just paid, a provider is about to confirm, a payout is with a partner, and scheduled jobs are chasing all three. Putting up a "back soon" page does nothing for any of them. The real test of maintenance is not whether the site stayed up. It is whether every payment and payout that was in flight before the work is accounted for after it. This guide is for operations, technology and support leads who run upgrades on a live remittance platform.

It gives a runbook for before, during and after a window, and a worked example of a 02:00 upgrade. Figures in the example are illustrative.

01 · PRINCIPLES

Four rules for maintenance with money in flight

  • Hold only what the work needs. If the work touches payouts, hold payouts. Do not stop customers sending because a database index is being rebuilt.
  • Let work already under way finish. A transfer that was paid before the window should not be treated as new, lost or failed because of it.
  • Never lose a provider message. A confirmation that arrives mid-upgrade must be kept and applied once, not dropped and not applied twice.
  • A person ends the window, not the clock. The scheduled finish is for planning and customer messages. Processing resumes when someone has checked it is safe.

Regulators expect this kind of control. The Financial Stability Board's 2024 recommendations for payment service providers offering cross-border services list operational risks, including third-party risks, and resilience among the risks supervision should address (see sources below).

02 · WITH REMITSO

Doing it with RemitSo

RemitSo, a white label remittance platform, treats maintenance as a state of the platform, not a page on the website.

  • Most releases need no window. Every release says plainly whether it needs downtime and what to do afterwards. None of the releases from 2026.10.1 to 2026.10.11 needed downtime.
  • Booked ahead, holding only what it needs. A window has a start, an expected finish and a customer message, and names what it holds: new transfers, payments, payouts, scheduled work, and wallet loads where wallets, an optional add-on, are licensed. You can book a quiet hour ahead or pause now.
  • Money in flight carries on. A window never takes the platform down, and transfers already under way carry on.
  • It holds until someone lifts it. An upgrade that overruns does not resume service underneath it.
  • In-flight work is visible. Scout measures every five minutes, or on demand with Measure now: payments where the provider has not answered, payouts needing action, provider messages never applied, partners failing calls and maintenance windows.
  • Nothing incoming is lost. Every incoming partner message is saved before it is processed; the raw message and the reason it failed are one click away, and it can be retried in one click.
  • Tested first. Releases reach your staging environment first, and every environment shows which release it runs.

Customer apps can ask whether the service is available, so customers see the window's message instead of an error.

03 · RUNBOOK

The maintenance runbook

Before, during and lifting the window
StageWhat to doWhoDone when
Days beforeRead the release note: does it need a window, and what does it hold? Run it on staging.Technology leadStaging runs the release; the window's scope is written down
Days beforeBook the window: start, expected finish, what it holds, customer messageOperations leadThe window is booked and the support team has the message
30 minutes beforeMeasure Scout and write down the in-flight count: payments awaiting a provider, payouts awaiting a partner, messages not yet appliedOperations on shiftOne number, split by type, recorded with the time
30 minutes beforeCheck no partner is already failing calls. If one is, decide whether to go aheadOperations on shiftGo or no-go recorded
DuringRun the upgrade. Do not lift the window to "just check" somethingTechnologyTechnology confirms the work is complete
DuringAnswer customer contacts with the booked message and the expected finishSupportNo promises beyond the message
Before liftingMeasure Scout again. Account for every item in the earlier count: answered and applied, or still waiting with a reasonOperations on shiftEvery item placed; no messages left unapplied; no new failing partner
LiftingLift the window. Watch the first new transfer through payment and payoutOperations on shiftFirst transfer clears normally
Next morningWrite a three-line note: planned and actual times, in-flight count before and after, anything left openOperations leadNote filed with the release
04 · WORKED EXAMPLE

A 02:00 window, with 14 responses accounted for

A release needs a database change that holds new transfers and payouts for up to 40 minutes. The window is booked for Tuesday 02:00, expected finish 02:40. New transfers, payments and payouts are held. The customer message reads: "We are upgrading our service. Transfers you have already paid for are safe and will continue. You should be able to send again from about 02:40."

01:30, before. Operations presses Measure now on Scout. 14 responses are outstanding: 9 payments waiting for a provider to confirm and 5 payouts waiting for a partner to confirm. No provider messages are waiting to be applied. No partner is failing calls. The count is written into the shift log.

02:00 to 02:51, during. The window starts. Customers opening the app see the message. Provider and partner confirmations keep arriving, and each is saved before it is processed. At 02:38 the database change is taking longer than planned. Nothing resumes at 02:40, because the window holds until someone lifts it. Technology confirms the work is complete at 02:51.

Accounting for the 14 before lifting the window
Outstanding at 01:30Answered and appliedStill waitingNext step for those still waiting
9 payments awaiting a provider7 (6 cleared, 1 refused by the customer's bank)2Stay on Scout under payments needing action; no payout until they clear
5 payouts awaiting a partner4 completed1Stays on Scout under payouts needing action; chased on its normal schedule, never resent without an operator confirming with the partner
Total: 14113All 14 placed; nothing unexplained

02:55, lifting. Scout shows no provider messages left unapplied, no failing partner, and the three waiting items are the same three from the earlier count, not new ones. Operations lifts the window at 02:56 and watches the first new transfer clear. The morning note reads: "Planned 02:00 to 02:40; actual 02:00 to 02:56. 14 in flight; 11 resolved during the window; 3 still waiting at lift, all pre-existing, all on Scout."

Useful test: if the count after the window is higher than before and you cannot name the new items, do not lift. Something started or stopped during the work that nobody planned for.

Watch out: a payout that a partner may already hold is the one thing never to "just retry" after a window. Confirm with the partner first. Paying twice is far harder to undo than waiting.

05 · SCOPE

Deciding what a window should hold

Match the hold to the work
The work touchesHoldLeave running
Payout partner connectionPayoutsNew transfers and payments; transfers queue for payout
Payment provider connectionPaymentsPayouts for transfers already paid
Database changes on transfersNew transfers, payments and payoutsSaving incoming messages
Rate feed or pricingScheduled work for rates; consider new transfersPayouts for transfers already quoted and paid
Customer app release onlyNothing on the platform, usuallyEverything

The narrower the hold, the fewer customers notice. A window that holds payouts for twenty minutes at 02:00 is invisible to most senders. For the wider reliability picture, see infrastructure reliability for high-volume money transfer, and for safe retries after a window, a reliable payment retry system.

See the admin features, every release's downtime in the release notes, or book a demo.

SOURCES

Sources

Checked October 2026. Regulations change; confirm current requirements with the regulator or your adviser.

FAQ

Frequently asked questions

What does zero-downtime maintenance mean for a remittance platform?

Upgrading the platform without taking it down and without losing track of transfers already in progress. Some actions may be held for a short time; nothing in flight is lost or processed twice.

What happens to a payment that is in progress when the window starts?

In RemitSo, transfers already under way carry on, and every incoming provider message is saved before it is processed. Before lifting the window, the team checks that each payment outstanding beforehand has been answered or is still visible on Scout.

Should a window end automatically at its scheduled time?

No. The scheduled finish is for planning and customer messages. In RemitSo the window holds until someone lifts it, so an overrunning upgrade does not resume service underneath it.

Do customers see an error during maintenance?

Customer apps can ask whether the service is available, so customers see the window's message rather than a failure.

How often does RemitSo need a maintenance window?

Most releases need none. Each release says whether it needs downtime; none of the releases from 2026.10.1 to 2026.10.11 did.

Built by people who have helped MSBs for years.

The risk checks on every online transfer come from what they see every day.

  • The person paying isn't the customer
  • One bank account, several customers
  • A disposable email address
  • Sign-in from a high-risk location
  • The same person signing up twice
  • A name close to a sanctions list
Book a demo

See RemitSo running with your corridors.

  • 30 minutes with our team, on video
  • The real admin panel and customer apps
  • The right way to buy it for you, explained with pricing
  • Your compliance and launch questions answered

We use these details to arrange your demo and reply to you. See our Privacy policy.

Loading the form…

Video