Capillary supports various data fields for different data profiles such as customer, transaction, and product. Each profile consists of these types of data fields.
- Standard: These are mostly mandatory fields for a profile and include data validation.
- Custom: These are non-mandatory fields with minimal or no data validation. These fields help capture custom information but reporting is not possible.
- Extended: These are optional fields with data validation and can be used for reporting.
These are preconfigured data fields and are available according to the data profiles. These are usually mandatory fields with data validations. Standard fields are required to pass in APIs or imports.
The following are some examples of standard fields.
- For Customer: Mobile number, email ID, first name, last name and so on.
- For Transaction: Bill number, amount, type, and so on.
- For Product: Item code, description, price and so on.
Custom fields are columns which store special or custom information related to customers, transaction, transaction line-items, coupons and so on. As there is no control over the field values, it is difficult to run reports on custom fields. For example, if custom field Gender has values M, F, and MF, it becomes difficult for an analyst to work directly on such data.
The following entity shows different entities of custom fields.
These are proposed fields to standardize input values and keys across organizations. This helps to get rid of the complex data that comes into the Capillary system, unlike custom fields. Capillary controls the field names, data types, enum values, and scopes for the extended fields captures values based on rules (logical or regex expressions).
The following illustration shows different entities that support extended fields.
Extended fields support integer, string, double, date-time, standard_enum, and custom_enum data types.
Standard Enum: Consists of predefined values that remain the same across APIs. A standard_enum extended field is mapped to one or more values.
Custom Enum: Consists of predefined values for each field and each value is mapped to a specific org. One value can be mapped to different orgs.