Guides
Working solutions to problems that keep showing up when you deal with Turkish business data. Every example runs against the live API without a key.
Kıdem uses a 365-day year and a half-yearly ceiling on the monthly wage. Stamp tax 0.759%, no income tax. Notice pay is the opposite.
Turkish business-day math: religious holidays move every year, and half-days change the answerAdding "5 business days" in Türkiye is not fixed-offset — religious holidays shift ~10 days a year and arife half-days can move an SLA deadline by a day. One call, holidays it skipped listed out.
Validating a Turkish TCKN or VKN (and the checksum algorithm behind each)TCKN (11-digit citizen ID) and VKN (10-digit tax ID) carry different checksums — a length check alone lets garbage through. Both algorithms in plain code, plus the one-call version.
Parsing Turkish addresses: mahalle, sokak, kapı no, daireTurkish addresses are written free-form and read right-to-left in scope. Here is why western parsers fail on them and how to get province, district, street and door number reliably.
Issuing a Turkish e-Invoice (UBL-TR) from your own softwareWhat a UBL-TR document must contain, why integrators reject valid-looking invoices, and how to produce one from JSON without reading the 400-page spec.
How to validate a Turkish IBAN (and why mod-97 alone is not enough)Turkish IBANs are 26 characters and pass mod-97 even when the bank code is nonsense. Here is what to check, in what order, with runnable code.