Stripe Payment gateway Integration With ASP.net Webform with Source Code

  • Share this:
Stripe Payment gateway Integration With ASP.net Webform with Source Code

Lets check our step by step process to implement Stripe Payment gateway Integration with ASP.net Webform with Source code. With this example you can easily implement strip-e with asp.net webform.

Stripe is most famous payment gateway after PayPal. Its famous for its low transection charges and easy integration with different development platform. 

Stripe provide many ready to use code and API so we can easily integrate with our website which developed in angular, mvc, reactjs, nodejs, php. But it is little difficult to find Stripe payment integration with Asp.net webform as it si little old and also stripe has not ready to use source code. 

But here will give you the best solutions so you can easily integrate stripe payment with asp.net webform in just few minute and we will also give you ready to use source code which will help you a lot to implement stripe payment gateway with your asp.net webform website. 

To implement stripe payment with asp.net webs form, we will use "stripe" DLL and that will make our life more easily. you can easily implement one time payment or ecommerce payment with the help of it.

Lets take one example, We want to take donation from user using stripe payment so we create one simple form which take users information and donation amount and card details and on submit button we can do stipe checkout and save detail to database. In stripepayment.aspx page we can take users information along with donation amount. 

Step 1: Create one aspx page "stripepayment.aspx" in Asp.net webform project. On this page take all the user related field that you want to collect along with amount and card details. You can see below


Stripe


Step 2: On code side, Add stripe.dll refrence then use stripe publish and secret key in web config and do the simple code that mention below on button click event which will submit the payment in strip and return you success status which you can use to manage other DB operations.

protected void btnSubmit_Click(object sender, EventArgs e)
    {
        try
        {
            #region Paramert Binding
            var email = txtEmailId.Text != null ? txtEmailId.Text : null;
            var firstname = txtFirstName.Text != null ? txtFirstName.Text : null;
            var Lastname = txtLastName.Text != null ? txtLastName.Text : null;
            var country = txtCountry.Text != null ? txtCountry.Text : null;
            var state = txtState.Text != null ? txtState.Text : null;
            var city = txtCity.Text != null ? txtCity.Text : null;
            var Purpose = txtPurposeDonation.Text != null ? txtPurposeDonation.Text : null;
            var phone = txtCellPhoneNo.Text != null ? txtCellPhoneNo.Text : null;
            var donation = txtDonationAmount.Text != null ? long.Parse(txtDonationAmount.Text) : 0;
            var ZipCode = txtZipcode.Text != null ? txtZipcode.Text : null;
            var Address1 = txtAddress1.Text != null ? txtAddress1.Text : null;
            var Address2 = txtAddress2.Text != null ? txtAddress2.Text : null;

            var cardOnName = txtCardName.Text;
            var cardNumber = txtCard.Text;
            var cardMonth = txtExp.Text != null ? long.Parse(txtExp.Text) : 0;
            var cardYear = txtYear.Text != null ? long.Parse(txtYear.Text) : 0;
            var cardCVV = txtCV.Text;
            #endregion

            #region Stripe Payment

            string Strieppublickey = "";
            string striepSecretKey = "";

            
            Strieppublickey = ConfigurationManager.AppSettings["StripePublishKey"].ToString();
            striepSecretKey = ConfigurationManager.AppSettings["StripeSecretKey"].ToString();
            

            Stripe.StripeConfiguration.SetApiKey(Strieppublickey);
            Stripe.StripeConfiguration.ApiKey = striepSecretKey;

            #region Strip token
            CreditCardOptions card = new Stripe.CreditCardOptions();
            card.Name = cardOnName;
            card.Number = cardNumber;
            card.ExpYear = cardYear;
            card.ExpMonth = cardMonth;
            card.Cvc = cardCVV;
            //Assign Card to Token Object and create Token  
            Stripe.TokenCreateOptions token = new Stripe.TokenCreateOptions();
            token.Card = card;
            Stripe.TokenService serviceToken = new Stripe.TokenService();
            Stripe.Token newToken = serviceToken.Create(token);
            #endregion

            #region Customer Service
            Stripe.CustomerCreateOptions myCustomer = new Stripe.CustomerCreateOptions();
            myCustomer.Email = email;
            myCustomer.Source = newToken.Id;
            myCustomer.Address = new AddressOptions
            {
                Line1 = Address1 + "" + Address2,
                PostalCode = ZipCode,
                City = city,
                State = state,
                Country = country,
            };
            var customerService = new Stripe.CustomerService();
            Stripe.Customer stripeCustomer = customerService.Create(myCustomer);

            #endregion

            var myCharge = new Stripe.ChargeCreateOptions
            {
                Amount = Convert.ToInt32(txtDonationAmount.Text) * 100,
                Currency = "USD",
                ReceiptEmail = email,
                Description = "Donation agaist " + Purpose,
                Customer = stripeCustomer.Id,
                Capture = true,
            };

            var chargeService = new Stripe.ChargeService();
            Charge stripeCharge = chargeService.Create(myCharge);

            #endregion
            if (stripeCharge.Status == "succeeded")
            {
                //After payment, you can do Database operation here
                Response.Redirect("ThankYou.aspx");//redirect to thank you page 
            }
        }
        catch (Exception ex)
        {
            lblError.Text = ex.Message;
        }
    }

Code is simple and small. You can download the source code from below link which will help you to implement with your project and help you to understand even better.