Exemple #1
0
        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);
        }
Exemple #2
0
        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);
        }
Exemple #3
0
        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);
        }
Exemple #4
0
        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);
        }