Internal briefing · 7 September 2026

Moove, and how it fits

Written for the Capxul team ahead of our call with Moove. No prior crypto plumbing knowledge assumed. The short version: Moove is another payment provider, most of what it does overlaps things we already reach, and the part that doesn't overlap is the interesting part.

If you read nothing else

  1. Moove is not a blockchain and not a new technology. It's a payments app with an API, sitting on top of chains that already exist. Nothing to learn, nothing to rebuild.
  2. It's just another provider. A peer of Chainrails, which we already signed. Most of what it does, we can already do.
  3. The genuinely new part is Solana, Tron and Bitcoin. Our entire stack is Ethereum-family only. Moove is the first thing on our list that reaches outside it, and every agent running on our SDK would inherit that reach.
  4. One thing blocks us, and it's small. Moove can't currently send money to an account like ours. Fixing that is a modest change on their side, and since half their product isn't built yet they're likely open to it.

01 · The basics

What Moove actually is

Moove is a consumer payments app, phone and web, with a developer API bolted on this year. A person signs up, gets a wallet, claims a name like @aaron, and can send, receive and swap crypto. In Nigeria they can also move money in and out of a bank account.

Three things it is not, because the name misleads:

And the detail that matters most for us: a "Moove wallet" is just an ordinary wallet. There is nothing special about it. It's a standard address made from a twelve-word phrase, the same kind MetaMask makes. Moove keeps a database mapping @aaron to that address. That's the whole trick. Their handle system is a lookup table, not a technology.

Which means integrating with them is ordinary web-API work. There is no new chain to support, no new programming language, no new signing scheme. Our smart-contract code is untouched.

02 · Our side

Where we're starting from

We are not new to this. Paynest shipped and ran real payroll, and it is still live with customers today. Capxul is the second product, and Chainrails, one of our first integrations, was Paynest's most loyal payroll customer. We have a track record and a live commercial relationship in exactly this space.

Capxul is a financial operations layer for businesses and freelancers. Payments are the core of it, but the product is everything around them too: invoicing, payroll, contractor payouts, spending permissions and budgets, activity history, and analytics across all of it. Whatever you would expect from software that handles money coming in and going out.

Everyone who touches Capxul gets a Safe. Not just the company. A freelancer working alone gets one. Every staff member gets one. The company itself gets one. A Safe is the standard, widely audited smart account used across the industry, and we attach Zodiac roles to it so permissions and budgets are enforced on chain rather than in our database. Each address is derived from the owner's email, so the account exists before anyone signs up and never moves when their signing key changes.

The same primitives are exposed two ways beyond the app itself: a developer SDK, and an MCP server so an AI agent can drive Capxul directly. That is what makes agentic payments work for us, and it is covered properly in section 4.

Money leaves an account through what we call rails. A rail is just a provider. We deliberately built one front door with providers plugged in behind it, rather than wiring each provider into the product separately. Chainrails is the first, and we completed KYB with them this week. Moove would be the second.

CAPXUL A Capxul account a Safe with Zodiac roles One front door the product never names a provider RAIL Direct shipping today RAIL Chainrails KYB done · not built RAIL Moove the candidate Safe to Safe, one chain No conversion, no fee BASE Cross-chain + bank payout Four bridges, four providers EVM CHAINS + FIAT Pay links, handles, swaps and non-EVM chains SOLANA · TRON · BITCOIN LEGEND SHIPPING TODAY AGREED, NOT YET BUILT MOOVE · WHAT THIS DOCUMENT IS ABOUT

DIAGRAM 1 · MOOVE IS A PEER OF CHAINRAILS, NOT A NEW LAYER

03 · Agents

How agents move money on Capxul

This is the part the Moove programme is about, and it already works. Because a Capxul account is a Safe with Zodiac roles attached, a role is a programmable spending mandate: which contracts may be called, which functions, with what limits, over what period. You grant that to a human team member. You grant exactly the same thing to an agent. It is bounded, auditable and revocable at any moment, which is what makes it safe to give an agent money-moving authority instead of handing it a private key.

