Links

Events reference

In this section, you will find all the events references supported by Commanders Act
Here are the most used events:

add_payment_info

This event signifies a user has submitted their payment information
Parameters (required and recommended)
Name
Type
Required
Example Value
Description
payment_method
string
Yes
card
The chosen method of payment (see list of possible values below)
user
Yes
{ id: '12345', email: '[email protected]',
consent_categories: [1,3]
}
consent_categories is the user's consents list and is mandatory to manage consents. It is automatically filled from web sources if you use Commanders Act CMP.
You should also add all user's properties in this user object, especially reconciliation key (id, email).
coupon
string
No
CHRISTMAS
Coupon code used for a purchase.
revenue
number
No
16.00
Revenue (shipping price and taxes excluded) after discount. ()revenue is typically required for meaningful reporting.
()currency is required if you set revenue.
currency
string (ISO 4217)
No
EUR
Currency of the purchase or items associated with the event, in 3-letter ISO 4217 format.
(*) If you supply the revenue parameter, you must also supply the currency parameter so revenue metrics can be computed accurately.
items
No
The items for the event.
Example
JavaScript
Kotlin (Android)
Java (Android)
Objective-C (iOS)
Swift (iOS)
Dart (Flutter)
json
cact('trigger','add_payment_info', {
payment_method: 'card',
revenue: 16.00,
currency: 'EUR',
user: {
id: '12356',
consent_categories: [1,3]
}
});
val event = TCAddPaymentInfoEvent("card")
event.revenue = 16.00f
event.currency = "EUR"
serverside.execute(event)
TCAddPaymentInfoEvent event = new TCAddPaymentInfoEvent("card");
event.revenue = 16.6f;
event.currency = "EUR";
serverside.execute(event);
TCAddPaymentInfoEvent *event = [[TCAddPaymentInfoEvent alloc] initWithId: @"ID";
event.revenue = [[NSDecimalNumber alloc] initWithFloat: 16.00f];
event.currency = @"EUR";
[TCS execute: event];
let event = TCAddPaymentInfoEvent(payementMethod: "card")
event?.revenue = 16.00
event?.currency = "EUR"
serverside?.execute(event)
var event = TCAddPaymentInfoEvent();
event.paymentMethod = "card";
event.revenue = 16.00;
event.currency = "EUR";
serverside.execute(event);
{
"event_name": "add_payment_info",
"payment_method": "card",
"revenue": 16.00,
"value": 22.53,
"currency": "EUR",
"user": {
"id": "12345",
"email": "[email protected]",
"consent_categories": [
1,
3
]
}
}

add_shipping_info

This event signifies a user has submitted their shipping information.

Parameters

Name
Type
Required
Example value
Description
currency
string (ISO 4217)
Yes
EUR
Currency of the purchase or items associated with the event, in 3-letter ISO 4217 format.
(*) If you supply the revenue or valueparameter, you must also supply the currency parameter so revenue metrics can be computed accurately.
value
number
Yes
22.53
The monetary value of the event (shipping price and taxes included) after discount
user
Yes
{ id: '12345', email: '[email protected]',
consent_categories: [1,3]
}
consent_categories is the user's consents list. It is automatically filled from web sources if you use Commanders Act CMP.
You should also add all user's properties in this user object, especially reconciliation key (id, email).
coupon
string
No
CHRISTMAS
Coupon code used for a purchase.
shipping_tier
string
No
Ground
The shipping tier (e.g. Next-day, Air`) selected for delivery of the purchased item.
items
Yes
The items for the event.
Example
JavaScript
Kotlin (Android)
Java (Android)
Objective-C (iOS)
Swift (iOS)
Dart (Flutter)
json
cact('trigger','add_shipping_info', {
value: 8.00,
currency: 'EUR',
coupon: 'promo',
shipping_tier: 'ups',
items: [{
id: 'SKU_12345',
quantity: 1,
variant: 'red',
coupon: 'CHRISTMAS',
discount: 1.99,
product:{
id: '12345',
name: 'Trex tshirt',
category_1: 'clothes',
category_2: 't-shirts',
category_3: 'boy',
brand: 'Lacoste',
price: 9.99
}
}],
user: {
id: '12356',
consent_categories: [1,3]
}
});
val item1 = TCItem("my_product1_id", TCProduct("my_product_1_id", "my_product_1_name", 12.5f), 1)
val item2 = TCItem("my_product2_id", TCProduct("my_product_2_id", "my_product_2_name", 110f), 1)
val items = listOf<TCItem>(item1, item2)
val event = TCAddShippingInfoEvent(items, 112.5f, "EUR")
event.coupon = "promo"
event.shippingTier = "ups"
serverside.execute(event)
TCItem item1 = new TCItem("my_product1_id", new TCProduct("my_product_1_id", "my_product_1_name", 12.5f), 1);
TCItem item2 = new TCItem("my_product2_id", new TCProduct("my_product_2_id", "my_product_2_name", 25.6f), 1);
ArrayList<TCItem> items = new ArrayList<>(Arrays.asList(item1, item2));
TCAddShippingInfoEvent event = new TCAddShippingInfoEvent(items, 112.5f, "EUR");
event.coupon = "promo";
event.shippingTier = "ups";
serverside.execute(event);
NSMutableArray *items = [[NSMutableArray alloc] init];
[items addObject: [[TCItem alloc] initWithItemId: @"iID1"
withProduct: [[TCProduct alloc] initWithProductId: @"pID1"
withName: @"pName1"
withPrice: [[NSDecimalNumber alloc] initWithString: @"1.5"]]
withQuantity: 1]];
[items addObject: [[TCItem alloc] initWithItemId: @"iID2"
withProduct: [[TCProduct alloc] initWithProductId: @"pID2"
withName: @"pName2"
withPrice: [[NSDecimalNumber alloc] initWithFloat: 2.5f]]
withQuantity: 2]];
TCAddShippingInfoEvent *event = [[TCAddShippingInfoEvent alloc] initWithItems: items
withValue: [[NSDecimalNumber alloc] initWithString: @"12.2"]
withCurrency: @"EUR"];
event.coupon = @"promo";
event.shippingTier = @"ups";
[TCS execute: event];
let item_1:TCItem = TCItem(itemId: "my_item1.id", with: TCProduct(productId: "my_product1.id", withName: "my_product1.name", withPrice: 12.5), withQuantity: 1)
let item_2:TCItem = TCItem(itemId: "my_item2.id", with: TCProduct(productId: "my_product2.id", withName: "my_product2.name", withPrice: 22.5), withQuantity: 1)
let event = TCAddShippingInfoEvent(items: [item_1, item_2], withValue: 1, withCurrency: "EUR")
event?.addAdditionalProperty("additionalKey", withBoolValue: true)
event?.coupon = "promo"
event?.shippingTier = "ups"
serverside?.execute(event)
TCProduct tc_product = TCProduct();
tc_product.ID = "product_1_ID";
tc_product.name = "product_1_name";
tc_product.price = 150;
tc_product.addAdditionalProperty("key_additional_product", "val_additional_product");
TCItem tc_item_1 = TCItem();
tc_item_1.ID = "item_1_id";
tc_item_1.product = tc_product;
tc_item_1.quantity = 1;
tc_item_1.addAdditionalProperty("key_additional_item", "val_additional_product");
TCProduct tc_product_2 = TCProduct();
tc_product_2.ID = "product_2_ID";
tc_product_2.name = "product_2_name";
tc_product_2.price = 150;
tc_product_2.addAdditionalProperty("key_additional_product", "val_additional_product");
TCItem tc_item_2 = TCItem();
tc_item_2.ID = "item_2_id";
tc_item_2.quantity = 2;
tc_item_2.product = tc_product;
tc_item_2.addAdditionalProperty("key_additional_item", "val_additional_product");
var event = TCAddShippingInfoEvent();
event.coupon = "promo";
event.shippingTier = "ups";
event.currency = "EUR";
event.items = [tc_item_1, tc_item_2];
serverside.execute(event);
{
"event_name": "add_shipping_info",
"shipping_tier": "Ground",
"revenue": 16.00,
"value": 22.53,
"currency": "EUR",
"items": [
{
"id": "SKU_12345",
"quantity": 1,
"price": 9.99,
"variant": "red",
"coupon": "CHRISTMAS",
"discount": 1.99,
"product": {
"id": "12345",
"name": "Trex tshirt",
"category_1": "clothes",
"category_2": "t-shirts",
"category_3": "boy",
"brand": "Lacoste",
"colors": [
"red"
],
"price": 9.99
}
},
{
"id": "SKU_12346",
"quantity": 1,
"price": 9.99,
"variant": "green",
"coupon": "CHRISTMAS",
"discount": 1.99,
"product": {
"id": "12346",
"name": "Heart tshirt",
"category_1": "clothes",
"category_2": "t-shirts",
"category_3": "girl",
"brand": "Jenyfion",
"colors": [
"blue",
"white"
],
"price": 9.99
}
}
],
"user": {
"id": "12345",
"email": "[email protected]",
"consent_categories": [
1,
3
]
}
}

add_to_cart

This event signifies that an item was added to a cart for purchase.
Parameters (required and recommended)
Name
Type
Required
Example Value
Description
value
number
Yes*
8.00
The monetary value of the event. ()value is typically required for meaningful reporting.
()currency is required if you set value.
currency
string (ISO 4217)
Yes*
EUR
Currency of the purchase or items associated with the event, in 3-letter ISO 4217 format.
(*) If you supply the revenue parameter, you must also supply the currency parameter so revenue metrics can be computed accurately.
user
Yes
{ id: '12345', email: '[email protected]',
consent_categories: [1,3]
}
consent_categories is the user's consents list. It is automatically filled from web sources if you use Commanders Act CMP.
You should also add all user's properties in this user object, especially reconciliation key (id, email).
items
Yes
The items for the event.
Example
JavaScript
Kotlin (Android)
Java (Android)
Objective-C (iOS)
Swift (iOS)
Dart (Flutter)
json
cact('trigger','add_to_cart', {
value: 8.00,
currency: 'EUR',
items: [{
id: 'SKU_12345',
quantity: 1,
variant: 'red',
coupon: 'CHRISTMAS',
discount: 1.99,
product:{
id: '12345',
name: 'Trex tshirt',
category_1: 'clothes',
category_2: 't-shirts',
category_3: 'boy',
brand: 'Lacoste',
price: 9.99
}
}],
user: {
id: '12356',
consent_categories: [1,3]
}
});
val item1 = TCItem("my_product1_id", TCProduct("my_product_1_id", "my_product_1_name", 12.5f), 1)
val item2 = TCItem("my_product2_id", TCProduct("my_product_2_id", "my_product_2_name", 110f), 1)
val items = listOf<TCItem>(item1, item2)
val event = TCAddToCartEvent(22.53f, "EUR", items)
serverside.execute(event)
TCItem item1 = new TCItem("my_product1_id", new TCProduct("my_product_1_id", "my_product_1_name", 12.5f), 1);
TCItem item2 = new TCItem("my_product2_id", new TCProduct("my_product_2_id", "my_product_2_name", 25.6f), 1);
ArrayList<TCItem> items = new ArrayList<>(Arrays.asList(item1, item2));
TCAddToCartEvent event = new TCAddToCartEvent(22.53f, "EUR", items);
serverside.execute(event);
NSMutableArray *items = [[NSMutableArray alloc] init];
[items addObject: [[TCItem alloc] initWithItemId: @"iID1"
withProduct: [[TCProduct alloc] initWithProductId: @"pID1"
withName: @"pName1"
withPrice: [[NSDecimalNumber alloc] initWithFloat: 1.5f]]
withQuantity: 1]];
[items addObject: [[TCItem alloc] initWithItemId: @"iID2"
withProduct: [[TCProduct alloc] initWithProductId: @"pID2"
withName: @"pName2"
withPrice: [[NSDecimalNumber alloc] initWithFloat: 2.5f]]
withQuantity: 2]];
TCAddToCartEvent *event = [[TCAddToCartEvent alloc] initWithValue: [[NSDecimalNumber alloc] initWithString: @"12.2"]
withCurrency: @"EUR"
withItems: items];
[TCS execute: event];
let item_1:TCItem = TCItem(itemId: "my_item1.id", with: TCProduct(productId: "my_product1.id", withName: "my_product1.name", withPrice: 12.5), withQuantity: 1)
let item_2:TCItem = TCItem(itemId: "my_item2.id", with: TCProduct(productId: "my_product2.id", withName: "my_product2.name", withPrice: 22.5), withQuantity: 1)
let event = TCAddToCartEvent(value: 1, withCurrency: "EUR", withItems: [item_1, item_2])
event?.addAdditionalProperty("additionalKey", withBoolValue: true)
event?.currency = "EUR"
serverside?.execute(event)
TCProduct tc_product = TCProduct();
tc_product.ID = "product_1_ID";
tc_product.name = "product_1_name";
tc_product.price = 12.5;
tc_product.addAdditionalProperty("key_additional_product", "val_additional_product");
TCItem tc_item_1 = TCItem();
tc_item_1.ID = "item_1_id";
tc_item_1.product = tc_product;
tc_item_1.quantity = 1;
tc_item_1.addAdditionalProperty("key_additional_item", "val_additional_product");
var event = TCAddToCartEvent();
event.currency = "EUR";
event.items = [tc_item_1];
event.value = 12.5;
serverside.execute(event);
{
"event_name": "add_to_cart",
"value": 8.00,
"currency": "EUR",
"items": [
{
"id": "SKU_12345",
"quantity": 1,
"price": 9.99,
"variant": "red",
"coupon": "CHRISTMAS",
"discount": 1.99,
"product": {
"id": "12345",
"name": "Trex tshirt",
"category_1": "clothes",
"category_2": "t-shirts",
"category_3": "boy",
"brand": "Lacoste",
"colors": [
"red"
]
}
}
]
}

add_to_wishlist

The event signifies that an item was added to a wishlist. Use this event to identify popular gift items in your app.
Parameters (required and recommended)
Name
Type
Required
Example Value
Description
value
number
No
8.00
The monetary value of the event. ()revenue is typically required for meaningful reporting.
()currency is required if you set revenue.
currency
string (ISO 4217)
No
EUR
Currency of the purchase or items associated with the event, in 3-letter ISO 4217 format.
(*) If you supply the revenue parameter, you must also supply the currency parameter so revenue metrics can be computed accurately.
user
Yes
{ id: '12345', email: '[email protected]',
consent_categories: [1,3]
}
consent_categories is the user's consents list. It is automatically filled from web sources if you use Commanders Act CMP.
You should also add all user's properties in this user object, especially reconciliation key (id, email).
items
Yes
The items for the event.
Example
JavaScript
Kotlin (Android)
Java (Android)
Objective-C (iOS)
Swift (iOS)
Dart (Flutter)
json
cact('trigger','add_to_wishlist', {
value: 8.00,
currency: 'EUR',
items: [{
id: 'SKU_12345',
quantity: 1,
variant: 'red',
coupon: 'CHRISTMAS',
discount: 1.99,
product:{
id: '12345',
name: 'Trex tshirt',
category_1: 'clothes',
category_2: 't-shirts',
category_3: 'boy',
brand: 'Lacoste',
price: 9.99
}
}],
user: {
id: '12356',
consent_categories: [1,3]
}
});
val item1 = TCItem("my_product1_id", TCProduct("my_product_1_id", "my_product_1_name", 12.5f), 1)
val item2 = TCItem("my_product2_id", TCProduct("my_product_2_id", "my_product_2_name", 110f), 1)
val items = listOf<TCItem>(item1, item2)
val event = TCAddToWishlistEvent(items)
event.value = 20.00f
event.currency = "EUR"
serverside.execute(event)
TCItem item1 = new TCItem("my_product1_id", new TCProduct("my_product_1_id", "my_product_1_name", 12.5f), 1);
TCItem item2 = new TCItem("my_product2_id", new TCProduct("my_product_2_id", "my_product_2_name", 25.6f), 1);
ArrayList<TCItem> items = new ArrayList<>(Arrays.asList(item1, item2));
TCAddToWishlistEvent event = new TCAddToWishlistEvent(items);
event.value = 20.00f;
event.currency = "EUR";
serverside.execute(event);
NSMutableArray *items = [[NSMutableArray alloc] init];
[items addObject: [[TCItem alloc] initWithItemId: @"iID1"
withProduct: [[TCProduct alloc] initWithProductId: @"pID1"
withName: @"pName1"
withPrice: [[NSDecimalNumber alloc] initWithFloat: 1.5f]]
withQuantity: 1]];
[items addObject: [[TCItem alloc] initWithItemId: @"iID2"
withProduct: [[TCProduct alloc] initWithProductId: @"pID2"
withName: @"pName2"
withPrice: [[NSDecimalNumber alloc] initWithFloat: 2.5f]]
withQuantity: 2]];
TCAddToWishlistEvent *event = [[TCAddToWishlistEvent alloc] initWithValue: [[NSDecimalNumber alloc] initWithString: @"12.2"]
withCurrency: @"EUR"
withItems: items];
[TCS execute: event];
let item_1:TCItem = TCItem(itemId: "my_item1.id", with: TCProduct(productId: "my_product1.id", withName: "my_product1.name", withPrice: 12.5), withQuantity: 1)
let item_2:TCItem = TCItem(itemId: "my_item2.id", with: TCProduct(productId: "my_product2.id", withName: "my_product2.name", withPrice: 22.5), withQuantity: 1)
let event = TCAddToWishlistEvent(items: [item_1, item_2])
event?.currency = "EUR"
serverside?.execute(event)
TCProduct tc_product = TCProduct();
tc_product.ID = "product_1_ID";
tc_product.name = "product_1_name";
tc_product.price = 150;
tc_product.addAdditionalProperty("key_additional_product", "val_additional_product");
TCItem tc_item_1 = TCItem();
tc_item_1.ID = "item_1_id";
tc_item_1.product = tc_product;
tc_item_1.quantity = 1;
tc_item_1.addAdditionalProperty("key_additional_item", "val_additional_product");
var event = TCAddToWishlistEvent();
event.addAdditionalPropertyWithIntValue("key_additional_1", 12);
event.addAdditionalPropertyWithListValue("key_additional_2", [12,12,12]);
event.currency = "EUR";
event.items = [tc_item_1];
event.value = 12.5;
serverside.execute(event);
{
"event_name": "add_to_wishlist",
"value": 8.00,
"currency": "EUR",
"items": [
{
"id": "SKU_12345",
"quantity": 1,
"price": 9.99,
"variant": "red",
"coupon": "CHRISTMAS",
"discount": 1.99,
"product": {
"id": "12345",
"name": "Trex tshirt",
"category_1": "clothes",
"category_2": "t-shirts",
"category_3": "boy",
"brand": "Lacoste",
"colors": [
"red"
]
}
}
]
}

begin_checkout

This event signifies that a user has begun a checkout.
Parameters (required and recommended)
Name
Type
Required
Example Value
Description
revenue
number
Yes
16.00
The monetary value of the event (shipping price and taxes excluded) after discount
value
number
Yes
22.53
The monetary value of the event (shipping price and taxes included) after discount
currency
string (ISO 4217)
Yes
EUR
Currency of the purchase or items associated with the event, in 3-letter ISO 4217 format.