Skip to main content
POST
Teklif oluştur
Teklif, satırları ve satırların indirimleri tek transaction’da yazılır: herhangi biri geçersizse hiçbiri kaydedilmez, bütün hatalar tek Message’da döner. Satır hataları satır numarasıyla başlar, örneğin Line 2: Quantity must be greater than 0.

Alan kuralları

Zorunlu alanlar, satırlar, durum ve paylaşım.

Hesaplamalar

Tutarlar ve toplamlar nasıl hesaplanır.
API tutarları hesaplamaz ve tutarlı olup olmadıklarını denetlemez. Satır tutarlarını ve toplamları kendi sisteminizin hesapladığı gibi gönderin.
  • QuoteNumber yerine "Next" gönderilirse numara, teklif tipinin numara serisinden üretilir.
  • Teklif 0 (beklemede) durumuyla oluşturulur.
  • Başarılı yanıt 201 Created döner; Location header’ı yeni teklifi gösterir.

Hata kodları

Bu endpoint’in dönebileceği kodlar. Her endpoint için geçerli olan genel hatalar (kimlik doğrulama, yetki, istek header’ları, günlük limit) burada tekrarlanmaz.

Yetkilendirmeler

Authorization
string
header
gerekli

Access token obtained from the Noyax auth service with your API key.

Başlıklar

X-UserID
integer<int32>
gerekli

İsteğin adına yapıldığı Noyax kullanıcısının ID'si. Oluşturulan, güncellenen ve silinen kayıtların denetim alanlarına yazılır.

Gerekli aralık: x >= 1
X-CompanyID
integer<int32>
gerekli

Şirketin ID'si. Kullanıcı bu şirkete tanımlı olmalıdır. Bütün okuma ve yazma işlemleri bu şirketle sınırlıdır.

Gerekli aralık: x >= 1
X-PeriodID
integer<int32>

Muhasebe döneminin ID'si. Cari endpoint'lerinde isteğe bağlıdır; gönderilirse oluşturulan kayıtlara yazılır.

Gerekli aralık: x >= 1

Gövde

QuoteType
integer<int32>

Zorunlu. 1: Alış teklifi (alınan), 2: Satış teklifi (verilen). Teklif oluşturulduktan sonra değiştirilemez.

Örnek:

2

QuoteNumber
null | string

Zorunlu. Teklif numarası, şirkette aynı QuoteType için benzersiz. Oluştururken "Next" gönderilirse şirketin o tip için teklif numarası serisinden üretilir. En fazla 10 karakter.

Örnek:

"52825CA9F1"

DocumentNumber
null | string

Belge numarası (serbest metin). En fazla 20 karakter.

Örnek:

"2026-15"

Date
null | string<date-time>

Zorunlu. Teklif tarihi. Tarih kısmı teklif tarihi olarak saklanır; saat gönderilirse teklif saati olarak saklanır, gönderilmezse şimdiki saat kullanılır.

Örnek:

"2026-09-21T10:30:00"

Description
null | string

Açıklama. En fazla 1000 karakter.

CustomerId
null | string<uuid>

Zorunlu. GET /api/v1/customers'tan alınan cari ID'si.

RepresentativeId
null | string<uuid>

Carinin yetkililerinden birinin ID'si (GET /api/v1/customers/{customerId}/representatives).

CurrencyId
null | string<uuid>

Zorunlu. GET /api/v1/definitions/currencies'ten alınan döviz ID'si.

DueDays
integer<int32>

Gün olarak vade. 0'dan küçük olamaz.

Örnek:

30

DeliveryDate
null | string<date-time>

Teslim tarihi.

SharingCodeId
null | string<uuid>

Teklifi kimin görebileceğini sınırlayan paylaşım kodu. Boşsa herkes görebilir; doluysa kullanıcının paylaşım kodlarından biri olmalıdır.

DiscountTotal
number<double>

Toplam indirim tutarı. Entegratör tarafından gönderilir, API hesaplamaz.

Örnek:

0

SubTotal
number<double>

Ara toplam (satır tutarlarının vergisiz toplamı). Entegratör tarafından gönderilir, API hesaplamaz.

Örnek:

1000

VatTotal
number<double>

Toplam KDV tutarı. Entegratör tarafından gönderilir, API hesaplamaz.

Örnek:

200

AdditionalTaxTotal
number<double>

Toplam ek vergi tutarı. Entegratör tarafından gönderilir, API hesaplamaz.

Örnek:

0

WithholdingTotal
number<double>

Toplam tevkifat tutarı. Entegratör tarafından gönderilir, API hesaplamaz.

Örnek:

0

GrandTotal
number<double>

Genel toplam. Entegratör tarafından gönderilir, API hesaplamaz.

Örnek:

1200

AverageExchangeRate
number<double>

Satırların ağırlıklı ortalama kuru. Entegratör tarafından gönderilir, API hesaplamaz. Her şey şirketin varsayılan dövizindeyse 1 kullanın.

Örnek:

1

Lines
object[]

Zorunlu, en az bir satır. Güncellemede satırlar değiştirilir: teklifin mevcut satırları kaldırılır, yerine bunlar kaydedilir.

Yanıt

Created

Success
boolean
gerekli

İşlemin başarılı olup olmadığı.

Örnek:

true

ResultCode
string
gerekli

Başarıda "0000". Hatada ilk hatanın kodu; hataların tamamı Errors içinde listelenir.

Örnek:

"0000"

Data
object
gerekli

Response data. Null when Success is false.

Message
null | string

Success false olduğunda hata mesajı. Bütün hataların mesajları tek metinde birleştirilir.