定制 wiensa/hepsiburada-sp-api 二次开发

按需修改功能、优化性能、对接业务系统,提供一站式技术支持

邮箱:yvsm@zunyunkeji.com | QQ:316430983 | 微信:yvsm316

wiensa/hepsiburada-sp-api

最新稳定版本:v1.0.3

Composer 安装命令:

composer require wiensa/hepsiburada-sp-api

包简介

Hepsiburada Marketplace Satıcı Paneli API entegrasyonu için Laravel paketi

README 文档

README

Bu Laravel paketi, Hepsiburada Marketplace API ile entegrasyon sağlamak için geliştirilmiştir. Paket, Hepsiburada'nın satıcı paneli üzerinden erişilebilen API'leri Laravel uygulamalarınızda kolayca kullanmanızı sağlar.

Özellikler

  • Kategori bilgilerini sorgulama ve kategori özelliklerini alma
  • Ürün bilgilerini gönderme ve sorgulama
  • Listing (ürün listeleme) işlemleri
  • Sipariş yönetimi
  • Talep ve iade yönetimi (Claims)
  • Finans ve muhasebe işlemleri
  • Raporlama
  • Taşıma ve lojistik işlemleri
  • Kolay entegrasyon ve kullanım
  • Laravel 10+ ve PHP 8.3+ desteği

Kurulum

Composer ile paketi projenize ekleyin:

composer require wiensa/hepsiburada-sp-api

Laravel 10.x ve üzeri için otomatik olarak servis sağlayıcı kaydedilecektir. Laravel 10'dan önceki sürümleri kullanıyorsanız, config/app.php dosyasına aşağıdaki servis sağlayıcıyı manuel olarak ekleyin:

'providers' => [
    // ...
    HepsiburadaApi\HepsiburadaSpApi\Providers\HepsiburadaApiServiceProvider::class,
],

'aliases' => [
    // ...
    'HepsiburadaApi' => HepsiburadaApi\HepsiburadaSpApi\Facades\HepsiburadaApi::class,
],

Yapılandırma

Öncelikle yapılandırma dosyasını yayınlayın:

php artisan vendor:publish --tag=hepsiburada-api-config

Bu komutu çalıştırdıktan sonra, config/hepsiburada-api.php dosyası oluşturulacaktır. Burada API için gereken ayarları yapabilirsiniz.

Alternatif olarak, .env dosyanıza aşağıdaki değişkenleri ekleyebilirsiniz:

HEPSIBURADA_API_BASE_URL=https://marketplace-api.hepsiburada.com
HEPSIBURADA_API_USERNAME=kullanici_adiniz
HEPSIBURADA_API_PASSWORD=sifreniz
HEPSIBURADA_MERCHANT_ID=satici_id

Kullanım

Facade ile Kullanım

use HepsiburadaApi;

// Kategorileri listele
$categories = HepsiburadaApi::categories()->getCategories();

// Ürün bilgilerini gönder
$response = HepsiburadaApi::products()->createProduct([
    // Ürün verileri
]);

// Listing bilgilerini al
$listings = HepsiburadaApi::listings()->getListings();

// Sipariş bilgilerini al
$orders = HepsiburadaApi::orders()->getCompletedOrders();

DI Container ile Kullanım

use HepsiburadaApi\HepsiburadaSpApi\HepsiburadaApi;

class ProductController extends Controller
{
    protected $api;

    public function __construct(HepsiburadaApi $api)
    {
        $this->api = $api;
    }

    public function index()
    {
        $products = $this->api->products()->getProductsByStatus('APPROVED');
        
        return view('products.index', compact('products'));
    }
}

Örnekler

Kategori İşlemleri

// Tüm kategorileri listele
$categories = HepsiburadaApi::categories()->getCategories();

// Belirli bir kategorinin özelliklerini al
$attributes = HepsiburadaApi::categories()->getCategoryAttributes('category_id');

// Özellik değerlerini al
$attributeValues = HepsiburadaApi::categories()->getAttributeValues('attribute_id');

Ürün İşlemleri

// Ürün bilgisi gönder
$response = HepsiburadaApi::products()->createProduct([
    'categoryId' => 'kategori_id',
    'merchant' => 'satici_id',
    'attributes' => [
        // Ürün özellikleri
    ],
    'images' => [
        // Ürün görselleri
    ],
    // Diğer ürün bilgileri
]);

// Hızlı ürün yükleme
$response = HepsiburadaApi::products()->quickUpload([
    // Ürün verileri
]);

// Ürün durumunu sorgula
$status = HepsiburadaApi::products()->getProductStatus('barkod');

// Ürün statüsüne göre listele
$products = HepsiburadaApi::products()->getProductsByStatus('APPROVED');

Listing İşlemleri

// Listing bilgilerini sorgula
$listings = HepsiburadaApi::listings()->getListings([
    'page' => 0,
    'size' => 50
]);

// Fiyat güncelle
$response = HepsiburadaApi::listings()->updatePrice([
    'listings' => [
        [
            'listingId' => 'listing_id',
            'price' => 99.99,
            'availableStock' => 10
        ]
    ]
]);

// Stok güncelle
$response = HepsiburadaApi::listings()->updateStock([
    'listings' => [
        [
            'listingId' => 'listing_id',
            'quantity' => 50
        ]
    ]
]);

