FarmaBorsa API Dokümanı

Content-Type:application/json


İlan Ekleme
URL: api/Entegre/IlanKaydet
Post Edilecek Model;
public class ilanInput
{
   public string apiKey { get; set; }
   public string parola { get; set; }
   public string nick { get; set; }
   public int ilan { get; set; }
   public string urunErp { get; set; }
   public string urunAd { get; set; }
   public string barkod { get; set; }
   public int adet { get; set; }
   public int maxAdet { get; set; }
   public DateTime miad { get; set; }
   public int miadTip { get; set; }
   public decimal tutar { get; set; }
   public int aktif { get; set; }
   public bool borsadaGoster { get; set; }
   public string resimUrl { get; set; }
   public bool maxAdetGorunsun { get; set; }
   public decimal kdv { get; set; }
   public decimal psf { get; set; }
   public string kategoriAd { get; set; }
   public string markaAd { get; set; }
}

Dönecek Model;
public class ilanOutput
{
   public int urunTalep { get; set; }
   public int urun { get; set; }
   public int ilan { get; set; }
   public bool hata { get; set; }
   public string mesaj { get; set; }
}
                           
Açıklamalar

· Hata true ise bir sorun vardır. Mesaj kısmını dikkate alınız.
· İlan 0 dan farklıysa; gönderdiğiniz ilan bilgilerine karşılık gelecek şekilde kaydediniz. Bu kodu ilanda güncelleştirme yaparken göndereceksiniz. (bize post ederken ilan 0 gönderirseniz yeni ilan olarak kayıt açılacaktır.)
· İlan 0 sa farklıysa; urunTalep kodunu kaydediniz. Yayınlamak istediğiniz ilanınız “Ürün Kartı Talebine” düşmüş demektir. Talep onaylandığında ilan yayınlanacaktır. İlan durumunu öğrenmek için 3. Sayfadaki dökümanı inceleyiniz.

Postman örneği;
{             
   "nick": "",      
   "parola": "", --parolanız      
   "apiKey": "", --size ait api key      
   "ilan": 0,    -- 0 gönderirseniz ilan insert edilir.  
   "urunErp": "",  farmaborsa ile kendi tarafınızdaki ilişkilendirdiğiniz ürün kartı kodu. farmaborsa.com ilanlarım üzerinden erp kodu ilişkilendirme yapabilirsiniz. 
   "urunAd": "test",       
   "barkod": "345333453",       
   "adet": "5",       
   "maxAdet": "",       -- bir sepette satılacak maksimum adet. Zorunlu değildir. 
   "miad": "",   -- miad tarihi (DateTime formatında)
   "miadTip": "1", --1 se miad tarihli miad kullanılır, 2 se 12 Aydan Az, 3 se 12 Aydan Fazla   
   "tutar": "89.50",       
   "aktif": "1",  -- aktif 1 ise ilan doğrudan yayınlanır. 0 ise yayında olmayan ilanlarınızda görünür
   "resimUrl": "https://cdn.farmaborsa.com/resimurl.jpg", -- ilan resmi yok ise buradaki alan dikkate alınır ve gerekli işlemler yapılır. 
}
                              
İlan Ürün Talep
URL: api/Entegre/UrunTalepDurum
Post Edilecek Model;
public class urunTalepInput
{
   public string nick { get; set; }
   public string parola { get; set; }
   public string apiKey { get; set; }
   public int urunTalep { get; set; }
}

Dönecek Model;
public class urunTalepOutput
{
   public int urunTalep { get; set; }
   public int ilan { get; set; }
   public bool hata { get; set; }
   public string mesaj { get; set; }
}
                           
Açıklamalar

Size dönülen urunTalep koduyla input class doğrultusunda url post ediniz. Yanıt tipi output class ındaki verilerden alabilirsiniz.

İlanlarım Listesi
URL: api/Entegre/IlanlarimListesi
Post Edilecek Model;
public class input
{
   public string nick { get; set; }
   public string parola { get; set; }
   public string apiKey { get; set; }
   public int pasif { get; set; }
}

Dönecek Model;
public class urunTalepOutput
{
   public int urunTalep { get; set; }
   public int ilan { get; set; }
   public bool hata { get; set; }
   public string mesaj { get; set; }
}
                           
Postman örneği;
{
  "nick": "kullaniciAdiniz",
  "parola": "parolaniz",
  "apiKey": "keyBilginiz",
  "pasif": 0
}
Postman sonuç örneği;
{
  "hata": false,
  "mesaj": "BAŞARILI",
  "ilanlarimList": [
    {
      "sira": 1,
      "kod": 84380,
      "urunAd": "DAYLONG ACTINICA GUNES",
      "adet": 100,
      "maxAdet": 100,
      "op": 1462,
      "tutar": 78.9,
      "borsadaGoster": false,
      "urun": 40114,
      "miad": "1-2022",
      "miadText": "01-2022",
      "miadTip": 1,
      "miadTipAd": "Standart",
      "barkod": "7612076396470",
      "psf": null,
      "tutarAd": "78.90 TL",
      "resimUrl": "https://cdn.farmaborsa.com/Media/Urunler/40114/-80-ml.jpg"
    }
  ]
}
Açıklamalar

