# Happ

Happ is a closed-source mobile VPN client (Android and iOS) that speaks VLESS and is widely used in the Russian-language VPN reseller market. Users buy a subscription from a reseller, paste the subscription URL into Happ, and get a managed list of VLESS servers rotated by the provider.

Two things make Happ distinctive from an integration perspective:

**Client-discriminating subscription endpoint.** Happ's upstream subscription URL returns different payloads depending on the requesting client. A real Happ app sends a specific User-Agent, a hardware ID (HWID), and several custom headers, and gets back a base64-encoded VLESS server list. A plain curl or a non-Happ client gets nothing useful. This is intentional — it's how providers restrict their subscriptions to customers actually running the Happ app, where the app enforces whatever device limits and anti-sharing rules the provider configures.

**HWID-based device counting.** Each unique HWID that hits the subscription counts as one device. If a provider sells a "3-device" plan, they're counting distinct HWIDs seen within some window. There's no account-level auth beyond the subscription URL itself; the HWID is the primary device identity.

The combination means that if you want to use your own Happ subscription on V2RayN, V2RayA, Clash, SingBox, or any non-Happ client, you have to emulate the Happ app's request. The closed-source nature makes this non-trivial at first glance — you'd need to reverse-engineer the APK to find the headers — but in practice, pointing the real app at a logging endpoint and reading off the headers works fine. [[happ-subscription-converter]] documents exactly this approach.

Happ itself isn't a protocol or a server; it's a consumer-side app. The underlying protocol is VLESS (see [[xray-tutorial]]), and the server side is typically something like [[3x-ui]] or a raw [[xray-core]] deployment. Happ is a layer of UX and light DRM wrapped around the same VLESS infrastructure everyone else uses.

Related: [[vless-subscription-format]] for the actual wire format Happ and every other VLESS client consume. Happ targets the Russian-language VPN reseller market; [[masterhttprelayvpn]] targets the Iranian end of the same censorship-circumvention problem, but with a completely different architecture (Google Apps Script + [[domain-fronting]] instead of VLESS reseller subscriptions).
