async Task DoCheckOutAsync(long creditCardId)
        {
            WePayCheckout WePayCheckout = new WePayCheckout()
            {
                Type             = "goods",
                ShortDescription = $"Items purchased using My App.",
                Fee = new Fee()
                {
                    AppFee   = 1,
                    FeePayer = "payer"
                }
            };

            WePayCheckout.DeliveryType   = "point_of_sale";
            WePayCheckout.AccountId      = Settings.AccountId;
            WePayCheckout.AutoRelease    = true;
            WePayCheckout.Amount         = Amount;
            WePayCheckout.Currency       = "USD";
            WePayCheckout.HostedCheckout = null;
            WePayCheckout.PaymentMethod  = new WePayPaymentMethod()
            {
                Type = "credit_card",
                CreditCardIdentifier = new CreditCardIdentifier()
                {
                    Id = creditCardId
                }
            };

            var response = await WePayApiManager.WePayCheckout($"Bearer {Settings.WePayAccessToken}", WePayCheckout);

            var message = await response.Content.ReadAsStringAsync();

            IsBusy = false;

            if (response.IsSuccessStatusCode)
            {
                var checkoutResponse = JsonConvert.DeserializeObject <WePayCheckoutResponse>(message);
                await App.Current.MainPage.DisplayAlert("Yayyy", $"Payment proceessed succesfully", "Ok");

                await App.Current.MainPage.Navigation.PopAsync();
            }
            else
            {
                var wepayResponse = JsonConvert.DeserializeObject <WePayErrorResponse>(message);
                await App.Current.MainPage.DisplayAlert("Error", $"{wepayResponse.ErrorDescription}", "Ok");
            }
        }