atomic
← All projects
ZyncPay screenshot

ZyncPay

A crypto payment platform that lets users pay for everyday services — airtime, data bundles, TV subscriptions, electricity, education PINs — using STX, sBTC, or USDCx, settled on Stacks. Nigeria is the launch market, built on a pluggable aggregator architecture designed to expand to new countries and providers without touching core code.

Role

Co-Founder & Engineer — Architecture, API, wallet integration, payment verification, aggregator system

Duration

Feb 2026 – Present

Problem

Crypto payments usually stop at wallet-to-wallet transfers. Turning that into "pay a real-world bill with crypto" means bridging on-chain payment verification with third-party fulfilment providers, without locking to one country or one provider.

Solution

Built a full payment flow: users connect a Stacks wallet, pick a service and plan, and submit a purchase. The server responds with HTTP 402 and payment requirements, the wallet signs and broadcasts the transaction on-chain, and once the server verifies it via the Hiro Stacks API, it hands off fulfilment to a pluggable aggregator (VTPass for the Nigeria MVP) that delivers the airtime, data, or bill payment.

Key Engineering Decisions

Built service fulfilment behind an Aggregator interface rather than hardcoding VTPass directly into the API and UI. Each aggregator implements getProviders, getPlans, fulfil, and validateRecipient, and self-registers into a central registry that auto-maps its supported countries and service types. Adding a new country or provider means writing one new file and registering it — no changes to API routes or UI code.

Architecture

On-chain payment verification is decoupled from service fulfilment. Payment requirements use the HTTP 402 flow, verified against the Hiro Stacks API once the wallet broadcasts a transaction — only after that succeeds does the aggregator layer get called to deliver the service. Live pricing (STX/sBTC/USDCx to local currency) comes from CoinGecko with a short cache window rather than hitting the API on every request.

Engineering Highlights

  • End-to-end payment flow: wallet connect → service selection → on-chain payment → verified fulfilment
  • Pluggable aggregator pattern for adding new countries/providers without touching core code
  • Live crypto-to-local-currency pricing with caching
  • Payment-gated API using the HTTP 402 standard

Tech Stack

Next.js 16TypeScriptBunshadcn/uiTailwind CSS v4@stacks/connect@stacks/transactionsHiro Stacks APICoinGecko APIVTPass

Results

5 live services (airtime, data, TV, electricity, education PINs) in Nigeria at MVP.

Biggest Challenge

Verifying payment on-chain before triggering an irreversible, real-world fulfilment action (like an airtime top-up) — the system has to be confident the transaction actually settled before handing off to the aggregator, since fulfilment can't be undone.

Lessons Learned

Designing the aggregator boundary early made the difference between a payment app tied to one country and a platform that can expand market by market.