Source profileQuality 93/100

WYRE-AI/msp-claude-plugins/msp-claude-plugins/sherweb/sherweb/skills/billing/SKILL.md

Sherweb Billing

Sherweb distributor billing: explicit billing date ranges, Setup/Recurring/Usage charge types, billing cycles (OneTime, Monthly, Yearly), the pricing breakdown (listPrice, netPrice, prorated, subTotal), promotional and performance deductions, fees, taxes, and MSP margin calculation. Also covers what this plugin cannot retrieve: there is no billing-period enumeration and no invoice surface.

Source repository stars
42
Declared platforms
0
Static risk flags
0
Last source update
2026-08-28
Source checked
2026-08-28

Decision brief

What it does: where it fits

Sherweb distributor billing: explicit billing date ranges, Setup/Recurring/Usage charge types, billing cycles (OneTime, Monthly, Yearly), the pricing breakdown (listPrice, netPrice, prorated, subTotal), promotional and performance deductions, fees, taxes, and MSP margin calculation. Also covers what this plugin cannot retrieve: there is no billing-period en…

Best for

    Not for

    • Tasks that require unconfirmed production actions or broad system permissions.
    • Environments where the pinned source and install steps cannot be inspected.

    Compatibility matrix

    Platform support, with evidence labels

    PlatformStatusEvidenceWhat to check
    CodexNot declaredNo explicit evidencePortability before use
    Claude CodeNot declaredNo explicit evidencePortability before use
    CursorNot declaredNo explicit evidencePortability before use
    Gemini CLINot declaredNo explicit evidencePortability before use
    Open the compatibility checker

    Installation

    Inspect first. Install second.

    The source command is displayed only when detected. A safe inspection prompt is always available so your agent can explain every action before execution.

    Source-detected install commandSource
    npx skills add https://github.com/WYRE-AI/msp-claude-plugins --skill "msp-claude-plugins/sherweb/sherweb/skills/billing"
    Safe inspection promptEditorial

    Inspect the Agent Skill "Sherweb Billing" from https://github.com/WYRE-AI/msp-claude-plugins/blob/5005f73ba2f52cd299f58aa6bb79f4e70ae87103/msp-claude-plugins/sherweb/sherweb/skills/billing/SKILL.md at commit 5005f73ba2f52cd299f58aa6bb79f4e70ae87103. List every install step, command, network request, credential, file read/write, external action, and rollback step. Explain whether it fits my task. Do not install or execute anything until I approve.

    Workflow

    What the source asks the agent to do

    1. 01

      Charge Verification (there is no invoice verification workflow)

      Invoice retrieval is not available through this plugin — see What this plugin cannot retrieve. Verify at the charge level instead:

      Call sherwebbillingpayablecharges for the window under reviewFor each charge worth scrutiny, call sherwebbillingchargedetails withCross-reference those line items against what you expected to be provisioned
    2. 02

      Anti-triggers

      An invoice the MSP sends to a client — Sherweb charges are money the

      An invoice the MSP sends to a client — Sherweb charges are money theThe equivalent cost from the other CSP marketplace — useComparing the two sides to find unbilled subscriptions — that is the
    3. 03

      MCP Tools

      The server registers exactly two billing tools (sherweb-mcp/src/domains/billing.ts:17-69).

      There is no billing-period enumeration. No tool lists availableThere is no invoice surface at all. Nothing on this server listsperiodFrom / periodTo: ISO 8601 dates bounding the window
    4. 04

      Available Tools

      The server registers exactly two billing tools (sherweb-mcp/src/domains/billing.ts:17-69).

      The server registers exactly two billing tools (sherweb-mcp/src/domains/billing.ts:17-69).
    5. 05

      What this plugin cannot retrieve

      Two capabilities that earlier revisions of this skill described do not exist on the shipped server. Do not substitute a near-miss for either.

      There is no billing-period enumeration. No tool lists availableThere is no invoice surface at all. Nothing on this server listsTwo capabilities that earlier revisions of this skill described do not exist on the shipped server. Do not substitute a near-miss for either.

    Permission review

    Static risk signals and limitations

    No configured static risk pattern was detected

    This is not proof of safety. Runtime behavior, indirect dependencies, and hidden external systems are outside the static scan.

    Evidence record

    Why each signal appears

    EvidenceSourceComputedTestedEditorial
    SignalValueEvidence typeMeaning
    Quality score93/100ComputedDocumentation, specificity, maintenance, and trust rules
    Repository stars42SourceRepository attention, not individual Skill quality
    Compatibility0 platformsSourceDeclared in the catalog source record
    Usage guideautomated source guideEditorialGenerated or reviewed according to the visible evidence level

    Pinned source

    Provenance and original SKILL.md

    Repository
    WYRE-AI/msp-claude-plugins
    Skill path
    msp-claude-plugins/sherweb/sherweb/skills/billing/SKILL.md
    Commit
    5005f73ba2f52cd299f58aa6bb79f4e70ae87103
    License
    Apache-2.0
    Collected
    2026-08-28
    Default branch
    main
    View the original SKILL.md

    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 dated within a billing period. 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 costs, and ensure accurate client billing. Note that the tool surface reaches charges, not periods and not invoices — see What this plugin cannot retrieve.

    Anti-triggers

    • An invoice the MSP sends to a client — Sherweb charges are money the MSP owes the distributor, the opposite direction to the accounting and PSA plugins. Client-facing invoices are qbo-invoices, xero-invoices, autotask-billing, or halopsa-invoices. Getting the direction wrong inverts every margin calculation.
    • The equivalent cost from the other CSP marketplace — use pax8-invoices.
    • Comparing the two sides to find unbilled subscriptions — that is the cross-vendor reconciliation itself; use shared-skills-billing-reconciliation.
    • Aged receivables on the MSP's own books — Sherweb's per-customer AR view is the distributor platform's ledger, not the accounting system's. Collections work runs off qbo-reports or xero-reports; see sherweb-customers for what Sherweb's own AR data covers.

    MCP Tools

    Available Tools

    The server registers exactly two billing tools (sherweb-mcp/src/domains/billing.ts:17-69).

    ToolDescriptionKey Parameters
    sherweb_billing_payable_chargesGet payable charges for a date rangebillingCycleType (OneTime|Monthly|Yearly), periodFrom, periodTo, page, pageSize
    sherweb_billing_charge_detailsGet detailed breakdown of a specific chargechargeId (required)

    What this plugin cannot retrieve

    Two capabilities that earlier revisions of this skill described do not exist on the shipped server. Do not substitute a near-miss for either.

    • There is no billing-period enumeration. No tool lists available billing periods, their IDs, dates, or open/closed status. You supply the window yourself as periodFrom/periodTo on sherweb_billing_payable_charges; you cannot ask the server which periods exist. If an operator says "the latest period", resolve that from the calendar and the MSP's own billing cycle, then pass explicit dates — never guess a billingPeriodId, which is not a parameter of any tool here.
    • There is no invoice surface at all. Nothing on this server lists invoices, fetches an invoice by ID, or returns invoice line items. The two invoice-adjacent capabilities are narrower and are not substitutes: sherweb_billing_charge_details returns the line items of a single charge by charge ID, and sherweb_customers_accounts_receivable returns a customer's outstanding balance and aging. Neither is an invoice. When an operator asks for a Sherweb invoice, say so plainly and offer charge-level reconciliation or the AR balance instead. Invoice documents live in the Sherweb partner portal.

    Get Payable Charges

    Call sherweb_billing_payable_charges with an explicit date range:

    • periodFrom / periodTo: ISO 8601 dates bounding the window (e.g. 2026-02-01 to 2026-02-28). You choose these; there is no period list to pick from.
    • billingCycleType: OneTime, Monthly, or Yearly. If you call the tool with none of billingCycleType, periodFrom, or periodTo, the server elicits the cycle type from the caller before proceeding.
    • Paginate: Set page (1-based) and pageSize for large result sets
    • Returns all charges in the window with full pricing breakdown

    Example: Get monthly recurring charges for February 2026:

    • sherweb_billing_payable_charges with billingCycleType=Monthly, periodFrom=2026-02-01, periodTo=2026-02-28, pageSize=100

    Get Charge Details

    Call sherweb_billing_charge_details with the chargeId of a charge returned by sherweb_billing_payable_charges to see its line items, pricing tiers, deductions, fees, and tax.

    Key Concepts

    Charge Types

    Sherweb categorizes charges into three types:

    Charge TypeDescriptionWhen Generated
    SetupOne-time provisioning or activation feesWhen a new subscription is created
    RecurringOngoing subscription chargesEach billing cycle (monthly/yearly)
    UsageConsumption-based charges (e.g., Azure metered)Based on actual usage during the period

    Billing Cycles

    CycleDescriptionCharge Frequency
    OneTimeSingle charge, no recurrenceOnce at setup
    MonthlyCharged every monthMonthly billing period
    YearlyCharged annuallyAnnual billing period

    Pricing Breakdown

    Every charge in Sherweb includes a detailed pricing structure:

    FieldTypeDescription
    listPricedecimalVendor's published list price per unit
    netPricedecimalPartner's net price after distributor discounts
    quantityintegerNumber of units (seats, licenses, etc.)
    proratedbooleanWhether the charge is prorated for a partial period
    proratedDaysintegerNumber of days in the prorated period
    subTotaldecimalCalculated subtotal before deductions (netPrice x quantity)

    Deductions

    Sherweb applies deductions to reduce the partner's cost. Deductions come in three types:

    Deduction TypeDescriptionCalculation
    PromotionalMoneyFixed dollar amount promotional discountSubtracted from subTotal
    PromotionalPercentagePercentage-based promotional discountPercentage off subTotal
    PerformancePercentagePerformance-based rebate for hitting volume targetsPercentage off subTotal

    Fees and Taxes

    After deductions, additional line items may apply:

    ItemDescription
    feesAdministrative or platform fees added by Sherweb
    taxesApplicable sales tax, GST, HST, or VAT
    totalFinal 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:

    1. Compare listPrice vs netPrice to see your distributor discount
    2. Factor in deductions -- promotional discounts reduce your cost
    3. Performance percentage deductions reward volume; track these quarterly
    4. Setup charges are one-time -- amortize across the subscription term for accurate monthly margin
    5. Usage charges fluctuate -- use historical averages for margin forecasting

    Field Reference

    Payable Charge Fields

    FieldTypeDescription
    idstringCharge unique identifier
    customerIdstringCustomer the charge belongs to
    customerNamestringCustomer display name
    subscriptionIdstringAssociated subscription
    productNamestringProduct or SKU name
    chargeTypestringSetup, Recurring, or Usage
    billingCyclestringOneTime, Monthly, or Yearly
    listPricedecimalVendor list price per unit
    netPricedecimalPartner net price per unit
    quantityintegerNumber of units
    proratedbooleanWhether charge is prorated
    proratedDaysintegerDays in prorated period
    subTotaldecimalSubtotal before deductions
    deductionsarrayList of applied deductions
    feesdecimalAdditional fees
    taxesdecimalTax amount
    totaldecimalFinal payable amount

    No invoice fields are documented here because no tool on this server returns an invoice. See What this plugin cannot retrieve, above.

    Common Workflows

    Monthly Billing Reconciliation

    1. Determine the window you want from the calendar — there is no period list to read it from
    2. Call sherweb_billing_payable_charges with periodFrom and periodTo set to that window and billingCycleType set to the cycle you are reconciling, paginating through all results
    3. Group charges by customerId to see per-customer totals
    4. Compare Sherweb charges against what you bill each customer in your PSA
    5. Flag discrepancies where MSP cost exceeds or is too close to client billing

    Margin Analysis Across Customers

    1. Fetch all payable charges for the date range
    2. For each customer, sum the total field across all charges
    3. Compare against your retail billing to that customer
    4. Calculate margin per customer and overall portfolio margin
    5. Identify customers with negative or sub-target margins

    Deduction Tracking

    1. Fetch payable charges and filter for entries with non-empty deductions arrays
    2. Group deductions by type (PromotionalMoney, PromotionalPercentage, PerformancePercentage)
    3. Sum total savings from each deduction category
    4. Track performance percentage deductions over time to monitor volume rebate trends

    Charge Verification (there is no invoice verification workflow)

    Invoice retrieval is not available through this plugin — see What this plugin cannot retrieve. Verify at the charge level instead:

    1. Call sherweb_billing_payable_charges for the window under review
    2. For each charge worth scrutiny, call sherweb_billing_charge_details with its chargeId to see the line items, deductions, fees, and tax
    3. Cross-reference those line items against what you expected to be provisioned
    4. Verify totals and flag discrepancies. To confirm the invoice document itself, open it in the Sherweb partner portal — no tool here returns it.

    Cost Forecasting

    1. Pull 3-6 months of history by calling sherweb_billing_payable_charges once per month, with periodFrom/periodTo bounding each month explicitly
    2. Calculate average monthly cost per customer and per product
    3. Identify trends (growing seat counts, new products, usage spikes)
    4. Project next month's Sherweb costs for budget planning

    Response Examples

    Payable Charge:

    {
      "id": "chg-2026-02-001",
      "customerId": "cust-abc-123",
      "customerName": "Acme Corporation",
      "subscriptionId": "sub-def-456",
      "productName": "Microsoft 365 Business Premium",
      "chargeType": "Recurring",
      "billingCycle": "Monthly",
      "listPrice": 22.00,
      "netPrice": 17.10,
      "quantity": 25,
      "prorated": false,
      "proratedDays": null,
      "subTotal": 427.50,
      "deductions": [
        {
          "type": "PerformancePercentage",
          "description": "Volume rebate - Gold tier",
          "percentage": 3.0,
          "amount": 12.83
        }
      ],
      "fees": 0.00,
      "taxes": 33.17,
      "total": 447.84
    }
    

    Error Handling

    Common Errors

    ErrorCauseResolution
    No charges foundThe periodFrom/periodTo window contains no charges, or the wrong billingCycleType was requestedWiden the date range and re-check the cycle type. There is no period list to validate against — the window is whatever you passed
    Charge details unavailableCharge ID does not existVerify the charge ID from the sherweb_billing_payable_charges result
    Authentication errorExpired or invalid tokenRe-authenticate using OAuth 2.0 client credentials flow

    Best Practices

    1. Track deductions - Monitor promotional and performance deductions to ensure you receive expected discounts
    2. Watch for proration - Prorated charges indicate mid-cycle changes; verify they match subscription modifications
    3. Separate charge types - Analyze Setup, Recurring, and Usage charges independently for accurate cost modeling
    4. Calculate true margin - Include fees and taxes in margin calculations, not just netPrice vs listPrice
    5. Monitor usage charges - Usage-based charges (Azure, etc.) can spike unexpectedly; set up alerts
    6. Plan for billing cycles - Annual charges create cash flow events; plan for yearly renewal months
    7. Use performance rebates strategically - Consolidate purchasing through Sherweb to maximize performance percentage deductions

    Related Skills

    Frequently asked questions

    What to verify before installation and use

    What does the Sherweb Billing source document cover?

    Sherweb distributor billing: explicit billing date ranges, Setup/Recurring/Usage charge types, billing cycles (OneTime, Monthly, Yearly), the pricing breakdown (listPrice, netPrice, prorated, subTotal), promotional and performance deductions, fees, taxes, and MSP margin calculation. Also covers what this plugin cannot retrieve: there is no billing-period en…

    How do I install Sherweb Billing?

    The source record exposes this install command: npx skills add https://github.com/WYRE-AI/msp-claude-plugins --skill "msp-claude-plugins/sherweb/sherweb/skills/billing". Inspect the command and pinned source before running it.