We expose this through the SDK and through an MCP server, so an agent can work with Capxul directly. There are three modes, and we use all three.

Mode one

The agent prepares work

  • Through the MCP server, an agent assembles a payroll run or a batch of payouts
  • A human reviews and signs
  • The agent does the operational labour, the person keeps the authority

Mode two

The agent holds spending authority

  • A Zodiac role granted on someone else's Capxul account
  • The agent transacts inside its budget with nobody in the loop
  • Revocable instantly, and every action is on chain

Mode three

The agent has its own account

  • An agent can be a staff member in its own right
  • Its own Safe, its own budget, its own history
  • Not a key it is borrowing, an account it holds

The relevance to Moove is direct. An agent operating on Capxul today can pay anyone on an Ethereum-family chain. It cannot raise a hosted payment request, move fiat in or out, or reach Solana, Tron or Bitcoin. Moove sits underneath the SDK and the MCP server as a provider, which means every agent already running on Capxul inherits that reach the day we wire it in, with no change to how it works.

04 · The fit

Moove against what we already have

This is the honest comparison. Most of what Moove does, we already reach through Chainrails. That overlap is a good sign, not a problem. It means Moove slots into a shape we already designed, rather than us inventing a reason to use them.

CapabilityWhat we have todayWhat Moove adds
Same-chain payment Direct rail, Safe to Safe nothing new
Cross-chain transfer Chainrails, via four bridges Same capability, different provider, useful as a fallback
Swapping one coin for another Chainrails Much wider selection of coins
Crypto out to a bank Chainrails, via Yellow Card and three others Nigeria only, different banks. Overlaps
Cash in to crypto Chainrails Nigeria only. Overlaps
Solana, Tron, Bitcoin nothing, we are Ethereum-family only The one thing no current provider gives us
A shareable payment page not built, our invoicing work hasn't started Live today. Would give us the payer half of invoicing for free
A name instead of an address not built, contacts is parked @handle, already working

Three rows are genuinely new, and two of them cover work we have on the roadmap but haven't started.

Why the non-EVM reach matters more than it looks

Every chain we support today is in the Ethereum family, which is what lets an account have one address that works everywhere. Solana, Tron and Bitcoin work differently, and a Safe cannot exist on them. So we could never offer those chains as a Capxul account. But through a provider like Moove we can pay someone on them. For anyone paying contractors in markets where Tron is the default rail for stablecoins, that is a real gap closed.

05 · The mechanics

How money would actually move

The clearest first use is money coming in. A business or a freelancer raises an invoice in Capxul. We ask Moove for a payment page. The customer pays in whatever coin they happen to hold, on whatever chain, Moove converts it, and the money arrives in that person's own Capxul account.

MOOVE.XYZ ROUTE SETTLE ASK FOR PAGE MONEY SEEN PAYER The customer any coin, any chain API Payment page hosted by Moove ROUTING Convert + move one transaction SAFE Their Capxul account a Safe they control CAPXUL Invoice + reconciliation matches payment to invoice LEGEND WHERE THE MONEY ENDS UP MOOVE OUR API CALL WE WATCH THE CHAIN

DIAGRAM 2 · MONEY IN, VIA A MOOVE PAYMENT PAGE

Every step here works today except the last arrow. Moove currently sends the money to a Moove account, not to the account holder's own Capxul.

06 · The one blocker

What we need from them, and why it's small

Moove's payment pages currently pay into a wallet on the Moove account that created them. You can't tell them to pay somewhere else. Their docs are explicit that the destination can't be chosen by the caller.

To point that at a Capxul account, the address has to be registered on the Moove side. Moove has two ways to register an address: type in a twelve word phrase, or connect a wallet and sign a message to prove it's yours. A Safe has no twelve word phrase, because it is a program rather than a key, so only the second route is open.

