public void TestBuildCardPaymentDe() { PaymentForm form = _order.AddOrderRow(TestingTool.CreateExVatBasedOrderRow()) .AddCustomerDetails(TestingTool.CreateMiniCompanyCustomer()) .AddFee(TestingTool.CreateExVatBasedShippingFee()) .AddDiscount(TestingTool.CreateRelativeDiscount()) .SetCountryCode(CountryCode.DE) .SetOrderDate(TestingTool.DefaultTestDate) .SetClientOrderNumber(TestingTool.DefaultTestClientOrderNumber) .SetCurrency(TestingTool.DefaultTestCurrency) .UsePayPageCardOnly() .SetReturnUrl("http://myurl.se") .GetPaymentForm(); string xml = form.GetXmlMessage(); const string expectedAmount = "18750"; const string expectedVat = "3750"; string amount = xml.Substring(xml.IndexOf("<amount>", System.StringComparison.InvariantCulture) + 8, expectedAmount.Length); string vat = xml.Substring(xml.IndexOf("<vat>", System.StringComparison.InvariantCulture) + 5, expectedVat.Length); Assert.That(amount, Is.EqualTo(expectedAmount)); Assert.That(vat, Is.EqualTo(expectedVat)); }
void MakeCardPayment()//OrderRowBuilder orderRowBuilder, CountryCode countryCode = CountryCode.SE, string clientOrderNumber = "33") { PaymentForm form = WebpayConnection.CreateOrder(SveaConfig.GetDefaultConfig()) .AddOrderRow(TestingTool.CreateExVatBasedOrderRow()) .AddFee(TestingTool.CreateExVatBasedShippingFee()) .AddFee(TestingTool.CreateExVatBasedInvoiceFee()) .AddDiscount(TestingTool.CreateRelativeDiscount()) .AddCustomerDetails(TestingTool.CreateMiniCompanyCustomer()) .SetCountryCode(TestingTool.DefaultTestCountryCode) .SetOrderDate(TestingTool.DefaultTestDate) .SetClientOrderNumber(TestingTool.DefaultTestClientOrderNumber) .SetCurrency(TestingTool.DefaultTestCurrency) .UsePayPageCardOnly() .SetReturnUrl("http://myurl.se") .GetPaymentForm(); //Card payment /*PaymentForm form = WebpayConnection.CreateOrder() * .AddOrderRow(orderRowBuilder) //required * .SetCountryCode(countryCode) // required * .SetClientOrderNumber(clientOrderNumber) * .SetOrderDate(DateTime.Now) * .UsePaymentMethod(PaymentMethod.SVEACARDPAY) * .SetReturnUrl("http://myurl.se") //Required * .SetCallbackUrl("http://myurl.se") * .SetCancelUrl("http://myurl.se") * .GetPaymentForm();*/ }
internal static Uri PrepareRegularPayment(PaymentMethod paymentMethod, string createCustomerRefNo) { return(WebpayConnection.CreateOrder(SveaConfig.GetDefaultConfig()) .AddOrderRow(TestingTool.CreateExVatBasedOrderRow("1")) .AddCustomerDetails(TestingTool.CreateMiniCompanyCustomer()) .SetCountryCode(TestingTool.DefaultTestCountryCode) .SetClientOrderNumber(createCustomerRefNo) .SetCurrency(TestingTool.DefaultTestCurrency) .UsePaymentMethod(paymentMethod) .___SetSimulatorCode_ForTestingOnly("0") .SetReturnUrl( "https://test.sveaekonomi.se/webpay/public/static/testlandingpage.html") .PreparePayment("127.0.0.1")); }
public void TestFailOnNullClientOrderNumber() { const string expectedMessage = "MISSING VALUE - CountryCode is required. Use SetCountryCode(...).\n" + "MISSING VALUE - ClientOrderNumber is required. Use SetClientOrderNumber(...).\n" + "MISSING VALUE - Currency is required. Use SetCurrency(...).\n" + "MISSING VALUE - OrderRows are required. Use AddOrderRow(Item.OrderRow) to get orderrow setters.\n"; CreateOrderBuilder order = WebpayConnection.CreateOrder(SveaConfig.GetDefaultConfig()) .AddCustomerDetails(TestingTool.CreateMiniCompanyCustomer()) .SetValidator(new VoidValidator()) .Build(); Assert.That(_orderValidator.Validate(order), Is.EqualTo(expectedMessage)); }
private static Uri PrepareRecurPayment(PaymentMethod paymentMethod, SubscriptionType subscriptionType) { return(WebpayConnection.CreateOrder(SveaConfig.GetDefaultConfig()) .AddOrderRow(TestingTool.CreateExVatBasedOrderRow()) .AddCustomerDetails(TestingTool.CreateMiniCompanyCustomer()) .SetCountryCode(TestingTool.DefaultTestCountryCode) .SetClientOrderNumber("1" + Guid.NewGuid().ToString().Replace("-", "")) .SetCurrency(TestingTool.DefaultTestCurrency) .UsePaymentMethod(paymentMethod) .SetSubscriptionType(subscriptionType) .___SetSimulatorCode_ForTestingOnly("0") .SetReturnUrl( "https://test.sveaekonomi.se/webpay/public/static/testlandingpage.html") .PreparePayment("127.0.0.1")); }
public void TestPreparedPaymentRequest() { Uri uri = WebpayConnection.CreateOrder(SveaConfig.GetDefaultConfig()) .AddOrderRow(TestingTool.CreateExVatBasedOrderRow()) .AddCustomerDetails(TestingTool.CreateMiniCompanyCustomer()) .SetCountryCode(TestingTool.DefaultTestCountryCode) .SetClientOrderNumber(Guid.NewGuid().ToString().Replace("-", "")) .SetCurrency(TestingTool.DefaultTestCurrency) .UsePayPageCardOnly() .SetReturnUrl( "https://webpaypaymentgatewaystage.svea.com/webpay/admin/merchantresponsetest.xhtml") .PreparePayment("127.0.0.1"); Assert.That(uri.AbsoluteUri, Does.Match(".*\\/preparedpayment\\/[0-9]+")); }
public void TestFailOnMissingOrderDate() { const string expectedMessage = "MISSING VALUE - OrderDate is required. Use SetOrderDate().\n"; CreateOrderBuilder order = WebpayConnection.CreateOrder(SveaConfig.GetDefaultConfig()) .SetClientOrderNumber(TestingTool.DefaultTestClientOrderNumber) .SetCountryCode(TestingTool.DefaultTestCountryCode) .AddOrderRow(TestingTool.CreateMiniOrderRow()) .AddCustomerDetails(TestingTool.CreateMiniCompanyCustomer()) .SetOrderDate(new DateTime()) .SetValidator(new VoidValidator()); Assert.That(_orderValidator.Validate(order), Is.EqualTo(expectedMessage)); }
public void TestValidateFailOrderIsNull() { const string expectedMessage = "MISSING VALUE - CountryCode is required. Use SetCountryCode(...).\n" + "MISSING VALUE - ClientOrderNumber is required (has an empty value). Use SetClientOrderNumber(...).\n" + "MISSING VALUES - AmountExVat, Quantity and VatPercent are required for Orderrow. Use SetAmountExVat(), SetQuantity() and SetVatPercent().\n"; CreateOrderBuilder order = WebpayConnection.CreateOrder(SveaConfig.GetDefaultConfig()) .AddOrderRow(null) .SetCurrency(TestingTool.DefaultTestCurrency) .SetClientOrderNumber("") .AddCustomerDetails(TestingTool.CreateMiniCompanyCustomer()) .SetValidator(new VoidValidator()) .Build(); _orderValidator = new HostedOrderValidator(); Assert.That(_orderValidator.Validate(order), Is.EqualTo(expectedMessage)); }
public void TestValidateDeCustomerIdentity() { CreateOrderBuilder order = WebpayConnection.CreateOrder(SveaConfig.GetDefaultConfig()) .SetClientOrderNumber(TestingTool.DefaultTestClientOrderNumber) .SetCountryCode(CountryCode.DE) .SetCurrency(Currency.EUR) .AddOrderRow(Item.OrderRow() .SetAmountExVat(5.0M) .SetVatPercent(25) .SetQuantity(1)) .AddCustomerDetails(TestingTool.CreateMiniCompanyCustomer()); _orderValidator = new HostedOrderValidator(); Assert.That(_orderValidator.Validate(order), Is.Empty); }
public void TestInvoiceRequestObjectForCustomerIdentityCompanyFromSe() { CreateOrderEuRequest request = WebpayConnection.CreateOrder(SveaConfig.GetDefaultConfig()) .AddOrderRow(TestingTool.CreateExVatBasedOrderRow("1")) .AddCustomerDetails(TestingTool.CreateMiniCompanyCustomer()) .AddOrderRow(TestingTool.CreateExVatBasedOrderRow("2")) .SetCountryCode(TestingTool.DefaultTestCountryCode) .SetOrderDate(TestingTool.DefaultTestDate) .SetClientOrderNumber(TestingTool.DefaultTestClientOrderNumber) .SetCurrency(TestingTool.DefaultTestCurrency) .UseInvoicePayment() .PrepareRequest(); Assert.That(request.CreateOrderInformation.CustomerIdentity.NationalIdNumber, Is.EqualTo("2345234")); Assert.That(request.CreateOrderInformation.CustomerIdentity.CountryCode, Is.EqualTo(CountryCode.SE.ToString().ToUpper())); Assert.That(request.CreateOrderInformation.CustomerIdentity.CustomerType, Is.EqualTo(CustomerType.Company)); }
public void TestDoCardPaymentRequest() { PaymentForm form = WebpayConnection.CreateOrder(SveaConfig.GetDefaultConfig()) .AddOrderRow(TestingTool.CreateExVatBasedOrderRow()) .AddCustomerDetails(TestingTool.CreateMiniCompanyCustomer()) .SetCountryCode(TestingTool.DefaultTestCountryCode) .SetClientOrderNumber(Guid.NewGuid().ToString().Replace("-", "")) .SetCurrency(TestingTool.DefaultTestCurrency) .UsePayPageCardOnly() .SetReturnUrl( "https://webpaypaymentgatewaystage.svea.com/webpay/admin/merchantresponsetest.xhtml") .GetPaymentForm(); var postResponse = PostRequest(form); Assert.That(postResponse.Item1, Is.EqualTo("OK")); }
public void TestDoCardPaymentRequest() { PaymentForm form = WebpayConnection.CreateOrder(SveaConfig.GetDefaultConfig()) .AddOrderRow(TestingTool.CreateExVatBasedOrderRow()) .AddFee(TestingTool.CreateExVatBasedShippingFee()) .AddFee(TestingTool.CreateExVatBasedInvoiceFee()) .AddDiscount(TestingTool.CreateRelativeDiscount()) .AddCustomerDetails(TestingTool.CreateMiniCompanyCustomer()) .SetCountryCode(TestingTool.DefaultTestCountryCode) .SetOrderDate(TestingTool.DefaultTestDate) .SetClientOrderNumber(TestingTool.DefaultTestClientOrderNumber) .SetCurrency(TestingTool.DefaultTestCurrency) .UsePayPageCardOnly() .SetReturnUrl("http://myurl.se") .GetPaymentForm(); Assert.That(form, Is.Not.Null); }
public void TestFailAmountExVatAndVatPercentIsMissing() { const string expectedMessage = "MISSING VALUE - CountryCode is required. Use SetCountryCode(...).\n" + "MISSING VALUE - ClientOrderNumber is required (has an empty value). Use SetClientOrderNumber(...).\n" + "MISSING VALUE - At least one of the values must be set in combination with AmountIncVat: AmountExVat or VatPercent for Orderrow. Use one of: SetAmountExVat() or SetVatPercent().\n"; CreateOrderBuilder order = WebpayConnection.CreateOrder(SveaConfig.GetDefaultConfig()) .AddOrderRow(Item.OrderRow() .SetQuantity(1) .SetAmountIncVat(125)) .SetCurrency(TestingTool.DefaultTestCurrency) .SetClientOrderNumber("") .AddCustomerDetails(TestingTool.CreateMiniCompanyCustomer()) .SetValidator(new VoidValidator()) .Build(); _orderValidator = new HostedOrderValidator(); Assert.That(_orderValidator.Validate(order), Is.EqualTo(expectedMessage)); }
public void TestDoNordeaSePaymentRequest() { PaymentForm form = WebpayConnection.CreateOrder(SveaConfig.GetDefaultConfig()) .AddOrderRow(TestingTool.CreateExVatBasedOrderRow()) .AddCustomerDetails(TestingTool.CreateMiniCompanyCustomer()) .SetCountryCode(TestingTool.DefaultTestCountryCode) .SetClientOrderNumber(Guid.NewGuid().ToString().Replace("-", "")) .SetCurrency(TestingTool.DefaultTestCurrency) .UsePaymentMethod(PaymentMethod.NORDEASE) .SetReturnUrl( "https://test.sveaekonomi.se/webpay/admin/merchantresponsetest.xhtml") .GetPaymentForm(); var postResponse = PostRequest(form); Assert.That(postResponse.Item1, Is.EqualTo("OK")); Assert.That(postResponse.Item2.StartsWith(ExpectedResponseStart)); }
public void TestBuildDirectBankPaymentNotSe() { PaymentForm form = WebpayConnection.CreateOrder(SveaConfig.GetDefaultConfig()) .AddOrderRow(TestingTool.CreateExVatBasedOrderRow()) .AddFee(TestingTool.CreateExVatBasedShippingFee()) .AddFee(TestingTool.CreateExVatBasedInvoiceFee()) .AddDiscount(TestingTool.CreateRelativeDiscount()) .AddCustomerDetails(TestingTool.CreateMiniCompanyCustomer()) .SetCountryCode(CountryCode.DE) .SetOrderDate(TestingTool.DefaultTestDate) .SetClientOrderNumber(TestingTool.DefaultTestClientOrderNumber) .SetCurrency(TestingTool.DefaultTestCurrency) .UsePayPageDirectBankOnly() .SetReturnUrl("http://myurl.se") .GetPaymentForm(); string base64Payment = form.GetXmlMessageBase64(); string html = Base64Util.DecodeBase64String(base64Payment); Assert.That(html.Contains("<amount>18750</amount>"), Is.True); }
public void TestSetAuthorization() { PaymentForm form = WebpayConnection.CreateOrder(SveaConfig.GetDefaultConfig()) .AddOrderRow(TestingTool.CreateExVatBasedOrderRow()) .AddFee(TestingTool.CreateExVatBasedShippingFee()) .AddFee(TestingTool.CreateExVatBasedInvoiceFee()) .AddDiscount(TestingTool.CreateRelativeDiscount()) .AddCustomerDetails(TestingTool.CreateMiniCompanyCustomer()) .SetCountryCode(TestingTool.DefaultTestCountryCode) .SetOrderDate(TestingTool.DefaultTestDate) .SetClientOrderNumber(TestingTool.DefaultTestClientOrderNumber) .SetCurrency(TestingTool.DefaultTestCurrency) .UsePayPageCardOnly() .SetReturnUrl("http://myurl.se") .GetPaymentForm(); const string expectedMerchantId = "1130"; const string expectedSecretWord = "8a9cece566e808da63c6f07ff415ff9e127909d000d259aba24daa2fed6d9e3f8b0b62e8ad1fa91c7d7cd6fc3352deaae66cdb533123edf127ad7d1f4c77e7a3"; Assert.That(form.GetMerchantId(), Is.EqualTo(expectedMerchantId)); Assert.That(form.GetSecretWord(), Is.EqualTo(expectedSecretWord)); }
private CreateOrderBuilder CreateCompanyDetails(CreateOrderBuilder orderBuilder) { return(orderBuilder.AddCustomerDetails(TestingTool.CreateMiniCompanyCustomer())); }