Payme Integration for Your Website and App, Explained
How Payme integration website app works in Uzbekistan: merchant setup, API flow, costs, timelines, and what to check before launch.

If you sell anything online in Uzbekistan — a Telegram bot store, an e-commerce site, a booking app — your customers will ask for one thing before they ask for anything else: “Can I pay with Payme?” With 10 million-plus users, Payme is the most widely used payment method in the country, and Payme integration website app projects are one of the most common technical requests we get from Tashkent and Samarkand founders alike.
This guide walks through how Payme integration actually works, what it costs, how long it takes, and the mistakes that slow teams down. No fluff — just what you need to plan the build.
Why Payme Comes First for Most Uzbek Businesses
Payme dominates because it’s where the wallets already are. Click is a close second, and Uzum Bank is growing fast, but if you can only launch one payment method this quarter, Payme is almost always the right first move for a UZS-priced storefront, marketplace, or subscription app. Card rails like UzCard and Humo still matter for some banking-adjacent flows, but for everyday checkout, Payme is the default customers expect.
What Payme Integration Actually Means
Technically, it means your backend talks to Payme’s Merchant API to create transactions, confirm payments, and handle callbacks (webhooks) that tell your system a payment succeeded, failed, or was cancelled. On the frontend, this usually shows up as a Payme checkout button, a redirect to Payme’s payment page, or an embedded widget — depending on whether you’re building for web, iOS/Android, or a Telegram bot.
How the Integration Flow Works, Step by Step
- Merchant registration. You register as a Payme merchant and get API credentials (merchant ID, secret key).
- Transaction creation. Your backend creates a transaction record when a customer checks out, sending amount and order details to Payme.
- Payment initiation. The customer is redirected to Payme (or uses the in-app flow) to authorize payment from their wallet or card.
- Callback handling. Payme calls your server’s webhook endpoint to confirm, cancel, or reverse the transaction — this is the part most teams underestimate.
- Order fulfillment. Your system updates order status only after a verified callback, never before.
Libraries like PayTechUZ exist specifically to unify this flow across Payme, Click, and Uzum, which is worth considering if you plan to add more providers later — see our guide on accepting online payments in Uzbekistan across Payme, Click, and Uzum for a side-by-side comparison.
Common Integration Mistakes
- Trusting the client-side redirect as proof of payment (always verify server-side via webhook).
- Not handling partial refunds or cancellations, which Payme supports and customers expect.
- Skipping idempotency checks, so a retried webhook double-credits an order.
- Hardcoding sandbox credentials into a production build.
What It Costs and How Long It Takes
Every project is different, but rough bands buyers search for typically look like this:
| Scope | Typical price (so’m) | Typical timeline |
|---|---|---|
| Single-provider Payme checkout (website) | 1 500 000 – 3 000 000 | 1–2 weeks |
| Payme + order/booking flow (web or app) | 3 000 000 – 5 000 000 | 2–4 weeks |
| Multi-provider (Payme + Click + Uzum) with CRM sync | 5 000 000+ | 4–8 weeks |
| Ongoing support/monitoring | from ~$50/mo | ongoing |
These are ranges, not quotes — a marketplace with split payments or subscription billing will sit higher than a simple one-time checkout.
Checklist Before You Brief a Developer
- Do you need one-time payments, subscriptions, or both?
- Will refunds and partial cancellations be needed?
- Does your product need Click or Uzum Bank as a second option later?
- Do you have a CRM (amoCRM, Bitrix24) that should sync with payment status?
- Is your checkout inside a Telegram bot, a website, or a native app?
Payme vs. Other Local Payment Options
Payme, Click, and Uzum Bank together cover the vast majority of the market, and UzCard and Humo card rails fill in the rest. Most stores start with Payme alone and add a second provider once volume justifies the extra integration work — trying to launch with all four on day one usually just delays the launch.
Where AI and Automation Fit In
Once payments are flowing, the natural next step for many Uzbek businesses is automating what happens after checkout — order confirmations in Telegram, CRM updates, or a support bot that answers “where’s my order” questions automatically. If you’re exploring that path, our overview of AI agents for business in Uzbekistan covers what’s realistic to automate first.
Testing in Sandbox Before You Go Live
Payme provides a sandbox (test) environment with its own merchant credentials, separate from production. A well-run integration project runs through the full flow in sandbox before touching real money: successful payment, failed payment, timeout, cancellation, and refund. Skipping this step is the single most common reason integrations break in the first week after launch — a webhook that works fine in a demo call often fails silently under real traffic if retries, timeouts, and duplicate callbacks weren’t tested up front.
It also pays to test what happens when your server is briefly down when Payme sends a callback. Payme retries failed webhook deliveries, but your endpoint needs to handle a retry correctly instead of processing the same payment twice. This is a small detail in the spec and a large detail in production.
Security Basics You Shouldn’t Skip
- Verify every incoming webhook request against Payme’s signature or authorization scheme — never trust an unauthenticated POST as a real payment event.
- Keep merchant secret keys server-side only; never ship them in a mobile app bundle or client-side JavaScript.
- Log every transaction state change so a support agent can trace a disputed payment without guessing.
- Rate-limit and monitor your payment endpoint separately from the rest of your API, since it’s the part attackers probe first.
Frequently Asked Questions
Does Payme integration require a licensed company? Yes, Payme requires a registered legal entity in Uzbekistan to onboard as a merchant; individual entrepreneurs (ИП/YaTT) can typically qualify too, but check current requirements with Payme directly.
Can I integrate Payme into a Telegram bot, not just a website? Yes — the same Merchant API works behind a bot’s backend; the checkout experience is usually a payment link or in-chat button rather than a full web redirect.
How long does Payme approval take after development is done? Merchant account approval is separate from development time and can take anywhere from a few days to a couple of weeks, so it’s worth starting that process in parallel with the build.
Do I need a developer, or can I use a plugin? Standard platforms (some e-commerce CMSs) have ready plugins, but most custom apps, Telegram bots, and bespoke platforms need direct API integration.
Getting Payme integration right the first time saves you from awkward refund bugs and support tickets down the line. If you’d like a second set of eyes on your payment architecture or want to scope a full build, take a look at our services and recent work, then get in touch to talk through your project.
Building something like this?
Fera Tech ships iOS & full-stack apps end-to-end. Tell us about your project.
Start a project