<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"><channel><title>KhanLogics — Insights</title><description>Engineering notes from KhanLogics on extraction pipelines, state machines, multi-tenant isolation, and when custom software is the wrong answer.</description><link>https://khanlogics.com/</link><language>en-PK</language><copyright>© 2026 KhanLogics</copyright><item><title>LLM invoice extraction vs. template OCR: cost, accuracy, and where each breaks</title><link>https://khanlogics.com/insights/llm-extraction-vs-template-ocr/</link><guid isPermaLink="true">https://khanlogics.com/insights/llm-extraction-vs-template-ocr/</guid><description>Template OCR is better than a language model on the vendors it was configured for. The argument for LLM extraction is entirely about the long tail — and about which failure mode you can detect.</description><pubDate>Wed, 19 Aug 2026 00:00:00 GMT</pubDate><category>AI</category><category>document processing</category><category>architecture</category><author>hello@khanlogics.com (Muhammad Ali)</author></item><item><title>Designing a membership state machine: freezes, grace periods and pro-rata billing</title><link>https://khanlogics.com/insights/membership-state-machine/</link><guid isPermaLink="true">https://khanlogics.com/insights/membership-state-machine/</guid><description>Most gym software models membership status as a handful of boolean columns. Here is why that fails, and what an explicit transition table buys you at the front desk.</description><pubDate>Wed, 12 Aug 2026 00:00:00 GMT</pubDate><category>architecture</category><category>billing</category><category>state machines</category><author>hello@khanlogics.com (Muhammad Ali)</author></item></channel></rss>