UPI payments infrastructure

The UPI gateway that verifies itself.

Host-to-host APIs, embedded UPI intent, and automatic UTR verification that confirms every payment in real time. Multi-rail routing, payouts on the same key, chargeback intelligence and books that close themselves, so no rupee goes unclaimed and no customer waits.

Real-time auto-verification, self-healing routing, and books that close themselves. The work the rest of the market does by hand, JUNEPAY does in software. That is the moat.

Real-time
auto-confirmed
150+
capabilities
99.9%
uptime
7
SDK languages

Accepts every UPI app. Settles across leading bank rails.

Google Pay PhonePe Paytm BHIM Amazon Pay WhatsApp Pay RuPay IDFC FIRST Bank HDFC Bank ICICI Bank Axis Bank SBI

and every UPI-enabled bank app

Host-to-host API Embedded UPI intent Dynamic QR Hosted checkout Payment links Bank transfer Payouts: IMPS · NEFT · RTGS · UPI
How it works

Create. Pay. Auto-verify. Settle.

One API call to collect. Everything after is automatic.

Create a payment

POST one request to the host-to-host API with your order and amount. Get back a UPI intent, a QR, and a hosted link. Your choice.

Customer pays

They pay in any UPI app, embedded in your UI from the intent or on a branded hosted checkout.

Auto-verify

The payment is matched and confirmed in real time. No one types a UTR. You receive a signed webhook the moment it clears.

Settle

Funds are reconciled to the rupee and settled to your bank, instantly or on your schedule. Pay out to any bank account or UPI beneficiary with the same key.

The difference

Automatic UTR verification

The status quo is a person matching bank references by hand, or a script that keeps breaking. JUNEPAY confirms payments in real time on the server.

No manual UTR entry. Ever.

Real-time confirmation

Credits are matched to orders the instant they land, by reference first and then amount.

Zero unclaimed money

Late, mistyped, or expired-order payments are automatically recovered and reconciled, never left to become a dispute.

Self-monitoring rails

Health checks flag a stalled or thinning channel before it can cost you a payment.

Developers

A true host-to-host API

Integrate entirely server-to-server, with no forced redirect. Branch on the response mode and build the checkout you want.

  • Zero-dependency SDKs: Node, Python, PHP, Ruby, Go, Java, C#.
  • Idempotent on order_id, so retries are safe and never double-charge.
  • Signed webhooks (HMAC-SHA256 of the raw body) with dedup, retries, and a dead-letter queue.
  • Live + test keys, sandbox mode, one-click test webhook, full OpenAPI reference.
  • A missed-callback sweep every three minutes: no terminal order ever goes without its webhook.
  • Batch reconciliation (500 orders per call), order-status, refund, balance and payout endpoints on the same key.
  • Per-merchant IP allowlist with CIDR ranges, 1,200 create calls per minute, and every rejected call logged with a spike alert.
  • Configurable payment window per platform, per merchant, or per order, from 1 to 20 minutes.
Create a payment, then verify the webhook javascript
// 1) Create a payment (host-to-host)
const res = await junepay.paymentRequests.create({
  order_id: 'INV-1001',
  amount: 499.00,
  customer: { name: 'A. Sharma', email: 'a@example.com' },
  callback_url: 'https://you.com/junepay/webhook',
});

// Branch on the mode you got back:
if (res.checkout.mode === 'upi_intent') {
  render(res.qr);            // your own embedded checkout
} else {
  redirect(res.paymentLink); // hosted checkout
}

// 2) Verify the signed webhook (raw body)
app.post('/junepay/webhook', express.raw({ type: '*/*' }), (req, res) => {
  const ok = junepay.verifyWebhook(req.body, req.headers['x-signature']);
  if (!ok) return res.sendStatus(401);
  res.sendStatus(200);       // ACK fast, then process
});
Everything we have built

One platform. 150+ capabilities.

The complete catalogue, from the first API call to payouts, reconciliation and risk. Search it, filter it, read every line. Nothing here is a roadmap item; it is all running in production.