Hata true ise bir sorun vardır. Mesaj kısmını dikkate alınız.
* Parametre olarak "ilan":123 ilan numarasını post ederseniz sadece bu ilan numarasına ait ilan detayı döner.

Sipariş Listesi Detaylı
URL: api/Entegre/SiparisListesi
Post Edilecek Model;
public class input
{
   public string nick { get; set; }
   public string parola { get; set; }
   public string apiKey { get; set; }
   public int satisDurum { get; set; }
   public int satisKod { get; set; }
   public int sayfa { get; set; }
   public DateTime baslama { get; set;}
   public DateTime bitis { get; set; }
}



satisDurum
1-Yeni Sipariş
2-Onaylandı
3-Kargolandı
4-Teslim Edildi
5-Alıcı Onayladı
8-İptal Edildi

satisKod (zorunlu değil)
satisKod var ise sadece o satış bilgisi (satisDurum dan bağımsız çalışır)
baslama ve bitis (zorunlu değil)
baslama ve bitis tarih format bilgisi: ay.gün.yıl (örnek 05.30.2021)

Dönecek Model;

Kullanıcı bazında sipariş bilgi
public class siparisBilgi
{
   public int satisKod { get; set; }
   public DateTime tarih { get; set; }
   public string utsNo { get; set; }
   public string nick { get; set; }
   public string ad { get; set; }
   public string unvan { get; set; }
   public string faturaUnvan { get; set; }
   public string adres { get; set; }
   public string tel { get; set; }
   public string vNo { get; set; }
   public string vDaire { get; set; }
   public string tc { get; set; }
   public string ePosta { get; set; }
   public string kargoBarkod { get; set; }
   public string kargoAd { get; set; }
   public decimal toplam { get; set; }
   public decimal kdvToplam8 { get; set; }
   public decimal kdvToplam18 { get; set; }
   public decimal genelToplam { get; set; }
   public List ilanList { get; set; }
}
                           
Kullanıcı bazında siparişlerin ilan bilgileri
public class ilan
{
   public int kod { get; set; }
   public int urun { get; set; }
   public string urunAd { get; set; }
   public string barkod { get; set; }
   public int kdv { get; set; }
   public string miad { get; set; }
   public int adet { get; set; }
   public bool kargoUcretiUrunu { get; set; }
   public decimal birimFiyat { get; set; }
   public decimal netFiyat { get; set; }
   public decimal netToplam { get; set; }
}

Postman örneği;
{
  "nick": "kullaniciAdiniz",
  "parola": "parolaniz",
  "apiKey": "keyBilginiz",
  "pasif": 0
}
Açıklamalar

· Hata true ise bir sorun vardır. Mesaj kısmını dikkate alınız.
· Birim Fiyat kdv dahil fiyatıdır.
· İlan bilgilerinde "kargoUcretiUrunu" true dönerse o ürün sipariş için kargo fiyatı olarak kullanılır. Satıcı kargoyu kendi anlaşması üzerinden göndereceği durum olursa ve alıcıdan tahsil edilirse kargo ücreti satıcıya aktarılır. Bu yüzden satıcıya tahsil edilen kargo ücreti de yatırılacağı için, satıcı kargo ücretini de faturalandırmalıdır.

Durum Bazında Satış Listesi
URL: api/Entegre/satisDurumBazindaSatisListesi
Post Edilecek Model;
public class input
{
   public string nick { get; set; }
   public string parola { get; set; }
   public string apiKey { get; set; }
}
Açıklamalar

· Hata true ise bir sorun vardır. Mesaj kısmını dikkate alınız.

Satışı Onay-İptal Yapma
URL: api/Entegre/SiparisOnayIptalIslem
Post Edilecek Model;
public class siparisIslemInput
{
   public string apiKey { get; set; }
   public string nick { get; set; }
   public string parola { get; set; }
   public int satisKod { get; set; }
   public bool iptal { get; set; }  //sipariş onaylanacaksa false, iptalse true
   public int satisDurumDegistirmeSebep { get; set;} //kodları aşağıda belirtiliyor
   public string aciklama { get; set; } //açıklama varsa yazılabilir. Boş geçilebilir bir alan
}
Açıklamalar

· Hata true ise bir sorun vardır. Mesaj kısmını dikkate alınız.
SİPARİŞ İPTALSE;
satisDurumDegistirmeSebep bilgileri:
· Ürün Stokta Kalmadı. (Kod:7)
· Sorun Oluştu. (Kod:8)
· Diğer. (Kod:10)

Kargo Çıktısı Link Oluşturma
URL: api/Entegre/KargoLinkiOlusturma
Post Edilecek Model;
public class kargoLinkInput
{
   public string apiKey { get; set; }
   public string nick { get; set; }
   public string parola { get; set; }
   public int satisKod { get; set; }
}
Dönen Model;
public class kargoLinkOutput
{
   public bool hata { get; set; }
   public string mesaj { get; set; }
   public string link { get; set; }
}
Açıklamalar

