trackEcommerceTransaction method
Implementation
Future<String> trackEcommerceTransaction({
required String identifier,
required int grandTotal,
int? subTotal,
int? tax,
int? shippingCost,
int? discount,
List<EcommerceTransactionItem>? transactionItems,
}) async {
var arguments = <String, dynamic>{};
arguments['identifier'] = identifier;
arguments['grandTotal'] = grandTotal;
arguments['subTotal'] = subTotal;
arguments['tax'] = tax;
arguments['shippingCost'] = shippingCost;
arguments['discount'] = discount;
final items = [];
transactionItems?.forEach((item) {
final itemMap = <String, dynamic>{};
itemMap['sku'] = item.sku;
itemMap['name'] = item.name;
itemMap['category'] = item.category;
itemMap['price'] = item.price;
itemMap['quantity'] = item.quantity;
items.add(itemMap);
});
arguments['transactionItems'] = items;
final result = await _channel.invokeMethod(trackEcommerceTransactionName, arguments);
return result;
}