LASTSIS API Dokümantasyonu

3. parti yazılımlar ile entegrasyon kılavuzu

API'mız JSON olarak çalışır ve Authorization header'da Bearer Token kullanır.

Güvenli Entegrasyon

Token tabanlı kimlik doğrulama

Açıklama

Lastsis'in API'si, işletmelerin kendi sistemlerine entegre ederek Lastsis'in sunduğu geniş özelliklerden yararlanmasını sağlar. Bu dokümantasyon; adımlar, endpoint'ler, parametreler ve dönüş değerleri konusunda rehberlik eder.

Base URL:
https://panel.lastsis.com/api

Müşteriler

a) Müşteri Listesi

GET /customers

Açıklama: Müşteri tipi "legal" ise kurumsal, "private" ise bireysel müşteridir. Kurumsal müşterilerde, şirket bilgileri company parametresinden alınabilir.

company: Kurumsal müşterilerde kurum bilgilerini içerir. Eğer is_fleet parametresi true dönerse, müşteri aynı zamanda bir filodur.

Path Parameters

query (optional): Müşteri adı, soyadı, TCKN, firma ünvanı ve firma VKN bilgilerine göre filtreleme yapmak için kullanılır.

b) Müşteri Oluşturma/Güncelleme

POST /customers/create

Açıklama: Bu endpoint, yeni bir müşteri oluşturur veya var olan müşteri bilgilerini günceller. Eğer halihazırda, gönderilen external_id ile aynı external_id'ye sahip bir müşteri varsa güncelleme işlemi yapılır, yoksa yeni müşteri oluşturulur.

{
    "type": 1,
    "external_id": "123456",
    "title": "Example Corp",
    "tax_office": "Example Tax Office",
    "tax_no": "1234567890",
    "phone": "555-555-5555",
    "email": "example@example.com",
    "name": "John",
    "surname": "Doe",
    "address": "Example Street, No: 1",
    "city": "Example City",
    "county": "Example County"
}

Validation Kuralları

type: Tip: integer Açıklama: Müşteri türünü belirler. 1: Bireysel, 2: Kurumsal.

external_id: Tip: string Açıklama: Müşteriyi eşleştirebilmek için kullanılan harici ID.

title: Tip: string Açıklama: Kurumsal müşteri olduğunda zorunludur; şirket ünvanını belirtir.

tax_office: Tip: string Açıklama: Kurumsal müşteri olduğunda zorunludur; vergi dairesi adını belirtir.

tax_no: Tip: string Açıklama: Kurumsal müşteri olduğunda zorunludur; vergi numarasını belirtir.

phone: Tip: string Açıklama: Opsiyoneldir; müşterinin telefon bilgisi.

email: Tip: string Açıklama: Opsiyoneldir; e‑posta adresi.

name: Tip: string Açıklama: Bireysel müşteri olduğunda zorunludur; müşterinin adı.

surname: Tip: string Açıklama: Opsiyoneldir; bireysel müşteri için soyadı.

address: Tip: string Açıklama: Opsiyoneldir; müşterinin adres bilgisi.

city: Tip: string Açıklama: Opsiyoneldir; müşterinin bulunduğu şehir.

county: Tip: string Açıklama: Opsiyoneldir; müşterinin bulunduğu ilçe.

tc_no: Tip: string Açıklama: Opsiyoneldir; bireysel müşteriler için T.C. kimlik numarası.

Ürünler

a) Ürün Listesi

GET /products

Açıklama: Ürün listesini içerir.

Response Fields

  • id: Ürün ID bilgisi.
  • title: Ürün adı.
  • product_category_id: Kategori ID bilgisi.
  • brand: Marka bilgisi.
  • barcode: Barkod bilgisi.
  • reference_code: Referans (Stok) kodu bilgisi.
  • image: Görsel bilgisi.
  • price: Vergi hariç fiyatı.
  • vat: Vergi oranı.
  • total_vat: Toplam vergi tutarı.
  • discount_rate: İndirim oranı.
  • quantity: Ürünün mevcut stok bilgisi.
  • quantity_type: Stok tipi.
  • is_tire: Ürünün lastik olup olmadığını belirtir.
  • season: Ürün mevsim bilgisi.
  • dot: Üretim yılı bilgisi.
  • is_active: Ürünün satışta olup olmadığını belirtir.
  • new_price: Vergi dahil satış tutarı.
  • category: Ürünün kategori bilgileri
    • id: Kategori ID bilgisi.
    • title: Kategori adı.
    • description: Kategori açıklaması.

