1. Why B2B Reseller Networks Outperform Direct Sales#
Managing hundreds of individual retail buyers creates massive customer support overhead. B2B Resellers operate as localized software distributors in specific regions (Turkey, Russia, Brazil, Southeast Asia), purchasing bulk key quotas and handling end-customer support themselves.
PapelShip includes a dedicated Independent Reseller Management System with 8 interconnected database tables powering the entire reseller lifecycle — from onboarding to debt collection.
2. Reseller Onboarding: Invite Links & reseller.papelship.com#
Software owners invite resellers via unique invite links. Accepted resellers access their dedicated panel via the reseller.papelship.com subdomain, where URL prefixes are automatically rewritten through a reverse-proxy layer. Resellers see only the products they have been given explicit permission to manage.
3. Per-Product Permission Matrix#
The heart of the reseller system is the reseller_product_permissions table. For each reseller-product pair, the software owner controls exactly what actions the reseller can perform:
| Permission | Column | Description |
|---|---|---|
| Create Keys | can_create_keys | Generate new license keys for this product |
| Reset HWID | can_reset_hwid | Reset hardware ID binding on existing keys |
| Extend Duration | can_extend_duration | Add time to existing keys (e.g. +30 days) |
| Delete Keys | can_delete_keys | Permanently remove keys from the system |
| Ban Keys | can_ban_keys | Ban specific keys with a reason and timestamp |
| Freeze Keys | can_freeze_keys | Temporarily freeze key activation (pauses timer) |
| Max Active Keys | max_active_keys | Maximum concurrent active keys this reseller can maintain |
This granular permission system means you can give one reseller full management access while restricting another to only key creation with a 50-key cap.
4. Flexible Duration-Based Pricing#
The reseller_pricing table defines wholesale prices per product per duration. Unlike flat-rate models, PapelShip lets you set different wholesale prices for different license durations:
| Product | Duration | Wholesale Price |
|---|---|---|
| YourApp Pro | 1 Day | $0.50 |
| YourApp Pro | 7 Days | $2.00 |
| YourApp Pro | 30 Days | $5.00 |
| YourApp Pro | Lifetime | $25.00 |
Each time a reseller generates a key, a debt record is created in the reseller_debts table with the corresponding wholesale price. The reseller owes you $5.00 for every 30-day key they generate.
5. Debt Tracking & Enforcement#
Every key creation by a reseller creates a debt entry:
reseller_debts:
├── reseller_user_id: 42
├── product_id: 7
├── key_id: 1893
├── duration_days: 30
├── amount_usd: 5.00
├── status: "unpaid"
└── created_at: "2026-07-14T12:00:00Z"Debt Limit Enforcement
The reseller_debt_limits table defines the maximum number of unpaid debts a reseller can accumulate before key creation is blocked:
- Default limit: 3 unpaid debts.
- Once the limit is reached, the reseller cannot generate new keys until outstanding debts are settled.
- Debt payments are processed through PapelShip invoices — when a reseller pays their debt invoice (via crypto, card, or bank), the
reseller_debtsrows are automatically marked aspaidthrough the invoice completion handler.
6. Reseller Subscription Plans#
For recurring reseller agreements, PapelShip supports reseller subscription plans managed by software owners:
| Field | Description |
|---|---|
plan_name | Name of the subscription tier (e.g. "Silver Reseller", "Gold Reseller") |
price | Monthly subscription cost in USD |
renewal_days | Billing cycle length (default: 30 days) |
on_payment_fail | Action when payment fails: suspend, restrict, warn, or delete |
When a reseller's subscription expires and payment fails, the system automatically takes the configured action — suspending their access, restricting key creation, sending a warning, or deleting the reseller account entirely.
7. Key Volume Limits#
Two layers of volume control prevent resellers from over-generating keys:
Per-Product Limits (`reseller_product_limits`)
max_keys_per_product: Maximum total keys this reseller can create for a specific product.keys_created_count: Running counter of keys created (auto-incremented on each generation).
Global Limits (`reseller_global_limits`)
max_total_keys: Maximum total keys across all products combined.total_keys_created: Global running counter.
When either limit is reached, the reseller's key creation API returns an error until the owner increases the quota.
8. Real-Time Reseller Dashboard#
Resellers access their management panel at reseller.papelship.com where they can:
- View assigned products and their permission levels.
- Generate new license keys (if
can_create_keys = 1). - Reset HWID bindings on customer keys (if
can_reset_hwid = 1). - View their debt balance and payment history.
- Pay outstanding debts via crypto or card checkout.
Onboard your first resellers on PapelShip Reseller Management.