public PaymentController(IOptionsSnapshot <PayeeInfoConfig> payeeInfoOptionsAccessor, Cart cart, StoreDbContext dbContext, ISwedbankPayClient payClient) { this.payeeInfoOptions = payeeInfoOptionsAccessor.Value; this.cartService = cart; this.context = dbContext; this.swedbankPayClient = payClient; }
public CheckOutController(IOptionsSnapshot <PayeeInfoConfig> payeeInfoOptionsAccessor, IOptionsSnapshot <UrlsOptions> urlsAccessor, Cart cart, StoreDbContext storeDbContext, ISwedbankPayClient payClient) { this.payeeInfoOptions = payeeInfoOptionsAccessor.Value; this.urls = urlsAccessor.Value; this.cartService = cart; this.context = storeDbContext; this.swedbankPayClient = payClient; }
public static async Task CancelTrustlyPayment(string paymentId, ISwedbankPayClient swedbankPayClient, ITempDataDictionary tempData, Cart cartService) { var payment = await swedbankPayClient.Payments.TrustlyPayments.Get(new Uri(paymentId, UriKind.RelativeOrAbsolute)); if (payment.Operations.Cancel != null) { var cancelRequest = new SwedbankPay.Sdk.PaymentInstruments.Trustly.TrustlyPaymentCancelRequest(DateTime.Now.Ticks.ToString(), "Cancelling parts of the total amount"); var response = await payment.Operations.Cancel(cancelRequest); tempData["CancelMessage"] = $"Payment has been cancelled: {response.Cancellation.Transaction.Id}"; cartService.PaymentOrderLink = null; } else { tempData["ErrorMessage"] = "Operation not available"; } }
public static async Task CancelInvoicePayment(string paymentId, string payeeReference, ISwedbankPayClient swedbankPayClient, ITempDataDictionary tempData, Cart cartService) { var payment = await swedbankPayClient.Payments.InvoicePayments.Get(new Uri(paymentId, UriKind.RelativeOrAbsolute)); if (payment.Operations.Cancel != null) { var response = await payment.Operations.Cancel(new InvoicePaymentCancelRequest(Operation.FinancingConsumer, payeeReference, "Cancelling parts of the total amount")); tempData["CancelMessage"] = $"Payment has been cancelled: {response.Cancellation.Transaction.Id}"; cartService.PaymentOrderLink = null; } else { tempData["ErrorMessage"] = "Operation not available"; } }
protected ResourceTestsBase() { this.connectionSettings = TestHelper.GetSwedbankPayConnectionSettings(Environment.CurrentDirectory); this.urls = TestHelper.GetUrls(Environment.CurrentDirectory); this.payeeId = this.connectionSettings.PayeeId; var httpClient = new HttpClient { BaseAddress = this.connectionSettings.ApiBaseUrl }; httpClient.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Bearer", this.connectionSettings.Token); this.Sut = new SwedbankPayClient(httpClient); var httpClientMobilePay = new HttpClient { BaseAddress = this.connectionSettings.ApiBaseUrl }; httpClientMobilePay.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Bearer", this.connectionSettings.TokenMobilePay); this.SutMobilePay = new SwedbankPayClient(httpClientMobilePay); }
public OrdersController(StoreDbContext storeDbContext, ISwedbankPayClient payClient) { this.context = storeDbContext; this.swedbankPayClient = payClient; }
public static async Task <IReversalResponse> ReverseCreditCardPayment(string paymentId, Order order, string description, ISwedbankPayClient swedbankPayClient) { var cardPayment = await swedbankPayClient.Payments.CardPayments.Get(new Uri(paymentId, UriKind.RelativeOrAbsolute)); var cardReversal = new SwedbankPay.Sdk.PaymentInstruments.Card.CardPaymentReversalRequest ( new Amount(order.Lines.Sum(e => e.Quantity * e.Product.Price)), description, DateTime.Now.Ticks.ToString(), new Amount(0) ); return(await cardPayment.Operations.Reverse.Invoke(cardReversal)); }
public static async Task <IReversalResponse> ReverseTrustlyPayment(string paymentId, Order order, string description, ISwedbankPayClient swedbankPayClient) { var trustlyPayment = await swedbankPayClient.Payments.TrustlyPayments.Get(new Uri(paymentId, UriKind.RelativeOrAbsolute)); var trustlyReversal = new SwedbankPay.Sdk.PaymentInstruments.Trustly.TrustlyPaymentReversalRequest(Operation.Sale, new Amount(order.Lines.Sum(e => e.Quantity * e.Product.Price)), new Amount(0), DateTime.Now.Ticks.ToString(), "receipt reference", description); return(await trustlyPayment.Operations.Reverse.Invoke(trustlyReversal)); }