Skip to main content

Charge Codes

This document delineates the configuration of Charge Codes across both the Accounts Payable (AP) and Accounts Receivable (AR) modules.

When your enterprise is required to track supplemental financial amounts—such as freight, insurance, or installation services—in addition to the standard line items on a sales or purchase order, Charge Codes provide the architectural mechanism to achieve this. By defining explicit charge codes, you dictate whether these supplementary amounts are capitalized into the inventory cost of the items or expensed immediately to specific general ledger accounts.

Conceptual Overview​

Charge Codes establish the underlying accounting rules for supplemental transaction amounts. Whether you are adding a freight charge to a customer invoice (AR) or recording an installation fee from a vendor (AP), the system requires a definitive rule mapping how the debit and credit legs of that specific charge should be posted to the General Ledger.

Calculation methods and allocation methods​

A Charge Code only defines how a charge posts (Ledger vs Customer/Vendor, which accounts). Two other choices, made when you actually add a charge to an invoice - not when you configure the code - decide how much it is and which lines carry it:

  • Calculation method - how the charge's total amount is computed:
    • Fixed amount: the amount you enter is the charge, in full.
    • Percentage: the amount you enter is a percentage of the invoice's net amount (the sum of every included line's Net amount).
    • Per unit: the amount you enter is multiplied by the total quantity across the invoice's included lines.
  • Allocation method - only relevant when the charge is being spread across lines rather than left on the header - how that total is divided up:
    • By net amount: proportional to each line's own Net amount.
    • By quantity: proportional to each line's own Quantity.
    • Per line (equally): split evenly across however many lines are included, regardless of their amount or quantity.
Choosing an Allocation method spreads the charge immediately - there's no separate "allocate later" step

Adding a charge is a single action: leave Allocation method unset and the charge stays as one line on the invoice header; set an Allocation method and the charge is split across the selected lines (or every line, if none are individually selected) the moment you add it, becoming a separate line-level amount on each. There's no way to add a header charge first and allocate it to lines afterwards as a second step - the choice is made once, at creation.

Worked examples​

An invoice has two lines and a FREIGHT charge code configured as a Customer/Vendor debit (or credit) against a Ledger revenue/expense account:

LineQuantityNet amount
A1,0001,125
B1002,000
Total1,1003,125

Fixed amount, Value = 200 - the charge is 200, full stop, regardless of quantity or net amount:

  • By net amount: A gets 200 × (1,125 / 3,125) = 72; B gets 200 × (2,000 / 3,125) = 128.
  • By quantity: A gets 200 × (1,000 / 1,100) = 181.82; B gets 200 × (100 / 1,100) = 18.18.
  • Per line (equally): A and B each get 200 / 2 = 100.

Percentage, Value = 10 (10%) - the charge total is computed first, against the whole net amount of the lines being charged: 3,125 × 10% = 312.50. That total is then split the same three ways:

  • By net amount: A gets 312.50 × (1,125 / 3,125) = 112.50; B gets 312.50 × (2,000 / 3,125) = 200.00.
  • By quantity: A gets 312.50 × (1,000 / 1,100) = 284.09; B gets 312.50 × (100 / 1,100) = 28.41.
  • Per line (equally): A and B each get 312.50 / 2 = 156.25.

Per unit, Value = 0.50 - the charge total is 0.50 × 1,100 units = 550, then split:

  • By net amount: A gets 550 × (1,125 / 3,125) = 198; B gets 550 × (2,000 / 3,125) = 352.
  • By quantity: A gets 550 × (1,000 / 1,100) = 500; B gets 550 × (100 / 1,100) = 50.
  • Per line (equally): A and B each get 550 / 2 = 275.

Notice that Percentage and Per unit always compute their total against the lines actually being charged - select only line B and set Percentage to 10%, and the total is 2,000 × 10% = 200, not 3,125 × 10% = 312.50. A charge left on the header (no Allocation method, no line selection) computes Percentage/Per unit against the entire invoice's lines, since there's no subset to restrict it to.

Rounding can leave a cent unaccounted for, uncorrected

Each line's share is computed and rounded independently, with no pass afterward to reconcile the rounded shares back to the original charge total. Splitting 100 three ways by Per line (equally) computes 100 / 3 = 33.33 once and assigns that same 33.33 to all three lines - so the split really is equal, but the three lines only add up to 99.99, a cent short of the original charge. By net amount / By quantity round each line's own proportional share separately, so an unequal split can be off by a cent or two the same way. Nothing redistributes the difference to any line; a discrepancy is only logged internally, never corrected or shown to you.

Configuring Charge Codes for Accounts Receivable​

To define the accounting behavior for charges levied against your customers:

  1. Navigate to Accounts receivable > Setup > Charge codes.
  2. Select New on the action toolbar.
  3. Code: Enter a unique, definitive identifier for the charge (e.g., FREIGHT, INSTALL).
  4. Description: Provide a comprehensive description of the charge's purpose.

AR Accounting Rules​

Expand the Accounting rules FastTab to specify the automated debit and credit routing for the charge.

If you designate Ledger as either the debit or credit account type, you must explicitly define both the Posting type and the specific GL account that will absorb the financial impact.

Example Configuration: Customer pays the charge In this scenario, the charge is added to the customer's total invoice balance, and the enterprise recognises the charge as supplementary revenue.

  • DEBIT:
    • Account type: Customer/vendor (This automatically routes the debit to the customer's subledger balance).
    • Posting type: Customer balance.
  • CREDIT:
    • Account type: Ledger.
    • Posting type: Revenue.
    • GL account: Select the main account designated for supplementary revenue (e.g., 4100 - Service Revenue).

Configuring Charge Codes for Accounts Payable​

To define the accounting behavior for charges incurred from your vendors:

  1. Navigate to Accounts payable > Setup > Charge codes.
  2. Select New on the action toolbar.
  3. Code: Enter a unique identifier for the vendor charge.
  4. Description: Provide a clear description of the incurred expense.

AP Accounting Rules​

Expand the Accounting rules FastTab to dictate how the vendor charge impacts your financials.

Example Configuration 1: Charge treated as an operational expense In this scenario, the vendor charge (e.g., expedited shipping) is expensed directly to the P&L, independent of the purchased item's inventory value.

  • CREDIT:
    • Account type: Customer/vendor (This routes the credit to the vendor's subledger balance, increasing the accounts payable liability).
    • Posting type: Vendor balance.
  • DEBIT:
    • Account type: Ledger.
    • Posting type: Expense.
    • GL account: Select the main account for the specific expense (e.g., 6100 - Freight Expense).

Example Configuration 2: Charge capitalized into inventory cost In this scenario, the unit charge is capitalized, increasing the moving average or standard cost of the procured item.

  • CREDIT:
    • Account type: Customer/vendor.
    • Posting type: Vendor balance.
  • DEBIT:
    • Account type: Item (This instructs the system to distribute the charge amount across the relevant purchase order lines, capitalizing the cost into inventory).