What is a Charge Field Definition?
Charge Field Definitions are primarily used to supply information to the Transaction via a Transaction Charge Map, but can also be referenced in Revenue Configuration Field Mapping, Billing Profiles, and Handlebar functions. The Charge Field Definition references a value in any field on the ZAB Charge record or a value on any record directly related to the Charge (i.e. Subscription, Subscription Item, etc).
Key Characteristics
- Many out-of-the-box Charge Field Definitions exist within ZoneBilling (see below for a list) and additional custom Definitions can be created
- Transaction Charge Maps, Billing Profiles, and ZAB Revenue Configuration Mappings can leverage Charge Field Definitions
- Can reference a value in any field on the ZAB Charge record or any record directly related to the Charge via a Join
Primary Fields
Name: The Name of the Charge Field Definition you are creating
Inactive: Mark the Charge Field Definition ‘Inactive’ if it should no longer be used or is no longer valid (for example, references a field that no longer exists). Invalid Charge Field Definitions can cause errors in the Create Transactions process if not marked invalid.
In most cases we recommend deleting unused Charge Field Definitions. During this process, you’ll be able to view dependent records.
ZAB Core Charge Field: Any out-of-the-box ZAB Charge Field Definitions will have this box checked. Users cannot edit this field on any existing records or select it when creating a new Charge Field Definition.
Charge Field: Select the field on the ZAB Charge record or the related record on which the information can be found.
Field Type: If you selected a field directly on the Charge record for the Charge field, the Field Type will automatically default based on the Data Type of that source field.
If you selected a related record as the Charge field (i.e. Subscription), you will need to manually select the field type of the field on that related record that you will be sourcing data from (via a Join). For example, if the related record is ZAB Subscription and the field you are referencing is Activation Date, you would select Date. See example below.
Charge Field ID: The Charge Field ID will automatically populate with the ID of the source field selected as the Charge Field.
Related Field ID (Join) If you selected a field directly on the Charge record itself, leave this blank. If you selected a related record as the Charge field (i.e. Subscription), you will need to manually enter the field ID of the field on that related record that you will be sourcing data from. For example, if the related record is ZAB Subscription and the field you are referencing is Activation Date, you would find the field ID for that field (i.e. custrecordzco_s_activation_date). See example below.
Dynamic Tag: The Dynamic Tag will automatically generate using the Charge Field ID and the Related Field ID (Join), if applicable.
Out-of-the-Box Charge Field Definitions
ZoneBilling comes with the following Charge Field Definitions when you install the bundle, all of which are marked ‘ZAB Core Charge Field’.
- Amount
- Bill Date
- Billing Schedule
- Charge Item
- Charge Type
- Class
- Currency
- Customer (join to ZAB Subscription)
- Department
- Description
- Discount
- Exclude From Order Level Minimum Commit
- Forecasted Value
- Gross Amount
- Internal ID
- List Rate
- Location
- Master Contract
- Quantity
- Rate
- Rate Plan
- Rated Through Date
- Rating Date
- Reference ID
- Service End Date
- Service Start Date
- Subscription
- Subscription Item
- Subsidiary
- Term
- Term Multiplier
- Term Rate
- Unit Activity Expiration Date
- Unit Activity Quantity
Creating Charge Field Definitions
Create a new Charge Field Definition:
- Go to Setup > Zone Advanced Billing Maps/Definitions
- Select Charge Field Definition > New
- Name the Charge Field Definition
- Select the Charge Field data will be sourced from or the related record containing the data
- If a related record:
- Select the Field Type of the field on that record you are mapping to
- Manually input the Related Field ID of the field on the related record
- If a related record:
- Save the Charge Field Definition
Examples:
Charge Field on ZAB Charge Record:
Charge Field Definition Using Join to Related Record:
FAQ
Q: I created a Charge Field Definition and a Transaction Charge Map utilizing it. Why isn’t the value pulling through on the Transaction?
A: Navigate to the ZAB Charge record (or the related record if using a Join) and confirm that the Field Type on the Charge Field Definition matches the Data Type of the related field. The Field Types must match in order for the data to flow through to the Transaction.
Q: I tried to create a Transaction through the Suitelet, but the process failed and I am receiving the message ‘Complete with Errors’ and the error message:
""error":{"title":"Reduce: Incomplete Context Data","details":
{"type":"mapreduce.ReduceContext","isRestarted":false, "executionNo":1,"key":"6887_NO_NO_NO_"
A: Check if there are any Charge Field Definitions that are referencing invalid or deleted fields. If so, inactivate or delete the Charge Field Definition, and try reprocessing again.
Note that even if the Charge Field Definition is not being used in a Transaction Charge Map or Revenue Configuration, it can still generate invalid field reference errors, so it is suggested to always clean up and inactivate unused Charge Field Definitions.