FarmaBorsa API Dokümanı


İ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 int 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; }
}

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
}
                              
İ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.

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; }
}
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)
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 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.

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.gun.yıl (örnek 09.30.2019)

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 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: 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 int satisKod { get; set; }
   public string dosyaUrl { get; set; }
}
dosyaUrl: kesilen faturanın urlsi

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.

Satılan Sipariş Faturası
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 int 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.