Пример #1
0
        //Rename to Main1 => Main
        static void Main1(string [] args)
        {
            Console.WriteLine("Running Capture Intent Flow..");
            var createOrderResponse = Samples.CaptureIntentExamples.CreateOrderSample.CreateOrder(true).Result;
            var createOrderResult   = createOrderResponse.Result <Order>();

            Console.WriteLine("Status: {0}", createOrderResult.Status);
            Console.WriteLine("Order Id: {0}", createOrderResult.Id);
            Console.WriteLine("Intent: {0}", createOrderResult.Intent);
            Console.WriteLine("Links:");
            foreach (PayPalCheckoutSdk.Orders.LinkDescription link in createOrderResult.Links)
            {
                Console.WriteLine("\t{0}: {1}\tCall Type: {2}", link.Rel, link.Href, link.Method);
            }
            AmountWithBreakdown amount = createOrderResult.PurchaseUnits[0].Amount;

            Console.WriteLine("Total Amount: {0} {1}", amount.CurrencyCode, amount.Value);

            Console.WriteLine("Copy approve link and paste it in browser. Login with buyer account and follow the instructions.\nOnce approved hit enter...\n");
            Console.Read();

            Console.WriteLine("Capturing the payment...");
            var captureOrderResponse = CaptureOrderSample.CaptureOrder(createOrderResult.Id, true).Result;
            var captureOrderResult   = captureOrderResponse.Result <Order>();
            var captureId            = "";

            Console.WriteLine("Status: {0}", captureOrderResult.Status);
            Console.WriteLine("Order Id: {0}", captureOrderResult.Id);
            Console.WriteLine("Intent: {0}", captureOrderResult.Intent);
            Console.WriteLine("Links:");
            foreach (PayPalCheckoutSdk.Orders.LinkDescription link in captureOrderResult.Links)
            {
                Console.WriteLine("\t{0}: {1}\tCall Type: {2}", link.Rel, link.Href, link.Method);
            }
            foreach (PurchaseUnit purchaseUnit in captureOrderResult.PurchaseUnits)
            {
                foreach (PayPalCheckoutSdk.Orders.Capture capture in purchaseUnit.Payments.Captures)
                {
                    captureId = capture.Id;
                }
            }
            AmountWithBreakdown captureAmount = captureOrderResult.PurchaseUnits[0].Amount;

            Console.WriteLine("Buyer:");
            Console.WriteLine("\tEmail Address: {0}\n\tName: {1}\n\tPhone Number: {2}{3}",
                              captureOrderResult.Payer.EmailAddress, captureOrderResult.Payer.Name.FullName,
                              captureOrderResult.Payer.Phone.CountryCode, captureOrderResult.Payer.Phone.NationalNumber);

            Console.WriteLine("Refunding the Order....");
            var refundOrderResponse = CapturesRefundSample.CapturesRefund(captureId, true).Result;
            var refundOrderResult   = refundOrderResponse.Result <PayPalCheckoutSdk.Payments.Refund>();

            Console.WriteLine("Status: {0}", refundOrderResult.Status);
            Console.WriteLine("Refund Id: {0}", refundOrderResult.Id);
            Console.WriteLine("Links:");
            foreach (PayPalCheckoutSdk.Payments.LinkDescription link in refundOrderResult.Links)
            {
                Console.WriteLine("\t{0}: {1}\tCall Type: {2}", link.Rel, link.Href, link.Method);
            }
        }
        public async Task <IActionResult> Approved()
        {
            var captureOrderResponse = CaptureOrderSample.CaptureOrder(createOrderResult.Id, true).Result;
            var captureOrderResult   = captureOrderResponse.Result <PayPalCheckoutSdk.Orders.Order>();

            var customer = await _userManager.FindByNameAsync(User.Identity.Name);

            var order = await _context.Orders.Include(o => o.OrderedMovies).FirstOrDefaultAsync(o => o.CustomerID == customer.Id);

            order.OrderedMovies.Clear();
            await _context.SaveChangesAsync();

            return(RedirectToAction("Index", new { Controller = "Home" }));
        }
