public async void OnExecute(object sender, EventArgs args) { if (payment != null) { payment.CardInfo.ExpiryMonth = ReturnNumeric(ExpiryMonth); payment.CardInfo.ExpiryYear = ReturnNumeric(ExpiryYear); payment.CardInfo.Cvc = ReturnNumeric(CVV); await payment.UpdateAsync(); } else { var card = new Card { Number = CardNumber.Text, ExpiryMonth = ReturnNumeric(ExpiryMonth), ExpiryYear = ReturnNumeric(ExpiryYear), Cvc = ReturnNumeric(CVV) }; payment = await PaymentModel.AddAsync(card).ConfigureAwait(false); } if (!payment.isRequestSuccessful) { Device.BeginInvokeOnMainThread(() => { DependencyService.Get <IMessage>().ShortAlert("Failed to add your card"); }); } else { Device.BeginInvokeOnMainThread(() => { DependencyService.Get <IMessage>().ShortAlert("Successful!"); DataSender(sender, new FormEvent() { Object = payment }); }); } }