public AuthorizationBuilder WithFraudFilter(FraudFilterMode fraudFilter, FraudRuleCollection fraudRules = null) { FraudFilterMode = fraudFilter; if (fraudRules != null) { FraudRules = fraudRules; } return(this); }
public void AddRule(string key, FraudFilterMode mode) { if (hasRule(key)) { return; } Rules.Add(new FraudRule { Key = key, Mode = mode }); }
public void FraudManagement_withFraudRules() { string ruleId = "853c1d37-6e9f-467e-9ffc-182210b40c6b"; FraudFilterMode mode = FraudFilterMode.OFF; FraudRuleCollection fraudRuleCollection = new FraudRuleCollection(); fraudRuleCollection.AddRule(ruleId, mode); Transaction response = card.Charge(199.99m) .WithCurrency("EUR") .WithFraudFilter(FraudFilterMode.ACTIVE, fraudRuleCollection) .Execute(); Assert.IsNotNull(response); Assert.AreEqual("00", response.ResponseCode); var rule = response?.FraudResponse?.Rules?.FirstOrDefault(x => x.Id == ruleId); Assert.IsNotNull(rule); Assert.AreEqual(rule.Action, "NOT_EXECUTED"); }