· Hata true ise bir sorun vardır. Mesaj kısmını dikkate alınız.
satisDurumDegistirmeSebep bilgileri:
· Ürün Stokta Kalmadı. (Kod:7)
· Sorun Oluştu. (Kod:8)
· Diğer. (Kod:10)

Sipariş Listesi Alıcı İçin
URL: api/Entegre/SiparisListesiAlici
Post Edilecek Model;
public class input
{
   public string nick { get; set; }
   public string parola { get; set; }
   public string apiKey { get; set; }
   public int satisDurum { get; set; }
   public DateTime baslama { get; set;}
   public DateTime bitis { get; set; }
   public int satisKod { get; set; }
}
satisDurum Bilgisi:

10-Hepsi
0-Yeni Sipariş, Onaylandı, Kargolandı
1-Yeni Sipariş
2-Onaylandı
3-Kargolandı
4-Teslim Edildi
5-Alıcı Onayladı
8-İptal Edildi

baslama ve bitis tarih format bilgisi: ay.gün.yıl (örnek 05.30.2021)

satisKod bilgisi: satisKod var ise sadece o satış bilgisi (satisDurum dan bağımsız çalışır)

Dönen Model;

Kullanıcı bazında sipariş bilgi
public class siparisBilgi
{
   public int satisKod { get; set; }
   public DateTime tarih { get; set; }
   public string nick { get; set; }
   public string utsNo { get; set; }
   public string satisDurumAd { get; set; }
   public string kargoBarkod { get; set; }
   public string kargoAd { get; set; }
   public string satFaturaUrl { get; set; }
   public decimal toplam { get; set; }
   public decimal kdvToplam8 { get; set; }
   public decimal kdvToplam18 { get; set; }
   public decimal genelToplam { get; set; }
   public List ilanList { get; set; }
}
Kullanıcı bazında siparişlerin ilan bilgileri
public class ilan
{
   public int kod { get; set; }
   public int urun { get; set; }
   public string urunAd { get; set; }
   public string barkod { get; set; }
   public int kdv { get; set; }
   public string miad { get; set; }
   public int adet { get; set; }
   public decimal birimFiyat { get; set; }
   public decimal netFiyat { get; set; }
   public decimal netToplam { get; set; }
}
Açıklamalar

· Hata true ise bir sorun vardır. Mesaj kısmını dikkate alınız.
· Birim Fiyat kdv dahil fiyatıdır.

Sipariş Adet Güncelleme
URL: api/Entegre/SiparisMiktarDegistirerekOnaylaTalep
Post Edilecek Model;
public class input
{
   public string nick { get; set; }
   public string parola { get; set; }
   public string apiKey { get; set; }
   public string satisMiktarOnayList { get; set; }
   public int satisKod { get; set; }
}
Dönen Model;
public class kargoLinkOutput
{
   public bool hata { get; set; }
   public string mesaj { get; set; }
   public string link { get; set; }
}
Açıklamalar

· Hata true ise bir sorun vardır. Mesaj kısmını dikkate alınız.
satisMiktarOnayList Bilgisi:
UYARI:siparişe ait tüm ürünleri burada göndermek zorundasınız!

Göndereceğiniz veri string'tir. Aşağıda bir örnek mevcuttur. 2 adet ürün olan bir sipariş örneği:
"10000-2,10001-4" sipariş 2 ürün ve biri 2 adet diğeri 4 adet ten oluştuğunu varsayalım. "10000-0,10001-3" adet değişime göndereceğiniz örnek
* 10000: satışKoda ait kod alanlarıdır. 4. Kitaplıkta Sipariş listesinde tarafınıza dönen "satis" alanını göndereceksiniz. * 0: 10000 satış ına ait gönderebileceğiniz ürün miktarı

* 10001: satışKoda ait kod alanlarıdır. 4. Kitaplıkta Sipariş listesinde tarafınıza dönen "satis" alanını göndereceksiniz. * 3: 10001 satış ına ait gönderebileceğiniz ürün miktarı

Satılan Sipariş Faturası
URL: https://wapi.farmaborsa.com/Entegre/SatFaturaKaydet
Post Edilecek Model;
public class input
{
   public string nick { get; set; }
   public string parola { get; set; }
   public string apiKey { get; set; }
   public int satisKod { get; set; }
   public string dosyaUrl { get; set; }
}
Açıklamalar

· Hata true ise bir sorun vardır. Mesaj kısmını dikkate alınız.
· Alıcı sistem üzerinden siparişinin faturasını görüntüleme amacıyla kullanılmaktadır.

Ürün Erp Kaydet
URL: api/Entegre/UrunErpKaydetme
Post Edilecek Model;
public class input
{
   public string nick { get; set; }
   public string parola { get; set; }
   public string apiKey { get; set; }
   public int ilan { get; set; }
   public string urunErp { get; set; }
}
Açıklamalar

· Hata true ise bir sorun vardır. Mesaj kısmını dikkate alınız.
· Alıcı sistem üzerinden siparişinin faturasını görüntüleme amacıyla kullanılmaktadır.