EcommerceProductAction generateCheckoutProductAction(ActionData actionData, ProductActions productAction) { var pAction = new EcommerceProductAction().SetAction(productAction.ToString()); if (actionData != null) { if (string.IsNullOrEmpty(actionData?.Id) && (productAction == ProductActions.purchase || productAction == ProductActions.refund)) { return(pAction); } else if (!string.IsNullOrEmpty(actionData?.Id)) { pAction.SetTransactionId(actionData.Id); } if (!string.IsNullOrEmpty(actionData?.Affiliation)) { pAction.SetAffiliation(actionData.Affiliation); } if (actionData?.Revenue != 0) { pAction.SetRevenue(new NSNumber(actionData.Revenue)); } if (actionData?.Tax != 0) { pAction.SetTax(new NSNumber(actionData.Tax)); } if (actionData?.Shipping != 0) { pAction.SetShipping(new NSNumber(actionData.Shipping)); } if (!string.IsNullOrEmpty(actionData?.Coupon)) { pAction.SetCouponCode(actionData.Coupon); } if (!string.IsNullOrEmpty(actionData?.List)) { pAction.SetProductActionList(actionData.List); } if (actionData?.Step != 0) { pAction.SetCheckoutStep(new NSNumber(actionData.Step)); } if (!string.IsNullOrEmpty(actionData?.Option)) { pAction.SetCheckoutOption(actionData.Option); } } return(pAction); }