Skip to content

Data schema

This page lists every field Fidero recognises: the properties an event carries, the fields inside its line items and the traits on a user’s profile. Use these names and each destination receives them in the shape it expects, with nothing to map yourself.

Standard events covers the event names. This page covers the fields.

Every event shares one envelope, whether the SDK sent it or your server did. The three field families on this page sit inside it:

{
"event": "purchase_completed",
"userId": "user_5k31d8",
"properties": {
"transaction_id": "ord_5Wj8K2",
"value": 54.0,
"currency": "GBP",
"items": [
{
"item_id": "sku_142",
"item_name": "Annual plan",
"price": 54.0,
"quantity": 1
}
]
},
"context": {
"traits": {
"email": "mira@example.com"
}
}
}

properties carries the event’s detail, properties.items the line items, and context.traits the user’s traits. In the browser you pass traits as its own field on a track call – the SDK stores them on the profile and sends them in context.traits. The envelope’s transport fields (auth, IDs, timestamps) are on the HTTP API.

The money fields lead: most destinations key on value, currency and transaction_id.

value number

The monetary value of the event, such as order revenue.

currency string

ISO 4217 currency code, such as GBP. Fidero fills in your project’s default if you leave it out and there’s a value.

transaction_id string

A unique ID for the transaction. Fidero deduplicates on it, so a purchase counts once even when a destination receives both a browser and a server copy.

items array

The line items the event covers. Each entry takes the fields under Line items.

coupon string

The discount code applied to the order.

shipping number

The shipping cost of the order.

tax number

The tax on the order.

search_term string

What the user searched for, on search_performed.

payment_type string

The payment method, such as card or PayPal, on payment_info_added.

shipping_tier string

The delivery tier for the order, such as standard or next-day.

method string

How the action was done, such as the sign-in provider on user_logged_in.

item_list_id string

The ID of the list being viewed, on item_list_viewed.

item_list_name string

The name of the list being viewed, on item_list_viewed.

customer_type string

Whether the customer is new or returning for this event.

delivery_category string

How the purchase will be delivered, such as home_delivery.

Properties outside this set aren’t dropped – they land in your warehouse with the event. To map a custom field to another destination, request it: Configuration & changes covers how.

Page views carry their own auto-captured fields (page_title, page_url and the rest) – Methods covers them.

For events that involve products or plans – views, carts, purchases – each entry in properties.items describes one item.

item_id string

Your unique identifier for the item.

item_name string

The item’s name.

price number

The price of a single unit.

quantity integer

The number of units.

discount number

The discount applied to the item, as a monetary value.

coupon string

The discount code applied to the item.

item_brand string

The item’s brand.

item_category string

The item’s category. Up to five levels: item_category through item_category5.

item_variant string

The variant, such as colour or size.

item_list_id string

The ID of the list the item appears in.

item_list_name string

The name of the list the item appears in.

index integer

The item’s position in a list or cart.

affiliation string

The store or business the item is sold through.

location_id string

The ID of the physical location, such as a store.

is_subscription boolean

Whether the item is a subscription.

Traits describe the person rather than the event, and they live on the user’s profile. Set them with updateIdentity, pass them on a track call or send them in context.traits from your server.

email string

The user’s email address.

phone string

The user’s phone number.

firstName string

The user’s first name.

lastName string

The user’s last name.

name string

The user’s full name. If you pass only firstName and lastName, Fidero fills in name – and the other way round.

jobTitle string

The user’s job title, such as VP of Engineering.

companyName string

The company the user represents.

gender string

The user’s gender.

birthday string

The user’s date of birth.

address object

The user’s postal address.

street string

The street address.

city string

The city.

region string

The region or county.

state string

The state or province.

postalCode string

The postal or ZIP code.

countryCode string

The two-letter country code (ISO 3166-1 alpha-2).

message string

A message from the user, such as the body of a lead form.

createdAt string

When the user’s account was created, as an ISO 8601 string. If you don’t set it, Fidero fills it in when the signup_completed event arrives.

city, state, postalCode and countryCode are also accepted as flat traits, outside the address object.