When submitting an AR voucher, the system validates payment terms by taking the lowest value among all applicable terms to ensure you cannot issue invoices with overly generous payment conditions. For each charge item in the voucher, the system first checks if there's a customer-specific (see manage>customers) override in chargeItemMisc (type: `chargeTerm`). If no override exists, it uses the chargeItem.term value. The system then compares this against the customer's debtorTerm and uses whichever is lower. If any term is set to `0`, it means immediate payment is required.


To allow unlimited payment terms for a charge item, simply leave the term field empty (NULL). Empty terms are ignored in validation, effectively removing any restriction from that charge item. This is useful for administrative fees or other charges that shouldn't limit your payment terms. The final voucher term must not exceed both the minimum charge item term and the customer's debtor term, ensuring compliance with your credit policies.