PHPackages                             foodticket/jet-connect-client - 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. foodticket/jet-connect-client

ActiveLibrary[API Development](/categories/api)

foodticket/jet-connect-client
=============================

A PHP client to integrate with the JET Connect API

1.0.10(1w ago)111.5k↑12.5%1[1 PRs](https://github.com/food-ticket/jet-connect-client/pulls)MITPHPPHP ^8.3

Since Feb 21Pushed 1w agoCompare

[ Source](https://github.com/food-ticket/jet-connect-client)[ Packagist](https://packagist.org/packages/foodticket/jet-connect-client)[ RSS](/packages/foodticket-jet-connect-client/feed)WikiDiscussions main Synced 2d ago

READMEChangelog (10)Dependencies (9)Versions (19)Used By (0)

JET Connect API implementation for Laravel
==========================================

[](#jet-connect-api-implementation-for-laravel)

[![GitHub license](https://camo.githubusercontent.com/dcfd4525b3e95551691fd645e2123a32a45c957703d551bb36ed0aa0f2a116ed/68747470733a2f2f696d672e736869656c64732e696f2f6769746875622f6c6963656e73652f4e61657265656e2f5374726170446f776e2e6a732e737667)](https://github.com/Naereen/StrapDown.js/blob/master/LICENSE)

This package allows you to easily make requests to JustEatTakeaway's JET Connect API.

Requirements
------------

[](#requirements)

- PHP &gt;= 8.3
- Laravel &gt;= 12.0

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

[](#installation)

You can install the package via composer:

```
composer require foodticket/jet-connect
```

The package will automatically register itself.

Configuration
-------------

[](#configuration)

To start using the JET Connect API you will need an API key. Add the API key to your project's .env file:

```
JET_CONNECT_API_KEY=
```

Making requests
---------------

[](#making-requests)

All endpoints are accessed through `JetConnectApi`:

```
use Foodticket\JetConnect\Endpoints\JetConnectApi;

$api = new JetConnectApi();
```

---

### setItemAvailability

[](#setitemavailability)

Mark one or more menu items as available or unavailable for a given restaurant.

```
use Foodticket\JetConnect\Enums\Availability;

$api->setItemAvailability(
    availability: Availability::UNAVAILABLE,
    itemsIds: ['plu-123', 'plu-456'],
    restaurant: $restaurantId,
    nextAvailableAt: now()->addHours(2), // optional, only used when UNAVAILABLE
);
```

ParameterTypeRequiredDescription`availability``Availability`Yes`Availability::AVAILABLE` or `Availability::UNAVAILABLE``itemsIds``array`YesArray of item PLU/reference strings`restaurant``string`YesRestaurant identifier`nextAvailableAt``Carbon|null`NoWhen the item becomes available again (only applies when marking unavailable)---

### ingestMenu

[](#ingestmenu)

Push a full menu to JET Connect for one or more restaurants.

```
$api->ingestMenu(
    restaurants: ['restaurant-id-1'],
    menus: [$menuArray],
    callbackUrl: 'https://yourapp.com/jet-connect/menu-callback', // optional
);
```

ParameterTypeRequiredDescription`restaurants``array`YesArray of restaurant identifier strings`menus``array`YesMenu payload array`callbackUrl``string|null`NoURL that JET Connect will call when ingestion completes---

### sentToPosSuccess

[](#senttopossuccess)

Confirm that an order was successfully sent to the POS.

```
$api->sentToPosSuccess(orderId: $orderId);
```

ParameterTypeRequiredDescription`orderId``string`YesThe JET Connect order ID---

### sentToPosFailed

[](#senttoposfailed)

Report that sending an order to the POS failed.

```
use Foodticket\JetConnect\Enums\ErrorCode;

$api->sentToPosFailed(
    orderId: $orderId,
    errorCode: ErrorCode::TIMEOUT,
    errorMessage: 'POS did not respond within the timeout window',
);
```

ParameterTypeRequiredDescription`orderId``string`YesThe JET Connect order ID`errorCode``ErrorCode`YesOne of the error codes below`errorMessage``string`YesHuman-readable description of the failureAvailable `ErrorCode` values:

ValueDescription`AUTH_FAILED`Order authorization was incorrect`INCORRECT_SETUP`Configuration details sent with the order are wrong (e.g. store ID)`IN_USE`POS is currently in use and cannot take requests`INACTIVE`POS is offline and cannot take orders`MALFORMED_REQUEST`Order request was malformed (e.g. malformed JSON)`MENU_ERROR`Order had incorrect items (not in stock, PLU not in POS)`NOT_SUPPORTED`Integrated ordering is not supported at this restaurant`STORE_CLOSED`Store is closed and cannot take orders`TENDER_ERROR`Tender type sent to the POS is wrong`TIMEOUT`Request to the POS timed out---

### orderItemModification

[](#orderitemmodification)

Report that one or more items could not be fulfilled, so JET can update the order accordingly.

```
$api->orderItemModification(
    orderId: $orderId,
    modifications: [
        [
            'removedItems' => [
                ['plu' => 'plu-123', 'missingQuantity' => 1],
                ['plu' => 'plu-456', 'missingQuantity' => 2],
            ],
        ],
    ],
);
```

ParameterTypeRequiredDescription`orderId``string`YesThe JET Connect order ID`modifications``array`YesArray of modification objects (see structure below)Each modification object:

KeyTypeDescription`removedItems``array`Items that could not be fulfilledEach `removedItems` entry:

KeyTypeDescription`plu``string`PLU code of the item`missingQuantity``int`Number of units that could not be fulfilled---

### Custom requests

[](#custom-requests)

To call any JET Connect endpoint not covered above:

```
$api->request()->get('/some-endpoint');
$api->request()->post('/some-endpoint', $payload);
```

Webhooks
--------

[](#webhooks)

To start receiving webhooks from JET Connect, you need to add the following route the `App\Providers\RouteServiceProvider` file:

```
$this->routes(function () {
    // ...
    Route::jetConnectWebhooks();
});
```

Security Vulnerabilities
------------------------

[](#security-vulnerabilities)

If you discover a security vulnerability within this project, please report this by email to .

###  Health Score

54

—

FairBetter than 96% of packages

Maintenance98

Actively maintained with recent releases

Popularity27

Limited adoption so far

Community11

Small or concentrated contributor base

Maturity66

Established project with proven stability

 Bus Factor2

2 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 ~85 days

Recently: every ~10 days

Total

11

Last Release

10d ago

PHP version history (4 changes)1.0.0PHP ^8.1

1.0.2PHP ^8.1|^8.2|^8.3

1.0.3PHP ^8.2

1.0.8PHP ^8.3

### Community

Maintainers

![](https://www.gravatar.com/avatar/9a331f154c735cc3b44cc802b7b183a58e503dfcf5dc3add0dea69eae3bc61ff?d=identicon)[foodticket](/maintainers/foodticket)

---

Top Contributors

[![h-sols](https://avatars.githubusercontent.com/u/210041382?v=4)](https://github.com/h-sols "h-sols (17 commits)")[![foodticket-developer](https://avatars.githubusercontent.com/u/148194376?v=4)](https://github.com/foodticket-developer "foodticket-developer (7 commits)")[![hsols](https://avatars.githubusercontent.com/u/10848608?v=4)](https://github.com/hsols "hsols (7 commits)")[![rikmorskate](https://avatars.githubusercontent.com/u/3383883?v=4)](https://github.com/rikmorskate "rikmorskate (4 commits)")

---

Tags

phpapi clientdeliveryJET ConnectJustEatTakeaway

### Embed Badge

![Health badge](/badges/foodticket-jet-connect-client/health.svg)

```
[![Health](https://phpackages.com/badges/foodticket-jet-connect-client/health.svg)](https://phpackages.com/packages/foodticket-jet-connect-client)
```

###  Alternatives

[statamic/cms

The Statamic CMS Core Package

4.8k3.6M987](/packages/statamic-cms)[backpack/crud

Quickly build admin interfaces using Laravel, Bootstrap and JavaScript.

3.4k3.7M223](/packages/backpack-crud)[openai-php/laravel

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

3.7k9.5M89](/packages/openai-php-laravel)[unopim/unopim

UnoPim Laravel PIM

10.5k2.4k](/packages/unopim-unopim)[tencentcloud/tencentcloud-sdk-php

TencentCloudApi php sdk

3741.3M45](/packages/tencentcloud-tencentcloud-sdk-php)[mozex/anthropic-laravel

Laravel integration for the Anthropic API: facade, config publishing, install command, testing fakes, messages, streaming, tool use, thinking, and batches.

74331.3k1](/packages/mozex-anthropic-laravel)

PHPackages © 2026

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