Alt Bayi Oluşturma
Endpoint’ler
- Tüm bayileri listeleme:
GET /vendor/dealer - Tek bayi detayı (code):
GET /vendor/dealer/{code} - Tek bayi detayı (erpCode):
GET /vendor/dealer/{erpCode}
HTTP Method: GET
Request Content-Type: application/json (opsiyonel)
Response Content-Type: application/json
Yetkilendirme: Geçerli AccessToken zorunludur. (Bkz: 2. Kimlik Doğrulama – AccessToken Alınması)
Açıklama
Bu servis, bayi kayıtlarını listelemek veya tek bir bayinin detayını görüntülemek için kullanılır.
codeveyaerpCoderoute parametresi verilirse yalnızca tek kayıt döner.- Parametre verilmezse sayfalandırmalı liste döner.
- Aynı anda birden fazla route parametresi kullanılamaz.
Header Bilgileri
| Header Adı | Zorunlu | Açıklama |
|---|---|---|
| Authorization | Evet | Bearer {AccessToken} formatında geçerli token |
| Content-Type | Evet | application/json |
Route Parametreleri - Tek Kayıt Getirme
| Parametre | Tip | Zorunlu | Açıklama |
|---|---|---|---|
| code | string | İkisinden biri | Bayi kullanıcı kodu |
| erpCode | string | İkisinden biri | Bayi ERP kodu |
Not: code veya erpCode kullanılmalıdır; ikisi birlikte gönderilemez.
Query Parametreleri – Sayfalandırma (Listeleme)
| Parametre | Tip | Zorunlu | Açıklama |
|---|---|---|---|
| page | integer | Hayır | Getirilecek sayfa (varsayılan: 1) |
| pageSize | integer | Hayır | Sayfa başına kayıt (varsayılan: 10, max: 100) |
Request Body
Vendor (Alt Bayi) Alanları
| Alan Adı | Tip | Zorunlu | Açıklama |
|---|---|---|---|
| code | string | Evet | Bayi kodu (benzersiz) |
| name | string | Evet | Bayi adı |
| address | string | Hayır | Adres |
| cityCode | string | Hayır | Şehir kodu |
| districtCode | string | Hayır | İlçe kodu |
| countryCode | string | Evet | Ülke kodu (örn. "TR") |
| erpCode | string | Evet | ERP kodu (benzersiz) |
| taxNumber | string | Şarta bağlı | isCompany = true ise zorunlu |
| taxOffice | string | Şarta bağlı | isCompany = true ise zorunlu |
| isCompany | boolean | Evet | Kurumsal ise true, bireysel ise false |
| isForeignNational | boolean | Hayır | Yabancı uyruklu mu |
| phone | string | Hayır | Telefon |
| paymentSetId | string | Hayır | Varsayılan ödeme seti ID |
| usablePaymentSetDefinitionIds | array | Hayır | Kullanılabilir ödeme seti ID listesi |
| paymentExCurrencyType | string | Hayır | Ödeme döviz tipi |
| currencyCode | string | Hayır | Para birimi kodu (örn. "TRY") |
| parentTenantId | string | Hayır | Üst tenant ID |
| customerRepresentativeIds | array | Hayır | Temsilci ID listesi |
| isActive | boolean | Hayır | Aktif/pasif |
| users | array<User> | Hayır | Bayiye bağlı kullanıcı listesi |
Users (Alt Bayi Kullanıcı) Alanları
| Alan Adı | Tip | Zorunlu | Açıklama |
|---|---|---|---|
| userCode | string | Evet | Kullanıcı kodu |
| name | string | Evet | Ad |
| surname | string | Evet | Soyad |
| string | Evet | E-posta | |
| gsm | string | Evet | Cep telefonu |
| title | string | Hayır | Ünvan |
| description | string | Hayır | Açıklama |
| erpCode | string | Hayır | ERP kodı |
| isActive | boolean | Hayır | Aktif/pasif |
| isCompany | boolean | Hayır | Kurumsal mı |
| isForeignNational | boolean | Hayır | Yabancı uyruklu mu |
| tckn | string | Hayır | TCKN (bireysel ise) |
| paymentSetId | string | Hayır | Ödeme seti |
| roles | array | Hayır | Rol listesi |
| canUseMobile | boolean | Hayır | Mobil kullanım izni |
| userType | string | Hayır | Kullanıcı tipi |
| countryCode, cityCode, address, currencyCode | çeşitli | Hayır | Ortamdan dönebilir; opsiyoneldir |
Not: Yanıt şemasında kullanıcı tarafında userCode alanı döner; oluşturma/güncelleme endpoint’lerinde istek gövdesinde çoğunlukla code kullanılır. (Okuma–yazma alan adı farkına dikkat.)
- Örnek İstek
- Başarılı Response
{
"code": "742",
"phone": "5000000000",
"countryCode": "TR",
"cityCode": "10",
"districtCode": 494,
"currencyCode": "TRY",
"erpCode": "742",
"address": "TEST ADRESİ",
"taxNumber": "00000000000",
"paymentSetId": "315ef729-bf70-ff12-5e3f-ca7a7ff6867d",
"customerRepresentativeIds": [
"8fc535a7-3a0c-4994-b19b-0f3c4da748a5"
],
"isForeignNational": false,
"isCompany": false,
"name": "TEST VENDOR ALT BAYİSİ",
"parentTenantId": "958949df-0d90-4851-bcb8-1acb62c4dc95",
"users": [
{
"canUseMobile": false,
"description": "test",
"email": "[email protected]",
"code": "722",
"gsm": "5000000000",
"isActive": true,
"name": "test",
"surname": "kullanıcısı",
"roles": [
"2d37006c-6000-4315-90fe-2dc2fe1fb184"
],
"sendMail": false,
"userType": 8248
//"tckn": "string"
}
],
"mainDealerCode": "NT65126658"
}
{
"status": "success",
"message": "Bayi başarıyla oluşturuldu.",
"customerId": "b509cf31-b7aa-44d6-bb00-553e739b64a6"
}
Not: Önceki örnekte mesajda “Müşteri” ve alan adı “customerId” geçiyordu; alt bayi kaydı için anlamlı olacak şekilde düzelttik: subDealerId.
Notlar & En İyi Uygulamalar
- mainDealerCode alanı zorunludur. Alt bayi mutlaka bir ana bayiye bağlı olmalıdır.
- isCompany = true (kurumsal) olduğunda
taxNumbervetaxOfficezorunludur. - usablePaymentSetDefinitionIds bir liste olarak birden fazla ödeme seti tanımını destekler.
- sendMail = true ise, oluşturulan kullanıcı(lar)a sistem e-postası gönderilir.
- Token süresi dolduğunda istek
401 Unauthorizeddöner; yeni token alınarak istek tekrarlanmalıdır. code,erpCodevemainDealerCodealanlarının benzersiz olması önerilir.