Migración del método de envío UPS de SOAP a la API RESTful
Nota: Si ha cargado cualquiera de los tres parches de este artículo antes del 6 de junio de 2024: Si tiene este problema debido a que no se están usando las mediciones del sistema métrico/SI (kilogramos y centímetros), debe volver a aplicar uno de estos parches nuevos y actualizados que ahora se publican en este artículo para su versión 2.4.4+/2.4.5+/2.4.6+ de Adobe Commerce/Magento Open Source, ya que, de lo contrario, no podrá seleccionar las mediciones del sistema métrico/SI de kilogramos y centímetros en los métodos de envío de UPS en la configuración de administración. Estos nuevos parches son compatibles con los parches lanzados anteriormente. Este problema se solucionará de forma permanente en el ámbito de la próxima versión 2.4.7-p1 de Adobe Commerce, programada para el 11 de junio de 2024.
Nota: Si cargó cualquiera de los tres parches de este artículo antes del 10 de octubre de 2023, debería volver a aplicar uno de estos parches ahora publicado en este artículo para su versión 2.4.4+/2.4.5+/2.4.6+ de Adobe Commerce/Magento Open Source una vez más, porque de lo contrario no podrá seleccionar y configurar métodos de envío UPS específicos en la Configuración de administración, y tendrá que tenerlos todos habilitados. Estos nuevos parches son compatibles con los parches lanzados anteriormente.
Este artículo proporciona un parche para resolver problemas con la migración del método de envío de United Parcel Service (UPS) de la API de SOAP a la API de RESTful para Adobe Commerce 2.4.4 - 2.4.6-pX.
A partir de junio de 2024, los comerciantes de Adobe Commerce no podrán realizar transacciones con nuestra integración actual de UPS, por lo que lanzamos esta revisión, que permite a los comerciantes de Adobe Commerce 2.4.4+/2.4.5+/2.4.6+ migrar a las API de REST de UPS más recientes.
Este problema se solucionará en la versión 2.4.7 de Adobe Commerce/Magento Open Source y también se incluirá en la versión 2.4.7-beta2 en octubre de 2023.
Descripción description
Productos y versiones afectados
Adobe Commerce en la infraestructura en la nube y local, y Magento Open Source:
- 2.4.4
- 2.4.4-pX
- 2.4.5
- 2,4,5-pX
- 2.4.6
- 2.4.6-pX
Causas
El UPS lanzó una actualización de seguridad para su API.
Si tiene la Unión Europea (otros orígenes pueden experimentar el mismo problema) que el Origen del envío, esto causará un error en la solicitud UPS REST:
"Un envío no puede tener KGS/IN o LBS/CM u OZS/CM como unidad de medida."
Resolución resolution
Según las últimas actualizaciones del modelo de seguridad de la API de UPS, UPS ha implementado un modelo de seguridad OAuth 2.0 para todas las API (Más detalles disponibles en la Guía de migración de claves de acceso al portal para desarrolladores de UPS) para mejorar la seguridad general a fin de reducir el fraude y proporcionar capacidades de API mejoradas.
Este cambio afecta a nuestra implementación actual de la integración del método de envío UPS en Adobe Commerce y requiere que corrijamos nuestra implementación actual y que migremos de la API de SOAP a la API RESTful para poder admitir los protocolos de autenticación OAuth 2.0.
Solución
Utilice los siguientes parches adjuntos, según la versión de Adobe Commerce/Magento Open Source:
Para resolver el problema en las versiones 2.4.4+, 2.4.5+ y 2.4.6+, debe aplicar el parche correspondiente a su versión de Adobe Commerce/Magento Open Source a continuación.
Parche
Utilice los siguientes parches adjuntos, según la versión de Adobe Commerce/Magento Open Source:
Para las versiones 2.4.4, 2.4.4-pX:
Para las versiones 2.4.5, 2.4.5-pX:
Para las versiones 2.4.6, 2.4.6-pX:
Cómo aplicar el parche
Descomprima el archivo y vea Cómo aplicar un parche del compositor proporcionado por Adobe en nuestra base de conocimiento de asistencia para obtener instrucciones.
Cómo saber si se han aplicado los parches
Teniendo en cuenta que no es posible comprobar fácilmente si el problema se ha corregido, es posible que desee comprobar si el parche se ha aplicado correctamente. Esto utiliza (Ejemplo: AC-9363) como parche que se debe comprobar.
Para ello, siga los siguientes pasos:
-
Instale la Herramienta Parches de calidad.
-
Ejecute el comando:
vendor/bin/magento-patches -n status |grep "9363|Status"
-
Debería ver una salida similar a esta, donde AC-9363 devuelve el estado Aplicado:
code language-none ║ Id│ Title│ Category │ Origin│ Status│ Details║ ║ N/A │ ../m2-hotfixes/AC-9363_USPS_Ground_Advantage_shipping_method_COMPOSER_patch.patch │ Other│ Local│ Applied│ Patch type: Custom
Después de aplicar el parche
Paso 1: Crear una aplicación de UPS en el portal para desarrolladores de UPS
Para utilizar la API de REST de UPS, debe crear una aplicación en el Portal para desarrolladores de UPS para generar las credenciales necesarias (ID de cliente y Secreto de cliente). Siga estos pasos:
-
Inicie sesión en el portal para desarrolladores de UPS
- Vaya a https://developer.ups.com/.
- Utilice sus credenciales de cuenta de UPS para iniciar sesión. Si no tiene una cuenta, haga clic en el botón Registrarse para crear una.
-
Crear nueva aplicación
- Una vez que hayas iniciado sesión, ve al panel y haz clic en Crear aplicación.
- Proporcione un nombre para la aplicación (por ejemplo, Adobe Commerce UPS Integration).
-
Seleccione las API necesarias
-
Durante el proceso de creación de la aplicación, cuando se le solicite, seleccione las API que utilizará la aplicación. Asegúrese de incluir:
- Tarifa API: Para obtener tarifas de envío.
- API de tiempo en tránsito: para estimaciones de tiempo de entrega.
- Cualquier otra API relevante para sus necesidades de envío (por ejemplo, API de seguimiento, si corresponde).
-
-
Establecer permisos
- Asegúrese de que la aplicación tenga los permisos necesarios habilitados para las API seleccionadas.
- Esto suele hacerse durante la creación de la aplicación, pero los permisos se pueden revisar y actualizar más adelante en la configuración de la aplicación.
-
Generar credenciales
- Una vez creada la aplicación, vaya a la sección Credenciales.
- Copie ID de cliente y Secreto de cliente. Se utilizarán para configurar la integración de UPS REST en Adobe Commerce.
- Nota: Mantenga estas credenciales seguras y no las comparta públicamente.
-
Probar la aplicación
- Utilice las herramientas de prueba de UPS Developer Portal para verificar que su aplicación funcione correctamente y pueda obtener datos de las API seleccionadas.
Paso 2: Configurar UPS REST en Adobe Commerce
Una vez que tenga el ID de cliente y el Secreto del cliente, proceda a configurar la integración de UPS REST en Adobe Commerce.
Asegúrese de seleccionar Tipo UPS = "REST de United Parcel Service".