Practice Free AP-223 Exam Online Questions
What is the most Scalable way to set the legal Entity on the Order Product and Order Product Consumption Schedule?
- A . Use a Work Flow
- B . Use a Custom Setting
- C . Use a Quote Calculator Plugin (QCP)
- D . Use a Flow that is triggered when the record is created and run before the record is saved
D
Explanation:
Requirement:
Set Legal Entity on Order Product and OP Consumption Schedule in a scalable way.
Runs before insert, so no second update transaction is needed.
Scalable (bulk-safe, low CPU, no recursion).
Modern Salesforce best practice for field population.
Works consistently across:
Order Products
Usage/Consumption Schedules
Why
D. Before-Save Flow is correct Why not the others? Option Why Incorrect
An Invoice Scheduler is set up with Target Date = January 15 and Bill Usage Charges False.
Which setting will generate invoice lines?
- A . Order Products with Next Billing Date equal to or earlier than January 15
- B . Usage Summaries with Next Billing Date equal to or earlier than January 15
- C . Order Products with Next Billing Date equal to or after January 15
- D . Order Products with Next Charge Date equal to or earlier January 15
A
Explanation:
Invoice Scheduler Settings:
Target Date = Jan 15
Bill Usage Charges = FALSE
This means:
The scheduler will generate invoice lines for Order Products only, not usage summaries. Thus the correct rule is:
✔ A ― Order Products with Next Billing Date equal to or earlier than January 15 Why the other options are wrong: Option
Why Incorrect
B ― Usage Summaries
Ignored because Bill Usage Charges = False.
C ― Next Billing Date equal to or after
Billing only generates lines for dates <= Target Date.
D ― Next Charge Date
Not used by Invoice Scheduler.
Thus A is correct.
sales management has stated that they would like annual recurring revenue captured on Opportunity Line Item object in order to reference within existing pipeline reports. Annual recurring revenue is currently captured in the field_ ARR__c on the SBQQ__Quoteline__c object.
Which is the most efficient solution?
- A . Create ARR__c on the Opportunity Line ltem object, matching the field configuration of ARR__con SBQQ__QuoteLine__c
- B . Create a cross-object formula field on the Opportunity Line Item to reference ARR__c data SBQQ__Quoteline__c
- C . Create ARR__c on the Opportunity Line Item object, and create a flow to copy the value from ARR__c on SBQQ__QuotelLine__c
- D . Create ARR__c on the Opportunity Line Item object, and create a price rule to copy the value from ARR__c on SBQQ__QuoteLine__c to ARR__c on Opportunity Product
A
Explanation:
ARR__c exists on Quote Line (SBQQ__QuoteLine__c) and must appear on:
Opportunity Line Item for pipeline reporting
Salesforce CPQ automatically syncs Quote → Opportunity Line Item when:
The field exists on both objects
The Field API Name and Field Type match
This requires zero automation, no flow, no price rules.
During user acceptance testing (UAT) a tester submits an incident because the invoice total did not match the expected results.
Which 3 types of information should be included in the description of the incident and a quick resolution?
- A . description of new requirements that will help fix the issue
- B . quote number order number or invoice number
- C . expected resolution date
- D . steps to replace issue
- E . Expected results
B,D,E
Explanation:
During UAT, any incident related to invoice totals must include information that allows the consultant or tester to reproduce and diagnose the issue quickly.
✔ B ― Quote number, Order number, or Invoice number These IDs allow the consultant to immediately:
Locate the exact transaction
Review invoice lines, tax, proration, billing rules
Check data mapping and calculation sequence
This is essential for any Revenue Cloud troubleshooting scenario.
✔ D ― Steps to replicate the issue Without reproducible steps, diagnosis is almost impossible. UAT defect triage requires:
Exact user actions Fields populated
Sequence of operations (e.g., "Bill Now", "Invoice Run", etc.) This is a Salesforce UAT best practice.
✔ E ― Expected results Crucial for determining:
Whether the system is incorrect
Whether requirements were misunderstood
Whether recalculation logic (tax, proration, discounts) was expected to behave differently
Why Other Options Are Incorrect Option
Why Wrong
A ― Description of new requirements
UAT incidents are not for new requirements; they are for defects.
C ― Expected resolution date
Not part of incident description; it’s part of project management, not defect logging.
Final Answer B, D, E
An invoice run with a target date of 6/1/20 has completed with no errors.an order product with a next billing date of 6/1/20 did not generate an invoice line.
Which of the following fields might hold a value that would account for this?
- A . Billing type
- B . Next change date
- C . billing account
- D . invoice run processing status`
- E . Billing day of month
Universal containers recently migrated legacy contracts and subscriptions into salesforce in order to facilitate amendments and renewals in CPQ. however, sales user share getting the ‘attempt to de-reference a null object’ error when amending the legacy contract.
What is the most likely cause for the error?
- A . Migrated contracts and subscriptions cannot be amended using salesforce CPQ
- B . Amendment of legacy contract and subscription data requires asset-based renewal method
- C . Required fields are missing or incorrectly populated on the legacy contract and subscription data
- D . Legacy subscription data are missing a lookup to a source quote line record
C
Explanation:
When Salesforce CPQ attempts to amend a contract, it relies on a very specific set of fields on:
Contract
Subscription
Asset (for asset-based models)
Quote Line (for amendment and renewal linkage)
If mandatory amendment fields are missing, CPQ’s amendment engine will throw errors ― most commonly:
“Attempt to de-reference a null object”
This happens because CPQ expects certain relationships and data points that do not exist in legacy-migrated records unless populated correctly.
✔ Why C is the correct answer When migrating historical Contracts and Subscriptions, CPQ requires certain fields to be populated, such as:
Account
StartDate
EndDate
Contract Number
Pricebook2Id
Contracted = TRUE
ContractId
Product2Id
Quantity
StartDate
EndDate
ListPrice
SalesPrice
SubscriptionType
Status = Active
TermStartDate
TermEndDate
Most importantly:
OriginalContractedListPrice
OriginalContractedSalesPrice
OriginalQuantity
OrderProductId (for order-based renewals)
AssetId (required depending on renewal model)
Contract Required FieldsSubscription Required FieldsIf any of these fields are missing or incorrectly mapped, the amendment engine fails.
CPQ amendment logic does not require a source quote line for legacy migrations, nor does it block amendments on migrated data if all required fields are present.
Thus C is the only answer consistent with CPQ documented behavior.
❌ Why the other answers are wrong
A Revenue Cloud Consultant learns salesforce is deploying a new release during the course of the implementation.
which two should be taken to make sure the implementation is tested against the new release before it deploys to production?
- A . Review status.salesforce.com to determine refresh cutoff for the new release
- B . The platform ensures that all sandboxes are upgraded at the same time so wait for the update.
- C . Determine whether your sandbox is on a preview or non preview instance.
- D . Submit a ticket to support when you want your sandbox Updated.
A,C
Explanation:
Salesforce upgrades Preview sandboxes before production. To ensure testing is done on the next release before go-live:
✔ A ― Review status.salesforce.com for release and sandbox cutoff dates This tells you: When sandboxes will upgrade
Deadlines for refreshing to get onto Preview Release milestones
✔ C ― Determine whether your sandbox is on a preview or non-preview instance This determines your next action:
Preview instance → sandbox upgrades early
Non-preview → sandbox upgrades after production
This is essential to test the implementation before production is upgraded.
Why B and D are incorrect Option
Why Incorrect
B ― “All sandboxes upgrade at the same time”
False: preview vs non-preview sandboxes upgrade at different times.
D ― “Submit a ticket to support to upgrade sandbox”
Salesforce does not move or upgrade sandboxes via support case. Release timing follows the published schedule only.
Final Answer A, C
A Revenue Cloud user story for a Subscription-based Company Looking to replace their legacy system states “As a pricing Manager, bulk discounts will include previously purchased quantities for pricing calculations on the quote in order to reward loyal customers ”
What should be included in the design of this solution?
- A . Custom Action to retrieve Purchased quantities from an external source
- B . Contracts, Subscriptions and Assets should be populated with historical data.
- C . Use a summary variable targeting the subscription object with a Price Rule.
- D . Legacy Orders and invoices should be migrated.
- E . Discount schedules with Cross Orders checked.
B,E
Explanation:
User Story “As a pricing manager, bulk discounts must include previously purchased quantities for pricing calculations on the quote to reward loyal customers.”
This refers to historical purchases influencing tiered or volume discounts.
In Salesforce CPQ, the only native feature that supports “include prior purchases when calculating discount tiers” is:
✔ Discount Schedules with Cross Orders enabled This setting tells CPQ to: Look at existing subscriptions, assets, orders, and previous quote lines Aggregate prior quantities
Apply tiered volume discount based on the total owned quantity + new quantity But for Cross Orders functionality to work…
✔ Historical Subscriptions / Assets must exist So you must migrate historical: Contracts
Subscriptions
Assets (if asset-based ordering)
Without that data, CPQ cannot aggregate historical quantities.
Correct answer: B and E ✔ B ― Populate Contracts, Subscriptions, and Assets with historical data CPQ needs these to calculate previously purchased quantities.
✔ E ― Discount Schedules with Cross Orders checked This is the actual feature that uses prior purchased amounts to determine discount tiers.
Why the other options are not correct: Option
Why Incorrect
A ― Custom Action
Unnecessary. CPQ has native Cross Orders behavior.
C ― Summary Variable
Summary variables do not summarize external historical purchases.
D ― Migrate Orders & Invoices
Not required for CPQ pricing. Only Subscriptions/Assets matter.
What three key considerations for legacy data migration will expand the project scope of a Revenue Cloud implementation? Choose 3 answers
- A . Extracting from multiple sources takes additional resources and time to access and process
- B . The Amendments and Renewals process will be subject to customizations
- C . The creation of external objects will bypass the need for legacy data migration
- D . Fragmented and incomplete information will need to be aggregated and validated, otherwise the solution will yield unexpected results
- E . Large volumes of data take a longer time to load.
Universal Containers is reporting a platform governor limit issue while saving a quote with a large number of quote line items.
What should the Revenue cloud consultant recommend to address the issue?
- A . Enable the CPQ package setting for “quote batch size” to a value which is less than the number based on the volume testing to avoid platform gov. limits
- B . Enable the CPQ Package setting for “Large Quote Experience”
- C . Enable the CPQ package setting for “Large Quote Threshold” to a value which is less than the number based on the volume testing to avoid platform gov. limits
- D . Enable the CPQ package setting for “Large Quote Threshold” to a value which is less than the number of lines which triggered the error during testing