b) Ürün Oluşturma/Güncelleme

POST /products/create

Açıklama: Bu endpoint, yeni bir ürün oluşturur veya var olan ürün bilgilerini günceller. Eğer halihazırda, gönderilen external_id ile aynı external_id'ye sahip bir ürün varsa güncelleme işlemi yapılır, yoksa yeni ürün oluşturulur.

{
    "is_tire": 1,
    "external_id": "example_external_id",
    "title": "Example Product",
    "description": "This is an example product.",
    "barcode": "1234567890123",
    "reference_code": "REF123",
    "oem_code": "OEM123",
    "product_category_id": 1,
    "tire_brand": 1,
    "product_brand_id": 1,
    "product_supplier_id": 1,
    "save_flowing": true,
    "dispatch_list": "DISPATCH123",
    "season": "Dört Mevsim",
    "dot": "2023",
    "noise_level": 70,
    "energy_class": "A",
    "brake_performance": "B",
    "price_currency": "TRY",
    "cost": 100.0,
    "cost_with_tax": 118.0,
    "cost_vat": 18.0,
    "price": 120.0,
    "price_with_tax": 141.6,
    "price_vat": 21.6,
    "discount_rate": 5.0,
    "quantity": 50,
    "quantity_type": "Adet",
    "min_stock": 10,
    "address_id": 1,
    "is_second_hand": 0
}

Validation Kuralları

is_tire: Tip: integer Açıklama: Ürünün lastik veya farklı bir ürün olduğunu belirtir; 1 (Evet) veya 0 (Hayır).

external_id: Tip: string Açıklama: Harici ID; ürünü eşleştirmek için kullanılır.

title: Tip: string Açıklama: Ürün/lastik adı; zorunludur.

description: Tip: string Açıklama: Opsiyoneldir; ürün açıklaması.

barcode: Tip: numeric Açıklama: Opsiyoneldir; ürün barkodu.

reference_code: Tip: string Açıklama: Opsiyoneldir; referans (stok) kodu.

oem_code: Tip: string Açıklama: Opsiyoneldir; OEM kodu.

product_category_id: Tip: numeric Açıklama: Gerekli; ürün kategorisi ID'si.

tire_brand: Tip: integer Açıklama: Ürün lastikse gereklidir; lastik markası ID'si.

product_brand_id: Tip: integer Açıklama: Ürün lastik değilse gereklidir; ürün markası ID'si.

product_supplier_id: Tip: integer Açıklama: Opsiyoneldir; tedarikçi bilgisi.

save_flowing: Tip: boolean Açıklama: Opsiyoneldir; tedarikçi carisinin kaydedilip kaydedilmeyeceğini belirtir. Ürün güncellemede kullanılmaz.

dispatch_list: Tip: string Açıklama: Opsiyoneldir; irsaliye numarası. Ürün güncellemede kullanılmaz.

season: Tip: string Açıklama: Opsiyoneldir; lastik sezonu (Dört Mevsim, Yaz, Kış).

dot: Tip: string Açıklama: Opsiyoneldir; üretim tarihi.

noise_level: Tip: integer Açıklama: Opsiyoneldir; gürültü seviyesi.

energy_class: Tip: string Açıklama: Opsiyoneldir; enerji sınıfı.

brake_performance: Tip: string Açıklama: Opsiyoneldir; ıslak fren performansı.

price_currency: Tip: string Açıklama: Gerekli; para birimi (TRY, EUR, USD).

cost: Tip: numeric Açıklama: Gerekli; vergi hariç maliyet tutarı.

cost_with_tax: Tip: numeric Açıklama: Gerekli; vergi dahil maliyet tutarı.

cost_vat: Tip: numeric Açıklama: Gerekli; maliyet vergi oranı.

price: Tip: numeric Açıklama: Gerekli; vergi hariç satış tutarı.

price_with_tax: Tip: numeric Açıklama: Gerekli; vergi dahil satış tutarı.

price_vat: Tip: numeric Açıklama: Gerekli; satış vergi oranı.

discount_rate: Tip: numeric Açıklama: Opsiyoneldir; iskonto oranı.

