Skip to content

DanielRivera03/CarritoComprasPayPal-PasarelaPago

Repository files navigation

Carrito de Compras + Pasarela de Pagos (PayPal)

PresentacionBG

Configuración Inicial

Estimado(a) visitante, reciba una cordial bienvenida a este repositorio. Antes de iniciar y ejecutar este sistema en su servidor, debe realizar algunas configuraciones correspondientes para el óptimo funcionamiento del mismo, las cuales son las siguientes:

* Archivo de conexión (Web.config)

Usted debe de realizar los correspondientes cambios a la cadena de conexión, dicho archivo se llama Web.config en dónde Data Source= es el nombre de su servidor, Initial Catalog= el nombre de la base de datos, User ID=;Password= nombre de usuario y contraseña de acceso de su usuario configurado en su SGBD SQL SERVER. Único punto en dónde usted deberá conectar la base de datos a esta aplicación. NO se utilizan más cadenas de conexiones.

raycast-untitled

* Conectividad API Pasarela de Pagos PayPal (Web.config)

Dentro del mismo archivo Web.config, usted encontrará la configuración general de la conexión hacia la API de PayPal. Para ello usted debe crear una cuenta en PayPal Developer ( https://developer.paypal.com ) y configurar su cuenta personal para utilizar el entorno de pruebas PayPal SandBox (Para mayor información específica de la creación de su cuenta, configuración y demás gestiones relacionadas, por favor visite la documentación oficial de PayPal Developer).

Una vez configurada su cuenta, usted debe ubicar los siguientes bloques de código, y sustituir por toda la información que la plataforma antes mencionada le solicita. Dónde ClientId= es su usuario encriptado generado por la plataforma y Secret= su contraseña de acceso generada por la plataforma. Por favor NO tocar UrlPaypal esa es la URL de comunicación con la API de los servicios de PayPal.

raycast-untitled (1)

* URL Redireccionamiento Pagos Procesados / Fallidos - PayPal ( Controllers/TiendaController.cs )

Por favor ubique el siguiente metodo public async Task ProcesarPago(List oListaCarrito, Venta oVenta) Dentro de la carpeta Controllers - Archivo llamado TiendaController.cs Usted debe sustituir únicamente el https inicial el cuál corresponde a su servidor. Todo lo demás por favor NO MODIFICAR Caso contrario, si modifica de manera incorrecta, o bien no realiza el ajuste pertinente, obtendrá un error 404 al momento de finalizar la compra.

raycast-untitled (2)

* Ajustes SMTP .NET - Envío de Correos Automáticos ( CapaNegocio/CN_Recursos.cs )

Usted debe de configurar el SMTP que funciona únicamente para enviar correos automáticos al momento de reestablecer su contraseña si cualquier usuario pierde el acceso a la plataforma. Por favor tome nota de la imagen citada abajo y realizar los respectivos cambios que los comentarios hacen mención. Únicamente necesita configurar ya sea su correo personal como receptor de envío de correos automáticos para aplicaciones, o bien un correo institucional real dentro de un servicio de hosting.

raycast-untitled (3)

Y de esta manera hemos concluído con éxito toda la configuración necesaria para que este sistema funcione perfectamente en su servidor. Sí tiene problemas, por favor haga uso del Pull & Request o bien siga los pasos antes mencionados nuevamente.

Importante

Se ha compartido todas las sentencias SQL que usted necesita para crear la respectiva base de datos. Esta en total libertad de dar el nombre que usted desee al momento de crear la misma, pero deberá reflejar ese cambio en el archivo de conexión de la aplicación correspondiente. Al momento de registrar los respectivos productos, usted se dará cuenta que hay una columna llamada RutaImagen en dónde usted deberá asignar su URL completa de su máquina en específico. Si usted no realiza este cambio, lamentamos informarle que las imágenes no se mostrarán al momento de ejecutar está aplicación. La URL por defecto es la siguiente: C:\Users\dany_\OneDrive\Escritorio\CarritoMVC\FotosProductos -> Usted debe cambiar según la ubicación en dónde ejecute esta aplicación.

Descripción General

Sistema desarrollado para simular las típicas tiendas en línea, en dónde usted puede agregar los productos ofertados a un carrito de compras, elegir la cantidad de artículos de cada uno de los elementos que usted agregué y realizar la respectiva compra de los mismos. En este caso únicamente se ha manejado la interfaz de clientes, no existen más roles de usuarios, ni un panel de administración para realizar las respectivas tareas de gestión de inventarios y productos de una tienda, pero perfectamente pueden ser integradas si usted decide mejorar y añadir dichas funcionalidades.

Este sistema a nivel de código y base de datos se encuentra distribuido de la siguiente manera:

  • Base de Datos:
    • 10 Tablas + 1 Tabla Virtual.
    • 6 Procedimientos Almacenados.
    • 1 Función.
  • Sistema:
    • Lenguaje de Programación C# ASP.NET - ADO.NET.
    • Patrón MVC (Modelo, Vista, Controlador).
    • Gestiones AJAX, JQuery.
    • Desarrollo basado en capas (Capa de Negocio, Capa de Datos, Capa de Presentación).
    • Complementos JQuery, Javascript
    • Envío de Correos Automáticos - SMTP .NET.
    • Plantilla Bootstrap.
    • Mantenimientos y gestiones asíncronos, es decir, todo se realiza en tiempo real sin refrescar la página.

Capturas

* Vista principal (index) sin inicio de sesión

cc1

* Detalle de productos sin inicio de sesión

cc2

* Login - Inicio de sesión clientes

cc3

* Recuperación de cuentas - Reestablecer contraseñas

cc4

* Vista principal (index) usuario logueado

cc6

* Confirmación producto añadido a carrito de compras, y validación de productos repetidos

cc7

cc8

* Detalle general de productos agregados en carrito de compras

cc9

* Proceso de compra - ¿Cómo Configurar? - Leer Detalle Arriba

cc10

cc11

cc12

* Listado de todas mis compras procesadas

cc13

* Recepción de correos automáticos - recuperación de cuentas clientes

cc14


Créditos correspondientes dentro de código fuente de esta aplicación | Muchas gracias por obtener este repositorio hecho con algunas tazas de café ☕ ❤️

CSharp

*** Fecha de Subida: 11 agosto 2022 ***