예제 #1
0
 public Task <PreAuthenticationAssessmentResponse> RequestPreAuthenticationRiskScan(
     PreAuthenticationAssessmentRequest preAuthenticationAssessmentRequest,
     CancellationToken cancellationToken = default)
 {
     CheckoutUtils.ValidateParams("preAuthenticationAssessmentRequest", preAuthenticationAssessmentRequest);
     return(ApiClient.Post <PreAuthenticationAssessmentResponse>(
                BuildPath(RiskAssessmentsPath, "pre-authentication"), SdkAuthorization(),
                preAuthenticationAssessmentRequest, cancellationToken));
 }
예제 #2
0
        private async Task TestRequestPreAuthenticationRiskScan(RiskPaymentRequestSource requestSource)
        {
            var preAuthenticationAssessmentRequest = new PreAuthenticationAssessmentRequest()
            {
                Date     = DateTime.Now,
                Source   = requestSource,
                Customer = new Common.CustomerRequest()
                {
                    Id    = "Id",
                    Email = GenerateRandomEmail(),
                    Name  = "name"
                },
                Payment = new RiskPayment()
                {
                    Psp = "CheckoutSdk.com",
                    Id  = "78453878"
                },
                Shipping = new RiskShippingDetails()
                {
                    Address = new Address()
                    {
                        AddressLine1 = "CheckoutSdk.com",
                        AddressLine2 = "90 Tottenham Court Road",
                        City         = "London",
                        State        = "London",
                        Zip          = "W1T 4TJ",
                        Country      = CountryCode.GB
                    }
                },
                Reference   = "ORD-1011-87AH",
                Description = "Set of 3 masks",
                Amount      = 6540,
                Device      = new Device()
                {
                    Ip       = "90.197.169.245",
                    Location = new Location()
                    {
                        Longitude = "0.1313",
                        Latitude  = "51.5107"
                    },
                    Type  = "Phone",
                    Os    = "ISO",
                    Model = "iPhone X",
                    Date  = DateTime.Now,
                }
            };

            var response = await PreviousApi.RiskClient()
                           .RequestPreAuthenticationRiskScan(preAuthenticationAssessmentRequest);

            response.ShouldNotBeNull();
            response.AssessmentId.ShouldNotBeNull();
            response.Result.ShouldNotBeNull();
            response.Result.Decision.ShouldNotBeNull();
        }
예제 #3
0
        private async Task ShouldRequestPreAuthenticationRiskScan()
        {
            var request       = new PreAuthenticationAssessmentRequest();
            var responseAsync = new PreAuthenticationAssessmentResponse();

            _apiClient.Setup(apiClient =>
                             apiClient.Post <PreAuthenticationAssessmentResponse>("risk/assessments/pre-authentication",
                                                                                  _authorization, request,
                                                                                  CancellationToken.None, null))
            .ReturnsAsync(() => responseAsync);

            IRiskClient client = new RiskClient(_apiClient.Object, _configuration.Object);

            var response = await client.RequestPreAuthenticationRiskScan(request);

            response.ShouldNotBeNull();
        }