renewal-asset-creation

Creates renewal-ready Salesforce Revenue Cloud assets through Quote to Order to Activation flows.

5|3|Updated Sep 9, 2026
One-click install
npx skills add https://github.com/SalesforceLabs/revenue-cloud-foundations --skill renewal-asset-creation-salesforcelabs
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: renewal-asset-creation
Source: https://github.com/SalesforceLabs/revenue-cloud-foundations/tree/main/.cursor/skills/renewal-asset-creation
Command: npx skills add https://github.com/SalesforceLabs/revenue-cloud-foundations --skill renewal-asset-creation-salesforcelabs

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes scripts (resource) components.

What problem does it solve? Building realistic renewal test data in Salesforce Revenue Cloud is hard because lifecycle fields like LifecycleEndDate and state periods must be platform-derived, not hand-inserted. This Skill produces renewal-ready Assets through the real Quote → Order → Activation path, spread across the four renewal expiry windows, and optionally layers multi-year Renewal, Upsell, and Downsell lifecycle event history onto them. ## Core Features & Use Cases - Expiry-bucket asset generation: build_renewal_buckets.py computes the ≤30 / 30-60 / 60-90 / >90 day windows from today, back-solves start dates from the term, and drives the existing quote-to-asset builder once per asset. - Lifecycle history augmentation: augment_asset_lifecycle.apex adds Renewal/Upsell/Downsell events to pristine existing assets, reusing each asset's real PBE, selling model, and booked post-discount amounts, with a guarded reset_augment.apex for rebuilds. - Use Case: Prepare renewal revenue-insights or renewal-quote testing by generating four assets per account (one per expiry window) for a TermDefined SKU like QB-DB on Term Annual, then augmenting them with a six-event lifecycle timeline. ## Quick Start Run the renewal bucket builder against my org alias with account Infinitech, SKU QB-DB, one asset per bucket, a 12-month term, and the Term Annual selling model, starting with a dry run to preview the plan.

Frequently Asked Questions about renewal-asset-creation

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I create renewal test assets in Salesforce Revenue Cloud?

Run build_renewal_buckets.py with your org alias, account names, SKUs, term months, and a TermDefined selling model. It back-solves start dates for the four expiry windows and builds each asset through Quote, Order, and Activation so lifecycle fields are platform-derived.

How do I add renewal and upsell history to existing Salesforce assets?

Edit the ASSET_IDS or ACCOUNT_NAME_LIKE selector in augment_asset_lifecycle.apex and run it with sf apex run. It layers Renewal, Upsell, and Downsell events onto pristine assets only, reusing each asset's booked post-discount amounts and selling model.

Can I insert Asset records directly with DML in Revenue Cloud?

No. Direct Asset, AssetStatePeriod, or AssetAction DML is not viable for TermDefined products because the platform must derive LifecycleEndDate and state periods. Assets must be built through the Quote to Order to Activation flow.

Why does re-running the augment Apex not change my assets?

The augment script only touches pristine assets with exactly one Initial-Sale action and one state period. An already-augmented asset is skipped as a no-op, so run reset_augment.apex first to remove the marked history before rebuilding.

Which products and selling models are supported for renewal asset creation?

Only TermDefined selling models are supported because expiry windows require a LifecycleEndDate; Evergreen and OneTime are excluded. Pack, Commit, and Bundle SKUs are also unsupported since they need binding or anchor handling the driver does not provide.