Marketplace
API REST para el sistema multi-vendor. Permite gestionar vendors, vincular productos y administrar payouts.
Vendors (Merchant API)
Listar vendors
GET /api/v1/marketplace/vendors?status=active
| Param | Tipo | Descripción |
|---|---|---|
status | string | Filtrar: pending, active, suspended |
Crear vendor
POST /api/v1/marketplace/vendors
{
"name": "Artesanías Perú",
"country_code": "PE",
"default_commission_pct": 15.0
}
Obtener vendor
GET /api/v1/marketplace/vendors/:id
Actualizar estado del vendor
PATCH /api/v1/marketplace/vendors/:id/status
{
"status": "active"
}
Estados posibles: pending, active, suspended.
Listar productos del vendor
GET /api/v1/marketplace/vendors/:id/products
Listar payouts del vendor
GET /api/v1/marketplace/vendors/:id/payouts
Productos vinculados
Vincular producto a vendor
POST /api/v1/marketplace/vendor-products
{
"vendor_id": "uuid",
"catalog_product_id": "uuid",
"price_override": 12000,
"stock": 50
}
Desvincular producto
DELETE /api/v1/marketplace/vendor-products/:id
Payouts
Listar payouts
GET /api/v1/marketplace/payouts?status=pending
Vendor Portal (API pública del vendor)
Endpoints autenticados para que cada vendor gestione sus propios datos.
| Método | Ruta | Descripción |
|---|---|---|
POST | /api/v1/vendor/login | Login del vendor |
GET | /api/v1/vendor/me | Perfil del vendor |
GET | /api/v1/vendor/products | Mis productos |
PATCH | /api/v1/vendor/products/:id | Actualizar mi producto |
GET | /api/v1/vendor/payouts | Mis payouts |
Errores
| Código | HTTP | Descripción |
|---|---|---|
VENDOR_NOT_FOUND | 404 | Vendor no encontrado |
VENDOR_ALREADY_EXISTS | 409 | Email ya registrado |
VENDOR_NOT_ACTIVE | 422 | Vendor no está activo |
PRODUCT_ALREADY_LINKED | 409 | Producto ya vinculado a este vendor |