quantity: Tip: numeric Açıklama: Gerekli; stok miktarı. Ürün güncellemede kullanılmaz.

quantity_type: Tip: string Açıklama: Opsiyoneldir; miktar tipi (Mililitre, Adet, Litre). Ürün güncellemede kullanılmaz.

min_stock: Tip: numeric Açıklama: Opsiyoneldir; minimum stok uyarısı.

address_id: Tip: integer Açıklama: Gerekli; ürün stoğunun aktarılacağı depo bilgisi. Ürün güncellemede kullanılmaz.

is_second_hand: Tip: numeric Açıklama: Opsiyoneldir; ikinci el durumu.

c) Ürün Stok Güncelleme

POST /products/stock-exchange

Açıklama: Bu endpoint, belirtilen ürünün stok miktarını günceller.

{
    "external_id": "82919",
    "address_id": 40,
    "quantity": 110,
    "cost": 3000,
    "vat": 20,
    "total_vat": 2500,
    "note": "satış nedeniyle yapılan güncelleme",
    "date": "2024-12-05"
}

Validation Kuralları

external_id: Tip: string Açıklama: Gerekli; stoğu değiştirilecek ürünün Harici ID bilgisi.

address_id: Tip: integer Açıklama: Opsiyoneldir; depo ID. Eğer address_id gönderilirse, gönderilen stok o depodaki stok kabul edilir; gönderilmezse toplam stok olarak kabul edilir.

quantity: Tip: integer Açıklama: Gerekli; ürünün güncel stok bilgisi.

cost: Tip: numeric Açıklama: Opsiyoneldir; ürün maliyetini belirtir (KDV dahil).

vat: Tip: numeric Açıklama: Opsiyoneldir; KDV oranı.

total_vat: Tip: numeric Açıklama: Opsiyoneldir; KDV tutarı.

note: Tip: string Açıklama: Opsiyoneldir; stok hareketinde gösterilecek not.

date: Tip: date-format: Y-m-d Açıklama: Opsiyoneldir; "Y-m-d" formatında olmalıdır. Gönderilmezse işlem tarihi olarak istek zamanı kullanılır.

Hizmetler

a) Hizmetler Listesi

GET /services

Açıklama: Ürünlerden ayrı olarak hizmet bilgilerini içerir. Fiyatlama bilgileri products ile aynıdır.

b) Hizmet Oluşturma/Güncelleme

POST /services/create

Açıklama: Bu endpoint, yeni bir hizmet oluşturur veya var olan hizmeti günceller. Eğer halihazırda, gönderilen external_id ile aynı external_id'ye sahip bir hizmet varsa güncelleme işlemi yapılır, yoksa yeni hizmet oluşturulur.

{
    "name": "Servis Adı",
    "external_id": "Harici ID",
    "category_id": 1,
    "price": 100.0,
    "vat": 20,
    "total_vat": 20.0
}

Validation Kuralları

name: Tip: string Açıklama: Gerekli; hizmetin adını belirtir ve boş bırakılamaz.

external_id: Tip: string Açıklama: Gerekli; harici sistemlerde hizmeti eşleştirmek için kullanılan benzersiz ID.

category_id: Tip: integer Açıklama: Gerekli; mevcut bir kategoriye işaret eden kategorinin ID'si.

price: Tip: numeric Açıklama: Gerekli; hizmetin vergi hariç fiyatı.

vat: Tip: numeric Açıklama: Gerekli; hizmete uygulanan vergi oranı.

total_vat: Tip: numeric Açıklama: Gerekli; hizmete uygulanan toplam vergi miktarı.

Tedarikçiler

GET /suppliers

Açıklama: Tedarikçi bilgilerini içerir.

Örnek Response Body:

