RCA Migrations

Salesforce Revenue Cloud Accelerator, migrated correctly

Revenue Cloud Accelerator (RCA) and Salesforce Billing objects have deep dependency chains. Assets before Subscriptions. Contracts before Orders. Orders before Invoices. SwiftPort's RCA migration mode handles this automatically — with field mapping, deduplication, and critical-fail logic that stops the chain if something breaks.

Ordered

Dependency chain

Financial

Billing precision

Safe

Fail-safe stops

RCA objects SwiftPort can migrate

The RCA template covers the standard Revenue Cloud and Billing object model. Any custom objects your implementation added are also available from your org's schema.

Assets

Asset

Purchased products tied to accounts — the foundation of RCA

Subscriptions

SBQQ__Subscription__c

CPQ subscriptions linked to assets and contracts

Contracts

Contract

Contracts governing the service relationship

Orders

Order

Orders created from quotes and contracts

Order Products

OrderItem

Line items on orders, linked to price book entries

Invoices

blng__Invoice__c

Billing invoices generated from orders and subscriptions

Invoice Lines

blng__InvoiceLine__c

Individual line items on invoices

Credit Notes

blng__CreditNote__c

Credits issued against invoices

Dependency Chain

Run in the right order, automatically

The RCA object model is a tree of dependencies. SwiftPort's migration engine processes each step sequentially, and if any step in a chain fails, execution stops immediately to prevent orphaned records or broken lookups downstream.

  • Products and Price Books migrated first
  • Assets created before Subscriptions and Contracts
  • Orders follow Contracts; Order Items follow Price Book Entries
  • Invoices and Invoice Lines only after Orders succeed
  • Chain stops if any step hits a critical failure
1. Products & Price Books
2. Assets
3. Contracts & Subscriptions
4. Orders & Order Items
5. Invoices & Invoice Lines
6. Credit Notes

Why RCA migrations are uniquely difficult

RCA dependencies run deep

Assets depend on Products and Accounts. Subscriptions depend on Assets and Contracts. Invoices depend on Orders and Subscriptions. The chain is long and order-sensitive — a single step out of order cascades into dozens of lookup failures.

Financial data demands precision

Revenue and billing data has strict field requirements. Required fields, precision constraints on currency fields, date field formats, and lookup validations all need to be mapped correctly. SwiftPort flags every type mismatch and required field gap before you run.

Match by unique revenue identifiers

RCA objects often have natural unique keys — invoice numbers, order numbers, contract numbers. Configure match strategies using these so re-runs and incremental updates never create duplicates in your billing system.

Don't migrate partial billing chains

If Asset migration fails, SwiftPort stops the chain immediately. Subscription records won't be inserted with broken Asset lookups. Invoice lines won't reference non-existent invoices. The critical-fail logic keeps your data consistent.

When to use RCA migrations

Production → Sandbox for billing testing

Billing logic is hard to test without real data. Pull a subset of production Assets, Subscriptions, and Invoices into your sandbox for realistic end-to-end billing testing.

Revenue Cloud implementation migration

Moving from Salesforce Billing to Revenue Cloud Accelerator? Use SwiftPort to migrate your existing billing objects into the new data model with field mapping to handle schema changes.

Org split or acquisition

A division is splitting off or being acquired. Move their revenue objects — active contracts, open invoices, recurring subscriptions — to the new or acquiring org.

Multi-region org consolidation

Multiple regional orgs each with their own billing data. Consolidate into a single global org with RCA as the billing backbone.

How it works

01

Select RCA template

Start with the RCA migration template. It pre-sets the dependency-ordered object chain: Assets → Subscriptions → Contracts → Orders → Invoices.

02

Scope each step with filters

For billing data, you often want a subset — e.g. active subscriptions only, open invoices from the last 12 months, contracts in specific regions.

03

Map billing fields carefully

Currency fields, date fields, formula-backed fields — the mapper flags every type mismatch. AI analysis catches precision and format issues.

04

Set match strategies using invoice/order numbers

Invoice Number, Order Number, Contract Number are natural deduplication keys. Use these as your match field to prevent re-runs from creating duplicate billing records.

05

Review AI pre-flight analysis

Before running, SwiftPort's AI checks for required field gaps, type mismatches, picklist values in source that don't exist in target, and flags them with suggested fixes.

06

Run with monitoring

Execute. Per-step progress updates in real time. If a step fails, the chain stops. Fix the mapping issue and re-run — already-migrated steps are handled by the match strategy.

Also using Salesforce CPQ?

SwiftPort also has a dedicated CPQ migration mode for the Salesforce CPQ product catalog hierarchy — Products, Price Books, Price Rules, and Discount Schedules.

Explore CPQ Migrations

Ready to migrate your Revenue Cloud data?

Start free. Connect your orgs and run your first RCA migration job in minutes.