PHPackages                             fws/tradegecko - 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. fws/tradegecko

ActiveLibrary[API Development](/categories/api)

fws/tradegecko
==============

PHP library for interacting with the TradeGecko REST API

1.3.4(4y ago)01.4kMITPHPPHP ~7.0CI failing

Since Feb 17Pushed 4y agoCompare

[ Source](https://github.com/fws-solutions/package-tradegecko)[ Packagist](https://packagist.org/packages/fws/tradegecko)[ Docs](https://forwardslashny.com)[ RSS](/packages/fws-tradegecko/feed)WikiDiscussions master Synced 1w ago

READMEChangelog (4)Dependencies (6)Versions (13)Used By (0)

ZfrTradeGecko
=============

[](#zfrtradegecko)

[![Latest Stable Version](https://camo.githubusercontent.com/59a4e905dfe58861b11233a0edc33485c38db5aadbbdc0b5ecf8f6607103c8d1/68747470733a2f2f706f7365722e707567782e6f72672f7a66722f7a66722d74726164656765636b6f2f762f737461626c652e706e67)](https://packagist.org/packages/zfr/zfr-tradegecko)[![Build Status](https://camo.githubusercontent.com/496c2114a859ce11eb0e7ea6c84c21d1f68901de82f6469c397e271dd4d9cce8/68747470733a2f2f7472617669732d63692e6f72672f7a662d66722f7a66722d74726164656765636b6f2e737667)](https://travis-ci.org/zf-fr/zfr-tradegecko)

ZfrTradeGecko is a modern PHP library based on Guzzle for [TradeGecko](https://www.tradegecko.com).

Dependencies
------------

[](#dependencies)

- PHP 7
- [Guzzle](http://www.guzzlephp.org): ^6.1

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

[](#installation)

Installation of ZfrTradeGecko is only officially supported using Composer:

```
php composer.phar require 'zfr/zfr-tradegecko:1.0'
```

Usage
-----

[](#usage)

ZfrTradeGecko provides a one-to-one mapping with API methods defined in [TradeGecko doc](http://developer.tradegecko.com/).

You can easily create a client using the following code:

```
use ZfrTradeGecko\TradeGeckoClient;

$client = new TradeGeckoClient('your-access-token');
```

Then, you can simply do requests for supported endpoints:

```
$response = $client->getPriceLists();
$response = $client->createProduct([
  'name' => 'My Product'
]);
```

### Using a container

[](#using-a-container)

ZfrTradeGecko also provides built-in [container-interop](https://github.com/container-interop/container-interop) factories that you can use. You must make sure that your container contains a service called "config" that is an array with a key `zfr_tradegecko` containing the required config:

```
// myconfig.php

return [
    'zfr_tradegecko' => [
        'access_token' => 'ACCESS_TOKEN'
    ],
];
```

If you're using Zend\\ServiceManager 3, you can use [Zend\\ComponentInstaller](https://zendframework.github.io/zend-component-installer/)to register our factories into Zend\\ServiceManager automatically.

However if you're using other framework or other container, you can still manually register our factories, they are under [src/Container](/src/Container) folder.

### Exploiting responses

[](#exploiting-responses)

ZfrTradeGecko returns TradeGecko response directly. However, by default, TradeGecko wrap the responses by a top-key. For instance, if you want to retrieve account information, TradeGecko will return this payload:

```
{
    "account": {
        "id": 123
    }
}
```

This is a bit inconvenient to use as we would need to do that:

```
$id = $tradeGeckoClient->getCurrentAccount()['account']['id'];
```

Instead, ZfrTradeGecko automatically "unwraps" response, so you can use the more concise code:

```
$id = $tradeGeckoClient->getCurrentAccount()['id'];
```

When reading TradeGecko API doc, make sure you remove the top key when exploiting responses.

Implemented endpoints
---------------------

[](#implemented-endpoints)

Here is a list of supported endpoints (more to come in the future). Please note that some resources are not officially supported yet. They have been tested and are working as of 17th January 2017, but it's basically "use at your own risk".

**ACCOUNT RELATED METHODS:**

- getAccounts(array $args = \[\])
- getAccount(array $args = \[\])
- getCurrentAccount(array $args = \[\])
- createAccount(array $args = \[\])
- updateAccount(array $args = \[\])

**ADDRESS RELATED METHODS:**

- getAddresses(array $args = \[\])
- getAddress(array $args = \[\])
- createAddress(array $args = \[\])
- updateAddress(array $args = \[\])
- deleteAddress(array $args = \[\])

**COMPANIES RELATED METHODS:**

- getCompanies(array $args = \[\])
- getCompany(array $args = \[\])
- createCompany(array $args = \[\])
- updateCompany(array $args = \[\])
- deleteCompany(array $args = \[\])

**CONTACT RELATED METHODS:**

- getContacts(array $args = \[\])
- getContact(array $args = \[\])
- createContact(array $args = \[\])
- updateContact(array $args = \[\])
- deleteContact(array $args = \[\])

**CURRENCY RELATED METHODS:**

- getCurrencies(array $args = \[\])
- getCurrency(array $args = \[\])
- createCurrency(array $args = \[\])
- updateCurrency(array $args = \[\])
- deleteCurrency(array $args = \[\])

**FULFILLMENT RELATED METHODS:**

- getFulfillments(array $args = \[\])
- getFulfillment(array $args = \[\])
- createFulfillment(array $args = \[\])
- updateFulfillment(array $args = \[\])
- deleteFulfillment(array $args = \[\])

**FULFILLMENT LINE ITEM RELATED METHODS:**

- getFulfillmentLineItems(array $args = \[\])
- getFulfillmentLineItem(array $args = \[\])
- createFulfillmentLineItem(array $args = \[\])
- updateFulfillmentLineItem(array $args = \[\])
- deleteFulfillmentLineItem(array $args = \[\])

**IMAGE RELATED METHODS:**

- getImages(array $args = \[\])
- getImage(array $args = \[\])
- createImage(array $args = \[\])
- updateImage(array $args = \[\])
- deleteImage(array $args = \[\])

**INVOICE RELATED METHODS:**

- getInvoices(array $args = \[\])
- getInvoice(array $args = \[\])
- createInvoice(array $args = \[\])
- updateInvoice(array $args = \[\])
- deleteInvoice(array $args = \[\])

**INVOICE LINE ITEM RELATED METHODS:**

- getInvoiceLineItems(array $args = \[\])
- getInvoiceLineItem(array $args = \[\])
- createInvoiceLineItem(array $args = \[\])
- updateInvoiceLineItem(array $args = \[\])
- deleteInvoiceLineItem(array $args = \[\])

**LOCATION RELATED METHODS:**

- getLocations(array $args = \[\])
- getLocation(array $args = \[\])
- createLocation(array $args = \[\])
- updateLocation(array $args = \[\])
- deleteLocation(array $args = \[\])

**NOTES RELATED METHODS:**

- getNotes(array $args = \[\])
- getNote(array $args = \[\])
- createNote(array $args = \[\])
- updateNote(array $args = \[\])
- deleteNote(array $args = \[\])

**ORDER RELATED METHODS:**

- getOrders(array $args = \[\])
- getOrder(array $args = \[\])
- createOrder(array $args = \[\])
- updateOrder(array $args = \[\])
- deleteOrder(array $args = \[\])

**ORDER LINE ITEMS RELATED METHODS:**

- getOrderLineItems(array $args = \[\])
- getOrderLineItem(array $args = \[\])
- createOrderLineItem(array $args = \[\])
- updateOrderLineItem(array $args = \[\])
- deleteOrderLineItem(array $args = \[\])

**PAYMENT TERM RELATED METHODS:**

- getPaymentTerms(array $args = \[\])
- getPaymentTerm(array $args = \[\])
- createPaymentTerm(array $args = \[\])
- updatePaymentTerm(array $args = \[\])
- deletePaymentTerm(array $args = \[\])

**PRICE LIST RELATED METHODS (NOT OFFICIALLY SUPPORTED YET):**

- getPriceLists(array $args = \[\])
- getPriceList(array $args = \[\])
- createPriceList(array $args = \[\])
- updatePriceList(array $args = \[\])
- deletePriceList(array $args = \[\])

**PRODUCT RELATED METHODS:**

- getProducts(array $args = \[\])
- getProduct(array $args = \[\])
- createProduct(array $args = \[\])
- updateProduct(array $args = \[\])
- deleteProduct(array $args = \[\])

**PROCUREMENT RELATED METHODS (NOT OFFICIALLY SUPPORTED YET):**

- array getProcurements(array $args = \[\])
- array getProcurement(array $args = \[\])
- array createProcurement(array $args = \[\])
- array deleteProcurement(array $args = \[\])

**PURCHASE ORDER RELATED METHODS:**

- getPurchaseOrders(array $args = \[\])
- getPurchaseOrder(array $args = \[\])
- createPurchaseOrder(array $args = \[\])
- updatePurchaseOrder(array $args = \[\])
- deletePurchaseOrder(array $args = \[\])

**PURCHASE ORDER LINE ITEM RELATED METHODS:**

- getPurchaseOrderLineItems(array $args = \[\])
- getPurchaseOrderLineItem(array $args = \[\])
- createPurchaseOrderLineItem(array $args = \[\])
- updatePurchaseOrderLineItem(array $args = \[\])
- deletePurchaseOrderLineItem(array $args = \[\])

**STOCK ADJUSTMENT RELATED METHODS (NOT OFFICIALLY SUPPORTED YET):**

- getStockAdjustments(array $args = \[\])
- getStockAdjustment(array $args = \[\])
- createStockAdjustment(array $args = \[\])
- updateStockAdjustment(array $args = \[\])
- deleteStockAdjustment(array $args = \[\])

**STOCK ADJUSTMENT LINE ITEM RELATED METHODS (NOT OFFICIALLY SUPPORTED YET):**

- getStockAdjustmentLineItems(array $args = \[\])
- getStockAdjustmentLineItem(array $args = \[\])
- createStockAdjustmentLineItem(array $args = \[\])
- updateStockAdjustmentLineItem(array $args = \[\])
- deleteStockAdjustmentLineItem(array $args = \[\])

**STOCK TRANSFER RELATED METHODS (NOT OFFICIALLY SUPPORTED YET):**

- getStockTransfers(array $args = \[\])
- getStockTransfer(array $args = \[\])
- createStockTransfer(array $args = \[\])
- updateStockTransfer(array $args = \[\])
- deleteStockTransfer(array $args = \[\])

**STOCK TRANSFER LINE ITEM RELATED METHODS (NOT OFFICIALLY SUPPORTED YET):**

- getStockTransferLineItems(array $args = \[\])
- getStockTransferLineItem(array $args = \[\])
- createStockTransferLineItem(array $args = \[\])
- updateStockTransferLineItem(array $args = \[\])
- deleteStockTransferLineItem(array $args = \[\])

**TAX COMPONENT RELATED METHODS (NOT OFFICIALLY SUPPORTED YET):**

- getTaxComponents(array $args = \[\])
- getTaxComponent(array $args = \[\])
- createTaxComponent(array $args = \[\])
- updateTaxComponent(array $args = \[\])
- deleteTaxComponent(array $args = \[\])

**TAX TYPE RELATED METHODS:**

- getTaxTypes(array $args = \[\])
- getTaxType(array $args = \[\])
- createTaxType(array $args = \[\])
- updateTaxType(array $args = \[\])
- deleteTaxType(array $args = \[\])

**USER RELATED METHODS:**

- getUsers(array $args = \[\])
- getUser(array $args = \[\])
- updateUser(array $args = \[\])
- deleteUser(array $args = \[\])

**VARIANT RELATED METHODS:**

- getVariants(array $args = \[\])
- getVariant(array $args = \[\])
- createVariant(array $args = \[\])
- updateVariant(array $args = \[\])
- deleteVariant(array $args = \[\])

**WEBHOOK RELATED METHODS (NOT OFFICIALLY SUPPORTED YET):**

- getWebhooks(array $args = \[\])
- getWebhook(array $args = \[\])
- createWebhook(array $args = \[\])
- updateWebhook(array $args = \[\])
- deleteWebhook(array $args = \[\])

**PAYMENT RELATED METHODS (NOT OFFICIALLY SUPPORTED YET):**

- getPayment(array $args = \[\])
- getPayments(array $args = \[\])
- createPayment(array $args = \[\])
- updatePayment(array $args = \[\])
- deletePayment(array $args = \[\])

###  Health Score

31

—

LowBetter than 68% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity14

Limited adoption so far

Community12

Small or concentrated contributor base

Maturity65

Established project with proven stability

 Bus Factor1

Top contributor holds 71.9% of commits — single point of failure

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 ~155 days

Recently: every ~141 days

Total

12

Last Release

1665d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/e60a408decdbac6fa99e170b33fe266f1fabbe62ebaeba396074efc58a80bb17?d=identicon)[boris@forwardslashny.com](/maintainers/boris@forwardslashny.com)

---

Top Contributors

[![bakura10](https://avatars.githubusercontent.com/u/1198915?v=4)](https://github.com/bakura10 "bakura10 (46 commits)")[![danizord](https://avatars.githubusercontent.com/u/1850941?v=4)](https://github.com/danizord "danizord (9 commits)")[![burakcakirel](https://avatars.githubusercontent.com/u/3121372?v=4)](https://github.com/burakcakirel "burakcakirel (4 commits)")[![fws-miroslav](https://avatars.githubusercontent.com/u/73218473?v=4)](https://github.com/fws-miroslav "fws-miroslav (3 commits)")[![bargenson](https://avatars.githubusercontent.com/u/433287?v=4)](https://github.com/bargenson "bargenson (1 commits)")[![liamjosephfriel](https://avatars.githubusercontent.com/u/14871359?v=4)](https://github.com/liamjosephfriel "liamjosephfriel (1 commits)")

---

Tags

apiinventory-managementtradegeckotrade gecko

###  Code Quality

TestsPHPUnit

Code StylePHP\_CodeSniffer

### Embed Badge

![Health badge](/badges/fws-tradegecko/health.svg)

```
[![Health](https://phpackages.com/badges/fws-tradegecko/health.svg)](https://phpackages.com/packages/fws-tradegecko)
```

###  Alternatives

[openai-php/client

OpenAI PHP is a supercharged PHP API client that allows you to interact with the Open AI API

5.8k22.6M232](/packages/openai-php-client)[saloonphp/saloon

Build beautiful API integrations and SDKs with Saloon

2.4k9.6M468](/packages/saloonphp-saloon)[algolia/algoliasearch-client-php

API powering the features of Algolia.

69333.0M114](/packages/algolia-algoliasearch-client-php)[theodo-group/llphant

LLPhant is a library to help you build Generative AI applications.

1.5k311.5k5](/packages/theodo-group-llphant)[getbrevo/brevo-php

Official Brevo provided RESTFul API V3 php library

963.1M35](/packages/getbrevo-brevo-php)[wordpress/php-ai-client

A provider agnostic PHP AI client SDK to communicate with any generative AI models of various capabilities using a uniform API.

26236.6k14](/packages/wordpress-php-ai-client)

PHPackages © 2026

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