public async Task CreateAccessTokenAsync_ForValidCredentials_ReturnsAccessToken(BraspagAuthClient sut) { var request = new AccessTokenRequest { GrantType = OAuthGrantType.ClientCredentials, ClientId = "b7554867-c69a-4fd2-b059-40c08f6f924a", ClientSecret = "9tV4mICf6YmKiRkfPce8+jHc4M2hLGgBdMCxnlj3LDY=" }; var response = await sut.CreateAccessTokenAsync(request); Assert.Equal(HttpStatusCode.OK, response.HttpStatus); Assert.NotNull(response.Token); }
public async Task CreateAccessTokenAsync_WhenClientSecretIsInvalid_ReturnsInvalidClientError(BraspagAuthClient sut) { var request = new AccessTokenRequest { GrantType = OAuthGrantType.ClientCredentials, ClientId = "b7554867-c69a-4fd2-b059-40c08f6f924a", ClientSecret = "43VtT15I5l7BocriFWPAlhTjd55VupXq5jVVbu99999=" }; var response = await sut.CreateAccessTokenAsync(request); Assert.Equal(HttpStatusCode.BadRequest, response.HttpStatus); Assert.Equal("invalid_client", response.Error); Assert.NotNull(response.Error); Assert.NotNull(response.ErrorDescription); }
public async Task PerformAnalysisAsync_ForValidCreditCard_ReturnsAuthorized(VelocityClient sut, BraspagAuthClient authClient) { var authRequest = new AccessTokenRequest { GrantType = OAuthGrantType.ClientCredentials, ClientId = "5d85902e-592a-44a9-80bb-bdda74d51bce", ClientSecret = "mddRzd6FqXujNLygC/KxOfhOiVhlUr2kjKPsOoYHwhQ=", Scope = "VelocityApp" }; var authResponse = await authClient.CreateAccessTokenAsync(authRequest); Assert.Equal(HttpStatusCode.OK, authResponse.HttpStatus); var request = new AnalysisRequest { Transaction = new TransactionData { OrderId = DateTime.Now.Ticks.ToString(), Date = "2018-09-15 13:30:00.860", Amount = 1000 }, Card = new CardData { Holder = "BJORN IRONSIDE", Brand = "visa", Number = "1000100010001000", Expiration = "10/2025" }, Customer = new CustomerData { Name = "Bjorn Ironside", Identity = "762.502.520-96", IpAddress = "127.0.0.1", Email = "*****@*****.**" } }; var response = await sut.PerformAnalysisAsync(request, new MerchantCredentials { AccessToken = authResponse.Token, MerchantId = "94E5EA52-79B0-7DBA-1867-BE7B081EDD97" }); Assert.Equal(HttpStatusCode.Created, response.HttpStatus); }
public static void Run() { Console.WriteLine("VELOCITY"); Console.WriteLine("====================================="); /* Criação do Token de Acesso OAUTH via Braspag Auth */ var braspagAuthClient = new BraspagAuthClient(new BraspagAuthClientOptions { Environment = Environment.Sandbox }); var authRequest = new AccessTokenRequest { GrantType = OAuthGrantType.ClientCredentials, ClientId = "5d85902e-592a-44a9-80bb-bdda74d51bce", ClientSecret = "mddRzd6FqXujNLygC/KxOfhOiVhlUr2kjKPsOoYHwhQ=", Scope = "VelocityApp" }; var authResponse = braspagAuthClient.CreateAccessTokenAsync(authRequest).Result; /* Criação do Cliente Velocity */ var velocityClient = new VelocityClient(new VelocityClientOptions { Environment = Environment.Sandbox, Credentials = new MerchantCredentials { MerchantId = "94E5EA52-79B0-7DBA-1867-BE7B081EDD97", AccessToken = authResponse.Token } }); /* Analisando uma transação com Velocity */ var analysisResponse = PerformAnalysisAsync(velocityClient).Result; Console.WriteLine("Transaction analyzed"); Console.WriteLine($"Score: {analysisResponse.AnalysisResult.Score}"); Console.WriteLine($"Status: {analysisResponse.AnalysisResult.Status}"); Console.WriteLine($"Accept By WhiteList: {analysisResponse.AnalysisResult.AcceptByWhiteList}"); Console.WriteLine($"Reject By BlackList: {analysisResponse.AnalysisResult.RejectByBlackList}"); Console.WriteLine(); }
public async Task PerformAnalysisAsync_ForValidCreditCard_ReturnsAuthorized(VelocityClient sut, BraspagAuthClient authClient) { var authRequest = new AccessTokenRequest { GrantType = OAuthGrantType.ClientCredentials, ClientId = "5d85902e-592a-44a9-80bb-bdda74d51bce", ClientSecret = "mddRzd6FqXujNLygC/KxOfhOiVhlUr2kjKPsOoYHwhQ=", Scope = "VelocityApp" }; var authResponse = await authClient.CreateAccessTokenAsync(authRequest); Assert.Equal(HttpStatusCode.OK, authResponse.HttpStatus); var request = new AnalysisRequest { Transaction = new TransactionData { OrderId = DateTime.Now.Ticks.ToString(), Date = DateTime.UtcNow.ToString("O"), Amount = 1000 }, Card = new CardData { Holder = "BJORN IRONSIDE", Brand = "visa", Number = "1000100010001000", Expiration = "10/2025" }, Customer = new CustomerData { Name = "Bjorn Ironside", Identity = "76250252096", IpAddress = "127.0.0.1", Email = "*****@*****.**", BirthDate = "1982-06-30", Phones = new List <PhoneData> { new PhoneData { Type = "Cellphone", Number = "999999999", Ddi = "55", Ddd = "11" } }, Billing = new AddressData { Street = "Alameda Xingu", Number = "512", Neighborhood = "Alphaville", City = "Barueri", State = "SP", Country = "BR", ZipCode = "06455-030" } } }; var response = await sut.PerformAnalysisAsync(request, new MerchantCredentials { AccessToken = authResponse.Token, MerchantId = "94E5EA52-79B0-7DBA-1867-BE7B081EDD97" }); Assert.Equal(HttpStatusCode.Created, response.HttpStatus); Assert.NotNull(response.AnalysisResult); Assert.NotNull(response.Transaction); Assert.NotNull(response.RequestId); Assert.Null(response.ErrorDataCollection); }