Standard data schema

Last Updated: 19/11/2024     Tags: subscriber, data, subscribers, custom, fields
  • Switch Version
  • V5
  • V4

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.

Standrard data schema

Subscriber data

Standard profile fields

Field Description Encoding/format
id Taguchi subscriber ID 64-bit integer
ref external ID UTF-8 text
email 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.