---
title: "Transaction Item feed"
date: "2024-02-14T06:18:38+00:00"
summary: "Explore the Transaction Item feed structure in CDP, linking customer data with detailed transaction information. Learn how to properly format and submit product SKUs, revenue, and item statuses for comprehensive customer insights and accurate calculations."
image:
type: "page"
url: "/customer-data-platform/transaction-item-feed"
id: "64982e83-3b01-463f-acc7-c9a2a8e23710"
---

Transaction Item feed structure
-------------------------------

Customer Data Platform (CDP) links the transaction line-level details with each customer. This includes product SKUs bought within each transaction, their associated revenue, and other line status information such as demand, canceled, shipped, or returned.

Feed structure
--------------

Field name

Importance

Data type

Referential integrity

Description

**SourceTransactionItemNumber (key)**

**Required**

String

Webtag:SourceTransactionItemNumber

The unique identifier of the transaction item in your data. If the item has multiple rows due to each status update, from “demand” to “shipped”, CDP creates a unique row for each status. You can achieve this by appending the status of the item to its identifier.

**SourceTransactionNumber**

**Required**

String

Transaction:SourceTransactionNumber, Webtag:SourceTransactionNumber

The unique identifier of the transaction to which this item belongs.

**SourceOrganizationNumber**

**Required**

String

Organization:SourceOrganizationNumber

The identifier of the organization where the TransactionItem was purchased/returned.

**Type**

**Required**

String

 

The type of transaction item. This is to categorize purchases that are included in calculations. For example, Lifetime Value and AOV. The only value that CDP considers for calculations is “Purchase”. Other values such as “Swatch”, “Sample” are ingested but are not considered in CDP’s standard calculations. If you do not provide a value, CDP sets the default value to “Purchase”.

**Subtype**

**Required**

String

 

The type or status of the transaction item. The following are the values:

*   `Demand` - The items that are billed but not shipped
*   Canceled - The items that are billed but canceled and refunded before shipping.
*   `Shipped` - The items that are billed and shipped

`Returned` - The items that are billed and shipped but returned

and refunded.

**InvoiceDate**

**Required**

Datetime

 

The date at which the overarching transaction was placed.

**ShipDate**

**Required**

Datetime

 

The date at which this specific transaction item was billed. The following are the values:

*   `Demand` - Subtype=Demand
*   `Canceled` - Subtype=Canceled
*   `Shipped` - Subtype=Shipped
*   `Returned` - Subtype=Returned

**SourceProductNumber**

**Required**

String

Product:SourceProductNumber

The identifier of the product purchased in that transaction item. There must only be one SourceProductNumber per line in this feed. If the customer purchased multiple distinct products in the same transaction, each unique SourceProductNumber must have its own transaction item line. If the customer purchased multiple times the same product, CDP uses only one line in this feed, with that product’s SourceProductNumber but a Quantity equal to the purchased quantity for that product.

Note

In **360 Profiles**, the **Transactions** tab does not display the entry for a transaction if a matching record for the transaction does not exist in the Product table.

**Quantity**

**Required**

Integer

 

The quantity for the product that was purchased in this transaction item. This value must reflect the Subtype. If the Subtype is “Demand” or “Shipped”, it must be positive. If the Subtype is “Canceled” or “Returned”, it must be negative to negate the lines corresponding to the past status of this item.

**Weight**

Optional

Float

 

The total weight of the product sold in the transaction item. This is not used in CDP’s calculations, and is provided as a standard “pass-through” attribute.

**Volume**

Optional

Float

 

The total volume of product sold in the transaction item. This is not used in CDP’s calculations, and is provided as a standard “pass-through” attribute.

**ListPrice**

Optional

Float

 

The total ListPrice value of the product purchased in the transaction item.

**Currency**

Optional

String

 

The currency for this transaction item’s revenue/costs/discounts/other monetary amounts.

**SaleRevenue**

**Required**

Float

 

The price paid by the customer for this item, after discount and before shipping/tax/fees. This is also referred to as “product revenue”. For most cases, it is Quantity\*(UnitSalePrice-UnitDiscount). This value must reflect the Subtype of the item. If the Subtype is “Demand” or “Shipped”, it must be positive. If the Subtype is “Canceled” or “Returned”, it must be negative to negate the lines corresponding to the past status of this item.

**Discount**

**Required**

Float

 

The product discount for this item before any discount on shipping/tax/ fee. It must also include any transaction-level discount if any was applied. This value must reflect the Subtype of the item. If the Subtype is “Demand” or “Shipped”, it must be positive. If the Subtype is “Canceled” or “Returned”, it must be negative to negate the lines corresponding to the past status of this item.

**CostBasis**

Optional

Float

 

The total Cost of Goods Sold (COGS) for this item. This field is required if you need CDP to compute the product margin. This value must reflect the Subtype of the item. If the Subtype is “Demand” or “Shipped”, it must be positive. If Subtype is “Canceled” or “Returned”, it must be negative to negate the lines corresponding to the past status of this item.

**Tax**

Optional

Float

 

The amount of taxes paid by the customer on this item. This value must reflect the Subtype of the item. If the Subtype is “Demand” or “Shipped” it must be positive. If the Subtype is “Canceled” or “Returned”, it must be negative to negate the lines corresponding to the past status of this item.

**ShippingRevenue**

Optional

Float

 

The amount paid by the customer for shipping this item. This value must reflect the Subtype of the item. If the Subtype is “Demand” or “Shipped” it must be positive. If the Subtype is “Canceled” or “Returned”, it must be negative to negate the lines corresponding to the past status of this item.

**ShippingCost**

Optional

Float

 

The amount spent by your company to ship this item. This value must reflect the Subtype of the item. If the Subtype is “Demand” or “Shipped” it must be positive. If the Subtype is “Canceled” or “Returned”, it must be negative to negate the lines corresponding to the past status of this item.

**ShippingDiscount**

Optional

Float

 

Any discount applied on shipping for this item. This value must reflect the Subtype of the item. If the Subtype is “Demand” or “Shipped” it must be positive. If the Subtype is “Canceled” or “Returned”, it must be negative to negate the lines corresponding to the past status of this item.

**OtherRevenue**

Optional

Float

 

Any other non-product, non-shipping, non-tax revenue generated by this item, such as fees. This value must reflect the Subtype of the item. If the Subtype is “Demand” or “Shipped” it must be positive. If the Subtype is “Canceled” or “Returned”, it must be negative to negate the lines corresponding to the past status of this item.

**OtherCosts**

Optional

Float

 

Any other non-product, non-shipping cost generated by this item, such as fees. This value must reflect the Subtype of the item. If the Subtype is “Demand” or “Shipped” it must be positive. If the Subtype is “Canceled” or “Returned”, it must be negative to negate the lines corresponding to the past status of this item.

**DateCreated**

Optional

Datetime

 

The date at which the record was created in your system.

**Gift**

Optional

Boolean

 

A flag to indicate whether this item was a gift or not. This is not used in CDP’s calculations, and is simply provided as a standard “pass-through” attribute.

**Custom attributes**

Optional

Any (float, datetime, string, boolean)

 

Custom attributes that you want to use inside the CDP application. To get this customization, contact your CDP CVM.

Use cases and related examples for this feed
--------------------------------------------

For more information on how this feed can evolve over the typical lifetime of a transaction order placed, cancelled, items shipped and returned, see [Special considerations for transaction data](/customer-data-platform/special-considerations-transaction-data "Special considerations for transaction data").