{"id":19029974,"url":"https://github.com/padosoft/laravel-affiliate-network","last_synced_at":"2025-04-13T08:41:17.086Z","repository":{"id":57035062,"uuid":"73739384","full_name":"padosoft/laravel-affiliate-network","owner":"padosoft","description":"Affiliate Networks API wrapper to provide common interface for affiliate networks program API","archived":false,"fork":false,"pushed_at":"2023-09-28T16:58:05.000Z","size":413,"stargazers_count":74,"open_issues_count":2,"forks_count":24,"subscribers_count":12,"default_branch":"master","last_synced_at":"2025-03-27T00:14:01.943Z","etag":null,"topics":["affiliate-networks","commission-junction","laravel","laravel-command","laravel-package","tradedoubler","zanox"],"latest_commit_sha":null,"homepage":null,"language":"PHP","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/padosoft.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE.md","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2016-11-14T19:26:02.000Z","updated_at":"2024-12-22T01:39:17.000Z","dependencies_parsed_at":"2023-02-16T06:40:20.761Z","dependency_job_id":"3a783f2c-4db4-4f9c-ae49-2f4590905bb8","html_url":"https://github.com/padosoft/laravel-affiliate-network","commit_stats":{"total_commits":277,"total_committers":9,"mean_commits":30.77777777777778,"dds":0.667870036101083,"last_synced_commit":"12873e0d0b07c96627bdab1163b16df771f0c4ac"},"previous_names":[],"tags_count":206,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/padosoft%2Flaravel-affiliate-network","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/padosoft%2Flaravel-affiliate-network/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/padosoft%2Flaravel-affiliate-network/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/padosoft%2Flaravel-affiliate-network/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/padosoft","download_url":"https://codeload.github.com/padosoft/laravel-affiliate-network/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248686497,"owners_count":21145502,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["affiliate-networks","commission-junction","laravel","laravel-command","laravel-package","tradedoubler","zanox"],"created_at":"2024-11-08T21:16:00.326Z","updated_at":"2025-04-13T08:41:17.063Z","avatar_url":"https://github.com/padosoft.png","language":"PHP","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Affiliate Networks API wrapper to provide common interface for affiliate networks publish API like Zanoz, Tradedoubler, Commission Junction etc...\n\n[![Latest Version on Packagist](https://img.shields.io/packagist/v/padosoft/laravel-affiliate-network.svg?style=flat-square)](https://packagist.org/packages/padosoft/laravel-affiliate-network)\n[![Software License](https://img.shields.io/badge/license-MIT-brightgreen.svg?style=flat-square)](LICENSE.md)\n[![Build Status](https://img.shields.io/travis/padosoft/laravel-affiliate-network/master.svg?style=flat-square)](https://travis-ci.org/padosoft/laravel-affiliate-network)\n[![Quality Score](https://img.shields.io/scrutinizer/g/padosoft/laravel-affiliate-network.svg?style=flat-square)](https://scrutinizer-ci.com/g/padosoft/laravel-affiliate-network)\n[![Total Downloads](https://img.shields.io/packagist/dt/padosoft/laravel-affiliate-network.svg?style=flat-square)](https://packagist.org/packages/padosoft/laravel-affiliate-network)\n[![SensioLabsInsight](https://img.shields.io/sensiolabs/i/0008f1c1-34b2-4abd-8810-5bf5819ce45e.svg?style=flat-square)](https://insight.sensiolabs.com/projects/0008f1c1-34b2-4abd-8810-5bf5819ce45e)\n\nThe goal of this Laravel package is to wrap the Publisher Network Affiliate API like Zanox, Tradedoubler,  Commission Junction etc.. and provide simple methods to get deals and sales report and return a common interface for your use.\n\n##Overview\n\nCommon methods are: \n- getDeals : get the network deals.\n- getSales : get the network sales.\n- getStats : get the network deals stats.\n- getMerchants : get the network merchants.\n- checkLogin : check if logged in network.\n- login : login in into network.\n- getTrackingParameter : get network tracking params.\n- loadAvailableNetworks : get all available network.\n- hasNetwork : check if network are available.\n- addNetwork : add a network class that implements Network interface.\n\n##Requires\n  \n- php: \u003e=7.0.0\n- illuminate/support\n- padosoft/support\n  \n## Installation\n\nYou can install the package via composer:\n```bash\n$ composer require padosoft/laravel-affiliate-network\n```\n\nYou must install this service provider.\n\n``` php\n// config/app.php\n'provider' =\u003e [\n    ...\n    Padosoft\\AffiliateNetwork\\AffiliateNetworkServiceProvider::class,\n    ...\n];\n```\nYou don't need to register the command in app/Console/Kernel.php, because it provides by AffiliateNetworkServiceProvider register() method.\n\nYou can publish the config file of this package with this command:\n``` bash\nphp artisan vendor:publish --provider=\"Padosoft\\AffiliateNetwork\\AffiliateNetworkServiceProvider\"\n```\nThe following config file will be published in `config/laravel-affiliate-network.php`\n``` php\nreturn array(\n    'zanox' =\u003e array(\n        'username' =\u003e env(\n            'ZANOX_USERNAME',\n            'padosoft'\n        ),\n        'password' =\u003e env(\n            'ZANOX_PASSWORD',\n            ''\n        )\n    ),\n    'tradedoubler' =\u003e array(\n        'username' =\u003e env(\n            'TRADEDOUBLER_USERNAME',\n            'padosoft'\n        ),\n        'password' =\u003e env(\n            'TRADEDOUBLER_PASSWORD',\n            ''\n        )\n    ),\n    'commissionjunction' =\u003e array(\n        'username' =\u003e env(\n            'COMMISSIONJUNCTION_USERNAME',\n            'padosoft'\n        ),\n        'password' =\u003e env(\n            'COMMISSIONJUNCTION_PASSWORD',\n            ''\n        )\n    ),\n);\n```\n\nIn your app config folder you can copy from src/config/.env.example the settings for yours .env file used in laravel-affiliate-network.php.\nIf you use mathiasgrimm/laravel-env-validator \nin src/config folder you'll find an example for validate the env settings. \n\n## Networks Supported\n\n- CommissionJunction\n- Effiliation\n- Netaffiliation\n- Publicideas.com\n- TradeDoubler\n- Zanox\n- WebGains\n\n\n## Usage\n\nCreate new php file, add composer autoload and start using functions.\n\n```php\n\u003c?php\n\nrequire \"vendor/autoload.php\";\n//if not in laravel need to define this functions\nif (!function_exists('public_path')){\n    function public_path(){\n        return dirname(__FILE__);\n    }\n}\n$objNetworkManager= new NetworkManager();\n$objNetworkManager-\u003elogin('Zanox',$_ENV['ZANOX_USERNAME'], $_ENV['ZANOX_PASSWORD']);\n$isLogged = $objNetworkManager-\u003echeckLogin('Zanox');\nif ($isLogged){\n    echo '\u003ch1\u003eDeals\u003c/h1\u003e';\n    $arrDeals = $objNetworkManager-\u003egetDeals('Zanox');\n    echo '\u003cpre\u003e';\n    var_dump($arrDeals);\n    echo '\u003c/pre\u003e';\n}\n\n```\nIn Laravel:\n\n```php\n\n$networkManager=app(NetworkManager::class);\n\n$dateFrom=new DateTime();\n$dateTo= new DateTime();\n\n//if you want to specify specific Merchant:\n$arrMerchantID = array(\n    array('cid' =\u003e '9716', 'name' =\u003e 'Zalando IT')\n);\n$networkManager-\u003elogin('Zanox',$_ENV['ZANOX_USERNAME'], $_ENV['ZANOX_PASSWORD']);\n$isLogged = $networkManager-\u003echeckLogin('Zanox');\nif ($isLogged){\n    echo '\u003ch1\u003eTransactions\u003c/h1\u003e';\n    $transactions = $networkManager-\u003egetSales('Zanox',$dateFrom,$dateTo,$arrMerchantID);\n    echo '\u003ch1\u003eDeals\u003c/h1\u003e';\n    $arrDeals = $networkManager-\u003egetDeals('Zanox');\n    echo '\u003cpre\u003e';\n    var_dump($arrDeals);\n    echo '\u003c/pre\u003e';\n}\n\n```\n\n## Change log\n\nPlease see [CHANGELOG](CHANGELOG.md) for more information what has changed recently.\n\n## Testing\n\n``` bash\n$ composer test\n```\n\n## Contributing\n\nPlease see [CONTRIBUTING](CONTRIBUTING.md) for details.\n\n## Security\n\nIf you discover any security related issues, please email instead of using the issue tracker.\n\n## Credits\n- [Lorenzo Padovani](https://github.com/lopadova)\n- [All Contributors](../../contributors)\n\n## About Padosoft\nPadosoft (https://www.padosoft.com) is a software house based in Florence, Italy. Specialized in E-commerce and web sites.\n\n## License\n\nThe MIT License (MIT). Please see [License File](LICENSE.md) for more information.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpadosoft%2Flaravel-affiliate-network","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fpadosoft%2Flaravel-affiliate-network","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpadosoft%2Flaravel-affiliate-network/lists"}