Product portfolio / App monetization

P2PSDKBandwidth monetization for apps.

An SDK that lets people contribute unused internet capacity through an app they already use. The app offers a reward, the user decides whether to participate, and P2PSDK handles the network connection.

The app asks for consent. Declining keeps the SDK off. Accepting allows a connection to the P2PSDK network, followed by usage reporting and calculation of the publisher's payout.
Product
Embedded networking SDK
Integration targets
Mobile, desktop & webOS
Participation
Explicit opt-in, with a revoke flow
01 / The product

A revenue option inside an existing app.

P2PSDK is built for publishers adding bandwidth sharing to their own products. A platform package embeds the network runtime; the application decides when to present the feature, how to explain the reward, and how long to keep the SDK instance alive.

The SDK handles connection state, device identity, and verification of the consent decision. It is designed to operate without reading personal application content. Publishers still own their app’s privacy disclosures, reward records, and telemetry.

For a user, participation starts with a clear choice and remains manageable from the app’s settings. For the publisher, it provides an additional way to earn alongside an existing advertising setup.

02 / Network architecture

Many devices. One proxy platform.

Participating devices connect to the platform as exit nodes. The platform routes customer requests through those connections, records the bandwidth used, and makes usage and account data available through its control plane.

Android, iOS, Windows, macOS, Linux, and webOS exit nodes connect outbound to the proxy platform. Requests travel from proxy clients through the platform and exit devices to internet destinations; responses return along that path. The platform sends usage data to traffic accounting and analytics. Customers access the dashboard and API through the control plane.
Devices initiate their network connections. Proxy requests then travel from the client through the platform and a participating device to the destination, with responses returning along the same path. Separate usage records feed accounting and analytics; the control plane provides account access, configuration, and reporting.

Devices and routing

The SDK connects Android, iOS, Windows, macOS, Linux, and webOS devices to the proxy platform. Once a device is online, the platform can route requests through it as an exit node. Participation follows the app’s consent and lifecycle controls.

Accounting and analytics

The proxy platform sends usage data to two services. Traffic accounting records transferred bytes against devices and accounts. Analytics aggregates activity for network and product reporting.

Dashboard and API

Publishers and operators use the control plane to manage accounts and access, inspect usage, and read reports. Its dashboard and API connect these operations to the running proxy platform.

04 / How it works

From consent to a running connection.

Accepting an offer and being online are separate states. The integration needs to handle both, along with refusal, network changes, and shutdown.

  1. 01

    Ask for consent

    Present the supported consent flow. A declined or cancelled decision leaves the SDK disabled.

  2. 02

    Create an instance

    The verified decision enables creation of the SDK instance. The application owns its lifetime.

  3. 03

    Start connecting

    Request a connection. The SDK manages setup, connection attempts, and its assigned retry policy.

  4. 04

    Wait for online

    The connected event confirms readiness. Disconnection events let the app reflect changes in availability.

  5. 05

    Release on exit

    Close the instance during final shutdown. Keep consent revocation available from persistent settings.

Consent is verified for the application, device, and disclosure version. A successful revoke closes the active instance. If revocation fails, the app needs to show the error and offer a retry. See the consent contract and runtime responsibilities.

05 / Publisher economics

Two inputs to the publisher’s payout.

Commercial terms are agreed with each publisher. Eligible participation and contributed bandwidth can both inform the calculation.

Eligible active users

A contracted rate applies to qualifying users who have opted in. The agreement defines who counts, the reporting period, and any differences by geography or device class.

Contributed bandwidth

A usage component reflects eligible capacity actually contributed to the network. Publisher reporting covers participation, bandwidth, and accrued revenue once production access is enabled.

The reward offered inside an app is a separate product decision. A publisher may offer coins, access to a feature, or another benefit; the SDK does not establish a universal cash payout to each user. Review the published payout model when discussing terms.

06 / Integration

What it takes to ship.

The work includes package access, user-facing consent, and testing on the operating systems your app supports.

  1. Get the integration materials

    Packages are distributed privately. Onboarding provides the platform artifacts, application key, consent configuration, and a test environment. Keep the wrapper and its native library on the same release; confirm target platforms and commercial eligibility before scheduling production.

    Package access and onboarding ↗

  2. Build the user’s controls

    Explain what participation involves and what the reward is. Respect declines and cancellations, keep a visible revoke action in settings, and handle errors without claiming that an unsuccessful revoke has completed. Changes to the disclosure version require coordinated testing.

    Consent and revoke behavior ↗

  3. Test the app’s real lifecycle

    Exercise network loss, screen-off states, suspension, resume, and final shutdown. iOS can suspend the app; Android foreground execution needs explicit setup; desktop runtimes depend on a live host process. webOS keep-alive is best effort. Participation and rewards need to reflect these limits.

    If the app already uses a VPN, proxy SDK, or custom networking stack, review coexistence during onboarding.

    Background execution by platform ↗

07 / Engineering stack

Technology behind the platform.

Rust powers the proxy engine, node registry, and consent backend. Go handles traffic accounting, Django provides the control plane and API, and Vue 3 supplies the administration interface.

Choose the SDK implementation that fits your application's language and integration environment. Rust, Kotlin, Swift, C#, and TypeScript versions are available for native and language-specific integration.

Rust

  • SDK implementation for native integration.
  • Proxy engine, node registry, and consent backend.

Kotlin

  • SDK implementation for Kotlin applications.

Swift

  • SDK implementation for Swift applications.

C#

  • SDK implementation for .NET applications.

TypeScript

  • SDK implementation for TypeScript applications.

Go

  • Traffic metering and usage accounting.

Python 3 / Django

  • Control plane and application API.

Vue 3

  • Administration panel interface.

ClickHouse

  • Analytics storage and queries.

Redis

  • Cache.

PostgreSQL

  • Control plane data storage.

NATS

  • Message queue.

SDK platform support

Full SDK support for the following operating systems.

  • Android
  • Windows
  • iOS
  • macOS
  • Linux
  • webOS

Network support

Full support for TCP and UDP traffic.

Transport
TCP · UDP
Proxy protocols
SOCKS5 · SOCKS5 UDP ASSOCIATE · HTTP
Explore the documentation ↗

Ready to Transform Your Business Performance?

Schedule a consultation with our proxy infrastructure experts and discover how enterprise-grade solutions can accelerate your growth.