PTT AVM API entegrasyonu için Python istemci kütüphanesi.
- ✨ Ürün güncelleme servisleri (V2)
- Tekli ve toplu güncelleme
- Varyant yönetimi
- Parça ve resim yönetimi
- 🔒 Kapsamlı validasyon sistemi
- KDV oranı kontrolü
- Fiyat validasyonları
- Stok limitleri
- Varyant tutarlılığı
- 🧮 Otomatik hesaplamalar
- KDV ve indirim
- Desi hesaplama
- 📝 Gelişmiş hata yönetimi
- 🏗️ Servis yapısı iyileştirildi
- 📊 Validasyon kuralları merkezi hale getirildi
- 🎯 Örnek kodlar geliştirildi
- 📚 Dokümantasyon güncellendi
- 🐛 SOAP istek yapısı düzeltildi
- 🔧 SSL sertifika doğrulama hatası giderildi
- ⚡️ API yanıt işleme geliştirildi
Bu proje, PTT AVM SOAP API'nin site docs ile verilen ultra yetersiz dokümantasyonuna tepki olarak doğmuştur.
- Python 3.7 veya üstü
- pip (Python paket yöneticisi)
pip install pttavm-python-
Repoyu Klonlayın:
git clone https://github.com/selimkosgen/pttavm_python.git cd pttavm -
Sanal Ortam Oluşturun ve Aktifleştirin:
python -m venv venv source venv/bin/activate # Linux/macOS # veya .\venv\Scripts\activate # Windows
-
Gereksinimleri Yükleyin:
pip install -e .
-
Çevre Değişkenlerini Ayarlayın:
.envdosyası oluşturun ve API kimlik bilgilerinizi ekleyin:cp .env.example .env
.envdosyasını düzenleyerek API kimlik bilgilerinizi girin:PTT_USERNAME=your_username PTT_PASSWORD=your_password -
Örnek Kullanım:
from pttavm import PTTClient
# İstemciyi başlat
client = PTTClient(
username="your_username",
password="your_password"
)
# Stok işlemleri
total_stocks = client.get_stock_count()
print(f"Toplam stok: {total_stocks}")
# Tek ürün bilgisi
stock = client.get_stock("barcode123")
if stock:
print(f"Ürün: {stock.product.product_name}")
print(f"Stok: {stock.quantity}")
# Tüm stokları getir
def progress_callback(stocks, page, total):
print(f"Sayfa {page} yüklendi (Toplam: {total} ürün)")
all_stocks = client.get_all_stocks(progress_callback=progress_callback)Örnek kullanımlar için examples/ klasörüne göz atabilirsiniz:
examples/version_example.py: API versiyon bilgisi alma örneğiexamples/category_example.py: Kategori listesi alma örneğiexamples/product_example.py: Ürün bilgisi sorgulama örneğiexamples/stock_example.py: Stok işlemleri örneği
- ✅ Authentication (API Kimlik Doğrulama)
- ✅ GetVersion (API Versiyon Bilgisi)
- ✅ Kategori Servisleri
- GetCategoryTree
- 🟠 AltKategoriListesi (Deprecated)
- ✅ Stok Servisleri
- StokKontrolListesi (Sayfalı listeleme)
- Tek ürün stok kontrolü
- Toplu stok listeleme
- Toplam stok sayısı hesaplama
- ✅ Ürün Servisleri
- ✅ StokGuncelleV2 (Yeni)
- ✅ StokGuncelleV2Bulk (Yeni)
- ✅ StokFiyatGuncelle3
- ✅ BarkodKontrol
- ✅ BarkodKontrolBulk
- ✅ AktifYap
- 🟠 StokFiyatGuncelle (Deprecated)
- 🟠 StokFiyatGuncelle2 (Deprecated)
- 🟠 UpdateProductVariant (Deprecated)
- 🔴 Sipariş Servisleri
- SaveInvoince
- SiparisKontrolListesiV2
- 🔴 Mağaza Servisleri
- GetCargoProfiles
- KullaniciTedarikciBilgisiGetir
- ✅ Kapsamlı dokümantasyon ve örnekler
- ✅ Kolay kullanımlı Python arayüzü
- ✅ Hata yönetimi ve doğrulama
- ✅ Validasyon kuralları
- ✅ Otomatik hesaplamalar
- ✅ İlerleme takibi
- ✅ Sayfalı listeleme desteği
Henüz eklenmemiş olan ve gelecekteki güncellemelerde yer alması planlanan özellikler şunlardır:
-
Sipariş Servisleri
- SiparisKontrolListesi, KargoBilgiListesi
-
Kargo ve Teslimat Servisleri
- /v1/barcode-status, /v1/create-barcode, /v1/get-warehouse vb.
- ✨ Ürün güncelleme servisleri (V2)
- 🔒 Kapsamlı validasyon sistemi
- 🧮 Otomatik hesaplamalar
- 📝 Gelişmiş hata yönetimi
- ✨ Ürün güncelleme servisleri (V2)
- 🔒 Kapsamlı validasyon sistemi
- 🧮 Otomatik hesaplamalar
- 📝 Gelişmiş hata yönetimi
- ✨ Stok servisleri eklendi
- 📊 İlerleme takibi için callback sistemi eklendi
- 🔄 Sayfalama desteği (1000 ürün/sayfa)
- 🔨 Import yapısı basitleştirildi
- 📝 API kullanımı sadeleştirildi
- ⚡️ Hata yönetimi geliştirildi
- PTTAVMClient ismi PTTClient olarak değiştirildi
- Stok servisleri eklendi ve geliştirildi
- İlerleme takibi için callback desteği eklendi
- Sayfalı listeleme desteği eklendi
- Hata yönetimi geliştirildi