Welcome to SC StripeShopping’s documentation!
SC StripeShopping is Visual Studio Solution written in ASPT.NET Core MVC 6 that implement a Shopping Cart process and checkout with Stripe Payment Gateway integration.
It use Microsot SQL Server Express as database and EntityFrameworkCore Code First to manage Data and offers a simple and intuitive UI to start building a full eCommerce Website.
SC StripeShopping is an ASP.NET CORE MVC 6 Project that can be used to start building your eCommerce Website. The project implement the Shopping Cart process (Shopping - Checkout - Payment). The Shopping Cart persist on database and attached to the logged in User. Key Features:
Check out the Getting Started section for further information
Note
This project is under active development.
Contents
Getting Started
SC StripeShopping is an ASP.NET CORE MVC 6 Project that can be used to start building your eCommerce Website.
The project implement the Shopping Cart process (Shopping - Checkout - Payment).
The Shopping Cart persist on database and attached to the logged in User.
Key Features
Well structured & Designed solution.
Clean code.
EntityFrameworkCore Code First.
Seperated Business Patterns.
Identity Area for User account management.
External Authentication: Google, Micrsoft, Twitter, Facebook.
Admin Role to manage Products.
Clean Invoice Pdf generation.
Sending Invoice by Email.
Stripe Gateway Checkout.
Session & Persistent Shopping Card tracked by User.
Generic Repository Pattern.
appsettingsjson Configuration Helper.
Serilog Middleware ToFile Implementation.
Exception middleware to capture all unhandled Exceptions.
Full commented source codes.
Jquery based prototype pattern.
Jquery Ajax helper.
Environment
- To build the Solution you need to have:
Visual Studio 2022
Microsoft SQL Server Express (2014 or later)
Micrsoft .NET 6 SDK
Settings
Before building the solution, make sure to have the correct parameters on the appsettings.json.
ConnectionStrings : Default Connection String of the database
Stripe : Stripe SecretKey and PublishableKey
EmailCred : SMTP Email Credentials
SMTP : SMTP Server settings
GoogleAuth : Google Authentication ClientId and ClientSecret
FacebookAuth : Facebook Authentication ClientId and ClientSecret
MicrosoftAuth : Microsoft Authentication ClientId and ClientSecret
TwitterAuth : Twitter Authentication ConsumerAPIKey and ConsumerSecret
InvoiceSettings : Invoice Settings to use on PDF Invoice
- width:
600
- width:
600
Seed Data
identitydata.json: This file contains default data to seed to the database for identity memebership.
Administrator Role : The website Administrator can manage products (Add/Update/Delete).
User Role : The User can buy products and do checkout and payment.
Default Administrator: admin@domain.com (password: $Admin123).
Default User: paul@domain.com (password: $Paul123).
storedata.json: This file contains default products list with their prices to seed to database.
Build & Run
After updating settings and default datat files, you can build and Run the solution.
The Project use EntityFrmaeworkCore Code First, so the database will be created automatically on project Startup.
Catalog
Navigate to Catalog Menu to manage product list.
If you have the Administrator Role, you can Add/Update/Delete Products.
Profile
Navigate to your profile by clicking to your Name and you will be able to update your personnal informations.
Shopping Cart
Navigate to Home page and choose a product to buy.
After clicking Buy button, you will redirected to the Shopping Cart page.
You can update each Product quantity and then Click Checkout to proceed to checkout.
Checkout
On the checkout page you can update your personnal informations before dpoing payment.
Your updated personnal informations will appear on the generated PDF invoice later.
Stripe Payment
To proceed to payment click on the button Proceed to payment, you will be redirected to Stripe Payment page.
You can use test card number 4242 4242 4242 4242.
Fill the payment form and then confirm payment.
Invoice
After payment success, you will be redirected to the Website and you can download PDF Invoice.
Orders
To consult your orders, navigate to your profile and go to the last Tab “My Orders”.
For each order you can download the attached invoice as PDF.