Skip to main content

Documentation Index

Fetch the complete documentation index at: https://mintlify.com/Nelsoncg98/InnovaTech/llms.txt

Use this file to discover all available pages before exploring further.

InnovaTech SOA is an omnichannel e-commerce platform built on Service-Oriented Architecture principles. Every REST endpoint in the system — whether it belongs to the catalog, inventory, or POS sales orchestrator — is exposed to clients through a single, centralized Spring Cloud Gateway running on port 8080. This means frontend applications, mobile clients, and integration partners never communicate with individual microservices directly; they always talk to the gateway, which handles routing, CORS enforcement, and request forwarding transparently.

Base URL

All requests during local development are made against:
http://localhost:8080
In production or staging environments, this hostname is replaced with the appropriate domain or load-balancer address while the path structure remains identical.

API Namespaces

The gateway defines three route namespaces, each forwarded to a dedicated microservice. The table below shows the public gateway path prefix, the internal service it routes to, and the direct port that service listens on.
NamespaceRoutes ToInternal Port
/api/v1/inventario/**servicio-inventario8081
/api/v1/catalogo/**servicio-catalogo8084
/api/v1/ventas-pos/**servicio-ventapos8082

Inventory API

Query and decrement product stock counts. Backed by PostgreSQL with JPA. Consumed internally by the POS Sales Orchestrator.

Catalog API

Manage product definitions, descriptions, pricing, and categories. Backed by MongoDB. Full Swagger UI available.

POS Sales API

Orchestrate in-store sale transactions using the SAGA pattern across inventory, customers, and payment services.
Every path exposed through the gateway carries the /api/v1/ prefix. The internal microservices themselves may use a shorter base path (for example, servicio-inventario maps its controller to /api/inventario). The gateway transparently forwards requests so callers always use the versioned /api/v1/ form.

CORS Policy

A global CORS policy is applied at the gateway level to all routes (/**), so individual microservices do not need their own CORS configuration. The policy permits:
SettingValue
Allowed Origins* (all origins)
Allowed MethodsGET, POST, PUT, DELETE
Allowed Headers* (all headers)
Because CORS headers are added by the gateway before the response reaches the browser, you do not need to configure CORS in your Axios, Fetch, or other HTTP client beyond sending standard requests.

Health Check

The gateway exposes Spring Boot Actuator management endpoints. Use the health endpoint to verify the gateway is running and reachable:
GET http://localhost:8080/actuator/health
Response:
{"status": "UP"}
The info endpoint is also exposed at http://localhost:8080/actuator/info.

Interactive API Docs

The catalog service generates a fully interactive Swagger UI automatically via SpringDoc OpenAPI. You can explore and test catalog endpoints directly in the browser at the service’s native port — no authentication required during local development.
ServiceSwagger UI URLOpenAPI JSON
servicio-catalogohttp://localhost:8084/swagger-ui.htmlhttp://localhost:8084/api-docs
Swagger UI is available on the catalog service’s direct port, not through the gateway. This is intentional — the Swagger UI URL is a development tool and is not routed through port 8080. The inventory service (servicio-inventario) does not include a Swagger UI.

Build docs developers (and LLMs) love