- Support Home
- Knowledge Base
- Subscriber Management
- Managing Subscriber Data
- Standard data schema
Standard data schema
Below is Taguchi's standard data schema.
This is the starting point for all our custom integrations and does not relate to any standard Taguchi functionality. If you would like to discuss a custom integration or the schema below in more detail, you are welcome to contact 'Taguchi Support'.
Example data schema
This is an example Data scheme diagram assuming ref is the unique key instead of email or phone number.
Subscriber data
Standard profile fields
Field | Description | Encoding/format |
---|---|---|
id | Taguchi subscriber ID | 64-bit integer |
ref | external ID | UTF-8 text |
email address | UTF-8 text | |
phone | contact mobile, with international prefix if not Australian (used for SMS) | UTF-8 text |
title | salutation/title, e.g. Mr, Ms | UTF-8 text |
firstname | first name | UTF-8 text |
lastname | last name | UTF-8 text |
address | first line of postal address | UTF-8 text |
address2 | second line of postal address | UTF-8 text |
address3 | third line of postal address | UTF-8 text |
suburb | city / suburb | UTF-8 text |
state | state | UTF-8 text |
postcode | postcode | UTF-8 text |
country | country | UTF-8 text |
notifications | notification preferences or settings | UTF-8 text |
extra | additional information or notes | UTF-8 text |
gender | customer-specified gender | UTF-8 text |
dob | date of birth | ISO8601 date, YYYY-MM-DD |
global_unsubscribed | global unsubscribe flag, null/blank if not globally unsubscribed, otherwise the date/time at which the customer unsubscribed | ISO8601 timestamp, YYYY-MM-DDTHH:MM:SS |
invalid_email | email invalid flag, null/blank if the email address is valid, otherwise the date/time at which the address was marked as invalid | ISO8601 timestamp, YYYY-MM-DDTHH:MM:SS |
custom field | custom field for additional information | UTF-8 text |
partition | subscriber partition or group | UTF-8 text |
event | subscriber event or activity | UTF-8 text |
For more details on data types for each standard field, refer to Subscriber Data Overview.
We do not recommend specifying Taguchi IDs directly, instead the External ID should be used to link our profiles 1:1 with records from the source system.
Each record must include a value for at least one of the following fields: id, ref, email, phone. All other fields are optional. Blank values do not overwrite existing data by default, however this can be configured in our importer.
Partition
Standard partition fields
Field | Description | Encoding/format |
---|---|---|
id | unique identifier | UTF-8 text |
external_id | External ID of the partition | integer |
organization_id | ID of the organization associated with the partition | integer |
Partitions are sub-divisions of an organisation and are useful for segmenting and organizing your customer database. The Partitions area allows you to view, modify and create partitions in your organisation.
In addition to any/all of the standard profile fields, partitions may be included in files.
For example if you have multiple stores, you can create a partition for each store and assign it a set of custom fields. The entire set of partitions can be found in the settings tab, under the Partitions module.
To read more about partitions and how to create them, please click here.
Custom field
Standard partition fields
Field | Description | Encoding/format |
---|---|---|
id | unique identifier | UTF-8 text |
subscriber custom field | custom field | UTF-8 text |
In addition to any/all of the standard profile fields, 'custom fields' may be included in files.
A custom field allows for the inclusion of additional information or metadata that is not covered by the standard profile fields. These fields can be used to store a wide range of information specific to your needs. Each custom field is identified by a unique name and can contain arbitrary UTF-8 text. Custom fields are flexible and adaptable, providing a way to tailor subscriber profiles to suit your requirements.
'Custom fields' contain arbitrary UTF-8 text, and may be given any name except for the names of the standard profile fields above.
We typically configure our importer to validate that all required custom fields are present, however we can also enable on-the-fly creation of new custom fields for any additional columns in the imported data file.
Subscriber Events
Standard subscriber event fields
Field | Description | Encoding/format |
---|---|---|
id | unique identifier | UTF-8 text |
subscriber_ref | subscriber l ID of the partition | integer |
event_data | data or information related to the event | UTF-8 text |
timestamp | ddate/time at which this transaction took place | ISO8601 timestamp, YYYY-MM-DDTHH:MM:SS |
In addition to the standard fields, custom fields may be included in transactions. Custom fields may contain arbitrary UTF-8 text.
Transaction line items may be supplied as JSON objects within the transaction data file, or may be supplied in a separate file with a transaction ID key matching the values in the transaction data file.
Transaction line item data
Field | Description | Encoding/format |
---|---|---|
id | customer-assigned product ID | UTF-8 text |
price | per-unit price for the product | real |
qty | number of units purchased | real |
sale | whether or not the product was on sale | boolean, true/false |
In addition to the standard fields, custom fields may be included in transaction line items. Custom fields may contain arbitrary UTF-8 text.
If transaction line items are specified in a separate file, the file must contain a "transaction_id" field which will be used to link transaction line items back to their transaction records.
Product data
Standard product data
Field | Description | Encoding/format |
---|---|---|
id | customer-assigned product ID | UTF-8 text |
product | product | text |
price | per-unit price for the product | real |
qty | number of units purchased | real |
custom field | product custom field | UTF-8 text |
For use-cases where targeting queries are run on product attributes such as category hierarchy, it is more efficient to load these attributes into our product data store, rather than passing them as transaction line item fields. A product data file must contain an "id" field which uniquely identifies the product, plus any number of uniquely-named product attribute fields. All product attribute fields are arbitrary UTF-8 text.