ramped-quotes

Build and verify multi-year group-ramp Revenue Cloud quotes through the Connect API.

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

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve? Creating multi-year ramped quotes in Salesforce Revenue Cloud requires a precise sequence of Connect API calls (place, EditGroup, clone, reprice) with strict field legality rules, status polling, and compound uplift configuration that are easy to get wrong. ## Core Features & Use Cases - Proven build sequence: Step-by-step Connect API payloads for creating a quote with a period-1 group, marking it ramped via EditGroup, cloning additional segments, and applying per-segment uplift. - Compound uplift guidance: Explains how to set RampUpliftType on the RampScheduleGroup and UnitPriceUplift per segment, with the PriceRevision engine prerequisites and numeric verification formulas. - Status polling and read-back: Defines the live v68 CalculationStatus enum (settled, in-flight, failed) and read-back queries for TCV, per-period subtotals, and ramp-by-product matrices. - Use Case: Build a 3-year ramped quote on a standalone subscription SKU with 5% then 3% compound uplift, poll each mutation to a settled state, and verify the compounded net prices (360 → 378 → 389.34) from the priced quote. ## Quick Start Ask the agent to build a three-year group-ramp quote on a standalone subscription product with compound uplift, following the ramped-quotes skill and verifying the result on a live org.

Frequently Asked Questions about ramped-quotes

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

FAQPage Schema
How do I create a multi-year ramped quote in Revenue Cloud?▼

Create the quote with a period-1 QuoteLineGroup via placeSalesTransaction, mark it ramped with groupRampAction EditGroup (IsRamped=true, SegmentType=Yearly), then call the clone endpoint once per additional period, cloning the last ramped group. Poll Quote.CalculationStatus to a settled state between every mutating call.

How do I configure compound price uplift on a ramp deal?▼

Set RampUpliftType='Compound' on the top-level RampScheduleGroup (never on the line) and per-segment UnitPriceUplift on each QuoteLineItem, then reprice with pricingPref Force. Compound uplift also requires Advanced Detail Line Pricing enabled and a fully configured PriceRevision element in the pricing procedure.

What is the difference between a group ramp and a line ramp?▼

A group ramp creates one QuoteLineGroup per period via placeSalesTransaction and clone, and supports compound uplift because the group holds RampUpliftType. A line ramp uses createRampDeal on a single line, produces ungrouped segments, and cannot compound.

Why does my ramped quote line have a null RampIdentifier?▼

A null RampIdentifier on read-back usually means the org's context definitions are stale, not a graph mistake. Running a Context Definition sync fixes it; see the context-service skill for the sync procedure.

Can I ramp a bundle with an active constraint model?▼

No. A bundle re-expands its children on each clone when the CML constraint model is active, which is a known issue. Keep ramp builds on standalone products using configurationMethod Skip.

Why must Yearly ramp segments be exactly 365 days?▼

The Yearly segment type requires exactly 365 days for all segments, so a calendar-year span hitting a leap year (366 days) violates the rule. Use StartDate plus 364 days, or use SegmentType Custom for variable or true calendar-year durations.