strapi-server
🎯 Propósito
Section titled “🎯 Propósito”Este archivo extiende el plugin users-permissions de Strapi registrando servicios personalizados que pueden ser utilizados en toda la aplicación.
Ubicación: extensions/users-permissions/strapi-server.js
� Código actual
Section titled “� Código actual”const stripeServices = require("./services/stripe");const userServices = require("./services/userServices");
module.exports = (plugin) => { plugin.services = { ...plugin.services, stripe: stripeServices, userServices: userServices, };
return plugin;};🧩 ¿Cómo funciona?
Section titled “🧩 ¿Cómo funciona?”1. 📦 Importa servicios
Section titled “1. 📦 Importa servicios”const stripeServices = require("./services/stripe");const userServices = require("./services/userServices");2. 🔧 Extiende el plugin
Section titled “2. 🔧 Extiende el plugin”plugin.services = { ...plugin.services, // Mantiene servicios nativos stripe: stripeServices, userServices: userServices,};🔗 Servicios registrados
Section titled “🔗 Servicios registrados”Propósito: Operaciones con Stripe API - Gestión de customers - Procesamiento de pagos - Manejo de suscripciones
Propósito: Servicios extendidos para usuarios - Operaciones CRUD avanzadas - Validaciones personalizadas - Gestión de perfiles
🎯 Cómo usar los servicios
Section titled “🎯 Cómo usar los servicios”// USO en cualquier controlador o servicioconst paymentMethod = await strapi .service(User.USER_STRIPE_SERVICE) .findPaymentMethod(stripe, userID);
const billingAddress = await strapi .service(User.USER_SERVICE) .createAddress( userStripe, phoneToUse, "billing", strapiUser.identificationNumber );Resultado: Los servicios stripe y userServices están disponibles en toda la aplicación a través del plugin users-permissions.