Instalar la extensión Adobe Commerce B2B
- Temas:
- B2B
Creado para:
- Principiante
- Intermedio
- Administrador
- Desarrollador
La extensión B2B de Adobe Commerce magento/extension-b2b
está disponible para todas las versiones compatibles de Adobe Commerce. Se instala después de instalar Adobe Commerce.
Requisitos
- Adobe Commerce, todas las versiones compatibles
- PHP 8.1, 8.2 y 8.3 (requiere B2B 1.5.0)
- Composer
Plataformas compatibles
- Adobe Commerce en infraestructura en la nube (ECE)
- Adobe Commerce local (EE)
Pasos de instalación
Requisitos previos
-
Acceda a repo.magento.com para descargar la extensión. Para obtener la generación de claves y los derechos necesarios, consulta Obtener tus claves de autenticación.
Guarde las claves de autenticación para la instalación definiéndolas globalmente en el directorio COMPOSER_HOME. O bien, guárdelos en un archivo auth.json en el directorio raíz de la aplicación de Adobe Commerce.
-
Versión compatible de la extensión B2B- Determine la versión más reciente de la extensión B2B compatible con la versión implementada de Adobe Commerce.
-
Consulte las notas de la versión para obtener la información más actual acerca de la compatibilidad de versiones, actualizaciones o cambios que pueden afectar a los requisitos de instalación o actualización.
Instale la extensión B2B (magento/b2b-extension
) mediante Composer. La extensión es un metapaquete de compositor que incluye la colección de módulos que habilitan las capacidades B2B para una instancia de Adobe Commerce. Para obtener una lista de los módulos incluidos, consulte Paquetes B2B.
Adobe recomienda trabajar en una rama de desarrollo al añadir la extensión B2B al proyecto. Si no tiene una rama, consulte Crear una rama para desarrollo. Al instalar la extensión B2B, el nombre de la extensión Magento_B2b
se inserta automáticamente en el archivo app/etc/config.php
. No es necesario editar el archivo directamente.
Para instalar la extensión B2B:
-
En la estación de trabajo local, cambie al directorio del proyecto.
-
Cree o desproteja una rama de desarrollo.
-
Agregue la extensión B2B a la sección
require
del archivocomposer.json
.composer require magento/extension-b2b --no-update
-
Actualice las dependencias del proyecto.
composer update
-
Agregar, confirmar y enviar cambios de código.
git add -A
git commit -m "Install the B2B extension."
git push origin <branch-name>
NOTE
Al insertar actualizaciones en el entorno de la nube de, se inicia el proceso de implementación de la nube de Commerce para aplicar los cambios. Compruebe el estado de implementación desde el registro de implementación. Si encuentra errores de implementación, consulte Error al recuperar del componente. -
Una vez finalizada la generación y la implementación, utilice SSH para iniciar sesión en el entorno remoto y comprobar que la extensión B2B está instalada y habilitada.
bin/magento module:status Magento_B2b
Un nombre de extensión usa el formato:
<VendorName>_<ComponentName>
.Respuesta de ejemplo:
Magento_B2b : Module is enabled
-
En el directorio raíz de la aplicación de Adobe Commerce, actualice
composer.json
para agregar las dependencias para la extensión B2B:composer require magento/extension-b2b:<version>
Si se produce un error, por ejemplo:
[InvalidArgumentException] Could not find a matching version of package magento/extension-b2b.
Compruebe la ortografía del paquete, la restricción de versión y que el paquete está disponible y coincide con el requisito de estabilidad mínima (estable).
-
Si se le solicita, escriba sus claves de autenticación.
Su clave pública es su nombre de usuario; su clave privada es su contraseña. Si ha almacenado las claves pública y privada en
auth.json
, no se le pedirá que se autentique. -
Ejecute los siguientes comandos una vez que Composer haya terminado de actualizar los módulos:
bin/magento setup:upgrade
bin/magento setup:di:compile
bin/magento setup:static-content:deploy -f
bin/magento cache:clean
NOTE
En el modo Producción, podría recibir un mensaje dirigido aPlease rerun Magento compile command
. Introduzca los comandos para completar la instalación. Adobe Commerce no le pide que ejecute el comando de compilación en modo de desarrollador.
Después de completar la instalación, configure e inicie los consumidores de mensajes.
Consumidores de mensajes
La extensión Adobe Commerce B2B utiliza MySQL para la administración de colas de mensajes. En la tabla siguiente se enumeran los consumidores de mensajes que admiten las capacidades B2B. Después de instalar la extensión, inicie los consumidores de mensajes para las funciones B2B necesarias para su tienda de Commerce.
sharedCatalogUpdatePrice
sharedCatalogUpdateCategoryPermissions
negotiableQuotePriceUpdate
purchaseorder.toorder
purchaseorder.transactional.email
purchaseorder.validation
quoteItemCleaner
inventoryQtyCounter
async.operations.all
Configuración de consumidores de mensajes
Evite posibles problemas o retrasos en el procesamiento agregando los siguientes parámetros al iniciar los consumidores de mensajes para las capacidades B2B.
-
--max-messages <value>
: especifica el número máximo de mensajes que cada consumidor debe procesar antes de finalizar (predeterminado = 10000). Aunque Adobe no lo recomienda, puede utilizar 0 para evitar que el consumidor finalice. La práctica recomendada para una aplicación PHP es reiniciar los procesos de larga ejecución para evitar posibles fugas de memoria. -
--batch-size <value>
: permite limitar los recursos del sistema consumidos por los consumidores (CPU, memoria). El uso de lotes más pequeños reduce el uso de recursos y, por lo tanto, ralentiza el procesamiento. Si se especifica, los mensajes de una cola se consumen en lotes de<value>
cada uno. Esta opción solo se aplica al consumidor de lotes. Si--batch-size
no está definido, el consumidor por lotes recibe todos los mensajes disponibles en una cola.
Para obtener información acerca de opciones de configuración adicionales, vea Specific-configuration.
Iniciar consumidores de mensajes
Para habilitar operaciones asincrónicas para las capacidades B2B, debe iniciar varios consumidores de mensajes.
-
Enumerar los consumidores de mensajes disponibles:
bin/magento queue:consumers:list
El comando devuelve los consumidores de mensajes disponibles, incluidos todos los consumidores de mensajes B2B.
-
Inicie cada consumidor por separado:
bin/magento queue:consumers:start [--max-messages=<value>] [--batch-size=<value>] <consumer_name>
Por ejemplo:
bin/magento queue:consumers:start quoteItemCleaner
&
al comando, vuelva a un símbolo del sistema y continúe ejecutando comandos. Por ejemplo: bin/magento queue:consumers:start sharedCatalogUpdatePrice &
.Para obtener más información, consulte Administrar colas de mensajes en la Guía de configuración.
Añadir consumidores de mensajes a cron
Puede automatizar la programación de ejecución para los consumidores de mensajes SharedCatalogUpdateCategoryPermissions
y SharedCatalogUpdatePrice
agregando la programación al archivo de configuración de cron /app/code/Magento/MessageQueue/etc/crontab.xml.
* * * * * ps ax | grep [s]haredCatalogUpdateCategoryPermissions >>/dev/null 2>&1 || nohup php /var/www/html/magento2/bin/magento queue:consumers:start sharedCatalogUpdateCategoryPermissions &
* * * * * ps ax | grep [s]haredCatalogUpdatePrice >>/dev/null 2>&1 || nohup php /var/www/html/magento2/bin/magento queue:consumers:start sharedCatalogUpdatePrice &
También puede configurar programaciones para consumidores de mensajes desde Configuración de almacenamiento en el Administrador.
Habilitar funciones B2B en el administrador
Después de instalar la extensión B2B de Adobe Commerce e iniciar los consumidores de mensajes, también debe habilitar las características B2B en el administrador.