Best Practice: Subscription Builder Source Data
Automatic subscription building helps managing subscriptions if your business requires to deal with a large or variable – read: increasing – number of subscriptions.
The way to set up the subscription builder depends on the nature of your products, your sales use cases and the representation of your source data in Salesforce.
The subscription builder requires a number of ON fields on objects if you
- build subscriptions based on master subscriptions,
- build subscriptions based on accordingly configured parent-child objects, or
- build subscriptions based on a data mapping.
ON fields are directly mapped to the subscription or item fields. Custom fields that are not starting with ON_
can only be referenced and used by a data mapping, or, in case of subscription updates, via the field list in ON_FieldsToUpdate
.
Note
This article gives an overview of typically used fields on account/contact as well as on target objects (with master subscriptions) and parent/child objects (of a parent-child relationship).
The appropriate configuration may always vary depending on your individual business requirements.
For additional options, see Subscription Builder Setup Options.
Object | Field | Data Type | Notes |
---|---|---|---|
Account | Billing City | Standard Salesforce field, part of the billing address on the invoice. | |
Billing Country | Standard Salesforce field, part of the billing address on the invoice. | ||
Billing Postal Code | Standard Salesforce field, part of the billing address on the invoice. | ||
Billing Street | Standard Salesforce field, part of the billing address on the invoice. | ||
ON_Tenant | Text(255) Formula(Text) |
To be created, specifies the associated business entity. | |
ON_DebtorNo | Formula(Text) | To be created, specifies the customer-specific debtor number, used to set the contra account in booking details. | |
ON_Region | Formula(Text) | To be created, specifies the (invoice) region to control tax rules. | |
ON_VATNumber | Formula(Text) | To be created, specifies the VAT number of the account, used for the VAT number validation. | |
Contact | Account Name | Standard Salesforce field, the associated account. | |
Standard Salesforce field, the invoice email recipient. | |||
Target/Parent | ON_Account | Formula(Text) | To be created, specifies the associated account. |
ON_Subscription | Lookup(Subscription) | To be created, links to the related subscription. | |
ON_SubscriptionBuildError | Text(255) | To be created, shows the error message in case the subscription creation has failed. | |
ON_MasterSubscription | Text(255) Formula(Text) |
To be created, required when using a master subscription. Specifies the name of the master subscription. | |
ON_MappingId ON_Mapping |
Text(255)/Formula(Text) Text Area (Long) |
To be created, specifies Salesforce record ID of the field mapping file or, respectively, the field mapping to define the data to be retrieved. When using the data mapping to build or update subscriptions, either ON_MappingId or ON_Mapping is required. |
|
ON_Tenant | Text(255) Formula(Text) |
To be created, specifies the associated business entity if different from the account's business entity. | |
Billing City | Standard Salesforce field on a number of objects, to be created with ON_ prefix on custom objects, overwrites the account's the billing address. |
||
Billing Country | Standard Salesforce field on a number of objects, to be created with ON_ prefix on custom objects, overwrites the account's the billing address. |
||
Billing Postal Code | Standard Salesforce field on a number of objects, to be created with ON_ prefix on custom objects, overwrites the account's the billing address. |
||
Billing Street | Standard Salesforce field on a number of objects, to be created with ON_ prefix on custom objects, overwrites the account's the billing address. |
||
ON_StartDate | Formula(Date) | To be created, specifies the service period start of the subscription. If the referenced field is of the type Date/Time , the operator DATEVALUE must precede the referenced field, like DATEVALUE(<datetime_field>) . |
|
ON_EndDate | Formula(Date) | To be created, specifies the service period end of the subscription. If the referenced field is of the type Date/Time , the operator DATEVALUE must precede the referenced field, like DATEVALUE(<datetime_field>) . |
|
ON_UseCase | Formula(Text) Picklist |
To be created, defines the use case (NEW , UPGRADE , REORDER ) to create or modify the subscription. |
|
ON_AutoRenewal | Picklist | To be created, defines the number of days or months to extend the subscription, setting up the subscription for automatic renewal. | |
ON_CancelationTerm | Picklist | To be created, defines the cancelation terms for the subscription. | |
ON_InvoicePaymentMethod | Picklist | To be created, specifies the preferred payment method to be used for invoices created from this subscription. | |
ON_PaymentDue | Number Formula(Number) |
To be created, defines the payment due period of the invoice. | |
ON_CurrencyIsoCode | Formula(Text) | To be created, sets the subscription currency to the parent object currency if a) you use multiple currencies and b) the account currency differs from the parent object currency. The formula is TEXT(CurrencyIsoCode) . |
|
ON_Template | Text(255) Formula(Text) |
To be created, specifies the invoice template that is used to create invoices from this subscription. In the simplest use case, you just name the template to use. If necessary, however, you use a formula that returns a dedicated template according to your specific criteria – target region, business entity, product group, etc. |
|
Child | ON_OrderNo | Formula(Text) | To be created, specifies the key to match source data to a subscription item, must be unique for each detail of the same master. |
ON_Title | Formula(Text) | To be created, specifies the name or title of the item. Required if the detail object is defined in the subscription build filter. |
|
ON_Price | Formula(Currency) | To be created, specifies the net sales price of the item. Required if the detail object is defined in the subscription build filter. |
|
ON_Quantity | Formula(Number) | To be created, specifies the quantity of the item to be invoiced. Required if the detail object is defined in the subscription build filter. |
|
ON_Unit | Picklist | To be created, specifies the unit that is associated with this item. | |
ON_TaxRate | Percent(3,3) Formula(Percent) |
To be created, specifies the applicable tax rate if fixed tax rates are used. | |
ON_ProductGroup | Text(255) Formula(Text) |
To be created, specifies the product group, used for G/L account or center assignments. | |
ON_StartDate | Formula(Date) | To be created, specifies the service period start of the item. If the referenced field is of the type Date/Time , the operator DATEVALUE must precede the referenced field, like DATEVALUE(<datetime_field>) . |
|
ON_EndDate | Formula(Date) | To be created, specifies the service period end of the item. If the referenced field is of the type Date/Time , the operator DATEVALUE must precede the referenced field, like DATEVALUE(<datetime_field>) . |
|
ON_BillingType | Formula(Text) Picklist |
To be created, specifies whether the object is invoiced once, on a recurring or a transactional base; possible values include One-Time , Recurring , Transactional . |
|
ON_BillingPeriod | Formula(Number) | To be created, specifies the time interval (in months) for the item to be considered in an invoice run. | |
ON_BillingUnit | Formula(Text) Picklist |
To be created, specifies the time frame (Day or Month ) used for the price calculation of the billing period |
|
ON_InvoiceLineItemType | Text(255) Formula(Text) |
To be created, specifies the type of the invoice line item to be built from the subscription item. |