Ana içeriğe atla
POST
Bu çağrı kayıt değiştirir. Idempotency-Key zorunludur. Zaman aşımından sonra yeni anahtarla tekrar başlatmadan işlem durumunu okuyun.

Ne yapar?

E-belgesiz alış veya satış kaydeder; cari bakiyesine etki eder. Tahsilat oluşturmaz ve e-belge göndermez. productId ve warehouseId birlikte verilen satırlar için stok etkisi oluşturur. Serbest satır ürün kartı oluşturmaz.

Ön koşullar ve izin

Gereken izin: muhasip:transactions:write. Bu kaynak için açık izin tanımlanmalıdır; genel erişim veya yönetici yetkisi bu iznin yerine geçmez. İlişkili bütün kimlikler aynı firma kapsamında olmalıdır. Yeni mali kayıt için kullanılan cari, kasa veya hesap aktif olmalıdır. Ürün/depo kimlikleri verilirse geçerli, aynı firmaya ait ve yeni işlem için aktif olmalıdır. Kimlik ve izinler · Muhasebe veri kuralları

İstek örnekleri

Kimlikleri kendi kayıtlarınızla değiştirin. Yazmada iş niyetine özel anahtarı istekten önce saklayın; örnek anahtarını farklı işler için yeniden kullanmayın. Alan ve cevap tanımları bu sayfanın API referansında yer alır.

Cevabı değerlendirin

Aşağıdaki cevap temsilîdir.
İlk başarılı çağrı result ile kayıt sonucunu ve operation ile makbuzu döndürür. Aynı iş anahtarıyla tamamlanmış tekrar 200 ve replayed:true döndürür; ilk ayrıntı gövdesi tekrarlanmaz. Sonuç kimliğiyle ilgili okuma ucunu kullanın. reviewRequired:true sonucunu başarılı mali işlem kabul etmeyin.

Hata durumunda

Hata yönetimi · İşlem takibi

Sonraki adım

Belgeden tahsilata ilerleyin. Dönen kimlikleri ve version değerini saklayın; mali yazma sonrasında ilgili belge ve cari bakiyesini okuyun.

Yetkilendirmeler

Authorization
string
header
gerekli

Kullanıcı adı apiUserId, parola secretKey. Aktif ve süresi geçmemiş API kullanıcısı ve uygun firma gerekir.

Başlıklar

Idempotency-Key
string
gerekli

Her yeni iş niyeti için kalıcı, farklı anahtar. Aynı anahtar+işlem+firma ve farklı içerik 409 üretir; tamamlanmış tekrar 200 replay makbuzu döner.

Required string length: 1 - 128
Pattern: ^[!-~]+$

Gövde

application/json

Tam belge gövdesidir. TRY ve exchangeRate=1 varsayılandır; yabancı para biriminde kur zorunludur. Hesaplanan toplamlar veya sistem alanları kabul edilmez.

contactId
string
gerekli

24 karakterli kayıt kimliği.

Pattern: ^[a-f0-9A-F]{24}$
direction
enum<string>
gerekli
Mevcut seçenekler:
sale,
purchase
issueDate
string<date>
gerekli

YYYY-MM-DD; 1900-01-01–2199-12-31. Saat gönderilmez.

lines
object[]
gerekli
Required array length: 1 - 100 elements
dueDate
string<date>

Varsayılan issueDate; belge tarihinden önce olamaz.

currencyCode
enum<string>

İşlem para birimi. Uygulama tutar hassasiyeti bütün bu birimlerde 2 basamaktır.

Mevcut seçenekler:
TRY,
USD,
EUR,
GBP,
CHF,
CAD,
AUD,
JPY,
CNY,
AED,
SAR,
RUB,
DKK,
NOK,
SEK
exchangeRate

1 birim dövizin TRY karşılığı; pozitif, en fazla 6 basamak. TRY için 1; diğer para birimlerinde zorunlu.

Gerekli aralık: 0 < x <= 999999.999999Şunun katı olmalıdır 0.000001
description
string
Maximum string length: 2000
receiptNumber
string

İsteğe bağlı belge referansı; mükerrer koruma anahtarı değildir.

Maximum string length: 100
notes
string[]
Maximum array length: 20
Maximum string length: 1000
discountAmount

Satır indirimlerinden sonra, KDV öncesi dağıtılacak belge indirimi; varsayılan 0.

Gerekli aralık: 0 <= x <= 999999999.99Şunun katı olmalıdır 0.01

Yanıt

Aynı anahtarla daha önce tamamlanan işlem; ilk ayrıntı gövdesi yerine güvenli sonuç kimlikleri.

status
boolean
gerekli
replayed
enum<boolean>
gerekli
Mevcut seçenekler:
true
operation
object
gerekli
operations
object[]
gerekli
resultId
string
transactionId
string
uuid
string
id
string
providerId
string
documentId
string
paymentId
string
orderId
string
uuids
string[]
sourcePaymentId
string

24 karakterli kayıt kimliği.

Pattern: ^[a-f0-9A-F]{24}$
destinationPaymentId
string

24 karakterli kayıt kimliği.

Pattern: ^[a-f0-9A-F]{24}$