public PaymentHistory GetPaymentHistory(PayPalObjectInfo objPayPalobject) { var apiContext = PayPalConfiguration.GetAPIContext(); var paymentHistory = new PaymentHistory(); try { paymentHistory = Payment.List(apiContext, objPayPalobject.Count, objPayPalobject.StartID, objPayPalobject.StartIndex, objPayPalobject.StartTime, objPayPalobject.EndTime, objPayPalobject.StartDate, objPayPalobject.EndTime, objPayPalobject.PayeeEmail, objPayPalobject.PayeeID, objPayPalobject.SortBy, objPayPalobject.SortOrder); } catch (PaymentsException ex) { throw new Exception("Sorry there is an error getting the payment history. " + ex.Response); } return(paymentHistory); }
public Payment ProcessPayment(PayPalObjectInfo objPayPalObject) { var apiContext = PayPalConfiguration.GetAPIContext(); var paymentExecution = new PaymentExecution() { payer_id = objPayPalObject.PayerID }; var payment = new Payment() { id = objPayPalObject.PaymentID }; var executedPayment = new Payment(); try { executedPayment = payment.Execute(apiContext, paymentExecution); } catch (PaymentsException ex) { throw new Exception("Sorry there is an error processing the payment. " + ex.Response); } return(executedPayment); }
public string GetPaymentPayPalURL_user(PayPalObjectInfo paypalObject) { string paypalURL = ""; double cartAmount = 0; var itemList = new ItemList(); var items = new List <Item>(); //get the paypal api context try { int AddMonths = Convert.ToInt32(paypalObject.up.DurationId); FriendFit.Data.UserInvitation _ui = new FriendFit.Data.UserInvitation(); _ui.Userid = paypalObject.up.UserId; _ui.DeliveryTypeId = paypalObject.up.DeliveryMethodId; _ui.DurationId = paypalObject.up.DurationId; _ui.PurchaseDate = DateTime.Now; _ui.ExpiryDate = DateTime.Now.AddMonths(AddMonths); _ui.SubscriptionTypeId = paypalObject.up.SubscriptionTypeId; _ui.Cost = paypalObject.up.Cost; _ui.IsActive = false; _ui.IsRowActive = false; _ui.PaymentDone = 0; _objFriendFitDBEntity.UserInvitations.Add(_ui); _objFriendFitDBEntity.SaveChanges(); string sku = Convert.ToString(_ui.Id); var apiContext = PayPalConfiguration.GetAPIContext(); //map into paypal items list and get the total amount foreach (var cartItem in paypalObject.ProductList) { if (cartItem.OrderQty > 0) { var Item = new Item(); Item.name = cartItem.Description; Item.currency = paypalObject.Currency; Item.price = Math.Round(cartItem.UnitPrice, 2).ToString(); Item.quantity = cartItem.OrderQty.ToString(); Item.sku = Convert.ToString(sku); items.Add(Item); cartAmount += Convert.ToDouble(Math.Round(cartItem.UnitPrice, 2)) * Convert.ToDouble(Item.quantity); } } itemList.items = items; cartAmount = Math.Round(cartAmount, 2); var payer = new Payer() { payment_method = "paypal" }; var redirUrls = new RedirectUrls() { //cancel_url = paypalObject.SiteURL + "/api/PayPal/PaymentFail/?cancel=true", //return_url = paypalObject.SiteURL + "/api/PayPal/GetPaymentDetails/" cancel_url = "http://103.14.127.78:4900/#/dashboard/user-payment/?cancel=true", return_url = "http://103.14.127.78:4900/#/dashboard/user-payment" //cancel_url = "http://localhost:4200/#/dashboard/user-payment/?cancel=true", //return_url = "http://localhost:4200/#/dashboard/user-payment" }; var details = new Details() { tax = paypalObject.Tax.ToString(), shipping = paypalObject.ShippingFee.ToString(), subtotal = cartAmount.ToString() }; var paypalAmount = new Amount() { currency = paypalObject.Currency, total = cartAmount.ToString(), details = details }; var transactionList = new List <Transaction>(); Transaction transaction = new Transaction(); transaction.description = paypalObject.OrderDescription; transaction.invoice_number = paypalObject.InvoiceNumber; transaction.amount = paypalAmount; transaction.item_list = itemList; transactionList.Add(transaction); var payment = new Payment() { intent = "sale", payer = payer, transactions = transactionList, redirect_urls = redirUrls }; var createdPayment = payment.Create(apiContext); var links = createdPayment.links.GetEnumerator(); while (links.MoveNext()) { var link = links.Current; if (link.rel.ToLower().Trim().Equals("approval_url")) { paypalURL = link.href; } } } catch (PaymentsException ex) { paypalURL = "ERROR: " + ex.Response; } return(paypalURL); }
public string GetPaymentPayPalURL(PayPalObjectInfo paypalObject) { string paypalURL = ""; double cartAmount = 0; var itemList = new ItemList(); var items = new List <Item>(); //get the paypal api context try { var apiContext = PayPalConfiguration.GetAPIContext(); //map into paypal items list and get the total amount foreach (var cartItem in paypalObject.ProductList) { if (cartItem.OrderQty > 0) { var Item = new Item(); Item.name = cartItem.Description; Item.currency = paypalObject.Currency; Item.price = Math.Round(cartItem.UnitPrice, 2).ToString(); Item.quantity = cartItem.OrderQty.ToString(); Item.sku = Convert.ToString(cartItem.SKU); items.Add(Item); cartAmount += Convert.ToDouble(Math.Round(cartItem.UnitPrice, 2)) * Convert.ToDouble(Item.quantity); } } itemList.items = items; cartAmount = Math.Round(cartAmount, 2); var payer = new Payer() { payment_method = "paypal" }; var redirUrls = new RedirectUrls() { //cancel_url = paypalObject.SiteURL + "/api/PayPal/PaymentFail/?cancel=true", //return_url = paypalObject.SiteURL + "/api/PayPal/GetPaymentDetails/" cancel_url = "http://103.14.127.78:4900/#/dashboard/payment/?cancel=true", return_url = "http://103.14.127.78:4900/#/dashboard/payment" //cancel_url = "http://localhost:4200/#/dashboard/payment/?cancel=true", //return_url = "http://localhost:4200/#/dashboard/payment" }; var details = new Details() { tax = paypalObject.Tax.ToString(), shipping = paypalObject.ShippingFee.ToString(), subtotal = cartAmount.ToString() }; var paypalAmount = new Amount() { currency = paypalObject.Currency, total = cartAmount.ToString(), details = details }; var transactionList = new List <Transaction>(); Transaction transaction = new Transaction(); transaction.description = paypalObject.OrderDescription; transaction.invoice_number = paypalObject.InvoiceNumber; transaction.amount = paypalAmount; transaction.item_list = itemList; transactionList.Add(transaction); var payment = new Payment() { intent = "sale", payer = payer, transactions = transactionList, redirect_urls = redirUrls }; var createdPayment = payment.Create(apiContext); var links = createdPayment.links.GetEnumerator(); while (links.MoveNext()) { var link = links.Current; if (link.rel.ToLower().Trim().Equals("approval_url")) { paypalURL = link.href; } } } catch (PaymentsException ex) { paypalURL = "ERROR: " + ex.Response; } return(paypalURL); }