Your data with Commerce
The Commerce extension builds on top of your NPSP or Nonprofit Cloud extension. Read this alongside Your data in NPSP or Your data in Nonprofit Cloud. Those articles cover how MoveData handles contacts, accounts, campaigns, and campaign members. All of those records work the same way with Commerce installed.
Commerce processes non-donation transactions like merchandise, ticket, and raffle sales. These differ from donations because a single transaction contains multiple items — like a cart with different products. This article covers only the sale-specific records that Commerce creates in Salesforce.
Opportunities (Sales)#
Commerce creates an Opportunity record to represent each sale. This applies to both NPSP and Nonprofit Cloud organisations.
Why Opportunities and not Gift Transactions?
If you use Nonprofit Cloud, you might expect sales to appear as Gift Transactions. However, Gift Transactions do not support line items (the individual products in a sale). Opportunities do support line items through Opportunity Products, making them the right fit for commerce.
Key fields set by MoveData#
| Field | Description |
|---|---|
| Name | Sale name |
| Stage Name | Current stage of the sale |
| Close Date | Date the sale occurred |
| Amount | Total sale amount (calculated from line items) |
| Account | The buyer's account |
| Campaign | The campaign linked to the sale |
| Primary Contact | The buyer (NPSP) |
| Pricebook | Links to the standard pricebook |
How MoveData finds existing opportunities#
MoveData matches opportunities using the platform key — a unique identifier that your fundraising platform assigns to each record. If an opportunity with the same platform key already exists, MoveData updates it instead of creating a duplicate.
Refunds
When a refund is issued in your fundraising platform for a commerce transaction, MoveData adjusts the Opportunity amount to reflect the refunded amount. For a full refund, the Stage Name changes to Closed Lost. For a partial refund, the Stage Name stays as Closed Won with the reduced amount.
Products#
Products represent the individual items in a sale. For ticketing, these might be adult tickets, child tickets, or VIP passes. For merchandise, these might be t-shirts, hats, or wristbands.
MoveData creates Product records in Salesforce using the standard Product object (Product2).
Key fields set by MoveData#
| Field | Description |
|---|---|
| Name | Product name from the platform |
| Product Code | Product code for identification |
| SKU | Stock-keeping unit — a unique code used for inventory tracking |
| Description | Product description |
| Is Active | Whether the product is available |
How MoveData finds existing products#
MoveData matches products using the platform key. If a product with the same platform key already exists, MoveData updates it instead of creating a duplicate.
Opportunity Products (Line Items)#
Each item in a sale becomes an Opportunity Product record. This links the Opportunity to the Products it contains. For example, if a buyer purchases two adult tickets and one child ticket, MoveData creates three Opportunity Product records on that Opportunity.
Key fields set by MoveData#
| Field | Description |
|---|---|
| Opportunity | The sale this line item belongs to |
| Pricebook Entry | Links to the product's price in the pricebook |
| Quantity | Number of this product purchased |
| Unit Price | Price per unit |
| Total Price | Quantity multiplied by unit price |
How MoveData finds existing line items#
MoveData matches opportunity products using the platform key. If a line item with the same platform key already exists, MoveData updates it instead of creating a duplicate.
Standard Pricebook#
Salesforce requires a pricebook to use Opportunities with Products. MoveData links the standard pricebook to the associated records. MoveData does not create or manage pricebook entries itself.
Warning
Make sure the standard pricebook is active in your Salesforce environment. If it is inactive, MoveData cannot link products to opportunities.
Further reading#
For the full technical field reference, see Commerce extension fields and objects.