আপনার চালান এবং খরচ ডেটাবেস থেকে Claude Code সহ একটি VAT রিটার্ন সিস্টেম তৈরি করা
আমি কীভাবে একটি Postgres চালান টেবিল এবং সরবরাহকারী PDF এর একটি ফোল্ডার থেকে HMRC Box 1 থেকে 9 নম্বরে গিয়েছিলাম, নির্ধারক গণিত, একটি অডিট ট্রেইল এবং একটি মানব অনুমোদন গেট সহ
একটি সংক্ষিপ্ত, স্কিম-পঠনযোগ্য সহচর। কোড, প্রম্পট, স্কিমা, একটি HMRC MTD ওয়াকথ্রু এবং এজ কেস সহ সম্পূর্ণ ~5,000-শব্দের গভীর ডাইভের জন্য, পড়ুন দীর্ঘ নিবন্ধ.
ত্রৈমাসিক VAT আমার মাসের সবচেয়ে খারাপ অংশ ছিল
প্রতি ত্রৈমাসিকে, যুক্তরাজ্যের একটি ছোট ব্যবসাকে একটি VAT রিটার্ন তৈরি করতে হবে: সংখ্যার নয়টি বাক্স (বিক্রয়, ক্রয়, VAT বকেয়া, VAT পুনরুদ্ধারযোগ্য, আপনি যদি উত্তর আয়ারল্যান্ডে থাকেন, তাহলে মোট, নেট) এবং HMRC Making Tax Digital (MTD) এর মাধ্যমে জমা দিন। বছরের পর বছর ধরে, আমার দেখতে এইরকম ছিল: Postgres-এ চালান টেবিল খুলুন, একটি CSV রপ্তানি করুন, এটি Excel-এ পেস্ট করুন, কয়েকশ সারি হাতে শ্রেণীবদ্ধ করুন, সূত্র চালান, একটি তৃতীয় পক্ষের MTD সেতুতে নয়টি সংখ্যা অনুলিপি করুন, জমা দিন, আশা করুন।
এটা কাজ করেছে, কিন্তু এটা ধীর এবং ক্ষতিকর ছিল. রসিদগুলো হারিয়ে গেছে। মধ্য-ত্রৈমাসিক হার পরিবর্তন সূত্র ভেঙ্গে. একটি VAT শ্রেণীবিভাগে একটি টাইপো সরাতে পারে Box 5 শত শত পাউন্ড দ্বারা। এবং অডিট ট্রেইল ছিল "আমাকে বিশ্বাস করুন, আমার একটি স্প্রেডশীট ছিল"।
এই বছর আমি পুরো জিনিসটিকে একটি ছোট Claude Code প্রকল্প হিসাবে পুনর্নির্মাণ করেছি যা আমার চালান + খরচ DB পড়ে, প্রতিটি লাইনকে শ্রেণীবদ্ধ করে, নয়টি বাক্সের গণনা করে, একটি PDF ড্রাই-রান করে এবং শুধুমাত্র তখনই HMRC MTD-এ জমা দেয় - একটি মানব অনুমোদনের গেট সহ। এই ব্লগটি সংক্ষিপ্ত সংস্করণ। দীর্ঘ নিবন্ধটিতে প্রম্পট, পাইথন, HMRC OAuth ফ্লো এবং গোটচাস রয়েছে।
ওয়াকথ্রু দেখুন
VAT রিটার্ন পাইপলাইনের একটি সংক্ষিপ্ত ওয়াকথ্রু যা একটি বাস্তব (বেনামী) ইনভয়েস + খরচ DB এর বিপরীতে এন্ড-টু-এন্ড চলছে।
পাঁচ ধাপের পাইপলাইন
- সংযোগ করুন। Claude Code একটি পায় শুধুমাত্র পঠনযোগ্য আমার চালান এবং খরচ টেবিলের সাথে ডিবি সংযোগ। এটির উত্স ডেটাতে কখনই লেখার অ্যাক্সেস নেই। স্ট্রাইপ, ওয়াইজ, রিভোলুট এবং কয়েকটি ব্যাঙ্ক ফিড থেকে CSVগুলি ড্রপ করা হয়েছে৷
./imports/. - স্বাভাবিক করা। ক্লড একটি ছোট পাইথন স্ক্রিপ্ট তৈরি করে এবং চালায় যা প্রতিটি উত্স স্কিমাকে একটি ক্যানোনিকাল ভিউতে ম্যাপ করে:
id, date, supplier_or_customer, gross, net, vat_amount, vat_rate, vat_treatment, country_code, currency, source, run_key. HMRC মাসিক হার ব্যবহার করে বিদেশী মুদ্রা GBP-এ রূপান্তরিত হয়। পুরো সময়কাল একজন বুদ্ধিমান দ্বারা চাবিকাঠি হয়run_keyতাই পুনরায় চলমান নিরাপদ। - শ্রেণীকরণ + পুনর্মিলন। ক্লাউড প্রতিটি লাইনকে একটি VAT ট্রিটমেন্টে শ্রেণীবদ্ধ করে - স্ট্যান্ডার্ড 20%, হ্রাস 5%, শূন্য, অব্যাহতি, বাইরের সুযোগ, বিপরীত চার্জ, ইইউ পণ্য, ইইউ পরিষেবা, স্থগিত আমদানি VAT - একটি ছোট ব্যবহার করে
vat-rules.mdআমি রেপোতে রাখি। এটি অর্থপ্রদান এবং ফ্ল্যাগ অসামঞ্জস্যগুলির বিরুদ্ধে চালানগুলিও সমন্বয় করে (নেতিবাচক নেট পরিমাণ, অনুপস্থিত সরবরাহকারী VAT নম্বর, দেশ-কোডের অমিল, সরবরাহকারীরা যারা VAT-নিবন্ধিত নয়)। - গণনা একটি বিশুদ্ধ-ফাংশন পাইথন মডিউল - গণিতে কোন LLM নেই - শ্রেণীবদ্ধ সারিগুলি পড়ে এবং Box 9 এর মাধ্যমে Box 1 তৈরি করে এবং মার্কডাউনে একটি ড্রাই-রান রিপোর্ট তৈরি করে৷ ফ্ল্যাট-রেট স্কিম, ক্যাশ অ্যাকাউন্টিং, এবং বার্ষিক অ্যাকাউন্টিং শাখাগুলি স্পষ্ট কোড পাথ, প্রম্পট নির্দেশনা নয়।
- জমা দিন। আমি (বা আমার হিসাবরক্ষক) ড্রাই-রান সাইন অফ করার পরেই পাইপলাইনটি HMRC MTD API কল করে। OAuth2 টোকেন। জালিয়াতি-প্রতিরোধ হেডার।
GET obligationsখোলা সময়কাল খুঁজে পেতে.POST returnsসঙ্গেfinalised: true. তারপরGET liabilitiesআমি কি ঋণী এবং কখন নিশ্চিত করতে।
Xero/QuickBooks/FreeAgent এর পরিবর্তে Claude Code কেন
সত্যই, বেশিরভাগ ছোট ব্যবসার জন্য, একটি প্যাকেজড অ্যাকাউন্ট্যান্ট SaaS সঠিক উত্তর। তাদের কাছে HMRC সার্টিফিকেশন, সহায়তা দল রয়েছে এবং আপনার হিসাবরক্ষক তাদের ইতিমধ্যেই জানেন। তাহলে আমি কেন এটা করলাম?
- আমি ইতিমধ্যে প্রতিদিন Claude Code ব্যবহার করি সফটওয়্যার কাজের জন্য। একটি VAT পাইপলাইন একত্রিত করতে এটি ব্যবহার করার প্রান্তিক খরচও কম।
- আমার তথ্য স্থানীয়. চালান ডিবি কখনই আমার মেশিন ছেড়ে যায় না। ক্লাসিফায়ার সারি ধরে চলে; গণিত স্থানীয় পাইথন; শুধুমাত্র চূড়ান্ত নয়টি সংখ্যা HMRC-এ যায়। কোন SaaS ভাড়াটে, কোন তৃতীয় পক্ষ নেই।
- আমি শ্রেণীকরণ নিয়মের সম্পূর্ণ নিয়ন্ত্রণ চেয়েছিলাম। আমার কিছু সরবরাহকারী মিশ্রণ বিশ্রী (ইইউ পরিষেবা, স্থগিত আমদানি VAT, কয়েকটি শূন্য-রেটেড এজ কেস)। মধ্যে সেই নিয়মগুলি এনকোডিং
vat-rules.md+ একটি পাইথন মডিউল আমার জন্য একটি SaaS কনফিগার করার চেয়ে দ্রুততর। - অডিট ট্রেইল আমার. প্রতিটি Claude প্রম্পট এবং প্রতিটি পার্থক্য স্বাক্ষরিত সময়ের স্ন্যাপশটের পাশাপাশি একটি শুধুমাত্র-অ্যাপেন্ড লগে প্রতিশ্রুতিবদ্ধ। যদি HMRC কখনও জিজ্ঞাসা করে, আমি সেকেন্ডের মধ্যে সঠিক গণনা তৈরি করতে পারি।
আপনি যদি ইতিমধ্যে Claude Code ব্যবহার না করেন বা আপনি মধ্যরাতে পাইথন পড়তে উপভোগ না করেন, তাহলে অনুগ্রহ করে Xero/QuickBooks/FreeAgent ব্যবহার করুন। এটি আপনার নিজস্ব VAT সিস্টেম রোল করার জন্য একটি সুপারিশ নয়। এটি একটি গল্প যখন আপনি কি সম্ভব.
যেখানে LLM আছে এবং কোথায় নয়৷
এই অংশ আমি উচ্চস্বরে হতে চাই. ক্লড VAT পাটিগণিতের মধ্যে নেই। ক্লড লাইনগুলিকে শ্রেণীবদ্ধ করে, পুনর্মিলনের পরামর্শ দেয় এবং গণিতগুলি করে এমন নির্ধারক পাইথন মডিউলগুলি তৈরি ও সম্পাদনা করে। Box 9 এর মাধ্যমে Box 1-এর প্রকৃত গণনা হল একক পরীক্ষা সহ একটি বিশুদ্ধ ফাংশন। HMRC জমা দেওয়ার জন্য একটি মানব অনুমোদন গেট প্রয়োজন। ড্রাই-রান রিপোর্ট সাইন-অফের জন্য সত্যের উৎস। যদি আমি ব্যাখ্যা করতে না পারি যে কেন কোড এবং শ্রেণীবদ্ধ সারিগুলি দেখে একটি সংখ্যা কী তা আমি জমা দিই না।
এটি একটি কঠিন নিয়ম কারণ অর্থ নিয়ন্ত্রিত, এবং "এআই এটি করেছে" MTD এর অধীনে একটি প্রতিরক্ষা নয়। দ দীর্ঘ নিবন্ধ আপনার নিজের বাস্তবায়নে এই লাইনটি কীভাবে আঁকবেন সে সম্পর্কে আরও বিশদে যায়।
এটা নির্মাণ করতে আমার কি খরচ, এবং এটা চালানোর জন্য আমার কি খরচ
বিল্ড টাইম ছিল প্রায় এক সপ্তাহ ফোকাসড সন্ধ্যা - বেশিরভাগ স্কিমা স্বাভাবিককরণ, ক্লাসিফায়ার নিয়ম এবং ইঞ্জিনের জন্য লেখার পরীক্ষায় ব্যয় করা হয়েছিল। HMRC MTD OAuth নৃত্যটি ছিল সবচেয়ে ধীরগতির অংশ; প্রথমে স্যান্ডবক্সের বিরুদ্ধে দৌড়ানো প্রতি মিনিটের মূল্য ছিল।
চালানোর জন্য, প্রতি ত্রৈমাসিকে আমার মোটামুটি খরচ হয়: আমার Claude Code সাবস্ক্রিপশন (অন্যান্য কাজের জন্য ইতিমধ্যেই অর্থ প্রদান করা হয়েছে) এবং ক্লাসিফায়ারের জন্য টোকেন ব্যবহারে কয়েকটি পেনি। HMRC API নিজেই বিনামূল্যে। VAT ইঞ্জিন এবং অডিট লগ স্থানীয়ভাবে আমার Mac এ চলে৷
গুরুত্বপূর্ণ দাবিত্যাগ
আমি একজন প্রকৌশলী, চার্টার্ড অ্যাকাউন্ট্যান্ট নই। এই নিবন্ধটি ট্যাক্স পরামর্শ নয়. আপনি আপনার আসল HMRC অ্যাকাউন্টের বিরুদ্ধে এইরকম কিছু চালানোর আগে, আপনার প্রথম রিটার্ন এন্ড-টু-এন্ড পর্যালোচনা করার জন্য একজন ইউকে-নিবন্ধিত অ্যাকাউন্টেন্ট পান। HMRC MTD ব্যবহার করুন স্যান্ডবক্স যতক্ষণ না আপনি এবং আপনার হিসাবরক্ষক উভয়ই খুশি হন। একটি খারাপ VAT জমা দেওয়ার খরচ একজন হিসাবরক্ষকের সময়ের এক ঘন্টার খরচের চেয়ে অনেক বেশি।
দীর্ঘ সংস্করণ পড়ুন
আপনি যদি সম্পূর্ণ ছবি চান - সঠিক ক্রিয়েট টেবিল স্কিমা, Claude Code প্রম্পট, ইউনিট টেস্ট সহ ডিটারমিনিস্টিক পাইথন ইঞ্জিন, HMRC MTD OAuth ফ্লো, জালিয়াতি-প্রতিরোধ শিরোনাম, এবং প্রান্তের ক্ষেত্রে একটি পুঙ্খানুপুঙ্খ বিভাগ (ব্রেক্সিট / এনআই প্রোটোকল, রিভার্স রেট, ফ্ল্যাট-রেট, ফ্ল্যাট রেট, স্প্যাট রেট, পরিবর্তন, মাল্টি-কারেন্সি ইনভয়েস, ক্রেডিট নোট, ডিপোজিট) - পড়ুন দীর্ঘ নিবন্ধ. এটি এমন সংস্করণ যা আমি শুরু করার আগে পড়তে চাই।
দেখুন ইউটিউব ওয়াকথ্রু, ফলো-আপ টিউটোরিয়ালের জন্য সাবস্ক্রাইব করুন (অটো-ইমপোর্ট ব্যাঙ্ক ফিড, রসিদের জন্য OCR, নির্ধারিত ক্রোন + স্ল্যাক অনুমোদন), এবং মনে রাখবেন: ট্যাক্স পরামর্শ নয়, অ্যাকাউন্ট্যান্ট সাইন-অফ প্রয়োজন।