150+
capabilities
12
product areas
321
API endpoints
81
console views
7
SDK languages
No capability matches that search. Try a shorter word.
Engineering at a glance

Built fast, tested hard, shipped daily

Real counts from the codebase that runs JUNEPAY in production. Not projections.

321
API endpoints
Merchant, payout, partner, console and operator routes, inventoried and pinned by a test.
81
console views
Across six role portals: merchant, agent, operator, admin, partner and treasury desk.
1,500+
automated test cases
298 test files and an end-to-end suite on a disposable database, run in CI on every push.
129
schema migrations
Applied automatically at boot, idempotent, with data-folds so a redeploy never strands a column.
17
self-healing timers
Expiry sweeps, status polls, hourly reconciles, missed-callback replays and keep-alives, all unattended.
12+
rail adapters
Pay-in rails behind one contract, switchable by an admin without a merchant code change.
22
chat-ops commands
Live volume, money to resolve, health, capacity and gated actions from an operator's phone.
7
zero-dependency SDKs
Node, Python, PHP, Ruby, Go, Java and C#, every one checked against a single conformance suite.
Phase 1

Verify itself

Real-time credit matching, reference-first, with orphan rescue and a zero-unclaimed guarantee.

Phase 2

Stay on

Self-balancing routing, limit shaping, dead-session failover and a rail-health watchdog.

Phase 3

Any rail

A pluggable rail contract, admin-switchable registry, bank-transfer pay-in and multi-account rails.

Phase 4

Money out

Payouts to bank and UPI on the same key, partner payout API, treasury and auto-settlement.

Phase 5

Know the payer

Chargeback risk scoring, a payer identity graph, holds and dispute-file reconciliation.

Shipping cadencecommits per week · 21 weeks · 97 active days
Jun 2026JulAugSepOct 2026
Make it yours

Embed it, or drop it in

Build a fully embedded checkout from a UPI intent, or use a branded hosted page. Same API, your call.

  • Embedded (H2H): render the dynamic QR, open app deep links (Google Pay, PhonePe, Paytm), or show a “pay to VPA” UI. No redirect.
  • Hosted checkout: a polished, mobile-first page in four themes.
  • Payment links & bills: share a link or invoice, no code required.
  • Redirects: success/failure URLs and per-request callback URLs.
₹499.00
pay in any UPI app
Classic
₹499.00
pay in any UPI app
Orange
₹499.00
pay in any UPI app
Blue
₹499.00
pay in any UPI app
Dark
Reliability & scale

Engineered to stay up under load

Every order is routed to the healthiest channel with headroom. A dead channel is skipped the moment it is detected, and the merchant never notices.

Smart routing

Self-balancing across a pool with a hard daily-cap ceiling. No overrun, no clumping.

Automatic failover

A dead session is detected and dropped from routing before it costs you a payment.

Limit shaping

Per-account daily cap, per-transaction cap, new-account ramp, and fill taper protect every channel.

Multi-rail

One integration; switch or add underlying rails with no code change. Genuine outages fail over automatically.

Rail-health watchdog

Detects a silently suspended channel and a thinning pool before collection drops, and alerts once per outage.

17 self-healing timers

Expiry sweeps, status polls, hourly late-settle reconciles, missed-callback replays and keep-alives run unattended.

Callbacks never lost

A durable outbox with eight retries and a three-minute sweep that re-fires any terminal order missing its webhook.

Capacity-aware

Amount-aware routing, per-provider daily caps with first-hit alerts, and maintenance mode that keeps rails live.

Close of day · rail vs ledgerbalanced
Credits on rail₹4,20,000
Matched to orders₹4,20,000
Differences surfaced0
Unclaimed exposure₹0
reports sent · business · tech · ops · merchantsauto
Reconciliation & reporting

Books that close themselves