That route is a solved problem industry wide. There is a standard, EIP-1271, for exactly this: instead of doing the maths to check a signature, you ask the account itself whether the signature is good. Moove would add one branch to their existing check. Our side already supports it, and we verified that directly against a live Capxul account.

NO YES NO YES YES NO Register an account Check the signature the ordinary way Does it match the address? Is the address a program? Ask the account itself EIP-1271 · the addition Does it say yes? Registered Rejected LEGEND THE BRANCH MOOVE WOULD ADD WHAT THEY ALREADY DO

DIAGRAM 3 · THE CHANGE WE'D ASK FOR, IN FULL

Proof our side is ready

Real results from a live Capxul account on the test network. The last line is the important one: the function exists and ran. An account without this support would fail differently.

What we asked the accountWhat it answered
What version are you?Safe 1.4.1
Who controls you?One owner, the key our user holds, which can sign
What should I sign?0x37774d66…7ff1
Is this signature valid?“Hash not approved”. It checked, and correctly said no to an empty signature

There's an even smaller version of the ask

Instead of the above, Moove could simply let us name the destination when we create the payment page. The field already exists in their data, they just don't accept it as an input. This needs no signature at all, and there is a good argument it is the right design anyway: you prove ownership to spend money, not to receive it. Nobody proves they own a letterbox before you can post them a letter.

07 · Honest risks

What's hard about this

Design boundary

Non-EVM can't hold an account

  • A Safe cannot exist on Solana, Tron or Bitcoin, because those chains work differently
  • So we can pay out to them, but nobody can hold a Capxul account there
  • This is a real limit, not a bug. Worth being clear about it before we promise anything

Half-built vendor

Only one product is live

  • Receiving money works. Sending, swapping and cash-out are announced but not built
  • So today Moove is money-in only. As a payout rail it's a promise
  • Cuts both ways. An unfinished product is a flexible one

Plumbing

Three smaller frictions

  • No automatic notifications, so we'd keep asking "has it arrived yet?" Our design assumes being told
  • Their Nigeria cash-out duplicates what Chainrails already gives us
  • Handles can be given up and reclaimed by someone else, so we must store the underlying account ID, never the name

One more, worth stating plainly for the commercial side: on money coming in through Moove, we don't control the transfer, so we can't take a margin on it the way we can on payments we send. That doesn't make it worthless, because it makes invoicing work, but it is not a revenue line on its own.

08 · The call

What we should ask them

Ordered by how much the answer changes our thinking. The first two are the only ones that decide whether this happens at all.

  1. Can a Capxul account be the destination? Either by accepting a destination address when we create a page, or by supporting EIP-1271 when registering an account. Either one works for us.
  2. When does sending money launch, and what will it look like? Fees, whether prices are locked, how repeats are handled. This is what turns Moove from a deposit surface into a real rail.
  3. Will you notify us when money arrives, rather than us polling?
  4. Is the account ID behind a handle permanent if someone changes their handle?
  5. Who do you use for bridging and swapping? Not published anywhere. We need it for counterparty risk.
  6. Is there a test environment? Nothing is documented, and we can't build against production.
  7. What's the plan for cash-out beyond Nigeria? Determines whether you complement Chainrails or duplicate it.
  8. Can we deactivate a page through the API? Currently dashboard-only, which invoicing needs.

09 · Where this lands

Recommendation

Apply, and take the call. The fit is real rather than manufactured. Moove does things we already built a home for, plus three things we want and don't have. The integration is ordinary API work, with nothing touching our contracts.

It is not on the critical path. Chainrails is the first rail and stays first. Nothing here should reorder that. What we want out of the conversation, in order: the destination change, early access to their send product, and a working relationship with a team that is still deciding what to build, which is the best time to be talking to them.

The funding is the least interesting part of the offer. Early access to what they build next is worth considerably more.