Industry
Use Case
Favorite Feature
A digital library platform serving academic and professional readers faces intense competition from retail bookstores and library services. Rather than forcing customers into all-or-nothing purchase decisions, the platform shifted to a rental model: readers rent textbooks, professional guides, and research materials for flexible periods (7 days to semester-long) at a fraction of purchase price. This model captures price-sensitive students and professionals while protecting author royalties and publisher interests.
Implementing rental management manually would be prohibitively expensive: tracking thousands of concurrent rentals, calculating individual expiration times, and revoking access precisely at expiration. NetLicensing’s Rental licensing model automates the entire lifecycle: rental period enforcement, automatic expiration, pre-expiration renewal prompts, and analytics on rental patterns. Publishers can configure flexible rental options per title, and the platform scales to millions of simultaneous readers without operational overhead.
The legacy rental system required customer service staff to manually track rental expiration dates in a spreadsheet, send expiration notices via email, and process manual access revocation when periods ended. This created multiple operational risks:
Rental License Model — time-volume licenses with server-controlled expiration and automated access revocation. When a customer rents a book for 14 days, NetLicensing issues a time-volume license with timeVolume=14, timeVolumePeriod=DAY. The server calculates exact expiration (startDate + 14 days) and enforces it automatically. No manual intervention, no staff involvement—expiration is atomic and server-controlled.
Rental License Mechanics:
- Customer rents book for 14 days at $8.00
- NetLicensing creates time-volume license:
- startDate = now
- timeVolume = 14 (days)
- expirationDate = startDate + 14 days (auto-calculated)
- Customer reads during this window; validation succeeds
- On day 15, next validation check fails; access denied
- NetLicensing sends pre-expiration reminders (day 11, day 13)
Product & Module Setup:
TEXTBOOK_30DAY (30 days, $15), TEXTBOOK_60DAY (60 days, $25), TEXTBOOK_SEMESTER (120 days, $40)GUIDE_7DAY (7 days, $5), GUIDE_14DAY (14 days, $8)PAPER_3DAY (3 days, $2), PAPER_30DAY (30 days, $8)Key Parameters:
timeVolume — rental duration in daystimeVolumePeriod=DAY — always days for rentalsprice — rental price per durationcurrency=USDgracePeriod=0 — no grace period; expiration is strictASCII Configuration:
Product: DigitalLibrary
└── Module: Rental
├── Textbooks (content category)
│ ├── Template: TEXTBOOK_30DAY (30d, $15)
│ ├── Template: TEXTBOOK_60DAY (60d, $25)
│ └── Template: TEXTBOOK_SEMESTER (120d, $40)
├── Guides (content category)
│ ├── Template: GUIDE_7DAY (7d, $5)
│ └── Template: GUIDE_14DAY (14d, $8)
└── Papers (content category)
├── Template: PAPER_3DAY (3d, $2)
└── Template: PAPER_30DAY (30d, $8)
Access Control Points:
GET /licensee/{reader_id}/validate to check active rental licensesPOST /licensee/{reader_id}/license to create new time-volume license with chosen durationHigh-Level Flow:
Reader clicks "Rent this book"
↓
Choose rental duration (7d, 14d, 30d, etc.)
↓
Click "Proceed to checkout"
↓
Platform generates NetLicensing Shop token
↓
Reader completes payment via Stripe/PayPal
↓
NetLicensing creates time-volume license
Shop redirects to "Rental Confirmed" page
↓
Reader opens book in reading app
↓
App validates license: GET /licensee/{id}/validate
↓
License valid?
├─ Yes → Display book, grant read access
└─ No → Show "Rental expired" prompt with upgrade option
↓
Every 5 minutes during reading, re-validate
↓
5 days remaining?
├─ Yes → Display "Expires in 5 days" banner, show "Extend Rental" button
└─ No → Continue uninterrupted
Each reader in the platform maps to a single NetLicensing Licensee. The Licensee number is the reader’s account ID (e.g., READER_789456). When a reader rents multiple books, each rental creates a separate License linked to the same Licensee, ensuring the platform can track all active rentals for that reader and calculate total read costs.
Rental auto-provisioning is the default: when a reader completes a purchase via the NetLicensing Shop, a License is immediately created. Readers do not need to contact support or wait for activation; reading can begin within seconds of payment confirmation.
For institutional customers (schools, libraries), a shared Licensee account can represent the institution, and multiple patron accounts validate against it, allowing library administrators to manage a central rental budget across all patrons.
The platform uses NetLicensing Shop for seamless rental purchases. When a reader selects a rental duration and proceeds to checkout, the process is fully automated:
Rental Purchase Flow:
1. Reader selects book and rental duration (e.g., TEXTBOOK_30DAY)
2. Platform calls POST /shop/token with:
- licenseeNumber (reader account)
- licenseTemplate (e.g., TEXTBOOK_30DAY)
- successUrl (app redirect after payment)
3. NetLicensing returns shop URL (valid for 24 hours, single-use)
4. Platform opens Shop in iframe or new window
5. Reader enters payment info, completes transaction
6. Shop charges payment method, creates license
7. Shop redirects to successUrl
8. Platform receives webhook confirming license creation
9. Platform displays "Rental active until [date]" confirmation
10. Reader immediately opens book in reading app
Pre-expiration renewal flow (day 10 of 14-day rental):
Platform detects rental expiring in 4 days
↓
Generates renewal shop token for same title, same duration
↓
Displays in-app "Extend your rental" prompt with one-click link
↓
Reader clicks "Extend" → Shop opens
↓
Completes quick payment (payment method saved from original purchase)
↓
NetLicensing extends license by adding timeVolume to existing license
↓
Reader continues reading without interruption

Physical Security: Feature-Based Access Control with Time-Limited Permissions
A building management company implemented feature-based access control with time-limited permissions to manage resource gating and dynamic authorization across facilities.

AI/ML Platform: Token-Based Monetization with Inference Metering
Control API usage with Pay-per-Use or subscription models — charge per inference call, token consumed, or agent outcome