public Payment CreatePayment(Car car, string baseUrl) { CarRentPayment carPayment = new CarRentPayment { Currency = AppConstants.UsdCurrency, Description = string.Format(AppConstants.RentPaymentDescription, car.Brand.Name, car.Model.Name), Intent = AppConstants.SaleIntent, Quantity = 1, SubtotalPrice = CalculateSubtotalPrice(car), TaxPercentage = AppConstants.TaxPercentage, Sku = car.Sku }; Payment payment = new Payment { intent = carPayment.Intent, payer = new Payer() { payment_method = AppConstants.PaypalPaymentMethod }, transactions = GetTransactionsList(carPayment), redirect_urls = GetReturnUrls(baseUrl) }; Payment createdPayment = payment.Create(_apiContext); return(createdPayment); }
private List <Transaction> GetTransactionsList(CarRentPayment carPayment) { var transactionList = new List <Transaction>(); transactionList.Add(new Transaction() { description = carPayment.Description, invoice_number = GetRandomInvoiceNumber(), amount = new Amount() { currency = carPayment.Currency, total = carPayment.TotalPrice.ToString(), details = new Details() { tax = decimal.Round(carPayment.TaxPercentage * carPayment.SubtotalPrice, 2, MidpointRounding.AwayFromZero).ToString(), subtotal = carPayment.SubtotalPrice.ToString() } }, item_list = new ItemList() { items = new List <Item>() { new Item() { name = carPayment.Description, currency = carPayment.Currency, price = carPayment.SubtotalPrice.ToString(), quantity = carPayment.Quantity.ToString(), sku = carPayment.Sku } } } }); return(transactionList); }