ਇਹ ਲੰਬੀ-ਰੂਪ ਡੂੰਘੀ-ਡੁਬਕੀ ਹੈ. ਇੱਕ ਤੇਜ਼, ਸਕੀਮ-ਪੜ੍ਹਨ ਯੋਗ ਸੰਸਕਰਣ ਲਈ, ਵੇਖੋ ਸਾਥੀ ਬਲੌਗ ਪੋਸਟ.
1. ਮੈਂ ਇਸਨੂੰ ਕਿਉਂ ਬਣਾਇਆ
VAT-ਰਜਿਸਟ੍ਰੇਸ਼ਨ ਥ੍ਰੈਸ਼ਹੋਲਡ ਤੋਂ ਵੱਧ ਟੈਕਸਯੋਗ ਟਰਨਓਵਰ ਵਾਲੇ ਹਰੇਕ UK ਛੋਟੇ ਕਾਰੋਬਾਰ ਨੂੰ HMRC ਦੀ Making Tax Digital (MTD) ਸੇਵਾ ਰਾਹੀਂ - ਆਮ ਤੌਰ 'ਤੇ ਤਿਮਾਹੀ - VAT ਰਿਟਰਨ ਦੀ ਗਣਨਾ ਅਤੇ ਜਮ੍ਹਾਂ ਕਰਾਉਣੀ ਪੈਂਦੀ ਹੈ। ਨੌ ਨੰਬਰ ਵਾਲੇ ਬਕਸੇ। ਆਉਟਪੁੱਟ VAT ਘਟਾਓ ਇਨਪੁੱਟ VAT। ਸ਼ੁੱਧ ਰਕਮ ਦਾ ਭੁਗਤਾਨ ਕਰੋ, ਜਾਂ ਰਿਫੰਡ ਦਾ ਦਾਅਵਾ ਕਰੋ। ਸਿਧਾਂਤ ਵਿੱਚ ਆਸਾਨ; ਅਭਿਆਸ ਵਿੱਚ ਸਜ਼ਾ ਦੇਣਾ ਜਦੋਂ ਤੁਹਾਡੇ ਇਨਵੌਇਸ Postgres ਵਿੱਚ ਰਹਿੰਦੇ ਹਨ, ਤੁਹਾਡੇ ਖਰਚੇ ਦੀਆਂ ਰਸੀਦਾਂ ਵੀਹ ਵੱਖ-ਵੱਖ ਸਪਲਾਇਰਾਂ ਦੀਆਂ PDF ਹੁੰਦੀਆਂ ਹਨ, ਤੁਹਾਡੀਆਂ ਬੈਂਕ ਸਟੇਟਮੈਂਟਾਂ ਵਾਈਜ਼ ਅਤੇ ਰੀਵੋਲਟ ਤੋਂ CSV ਹੁੰਦੀਆਂ ਹਨ, ਅਤੇ ਤੁਹਾਡੀਆਂ ਵਿਦੇਸ਼ੀ-ਮੁਦਰਾ ਲਾਈਨਾਂ ਨੂੰ ਸਹੀ ਮਾਸਿਕ ਦਰ 'ਤੇ ਪੌਂਡਾਂ ਵਿੱਚ ਦੁਬਾਰਾ ਬਿਆਨ ਕਰਨਾ ਹੁੰਦਾ ਹੈ।
ਕੁਝ ਸਾਲਾਂ ਲਈ ਮੈਂ ਇੱਕ ਵਿਸ਼ਾਲ ਸਪ੍ਰੈਡਸ਼ੀਟ, ਇੱਕ ਕੈਲੰਡਰ ਰੀਮਾਈਂਡਰ, ਅਤੇ ਵਿਸ਼ਵਾਸ ਦੀ ਇੱਕ ਛੋਟੀ ਜਿਹੀ ਛਾਲ ਨਾਲ ਉਲਝ ਗਿਆ. ਹਰ ਤਿਮਾਹੀ ਵਿੱਚ ਲਗਭਗ ਅੱਧਾ ਦਿਨ ਲੱਗਿਆ, ਜਿਸ ਵਿੱਚ ਜ਼ਿਆਦਾਤਰ ਡੇਟਾ ਗੜਬੜੀ ਸੀ - ਇਨਵੌਇਸ DB ਤੋਂ ਇੱਕ CSV ਨਿਰਯਾਤ ਕਰੋ, Excel ਵਿੱਚ ਪੇਸਟ ਕਰੋ, ਹੱਥਾਂ ਨਾਲ ਵਰਗੀਕ੍ਰਿਤ ਕਰੋ, ਕੁਝ ਸੌ ਕਤਾਰਾਂ, ਫਾਰਮੂਲੇ ਦੀ ਦੋ ਵਾਰ ਜਾਂਚ ਕਰੋ, ਨੌਂ ਨੰਬਰਾਂ ਨੂੰ ਤੀਜੀ-ਧਿਰ ਦੇ MTD ਬ੍ਰਿਜ ਵਿੱਚ ਕਾਪੀ ਕਰੋ, ਜਮ੍ਹਾਂ ਕਰੋ 'ਤੇ ਕਲਿੱਕ ਕਰੋ। ਆਡਿਟ ਟ੍ਰੇਲ "ਮੇਰੇ ਤੇ ਭਰੋਸਾ ਕਰੋ, ਮੇਰੇ ਕੋਲ ਇੱਕ ਸਪ੍ਰੈਡਸ਼ੀਟ ਸੀ" ਸੀ। ਮੱਧ-ਤਿਮਾਹੀ ਦਰ ਦੇ ਬਦਲਾਅ ਨੇ ਇਸ ਨੂੰ ਤੋੜ ਦਿੱਤਾ. ਰਸੀਦਾਂ ਗਾਇਬ ਹੋ ਗਈਆਂ। ਇੱਕ ਗਲਤ ਥਾਂ ਤੇ ਵਰਗੀਕਰਨ ਧੱਕ ਸਕਦਾ ਹੈ Box 5 ਸੈਂਕੜੇ ਪੌਂਡ ਦੁਆਰਾ ਬੰਦ.
ਮੈਂ ਇਸ ਸਾਲ ਇੱਕ ਛੋਟੀ ਜਿਹੀ ਪਾਈਪਲਾਈਨ ਨੂੰ ਦੁਬਾਰਾ ਬਣਾਇਆ Claude Code ਪ੍ਰੋਜੈਕਟ ਜੋ ਮੇਰੇ ਇਨਵੌਇਸ ਅਤੇ ਖਰਚਿਆਂ ਦੇ ਡੇਟਾਬੇਸ ਨਾਲ ਸਿੱਧੇ ਤੌਰ 'ਤੇ ਗੱਲ ਕਰਦਾ ਹੈ, ਹਰੇਕ ਲਾਈਨ ਨੂੰ ਵਰਗੀਕ੍ਰਿਤ ਕਰਦਾ ਹੈ, ਇੱਕ ਨਿਰਧਾਰਕ ਪਾਈਥਨ ਇੰਜਣ ਨਾਲ Box 1 ਤੋਂ Box 9 ਦੀ ਗਣਨਾ ਕਰਦਾ ਹੈ, ਇੱਕ ਮਾਰਕਡਾਊਨ ਰਿਪੋਰਟ ਦੇ ਤੌਰ 'ਤੇ ਵਾਪਸੀ ਨੂੰ ਡ੍ਰਾਈ-ਰਨ ਕਰਦਾ ਹੈ, ਅਤੇ ਕੇਵਲ ਇੱਕ ਮਨੁੱਖੀ ਸੰਕੇਤ ਦੁਆਰਾ HMRC MTD ਨੂੰ ਸੌਂਪਣ ਤੋਂ ਬਾਅਦ ਹੀ। ਪੂਰੀ ਤਿਮਾਹੀ ਵਿੱਚ ਹੁਣ ਮੈਨੂੰ ਲਗਭਗ ਇੱਕ ਘੰਟਾ ਲੱਗਦਾ ਹੈ, ਜਿਸ ਵਿੱਚੋਂ ਜ਼ਿਆਦਾਤਰ ਮੇਰੇ ਲੇਖਾਕਾਰ ਨਾਲ ਡ੍ਰਾਈ-ਰਨ ਦੀ ਸਮੀਖਿਆ ਕਰ ਰਹੇ ਹਨ। ਆਡਿਟ ਟ੍ਰੇਲ ਇੱਕ ਗਿੱਟ ਰੈਪੋ ਹੈ। ਗਣਿਤ ਇਕਾਈ-ਟੈਸਟ ਕੀਤਾ ਗਿਆ ਹੈ. ਵਰਗੀਕਰਣ ਇੱਕ ਦਸਤਾਵੇਜ਼ੀ ਮਾਰਕਡਾਊਨ ਫਾਈਲ ਹੈ। ਅਧੀਨਗੀ ਦਰਵਾਜ਼ਾ ਹੈ।
ਇਹ ਲੇਖ ਲੰਮਾ ਸੰਸਕਰਣ ਹੈ। ਪ੍ਰੋਂਪਟ, ਪਾਈਥਨ, ਸਕੀਮਾ, HMRC OAuth ਪ੍ਰਵਾਹ, ਕਿਨਾਰੇ ਦੇ ਕੇਸ। ਜੇ ਤੁਸੀਂ ਪਹਿਲਾਂ ਛੋਟਾ ਸੰਸਕਰਣ ਚਾਹੁੰਦੇ ਹੋ, ਤਾਂ ਪੜ੍ਹੋ ਸਾਥੀ ਬਲੌਗ.
2. HMRC MTD ਪ੍ਰਾਈਮਰ (ਅਤੇ ਬੇਦਾਅਵਾ)
VAT ਲਈ Making Tax Digital HMRC ਦੀ ਲੋੜ ਹੈ ਕਿ VAT-ਰਜਿਸਟਰਡ ਕਾਰੋਬਾਰ ਡਿਜੀਟਲ ਰਿਕਾਰਡ ਰੱਖਣ ਅਤੇ gov.uk ਵੈੱਬ ਫਾਰਮ ਵਿੱਚ ਨੰਬਰ ਟਾਈਪ ਕਰਨ ਦੀ ਬਜਾਏ ਇੱਕ ਦਸਤਾਵੇਜ਼ੀ API ਰਾਹੀਂ ਅਨੁਕੂਲ ਸੌਫਟਵੇਅਰ ਰਾਹੀਂ ਰਿਟਰਨ ਜਮ੍ਹਾਂ ਕਰਨ। API OAuth2 ਹੈ, ਸ਼ੁਰੂਆਤੀ ਡਿਵਾਈਸ ਦੀ ਪਛਾਣ ਕਰਨ ਵਾਲੇ ਧੋਖਾਧੜੀ-ਰੋਕਥਾਮ HTTP ਸਿਰਲੇਖਾਂ ਦੀ ਲੋੜ ਹੈ, ਅਤੇ ਤੁਹਾਡੇ ਦੁਆਰਾ ਲਾਈਵ ਉਤਪਾਦਨ ਨੂੰ ਛੂਹਣ ਤੋਂ ਪਹਿਲਾਂ ਇੱਕ ਮੁਫਤ ਸੈਂਡਬੌਕਸ ਵਿੱਚ ਉਪਲਬਧ ਹੈ।
ਰਿਟਰਨ ਖੁਦ ਨੌ ਬਕਸੇ ਹੈ: Box 1 VAT ਵਿਕਰੀ ਅਤੇ ਹੋਰ ਆਉਟਪੁੱਟ ਦੇ ਕਾਰਨ ਹੈ; Box 2 EU ਸਦੱਸ ਰਾਜਾਂ (NI ਪ੍ਰੋਟੋਕੋਲ ਦੇ ਅਧੀਨ ਉੱਤਰੀ ਆਇਰਲੈਂਡ ਦੇ ਕਾਰੋਬਾਰਾਂ ਲਈ ਢੁਕਵੇਂ) ਤੋਂ ਵਸਤੂਆਂ ਦੀ ਪ੍ਰਾਪਤੀ ਦੇ ਕਾਰਨ VAT ਹੈ; Box 3 ਕੁੱਲ VAT ਬਕਾਇਆ ਹੈ (Box 1 + Box 2); Box 4 ਖਰੀਦਦਾਰੀ (ਇਨਪੁਟ VAT) 'ਤੇ VAT ਮੁੜ ਦਾਅਵਾ ਕਰਨ ਯੋਗ ਹੈ; Box 5 ਭੁਗਤਾਨ ਜਾਂ ਮੁੜ ਦਾਅਵਾ ਕਰਨ ਲਈ ਸ਼ੁੱਧ VAT ਹੈ (Box 3 - Box 4); Box 6 VAT ਨੂੰ ਛੱਡ ਕੇ ਕੁੱਲ ਵਿਕਰੀ ਹੈ; Box 7 VAT ਨੂੰ ਛੱਡ ਕੇ ਕੁੱਲ ਖਰੀਦਦਾਰੀ ਹੈ; Box 8 ਯੂਰਪੀ ਸੰਘ ਦੇ ਮੈਂਬਰ ਰਾਜਾਂ ਨੂੰ ਸਪਲਾਈ ਕੀਤੇ ਗਏ ਮਾਲ ਦਾ ਕੁੱਲ ਮੁੱਲ ਹੈ (ਦੁਬਾਰਾ NI-ਸਿਰਫ਼); Box 9 EU ਸਦੱਸ ਰਾਜਾਂ (ਕੇਵਲ NI) ਤੋਂ ਪ੍ਰਾਪਤੀਆਂ ਦਾ ਕੁੱਲ ਮੁੱਲ ਹੈ। ਸਕੀਮ ਦੇ ਰੂਪ ਹਨ - ਫਲੈਟ-ਰੇਟ ਸਕੀਮ, ਕੈਸ਼ ਅਕਾਉਂਟਿੰਗ, ਸਾਲਾਨਾ ਲੇਖਾ - ਇਹ ਬਦਲਾਅ ਕਿਵੇਂ ਤੁਸੀਂ ਨੰਬਰਾਂ 'ਤੇ ਪਹੁੰਚਦੇ ਹੋ ਪਰ ਬਾਕਸ ਦੀ ਸ਼ਕਲ 'ਤੇ ਨਹੀਂ।
ਬੇਦਾਅਵਾ। ਮੈਂ ਇੱਕ ਸਾਫਟਵੇਅਰ ਇੰਜੀਨੀਅਰ ਹਾਂ, ਚਾਰਟਰਡ ਅਕਾਊਂਟੈਂਟ ਨਹੀਂ। ਇਹ ਲੇਖ ਹੈ ਟੈਕਸ ਸਲਾਹ ਨਹੀਂ. VAT ਵਰਗੀਕਰਣ, ਅੰਸ਼ਕ ਛੋਟ, ਫਲੈਟ-ਰੇਟ ਸਕੀਮ, ਡਿਜੀਟਲ ਸੇਵਾਵਾਂ ਲਈ ਸਥਾਨ-ਸਪਲਾਈ ਨਿਯਮ, EU ਵਸਤਾਂ ਅਤੇ ਸੇਵਾਵਾਂ ਦਾ ਬ੍ਰੈਕਸਿਟ ਤੋਂ ਬਾਅਦ ਦਾ ਇਲਾਜ, ਅਤੇ NI ਪ੍ਰੋਟੋਕੋਲ ਲਈ ਸਹੀ ਨਿਯਮ ਸਾਰੇ ਸਮੇਂ ਦੇ ਨਾਲ ਬਦਲਦੇ ਹਨ ਅਤੇ ਤੁਹਾਡੇ ਖਾਸ ਹਾਲਾਤਾਂ 'ਤੇ ਨਿਰਭਰ ਕਰਦੇ ਹਨ। ਇਸ ਤੋਂ ਪਹਿਲਾਂ ਕਿ ਤੁਸੀਂ ਅਸਲ HMRC ਖਾਤੇ ਦੇ ਵਿਰੁੱਧ ਅਜਿਹਾ ਕੁਝ ਵੀ ਚਲਾਓ, ਆਪਣੀ ਪਹਿਲੀ ਰਿਟਰਨ ਐਂਡ-ਟੂ-ਐਂਡ ਦੀ ਸਮੀਖਿਆ ਕਰਨ ਲਈ ਯੂਕੇ-ਰਜਿਸਟਰਡ ਅਕਾਊਂਟੈਂਟ ਨੂੰ ਪ੍ਰਾਪਤ ਕਰੋ। ਕਿਸੇ ਖਾਸ ਕਿਨਾਰੇ ਦੇ ਕੇਸ 'ਤੇ ਅਧਿਕਾਰਤ ਨਿਯਮ ਲਈ, gov.uk ਵੈੱਬਸਾਈਟ 'ਤੇ HMRC VAT ਨੋਟਿਸ 700 ਅਤੇ ਸੰਬੰਧਿਤ ਨੋਟਿਸ ਦੇਖੋ। ਤੁਹਾਡੇ ਅਕਾਊਂਟੈਂਟ ਦੇ ਸਮੇਂ ਦੇ ਇੱਕ ਘੰਟੇ ਦੀ ਲਾਗਤ ਇੱਕ ਖਰਾਬ ਸਬਮਿਸ਼ਨ ਦੀ ਲਾਗਤ ਨਾਲੋਂ ਬਹੁਤ ਘੱਟ ਹੈ।
3. ਡਾਟਾ ਮਾਡਲ
ਹਰ ਚੀਜ਼ ਹੇਠਾਂ ਵੱਲ ਦੋ ਟੇਬਲਾਂ ਦੀ ਸ਼ਕਲ 'ਤੇ ਨਿਰਭਰ ਕਰਦੀ ਹੈ: ਜਾਰੀ ਕੀਤੇ ਇਨਵੌਇਸ (ਵਿਕਰੀ) ਅਤੇ ਰਿਕਾਰਡ ਕੀਤੇ ਖਰਚੇ (ਖਰੀਦਦਾਰੀ)। ਮੈਂ Postgres ਵਿੱਚ ਆਪਣਾ ਰੱਖਦਾ ਹਾਂ ਪਰ ਉਹੀ ਆਕਾਰ MySQL ਜਾਂ SQLite 'ਤੇ ਕੰਮ ਕਰਦਾ ਹੈ। ਘੱਟੋ-ਘੱਟ ਉਪਯੋਗੀ ਸਕੀਮਾ:
CREATE TABLE invoices (
id BIGSERIAL PRIMARY KEY,
invoice_number TEXT NOT NULL UNIQUE,
issued_at DATE NOT NULL,
customer_name TEXT NOT NULL,
customer_vat_no TEXT,
customer_country CHAR(2) NOT NULL,
net_amount NUMERIC(14,2) NOT NULL,
vat_amount NUMERIC(14,2) NOT NULL,
gross_amount NUMERIC(14,2) NOT NULL,
currency CHAR(3) NOT NULL DEFAULT 'GBP',
fx_rate_to_gbp NUMERIC(18,8) NOT NULL DEFAULT 1,
vat_rate NUMERIC(5,2) NOT NULL,
vat_treatment TEXT NOT NULL,
status TEXT NOT NULL,
paid_at DATE,
notes TEXT,
created_at TIMESTAMPTZ NOT NULL DEFAULT now()
);
CREATE TABLE expenses (
id BIGSERIAL PRIMARY KEY,
supplier_name TEXT NOT NULL,
supplier_vat_no TEXT,
supplier_country CHAR(2) NOT NULL,
incurred_at DATE NOT NULL,
net_amount NUMERIC(14,2) NOT NULL,
vat_amount NUMERIC(14,2) NOT NULL,
gross_amount NUMERIC(14,2) NOT NULL,
currency CHAR(3) NOT NULL DEFAULT 'GBP',
fx_rate_to_gbp NUMERIC(18,8) NOT NULL DEFAULT 1,
vat_rate NUMERIC(5,2) NOT NULL,
vat_treatment TEXT NOT NULL,
category TEXT NOT NULL,
receipt_url TEXT,
notes TEXT,
created_at TIMESTAMPTZ NOT NULL DEFAULT now()
);
ਗੈਰ-ਸਪੱਸ਼ਟ ਕਾਲਮ ਹਨ vat_treatment, fx_rate_to_gbp, ਅਤੇ ਦੇਸ਼ ਦੇ ਕੋਡ। ਇਲਾਜ ਕਲਾਸੀਫਾਇਰ ਅਤੇ ਇੰਜਣ ਦੋਵਾਂ ਦੁਆਰਾ ਵਰਤਿਆ ਜਾਣ ਵਾਲਾ ਇੱਕ ਛੋਟਾ ਐਨਮ ਹੈ; ਕੰਟਰੀ ਕੋਡ ਰਿਵਰਸ-ਚਾਰਜ ਅਤੇ ਈਯੂ-ਪ੍ਰਾਪਤੀ ਤਰਕ ਨੂੰ ਚਲਾਉਂਦਾ ਹੈ; fx ਰੇਟ ਤੁਹਾਨੂੰ ਵਿਦੇਸ਼ੀ-ਮੁਦਰਾ ਇਨਵੌਇਸਾਂ ਨੂੰ ਉਹਨਾਂ ਦੀ ਅਸਲ ਮੁਦਰਾ ਵਿੱਚ ਰੱਖਣ ਦਿੰਦਾ ਹੈ ਅਤੇ ਫਿਰ ਵੀ ਬਕਸੇ ਦੀ ਕੁੱਲ ਰਕਮ ਲਈ GBP ਵਿੱਚ ਮੁੜ-ਸਟੇਟ ਕਰਦਾ ਹੈ।
| ਕਾਲਮ | ਮਕਸਦ | ਦੁਆਰਾ ਵਰਤਿਆ ਜਾਂਦਾ ਹੈ |
|---|---|---|
vat_treatment | ਸਟੈਂਡਰਡ / ਘਟਾਇਆ / ਜ਼ੀਰੋ / ਛੋਟ / ਬਾਹਰ-ਸਕੋਪ / ਰਿਵਰਸ-ਚਾਰਜ / ਈਯੂ-ਮਾਲ / ਈਯੂ-ਸੇਵਾਵਾਂ / ਮੁਲਤਵੀ-ਆਯਾਤ | ਵਰਗੀਕਰਣ + ਇੰਜਣ |
vat_rate | 0.00, 5.00, 20.00 (ਜਾਂ ਸਕੀਮ-ਵਿਸ਼ੇਸ਼ ਦਰ) | ਇੰਜਣ + ਚੈੱਕਸਮ |
currency + fx_rate_to_gbp | ਬਹੁ-ਮੁਦਰਾ ਮੁੜ ਬਿਆਨ | ਸਧਾਰਣ ਕਰਨ ਵਾਲਾ |
customer_country / supplier_country | ਰਿਵਰਸ-ਚਾਰਜ, NI ਪ੍ਰੋਟੋਕੋਲ, ਸਪਲਾਈ ਦੀ ਥਾਂ | ਵਰਗੀਕਰਣ |
paid_at | ਕੈਸ਼-ਅਕਾਊਂਟਿੰਗ ਸਕੀਮ ਸ਼ਾਖਾ | ਇੰਜਣ |
ਉਹਨਾਂ ਕਾਲਮਾਂ ਨੂੰ ਪੁਰਾਤਨ ਇਨਵੌਇਸ ਟੇਬਲ ਵਿੱਚ ਬੈਕਫਿਲ ਕਰਨਾ ਪ੍ਰੋਜੈਕਟ ਦਾ ਸਭ ਤੋਂ ਹੌਲੀ ਹਿੱਸਾ ਹੈ। Claude Code ਮਾਈਗ੍ਰੇਸ਼ਨ ਪੈਦਾ ਕਰ ਸਕਦਾ ਹੈ; ਤੁਹਾਨੂੰ ਅਜੇ ਵੀ ਅਜੀਬ ਕਿਨਾਰਿਆਂ ਦੇ ਕੇਸਾਂ ਨੂੰ ਹੱਥ-ਵੰਡਣ ਦੀ ਲੋੜ ਹੈ।
4. Claude Code ਕਿਉਂ (ਅਤੇ Xero / QuickBooks / FreeAgent ਨਹੀਂ)
ਯੂਕੇ ਦੇ ਜ਼ਿਆਦਾਤਰ ਛੋਟੇ ਕਾਰੋਬਾਰਾਂ ਲਈ ਜਵਾਬ ਹੈ - ਅਸਲ ਵਿੱਚ - ਪੈਕ ਕੀਤੇ ਸੌਫਟਵੇਅਰ ਦੀ ਵਰਤੋਂ ਕਰੋ। Xero, QuickBooks, FreeAgent, Sage ਸਭ ਕੋਲ HMRC-ਪ੍ਰਮਾਣਿਤ MTD ਸਬਮਿਸ਼ਨ, ਵਧੀਆ UIs, ਅਤੇ ਲੇਖਾਕਾਰ ਹਨ ਜੋ ਉਹਨਾਂ ਨੂੰ ਪਹਿਲਾਂ ਹੀ ਜਾਣਦੇ ਹਨ। ਤੁਹਾਨੂੰ ਆਪਣੇ ਖੁਦ ਦੇ VAT ਸਿਸਟਮ ਨੂੰ ਰੋਲ ਨਹੀਂ ਕਰਨਾ ਚਾਹੀਦਾ ਜਦੋਂ ਤੱਕ ਤੁਹਾਡੇ ਕੋਲ ਕੋਈ ਸਪੱਸ਼ਟ ਕਾਰਨ ਨਹੀਂ ਹੈ।
ਮੇਰੇ ਕਾਰਨ ਤੰਗ ਸਨ ਪਰ ਅਸਲੀ ਸਨ। ਮੈਂ ਪਹਿਲਾਂ ਹੀ ਸੌਫਟਵੇਅਰ ਕੰਮ ਲਈ ਹਰ ਰੋਜ਼ Claude Code ਦੀ ਵਰਤੋਂ ਕਰਦਾ ਹਾਂ, ਇਸਲਈ VAT ਲਈ ਵੀ ਇਸਦੀ ਵਰਤੋਂ ਕਰਨ ਦੀ ਮਾਮੂਲੀ ਕੋਸ਼ਿਸ਼ ਛੋਟੀ ਸੀ। ਮੇਰੇ ਚਲਾਨ DB ਮੇਰੀ ਆਪਣੀ ਮਸ਼ੀਨ 'ਤੇ ਰਹਿੰਦਾ ਹੈ; ਮੈਂ ਇਸਨੂੰ ਸਾਸ ਕਿਰਾਏਦਾਰ ਵਿੱਚ ਪ੍ਰਤੀਬਿੰਬਤ ਨਾ ਹੋਣ ਨੂੰ ਤਰਜੀਹ ਦਿੰਦਾ ਹਾਂ। ਮੇਰਾ ਸਪਲਾਇਰ ਮਿਸ਼ਰਣ ਅਜੀਬ ਹੈ (ਰਿਵਰਸ ਚਾਰਜ ਵਾਲੀਆਂ EU ਸੇਵਾਵਾਂ, ਮੁਲਤਵੀ ਆਯਾਤ VAT, ਕਦੇ-ਕਦਾਈਂ ਜ਼ੀਰੋ-ਰੇਟਿਡ ਐਜ ਕੇਸ) ਅਤੇ ਇੱਕ ਸਿੰਗਲ ਮਾਰਕਡਾਊਨ ਫਾਈਲ ਵਿੱਚ ਨਿਯਮਾਂ ਨੂੰ ਏਨਕੋਡ ਕਰਨਾ ਅਤੇ ਇੱਕ ਪਾਈਥਨ ਮੋਡੀਊਲ ਉਹਨਾਂ ਨੂੰ ਸੰਭਾਲਣ ਲਈ SaaS ਨੂੰ ਸੰਰਚਿਤ ਕਰਨ ਨਾਲੋਂ ਤੇਜ਼ ਨਿਕਲਿਆ। ਅਤੇ ਆਡਿਟ ਟ੍ਰੇਲ ਜੋ ਮੈਂ ਇੱਕ ਗਿਟ ਰੈਪੋ ਤੋਂ ਪ੍ਰਾਪਤ ਕਰਦਾ ਹਾਂ - ਹਰ ਕਲਾਸੀਫਾਇਰ ਪ੍ਰੋਂਪਟ, ਹਰ ਡਿਫ, ਹਰ ਹਸਤਾਖਰਿਤ ਪੀਰੀਅਡ ਸਨੈਪਸ਼ਾਟ - ਬਿਲਕੁਲ ਉਹੀ ਆਡਿਟ ਟ੍ਰੇਲ ਹੈ ਜੋ ਮੈਂ ਚਾਹੁੰਦਾ ਹਾਂ।
Claude Code ਤਿੰਨ ਕਾਰਨਾਂ ਕਰਕੇ ਇਸਦੇ ਅਨੁਕੂਲ ਹੈ। ਪਹਿਲਾਂ, ਇਹ ਡਿਸਕ 'ਤੇ ਇੱਕ ਪ੍ਰੋਜੈਕਟ ਦੇ ਵਿਰੁੱਧ ਸਿੱਧਾ ਕੰਮ ਕਰਦਾ ਹੈ: ਇਹ ਮੇਰੀ ਸਕੀਮਾ, ਪਿਛਲੀ ਤਿਮਾਹੀ ਦੀਆਂ ਡਰਾਈ-ਰਨ ਰਿਪੋਰਟਾਂ, ਨਿਯਮ ਫਾਈਲ, ਅਤੇ ਪਾਈਥਨ ਇੰਜਣ ਨੂੰ ਪੜ੍ਹ ਸਕਦਾ ਹੈ, ਅਤੇ ਸੰਦਰਭ ਵਿੱਚ ਸੰਪਾਦਨਾਂ ਦਾ ਪ੍ਰਸਤਾਵ ਕਰ ਸਕਦਾ ਹੈ। ਦੂਜਾ, ਇਹ ਬੋਰਿੰਗ ਸਕੈਫੋਲਡਿੰਗ 'ਤੇ ਚੰਗਾ ਹੈ - ਮਾਈਗ੍ਰੇਸ਼ਨ ਸਕ੍ਰਿਪਟਾਂ, CSV ਆਯਾਤਕ, ਮੇਲ-ਮਿਲਾਪ ਰਿਪੋਰਟਾਂ, ਪਾਈਟੈਸਟ ਫਿਕਸਚਰ. ਤੀਜਾ, ਜਦੋਂ ਇਹ ਇੱਕ ਲਾਈਨ ਨੂੰ ਵਰਗੀਕ੍ਰਿਤ ਕਰਦਾ ਹੈ, ਤਾਂ ਇਹ ਸਧਾਰਨ ਅੰਗਰੇਜ਼ੀ ਵਿੱਚ ਇਸਦੇ ਤਰਕ ਦੀ ਵਿਆਖਿਆ ਕਰਦਾ ਹੈ, ਜੋ ਬਿਲਕੁਲ ਉਹੀ ਹੈ ਜੋ ਮੈਂ ਵਾਪਸੀ 'ਤੇ ਦਸਤਖਤ ਕਰਨ ਤੋਂ ਪਹਿਲਾਂ ਸਮੀਖਿਆ ਕਰਨਾ ਚਾਹੁੰਦਾ ਹਾਂ। ਹੇਠਾਂ ਵਰਕਫਲੋ ਡਾਇਗ੍ਰਾਮ ਦੇ ਹੇਠਾਂ ਫੈਸਲਾ ਮੈਟਰਿਕਸ ਇਸ ਵਪਾਰ-ਬੰਦ ਦਾ ਇਮਾਨਦਾਰ ਸੰਸਕਰਣ ਹੈ।
5. ਆਰਕੀਟੈਕਚਰ ਅਤੇ ਵਰਕਫਲੋ
ਪਾਈਪਲਾਈਨ ਵਿੱਚ ਪੰਜ ਤੈਰਾਕੀ ਲੇਨ ਹਨ। ਸਰੋਤ ਸਟ੍ਰਾਈਪ, ਵਾਈਜ਼, ਅਤੇ ਬੈਂਕ ਫੀਡਾਂ ਤੋਂ CSV ਲਈ ਇਨਵੌਇਸ ਅਤੇ ਖਰਚੇ ਟੇਬਲ ਅਤੇ ਇੱਕ ਡ੍ਰੌਪ ਫੋਲਡਰ ਤੱਕ ਸਿਰਫ਼ ਪੜ੍ਹਨ ਲਈ ਪਹੁੰਚ ਹੈ। ਇੰਜੈਸਟ + ਆਮ ਕਰੋ ਇੱਕ ਛੋਟੀ ਕਲਾਉਡ ਦੁਆਰਾ ਤਿਆਰ ਪਾਈਥਨ ਸਕ੍ਰਿਪਟ ਹੈ ਜੋ ਹਰੇਕ ਸਰੋਤ ਸਕੀਮਾ ਨੂੰ ਇੱਕ ਕੈਨੋਨੀਕਲ ਦ੍ਰਿਸ਼ ਵਿੱਚ ਮੈਪ ਕਰਦੀ ਹੈ, HMRC ਮਾਸਿਕ ਦਰ 'ਤੇ ਵਿਦੇਸ਼ੀ ਮੁਦਰਾ ਨੂੰ GBP ਵਿੱਚ ਬਦਲਦੀ ਹੈ, ਇੱਕ ਮਿਤੀ-ਸੀਮਾ ਫਿਲਟਰ ਲਾਗੂ ਕਰਦੀ ਹੈ, ਅਤੇ ਇੱਕ idempotent ਨਾਲ ਹਰ ਕਤਾਰ ਨੂੰ ਸਟੈਂਪ ਕਰਦੀ ਹੈ। run_key ਇਸ ਲਈ ਰੀ-ਰਨ ਸੁਰੱਖਿਅਤ ਹਨ। ਵਰਗੀਕਰਨ + ਮੇਲ-ਮਿਲਾਪ Claude Code ਵਰਗੀਕਰਣ ਹੈ: ਇਹ ਹਰੇਕ ਕੈਨੋਨੀਕਲ ਕਤਾਰ ਨੂੰ ਚਲਾਉਂਦਾ ਹੈ, a ਚੁਣਦਾ ਹੈ vat_treatment ਵਿੱਚ ਨਿਯਮਾਂ ਦੀ ਵਰਤੋਂ ਕਰਦੇ ਹੋਏ ਦਸਤਾਵੇਜ਼ੀ enum ਤੋਂ vat-rules.md, ਭੁਗਤਾਨਾਂ ਦੇ ਵਿਰੁੱਧ ਇਨਵੌਇਸਾਂ ਦਾ ਮੇਲ ਖਾਂਦਾ ਹੈ, ਅਤੇ ਗੜਬੜੀਆਂ ਨੂੰ ਫਲੈਗ ਕਰਦਾ ਹੈ (ਨਕਾਰਾਤਮਕ ਸ਼ੁੱਧ, ਗੁੰਮ ਸਪਲਾਇਰ VAT ਨੰਬਰ, ਦੇਸ਼-ਕੋਡ ਬੇਮੇਲ, ਸਪਲਾਇਰ ਜੋ VAT-ਰਜਿਸਟਰਡ ਹੋਣੇ ਚਾਹੀਦੇ ਹਨ ਪਰ ਨਹੀਂ ਹਨ)। VAT ਇੰਜਣ ਇੱਕ ਸ਼ੁੱਧ ਪਾਈਥਨ ਮੋਡੀਊਲ ਹੈ ਜੋ ਕਲਾਸੀਫਾਈਡ ਕਤਾਰਾਂ ਨੂੰ ਪੜ੍ਹਦਾ ਹੈ ਅਤੇ Box 1 ਤੋਂ Box 9 ਦੀ ਗਣਨਾ ਕਰਦਾ ਹੈ; ਫਲੈਟ-ਰੇਟ, ਨਕਦ ਅਤੇ ਸਾਲਾਨਾ ਸਕੀਮ ਸ਼ਾਖਾਵਾਂ ਸਪੱਸ਼ਟ ਕੋਡ ਮਾਰਗ ਹਨ। ਜਮ੍ਹਾਂ + ਆਡਿਟ ਕਰੋ HMRC MTD API ਕਾਲ (OAuth2, ਧੋਖਾਧੜੀ-ਰੋਕਥਾਮ ਸਿਰਲੇਖ, ਸੈਂਡਬੌਕਸ ਪਹਿਲਾਂ), ਮਨੁੱਖੀ ਮਨਜ਼ੂਰੀ ਦੇ ਕਦਮ ਦੇ ਪਿੱਛੇ ਸਥਿਤ ਹੈ, ਹਸਤਾਖਰਿਤ ਮਿਆਦ ਦੇ ਸਨੈਪਸ਼ਾਟ ਅਤੇ ਪੂਰੇ ਵਰਗੀਫਾਇਰ ਲੌਗ ਦੇ ਨਾਲ, ਜੋ ਛੇ ਸਾਲਾਂ ਲਈ ਬਰਕਰਾਰ ਰੱਖੇ ਸਿਰਫ-ਅਪੈਂਡ ਆਡਿਟ ਫੋਲਡਰ ਵਿੱਚ ਲਿਖਿਆ ਗਿਆ ਹੈ।
6. Claude Code ਨਾਲ ਕਦਮ-ਦਰ-ਕਦਮ ਬਿਲਡ
ਇਹ ਉਹ ਵਰਕਫਲੋ ਹੈ ਜੋ ਮੈਂ ਅਸਲ ਵਿੱਚ ਵਰਤਿਆ ਸੀ. ਪੰਜ ਪ੍ਰੋਂਪਟ. ਮੈਂ ਉਨ੍ਹਾਂ ਨੂੰ ਇਸ ਲੇਖ ਲਈ ਸਾਫ਼ ਕੀਤਾ; ਅਸਲੀ ਗੁੰਝਲਦਾਰ ਹਨ।
ਪ੍ਰੋਂਪਟ 1 - ਸਧਾਰਣ ਕਰਨ ਵਾਲਾ। “ਦੇਖੋ invoices ਅਤੇ expenses ਵਿੱਚ ਟੇਬਲ schema.sql. ਇੱਕ ਪਾਈਥਨ ਮੋਡੀਊਲ ਤਿਆਰ ਕਰੋ normalise.py ਜੋ ਕਿ ਦੋਨੋ ਟੇਬਲ ਦੀ ਵਰਤੋਂ ਕਰਕੇ ਪੜ੍ਹਦਾ ਹੈ psycopg (ਸਿਰਫ਼ ਪੜ੍ਹਨ ਲਈ ਭੂਮਿਕਾ vat_reader), ਮਿਤੀ ਰੇਂਜ ਤੱਕ ਸੀਮਤ ਹੈ 2026-01-01 ਨੂੰ 2026-03-31, ਅਤੇ ਕੁੰਜੀਆਂ ਦੇ ਨਾਲ ਕੈਨੋਨੀਕਲ ਡਿਕਟਾਂ ਦੀ ਇੱਕ ਸੂਚੀ ਜਾਰੀ ਕਰਦਾ ਹੈ: id, source, date, party, gross, net, vat_amount, vat_rate, vat_treatment, country, currency, fx_rate, run_key. ਵਰਤੋ Decimal, ਫਲੋਟ ਨਹੀਂ। ਇੱਕ docstring ਅਤੇ a __main__ ਬਲਾਕ ਜੋ ਇੱਕ ਸੰਖੇਪ ਛਾਪਦਾ ਹੈ।"
ਕਲੌਡ ਨੇ ਨਾਲ ਇੱਕ ਸਾਫ਼ ਮੋਡੀਊਲ ਵਾਪਸ ਕੀਤਾ Decimal, ਪੈਰਾਮੀਟਰਾਈਜ਼ਡ SQL, ਏ build_run_key() ਜੋ ਹੈਸ਼ (ਪੀਰੀਅਡ_ਸਟਾਰਟ, ਪੀਰੀਅਡ_ਐਂਡ, ਸਕੀਮ, ਸਕੀਮਾ_ਵਰਜ਼ਨ) ਨੂੰ ਇੱਕ ਸਥਿਰ ਹੈਕਸ ਸਟ੍ਰਿੰਗ ਵਿੱਚ, ਅਤੇ ਇੱਕ ਕਲਿੱਕ-ਅਧਾਰਿਤ CLI ਵਿੱਚ ਬਦਲਦਾ ਹੈ। ਮੈਂ ਦੋ ਖੇਤਰ ਦੇ ਨਾਮ ਸੰਪਾਦਿਤ ਕੀਤੇ ਅਤੇ ਬਾਕੀ ਨੂੰ ਸਵੀਕਾਰ ਕਰ ਲਿਆ।
ਪ੍ਰੋਂਪਟ 2 - ਕਲਾਸੀਫਾਇਰ। "ਪੜ੍ਹੋ vat-rules.md ਅਤੇ ਲਿਖੋ classify.py. ਤੋਂ ਹਰੇਕ ਕੈਨੋਨੀਕਲ ਕਤਾਰ ਲਈ normalise.py, ਸੈੱਟ vat_treatment ਇੱਕ ਨੂੰ: ਮਿਆਰੀ, ਘਟਾਇਆ, ਜ਼ੀਰੋ, ਛੋਟ, ਦਾਇਰੇ ਤੋਂ ਬਾਹਰ, ਰਿਵਰਸ-ਚਾਰਜ, ਈਯੂ-ਮਾਲ, ਈਯੂ-ਸੇਵਾਵਾਂ, ਮੁਲਤਵੀ-ਆਯਾਤ. ਜੇਕਰ ਕਤਾਰ ਵਿੱਚ ਪਹਿਲਾਂ ਹੀ ਕੋਈ ਖਾਲੀ ਨਹੀਂ ਹੈ vat_treatment, ਇਸ ਨੂੰ ਇਕੱਲੇ ਛੱਡੋ ਅਤੇ ਇਸ ਨੂੰ ਇਸ ਤਰ੍ਹਾਂ ਰਿਕਾਰਡ ਕਰੋ ਸੁਰੱਖਿਅਤ. ਨਹੀਂ ਤਾਂ, ਦੇਸ਼ ਦੇ ਕੋਡ, ਸਪਲਾਇਰ VAT ਨੰਬਰ, ਸ਼੍ਰੇਣੀ, ਅਤੇ ਰਕਮ ਤੋਂ ਫੈਸਲਾ ਕਰੋ, ਅਤੇ ਇੱਕ-ਵਾਕ ਲਿਖੋ reason ਹਰ ਕਤਾਰ 'ਤੇ. ਵਿਗਾੜ (ਨਕਾਰਾਤਮਕ ਨੈੱਟ, ਰਜਿਸਟ੍ਰੇਸ਼ਨ ਥ੍ਰੈਸ਼ਹੋਲਡ ਤੋਂ ਉੱਪਰ ਇੱਕ ਯੂਕੇ ਸਪਲਾਇਰ ਲਈ ਗੁੰਮ ਸਪਲਾਇਰ VAT, ਦੇਸ਼ ਦੀ ਬੇਮੇਲ) ਇੱਕ ਵੱਖਰੇ 'ਤੇ ਜਾਂਦੇ ਹਨ anomalies.json ਮਨੁੱਖੀ ਸਮੀਖਿਆ ਲਈ. ਸਰੋਤ DB ਨੂੰ ਨਾ ਬਦਲੋ।"
ਵਰਗੀਕਰਣ ਆਪਣੇ ਆਪ ਵਿੱਚ ਇੱਕ ਛੋਟਾ, ਜਿਆਦਾਤਰ ਨਿਯਮ-ਆਧਾਰਿਤ ਫੰਕਸ਼ਨ ਹੈ ਜਿਸ ਵਿੱਚ ਅਸਪਸ਼ਟ ਖਰਚੇ ਵਰਗਾਂ ਲਈ ਇੱਕ LLM-ਬੈਕਡ ਬ੍ਰਾਂਚ ਹੈ। ਗੰਭੀਰ ਰੂਪ ਵਿੱਚ, ਇਹ ਕਦੇ ਵੀ ਸਰੋਤ DB ਨੂੰ ਨਹੀਂ ਲਿਖਦਾ - ਇਹ ਇੱਕ ਵਰਗੀਕ੍ਰਿਤ JSON ਫਾਈਲ ਨੂੰ ਬਾਹਰ ਕੱਢਦਾ ਹੈ ਜੋ ਇੰਜਣ ਪੜ੍ਹਦਾ ਹੈ. ਜੇਕਰ ਮੈਂ ਕਿਸੇ ਵਰਗੀਕਰਣ ਨਾਲ ਅਸਹਿਮਤ ਹਾਂ, ਤਾਂ ਮੈਂ JSON ਨੂੰ ਸੰਪਾਦਿਤ ਕਰਦਾ ਹਾਂ; ਅਗਲੀ ਡਰਾਈ-ਰਨ ਇਸਨੂੰ ਚੁੱਕ ਲੈਂਦੀ ਹੈ।
ਪ੍ਰੋਂਪਟ 3 - ਇੰਜਣ। “ਲਿਖੋ engine.py ਇੱਕ ਸ਼ੁੱਧ ਫੰਕਸ਼ਨ ਦੇ ਤੌਰ ਤੇ: def compute_boxes(rows: list[Row], scheme: Scheme) -> BoxTotals. ਕੋਈ I/O ਨਹੀਂ। ਕੋਈ LLM ਨਹੀਂ। BoxTotals Box 1 ਤੋਂ Box 9 ਦੇ ਨਾਲ ਇੱਕ ਜੰਮਿਆ ਹੋਇਆ ਡੇਟਾਕਲਾਸ ਹੈ Decimal ਮੁੱਲ 2 dp ਤੱਕ। ਲਈ ਸਪਸ਼ਟ ਸ਼ਾਖਾਵਾਂ ਸ਼ਾਮਲ ਕਰੋ standard, flat_rate, cash, ਅਤੇ annual ਸਕੀਮਾਂ। ਮਿਆਰੀ ਸਕੀਮ ਇਕੱਠੀ ਹੈ: ਵਿਕਰੀ VAT Box 1 ਵਿੱਚ ਯੋਗਦਾਨ ਪਾਉਂਦੀ ਹੈ, VAT ਤੋਂ Box 4 ਖਰੀਦਦੀ ਹੈ। ਰਿਵਰਸ-ਚਾਰਜ ਇਨਵੌਇਸ Box 1 ਅਤੇ Box 4 ਦੋਵਾਂ ਵਿੱਚ ਜੋੜਦੇ ਹਨ। ਮੁਲਤਵੀ ਆਯਾਤ VAT Box 1 ਅਤੇ Box 4 ਦੋਵਾਂ ਨੂੰ ਜੋੜਦਾ ਹੈ। NI ਕਾਰੋਬਾਰਾਂ ਲਈ EU ਗ੍ਰਹਿਣ Box 2 ਅਤੇ Box 9 ਵਿੱਚ ਜਾਂਦਾ ਹੈ। ਬਕਸੇ ਦੇ ਕੁੱਲ 'ਤੇ ਗੋਲ, ਕਦੇ ਵੀ ਪ੍ਰਤੀ ਕਤਾਰ ਨਹੀਂ। ਹਰੇਕ ਸ਼ਾਖਾ ਨੂੰ ਇਸਦੇ ਨਿਯਮ ਨਾਲ ਜੋੜਦਾ ਹੋਇਆ ਇੱਕ ਸਿਧਾਂਤ ਲਿਖੋ।"
ਪ੍ਰੋਂਪਟ 4 - ਡਰਾਈ-ਰਨ ਰਿਪੋਰਟ। “ਲਿਖੋ dryrun.py ਜੋ ਕਿ ਕਾਲ ਕਰਦਾ ਹੈ compute_boxes() ਅਤੇ ਇੱਕ ਮਾਰਕਡਾਉਨ ਰਿਪੋਰਟ ਜਾਰੀ ਕਰਦਾ ਹੈ: ਪੀਰੀਅਡ ਅਤੇ ਸਕੀਮ ਵਾਲਾ ਸਿਰਲੇਖ, ਕੈਨੋਨੀਕਲ ਲੇਬਲਾਂ ਦੇ ਨਾਲ Box 1 ਤੋਂ Box 9 ਦੀ ਇੱਕ ਸਾਰਣੀ, ਇੱਕ ਭਾਗ ਪ੍ਰਤੀ ਵਰਗੀਫਾਇਰ ਬਾਲਟੀ ਕੁੱਲ ਦੁਆਰਾ ਸਿਖਰ ਦੀਆਂ 10 ਕਤਾਰਾਂ ਨੂੰ ਸੂਚੀਬੱਧ ਕਰਦਾ ਹੈ, ਇੱਕ ਅਸੰਗਤ ਸੈਕਸ਼ਨ, ਅਤੇ ਇੱਕ ਫੁੱਟਰ run_key ਅਤੇ ਵਰਗੀਕ੍ਰਿਤ JSON ਦਾ SHA-256। ਵਿੱਚ ਸੁਰੱਖਿਅਤ ਕਰੋ ./audit/<period>/dryrun.md."
ਪ੍ਰੋਂਪਟ 5 - ਸਬਮਿਟਰ। “ਲਿਖੋ submit.py HMRC MTD VAT API v1.0 ਦੇ ਵਿਰੁੱਧ। PKCE ਨਾਲ OAuth2 ਅਧਿਕਾਰ_ਕੋਡ ਪ੍ਰਵਾਹ ਦੀ ਵਰਤੋਂ ਕਰੋ। ਤੱਕ ਪਹੁੰਚ ਟੋਕਨ ਪੜ੍ਹੋ ~/.vat/token.json; ਜੇਕਰ ਮਿਆਦ ਪੁੱਗ ਗਈ ਹੈ ਤਾਂ ਤਾਜ਼ਾ ਕਰੋ। HMRC ਦੁਆਰਾ ਦਸਤਾਵੇਜ਼ੀ ਤੌਰ 'ਤੇ ਲੋੜੀਂਦੇ ਧੋਖਾਧੜੀ-ਰੋਕਥਾਮ ਸਿਰਲੇਖ; ਤੱਕ ਖਿੱਚੋ fraud_headers.py. ਸੈਂਡਬੌਕਸ ਲਈ ਪੂਰਵ-ਨਿਰਧਾਰਤ https://test-api.service.hmrc.gov.uk. ਕਦਮ: GET /organisations/vat/{vrn}/obligations?status=O, ਮੇਲ ਖਾਂਦੀ ਮਿਆਦ ਲੱਭੋ, ਓਪਰੇਟਰ ਨੂੰ ਡਰਾਈ-ਰਨ ਸੰਖੇਪ ਪ੍ਰਦਰਸ਼ਿਤ ਕਰਕੇ ਪੁਸ਼ਟੀ ਕਰਨ ਲਈ ਕਹੋ, ਫਿਰ POST /organisations/vat/{vrn}/returns ਨਾਲ finalised: true. ਨੂੰ ਛਾਪੋ receiptId. ਜਦੋਂ ਤੱਕ ਲਾਈਵ ਕਾਲ ਨਾ ਕਰੋ HMRC_ENV=live ਸੈੱਟ ਹੈ ਅਤੇ ਆਪਰੇਟਰ ਦੀਆਂ ਕਿਸਮਾਂ ਜਮ੍ਹਾਂ ਕਰੋ."
ਪੰਜ ਪ੍ਰੋਂਪਟ, ਚਾਰ ਫਾਈਲਾਂ, ਅਤੇ ਇੱਕ ਛੋਟਾ ਮਾਰਕਡਾਉਨ ਨਿਯਮ ਦਸਤਾਵੇਜ਼। ਕੁੱਲ ਬਿਲਡ ਟਾਈਮ ਸ਼ਾਇਦ ਫੋਕਸਡ ਸ਼ਾਮਾਂ ਦਾ ਇੱਕ ਹਫ਼ਤਾ ਸੀ, ਜਿਸ ਵਿੱਚੋਂ ਜ਼ਿਆਦਾਤਰ ਕਲਾਸੀਫਾਇਰ ਨਿਯਮ ਅਤੇ HMRC OAuth ਡਾਂਸ ਸੀ।
7. VAT ਇੰਜਣ
ਇੰਜਣ ਜਾਣਬੁੱਝ ਕੇ ਬੋਰਿੰਗ ਹਿੱਸਾ ਹੈ. ਇਹ ਯੂਨਿਟ ਟੈਸਟਾਂ ਵਾਲਾ ਇੱਕ ਸ਼ੁੱਧ ਫੰਕਸ਼ਨ ਹੈ ਅਤੇ ਕੋਈ AI ਨਹੀਂ ਹੈ। ਇਹ ਅਸਲ ਰੂਪ ਹੈ:
from dataclasses import dataclass
from decimal import Decimal, ROUND_HALF_UP
D2 = Decimal("0.01")
@dataclass(frozen=True)
class BoxTotals:
box1: Decimal
box2: Decimal
box3: Decimal
box4: Decimal
box5: Decimal
box6: Decimal
box7: Decimal
box8: Decimal
box9: Decimal
def _q(x: Decimal) -> Decimal:
return x.quantize(D2, rounding=ROUND_HALF_UP)
def compute_boxes(rows, scheme="standard", is_ni_business=False) -> BoxTotals:
box1 = box2 = box4 = Decimal(0)
box6 = box7 = box8 = box9 = Decimal(0)
for r in rows:
gbp_net = r.net * r.fx_rate
gbp_vat = r.vat_amount * r.fx_rate
if r.source == "invoice":
box6 += gbp_net
if r.vat_treatment in ("standard", "reduced"):
box1 += gbp_vat
elif r.vat_treatment == "eu-goods" and is_ni_business:
box8 += gbp_net
else:
box7 += gbp_net
if r.vat_treatment in ("standard", "reduced"):
box4 += gbp_vat
elif r.vat_treatment == "reverse-charge":
notional = gbp_net * (r.vat_rate / Decimal(100))
box1 += notional
box4 += notional
elif r.vat_treatment == "postponed-import":
notional = gbp_net * (r.vat_rate / Decimal(100))
box1 += notional
box4 += notional
elif r.vat_treatment == "eu-goods" and is_ni_business:
notional = gbp_net * (r.vat_rate / Decimal(100))
box2 += notional
box4 += notional
box9 += gbp_net
box3 = box1 + box2
box5 = box3 - box4
return BoxTotals(
_q(box1), _q(box2), _q(box3), _q(box4), _q(box5),
_q(box6), _q(box7), _q(box8), _q(box9),
)
ਧਿਆਨ ਦੇਣ ਵਾਲੀਆਂ ਦੋ ਗੱਲਾਂ। ਪਹਿਲਾਂ, ਹਰੇਕ ਡੱਬੇ ਦੀ ਕੁੱਲ ਮਾਤਰਾ ਇੱਕ ਵਾਰ ਅੰਤ ਵਿੱਚ ਮਿਣਤੀ ਜਾਂਦੀ ਹੈ। ਪ੍ਰਤੀ-ਕਤਾਰ ਰਾਊਂਡਿੰਗ ਲੀਕ ਪੈਨੀਜ਼ ਅਤੇ HMRC ਕੁੱਲਾਂ ਬਾਰੇ ਮਾਫ਼ ਕਰਨ ਵਾਲੇ ਹਨ ਜੋ ਮੇਲ ਨਹੀਂ ਖਾਂਦੇ। ਦੂਜਾ, ਇੰਜਣ ਪੂਰੀ ਤਰ੍ਹਾਂ ਨਿਰਣਾਇਕ ਹੈ: ਉਹੀ ਇੰਪੁੱਟ, ਉਹੀ ਆਉਟਪੁੱਟ, ਹਰ ਵਾਰ। ਇਹ ਉਹ ਸੰਪਤੀ ਹੈ ਜੋ ਮੈਨੂੰ ਇਸਦੀ ਯੂਨਿਟ-ਟੈਸਟ ਕਰਨ ਅਤੇ ਡਰਾਈ-ਰਨ 'ਤੇ ਭਰੋਸਾ ਕਰਨ ਦਿੰਦੀ ਹੈ।
def test_simple_quarter():
rows = [
Row("invoice", net=Decimal("24500.00"), vat_amount=Decimal("4900.00"),
vat_rate=Decimal("20"), vat_treatment="standard", fx_rate=Decimal(1), source="invoice"),
Row("expense", net=Decimal("3000.00"), vat_amount=Decimal("600.00"),
vat_rate=Decimal("20"), vat_treatment="standard", fx_rate=Decimal(1), source="expense"),
]
t = compute_boxes(rows)
assert t.box1 == Decimal("4900.00")
assert t.box4 == Decimal("600.00")
assert t.box5 == Decimal("4300.00")
assert t.box6 == Decimal("24500.00")
assert t.box7 == Decimal("3000.00")
ਇਸ ਦੇ ਨਾਲ, ਹਰ ਰਿਗਰੈਸ਼ਨ CI ਵਿੱਚ ਫੜਿਆ ਜਾਂਦਾ ਹੈ ਇਸ ਤੋਂ ਪਹਿਲਾਂ ਕਿ ਇਹ ਕਦੇ ਵੀ ਡ੍ਰਾਈ-ਰਨ ਰਿਪੋਰਟ ਨੂੰ ਛੂਹ ਜਾਵੇ। ਕਲਾਉਡ ਹੋਰ ਟੈਸਟ ਲਿਖਣ ਵਿੱਚ ਮੇਰੀ ਮਦਦ ਕਰ ਸਕਦਾ ਹੈ; ਇਹ ਟੈਸਟ ਪਾਸ ਕੀਤੇ ਬਿਨਾਂ ਇੰਜਣ ਨੂੰ ਨਹੀਂ ਬਦਲ ਸਕਦਾ।
8. ਡੈਮੋ ਵੀਡੀਓ
ਹੇਠਾਂ ਇੱਕ ਤਿਮਾਹੀ ਲਈ ਅਸਲ (ਅਗਿਆਤ) ਇਨਵੌਇਸਾਂ ਅਤੇ ਖਰਚਿਆਂ ਦੇ ਡੇਟਾਬੇਸ ਦੇ ਵਿਰੁੱਧ ਅੰਤ-ਤੋਂ-ਅੰਤ ਤੱਕ ਚੱਲਣ ਵਾਲੀ ਪਾਈਪਲਾਈਨ ਦਾ ਇੱਕ ਛੋਟਾ ਵਾਕਥਰੂ ਹੈ: ਸਧਾਰਣ, ਵਰਗੀਕ੍ਰਿਤ, ਡਰਾਈ-ਰਨ, ਫਿਰ ਇੱਕ ਸੈਂਡਬੌਕਸ MTD ਸਬਮਿਸ਼ਨ। ਸਾਰਾ ਲੂਪ ਮਿੰਟ ਦੇ ਇੱਕ ਜੋੜੇ ਨੂੰ ਹੈ.
9. HMRC MTD ਸਬਮਿਸ਼ਨ
ਇਹ ਉਹ ਹਿੱਸਾ ਹੈ ਜੋ ਸਭ ਤੋਂ ਵੱਧ ਲਿਖਦਾ ਹੈ। MTD VAT API ਖੁਦ ਚੰਗੀ ਤਰ੍ਹਾਂ ਦਸਤਾਵੇਜ਼ੀ ਅਤੇ ਮੁਫਤ ਹੈ, ਪਰ ਇੱਥੇ ਤਿੰਨ ਚੀਜ਼ਾਂ ਹਨ ਜੋ ਤੁਹਾਨੂੰ ਕਾਲ ਕਰਨ ਤੋਂ ਪਹਿਲਾਂ ਪ੍ਰਾਪਤ ਕਰਨ ਦੀ ਲੋੜ ਹੈ POST returns.
OAuth2 ਅਤੇ ਟੋਕਨ। HMRC ਡਿਵੈਲਪਰ ਹੱਬ ਵਿੱਚ ਇੱਕ ਐਪਲੀਕੇਸ਼ਨ ਰਜਿਸਟਰ ਕਰੋ; ਤੁਹਾਨੂੰ ਇੱਕ ਕਲਾਇੰਟ ID, ਇੱਕ ਕਲਾਇੰਟ ਸੀਕਰੇਟ, ਅਤੇ ਇੱਕ ਰੀਡਾਇਰੈਕਟ URI ਮਿਲਦਾ ਹੈ। ਪ੍ਰਵਾਹ PKCE ਨਾਲ authorisation_code ਹੈ: ਬ੍ਰਾਊਜ਼ਰ ਨੂੰ HMRC ਸਹਿਮਤੀ ਪੰਨੇ 'ਤੇ ਖੋਲ੍ਹੋ, ਉਪਭੋਗਤਾ ਆਪਣੇ ਸਰਕਾਰੀ ਗੇਟਵੇ ਪ੍ਰਮਾਣ ਪੱਤਰਾਂ ਨਾਲ ਲੌਗਇਨ ਕਰਦਾ ਹੈ ਅਤੇ ਤੁਹਾਡੀ ਅਰਜ਼ੀ ਨੂੰ ਆਪਣੇ VAT ਰਜਿਸਟ੍ਰੇਸ਼ਨ ਨੰਬਰ (VRN) ਦੇ ਵਿਰੁੱਧ ਪ੍ਰਮਾਣਿਤ ਕਰਦਾ ਹੈ, HMRC ਇੱਕ ਅਧਿਕਾਰ ਕੋਡ ਨਾਲ ਵਾਪਸ ਰੀਡਾਇਰੈਕਟ ਕਰਦਾ ਹੈ, ਤੁਸੀਂ ਇਸਨੂੰ ਐਕਸੈਸ ਟੋਕਨ + ਰਿਫ੍ਰੈਸ਼ ਟੋਕਨ ਲਈ ਬਦਲਦੇ ਹੋ। ਉਹਨਾਂ ਨੂੰ ਡਿਸਕ 'ਤੇ ਸਮਝਦਾਰ ਅਨੁਮਤੀਆਂ ਨਾਲ ਕੈਸ਼ ਕਰੋ। ਪਹੁੰਚ ਟੋਕਨ ਥੋੜ੍ਹੇ ਸਮੇਂ ਲਈ ਹੈ; ਰਿਫਰੈਸ਼ ਟੋਕਨ ਬਹੁਤ ਲੰਬਾ ਹੈ।
ਧੋਖਾਧੜੀ-ਰੋਕਥਾਮ ਸਿਰਲੇਖ। HMRC ਨੂੰ ਹਰੇਕ API ਕਾਲ 'ਤੇ ਸ਼ੁਰੂਆਤੀ ਡਿਵਾਈਸ ਦੀ ਪਛਾਣ ਕਰਨ ਵਾਲੇ HTTP ਸਿਰਲੇਖਾਂ ਦੇ ਇੱਕ ਦਸਤਾਵੇਜ਼ੀ ਸੈੱਟ ਦੀ ਲੋੜ ਹੁੰਦੀ ਹੈ: ਸਮਾਂ ਖੇਤਰ, ਸਕਰੀਨ ਜਿਓਮੈਟਰੀ, ਉਪਭੋਗਤਾ ID, ਜਨਤਕ IP, MAC ਐਡਰੈੱਸ, ਕਲਾਇੰਟ ਕਨੈਕਸ਼ਨ ਵਿਧੀ, ਆਦਿ। ਸਹੀ ਸੂਚੀ ਅਤੇ ਫਾਰਮੈਟ HMRC ਡਿਵੈਲਪਰ ਦਸਤਾਵੇਜ਼ਾਂ ਵਿੱਚ ਹਨ (ਵੇਖੋ HMRC VAT ਨੋਟਿਸ 700 ਅਤੇ ਸੰਬੰਧਿਤ ਲੇਖਕਾਂ ਲਈ ਵਿਸ਼ੇਸ਼ ਨਿਯਮ)। ਉਹਨਾਂ ਨੂੰ ਗਲਤ ਸਮਝੋ ਅਤੇ ਤੁਸੀਂ ਏ 403 ਇੱਕ ਅਸਪਸ਼ਟ ਗਲਤੀ ਨਾਲ. ਉਹਨਾਂ ਨੂੰ ਸਹੀ ਕਰੋ ਅਤੇ ਕਾਲ ਪੂਰੀ ਹੋ ਜਾਂਦੀ ਹੈ। ਮੈਂ ਉਹਨਾਂ ਨੂੰ ਅੰਦਰ ਰੱਖਦਾ ਹਾਂ fraud_headers.py ਅਤੇ ਟੈਸਟਾਂ ਵਿੱਚ ਆਪਣੀ ਮੌਜੂਦਗੀ ਦਾ ਦਾਅਵਾ ਕਰਦੇ ਹਨ।
ਪਹਿਲਾਂ ਸੈਂਡਬੌਕਸ। HMRC 'ਤੇ ਇੱਕ ਮੁਫਤ ਸੈਂਡਬੌਕਸ ਪ੍ਰਦਾਨ ਕਰਦਾ ਹੈ test-api.service.hmrc.gov.uk ਸਟੱਬ VRN ਅਤੇ ਸਟੱਬ ਜ਼ਿੰਮੇਵਾਰੀਆਂ ਦੇ ਨਾਲ। ਜਦੋਂ ਤੱਕ ਤੁਸੀਂ ਜਾਅਲੀ ਰਿਟਰਨ ਜਮ੍ਹਾ ਨਹੀਂ ਕਰ ਲੈਂਦੇ, ਇੱਕ ਜਾਅਲੀ ਰਸੀਦ ਆਈਡੀ ਪ੍ਰਾਪਤ ਨਹੀਂ ਕਰਦੇ, ਅਤੇ ਤੁਹਾਡੀਆਂ ਜ਼ਿੰਮੇਵਾਰੀਆਂ ਦੀ ਪੁਸ਼ਟੀ ਨਹੀਂ ਕਰਦੇ, ਉਦੋਂ ਤੱਕ ਸੈਂਡਬੌਕਸ ਦੇ ਵਿਰੁੱਧ ਆਪਣੀ ਪੂਰੀ ਪਾਈਪਲਾਈਨ ਨੂੰ ਸਿਰੇ ਤੋਂ ਅੰਤ ਤੱਕ ਚਲਾਓ। ਤਾਂ ਹੀ ਤੁਸੀਂ ਪਲਟਦੇ ਹੋ HMRC_ENV=live. ਮੇਰਾ ਸਬਮਿਟਰ ਲਾਈਵ ਕਾਲ ਕਰਨ ਤੋਂ ਇਨਕਾਰ ਕਰਦਾ ਹੈ ਜਦੋਂ ਤੱਕ ਵਾਤਾਵਰਣ ਵੇਰੀਏਬਲ ਸੈੱਟ ਨਹੀਂ ਹੁੰਦਾ ਅਤੇ ਆਪਰੇਟਰ ਦੀਆਂ ਕਿਸਮਾਂ SUBMIT ਪ੍ਰੋਂਪਟ 'ਤੇ. ਰਹਿਣ ਲਈ ਕੋਈ ਆਟੋਮੈਟਿਕ ਐਗਜ਼ੀਕਿਊਸ਼ਨ ਮਾਰਗ ਨਹੀਂ ਹੈ। ਇੱਕ ਖਰਾਬ ਲਾਈਵ ਸਬਮਿਸ਼ਨ ਦੀ ਲਾਗਤ ਇੱਕ ਹੋਰ ਸੈਂਡਬੌਕਸ ਦੁਹਰਾਓ ਦੀ ਲਾਗਤ ਨਾਲੋਂ ਬਹੁਤ ਜ਼ਿਆਦਾ ਹੈ।
ਅਸਲ ਖੁਸ਼ੀ-ਮਾਰਗ ਕਾਲ ਛੋਟੀ ਹੈ: GET obligations ਨਾਲ status=O ਓਪਨ ਪੀਰੀਅਡ ਲੱਭਣ ਲਈ, ਡਰਾਈ-ਰਨ ਰਿਪੋਰਟ ਪ੍ਰਦਰਸ਼ਿਤ ਕਰੋ, ਓਪਰੇਟਰ ਨੂੰ ਪੁਸ਼ਟੀ ਕਰਨ ਲਈ ਕਹੋ, ਫਿਰ POST returns ਨੌ ਬਾਕਸ ਨੰਬਰਾਂ ਦੇ ਨਾਲ, periodKey ਜ਼ਿੰਮੇਵਾਰੀ ਤੋਂ, ਅਤੇ finalised: true. ਜਵਾਬ ਨੂੰ ਸੁਰੱਖਿਅਤ ਕਰੋ, ਆਡਿਟ ਫੋਲਡਰ ਵਿੱਚ ਰਸੀਦ ID ਲਿਖੋ, ਅਤੇ ਤੁਸੀਂ ਪੂਰਾ ਕਰ ਲਿਆ ਹੈ।
10. ਸੁਰੱਖਿਆ, ਆਡਿਟ, ਅਤੇ ਪਾਲਣਾ
ਤਿੰਨ ਨਿਯਮ ਮੈਂ ਅੱਗੇ ਨਹੀਂ ਵਧਾਂਗਾ। ਪਹਿਲਾਂ, ਕਲਾਉਡ ਗਣਿਤ ਵਿੱਚ ਨਹੀਂ ਹੈ. ਵਰਗੀਫਾਇਰ ਇਲਾਜਾਂ ਦਾ ਸੁਝਾਅ ਦਿੰਦਾ ਹੈ ਅਤੇ LLM ਪਾਈਥਨ ਅਤੇ ਨਿਯਮਾਂ ਨੂੰ ਸੰਪਾਦਿਤ ਕਰ ਸਕਦਾ ਹੈ, ਪਰ ਬਾਕਸ ਕੁੱਲ ਯੂਨਿਟ ਟੈਸਟਾਂ ਦੇ ਨਾਲ ਇੱਕ ਸ਼ੁੱਧ ਫੰਕਸ਼ਨ ਦੁਆਰਾ ਤਿਆਰ ਕੀਤੇ ਜਾਂਦੇ ਹਨ। "ਏਆਈ ਨੇ ਇਹ ਕੀਤਾ" MTD ਦੇ ਅਧੀਨ ਕੋਈ ਬਚਾਅ ਨਹੀਂ ਹੈ। ਦੂਜਾ, ਹਰ ਅਧੀਨਗੀ ਮਨੁੱਖ ਦੁਆਰਾ ਦਿੱਤੀ ਜਾਂਦੀ ਹੈ. ਡਰਾਈ-ਰਨ ਰਿਪੋਰਟ ਸਾਈਨ-ਆਫ ਲਈ ਸੱਚਾਈ ਦਾ ਸਰੋਤ ਹੈ। ਜੇਕਰ ਮੈਂ ਵਰਗੀਕ੍ਰਿਤ ਕਤਾਰਾਂ ਅਤੇ ਇੰਜਣ ਕੋਡ ਵਿੱਚੋਂ ਕਿਸੇ ਨੰਬਰ ਦੀ ਵਿਆਖਿਆ ਨਹੀਂ ਕਰ ਸਕਦਾ, ਤਾਂ ਮੈਂ ਜਮ੍ਹਾਂ ਨਹੀਂ ਕਰਾਂਗਾ। ਤੀਜਾ, ਆਡਿਟ ਟ੍ਰੇਲ ਸਿਰਫ਼-ਸਿਰਫ਼ ਸ਼ਾਮਲ ਹੈ. ਹਰੇਕ ਵਰਗੀਕ੍ਰਿਤ JSON, ਹਰ ਡਰਾਈ-ਰਨ ਰਿਪੋਰਟ, ਹਰ ਪ੍ਰੋਂਪਟ, ਹਰ ਅੰਤਰ, ਅਤੇ ਮਿਆਦ ਲਈ ਅੰਤਮ HMRC ਰਸੀਦ ID ਵਿੱਚ ਲਿਖਿਆ ਗਿਆ ਹੈ ./audit/<period>/ ਅਤੇ ਇੱਕ ਪ੍ਰਾਈਵੇਟ git ਰੈਪੋ ਲਈ ਵਚਨਬੱਧ. HMRC ਨੂੰ ਛੇ ਸਾਲਾਂ ਦੇ ਰਿਕਾਰਡ ਦੀ ਲੋੜ ਹੁੰਦੀ ਹੈ; ਮੇਰੇ ਹਸਤਾਖਰਿਤ ਸਨੈਪਸ਼ਾਟ ਹਨ।
ਦੋ ਹੋਰ ਅਭਿਆਸਾਂ ਦੀ ਮੈਂ ਸਿਫਾਰਸ਼ ਕਰਾਂਗਾ ਭਾਵੇਂ ਤੁਸੀਂ ਬਾਕੀ ਨੂੰ ਨਹੀਂ ਅਪਣਾਉਂਦੇ ਹੋ। ਸਰੋਤ-ਡੀਬੀ ਕਨੈਕਸ਼ਨ ਨੂੰ ਘੱਟੋ-ਘੱਟ-ਅਧਿਕਾਰ-ਪੜ੍ਹਨ-ਸਿਰਫ ਭੂਮਿਕਾ ਵਜੋਂ ਚਲਾਓ: ਨਹੀਂ UPDATE, ਨਹੀਂ DELETE, ਨਹੀਂ DROP. HMRC ਕਲਾਇੰਟ ਨੂੰ ਗੁਪਤ ਰੱਖੋ ਅਤੇ ਆਪਣੀ ਹੋਮ ਡਾਇਰੈਕਟਰੀ ਵਿੱਚ ਇੱਕ ਗੁਪਤ ਮੈਨੇਜਰ ਜਾਂ 0600 ਫਾਈਲ ਦੀ ਵਰਤੋਂ ਕਰਦੇ ਹੋਏ ਰੈਪੋ ਤੋਂ ਬਾਹਰ ਐਕਸੈਸ ਟੋਕਨ ਰੱਖੋ। ਨੁਕਤਾ ਇਹ ਹੈ ਕਿ ਦੁਰਘਟਨਾਵਾਂ ਨੂੰ ਉਸਾਰੀ ਦੁਆਰਾ ਅਸੰਭਵ ਬਣਾਉਣਾ ਹੈ, ਨਾ ਕਿ ਸਿਰਫ ਨੀਤੀ ਦੁਆਰਾ.
11. ਕਿਨਾਰੇ ਦੇ ਕੇਸ
VAT ਇੱਕ ਨਿਯੰਤ੍ਰਿਤ ਟੈਕਸ ਹੈ ਜੋ 1973 ਤੋਂ ਬਾਅਦ ਹਰ ਯੂਕੇ ਸਰਕਾਰ ਦੁਆਰਾ ਸੰਪਾਦਿਤ ਕੀਤਾ ਗਿਆ ਹੈ, ਇੱਕ ਪੋਸਟ-ਬ੍ਰੈਕਸਿਟ ਓਵਰਲੇਅ ਅਤੇ ਸਿਖਰ 'ਤੇ ਇੱਕ ਉੱਤਰੀ ਆਇਰਲੈਂਡ ਪ੍ਰੋਟੋਕੋਲ ਦੇ ਨਾਲ। ਕਿਨਾਰੇ ਦੇ ਮਾਮਲੇ ਅਸਲੀ ਹਨ. ਮੇਰਾ ਇੰਜਣ ਹੈਂਡਲ ਕਰਨ ਵਾਲਿਆਂ ਦੀ ਇੱਕ ਗੈਰ-ਸੰਪੂਰਨ ਸੂਚੀ:
- ਬ੍ਰੈਕਸਿਟ ਅਤੇ ਉੱਤਰੀ ਆਇਰਲੈਂਡ। ਗ੍ਰੇਟ-ਬ੍ਰਿਟੇਨ ਦੇ ਕਾਰੋਬਾਰ ਹੁਣ Box 8 ਜਾਂ Box 9 ਨਹੀਂ ਭਰਦੇ ਹਨ। NI ਕਾਰੋਬਾਰ ਅਜੇ ਵੀ NI ਪ੍ਰੋਟੋਕੋਲ ਦੇ ਅਧੀਨ ਮਾਲ (ਸੇਵਾਵਾਂ ਨਹੀਂ) ਲਈ ਕਰਦੇ ਹਨ। ਇੰਜਣ ਲੈਂਦਾ ਹੈ
is_ni_businessਇੱਕ ਪੈਰਾਮੀਟਰ ਦੇ ਤੌਰ ਤੇ ਅਤੇ ਉਸ ਅਨੁਸਾਰ ਸ਼ਾਖਾਵਾਂ. ਅਧਿਕਾਰਤ ਨਿਯਮ ਲਈ HMRC VAT ਨੋਟਿਸ 700 ਦੇਖੋ। - ਉਲਟਾ ਚਾਰਜ। ਯੂਕੇ ਤੋਂ ਬਾਹਰ ਕਿਸੇ ਸਪਲਾਇਰ ਤੋਂ ਖਰੀਦੀਆਂ ਗਈਆਂ ਸੇਵਾਵਾਂ (ਅਤੇ ਕੁਝ ਘਰੇਲੂ ਉਸਾਰੀ-ਉਦਯੋਗ ਸੇਵਾਵਾਂ) ਨੂੰ ਰਿਵਰਸ ਚਾਰਜ ਦੇ ਅਧੀਨ ਗਿਣਿਆ ਜਾਂਦਾ ਹੈ: ਤੁਸੀਂ Box 1 ਵਿੱਚ ਇੱਕ ਕਲਪਨਾਤਮਕ ਆਉਟਪੁੱਟ VAT ਜੋੜਦੇ ਹੋ ਅਤੇ Box 4 ਵਿੱਚ ਉਸੇ ਰਕਮ ਦਾ ਮੁੜ ਦਾਅਵਾ ਕਰਦੇ ਹੋ। ਨਕਦ 'ਤੇ ਸ਼ੁੱਧ ਪ੍ਰਭਾਵ ਜ਼ੀਰੋ ਹੈ; ਵਾਪਸੀ 'ਤੇ ਸ਼ੁੱਧ ਪ੍ਰਭਾਵ ਦੋ ਬਕਸੇ ਹਨ ਜੋ ਇਕੱਠੇ ਚਲਦੇ ਹਨ।
- ਮੁਲਤਵੀ ਆਯਾਤ VAT। ਯੂਕੇ ਦੇ ਬਾਹਰੋਂ ਆਯਾਤ ਕੀਤੇ ਸਮਾਨ ਲਈ, ਤੁਸੀਂ ਬਾਰਡਰ 'ਤੇ ਭੁਗਤਾਨ ਕਰਨ ਦੀ ਬਜਾਏ ਆਪਣੀ ਅਗਲੀ ਵਾਪਸੀ ਲਈ ਆਯਾਤ VAT ਨੂੰ ਮੁਲਤਵੀ ਕਰਦੇ ਹੋ। ਇਲਾਜ ਵਾਪਸੀ 'ਤੇ ਰਿਵਰਸ ਚਾਰਜ ਵਰਗਾ ਦਿਖਾਈ ਦਿੰਦਾ ਹੈ।
- ਅੰਸ਼ਕ ਛੋਟ। ਜੇਕਰ ਤੁਸੀਂ ਟੈਕਸਯੋਗ ਅਤੇ ਛੋਟ ਵਾਲੀ ਸਪਲਾਈ ਦੋਵੇਂ ਬਣਾਉਂਦੇ ਹੋ, ਤਾਂ ਤੁਸੀਂ ਸਿਰਫ਼ ਉਸ ਹੱਦ ਤੱਕ ਇਨਪੁਟ VAT ਦਾ ਮੁੜ ਦਾਅਵਾ ਕਰ ਸਕਦੇ ਹੋ ਜਿਸ ਦਾ ਇਹ ਟੈਕਸਯੋਗ ਸਪਲਾਈਆਂ ਨਾਲ ਸਬੰਧਤ ਹੈ। ਮਿਆਰੀ ਅਤੇ ਵਿਸ਼ੇਸ਼ ਢੰਗ ਹਨ; ਇਹ ਉਹ ਕੋਨਾ ਹੈ ਜਿਸਨੂੰ ਅਕਸਰ ਇੱਕ ਲੇਖਾਕਾਰ ਦੀ ਲੋੜ ਹੁੰਦੀ ਹੈ। ਮਾਰਕਡਾਉਨ ਫਾਈਲ ਵਿੱਚ ਅੰਸ਼ਕ ਛੋਟ ਨਿਯਮਾਂ ਨੂੰ ਏਨਕੋਡ ਕਰਨ ਦੀ ਕੋਸ਼ਿਸ਼ ਨਾ ਕਰੋ।
- ਫਲੈਟ ਰੇਟ ਸਕੀਮ। ਤੁਸੀਂ ਮਿਆਰੀ ਦਰ 'ਤੇ VAT ਚਾਰਜ ਕਰਦੇ ਹੋ ਪਰ HMRC ਨੂੰ ਕੁੱਲ ਟਰਨਓਵਰ ਦੀ ਇੱਕ ਨਿਸ਼ਚਿਤ ਪ੍ਰਤੀਸ਼ਤਤਾ ਦਾ ਭੁਗਤਾਨ ਕਰਦੇ ਹੋ, ਅਤੇ ਤੁਸੀਂ ਆਮ ਤੌਰ 'ਤੇ ਇਨਪੁਟ VAT ਦਾ ਮੁੜ ਦਾਅਵਾ ਨਹੀਂ ਕਰ ਸਕਦੇ ਹੋ। ਇੰਜਣ ਦੀ ਇਸਦੇ ਲਈ ਇੱਕ ਵੱਖਰੀ ਸ਼ਾਖਾ ਹੈ ਅਤੇ ਜ਼ਿਆਦਾਤਰ ਪ੍ਰਤੀ-ਕਤਾਰ ਵਰਗੀਕਰਨ ਨੂੰ ਨਜ਼ਰਅੰਦਾਜ਼ ਕਰਦਾ ਹੈ।
- ਬਹੁ-ਮੁਦਰਾ ਚਲਾਨ। ਹਰੇਕ ਕਤਾਰ ਨੂੰ ਸੰਬੰਧਿਤ ਮਿਤੀ ਤੋਂ ਪ੍ਰਭਾਵੀ ਦਰ 'ਤੇ GBP ਵਿੱਚ ਬਦਲੋ। HMRC ਮਾਸਿਕ ਔਸਤ ਦਰਾਂ ਪ੍ਰਕਾਸ਼ਿਤ ਕਰੋ; ਤੁਸੀਂ ਸਪਾਟ ਰੇਟ ਵੀ ਵਰਤ ਸਕਦੇ ਹੋ। ਇਕਸਾਰ ਰਹੋ. ਦ
fx_rate_to_gbpਕਾਲਮ ਪ੍ਰਤੀ ਕਤਾਰ ਲਾਗੂ ਕੀਤੀ ਅਸਲ ਦਰ ਨੂੰ ਸਟੋਰ ਕਰਦਾ ਹੈ। - ਕ੍ਰੈਡਿਟ ਨੋਟਸ. ਇੱਕ ਕ੍ਰੈਡਿਟ ਨੋਟ ਇੱਕ ਨਕਾਰਾਤਮਕ ਇਨਵੌਇਸ ਹੈ। ਇਹ Box 1 ਅਤੇ Box 6 (ਜਾਂ Box 4 ਅਤੇ Box 7 ਨੂੰ ਘਟਾਉਂਦਾ ਹੈ ਜੇਕਰ ਇਹ ਖਰੀਦ ਕ੍ਰੈਡਿਟ ਹੈ)। ਯਕੀਨੀ ਬਣਾਓ ਕਿ ਤੁਹਾਡਾ
net_amountਅਤੇvat_amountਨੈਗੇਟਿਵ ਜਾ ਸਕਦਾ ਹੈ ਅਤੇ ਇੰਜਣ ਉਹਨਾਂ ਨੂੰ ਸਹੀ ਢੰਗ ਨਾਲ ਜੋੜਦਾ ਹੈ। - ਡਿਪਾਜ਼ਿਟ ਅਤੇ ਪੜਾਅ ਭੁਗਤਾਨ. ਟੈਕਸ ਪੁਆਇੰਟ ਉਦੋਂ ਹੋ ਸਕਦਾ ਹੈ ਜਦੋਂ ਡਿਪਾਜ਼ਿਟ ਪ੍ਰਾਪਤ ਹੁੰਦਾ ਹੈ, ਨਾ ਕਿ ਜਦੋਂ ਅੰਤਿਮ ਇਨਵੌਇਸ ਜਾਰੀ ਕੀਤਾ ਜਾਂਦਾ ਹੈ। ਨਕਦ ਲੇਖਾ ਇਸ ਨੂੰ ਸਰਲ ਬਣਾ ਸਕਦਾ ਹੈ।
- ਮੱਧ-ਤਿਮਾਹੀ ਦਰ ਵਿੱਚ ਤਬਦੀਲੀਆਂ। ਇਤਿਹਾਸਕ ਤੌਰ 'ਤੇ ਬਹੁਤ ਘੱਟ, ਪਰ ਸੰਭਵ ਹੈ। ਪ੍ਰਤੀ ਕਤਾਰ ਦੀ ਦਰ ਨੂੰ ਸਟੋਰ ਕਰੋ, ਇੱਕ ਗਲੋਬਲ ਸਥਿਰਾਂਕ ਵਜੋਂ ਨਹੀਂ।
12. ਲਾਗਤ
ਇਮਾਨਦਾਰ ਨੰਬਰ. ਸਮਾਂ ਬਣਾਓ ਧਿਆਨ ਕੇਂਦਰਿਤ ਸ਼ਾਮ ਦਾ ਇੱਕ ਹਫ਼ਤਾ ਸੀ - ਇਸਨੂੰ 25 ਤੋਂ 30 ਘੰਟੇ ਕਾਲ ਕਰੋ। ਇਹਨਾਂ ਵਿੱਚੋਂ ਜ਼ਿਆਦਾਤਰ ਸਕੀਮਾ ਸਧਾਰਣਕਰਨ, ਵਰਗੀਕਰਣ ਨਿਯਮ, ਅਤੇ ਇੰਜਨ ਟੈਸਟਾਂ ਨੂੰ ਲਿਖਣਾ ਸੀ; HMRC OAuth ਡਾਂਸ ਦੂਜਾ ਸਭ ਤੋਂ ਵੱਡਾ ਹਿੱਸਾ ਸੀ। ਚੱਲ ਰਹੀ ਲਾਗਤ ਪ੍ਰਤੀ ਤਿਮਾਹੀ ਛੋਟਾ ਹੈ: ਮੇਰੀ ਮੌਜੂਦਾ Claude Code ਸਬਸਕ੍ਰਿਪਸ਼ਨ (ਦੂਜੇ ਸੌਫਟਵੇਅਰ ਕੰਮ ਲਈ ਪਹਿਲਾਂ ਹੀ ਭੁਗਤਾਨ ਕੀਤਾ ਗਿਆ ਹੈ), ਕਲਾਸੀਫਾਇਰ ਟੋਕਨ ਵਰਤੋਂ ਵਿੱਚ ਕੁਝ ਪੈਸੇ, ਅਤੇ HMRC API ਲਈ ਜ਼ੀਰੋ ਪੌਂਡ। ਇੰਜਣ ਅਤੇ ਆਡਿਟ ਲੌਗ ਮੇਰੇ ਮੈਕ 'ਤੇ ਸਥਾਨਕ ਤੌਰ 'ਤੇ ਚੱਲਦੇ ਹਨ। ਪ੍ਰਤੀ ਤਿਮਾਹੀ ਸਮੀਖਿਅਕ ਦਾ ਸਮਾਂ ਲਗਭਗ ਇੱਕ ਘੰਟਾ ਹੈ, ਜਿਆਦਾਤਰ ਮੇਰੇ ਲੇਖਾਕਾਰ ਨਾਲ ਡਰਾਈ-ਰਨ ਪੜ੍ਹਨ ਵਿੱਚ ਬਿਤਾਇਆ। ਇਸਦੀ ਤੁਲਨਾ ਪੁਰਾਣੇ ਵਰਕਫਲੋ ਦੇ ਤਹਿਤ ਸਪ੍ਰੈਡਸ਼ੀਟ ਦੇ ਝਗੜੇ ਦੇ ਲਗਭਗ ਅੱਧੇ ਦਿਨ ਨਾਲ ਕਰੋ ਅਤੇ ਬਚਿਆ ਸਮਾਂ ਪਹਿਲੇ ਸਾਲ ਦੇ ਅੰਦਰ ਬਿਲਡ ਲਾਗਤ ਦਾ ਭੁਗਤਾਨ ਕਰਦਾ ਹੈ।
ਜੇਕਰ ਤੁਸੀਂ ਇਸਦੀ ਕੀਮਤ ਇੱਕ ਪ੍ਰੋਜੈਕਟ ਦੇ ਤੌਰ 'ਤੇ ਰੱਖੀ ਹੈ ਜਿਸ ਨੂੰ ਤੁਸੀਂ ਬਣਾਉਣ ਲਈ ਕਿਸੇ ਹੋਰ ਨੂੰ ਅਦਾ ਕਰ ਰਹੇ ਹੋ, ਤਾਂ ਤੁਸੀਂ ਸਲਾਹ-ਮਸ਼ਵਰੇ ਦੀਆਂ ਦਰਾਂ 'ਤੇ ਚਾਰ-ਅੰਕੜੇ ਵਾਲੇ ਬਾਲਪਾਰਕ ਵਿੱਚ ਹੋਵੋਗੇ - ਇਸ ਲਈ ਇੱਕ ਮਹੀਨੇ ਵਿੱਚ ਵੀਹ ਤੋਂ ਪੰਜਾਹ ਪੌਂਡ ਦਾ ਪੈਕ ਕੀਤਾ SaaS ਜ਼ਿਆਦਾਤਰ ਕਾਰੋਬਾਰਾਂ ਲਈ ਲਗਭਗ ਹਮੇਸ਼ਾ ਸਹੀ ਜਵਾਬ ਹੁੰਦਾ ਹੈ। ਦਿਲਚਸਪ ਸਵਾਲ ਇਹ ਨਹੀਂ ਹੈ ਕਿ "ਕੀ ਇਹ ਜ਼ੀਰੋ ਨਾਲੋਂ ਸਸਤਾ ਹੈ?" - ਇਹ ਆਮ ਤੌਰ 'ਤੇ ਨਹੀਂ ਹੁੰਦਾ - ਪਰ "ਕੀ ਇਹ ਮੇਰੇ ਲਈ ਤਰਕ ਕਰਨਾ ਵਧੇਰੇ ਸਹੀ, ਵਧੇਰੇ ਆਡਿਟਯੋਗ, ਅਤੇ ਆਸਾਨ ਹੈ?"। ਮੇਰੇ ਲਈ ਜਵਾਬ ਹਾਂ ਹੈ।
13. ਅੱਗੇ ਕੀ ਹੈ, ਅਤੇ ਸਿੱਟਾ
ਅਗਲੇ ਹਿੱਸੇ ਜੋ ਮੈਂ ਜੋੜਨਾ ਚਾਹੁੰਦਾ ਹਾਂ ਉਹ ਹਨ: ਆਟੋਮੈਟਿਕ ਬੈਂਕ-ਫੀਡ ਆਯਾਤ (ਓਪਨ ਬੈਂਕਿੰਗ AISP), ਸਪਲਾਇਰ PDFs ਲਈ OCR ਤਾਂ ਜੋ ਰਸੀਦ URL ਇੱਕ ਅਸਲ ਸਕੈਨ ਕੀਤੀ ਲਾਈਨ, ਇੱਕ ਅਨੁਸੂਚਿਤ ਕਰੋਨ + ਸਲੈਕ ਪ੍ਰਵਾਨਗੀ ਪ੍ਰਵਾਹ ਬਣ ਜਾਵੇ ਤਾਂ ਜੋ ਮੈਨੂੰ ਅੰਤਮ ਤਾਰੀਖਾਂ ਨੂੰ ਯਾਦ ਨਾ ਰੱਖਣਾ ਪਵੇ, ਅਤੇ ਮਾਰਕੀਟਪਲੇਸ ਵਿਕਰੇਤਾਵਾਂ ਲਈ ਇੱਕ ਸਵੈ-ਬਿਲਿੰਗ ਐਕਸਟੈਂਸ਼ਨ। ਇਹਨਾਂ ਵਿੱਚੋਂ ਕੋਈ ਵੀ ਪਾਈਪਲਾਈਨ ਦੀ ਮੁੱਖ ਸ਼ਕਲ ਨੂੰ ਨਹੀਂ ਬਦਲਦਾ। ਉਹ ਸਾਰੇ ਇੱਕੋ ਪੰਜ-ਲੇਨ ਚਿੱਤਰ 'ਤੇ ਸਜਾਵਟ ਹਨ.
ਸਭ ਤੋਂ ਵੱਡਾ ਸਬਕ, ਘੱਟੋ-ਘੱਟ ਮੇਰੇ ਲਈ, ਇਹ ਹੈ ਕਿ ਇੱਕ ਛੋਟਾ Claude Code ਪ੍ਰੋਜੈਕਟ ਇੱਕ ਨਿਯੰਤ੍ਰਿਤ ਵਰਕਫਲੋ ਦੇ ਬੋਰਿੰਗ ਅੱਧ ਨੂੰ ਕਿੰਨੀ ਚੰਗੀ ਤਰ੍ਹਾਂ ਸੰਭਾਲਦਾ ਹੈ. ਬੋਰਿੰਗ ਅੱਧਾ ਜ਼ਿਆਦਾਤਰ ਕੰਮ ਹੈ: ਸਕੀਮਾ ਸਧਾਰਣਕਰਨ, CSV ਆਯਾਤਕ, ਮੇਲ-ਮਿਲਾਪ ਰਿਪੋਰਟਾਂ, ਫਿਕਸਚਰ, ਐਜ-ਕੇਸ ਨਿਯਮ, ਆਡਿਟ ਲੌਗਿੰਗ। ਕਲਾਉਡ ਇਸ ਸਭ 'ਤੇ ਸ਼ਾਨਦਾਰ ਹੈ. ਨਿਰਣਾਇਕ ਅੱਧਾ - ਅਸਲ ਗਣਿਤ, ਅਸਲ ਅਧੀਨਗੀ - ਇਕਾਈ ਟੈਸਟਾਂ ਅਤੇ ਮਨੁੱਖੀ ਪ੍ਰਵਾਨਗੀ ਗੇਟ ਦੇ ਨਾਲ ਪਲੇਨ ਪਾਈਥਨ ਵਿੱਚ ਰਹਿੰਦਾ ਹੈ, ਬਿਲਕੁਲ ਜਿੱਥੇ ਇਹ ਸਬੰਧਤ ਹੈ।
ਬੇਦਾਅਵਾ, ਦੁਬਾਰਾ. ਇਹ ਲੇਖ ਟੈਕਸ ਸਲਾਹ ਨਹੀਂ ਹੈ। ਇਸ ਤੋਂ ਪਹਿਲਾਂ ਕਿ ਤੁਸੀਂ ਅਸਲ HMRC ਖਾਤੇ 'ਤੇ ਇਸ ਤਰ੍ਹਾਂ ਦੀ ਕੋਈ ਚੀਜ਼ ਇਸ਼ਾਰਾ ਕਰੋ, ਆਪਣੀ ਪਹਿਲੀ ਰਿਟਰਨ ਐਂਡ-ਟੂ-ਐਂਡ ਦੀ ਸਮੀਖਿਆ ਕਰਨ ਲਈ ਯੂਕੇ-ਰਜਿਸਟਰਡ ਅਕਾਊਂਟੈਂਟ ਨੂੰ ਪ੍ਰਾਪਤ ਕਰੋ। HMRC MTD ਸੈਂਡਬੌਕਸ ਦੇ ਵਿਰੁੱਧ ਉਦੋਂ ਤੱਕ ਦੌੜੋ ਜਦੋਂ ਤੱਕ ਤੁਸੀਂ ਅਤੇ ਤੁਹਾਡਾ ਅਕਾਊਂਟੈਂਟ ਦੋਨੋਂ ਭਰੋਸੇਮੰਦ ਨਹੀਂ ਹੁੰਦੇ। ਕਿਸੇ ਖਾਸ VAT ਇਲਾਜ 'ਤੇ ਅਧਿਕਾਰਤ ਨਿਯਮ ਲਈ, gov.uk ਵੈੱਬਸਾਈਟ 'ਤੇ HMRC VAT ਨੋਟਿਸ 700 ਅਤੇ ਸੰਬੰਧਿਤ ਨੋਟਿਸ ਦੇਖੋ। ਜੇ ਤੁਸੀਂ ਇਸ ਸਭ ਦਾ ਛੋਟਾ ਸੰਸਕਰਣ ਚਾਹੁੰਦੇ ਹੋ, ਤਾਂ ਸਾਥੀ ਬਲੌਗ ਪੋਸਟ ਇੱਕ ਪੰਜ-ਮਿੰਟ ਪੜ੍ਹਿਆ ਹੈ; ਨਹੀਂ ਤਾਂ, ਸਬਸਕ੍ਰਾਈਬ ਕਰੋ ਅਤੇ ਸਟੈਕ ਦੇ ਪਰਿਪੱਕ ਹੋਣ 'ਤੇ ਮੈਂ ਲਿਖਦਾ ਰਹਾਂਗਾ।
ਇਸ ਲੇਖ ਲਈ ਐਸਈਓ ਸਨੈਪਸ਼ਾਟ
- ਐਸਈਓ ਸਿਰਲੇਖ: Claude Code ਨਾਲ ਇੱਕ VAT ਰਿਟਰਨ ਸਿਸਟਮ ਬਣਾਓ
- ਮੈਟਾ ਵਰਣਨ: ਆਪਣੇ ਇਨਵੌਇਸ ਅਤੇ ਖਰਚਿਆਂ ਨੂੰ DB ਪੜ੍ਹਨ ਲਈ Claude Code ਦੀ ਵਰਤੋਂ ਕਰੋ, VAT ਨੂੰ ਸ਼੍ਰੇਣੀਬੱਧ ਕਰੋ, HMRC Box 1 ਤੋਂ 9 ਦੀ ਗਣਨਾ ਕਰੋ, ਡ੍ਰਾਈ-ਰਨ ਕਰੋ, ਫਿਰ MTD ਨੂੰ ਜਮ੍ਹਾਂ ਕਰੋ - ਨਿਰਧਾਰਨ ਇੰਜਣ, ਮਨੁੱਖੀ ਪ੍ਰਵਾਨਗੀ।
- ਪ੍ਰਾਇਮਰੀ ਕੀਵਰਡ: ਕਲੌਡ-ਕੋਡ, ਵੈਟ, ਐਚਐਮਆਰਸੀ, ਐਮਟੀਡੀ, ਲੇਖਾਕਾਰੀ, ਆਟੋਮੇਸ਼ਨ, ਪਾਈਥਨ, ਏਆਈ-ਏਜੰਟ, ਫਿਨੋਪਸ, ਛੋਟਾ-ਕਾਰੋਬਾਰ
- Twitter / X (280 ਅੱਖਰਾਂ ਤੋਂ ਘੱਟ): Claude Code ਪ੍ਰੋਜੈਕਟ ਦੇ ਤੌਰ 'ਤੇ ਮੇਰੀ UK VAT ਰਿਟਰਨ ਨੂੰ ਦੁਬਾਰਾ ਬਣਾਇਆ: Postgres ਇਨਵੌਇਸ + ਖਰਚੇ DB ਤੋਂ HMRC Box 1 ਤੋਂ 9, ਨਿਰਧਾਰਕ ਪਾਈਥਨ ਇੰਜਣ, ਸੈਂਡਬੌਕਸ-ਪਹਿਲਾ MTD ਸਬਮਿਟ, ਮਨੁੱਖੀ ਮਨਜ਼ੂਰੀ ਗੇਟ। ਪੂਰਾ ਲਿਖਣ-ਅੱਪ + ਵਰਕਫਲੋ SVG + ਡੈਮੋ ਵੀਡੀਓ। ਟੈਕਸ ਸਲਾਹ ਨਹੀਂ। #ClaudeCode #VAT #HMRC #MTD
- ਲਿੰਕਡਇਨ ਪੋਸਟ: ਮੈਂ ਇਸ ਸਾਲ ਇੱਕ ਛੋਟੇ Claude Code ਪ੍ਰੋਜੈਕਟ ਵਜੋਂ ਆਪਣੀ ਤਿਮਾਹੀ ਯੂਕੇ VAT ਰਿਟਰਨ ਨੂੰ ਦੁਬਾਰਾ ਬਣਾਇਆ ਹੈ। ਇਹ ਮੇਰੇ ਇਨਵੌਇਸ ਅਤੇ ਖਰਚਿਆਂ ਦੇ ਡੇਟਾਬੇਸ ਨੂੰ ਰੀਡ-ਓਨਲੀ ਪੜ੍ਹਦਾ ਹੈ, ਇੱਕ ਦਸਤਾਵੇਜ਼ੀ ਨਿਯਮ ਫਾਈਲ ਦੀ ਵਰਤੋਂ ਕਰਦੇ ਹੋਏ VAT ਟ੍ਰੀਟਮੈਂਟ ਦੁਆਰਾ ਹਰੇਕ ਲਾਈਨ ਨੂੰ ਸ਼੍ਰੇਣੀਬੱਧ ਕਰਦਾ ਹੈ, ਇੱਕ ਨਿਰਧਾਰਕ ਪਾਈਥਨ ਇੰਜਣ (ਅੰਕ ਗਣਿਤ ਵਿੱਚ ਕੋਈ LLM ਨਹੀਂ) ਨਾਲ HMRC Box 1 ਤੱਕ 9 ਦੀ ਗਣਨਾ ਕਰਦਾ ਹੈ, ਅਤੇ ਕੇਵਲ ਮੇਰੇ ਸਾਈਨ-ਆਫ ਹੋਣ ਤੋਂ ਬਾਅਦ ਇਹ HMRC, ਸੈਂਡ-ਪ੍ਰੀਵੈਂਟ, HMRC ਹੈੱਡ-ਐਕਸਪੀਆਰ-ਐਕਸਪੀਆਰ-ਐਕਸਪੀਆਰ-ਐਕਸਪੀਆਰ-ਐਕਸਪੀਆਰ-ਐਕਸਪੀਆਰਐਕਸ-ਐਕਸਪੀਆਰਐਕਸ-ਐਕਸਪੀਆਰ-ਐਕਸਪੀਆਰਐਕਸ-ਐਕਸਪੀਆਰਐਕਸ-ਐਕਸਪੀਆਰਐਕਸ. ਪੂਰਾ OAuth2 ਵਹਾਅ। ਪੂਰੀ ਤਿਮਾਹੀ ਵਿੱਚ ਹੁਣ ਲਗਭਗ ਇੱਕ ਘੰਟਾ ਲੱਗਦਾ ਹੈ। ਪ੍ਰੋਂਪਟ, ਸਕੀਮਾ, ਇੰਜਨ ਕੋਡ, ਕਿਨਾਰੇ ਦੇ ਕੇਸਾਂ, ਅਤੇ ਇਮਾਨਦਾਰ ਲਾਗਤ ਕਹਾਣੀ ਦੇ ਨਾਲ ਪੂਰਾ ਲਿਖਣਾ Workstation 'ਤੇ ਹੈ। ਟੈਕਸ ਸਲਾਹ ਨਹੀਂ; ਆਪਣੀ ਪਹਿਲੀ ਵਾਪਸੀ ਦੀ ਸਮੀਖਿਆ ਕਰਨ ਲਈ ਇੱਕ ਲੇਖਾਕਾਰ ਨੂੰ ਪ੍ਰਾਪਤ ਕਰੋ।
