PHPackages                             josalba/prestashop-webservice-lib - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [API Development](/categories/api)
4. /
5. josalba/prestashop-webservice-lib

ActiveLibrary[API Development](/categories/api)

josalba/prestashop-webservice-lib
=================================

PrestaShop Webservice access library

0.1.0(2mo ago)0457OSL-3.0PHPPHP &gt;=8.0

Since Jun 18Pushed 2mo agoCompare

[ Source](https://github.com/josAlba/PrestaShop-webservice-lib)[ Packagist](https://packagist.org/packages/josalba/prestashop-webservice-lib)[ RSS](/packages/josalba-prestashop-webservice-lib/feed)WikiDiscussions master Synced 2d ago

READMEChangelogDependencies (10)Versions (9)Used By (0)

PHP client for PrestaShop Webservices
=====================================

[](#php-client-for-prestashop-webservices)

This library allows you to perform requests to a PrestaShop instance using the [Webservice API](https://devdocs.prestashop.com/8/development/webservice/).

Installation
------------

[](#installation)

Install the library using composer:

```
composer require josalba/prestashop-webservice-lib

```

Usage
-----

[](#usage)

La clase `Get` se encuentra disponible para múltiples recursos como:

- `Products`
- `Orders` (antes Invoices)
- `StockAvailables`
- `Categories`
- `Carts`
- `Manufacturers`
- `Addresses`
- `Countries`
- `Combinations`
- `SpecificPrices`
- `Images`

Se utiliza para realizar solicitudes GET a la API de PrestaShop. Aquí te mostramos cómo usarla.

### Ejemplo con StockAvailables

[](#ejemplo-con-stockavailables)

```
use prestashop\prestashopWebserviceLib\StockAvailables\Application\Get;
use prestashop\prestashopWebserviceLib\Shared\Domain\Display\DisplayFull;
use prestashop\prestashopWebserviceLib\StockAvailables\Domain\Filter;

$get = new Get('https://tu-tienda.com/api/', 'TU_TOKEN_API');
$display = new DisplayFull();
$filter = new Filter(id: '1');

$result = $get($display, $filter);
// $result es una instancia de PrestashopStockAvailable
```

### Ejemplo con Categories

[](#ejemplo-con-categories)

```
use prestashop\prestashopWebserviceLib\Categories\Application\Get;
use prestashop\prestashopWebserviceLib\Categories\Domain\Display;

$get = new Get('https://tu-tienda.com/api/', 'TU_TOKEN_API');
$display = new Display(id: true, name: true, active: true);

$result = $get($display);
// $result es una instancia de PrestashopCategory
```

Recursos Disponibles
--------------------

[](#recursos-disponibles)

La clase `Resources` en `Shared\Domain\Resources.php` contiene constantes para los **69 recursos oficiales** de PrestaShop, lo que facilita realizar consultas personalizadas o extender la librería.

Método get
----------

[](#método-get)

El método `__invoke()` se utiliza para obtener los elementos disponibles. Evoca internamente un método `getRaw()` para obtener la respuesta en bruto de la API y la deserializa al objeto correspondiente.

### Parámetros

[](#parámetros)

Este método acepta:

- `Display $display`: Determina qué campos devolver. Puedes usar `DisplayFull` para todos o una instancia de `Display` específica del recurso para campos selectivos.
- `Filter $filter` (opcional): Criterios de filtrado.

Método put (Solo StockAvailables por ahora)
-------------------------------------------

[](#método-put-solo-stockavailables-por-ahora)

El método `__invoke()` se utiliza para actualizar el objeto.

```
use prestashop\prestashopWebserviceLib\StockAvailables\Application\Put;
use prestashop\prestashopWebserviceLib\StockAvailables\Domain\StockAvailable;
use prestashop\prestashopWebserviceLib\StockAvailables\Domain\PrestashopStockAvailableUpdate;
use prestashop\prestashopWebserviceLib\Shared\Domain\ShopParam;

$put = new Put('url','token');
$item = new PrestashopStockAvailableUpdate([new StockAvailable(id: 1, quantity: 10)]);
$shopParam = new ShopParam(shopId: 1);

$result = $put($item, null, $shopParam);
```

Desarrollo y Contribución
-------------------------

[](#desarrollo-y-contribución)

Si deseas contribuir al proyecto o entender mejor su arquitectura interna, consulta nuestra guía técnica:

- **[Technical Skill Guide](skills/prestashop-webservice-lib/SKILL.md)**: Detalles sobre arquitectura DDD, cómo añadir recursos y estándares de testing.

License
-------

[](#license)

This library is released under the [OSL-3.0 license](LICENSE.md).

###  Health Score

42

—

FairBetter than 88% of packages

Maintenance88

Actively maintained with recent releases

Popularity16

Limited adoption so far

Community19

Small or concentrated contributor base

Maturity41

Maturing project, gaining track record

 Bus Factor5

5 contributors hold 50%+ of commits

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~97 days

Recently: every ~171 days

Total

8

Last Release

62d ago

PHP version history (2 changes)0.0.1PHP &gt;=8.2

0.0.7PHP &gt;=8.0

### Community

Maintainers

![](https://avatars.githubusercontent.com/u/30494301?v=4)[josAlba](/maintainers/JosAlba)[@josAlba](https://github.com/josAlba)

---

Top Contributors

[![josAlba](https://avatars.githubusercontent.com/u/30494301?v=4)](https://github.com/josAlba "josAlba (19 commits)")[![rGaillard](https://avatars.githubusercontent.com/u/2787216?v=4)](https://github.com/rGaillard "rGaillard (7 commits)")[![PierreRambaud](https://avatars.githubusercontent.com/u/1462701?v=4)](https://github.com/PierreRambaud "PierreRambaud (6 commits)")[![matks](https://avatars.githubusercontent.com/u/3830050?v=4)](https://github.com/matks "matks (5 commits)")[![marekhanus](https://avatars.githubusercontent.com/u/23176472?v=4)](https://github.com/marekhanus "marekhanus (4 commits)")[![Progi1984](https://avatars.githubusercontent.com/u/1533248?v=4)](https://github.com/Progi1984 "Progi1984 (4 commits)")[![anat](https://avatars.githubusercontent.com/u/652592?v=4)](https://github.com/anat "anat (2 commits)")[![angelo983](https://avatars.githubusercontent.com/u/24254454?v=4)](https://github.com/angelo983 "angelo983 (2 commits)")[![codl](https://avatars.githubusercontent.com/u/315139?v=4)](https://github.com/codl "codl (2 commits)")[![GaryPEGEOT-WIC](https://avatars.githubusercontent.com/u/9263975?v=4)](https://github.com/GaryPEGEOT-WIC "GaryPEGEOT-WIC (2 commits)")[![julienbourdeau](https://avatars.githubusercontent.com/u/1525636?v=4)](https://github.com/julienbourdeau "julienbourdeau (2 commits)")[![matthieume](https://avatars.githubusercontent.com/u/4466105?v=4)](https://github.com/matthieume "matthieume (2 commits)")[![nicolasverlhiac](https://avatars.githubusercontent.com/u/5034521?v=4)](https://github.com/nicolasverlhiac "nicolasverlhiac (2 commits)")[![RubenMartins](https://avatars.githubusercontent.com/u/5765731?v=4)](https://github.com/RubenMartins "RubenMartins (2 commits)")[![glauberportella](https://avatars.githubusercontent.com/u/717547?v=4)](https://github.com/glauberportella "glauberportella (1 commits)")[![xGouley](https://avatars.githubusercontent.com/u/12794114?v=4)](https://github.com/xGouley "xGouley (1 commits)")[![NathanGiesbrecht](https://avatars.githubusercontent.com/u/1516627?v=4)](https://github.com/NathanGiesbrecht "NathanGiesbrecht (1 commits)")[![nicolasdanelon](https://avatars.githubusercontent.com/u/2846046?v=4)](https://github.com/nicolasdanelon "nicolasdanelon (1 commits)")[![weianguo](https://avatars.githubusercontent.com/u/2612973?v=4)](https://github.com/weianguo "weianguo (1 commits)")[![pangteypiyush](https://avatars.githubusercontent.com/u/9109260?v=4)](https://github.com/pangteypiyush "pangteypiyush (1 commits)")

###  Code Quality

TestsPHPUnit

### Embed Badge

![Health badge](/badges/josalba-prestashop-webservice-lib/health.svg)

```
[![Health](https://phpackages.com/badges/josalba-prestashop-webservice-lib/health.svg)](https://phpackages.com/packages/josalba-prestashop-webservice-lib)
```

###  Alternatives

[tencentcloud/tencentcloud-sdk-php

TencentCloudApi php sdk

3741.3M46](/packages/tencentcloud-tencentcloud-sdk-php)[neuron-core/neuron-ai

The PHP Agentic Framework.

2.0k656.1k38](/packages/neuron-core-neuron-ai)[eslazarev/wildberries-sdk

Wildberries OpenAPI clients (generated).

273.0k](/packages/eslazarev-wildberries-sdk)[open-dxp/opendxp

Content &amp; Product Management Framework (CMS/PIM)

9421.6k61](/packages/open-dxp-opendxp)[files.com/files-php-sdk

Files.com PHP SDK

2481.1k](/packages/filescom-files-php-sdk)[aimeos/prisma

A powerful PHP package for integrating media related Large Language Models (LLMs) into your applications

1943.1k5](/packages/aimeos-prisma)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