{
    "id": "Tedarikçi unique ID bilgisi",
    "firm_id": "Tedarikçinin ait olduğu firmanın unique ID bilgisi",
    "title": "Tedarikçi ünvan bilgisi",
    "name": "Tedarikçi yetkisinin isim bilgisi",
    "surname": "Tedarikçi yetkisinin soyisim bilgisi",
    "phone": "Tedarikçi telefon bilgisi",
    "phone_2": "Tedarikçi alternatif telefon bilgisi",
    "email": "Tedarikçi email bilgisi",
    "city": "Tedarikçi il bilgisi",
    "county": "Tedarikçi ilçe bilgisi",
    "county_id": "Tedarikçi ilçe unique ID bilgisi",
    "city_id": "Tedarikçi il unique ID bilgisi",
    "address": "Tedarikçi adres bilgisi",
    "tax_office": "Tedarikçi vergi dairesi bilgisi",
    "tax_no": "Tedarikçi vergi no bilgisi",
    "photo": "Tedarikçi görseli dosya adı bilgisi",
    "flowing_customer_id": "Tedarikçinin cari olarak bağlı olduğu müşterinin unique ID bilgisi",
    "created_at": "Tedarikçinin oluşturulduğu tarih bilgisi",
    "updated_at": "Tedarikçinin son güncellendiği tarih bilgisi"
}

İş Emirleri

GET /orders

Açıklama: Müşteri-şirket, araç, verilen hizmet & satılan ürünler bilgilerini içerir.

İş Emri Durumları:

  • Açık İş Emri: status=0, is_offer=0
  • Teklif İş Emri: status=0, is_offer=1
  • Tamamlanmış İş Emri: status=1

Basket parametresi, sipariş içeriğini belirtir. Eğer "product" değeri boşsa, "service" değerine bakılabilir.

Örnek Response Body:

{
    "id": "Siparişin unique ID bilgisi",
    "customer": "Siparişin ait olduğu müşteri bilgisi",
    "vehicle": "Siparişin ait olduğu aracın bilgisi",
    "basket": "Siparişin sepet içeriğinin bilgisi",
    "total": "Siparişin KDV hariç tutar bilgisi",
    "vat": "Siparişin KDV tutarı bilgisi",
    "discount": "Siparişin KDV hariç indirim tutarı bilgisi",
    "discount_vat": "Siparişte yapılan indirimin KDV tutarı bilgisi",
    "status": "Siparişin tamamlanıp tamamlanmadığının bilgisi",
    "net_worth": "Siparişin KDV dahil toplam tutar bilgisi",
    "payment_type": "Siparişin ödeme türü bilgisi",
    "main_name": "Siparişin ait olduğu müşteri ünvan/ad-soyad bilgisi",
    "sub_name": "Siparişin ait olduğu müşterinin yetkili ad/soyad bilgisi",
    "created_at": "Sipariş tarih bilgisi",
    "year_formatted": "Sipariş tarih bilgisi (d-m-Y formatında)",
    "hour_formatted": "Sipariş saat bilgisi (H:i formatında)",
    "is_formalized": "Sipariş için Lastsis üzerinden e-fatura kesilip kesilmediğinin bilgisi",
    "invoice_id": "Sipariş için kesilen faturanın unique ID bilgisi",
    "note": "Sipariş için alınmış not bilgisi"
}

Filtreleme Parametreleri

  • customer_id
  • company_id
  • start_at: Girilen değerden sonraki tarihlerde oluşturulmuş siparişleri filtreler.
  • end_at: Girilen değerden önceki tarihlerde oluşturulmuş siparişleri filtreler.

* Tarih filtreleri, belirli bir tarih aralığındaki siparişleri filtrelemek için birlikte kullanılabilir.

Cari Hesaplar

GET /transactions

Açıklama: Cari hareket listesini içerir.

Örnek Response Body:

