Sherweb Distributor Billing
Overview
Billing in Sherweb represents the financial data flowing from the distributor to the service provider (MSP). When Sherweb provisions or manages cloud subscriptions on behalf of an MSP's customers, it generates payable charges that roll up into billing periods. Each charge includes detailed pricing breakdown with list prices, net prices, proration, deductions (promotional and performance), fees, and taxes. Understanding Sherweb billing data is critical for MSPs to calculate margins, reconcile invoices, and ensure accurate client billing.
MCP Tools
Available Tools
| Tool | Description | Key Parameters |
|---|---|---|
sherweb_billing_get_payable_charges | Get payable charges for a billing period | billingPeriodId, page, pageSize |
sherweb_billing_get_billing_periods | List available billing periods | page, pageSize |
sherweb_billing_get_charge_details | Get detailed breakdown of a specific charge | chargeId |
sherweb_billing_get_invoices | List invoices for the service provider | page, pageSize, status |
sherweb_billing_get_invoice_details | Get a specific invoice with line items | invoiceId |
Get Billing Periods
Call sherweb_billing_get_billing_periods to list available billing periods:
- Paginate: Set
page(1-based) andpageSize(default 25) - Returns billing period IDs, start/end dates, and status
Example: List recent billing periods:
sherweb_billing_get_billing_periodswithpageSize=10
Get Payable Charges
Call sherweb_billing_get_payable_charges with a billingPeriodId:
- Required:
billingPeriodIdfrom the billing periods list - Paginate: Set
pageandpageSizefor large result sets - Returns all charges for the period with full pricing breakdown
Example: Get charges for a billing period:
sherweb_billing_get_payable_chargeswithbillingPeriodId=bp-2026-02,pageSize=100
Get Invoices
Call sherweb_billing_get_invoices to list invoices:
- Filter by status: Set
statusto filter (e.g.,Paid,Unpaid,Overdue) - Paginate: Set
pageandpageSize
Key Concepts
Charge Types
Sherweb categorizes charges into three types:
| Charge Type | Description | When Generated |
|---|---|---|
Setup | One-time provisioning or activation fees | When a new subscription is created |
Recurring | Ongoing subscription charges | Each billing cycle (monthly/yearly) |
Usage | Consumption-based charges (e.g., Azure metered) | Based on actual usage during the period |
Billing Cycles
| Cycle | Description | Charge Frequency |
|---|---|---|
OneTime | Single charge, no recurrence | Once at setup |
Monthly | Charged every month | Monthly billing period |
Yearly | Charged annually | Annual billing period |
Pricing Breakdown
Every charge in Sherweb includes a detailed pricing structure:
| Field | Type | Description |
|---|---|---|
listPrice | decimal | Vendor's published list price per unit |
netPrice | decimal | Partner's net price after distributor discounts |
quantity | integer | Number of units (seats, licenses, etc.) |
prorated | boolean | Whether the charge is prorated for a partial period |
proratedDays | integer | Number of days in the prorated period |
subTotal | decimal | Calculated subtotal before deductions (netPrice x quantity) |
Deductions
Sherweb applies deductions to reduce the partner's cost. Deductions come in three types:
| Deduction Type | Description | Calculation |
|---|---|---|
PromotionalMoney | Fixed dollar amount promotional discount | Subtracted from subTotal |
PromotionalPercentage | Percentage-based promotional discount | Percentage off subTotal |
PerformancePercentage | Performance-based rebate for hitting volume targets | Percentage off subTotal |
Fees and Taxes
After deductions, additional line items may apply:
| Item | Description |
|---|---|
fees | Administrative or platform fees added by Sherweb |
taxes | Applicable sales tax, GST, HST, or VAT |
total | Final amount payable (subTotal - deductions + fees + taxes) |
MSP Margin Calculation
To calculate your MSP margin on a Sherweb charge:
MSP Cost = charge.total (what you pay Sherweb)
Client Price = your retail price to the customer
Margin = Client Price - MSP Cost
Margin % = (Margin / Client Price) * 100
Tips for margin analysis:
- Compare
listPricevsnetPriceto see your distributor discount - Factor in deductions -- promotional discounts reduce your cost
- Performance percentage deductions reward volume; track these quarterly
- Setup charges are one-time -- amortize across the subscription term for accurate monthly margin
- Usage charges fluctuate -- use historical averages for margin forecasting
Field Reference
Billing Period Fields
| Field | Type | Description |
|---|---|---|
id | string | Billing period identifier |
startDate | date | Period start date |
endDate | date | Period end date |
status | string | Period status (Open, Closed, Processing) |
totalAmount | decimal | Total charges for the period |
Payable Charge Fields
| Field | Type | Description |
|---|---|---|
id | string | Charge unique identifier |
customerId | string | Customer the charge belongs to |
customerName | string | Customer display name |
subscriptionId | string | Associated subscription |
productName | string | Product or SKU name |
chargeType | string | Setup, Recurring, or Usage |
billingCycle | string | OneTime, Monthly, or Yearly |
listPrice | decimal | Vendor list price per unit |
netPrice | decimal | Partner net price per unit |
quantity | integer | Number of units |
prorated | boolean | Whether charge is prorated |
proratedDays | integer | Days in prorated period |
subTotal | decimal | Subtotal before deductions |
deductions | array | List of applied deductions |
fees | decimal | Additional fees |
taxes | decimal | Tax amount |
total | decimal | Final payable amount |
Invoice Fields
| Field | Type | Description |
|---|---|---|
id | string | Invoice unique identifier |
invoiceNumber | string | Human-readable invoice number |
invoiceDate | date | Date invoice was issued |
dueDate | date | Payment due date |
status | string | Invoice status (Paid, Unpaid, Overdue) |
totalAmount | decimal | Invoice total |
currency | string | Currency code (e.g., USD, CAD) |
lineItems | array | Itemized charges on the invoice |
Common Workflows
Monthly Billing Reconciliation
- Call
sherweb_billing_get_billing_periodsto find the current or most recent closed period - Call
sherweb_billing_get_payable_chargeswith thebillingPeriodId, paginating through all results - Group charges by
customerIdto see per-customer totals - Compare Sherweb charges against what you bill each customer in your PSA
- Flag discrepancies where MSP cost exceeds or is too close to client billing
Margin Analysis Across Customers
- Fetch all payable charges for the billing period
- For each customer, sum the
totalfield across all charges - Compare against your retail billing to that customer
- Calculate margin per customer and overall portfolio margin
- Identify customers with negative or sub-target margins
Deduction Tracking
- Fetch payable charges and filter for entries with non-empty
deductionsarrays - Group deductions by type (PromotionalMoney, PromotionalPercentage, PerformancePercentage)
- Sum total savings from each deduction category
- Track performance percentage deductions over time to monitor volume rebate trends
Invoice Verification
- C