Automated rail-vs-ledger reconciliation and end-of-day reports, for every audience.

  • Close-of-day rail-vs-ledger: every difference surfaced automatically.
  • End-of-day reports for four audiences: business, tech, operations, and each merchant.
  • Real-time dashboards: conversion, volume, and per-channel / per-merchant breakdowns.
  • Unclaimed-money exposure tracked continuously, so your chargeback risk is visible at a glance.
  • Flagship EOD report: hourly curve, peak hour, like-for-like trend, projection, per-merchant conversion and expiry, and a plain-English insights engine.
  • Failure-analysis lenses: success by load, by ticket size and by hour, with expiry root causes tagged on every lapsed order.
  • Two-way live reconcile against upstream accounts: paid-but-uncredited and credited-but-unpaid must both be empty.
  • Export anything: any window, any status, any columns, Excel-safe UTRs and Indian number grouping, with no row cap.
Security & trust

Built to be trusted with money

Signed webhooks

HMAC-SHA256 over the raw body, with event dedup, retries, and a dead-letter queue.

Hashed API keys

Keys are hashed at rest and shown once; one live + one test key, with rotation.

2FA & RBAC

Two-factor for privileged roles, role-based access, and audited impersonation.

Encrypted & auditable

Credentials sealed at rest; a tamper-evident, append-only audit chain; per-merchant IP allowlists with CIDR.

Money-flow integrity

Every money mutation locks and re-checks inside the transaction: amount cover, duplicate UTR, and a database trigger that blocks re-settling a reversed order.

Two-part auth for payouts

Money-out calls need key and secret, are off until an admin enables them, and never send a beneficiary without a read-back check.

Human gate on large sums

A per-merchant ceiling holds high-value automated approvals for a person, and rate limits cover login, API, UTR and links.

Kill switches

Pairing, auto-settle and auto-verify each have an independent switch, so one leak or one bad day never takes the platform with it.

Money out

Payouts on the same key

Pay-in and pay-out are one product on one credential. Send money to any bank account by IMPS, NEFT or RTGS, or to a UPI beneficiary, from the API you already integrated.

  • One integration: no second account, no second dashboard. An admin flips payouts on and the endpoints start working.
  • Bank and UPI: IMPS, NEFT, RTGS to an account + IFSC, or a UPI payout to a VPA, with strictest-common beneficiary validation.
  • Honest states: created, processing, success, failed and REVERSED, each delivered as a signed webhook and queryable by your own transaction id.
  • Instant settlement: opt-in auto-settle sweeps your available balance to a saved bank the moment it clears a threshold.
  • Partner payout API: an operator queue with pluggable providers for settlement partners, including cross-border INR settlement.
  • Treasury in view: float attribution, a treasury ledger, refunds and tiered commission in one place.
Payouts · todaylive
Asha RaoWD-1042 · IMPS · HDFC••1234
₹25,000success
Kiran TradersWD-1043 · NEFT · SBIN••0098
₹1,80,000processing
rohit@upiWD-1044 · UPI
₹4,500success
Meera TextilesWD-1045 · RTGS · ICIC••7781
₹3,20,000success
S. NairWD-1046 · IMPS · AXIS••2210
₹9,999reversed
x-api-key + x-api-secret · signed webhookssame key as pay-in
Risk & chargebacks

Know the payer, not just the payment

Chargebacks are the hidden cost of UPI collection. JUNEPAY scores every payment the moment it settles, remembers who disputed before, and reconciles every dispute file back to the order.

Risk score per payment

A probabilistic model over amount, 24-hour payer total, history and app, calibrated on real dispute files. It flags; you decide the policy.

Payer identity graph

Recognises the same person across rotated UPI handles, names and phone numbers, so a block on one covers them all.

Dispute files, reconciled

Upload a chargeback file: every row is matched by RRN or reference, reported per merchant with "charged to you?", and held payments are worked to a resolution.

Controls that fit the risk

Optional daily limit per payer, name watch, holds, VPA name verification, and a reversal path that undoes the ledger and blocks re-settling.

For you Merchants & platforms

