Platform Overview
Cloudmore is a Commerce Control Plane that enables the resale and management of cloud services through a multi-tier distribution model.
The platform provides end-to-end subscription lifecycle management, billing automation, and white-label self-service capabilities.
Core Value Proposition:
Unified commercial architecture across multiple vendors and cloud services
Automated subscription lifecycle management (provisioning, upgrades, renewals, cancellation)
Multi-model monetization (subscription, usage, consumption, hybrid)
White-label self-service portal for end customers
API-first architecture for system integration
Role Hierarchy
The platform operates on a three-tier distribution model:
Seller (aka service owner or vendor, like Microsoft or Adobe) publishes services to Marketplace.
Broker (aka reseller or distributor) makes services available via E-Store.
Organization (company consuming services) purchases subscriptions from the E-Store via self-service.
Entity Relationships

Entity | Description | Key Actions |
|---|---|---|
Seller | Original service owner/vendor | Creates services, publishes to Marketplace, sets cost prices |
Broker | Reseller/distributor | Adds services from Marketplace, sets sales prices, manages organizations |
Organization | End consumer | Adds services from E-Store, creates subscriptions, manages users |
Key Terminology
Term | Definition |
|---|---|
Commerce Control Plane | Official name of the platform. |
CSP | Cloud Solution Provider (Microsoft partner program) |
NCE | New Commerce Experience (Microsoft's updated commerce platform) |
Tenant | Microsoft-specific term for an organization |
Custom Service | Any non-Microsoft service (seller-created) |
Host Admin | Cloudmore internal super-admin layer |
ISV | Independent Software Vendors are service owners who create digital services and publish them to Cloudmore's Marketplace |
ERP | Enterprise Resource Planning is an external financial system where Brokers export Cloudmore's billing data via API or Excel for invoice generation, payment processing, and financial reporting |
Core Concepts
Services
A Service represents a cloud offering made available through the platform. Services contain metadata and configuration:
Billing date (1-28 of month)
Provisioning type (Email or REST API)
User assignment (Y/N)
License keys (Y/N)
Custom properties
Marketing information
Service Categories:
Type | Description | Examples |
|---|---|---|
Custom Services | Third-party integrations | Dropbox, Kaspersky, WatchGuard. A custom service can be added by a broker manually, without direct integration to a seller. |
Microsoft CSP | Microsoft Cloud Solution Provider services | Office 365, Azure |
Marketplace vs E-Store
Concept | Audience | Purpose |
|---|---|---|
Marketplace | Brokers | Catalog of services available for the broker to add |
E-Store | Organizations | Catalog of services the broker has made available |
Both function as service catalogs (analogous to App Store/Play Store) but are scoped to different role levels.
Product Types
Products exist within Services and define the purchasable SKUs. The platform supports two primary billing categories:
One-Time Billing (Products)
Single payment at purchase
Used for hardware or perpetual licenses
~5% of platform subscriptions
Recurring Billing (Service Plans)
~95% of subscriptions fall into this category, subdivided into:
1. License-Based (Product-Based) Plans
Billing model: Pay upfront for a defined quantity
Subscription Created → Quantity Selected → Immediate Billing
(e.g., 10 seats) (quantity × price)
User defines quantity at subscription creation
Billed for the upcoming period
Example: 10 Dropbox licenses × €15/month = €150
2. Consumption-Based (Metered) Plans
Billing model: Pay retroactively based on actual usage
Subscription Created → Usage Period → Consumption Submitted → Billing Generated
(1 month) (at period end) (usage × price)
No payment at subscription creation
Consumption reported at end of billing cycle
Billed in arrears for actual usage
Example: 9.5 GB used × €10/GB = €95
Key API for Metered Billing:
POST /api/consumption # Submit consumption data
GET /api/consumption/{taskId} # Check submission status
Billing Logic Options
Setting | Behavior |
|---|---|
Billing Day Only | Generate billing only on service billing date for full cycle |
Pro-rate Billing | Proportional billing for mid-period changes |
First Partial Cycle | Configurable handling of initial incomplete period |
Subscriptions
Subscriptions are created from Products and represent active service consumption.
Subscription Lifecycle
Created → (Trial →) Active → Cancelled → Deleted
↑ │
└ Renewed ┘
State | Description |
|---|---|
Trial | Optional trial period (pushes start date forward). Seller sets trial duration, auto-conversion to paid, and product change allowed. |
Active | Generating billing, service accessible |
Cancelled | Marked for non-renewal, still usable until deletion |
Deleted | No billing, access revoked |
Subscription Configuration
Products define subscription behavior through settings:
Subscription period
Payment frequency (billing interval)
Minimum/Maximum quantity
Cancellation policy
Renewal policy
Auto-renew (Y/N)
Add-ons
Optional extras attached to subscriptions with independent pricing:
Pricing models: Subscription, Quantity, Selected (one-time), Metered
Grouping: Add-ons can be organized into logical groups
Configured by Seller, optional for Organization
Read more about subscription management
Service Agreements
Cloudmore supports agreement acceptance workflows that gate access to services. Three agreement types exist:
Agreement Type | Configured By | Triggered When | Blocks |
|---|---|---|---|
Custom Service | Seller | Adding service from E-Store | Service subscription |
MCA | Organization in E-Store or Broker accepts on behalf of the organization | First Microsoft CSP purchase | Microsoft subscriptions |
Broker-Level | Broker | User login | Platform access (after 30 days) |
Pricing Architecture
Price Flow
Seller Cost Price → Broker Cost → Broker Sales Price → Organization
(set in Price List)
Price Type | Set By | Description |
|---|---|---|
Cost Price | Seller | What the seller charges the broker |
Recommended Price | Seller | Suggested end-customer price |
Sales Price | Broker | What the broker charges the organization |
Price List
Brokers maintain a Price List to control margins:
Example:
- Seller Cost: €10/license
- Broker Sales Price: €15/license
- Margin: 50%
Price determination hierarchy:
Subscription-specific price (if set)
Organization-specific price (if set)
Global price list entry
Seller recommended price (fallback)
Read more about price management
Multi-Currency Support
Organizations can operate in different currencies
Billing reports aggregate across currencies
Currency exchange service available for reporting
ISO 4217 currency codes required
Read more about currency support
Billing System
Billing Generation
The billing job runs on configured billing dates (1-28 of month):
Billing Job → For each active subscription:
1. Check quantity (license-based) or consumption (metered)
2. Look up price from Price List
3. Calculate: quantity × price
4. Generate billing line
Billing Reports
Available at all role levels (Seller, Broker, Organization):
Report Type | Content |
|---|---|
Total Billing Report | All services, all organizations, date range filter |
Monthly Billing Per Organization | Per-org breakdown by service/subscription/product |
Azure Billing | Microsoft Azure-specific with margin support |
NCE Billing | New Commerce Experience Microsoft subscriptions |
Export formats: UI display, Excel (.xlsx), API (JSON)
Read more about billing and reconciliation
Additional Charges
Manual billing line insertion for adjustments outside regular billing cycles:
{
"billingDate": "2025-06-17T00:00:00Z",
"serviceId": "uuid",
"subscriptionId": "string",
"quantity": 1.0,
"costPrice": 10.00,
"salesPrice": 15.00,
"currencyCode": "EUR",
"note": "One-time adjustment"
}
Read more about manual billing lines
Billing Scope
What Cloudmore handles:
Billing data generation
Subscription management
Pricing and price lists
Consumption tracking
What Cloudmore does NOT handle:
Payment processing
Invoice generation
Payment collection
Brokers export billing data via API/Excel and integrate with their ERP/financial systems for invoicing.
White-Label & Branding
Customization Options
Brokers can fully white-label the platform:
Element | Customization |
|---|---|
Logo | 280×54 pixels (expanded menu) |
Icon | 54×54 pixels (collapsed menu) |
Colors | Theme colors throughout UI |
Banner | Header banner image |
Login Page | Custom background, logo |
Domain | Custom URL (e.g., |
Start Page | Custom HTML content |
Email Domain | Send from broker's domain |
Self-Service Portal
Organizations access a white-labeled portal to:
Create/manage subscriptions
Assign subscriptions to users
View billing information
Manage user accounts
This reduces broker support overhead by enabling customer self-service.
Read more about branding and white labelling
User Management
Cloudmore uses role-based access control (RBAC) across three tiers. Each tier has distinct roles with granular permissions.
Full permissions matrix: See https://docs.google.com/spreadsheets/d/1H7rpuLsOlCp1oou-zQkPeYDuGkZL25LUE3ViGnppz90/edit?gid=0#gid=0 for detailed page-level access.
Read more about user management
Authentication Methods
Username/Password - Standard Cloudmore credentials
Microsoft SSO - Azure AD integration
SAML SSO - Enterprise identity providers
Microsoft Integration
Microsoft CSP (Cloud Solution Provider)
Two primary Microsoft services with custom integrations:
Service | Description |
|---|---|
Microsoft 365 CSP Direct | Office 365, Enterprise solutions |
Microsoft Azure | Virtual machines, cloud storage, infrastructure |
Microsoft Azure exists in two distinct billing models on the platform: Azure Plan and Azure Legacy (deprecated - no new subscriptions can be created). These are architecturally separate with different pricing, margin calculation, and API behavior.
Tenant Linking
Microsoft customers (tenants) must be linked to Cloudmore organizations:
Microsoft Partner Center ←→ Cloudmore Organization
(Tenant ID) (Organization ID)
Linking methods:
Automatic: Organization adds Microsoft service from E-Store → Tenant created and linked
Manual: Broker links existing tenant to existing organization
Bulk: "Auto create and link" all tenants at once
Critical: Unlinked tenants do not appear in billing reports.
Read more about Microsoft tenant linking
Microsoft Authentication
Brokers must configure MFA token for Partner Center API integration:
My Services → Microsoft 365 CSP Direct → Microsoft CSP Authentication
Prerequisites:
Privileged Role Administrator account with MFA enabled
Admin Agent role in Partner Center
Token auto-refreshes nightly
Read more about Microsoft authentication
API Reference
URL Structure
Seller level:
https://api.cloudmore.com/api/sellers/{sellerId}
Broker level:
https://api.cloudmore.com/api/resellers/{resellerId}
Full documentation: https://api.cloudmore.com/swagger/
Common API Identifiers & Endpoints
Entity | ID Format | Example |
|---|---|---|
Organization | UUID |
|
Service | UUID |
|
Subscription | UUID |
|
Product | UUID |
|
User | UUID |
|
Customer Number | String |
|
Item Code | String |
|
Organization Management:
GET /api/resellers/{resellerId}/organizations
POST /api/resellers/{resellerId}/organizations
PUT /api/resellers/{resellerId}/organizations/{organizationId}
DELETE /api/resellers/{resellerId}/organizations/{organizationId}
Read more about Organization Management APIs
Subscription Management:
GET /api/resellers/{resellerId}/organizations/{orgId}/services/{serviceId}/subscriptions
POST /api/resellers/{resellerId}/organizations/{orgId}/services/{serviceId}/subscriptions
PUT /api/resellers/{resellerId}/organizations/{orgId}/services/{serviceId}/subscriptions/{subId}
DELETE /api/resellers/{resellerId}/organizations/{orgId}/services/{serviceId}/subscriptions/{subId}
Read more about Subscription Management APIs
Billing Data:
GET /api/resellers/{resellerId}/billing/monthly
GET /api/resellers/{resellerId}/billing/organizations/{orgId}
Consumption Submission (Metered):
POST /api/consumption/bulk # Returns taskId
GET /api/consumption/{taskId} # Check status
Read more about Consumption APIs
Service Integrations
Provisioning Types
When services are added or subscriptions created, Cloudmore can trigger external provisioning:
Type | Mechanism |
|---|---|
Notification sent to configured address | |
Service Connector | Webhook call to predefined endpoint |
Service Connector
For REST provisioning, a Cloudmore Service Connector acts as middleware:
Cloudmore → Service Connector → External Service
(webhook) (API translation)
Read more about service integrations
Provisioning Log
All provisioning events are logged under Logs → Provisioning Log with:
Event type (create, update, cancel)
Timestamp
Status (pending, done)
Manual completion option