{
    "id": "Hareket unique ID bilgisi",
    "firm_id": "Hareketin ait olduğu firmanın unique ID bilgisi",
    "customer_id": "Hareketin ait olduğu müşterinin unique ID bilgisi",
    "company_id": "Hareketin ait olduğu şirketin unique ID bilgisi",
    "order_id": "Hareketin ait olduğu siparişin unique ID bilgisi",
    "product_supplier_id": "Hareketin ait olduğu tedarikçinin unique ID bilgisi",
    "cost_id": "Hareketin ait olduğu giderin unique ID bilgisi",
    "debt": "Hareketin borç tutar bilgisi",
    "due": "Hareketin ödeme tutar bilgisi",
    "total_vat": "Hareketin ödeme/borç vergi tutarı bilgisi",
    "payment_date": "Hareketin gerçekleştiği tarih bilgisi",
    "payment_type": "Hareketin ödeme türü bilgisi",
    "description": "Hareketin açıklaması",
    "payment_description": "Harekete ait ödeme açıklaması",
    "created_at": "Hareket kaydının oluşturulduğu tarih bilgisi",
    "updated_at": "Hareket kaydının en son güncellendiği tarih bilgisi",
    "invoice_id": "Hareketin ait olduğu faturanın unique ID bilgisi",
    "bank_transaction_id": "Hareketin ait olduğu faturanın unique ID bilgisi",
    "is_tevkifat": "Hareketin tevkifatlı faturaya ait olup olmadığının bilgisi",
    "paid_invoice_id": "Hareketin gider fatura unique ID bilgisi",
    "is_manuel_payment": "Hareketin kullanıcı tarafından manuel olarak eklenip eklenmediğinin bilgisi",
    "is_transfer": "Hareketin virman hareketine ait olup olmadığının bilgisi",
    "payment_id": "Hareketin bağlı olduğu sanal pos hareketininin unique ID bilgisi",
    "dispatch_list_id": "Hareketin bağlı olduğu irsaliyenin unique ID bilgisi",
    "firm_pos_info_id": "Hareketin bağlı olduğu pos unique ID bilgisi",
    "receivable_id": "Hareketin bağlı olduğu vadeli ödeme/alacak unique ID bilgisi",
    "user_id": "Hareketi oluşturan kullanıcının unique ID bilgisi",
    "cash_box_flowing_id": "Hareketin bağlı olduğu kasa hareketinin unique ID bilgisi",
    "transfer_flowing_id": "Hareketin bağlı olduğu virman banka hareketinin unique ID bilgisi",
    "transfer_cash_box_flowing_id": "Hareketin bağlı olduğu virman kasa hareketinin unique ID bilgisi",
    "customer": "Hareketin bağlı olduğu müşteri bilgileri",
    "company": "Hareketin bağlı olduğu şirket bilgileri",
    "order": "Hareketin bağlı olduğu sipariş bilgileri",
    "firm_pos_info": "Hareketin bağlı olduğu pos bilgileri",
    "cost": "Hareketin bağlı olduğu gider bilgileri",
    "dispatch_list": "Hareketin bağlı olduğu irsaliye bilgileri"
}

Filtreleme Parametreleri

  • customer_id
  • company_id

Stok Hareketleri

GET /inventory-transactions

Açıklama: Stok hareketlerini içerir.

Response Fields

  • changing: Stok hareketini temsil eder. Örneğin; 20 adet ürün girişi için 20, çıkış için -20.
  • quantity: Stok hareketi sonrası kalan toplam sayı.
  • product: İşlem yapılan ürün.
  • product_supplier: İşlem yapılan tedarikçi.
  • dispatch_list: İşlem yapılan irsaliye bilgisi.

Stok hareketi türü, quantity_type bölümünden alınabilir. Sebep bilgisi reason parametresindedir.

Ürün Kategorileri

GET /product-categories

Açıklama: Ürün kategorileri bilgilerini içerir.

Örnek Response Body:

{
    "id": "Ürün kategorisi unique ID bilgisi",
    "title": "Ürün kategorisi isim bilgisi",
    "description": "Ürün kategorisi açıklaması"
}

Hizmet Kategorileri

GET /service-categories

Açıklama: Hizmet kategorileri bilgilerini içerir.

Örnek Response Body:

{
    "id": "Hizmet kategorisi unique ID bilgisi",
    "name": "Hizmet kategorisi isim bilgisi"
}

Lastik Markaları

GET /tires/brands

Açıklama: Lastik markaları bilgilerini içerir.

Örnek Response Body:

{
    "id": "Lastik markası unique ID bilgisi",
    "title": "Lastik markası isim bilgisi"
}

Ürün Markaları

GET /product-brands

Açıklama: Ürün markaları bilgilerini içerir.

Örnek Response Body:

{
    "id": "Ürün markası unique ID bilgisi",
    "title": "Ürün markası isim bilgisi"
}

Depolar

GET /addresses

Açıklama: Firmaya ait depo bilgilerini içerir.

Örnek Response Body:

{
    "id": "Depo unique ID bilgisi",
    "name": "Depo isim bilgisi",
    "address": "Depo adres bilgisi",
    "city": "Depo il bilgisi",
    "county": "Depo ilçe bilgisi"
}

Faturalar

GET /invoices

Açıklama: Firmaya ait faturaları listeler.

Filtreleme

