wundii / afterbuy-sdk
Modern PHP 8.2+ Afterbuy Programming Interface Software Development Kit
Installs: 734
Dependents: 1
Suggesters: 0
Security: 0
Stars: 3
Watchers: 1
Forks: 0
Open Issues: 1
pkg:composer/wundii/afterbuy-sdk
Requires
- php: >=8.2
- ext-dom: *
- ext-json: *
- ext-reflection: *
- ext-simplexml: *
- ext-xml: *
- psr/log: ^1.0 || ^2.0 || ^3.0
- symfony/dependency-injection: ^6.4 || ^7.4 || ^8.0
- symfony/http-client: ^6.4 || ^7.4 || ^8.0
- symfony/property-access: ^6.4 || ^7.4 || ^8.0
- symfony/validator: ^6.4 || ^7.4 || ^8.0
- wundii/data-mapper: ^1.3.5
Requires (Dev)
- phpbench/phpbench: 1.4.3
- phpstan/phpstan: 2.1.32
- phpstan/phpstan-strict-rules: 2.0.7
- phpunit/phpunit: 11.5.45
- rector/rector: 2.2.10
- symfony/intl: 7.4.0 || 8.0.0
- symfony/var-dumper: 7.4.0 || 8.0.0
- symplify/easy-coding-standard: 12.6.2
- wundii/phplint: 0.3.3
- wundii/structron: 1.0.4
This package is auto-updated.
Last update: 2025-12-15 07:30:45 UTC
README
This is a modern Afterbuy Programming Interface Software Development Kit, for the selling solution afterbuy.de.
Requirements
- PHP 8.2 or higher
- ext-dom
- ext-json
- ext-reflection
- ext-simplexml
- ext-xml
Installation
Require the bundle and its dependencies with composer:
composer require wundii/afterbuy-sdk
Installations for frameworks
- Laravel Package is in development
- Symfony Bundle
Afterbuy API Documentation
Current Afterbuy API Informations
- last update 2.0.460 was recalled by Afterbuy, current version is 2.0.459
- the afterbuy sdk is compatible with the recalled version 2.0.460
Supported Requests with Examples
- CreateShopOrder
- GetAfterbuyTime
- GetListerHistory
- GetMailTemplates
- GetPaymentServices
- GetProductDiscounts
- GetShippingCost
- GetShippingServices
- GetShopCatalogs
- GetShopProducts
- GetSoldItems
- GetStockInfo
- GetTranslatedMailTemplate
- UpdateCatalogs
- UpdateShopProducts
- UpdateSoldItems
Afterbuy Sandbox Environment
use Wundii\AfterbuySdk\Core\Afterbuy; use Wundii\AfterbuySdk\Core\AfterbuyGlobal; use Wundii\AfterbuySdk\Dto\UpdateShopProducts; use Wundii\AfterbuySdk\Enum\Core\EndpointEnum; $afterbuyGlobal = new AfterbuyGlobal( '123...', '456...', EndpointEnum::SANDBOX, ); $afterbuy = new Afterbuy( $afterbuyGlobal, ); $afterbuy->runRequest( new UpdateShopProducts( ... // afterbuy sdk request object ), );
According to the Afterbuy documentation, the scheme should be changed from https to http for the test environment. However, this is currently not working as expected - all changes continue to affect the production environment. This afterbuy sdk always returns default a successful response if it is an update request. Alternatively, you can pass your own update response class.
use Wundii\AfterbuySdk\Core\Afterbuy; use Wundii\AfterbuySdk\Core\AfterbuyGlobal; use Wundii\AfterbuySdk\Core\SandboxResponse; use Wundii\AfterbuySdk\Dto\UpdateShopProducts; use Wundii\AfterbuySdk\Enum\Core\EndpointEnum; $afterbuyGlobal = new AfterbuyGlobal( '123...', '456...', EndpointEnum::SANDBOX, ); $afterbuy = new Afterbuy( $afterbuyGlobal, ); /** your own response version */ $afterbuy->runRequest( new UpdateShopProducts( ... // afterbuy sdk request object ), new SandboxResponse('<your custom xml response here>', 200), );
Usage
use Wundii\AfterbuySdk\Core\Afterbuy; use Wundii\AfterbuySdk\Core\AfterbuyGlobal; use Wundii\AfterbuySdk\Enum\Core\EndpointEnum; use Wundii\AfterbuySdk\Request\GetAfterbuyTimeRequest; $afterbuyGlobal = new AfterbuyGlobal( accountToken: '123...', partnerToken: '456...', EndpointEnum::SANDBOX, ); $request = new GetAfterbuyTimeRequest(); $afterbuy = new Afterbuy( $afterbuyGlobal, Optional_PsrLoggerInterface::class, ); $response = $afterbuy->runRequest($request); $response->getStatusCode(); $response->getCallStatus(); $response->getInfo(); $response->getResult(); $response->getXmlResponse() $response->getErrorMessages(); $response->getWarningMessages();
Development for Afterbuy SDK
composer scripts
composer cache-clear composer ecs-apply composer ecs-dry composer phpstan composer rector-apply composer rector-dry composer unittest
complete checks before merge
composer complete-check