For merchants & platforms

Go live fast. Collect on every UPI app. Stop chasing “paid but not updated”.

Start integrating
  • Integrate once: host-to-host API, embedded UPI intent, or a hosted checkout.
  • Accept every UPI app; ship a branded, themed checkout.
  • Payments confirm automatically in real time, so far fewer “I paid, where's my order?” tickets.
  • Fast, predictable settlement to your bank; instant/auto-settle available.
  • Real-time dashboard, analytics, and end-of-day reports.
  • No chargebacks from unclaimed payments. Every credit is reconciled.
  • Pay out to bank or UPI with the same key, and see every payout state including reversals.
  • Risk flags on every payment, dispute files reconciled for you, and an in-portal "What's New" so you always know what shipped.
For you Shareholders & partners

For shareholders & partners

A moat built from automation, reliability, and zero leakage.

Request the investor brief
  • Defensible moat: real-time auto-verification, self-healing routing, and automated reconciliation that others do by hand.
  • Operational leverage: high volume operated by a small team through automation and chat-ops.
  • Reliability retains revenue: uptime-per-account and zero-unclaimed protect the volume you win.
  • Multi-rail resilience: never dependent on a single gateway.
  • Transparent reporting: audience-specific views for business, tech, and operations.
  • Scalable architecture: multi-role, marketplace-grade, 321 endpoints and 81 console views already in production.
  • Two revenue lines on one stack: pay-in and pay-out share a key, a ledger and a risk engine.
  • Engineering velocity: 700+ commits since June 2026, 1,500+ automated tests, deploys daily.
The case

Why teams choose JUNEPAY

It verifies itself

Payments are confirmed in real time on the server. No one pastes bank references by hand, and there are no brittle scripts to babysit.

Zero unclaimed money

Every rail credit is matched to an order. Late or mistyped payments are automatically recovered, so money never strands and never turns into a dispute.

It stays on

Self-balancing routing, automatic failover on dead sessions, and per-account limit shaping keep collection flowing at volume.

One integration, any rail

Switch the underlying gateway or add a new rail without changing a line of your code.

It reconciles itself

Automated close-of-day rail-vs-ledger reconciliation replaces the nightly spreadsheet. Differences surface instantly.

Built for scale, run by few

Automation and chat-ops let a small team operate high volume with real-time oversight.

Money in and money out

Collections and payouts on one key, one ledger, one webhook signature. No second vendor for disbursements.

It knows the payer

Risk scoring, an identity graph and dispute-file reconciliation turn chargebacks from a surprise into a managed number.

It explains itself

Every report ends in plain-English findings: why orders expired, which hour converts worst, where money is waiting to be resolved.

By the numbers

Performance that compounds

99%
payments auto-confirmed
< 60s
average confirmation time
Same day
settlement
₹0
unclaimed money
99.9%
collection uptime
7
SDK languages
Node · Python · PHP · Ruby · Go · Java · C#
150+
capabilities in production
12+
rail adapters, one contract
3 min
max gap before a missed callback is re-fired
The platform

A full operations layer, not just an API

Multi-role

Purpose-built consoles for merchants, operators, finance, and admins.

Chat-ops

Run the floor from your phone: live volume, capacity, and gated actions.

Real-time control

Live snapshots, capacity meters, and an orphan queue that stays empty.

Money movement

Settlements, payouts, wallet, tiered commission, refunds, and treasury.

Reports for every audience

Business, rails, tech, agents and each merchant, nightly to Telegram and email, or on demand as of any time of day.

Needs attention

A short list of only what an operator must act on now, instead of a wall of numbers.

Usage telemetry

Adoption of every route and view by role, with rising versus collapsing trends, so we promote, fix or retire on evidence.

Announcements

An in-portal changelog with targeting by integration mode or merchant, pinned banners and read tracking.

Questions, answered

Ready to collect on UPI the modern way?

Integrate in an afternoon. Confirm every payment automatically. Settle without the wait.