entre Desarrolladores

Recibe ayuda de expertos

Registrate y pregunta

Es gratis y fácil

Recibe respuestas

Respuestas, votos y comentarios

Vota y selecciona respuestas

Recibe puntos, vota y da la solución

Pregunta

1voto

hibridar web

A ver si me podéis ayudar con un tema . He llegado a un acuerdo con una tienda extranjera (tienda B) la cual puedo mostrar su catálogo de su tienda en la mía, desarrollada con prestashop (tienda A)- me han comentado que eso se llama hibridar una web - es la primera vez que escucho ese termino.
Cuando un cliente navegue por mi tienda (tienda A) y adquiere un producto de los que he sacado de la web de la tienda extranjera (tienda B),le cobro yo y remito el pedido a la tienda B.
La tienda B es la encargada de enviar el pedido. ¿Sabéis como puedo hacer esto con prestashop ?

Dos requisitos

  • En mi tienda ( tienda A) convivirán productos mios con los de la tienda B
  • Supongo que una vez a la semana me enviarán la tienda B una factura con los productos que le ha adquirido para su posterior liquidación

¿ Alguien ha hecho algo parecido ? ¿ Qué nivel de complejidad tiene ? ¿ Dónde podría sacar documentación al respecto ? ¿ Alguien me podría indicar por donde empezar ?

Muchas gracias chicos

2 Respuestas

0voto

bl4z3r Puntos16850

@gonzalss, para lo que propones tienes varias estrategias donde puedes atacarlo:

  • Si Prestashop expone una API que permite consultar el listado de productos, podrías:
    a. Generar un script para agregue los productos a tu base de datos o
    b. al listado de productos mostrado en el software y luego hacer una lógica de negocio diferenciada para tratar estos productos ajenos a tu tienda.
  • Si no tienes posibilidad de acceder a una API para realizar esas tareas, podrías hacer un integración entre base de datos:
    a. Generar un vista donde estén tus productos y los productos de la otra base de datos y que software a la hora de hacer una consulta de productos, lo haga hacia la vista y no hacia una tabla.
    b. Hacer "job" con una operación de migración de productos de la base de datos de la tienda ajena a tu tienda.
  • Si no puede acceder a la API y tampoco a la base de datos, la tienda ajena tendrá que exponer un archivo con un formato especificado y realizar una operación ETL para poder agregarlos a tu base de datos.
  • Si Prestashop tiene plugins, podría desarrollarse algun plugin para que haga todo lo anterior.

La dificultad para implementar alguna de estas estrategias es de nivel medio si se tiene conocimientos en prestashop.

Si necesitas mas información al respecto podrías revisar el siguiente pregunta realizada en Stackoverflow: http://stackoverflow.com/questions/29084543/how-to-upload-products-from-one-prestashop-store-to-another-prestashop-store

0voto

Leonardo-Tadei Puntos227320

Hola @gonzalss,

Para hacer esto por software decentemente, la tienda extranjera debería tener una API u algún otro mecanismo para acceder a los productos.

Siendo así, la mejor forma de integrar tus productos con los de la otra tienda es leer (por ejemplo todas las noches) los productos y agregarlos a tu DB de PrestaShop. De esta forma se mostrarán como de una sola tienda.

En caso de no proveer una API, tal vez puedan darte un listado de los productos diariamente, para hader la sincronización con tus productos basado en el archivo.

Todo lo demás, como hacer un script que lea el sitio o cosas similares, son muy endebles, porque al menor cambio en la tienda extranjera dejará de funcionar.

Si no tienen API ni archivo y los productos son pocos, tal vez se pueda mantener a mano...

Acás las cosas que hicimso parecidas siempre acceden vía API o vía un archivo (por ejemplo para mantener una web con los productos y precios cargados en un software de facturación).

Saludos cordiales!

PD: no había escuchado antes lo de "hibridación", pero se entiende la idea. Usamos términos como "integración" cuando es entre dos software propios y "mashups" cuando es entre servicios de terceros.

0voto

gonzalss comentado

¿ Y si accedo vía FTP ? Si me crearan un usuario FTP podría recuperar todos los productos de la tienda. Ya que dudo que tengan implementado un API para esto

1voto

Leonardo-Tadei comentado

Dudo mucho que puedas accediendo vía FTP, ya que por esa vía solo accederás a archivos (imágenes, scripts, etc) pero no a la información guardada en una DB.

Sí en el FTP mantienen un archivo actualizado con el catálogo, podrías usarlo, y sería el segundo mecanismo que te propongo en la respuesta, ya que sincronizar contra un archivo es independiente del mecanismo por el que lo obtengas (FTP, mail, nube, torrent...)

Saludos

PD: me llama un poco la atención tu pregunta, ya que teniendo el acceso FTP a un PrestaShop, seguro ya sabés que no sirve para acceder a los productos publicados en el sitio, porque están en una tabla de base de datos...

Por favor, accede o regístrate para responder a esta pregunta.

Otras Preguntas y Respuestas


...

Bienvenido a entre Desarrolladores, donde puedes realizar preguntas y recibir respuestas de otros miembros de la comunidad.

Conecta