erdikoroglu / trendyol-api
The easiest way for using Trendyol API services in PHP
1.10
2021-11-06 15:41 UTC
Requires
- php: ^7.4 || ^8
- ext-json: *
Requires (Dev)
- ext-mbstring: *
- phpunit/phpunit: ^9.0
- squizlabs/php_codesniffer: ^3.5
This package is not auto-updated.
Last update: 2025-06-30 07:03:56 UTC
README
https://github.com/boolxy/trendyol kütüphanesi laravel 8 güncellemesi
Installation
This package can be installed via Composer:
composer require erdikoroglu/trendyol-api
Usage
Product Service
Get brands
use Boolxy\Trendyol\Trendyol; $results = Trendyol::create($user, $pass, $supplier_id) ->productService() ->getBrands();
Get brands by name
use Boolxy\Trendyol\Trendyol; $results = Trendyol::create($user, $pass, $supplier_id) ->productService() ->getBrandsByName("TRENDYOL");
Get categories
use Boolxy\Trendyol\Trendyol; $results = Trendyol::create($user, $pass, $supplier_id) ->productService() ->getCategories();
Get attributes by categoryId
use Boolxy\Trendyol\Trendyol; $categoryId = 387; $results = Trendyol::create($user, $pass, $supplier_id) ->productService() ->getAttributes($categoryId);
Get shipment providers
use Boolxy\Trendyol\Trendyol; $results = Trendyol::create($user, $pass, $supplier_id) ->productService() ->getProviders();
Get suppliers addresses
use Boolxy\Trendyol\Trendyol; $results = Trendyol::create($user, $pass, $supplier_id) ->productService() ->getSuppliersAddresses();
Get batch request result
use Boolxy\Trendyol\Trendyol; $batchRequestId = '5631d1a1-ec81-496f-9407-99876554433-1529820717'; $results = Trendyol::create($user, $pass, $supplier_id) ->productService() ->getBatchRequestResult($batchRequestId);
Get products
use Boolxy\Trendyol\Trendyol; $results = Trendyol::create($user, $pass, $supplier_id) ->productService() ->getProducts();
with filters:
use Boolxy\Trendyol\Trendyol; use Boolxy\Trendyol\Enums\DateQueryType; $results = Trendyol::create($user, $pass, $supplier_id) ->productService() ->gettingProducts() ->dateQueryType(DateQueryType::create(DateQueryType::LAST_MODIFIED_DATE)) ->barcode('XXX') ->page(1) ->size(50) // ... ->get();
Update price and inventory
use Boolxy\Trendyol\Trendyol; $items = [ [ "barcode" => "8680000000", "quantity" => 100, "salePrice" => 112.85, "listPrice" => 113.85, ], // ... ]; $service = Trendyol::create($user, $pass, $supplier_id) ->productService() ->updatingPriceAndInventory(); foreach($items as $item) { $service->addItem( $item["barcode"], $item["quantity"], $item["salePrice"], $item["listPrice"] ); } $results = $service->update();
Create your own products on Trendyol
use Boolxy\Trendyol\Trendyol; use Boolxy\Trendyol\Models\Product; $attributes = [ /* ... */ ]; $product1 = new Product($attributes); $items = [ $product1, // ... ]; $service = Trendyol::create($user, $pass, $supplier_id) ->productService() ->creatingProducts(); foreach($items as $item) { $service->addProduct($item); } $result = $service->create();
Order Service
Get shipment packages
use Boolxy\Trendyol\Trendyol; use Boolxy\Trendyol\Enums\ShipmentOrderBy; use Boolxy\Trendyol\Enums\ShipmentStatus; use Boolxy\Trendyol\Enums\OrderByDirection; $results = Trendyol::create($user, $pass, $supplier_id) ->orderService() ->gettingShipmentPackages() ->status(ShipmentStatus::create(ShipmentStatus::DELIVERED)) ->orderByField(ShipmentOrderBy::create(ShipmentOrderBy::PACKAGE_LAST_MODIFIED_DATE)) ->orderByDirection(OrderByDirection::create(OrderByDirection::DESC)) ->page(1) ->size(10) // ... ->get();
Update tracking number
use Boolxy\Trendyol\Trendyol; $shipmentPackageId = 11650604; $trackingNumber = "7340447182689"; $result = Trendyol::create($user, $pass, $supplier_id) ->orderService() ->updateTrackingNumber($shipmentPackageId, $trackingNumber);
Send invoice link
use Boolxy\Trendyol\Trendyol; $shipmentPackageId = 11650604; $invoiceLink = "https://extfatura.faturaentegratoru.com/324523-34523-52345-3453245.pdf"; $result = Trendyol::create($user, $pass, $supplier_id) ->orderService() ->sendInvoiceLink($invoiceLink, $shipmentPackageId);
Splitting shipment package
use Boolxy\Trendyol\Trendyol; $result = Trendyol::create($user, $pass, $supplier_id) ->orderService() ->splittingShipmentPackage() ->setShipmentPackageId(11650604) ->addOrderLineId(2) ->addOrderLineId(3) ->addOrderLineId(4) // ... ->split();
multi
use Boolxy\Trendyol\Trendyol; $result = Trendyol::create($user, $pass, $supplier_id) ->orderService() ->splittingShipmentPackageMulti() ->setShipmentPackageId(11650604) ->addGroup([ 3, 5, 6 ]) ->addGroup([ 7, 8, 9 ]) // ... ->split();
by quantity
use Boolxy\Trendyol\Trendyol; $result = Trendyol::create($user, $pass, $supplier_id) ->orderService() ->splittingShipmentPackageByQuantity() ->setShipmentPackageId(11650604) ->addQuantitySplit($orderLineId = 0, [ 2, 2 ]) // ... ->split();
Claim Service
Get claims
use Boolxy\Trendyol\Trendyol; use Boolxy\Trendyol\Enums\ClaimItemStatus; $result = Trendyol::create($user, $pass, $supplier_id) ->claimService() ->gettingClaims() ->status(ClaimItemStatus::create(ClaimItemStatus::CREATED)) // ... ->get();
Approve claim line items
use Boolxy\Trendyol\Trendyol; $result = Trendyol::create($user, $pass, $supplier_id) ->claimService() ->approvingClaimLineItems() ->addClaimItemId("f9da2317-876b-4b86-b8f7-0535c3b65731") // ... ->approve();
Create claim issue
use Boolxy\Trendyol\Trendyol; $result = Trendyol::create($user, $pass, $supplier_id) ->claimService() ->creatingClaimIssue() ->setClaimIssueReasonId(1) ->setClaimId("f9da2317-876b-4b86-b8f7-0535c3b65731") ->setClaimItemIdList("b71461e3-d1a0-4c1d-9a6d-18ecbcb5158c") ->addFile(__DIR__ . '/test.png') // ... ->create();
Get claims issue reasons
use Boolxy\Trendyol\Trendyol; $results = Trendyol::create($user, $pass, $supplierId) ->claimService() ->getClaimsIssueReasons();
Settlement Service
Get settlements
use Boolxy\Trendyol\Trendyol; use Boolxy\Trendyol\Enums\SettlementDateType; $results = Trendyol::create($user, $pass, $supplierId) ->settlementService() ->gettingSettlements() ->dateType(SettlementDateType::create(SettlementDateType::ORDER)) ->startDate(1557469159834) ->endDate(1557469159834) // ... ->get();
Composer scripts
With reviewing the tests, you can learn more about the package. Before testing: Copy phpunit.xml.dist as phpunit.xml and update it. After then you can start the testing.
-
Run the tests
composer test
-
Check for PSR-2 standards
composer check
-
Apply PSR-2 standards
composer fix
API Documentation
Credits
License
The MIT License (MIT). Please see License File for more information.