PHPackages                             networkrailbusinesssystems/oracle-api - 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. networkrailbusinesssystems/oracle-api

ActiveLibrary

networkrailbusinesssystems/oracle-api
=====================================

Provide end points for sending and receiving data from Oracle (iStore Catalogue)

1.0.0(2y ago)013MITPHPPHP ^8.2

Since Sep 1Pushed 2y ago1 watchersCompare

[ Source](https://github.com/Network-Rail-Business-Systems/oracle-api)[ Packagist](https://packagist.org/packages/networkrailbusinesssystems/oracle-api)[ Docs](https://github.com/Network-Rail-Business-Systems/oracle-api)[ RSS](/packages/networkrailbusinesssystems-oracle-api/feed)WikiDiscussions main Synced 1mo ago

READMEChangelog (1)Dependencies (5)Versions (3)Used By (0)

Oracle api.
===========

[](#oracle-api)

This api is for searching and ordering iStore catalogue items.

Built for [Laravel 10](https://laravel.com/).

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

[](#installation)

Add the library via Composer: `composer require networkrailbusinesssystems/oracle-api`

Once installed, export the config: `php artisan vendor:publish --provider="NetworkRailBusinessSystems\OracleApi\OracleApiServiceProvider.php"`

- Set for accessing the Oracle

```
    ORACLE_CATALOGUE_USERNAME=
    ORACLE_CATALOGUE_PASSWORD=
    ORACLE_CATALOGUE_EMULATOR=false
```

- Set for Searching by item or description from Oracle.

```
    ORACLE_CATALOGUE_GET_HOST=
```

Then you can use the OracleCatalogueHelper class functions in your project for item search:

```
use NetworkRailBusinessSystems\OracleApi\OracleCatalogueHelper;

$response = OracleCatalogueHelper::search('016798 or FENCE', limit = 100); // search by item code or description
$response = OracleCatalogueHelper::searchByCode('0004/016798', limit = 100); // search by item code
$response = OracleCatalogueHelper::searchByDescription('FENCE', limit = 100);  // search by item description
```

- Set for Order submission.

```
    ORACLE_CATALOGUE_POST_HOST=
```

Then you can use the OracleCatalogueHelper class function for order submission:

```
use NetworkRailBusinessSystems\OracleApi\OracleCatalogueHelper;

$oracle_order_number = OracleCatalogueHelper::submitOrderToOracle($orderDetails);
```

The Oracle API package makes use of the [Laravel Http Client](https://laravel.com/docs/10.x/http-client). This enables you to fake the Http response in your test, so it doesn't need a live connection to the Oracle API.

- Set for fake search response and order submission.

```
    ORACLE_CATALOGUE_EMULATOR=true
```

```
Http::fake([
    '*' => Http::response([
            "ItemCode" => "0004/016798",
            "ItemDescription" => "POST FENCE  INTERMDT 6 HOLE",
            "ItemYourPrice" => 50.95,
            "Status" => "NR SUPER",
            "PackSize" => "1",
            "IBECustomAttribute15" => null,
            "ConfigurableItem" => null,
            "ItemPrimaryUOMCode" => null,
            "MiniSiteName" => "Non-Heavy Products"
    ]),
]);
```

###  Health Score

25

—

LowBetter than 37% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity5

Limited adoption so far

Community8

Small or concentrated contributor base

Maturity57

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 100% 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

Unknown

Total

1

Last Release

981d ago

### Community

Maintainers

![](https://avatars.githubusercontent.com/u/17785811?v=4)[Anthony Edmonds](/maintainers/AnthonyEdmonds)[@AnthonyEdmonds](https://github.com/AnthonyEdmonds)

![](https://www.gravatar.com/avatar/03faecaa06526236edb42f41f5adcbdf95ca33e506094320bf943fcb288423d0?d=identicon)[AmbreenJamal](/maintainers/AmbreenJamal)

---

Top Contributors

[![AmbreenJamal](https://avatars.githubusercontent.com/u/26721392?v=4)](https://github.com/AmbreenJamal "AmbreenJamal (16 commits)")

###  Code Quality

TestsPHPUnit

Code StyleLaravel Pint

### Embed Badge

![Health badge](/badges/networkrailbusinesssystems-oracle-api/health.svg)

```
[![Health](https://phpackages.com/badges/networkrailbusinesssystems-oracle-api/health.svg)](https://phpackages.com/packages/networkrailbusinesssystems-oracle-api)
```

###  Alternatives

[s-ichikawa/laravel-sendgrid-driver

This library adds a 'sendgrid' mail driver to Laravel.

4139.3M1](/packages/s-ichikawa-laravel-sendgrid-driver)[stechstudio/laravel-zipstream

A fast and simple streaming zip file downloader for Laravel.

4633.7M3](/packages/stechstudio-laravel-zipstream)[laravel-notification-channels/microsoft-teams

A Laravel Notification Channel for Microsoft Teams

1603.0M7](/packages/laravel-notification-channels-microsoft-teams)[spatie/laravel-export

Create a static site bundle from a Laravel app

646127.9k5](/packages/spatie-laravel-export)[erag/laravel-disposable-email

A Laravel package to detect and block disposable email addresses.

226102.4k](/packages/erag-laravel-disposable-email)[truckersmp/steam-socialite

Laravel Socialite provider for Steam OpenID.

1516.7k](/packages/truckersmp-steam-socialite)

PHPackages © 2026

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