Download the PHP package abhisingh159/inflow-cloud-php-sdk without Composer
On this page you can find all versions of the php package abhisingh159/inflow-cloud-php-sdk. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Download abhisingh159/inflow-cloud-php-sdk
More information about abhisingh159/inflow-cloud-php-sdk
Files in abhisingh159/inflow-cloud-php-sdk
Package inflow-cloud-php-sdk
Short Description Standalone PHP SDK for the inFlow Cloud API (products, customers, sales orders, inventory, vendors).
License MIT
Homepage https://github.com/abhisingh159/inflow-cloud-php-sdk
Informations about the package inflow-cloud-php-sdk
inFlow Cloud PHP SDK
Standalone PHP SDK for the inFlow Cloud API.
Framework-agnostic — drop it into any PHP 8.1+ project: vanilla PHP scripts, Laravel, Symfony, Slim, CLI tools, cron workers, AWS Lambda, or any CMS/e-commerce platform (WordPress, Magento, Drupal, …). The SDK has zero knowledge of any framework; it only knows HTTP and the inFlow API.
Requirements
- PHP 8.1+
- Guzzle 7.8+
Installation
Configuration
The SDK reads credentials from a Config object. Do not hardcode credentials in your application — load them from environment variables or your framework's config store.
You'll need:
- an active inFlow account with the API access add-on (or a trial)
- administrator rights
- an API key and your companyId — generate both at app.inflowinventory.com/options/integrations
The SDK handles the URL structure (/{companyId}/...), auth header (Authorization: Bearer {key}), and the versioned Accept header for you. You only ever pass the resource path (e.g. /products).
Usage
Get products
Find a single product
Create a sales order
Field names above are illustrative. Confirm exact field names against the inFlow Cloud API reference.
Inventory
Customers and vendors
Error handling
The SDK throws Abhimanev\Inflow\Exception\ApiException for any non-2xx HTTP response, and Abhimanev\Inflow\Exception\InflowException for configuration or transport issues. ApiException extends InflowException, so catching the latter handles both.
Advanced: custom HTTP client
Client accepts any PSR-18 / Guzzle ClientInterface. This is useful for testing (mock responses) or for plugging in a shared HTTP client with retries / middleware / logging:
Available resources
| Method | Resource | Endpoints |
|---|---|---|
products() |
ProductResource |
/products, /products/{id} |
productGroups() |
ProductGroupResource |
/product-groups, /product-groups/{id} |
customers() |
CustomerResource |
/customers, /customers/{id} |
salesOrders() |
SalesOrderResource |
/sales-orders, /sales-orders/{id} |
inventory() |
InventoryResource |
/products/summary, /products/{id}/summary (read-only — see note below) |
vendors() |
VendorResource |
/vendors, /vendors/{id} |
Each resource exposes list(), find(), create(), update(), delete() — except inventory(), which is read-only. inFlow has no direct "set stock" endpoint; stock changes go through stock-adjustments / stock-counts / stock-transfers (planned for a future SDK release). Calling inventory()->create/update/delete() throws BadMethodCallException with an actionable message. Product groups expose list, find, create, and update (no delete in the public API).
License
MIT.