PHPackages                             macellan/iys - 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. [Framework](/categories/framework)
4. /
5. macellan/iys

AbandonedArchivedLibrary[Framework](/categories/framework)

macellan/iys
============

Iys library for Laravel

v3.0.0(1y ago)34.3kMITPHPPHP &gt;=8.2CI passing

Since Apr 20Pushed 1y ago2 watchersCompare

[ Source](https://github.com/macellan/iys)[ Packagist](https://packagist.org/packages/macellan/iys)[ RSS](/packages/macellan-iys/feed)WikiDiscussions main Synced 1mo ago

READMEChangelog (6)Dependencies (7)Versions (7)Used By (0)

IYS
---

[](#iys)

[![Tests](https://github.com/macellan/iys/actions/workflows/tests.yml/badge.svg)](https://github.com/macellan/iys/actions/workflows/tests.yml/badge.svg)[![Latest Stable Version](https://camo.githubusercontent.com/a85e907948266ec4b9fe2d68d9845aca7e7d768b14a273b8ecec054d373dbeca/68747470733a2f2f706f7365722e707567782e6f72672f6d6163656c6c616e2f6979732f762f737461626c65)](https://packagist.org/packages/macellan/iys)[![Total Downloads](https://camo.githubusercontent.com/b7e65929a3729d765647b7b8f1d89eaac04464a353276e19574dbb1f06751758/68747470733a2f2f706f7365722e707567782e6f72672f6d6163656c6c616e2f6979732f646f776e6c6f616473)](https://packagist.org/packages/macellan/iys)

- [Installation](#installation)
    - [Setting up the Iys service](#setting-up-the-IYS-service)
- [Enums](#enums)
- [Usage](#usage)
- [Testing](#testing)
- [License](#license)

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

[](#installation)

You can install this package via composer:

```
composer require macellan/iys
```

### Setting up the IYS service

[](#setting-up-the-iys-service)

Add your IYS login to your config/services.php:

```
// config/services.php
...
    'iys' => [
        'username' => env('IYS_USERNAME', ''),
        'password' => env('IYS_PASSWORD', ''),
        'iys_code' => env('IYS_CODE', ''),
        'brand_code' => env('IYS_BRAND_CODE', ''),
        'url' => env('IYS_URL', ''),
    ],
...
```

Enums
-----

[](#enums)

IYS consent source types:

```
enum ConsentSourceTypes: string
{
    case PHYSICAL = 'HS_FIZIKSEL_ORTAM';
    case WET_SIGNATURE = 'HS_ISLAK_IMZA';
    case WEB = 'HS_WEB';
    case CALL_CENTER = 'HS_CAGRI_MERKEZI';
    case SOCIAL_MEDIA = 'HS_SOSYAL_MEDYA';
    case EMAIL = 'HS_EPOSTA';
    case MESSAGE = 'HS_MESAJ';
    case MOBILE = 'HS_MOBIL';
    case HS_EORTAM = 'HS_EORTAM';
    case ACTIVITY = 'HS_ETKINLIK';
    case HS_2015 = 'HS_2015';
    case HS_ATM = 'HS_ATM';
    case HS_DECISION = 'HS_KARAR';
}
```

IYS permission types:

```
enum PermissionTypes: string
{
    case CALL = 'ARAMA';
    case MESSAGE = 'MESAJ';
    case EMAIL = 'EPOSTA';
}
```

IYS recipient types:

```
enum RecipientTypes: string
{
    case INDIVIDUAL = 'BIREYSEL';
    case TRADER = 'TACIR';
}
```

IYS source types:

```
enum SourceTypes: string
{
    case HS = 'HS';
    case IYS = 'IYS';
}
```

IYS status types:

```
enum StatusTypes: string
{
    case APPROVE = 'ONAY';
    case REJECT = 'RET';
}
```

Usage
-----

[](#usage)

**NOTE:**Authentication token is generated per UserManager instance. Expire time is two hour.

With the usage in this example, you can submit a single release. This method works with the "Permission" model

```
    IysManager::make()->createPermissionDriver()->sendSingle(
            Permission::make()
                ->setConsentDate('2022-02-10 09:50:02')
                ->setSource(ConsentSourceTypes::MOBILE)
                ->setRecipient('example@.com')
                ->setRecipientType(RecipientTypes::INDIVIDUAL)
                ->setStatus(StatusTypes::APPROVE)
                ->setType(PermissionTypes::EMAIL)
    );
```

You can send permissions by filling out the permission list model. The permission list model is the permission model array.

```
    $permissionList =  PermissionList::make()
        ->addPermission($permission
          ->setConsentDate('2022-02-10 09:50:02')
            ->setRecipient('example1@.com')
            ->setStatus(StatusTypes::APPROVE)
            ->setType(PermissionTypes::EMAIL))
            ->setSource(ConsentSourceTypes::MOBILE)
            ->setRecipientType(RecipientTypes::INDIVIDUAL);
        ->addPermission($permission
            ->setConsentDate('2022-02-10 09:50:03')
            ->setRecipient('example2@.com')
            ->setStatus(StatusTypes::REJECT)
            ->setType(PermissionTypes::MESSAGE));
            ->setSource(ConsentSourceTypes::MOBILE)
            ->setRecipientType(RecipientTypes::INDIVIDUAL);

    IysManager::make()->createPermissionDriver()->sendMultiple($permissionList);
```

You can get send permission information with request id

```
   IysManager::make()->createPermissionDriver()->getStatusByRequestId('request_id');
```

You can get changed permission by IYS

```
   IysManager::make()->createPermissionDriver()->getChanges();
```

You can get permission status by permission model

```
    IysManager::make()->createPermissionDriver()->getStatus(
            Permission::make()
                ->setConsentDate('2022-02-10 09:50:02')
                ->setSource(ConsentSourceTypes::MOBILE)
                ->setRecipient('example@.com')
                ->setRecipientType(RecipientTypes::INDIVIDUAL)
                ->setStatus(StatusTypes::APPROVE)
                ->setType(PermissionTypes::EMAIL)
    );
```

Testing
-------

[](#testing)

```
composer test
```

License
-------

[](#license)

The MIT License (MIT). Please see [License File](LICENSE) for more information.

###  Health Score

39

—

LowBetter than 86% of packages

Maintenance46

Moderate activity, may be stable

Popularity20

Limited adoption so far

Community11

Small or concentrated contributor base

Maturity65

Established project with proven stability

 Bus Factor1

Top contributor holds 93.3% 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 ~213 days

Recently: every ~258 days

Total

6

Last Release

420d ago

Major Versions

v1.1.0 → v2.0.02022-05-30

v2.2.0 → v3.0.02025-03-24

PHP version history (2 changes)v1.0.0PHP &gt;=8.1

v3.0.0PHP &gt;=8.2

### Community

Maintainers

![](https://www.gravatar.com/avatar/fea6ab8454f28af0ac4265b6f7dcbb97c4881dd978aaabd9fa49be0767db4b24?d=identicon)[aytekin](/maintainers/aytekin)

![](https://www.gravatar.com/avatar/5f981b55b28efff690e5b22fe67e47794e3d31a7bf626c63ba280bcfa5a8cf41?d=identicon)[envercigal](/maintainers/envercigal)

---

Top Contributors

[![faytekin](https://avatars.githubusercontent.com/u/4013224?v=4)](https://github.com/faytekin "faytekin (14 commits)")[![envercigal](https://avatars.githubusercontent.com/u/31448593?v=4)](https://github.com/envercigal "envercigal (1 commits)")

###  Code Quality

TestsPHPUnit

Static AnalysisPHPStan

Code StyleLaravel Pint

### Embed Badge

![Health badge](/badges/macellan-iys/health.svg)

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

###  Alternatives

[laravel/socialite

Laravel wrapper around OAuth 1 &amp; OAuth 2 libraries.

5.7k96.9M674](/packages/laravel-socialite)[laravel/passport

Laravel Passport provides OAuth2 server support to Laravel.

3.4k85.0M532](/packages/laravel-passport)[laravel/cashier

Laravel Cashier provides an expressive, fluent interface to Stripe's subscription billing services.

2.5k25.9M107](/packages/laravel-cashier)[laravel/scout

Laravel Scout provides a driver based solution to searching your Eloquent models.

1.7k49.4M479](/packages/laravel-scout)[laravel/slack-notification-channel

Slack Notification Channel for laravel.

89069.7M111](/packages/laravel-slack-notification-channel)[laravel/pulse

Laravel Pulse is a real-time application performance monitoring tool and dashboard for your Laravel application.

1.7k12.1M99](/packages/laravel-pulse)

PHPackages © 2026

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