Sipariş İşlemleri

// Tamamlanan siparişleri listele
$orders = HepsiburadaApi::orders()->getCompletedOrders([
    'beginDate' => '2023-01-01',
    'endDate' => '2023-12-31'
]);

// İptal edilen siparişleri listele
$cancelledOrders = HepsiburadaApi::orders()->getCancelledOrders();

// Bekleyen siparişleri listele
$pendingOrders = HepsiburadaApi::orders()->getPendingOrders();

// Sipariş detaylarını al
$orderDetails = HepsiburadaApi::orders()->getOrderDetail('siparis_numarasi');

// Siparişi kargoya ver
$response = HepsiburadaApi::orders()->shipOrderItems([
    'merchantId' => 'satici_id',
    'packageNumber' => 'paket_numarasi',
    'shippingCompany' => 'kargo_firmasi',
    'trackingNumber' => 'takip_numarasi'
]);

// Paket içeriklerini hazırlama
$response = HepsiburadaApi::orders()->packageItems([
    'merchantId' => 'satici_id',
    'packageNumber' => 'paket_numarasi',
    'items' => [
        // Paketlenecek ürün kalemleri
    ]
]);

Talep ve İade İşlemleri

// Tüm talepleri listele
$claims = HepsiburadaApi::claims()->getClaims();

// Talep detayını görüntüle
$claimDetails = HepsiburadaApi::claims()->getClaimDetails('claim_id');

// Talebe yanıt gönder
$response = HepsiburadaApi::claims()->respondToClaim([
    'claimNumber' => 'claim_number',
    'merchantId' => 'merchant_id',
    'responseType' => 'ACCEPT',
    'notes' => 'Talebiniz onaylandı'
]);

// İade taleplerini listele
$returnRequests = HepsiburadaApi::claims()->getReturnRequests();

// İade talebini onayla
$returnApproval = HepsiburadaApi::claims()->approveReturnRequest([
    'returnId' => 'return_id',
    'merchantId' => 'merchant_id'
]);

Finans ve Muhasebe İşlemleri

// İşlem geçmişini listele
$transactions = HepsiburadaApi::finances()->getTransactions([
    'startDate' => '2023-01-01',
    'endDate' => '2023-12-31'
]);

// Ödeme özeti al
$paymentSummary = HepsiburadaApi::finances()->getPaymentSummary();

// Ödeme detayını görüntüle
$paymentDetails = HepsiburadaApi::finances()->getPaymentDetails('payment_id');

// Fatura bilgilerini listele
$invoices = HepsiburadaApi::finances()->getInvoices();

// Komisyon bilgilerini al
$commissions = HepsiburadaApi::finances()->getCommissions();

Raporlama İşlemleri

// Satış performans raporu al
$salesReport = HepsiburadaApi::reports()->getSalesPerformance();

// Sipariş raporu al
$orderReport = HepsiburadaApi::reports()->getOrderReport([
    'beginDate' => '2023-01-01',
    'endDate' => '2023-12-31'
]);

// Ürün performans raporu al
$productReport = HepsiburadaApi::reports()->getProductPerformance();

// Stok durumu raporu al
$inventoryReport = HepsiburadaApi::reports()->getInventoryReport();

// Özel rapor oluştur
$customReport = HepsiburadaApi::reports()->createCustomReport([
    'merchantId' => 'merchant_id',
    'reportType' => 'SALES',
    'startDate' => '2023-01-01',
    'endDate' => '2023-12-31',
    'format' => 'CSV'
]);

// Rapor durumunu sorgula
$reportStatus = HepsiburadaApi::reports()->getReportStatus('report_id');

// Rapor indirme bağlantısı al
$downloadLink = HepsiburadaApi::reports()->getReportDownloadLink('report_id');

Taşıma ve Lojistik İşlemleri

// Kargo şirketlerini listele
$carriers = HepsiburadaApi::logistics()->getCarriers();

// Kargo ücretlerini sorgula
$shippingRates = HepsiburadaApi::logistics()->getShippingRates([
    'shippingCompanyId' => '1'
]);

// Kargo takip bilgilerini güncelle
$trackingUpdate = HepsiburadaApi::logistics()->updateTrackingInfo([
    'packageNumber' => 'package_number',
    'trackingNumber' => 'tracking_number',
    'carrierId' => '1'
]);

// Kargo etiketi oluştur
$shippingLabel = HepsiburadaApi::logistics()->createShippingLabel([
    'merchantId' => 'merchant_id',
    'orderId' => 'order_id',
    'packageNumber' => 'package_number',
    'shippingCompanyId' => 1
]);

// Teslimat bölgesi bilgilerini sorgula
$deliveryZones = HepsiburadaApi::logistics()->getDeliveryZones();

Lisans

Bu paket MIT lisansı altında lisanslanmıştır. Daha fazla bilgi için LICENSE dosyasına bakın.

统计信息

  • 总下载量: 4
  • 月度下载量: 0
  • 日度下载量: 0
  • 收藏数: 1
  • 点击次数: 0
  • 依赖项目数: 0
  • 推荐数: 0

GitHub 信息

  • Stars: 1
  • Watchers: 1
  • Forks: 0
  • 开发语言: PHP

其他信息

  • 授权协议: MIT
  • 更新时间: 2025-04-21