Conectar Brightpearl: recibir pedidos, consultar inventario
Primero obtenga app_ref y dev_ref de su app en el portal de desarrolladores de Brightpearl, después ejecute la autorización OAuth de su cuenta para obtener el access token y el api_domain para datacenter, complete los cinco campos en Integration, pruebe, mapee y active: entran pedidos de venta y se puede consultar el inventario.
El conector de Brightpearl trae pedidos de venta de Brightpearl a este sistema y puede consultar la disponibilidad de inventario de productos guardada en Brightpearl. Lee datos de Brightpearl: no trae clientes de Brightpearl y no devuelve inventario ni ningún otro cambio a Brightpearl. Aquí el orden importa: el valor de datacenter no se elige de una lista, viene devuelto como api_domain en la respuesta del token OAuth, así que primero se completa la autorización y después se completa la conexión.
Requisitos previos#
- Una cuenta de Brightpearl y su código de cuenta: la parte del subdominio de su dirección de Brightpearl. Por ejemplo, en acme.brightpearl.com el código de cuenta es acme.
- Acceso al portal de desarrolladores de Brightpearl en developer.brightpearl.com, y una app allí para esta integración: necesita su referencia de aplicación y su referencia de desarrollador.
- Puede completar el flujo OAuth2 Authorization Code para esa cuenta de Brightpearl, desde la dirección de autorización indicada en el paso de credenciales.
- Entiende el orden inverso de datacenter: viene de la respuesta del token, como api_domain, después de la autorización. No lo adivine y no complete allí el subdominio de la cuenta.
Obtener credenciales#
- Anote primero su código de cuenta: la parte del subdominio de su dirección de Brightpearl, por ejemplo acme de acme.brightpearl.com.
- Abra el portal de desarrolladores de Brightpearl en developer.brightpearl.com, abra su app y anote su referencia de aplicación. Ese es el valor de app_ref, y esa misma referencia de aplicación se usa también como client_id en el flujo OAuth.
- Anote al mismo tiempo su referencia de desarrollador. Ese es el valor de dev_ref: se envía con cada solicitud como cabecera brightpearl-dev-ref, igual que app_ref se envía como brightpearl-app-ref.
- Inicie la autorización OAuth de su cuenta desde https://oauth.brightpearl.com/authorize/{account}, con su propio código de cuenta en lugar de {account}, y complete el flujo Authorization Code Grant para obtener el access token.
- De esa misma respuesta del token, anote dos valores: el propio access_token y el valor api_domain. El api_domain, por ejemplo use1.brightpearlconnect.com, es exactamente lo que va en el campo datacenter: cópielo de la respuesta, no lo construya usted mismo.
Completar en Integration#
- Abra Integration → Marketplace → Brightpearl → Nueva conexión. Los cinco campos siguientes son obligatorios.
- account, obligatorio, código de cuenta de Brightpearl: la parte del subdominio de su dirección de Brightpearl, por ejemplo acme.
- datacenter, obligatorio, dominio del datacenter de la API: complete el api_domain devuelto en la respuesta del token OAuth, por ejemplo use1.brightpearlconnect.com. No complete aquí el subdominio de la cuenta.
- app_ref, obligatorio, referencia de aplicación: la referencia de aplicación de su app en el portal de desarrolladores de Brightpearl, en developer.brightpearl.com.
- dev_ref, obligatorio, referencia de desarrollador: su referencia de desarrollador de Brightpearl. Se envía como cabecera brightpearl-dev-ref en cada solicitud.
- access_token, obligatorio, token de acceso OAuth2: pegue el access token obtenido del flujo Authorization Code Grant. Es un campo de tipo contraseña y se guarda como secreto.
Probar la conexión#
Haga clic en Probar la conexión. La prueba primero revisa los cinco campos (account, datacenter, app_ref, dev_ref y access_token) y, si falta alguno, se detiene e informa del campo que falta antes de enviar ninguna solicitud. En caso contrario, envía una solicitud con tres cabeceras, Authorization: Bearer con su token, brightpearl-dev-ref y brightpearl-app-ref, para leer los datos de referencia de estados de pedido: GET https://{datacenter}/public-api/{account}/order-service/order-status, con sus propios valores de datacenter y account en la dirección. Es la comprobación de solo lectura más ligera de Brightpearl. Una respuesta 200 significa que la conexión funciona. Una respuesta 401 apunta al token. Una respuesta 403 apunta al permiso. La prueba agota el tiempo a los 12 segundos.
Mapping / elegir plantilla#
Elija el mapping estándar de Brightpearl. Los pedidos de venta se encuentran con la búsqueda del servicio de pedidos de Brightpearl y después se leen completos, y las consultas de inventario leen la disponibilidad de productos del servicio de almacén. Tras aprobar la prueba, ejecute una extracción y compare un pedido real lado a lado (número de pedido, nombre del cliente mostrado en el pedido, líneas y cantidades) y contraste la disponibilidad de un producto con lo que muestra Brightpearl, antes de activar. Si un campo de sus pedidos difiere, ajuste ese campo en el mapping en lugar de cambiar registros en Brightpearl.
Activar#
Tras activar, la conexión trae pedidos de venta de Brightpearl a este sistema según la frecuencia definida, y las consultas de inventario leen la disponibilidad actual de productos de Brightpearl. Vigile las primeras extracciones en Runs / Logs y compárelas con Brightpearl antes de dejar la conexión sin supervisión. Cuando el access token deje de funcionar, ejecute de nuevo la autorización OAuth para la misma cuenta y después actualice juntos access_token y datacenter desde la nueva respuesta del token.
Lo que esta conexión no hace: no trae clientes de Brightpearl y no devuelve inventario, estado de pedidos ni resultados de fulfillment a Brightpearl. Siga gestionando eso en el propio Brightpearl, o en los sistemas donde el trabajo ocurre realmente.
Preguntas frecuentes#
La prueba falla con 401: el problema es el token
Brightpearl no aceptó el access token enviado con la prueba. El token del campo access_token es incorrecto, está incompleto o no se obtuvo para esta cuenta mediante el flujo Authorization Code Grant: la prueba lee los datos de referencia de estados de pedido como comprobación del token Bearer, y un token que Brightpearl no puede aceptar falla ahí primero.
Ejecute de nuevo la autorización desde https://oauth.brightpearl.com/authorize/{account} con su propio código de cuenta, complete el flujo Authorization Code Grant, pegue el nuevo access token entero y copie datacenter otra vez desde esa misma respuesta del token como api_domain. Guarde y pruebe de nuevo.
La prueba falla con 403: un problema de permiso
Esto es distinto del 401: el token fue aceptado, pero la app o la cuenta detrás de él no tiene permitido leer los datos de referencia de estados de pedido que usa la prueba. Volver a ejecutar la autorización con la misma app y el mismo acceso seguirá devolviendo 403.
Revise en Brightpearl qué puede acceder la app identificada por app_ref para esta cuenta, y verifique que dev_ref y app_ref son el par exacto usado con el token. Dé a la app el acceso de lectura que la conexión necesita, o use una app que ya lo tenga, después autorice de nuevo, actualice los campos desde la nueva respuesta del token y pruebe de nuevo.
La prueba se detiene antes de enviar una solicitud e informa de un campo que falta
Uno de los cinco campos obligatorios (account, datacenter, app_ref, dev_ref o access_token) está vacío. La prueba revisa los cinco primero, porque la dirección de la solicitud necesita account y datacenter, y las cabeceras necesitan app_ref, dev_ref y el token.
Complete el campo que falta desde su propia fuente: account desde su dirección de Brightpearl, app_ref y dev_ref desde el portal de desarrolladores, y access_token más datacenter desde la respuesta del token OAuth. Guarde y pruebe de nuevo.
Completé el subdominio de la cuenta como datacenter y la prueba falla
account y datacenter son valores distintos y con formas distintas. account es el subdominio de su dirección de Brightpearl, por ejemplo acme. datacenter es el api_domain devuelto en la respuesta del token OAuth, con la forma de use1.brightpearlconnect.com. Con el valor de account en el campo datacenter, la solicitud de prueba va a la dirección equivocada.
Vuelva a la respuesta del token de su autorización OAuth, copie el valor api_domain tal cual en el campo datacenter, deje account solo como el subdominio, guarde y pruebe de nuevo.
Conectado, pero no llegan pedidos de venta
La conexión funciona (la prueba leyó los datos de referencia de estados de pedido correctamente), pero no hay nada nuevo que traer: Brightpearl no tiene pedidos de venta nuevos en el rango de extracción para esta cuenta, o esos pedidos están en una cuenta distinta del código de cuenta de la conexión.
Cree o confirme un pedido de venta en Brightpearl bajo el mismo código de cuenta que la conexión, ejecute una extracción manual y confirme que el pedido aparece en la vista previa o en Runs / Logs.
La consulta de inventario no devuelve disponibilidad para un producto
La conexión puede leer la disponibilidad de productos en Brightpearl, pero ese producto no tiene un registro de disponibilidad coincidente que leer, o el código de producto del mapping no coincide con el producto en Brightpearl. La prueba puede aprobar mientras un producto concreto sigue sin nada que devolver.
Revise primero el producto y su disponibilidad en Brightpearl, después revise el código de producto de ese artículo en el mapping y corríjalo para que coincida con Brightpearl. Vuelva a ejecutar la consulta de inventario solo para ese producto.