- Node.js ≥ 18
- npm ≥ 9
- Python ≥ 3.10
- PostgreSQL ≥ 14
- Instalar dependencias:
cd pay-system-api
npm install
-
Base de Datos:
Antes de establecer una conexión a la base de datos es necesaria su creación, puede apoyarse en herramientas como PgAdmin, o dentro de una instancia de Postgres ejecutar el siguiente comando:
CREATE DATABASE db_name;
-
Variables de entorno (.env):
Es necesario crear las siguientes variables de entorno en archivo .env en la raíz de pay-system-api:
DATABASE_URL="postgresql://user:password@host:port/db_name",
PAYMENT_SERVICE_URL="http://localhost:5000/process",
- Ejecutar migraciones y generar cliente ORM:
npx prisma migrate dev --name migration_name
npx prisma generate
- Levantar servidor en modo desarrollo:
npm run dev
- Crear y activar entorno virtual:
cd payment-service
python -m venv venv
venv\Scripts\activate //Windows
source venv/bin/activate //Mac/Linux
- Instalar dependencias:
pip install -r requirements.txt
- Levantar servicio:
python app.py
Dentro del repositorio se incluye una colección lista para probar todos los endpoints:
postman/payment_system.postman_collection.json
-
Abrir Postman
-
Click en Import
-
Seleccionar el archivo: postman/payment-system-collection.json
-
Asegurarse de que la API y el servicio Python estén corriendo
-
Crear entorno base_url y asignarle el valor http://localhost:3000
-
Ejecutar los requests en el siguiente orden recomendado:
- Create User
- Assign Card
- Create Payment
- Get Payment History