Import Accounting — Bill of Entry & Five-Bucket Receipts
Capture customs duty at source per HSN line, split the goods receipt into the five buckets that match physical reality, route recovery to the right counterparty — vendor, customs, insurer — and post to Tally with the duty attribution intact.
The Challenge
Import receipts don't fit a domestic three-bucket model. A single shipment can land partly accepted, partly short of invoiced quantity, partly damaged in transit, and partly rejected on inspection — and customs duty has already been paid on every declared unit.
Proportionally allocating header-level customs duty across line items at goods receipt breaks for mixed-HSN consignments where different lines attract different duty rates — and leaves no audit trail for short-landing claims or insurance recoveries.
Auditors flag these gaps under the Customs Act 1962 (Section 17 assessment, Section 27 refund) and under SA 580 when management cannot evidence the duty attribution behind imported asset values.
How ProcureTrail Addresses This
Bill of Entry as Source Document
Every import receipt is anchored to a first-class Bill of Entry record — BoE number and date, port code and name, CHA, shipping bill, transport mode, notified exchange rate, assessable value, total duty, and an import scheme code (advance authorisation, EPCG, EOU, SEZ). Per-line records carry HSN, assessable value, BCD, SWS, IGST and Cess. Goods receipt lines link to BoE lines so duty attribution survives all the way to the Tally posting.
Five-Bucket Goods Receipt
Each import goods receipt line carries five quantity buckets — accepted, normal loss, rejected, damaged, short-landed. The sum of buckets cannot exceed received quantity; over-allocation is rejected at post with a structured 422. Normal loss with treatment WRITE_OFF forces ITC reversal at submit — an asset that was never received cannot retain Input Tax Credit.
Customs Duty Journal — Per-Bucket Routing
At post, ProcureTrail emits a v2 customs duty journal where every duty head routes to the ledger that matches the bucket and recovery path: asset capitalisation for accepted, Input IGST for retained ITC, Abnormal Stock Loss for normal-loss write-off, Customs Duty Loss for damage and rejection, Short-Landing Claim Receivable for customs drawback, Cargo Insurance Receivable for insurer recovery, Vendor Duty Reimbursement Receivable for DDP contracts. Credits net to Customs Authority Payable.
Basic-Recovery Journal — Closes the Vendor-Credit Gap
The standard purchase voucher debits stock or asset for accepted quantity only. For non-accepted buckets the vendor was credited for the full invoiced quantity — a gap exists between vendor credit and physical receipt. ProcureTrail emits a basic-recovery journal that closes the gap: debits the loss or receivable account, credits the vendor for the differential. RECOVER_FROM_VENDOR lines are skipped here (settled via vendor debit note when raised — no double-recovery). Foreign-currency vendor credits carry inline forex.
Preview Before You Post
POST /grn/{id}/preview-posting returns the exact set of vouchers that the real post will emit — purchase voucher, customs duty journal, basic-recovery journal, bucket breakdown, and any warnings or errors. The preview is side-effect-free (no database writes, no Tally enqueue) and shares the same builder code as the real post. What you see in the preview is what posts.
Recovery Ageing — Track Every Open Claim
GET /import/receivables lists every import receivable awaiting settlement — short-landing claims, cargo insurance claims, vendor duty reimbursements, vendor recoveries. Filterable by ledger, vendor, Bill of Entry, date range, and days-outstanding threshold. CSV and XLSX export. Read-only — no state actions — so finance can chase recoveries without touching the goods receipt or its postings.
Optional — Opt In Per Organisation
Import accounting is governed by a per-organisation flag, default off. While off, goods receipt posting uses the legacy header-proportional duty allocation — byte-identical to pre-feature behaviour. Flipping the flag on requires four SystemLedgerMap rows to be filled with Tally ledger names (Short-Landing Claim Receivable, Cargo Insurance Receivable, Customs Duty Loss, Abnormal Stock Loss — Imports). Two more ledgers are lazy and mapped only when an organisation actually uses DDP contracts or per-bucket vendor overrides. Flipping the flag off is instant rollback.
Recovery-Path Matrix
Every non-accepted bucket carries its own recovery path — who is on the hook for this loss. Mismatched combinations are rejected at submit.
Normal Loss
Write-off (ITC reversal forced), absorb-and-retain (ITC retained), or absorb-and-reverse (basic capitalised, IGST reversed). Permissible transit loss within tolerance.
Rejected
Write-off to loss account, recover-from-vendor (vendor debit note for basic), or recover-from-vendor-with-duty when the contract places customs duty on the vendor too.
Damaged
Write-off, recover-from-vendor, recover-from-vendor-with-duty, or recover-from-insurer when in-transit damage is covered by the cargo insurance policy.
Short-Landed
Write-off, vendor recovery (basic or basic+duty), insurer recovery, or recover-from-customs — the drawback path under Customs Act Section 27.
Insurance policies vary on what they cover. A Boolean on the Bill of Entry — insurance_covers_duty — captures the policy posture. When true, both basic and duty route to Cargo Insurance Receivable; when false, basic goes to insurance but duty routes to Customs Duty Loss. Setting the flag right keeps the claim aligned with the policy.
Compliance Mapping
Customs Act 1962
Sections 17 & 27
Bill of Entry captured as a first-class entity per HSN line; duty attribution preserved through to Tally. Short-landed recover-from-customs path routes to a Drawback Receivable with BoE reference for Section 27 refund claims.
CGST Act 2017
Sections 17(5) & 18(4)
Per-line ITC eligibility with eleven-value statutory block-reason enum carries through goods receipt to asset cost components. Normal-loss write-off forces ITC reversal — cannot retain credit on stock never received.
Companies Act 2013
Section 143(3)(i)
Bucket sum-bound at post, recovery-path matrix enforced at submit, setter-gate on the import accounting flag with four mandatory ledgers — internal financial controls over imported asset valuation.
SA 580
Written Representations
Per-asset cost-breakdown endpoint exposes per-component duty attribution traceable to the Bill of Entry line — management representations on asset cost are evidenced, not asserted.
Further Reading
Tally Asset Integration — From PO to Asset MasterHow import duties flow from the Bill of Entry through to the Tally Fixed Assets debit.
Asset Write-Off, Scrap and DisposalWhere normal-loss write-offs and damaged-stock losses settle in the accounting flow.
GST ITC Reversed Due to Vendor GSTIN ChangeHow per-line ITC posture protects credit on imports when domestic vendor reconciliation fails.
Assess How This Applies to Your Organisation
Share a brief overview of your import volumes and the customs duty heads typical to your trade, and we will evaluate how the Bill-of-Entry-sourced accounting flow may apply to your setup.