Response'daki tüm alanlar için filtreleme yapılabilir. Örneğin ?filter[issue_date]=2024-10-16 ile belirli tarihteki faturalar, veya ?filter[issue_date][start]=2024-01-01&filter[issue_date][end]=2024-12-31 ile belirli tarih aralığı filtrelenebilir.

Response Fields

  • type: faturanın yön tipini belirtir. "incoming" gelen fatura, "outgoing" giden faturayı temsil eder.
  • sender: Gönderici TCKN/VKN
  • receiver: Alıcı TCKN/VKN
  • supplier: Gönderici ünvanı
  • customer: Alıcı ünvanı
  • issue_date: Fatura tarihi
  • cdate: Fatura oluşturma tarihi.
  • rows: Fatura kalemleri.
    • discount_without_tax: vergi hariç indirim tutarı.
    • buyer_item_identification: ürün stok kodu.
    • seller_item_identification: alternatif ürün stok kodu.
    • manufacturer_item_identification: alternatif ürün stok kodu.

Banka Hareketleri

POST /bank/create-transaction

Açıklama: Bu endpoint, yeni bir banka hareketi oluşturur.

{
    "sender_iban": "TR330006100519786457841326",
    "sender_bank_name": "Ziraat Bankası",
    "sender_bank_code": "0010",
    "sender_account_code": "12345678",
    "sender_urf": "URF20250110",
    "sender_currency": "TRY",
    "sender_currency_code": "949",
    "receiver_title": "Ahmet Yılmaz",
    "receiver_iban": "TR220006100519786457841325",
    "receiver_bank_code": "0004",
    "receiver_bank_name": "Halkbank",
    "receiver_account_number": "87654321",
    "amount": 1500.50,
    "balance": 25000.75,
    "transaction_description": "Fatura ödemesi",
    "transaction_mt940_function_code": "NMSC",
    "transaction_direction": 1,
    "transaction_reference_code": "TRX20250110",
    "transaction_date": "2025-01-01 15:48:53"
}

Validation Kuralları

sender_iban: Tip: string Açıklama: Opsiyonel; göndericiye ait IBAN numarası.

sender_bank_name: Tip: string Açıklama: Opsiyonel; göndericinin bankasının adı.

sender_bank_code: Tip: string Açıklama: Opsiyonel; gönderici bankasına ait kod.

sender_account_code: Tip: string Açıklama: Opsiyonel; göndericinin hesap numarası.

sender_urf: Tip: string Açıklama: Opsiyonel; gönderici URF kodu.

sender_currency: Tip: string Açıklama: Opsiyonel; gönderici hesabının döviz türü (TRY, USD, EUR vb.).

sender_currency_code: Tip: string Açıklama: Opsiyonel; göndericinin döviz kodu.

receiver_title: Tip: string Açıklama: Opsiyonel; alıcının ünvanı.

receiver_iban: Tip: string Açıklama: Opsiyonel; alıcıya ait IBAN numarası.

receiver_bank_code: Tip: string Açıklama: Opsiyonel; alıcı bankasına ait kod.

receiver_bank_name: Tip: string Açıklama: Opsiyonel; alıcı banka adı.

receiver_account_number: Tip: string Açıklama: Opsiyonel; alıcı hesap numarası.

amount: Tip: numeric Açıklama: Opsiyonel; işleme ait toplam tutar.

balance: Tip: numeric Açıklama: Opsiyonel; işlem öncesi/sonrası bakiye.

transaction_description: Tip: string Açıklama: Opsiyonel; işleme ait açıklama.

transaction_mt940_function_code: Tip: string Açıklama: Opsiyonel; MT940 fonksiyon kodu.

transaction_direction: Tip: integer Açıklama: Opsiyonel; işlemin yönü. Giden: 0, Gelen: 1.

transaction_reference_code: Tip: string Açıklama: Opsiyonel; işlemin referans kodu.

transaction_date: Tip: string Açıklama: Opsiyonel; tarih Y-m-d H:i:s formatında olmalıdır.

Önemli

Önemli : Entegrasyonda kullanılacak Token, 3.Parti Yazılım Entegrasyon Modüne sahip olan firmalarda, Firmanın Kullanıcı ayarları altında, Entegrasyon Kullanıcı açarak ve bu kullanıcıya bağlı olarak üretilebilir.

Token