Пример #3
0
        //Rename to Main1 => Main
        static void Main(string [] args)
        {
            Console.WriteLine("Running Authorize Intent Flow..");
            var createOrderResponse = Samples.AuthorizeIntentExamples.CreateOrderSample.CreateOrder().Result;
            var createOrderResult   = createOrderResponse.Result <Order>();

            Console.WriteLine("Status: {0}", createOrderResult.Status);
            Console.WriteLine("Order Id: {0}", createOrderResult.Id);
            Console.WriteLine("Intent: {0}", createOrderResult.CheckoutPaymentIntent);
            Console.WriteLine("Links:");
            foreach (var link in createOrderResult.Links)
            {
                Console.WriteLine("\t{0}: {1}\tCall Type: {2}", link.Rel, link.Href, link.Method);
            }
            AmountWithBreakdown amount = createOrderResult.PurchaseUnits[0].AmountWithBreakdown;

            Console.WriteLine("Total Amount: {0} {1}", amount.CurrencyCode, amount.Value);

            Console.WriteLine("Copy approve link and paste it in browser. Login with buyer account and follow the instructions.\nOnce approved hit enter...\n");
            Console.Read();

            Console.WriteLine("Authorizing the Order....");
            var authorizeOrderResponse = AuthorizeOrderSample.AuthorizeOrder(createOrderResult.Id).Result;
            var authorizeOrderResult   = authorizeOrderResponse.Result <Order>();

            Console.WriteLine("Status: {0}", authorizeOrderResult.Status);
            var authorizationId = authorizeOrderResult.PurchaseUnits[0].Payments.Authorizations[0].Id;

            Console.WriteLine("Order Id: {0}", authorizeOrderResult.Id);
            Console.WriteLine("Authorization Id: {0}", authorizeOrderResult.PurchaseUnits[0].Payments.Authorizations[0].Id);
            Console.WriteLine("Intent: {0}", authorizeOrderResult.CheckoutPaymentIntent);
            Console.WriteLine("Links:");
            foreach (var link in authorizeOrderResult.Links)
            {
                Console.WriteLine("\t{0}: {1}\tCall Type: {2}", link.Rel, link.Href, link.Method);
            }
            AmountWithBreakdown authorixedAmount = authorizeOrderResult.PurchaseUnits[0].AmountWithBreakdown;

            Console.WriteLine("Buyer:");
            Console.WriteLine("\tEmail Address: {0}", authorizeOrderResult.Payer.Email);

            Console.WriteLine("Capturing the payment...");
            var captureOrderResponse = CaptureOrderSample.CaptureOrder(authorizationId).Result;
            var captureOrderResult   = captureOrderResponse.Result <PayPalCheckoutSdk.Payments.Capture>();

            Console.WriteLine("Status: {0}", captureOrderResult.Status);
            Console.WriteLine("Capture Id: {0}", captureOrderResult.Id);
            Console.WriteLine("Links:");
            foreach (var link in captureOrderResult.Links)
            {
                Console.WriteLine("\t{0}: {1}\tCall Type: {2}", link.Rel, link.Href, link.Method);
            }

            Console.WriteLine("Refunding the Order....");
            var refundOrderResponse = CapturesRefundSample.CapturesRefund(captureOrderResult.Id).Result;
            var refundOrderResult   = refundOrderResponse.Result <PayPalCheckoutSdk.Payments.Refund>();

            Console.WriteLine("Status: {0}", refundOrderResult.Status);
            Console.WriteLine("Refund Id: {0}", refundOrderResult.Id);
            Console.WriteLine("Links:");
            foreach (var link in refundOrderResult.Links)
            {
                Console.WriteLine("\t{0}: {1}\tCall Type: {2}", link.Rel, link.Href, link.Method);
            }
        }