Ortam Bilgileri
Canlı ortam : https://orderintegration.farmazonrx.com.tr/api/v1
User-Agent Header Kullanımı
Aşağıda yer alan tüm istekler için user-agent http header dolu gelmesi beklenir.
SignIn Metodu
Sipariş listelerini çağırmadan önce token alınmalıdır. Alınan token Bearer token olup daha sonra sipariş listesi için atılacak istekte Authorization header ile gönderilecektir. Varsayılan olarak bu token 1 gün ömürlüdür.
Aşağıdaki gibi çağırılan bu istek bir POST isteğidir ve Header içerisine user-agent eklenmelidir. https://staging-orderintegration.test.farmazonrx.com.tr/api/v1/signin
İstek Parametreleri
Başlık | Zorunlu | Tip | Açıklama |
requestId | evet | string(max 32 char) | Her istek ile gelecek olan benzersiz id bilgisi loglama amaçlıdır. |
userName | evet | string | Eczanenin farmazonrx'e login olmasını sağlayan kullanıcı adı |
password | evet | string | Eczanenin farmazonrx'e login olmasını sağlayan şifresi |
accessKey | evet | string | İstekte bulunan uygulamayı tanımlayan anahtar |
secretKey | evet | string | İstekte bulunan uygulamayı doğrulayan anahtar |
Dönüş Parametreleri
Başlık | Tip | Açıklama |
result | object | İstek özelinde gerçek cevabı belirtir. Aşağıda detaylandırılmıştır. |
success | boolean | İstek için başarılı/başarısız ayrımını belirtir. |
statusCode | int | http code bilgisi. |
errorCode | string | Farmazon-RX tarafındaki hata kodu. |
errors | array(string) | Farmazon-RX tarafındaki hata açıklamaları. |
Yukarıdaki dönüş formatı FarmazonRX tarafından kullanılan temel dönüş formatıdır (response container), token isteğine özel cevabın detayları result içinde aşağıdaki gibidir.
Başlık | Tip | Açıklama |
requestId | string | İstek ile gönderilen ping-pong değer |
token | string | Token değeri |
expirationDate | date | Token için son geçerlilik tarihi |
Örnek Request ve Response https://staging-orderintegration.test.farmazonrx.com.tr/api/v1/signin (POST)
Order/List Metodu
Sipariş listesi, çeşitli filtreler uygulanarak aşağıdaki GET isteği alınabilir https://staging-orderintegration.test.farmazonrx.com.tr/api/v1/orders/buyer/list Header içerisine user-agent ve authorization eklenmelidir.
İstek Parametreleri
Başlık | Zorunlu | Tip | Açıklama |
requestId | evet | string (max 32 char) | Her istek ile gelecek olan benzersiz id bilgisi loglama amaçlıdır. |
pageIndex | hayır | int (> 0) | Büyük veri setlerinde performans amaçlı kullanılmak üzere sayfalama yapılabilir. Bu parametre ile istenilen sayfa alınabilir, default değeri 1'dir ve 1 ilk sayfayı ifade eder. |
pageSize | hayır | int(>0) | pageIndex parametresi ile birlikte kullanılır. Zorunlu olmamakla birlikte default değeri 100'dir. Yani bu iki değer girilmediğinde ilk 100 kayıt döner. |
state | hayır | int | 0 = Tüm Siparişler (default) 1 = Yeni Sipariş 2 = Onaylandı 3 = Teslimat Sürecinde 4 = İptal Edildi 5 = Tamamlandı |
startDate | hayır | date | Sipariş listesi için başlangıç tarihi, boş bırakılırsa 7 gün öncesi olarak tanımlanır. |
endDate | hayır | date | Sipariş listesi için bitiş tarihi, boş bırakılırsa bugün olarak tanımlanır ve başlangıç tarihinden büyük olmalıdır. |
Dönüş Parametreleri
Başlık | Tip | Açıklama |
requestId | string | ping-pong değer, istek ile gönderilen değer geri verilir. |
orders | object array | sipariş listesi |
pageIndex | int | İstek ile gönderilen sayfa numarası. |
pageSize | int | İstek ile gönderilen, bir sayfadaki kayıt adedi. |
totalCount | int | İlgili isteğe ait toplam kayıt adedi, bu adet ve sayfalama değerleri üzerinde sonraki sayfaların çağırılıp çağırılmayacağına karar verilebilir. |
Order içinde aşağıdaki bilgiler yer almaktadır.
Başlık | Tip | Açıklama |
id | string | FarmazonRX sipariş id bilgisi |
price | decimal | Sipariş toplam tutarı (varsa kargo bedeli hariç) |
shipmentPrice | decimal | Alıcının ödediği kargo bedeli |
totalPrice | decimal | Alıcının ödediği toplam tutar (price + shipmentPrice) |
refundPrice | decimal | iade edilen tutar (toplam tutar üzerinden, yani kargo bedeli varsa ve iade olmuşsa bu rakama dahildir) |
state | int | 1 = Yeni Sipariş 2 = Onaylandı 3 = Teslimat Sürecinde 4 = İptal Edildi 5 = Tamamlandı |
stateDesc | string | Sipariş durumunun açıklaması |
orderDate | datetime | Sipariş verilen tarih |
lastUpdateDate | datetime | Sipariş üzerindeki son güncelleme tarihi |
qrCodes | string array | Sipariş kalemleri için satıcının kaydettiği barkod numaraları |
seller | object | Satıcı bilgileri |
shipment | object | Kargo bilgileri. Bu alan eğer sipariş kargo firması aracılığıyla iletilecekse ve onaylandığı durumunda dolu olur. |
items | object array | Kalem kalem sku bilgileri |
Seller şeması aşağıdaki gibidir
Başlık | Tip | Açıklama |
alias | string | Satıcının FarmazonRX üzerinde gösterilen (alıcının gördüğü) adı |
sellerName | string | Satıcının resmi adı |
gln | string | Satıcının gln'si |
taxNumber | string | Satıcı vergi numarası |
taxOffice | string | Satıcı vergi dairesi |
hasAutomationSupport | bool | Satıcının, alıcının kullandığı otomasyon programına entegrasyonu olup olmadığını belirtir. |
Shipment şeması aşağıdaki gibidir
Başlık | Tip | Açıklama |
code | string | FarmazonRX tarafından üretilen kargo kodu |
companyName | string | Kargo firma adı |
trackingNo | string | Kargo yola çıktığında kargo firmasının bildirdiği takip numarası |
trackingUrl | string | Kargo yola çıktığında kargo firmasının bildirdiği takip adresi |
Item (Sipariş kalemi) şeması aşağıdaki gibidir
Başlık | Tip | Açıklama |
id | int | Sipariş kaleminin FarmazonRX tarafındaki numarası |
referenceId | int | İlanın entegrasyonla gelen referans değeri (eğer ilan entegrasyon üzerinden kaydedilmemişse boş gelir) |
productId | int | Ürünün FarmazonRX tarafındaki numarası |
productName | string | Ürün adı |
barcode | string | Ürünün barkod numarası |
miat | date | İlana ait miat bilgisi |
baseCount | int | İlana ait MF değeri |
freeCount | int | İlana ait MF değeri |
quantity | int | Satın alınan adet (satın alma aşamasındaki toplam adet, daha sonra iadeler olsa da bu alan değişmez, yani orjinal adet bilgisidir.) |
returnQuantity | int | İade edilen adet |
currentQuantity | int | Mevcut adet (quantity - returnQuantity), gönderilecek adet bilgisi budur. |
unitPrice | decimal | Birim fiyat |
totalPrice | decimal | Toplam fiyat (satın alma aşamasındaki toplam fiyat, daha sonra iadeler olsa da bu fiyat değişmez, yani orjinal fiyat bilgisidir) |
refundPrice | decimal | İade edilen fiyat |
currentPrice | decimal | Mevcut toplam fiyat (totalPrice - refundPrice) |
keepPackage | bool | İlanın bölünmez barem olup olmadığına dair flag |
tevzi | bool | İlanın tevzi olup olmadığına dair flag |
returned | bool | Bu kalemin tamamen iade olup olmadığıana dari flag (true ise bu kalem gönderilmeyecek demektir) |
Örnek Request ve Response
Yukarıdaki request ile birlikte Authorization header gönderilir. Alınmış olan token değeri Bearer prefix ile gönderilir.
Hata Örnekleri
Token gönderilmediği durumda alınan hata
Geçersiz token kullanımı
Genel (beklenmeyen) hata
Validasyon hatası (misal requestId boş ise)
*Not *: Swagger dökümantasyonu için Swagger UI adresini ziyaret edebilirisiniz.
Versiyon Geçmişi
Versiyon |
|
v1 | İlk döküman oluşturuldu |
v2 | Order/List metodundan dönen response içinde seller altına hasAutomationSupport alanı eklendi. |










