Skip to content
ERPNext Data Model
Esc
navigateopen⌘Jpreview
On this page

Masters

Accounts masters — 42 entities with their key fields and relationships.

Reference data with an independent lifecycle: created once, referenced many times.

42 entities in Accounts.

Account

Represents a posting or group head in the chart of accounts, where accounting entries are classified and balances maintained.

Naming: hash · 21 fields · 146 inbound refs · tree / nested set

Key fields

Field Type Req Label
account_name Data yes Account Name
account_number Data Account Number
disabled Check Disable

Relationships

Field Type References Req
account_category Link Account Category
account_currency Link Currency (fw)
company Link Company yes
parent_account Link Account yes

Account Category

Classifies accounts under a named category and root type for reporting and account setup.

Naming: field account_category_name · 4 fields · 1 inbound ref

Key fields

Field Type Req Label
account_category_name Data yes Account Category Name
root_type Select Root Type

Relationships

No outgoing relationships.

Accounting Dimension

Turns a reference DocType into an additional accounting dimension that can be applied to accounting records and defaults.

Naming: field label · 5 fields · 0 inbound refs

Key fields

Field Type Req Label
label Data Dimension Name
disabled Check Disable

Relationships

Field Type References Req
document_type Link DocType (fw) yes
dimension_defaults Table Accounting Dimension Detail

Accounting Dimension Filter

Allows or restricts dimension values for selected Accounts, controlling which accounting tags may be used together.

Naming: format {accounting_dimension}-{#####} · 13 fields · 0 inbound refs

Key fields

Field Type Req Label
accounting_dimension Select yes Accounting Dimension
allow_or_restrict Select yes Allow Or Restrict Dimension
disabled Check Disabled

Relationships

Field Type References Req
company Link Company yes
accounts Table Applicable On Account yes
dimensions Table Allowed Dimension

Accounting Period

Defines a date range in which selected accounting transactions can be closed or reopened by role.

Naming: field period_name · 9 fields · 0 inbound refs

Key fields

Field Type Req Label
period_name Data yes Period Name
start_date Date yes Start Date
end_date Date yes End Date
disabled Check Disabled

Relationships

Field Type References Req
company Link Company yes
exempted_role Link Role (fw)
closed_documents Table Closed Document yes

Bank

Defines a bank whose statement transactions can be imported, mapped, and reconciled in ERPNext.

Naming: field bank_name · 13 fields · 4 inbound refs

Key fields

Field Type Req Label
bank_name Data yes Bank Name
swift_number Data SWIFT number

Relationships

Field Type References Req
bank_transaction_mapping Table Bank Transaction Mapping

Bank Account

Represents a company or party bank account used for payments, statement imports, balances, and reconciliation.

Naming: hash · 30 fields · 11 inbound ref

Key fields

Field Type Req Label
account_name Data yes Account Name
iban Data IBAN
bank_account_no Data Bank Account No
disabled Check Disabled

Relationships

Field Type References Req
account Link Account
account_subtype Link Bank Account Subtype
account_type Link Bank Account Type
bank Link Bank yes
company Link Company
party_type Link DocType (fw)
party Dynamic Link resolved via party_type

Bank Account Subtype

Defines a reusable subtype for further classifying Bank Accounts.

Naming: field account_subtype · 1 fields · 1 inbound ref

Relationships

No outgoing relationships.

Bank Account Type

Defines a reusable type for classifying Bank Accounts.

Naming: field account_type · 1 fields · 1 inbound ref

Relationships

No outgoing relationships.

Bank Transaction Rule

Classifies imported Bank Transactions by amount and description conditions and supplies the accounts or party for the resulting entry.

Naming: field rule_name · 19 fields · 1 inbound ref

Key fields

Field Type Req Label
rule_name Data yes Rule Name
transaction_type Select yes Transaction Type
classify_as Select yes Classify As
priority Int yes Priority

Relationships

Field Type References Req
account Link Account
company Link Company yes
party_type Link DocType (fw)
accounts Table Bank Transaction Rule Accounts
description_rules Table Bank Transaction Rule Description Conditions yes
party Dynamic Link resolved via party_type

Cheque Print Template

Defines the positioning and dimensions used when printing cheques for a bank Account.

Naming: field bank_name · 39 fields · 0 inbound refs

Key fields

Field Type Req Label
bank_name Data yes Bank Name

Relationships

No outgoing relationships.

Cost Center

Represents an organizational unit against which income and expenses can be tracked.

Naming: hash · 11 fields · 70 inbound refs · tree / nested set

Key fields

Field Type Req Label
cost_center_name Data yes Cost Center Name
cost_center_number Data Cost Center Number
disabled Check Disabled

Relationships

Field Type References Req
company Link Company yes
old_parent Link Cost Center
parent_cost_center Link Cost Center yes

Coupon Code

Defines a code that applies a linked Pricing Rule to eligible shopping-cart transactions.

Naming: field coupon_name · 15 fields · 5 inbound refs

Key fields

Field Type Req Label
coupon_name Data yes Coupon Name
coupon_type Select yes Coupon Type
valid_from Date Valid From

Relationships

Field Type References Req
amended_from Link Coupon Code
customer Link Customer
pricing_rule Link Pricing Rule

Dunning Type

Defines the fee, interest, accounts, and language-specific letter text used when creating a Dunning notice.

Naming: By script · 14 fields · 1 inbound ref

Key fields

Field Type Req Label
dunning_type Data yes Dunning Type
dunning_fee Currency Dunning Fee
rate_of_interest Float Rate of Interest (%) Yearly

Relationships

Field Type References Req
company Link Company yes
cost_center Link Cost Center
income_account Link Account
dunning_letter_text Table Dunning Letter Text

Finance Book

Identifies a separate accounting book used to maintain alternate ledger or depreciation treatments.

Naming: field finance_book_name · 1 fields · 15 inbound refs

Relationships

No outgoing relationships.

Financial Report Template

Defines reusable rows and formulas for generating structured financial statements.

Naming: field template_name · 7 fields · 0 inbound refs

Key fields

Field Type Req Label
template_name Data yes Template Name
report_type Select yes Report Type
disabled Check Disabled

Relationships

Field Type References Req
module Link Module Def (fw)
rows Table Financial Report Row

Fiscal Year

Defines the annual accounting period used to date, close, and report transactions.

Naming: field year · 7 fields · 7 inbound refs

Key fields

Field Type Req Label
year Data yes Year Name
disabled Check Disabled
year_start_date Date yes Year Start Date
year_end_date Date yes Year End Date

Relationships

Field Type References Req
companies Table Fiscal Year Company

Item Tax Template

Defines item-specific tax rates that can override or supplement transaction-level tax templates.

Naming: hash · 6 fields · 10 inbound refs

Key fields

Field Type Req Label
title Data yes Title
disabled Check Disabled

Relationships

Field Type References Req
company Link Company yes
taxes Table Item Tax Template Detail yes

Journal Entry Template

Stores a reusable set of Journal Entry accounts and defaults for repeated postings.

Naming: field template_title · 10 fields · 1 inbound ref

Key fields

Field Type Req Label
voucher_type Select yes Journal Entry Type
naming_series Select yes Series
template_title Data yes Template Title

Relationships

Field Type References Req
company Link Company yes
accounts Table Journal Entry Template Account

Ledger Merge

Tracks the controlled merge of selected accounts into one target Account.

Naming: format {account_name} merger on {creation} · 10 fields · 0 inbound refs

Key fields

Field Type Req Label
status Select Status
root_type Select yes Root Type
account_name Data yes Account Name

Relationships

Field Type References Req
account Link Account yes
company Link Company yes
merge_accounts Table Ledger Merge Accounts yes

Loyalty Program

Defines how Customers earn and redeem loyalty points, including tiers, expiry, and conversion rules.

Naming: field loyalty_program_name · 22 fields · 4 inbound refs

Key fields

Field Type Req Label
loyalty_program_name Data yes Loyalty Program Name
from_date Date yes From Date

Relationships

Field Type References Req
company Link Company
cost_center Link Cost Center
customer_group Link Customer Group
customer_territory Link Territory
expense_account Link Account
project Link Project
collection_rules Table Loyalty Program Collection yes

Mode of Payment

Defines a payment method, such as cash or bank transfer, and its default company Accounts.

Naming: field mode_of_payment · 4 fields · 14 inbound refs

Key fields

Field Type Req Label
mode_of_payment Data yes Mode of Payment

Relationships

Field Type References Req
accounts Table Mode of Payment Account

Monthly Distribution

Distributes an annual Budget or target across months using reusable percentages.

Naming: field distribution_id · 3 fields · 1 inbound ref

Key fields

Field Type Req Label
distribution_id Data yes Distribution Name

Relationships

Field Type References Req
fiscal_year Link Fiscal Year
percentages Table Monthly Distribution Percentage

POS Profile

Collects the defaults and permissions used by a point-of-sale session, including its company, warehouse, customer, and payment settings.

Naming: user prompt · 76 fields · 4 inbound refs

Key fields

Field Type Req Label
disabled Check Disabled
write_off_limit Currency yes Write Off Limit

Relationships

Field Type References Req
account_for_change_amount Link Account
company Link Company yes
company_address Link Address (fw)
cost_center Link Cost Center
currency Link Currency (fw) yes
customer Link Customer
expense_account Link Account
income_account Link Account
letter_head Link Letter Head (fw)
print_format Link Print Format (fw)
project Link Project
select_print_heading Link Print Heading (fw)
selling_price_list Link Price List
tax_category Link Tax Category
taxes_and_charges Link Sales Taxes and Charges Template
tc_name Link Terms and Conditions
utm_campaign Link UTM Campaign (fw)
utm_medium Link UTM Campaign (fw)
utm_source Link UTM Source (fw)
warehouse Link Warehouse yes
write_off_account Link Account yes
write_off_cost_center Link Cost Center yes
applicable_for_users Table POS Profile User
customer_groups Table POS Customer Group
item_groups Table POS Item Group
payments Table POS Payment Method yes

Links two party records that represent different roles of the same real-world party, such as a Customer that is also a Supplier.

Naming: ACC-PT-LNK-.###. · 5 fields · 0 inbound refs

Relationships

Field Type References Req
primary_role Link DocType (fw) yes
secondary_role Link DocType (fw)
primary_party Dynamic Link resolved via primary_role
secondary_party Dynamic Link resolved via secondary_role

Payment Gateway Account

Connects a payment gateway to the company Account, currency, channel, and default message used for Payment Requests.

Naming: hash · 10 fields · 2 inbound refs

Relationships

Field Type References Req
company Link Company yes
payment_account Link Account yes
payment_gateway Link Payment Gateway (payments) yes

Payment Term

Defines one due-date and invoice-portion rule, with optional early-payment discount terms, for use in payment schedules.

Naming: field payment_term_name · 15 fields · 5 inbound refs

Key fields

Field Type Req Label
payment_term_name Data Payment Term Name
invoice_portion Float Invoice Portion (%)
due_date_based_on Select Due Date Based On
credit_days Int Credit Days
description Small Text Description

Relationships

Field Type References Req
mode_of_payment Link Mode of Payment

Payment Terms Template

Combines multiple Payment Terms into a reusable schedule for sales and purchase transactions.

Naming: field template_name · 3 fields · 12 inbound refs

Relationships

Field Type References Req
terms Table Payment Terms Template Detail yes

Pricing Rule

Applies a price, margin, or discount when a transaction matches defined party, item, quantity, or date conditions.

Naming: Naming Series · 88 fields · 2 inbound refs

Key fields

Field Type Req Label
title Data yes Title
apply_on Select yes Apply On
price_or_product_discount Select yes Price or Product Discount
naming_series Select Naming Series

Relationships

Field Type References Req
campaign Link UTM Campaign (fw)
company Link Company
currency Link Currency (fw) yes
customer Link Customer
customer_group Link Customer Group
for_price_list Link Price List
free_item Link Item
free_item_uom Link UOM
other_brand Link Brand
other_item_code Link Item
other_item_group Link Item Group
promotional_scheme Link Promotional Scheme
sales_partner Link Sales Partner
supplier Link Supplier
supplier_group Link Supplier Group
territory Link Territory
warehouse Link Warehouse
brands Table Pricing Rule Brand
item_groups Table Pricing Rule Item Group
items Table Pricing Rule Item Code

Process Statement Of Accounts

Generates and emails statements and ageing reports to selected Customers in bulk or on a schedule.

Naming: user prompt · 57 fields · 0 inbound refs

Key fields

Field Type Req Label
include_ageing Check Include Ageing Summary
enable_auto_email Check Enable Auto Email
report Select yes Report
posting_date Date Posting Date

Relationships

Field Type References Req
account Link Account
company Link Company yes
currency Link Currency (fw)
finance_book Link Finance Book
letter_head Link Letter Head (fw)
payment_terms_template Link Payment Terms Template
print_format Link Print Format (fw)
sales_partner Link Sales Partner
sales_person Link Sales Person
sender Link Email Account (fw)
terms_and_conditions Link Terms and Conditions
territory Link Territory
cc_to Table MultiSelect Process Statement Of Accounts CC
cost_center Table MultiSelect PSOA Cost Center
customers Table Process Statement Of Accounts Customer yes
project Table MultiSelect PSOA Project
collection_name Dynamic Link resolved via customer_collection

Promotional Scheme

Defines temporary price or product discounts and generates the Pricing Rules that apply them.

Naming: user prompt · 37 fields · 1 inbound ref

Key fields

Field Type Req Label
apply_on Select yes Apply On

Relationships

Field Type References Req
company Link Company yes
currency Link Currency (fw)
other_brand Link Brand
other_item_code Link Item
other_item_group Link Item Group
brands Table Pricing Rule Brand
campaign Table MultiSelect Campaign Item
customer Table MultiSelect Customer Item
customer_group Table MultiSelect Customer Group Item
item_groups Table Pricing Rule Item Group
items Table Pricing Rule Item Code
price_discount_slabs Table Promotional Scheme Price Discount
product_discount_slabs Table Promotional Scheme Product Discount
sales_partner Table MultiSelect Sales Partner Item
supplier Table MultiSelect Supplier Item
supplier_group Table MultiSelect Supplier Group Item
territory Table MultiSelect Territory Item

Purchase Taxes and Charges Template

Stores a reusable set of taxes and additional charges for purchase transactions.

Naming: hash · 8 fields · 7 inbound refs

Key fields

Field Type Req Label
title Data yes Title
is_default Check Default
disabled Check Disabled

Relationships

Field Type References Req
company Link Company yes
tax_category Link Tax Category
taxes Table Purchase Taxes and Charges

Sales Taxes and Charges Template

Stores a reusable set of taxes and additional charges for sales transactions.

Naming: hash · 8 fields · 9 inbound refs

Key fields

Field Type Req Label
title Data yes Title
is_default Check Default
disabled Check Disabled

Relationships

Field Type References Req
company Link Company yes
tax_category Link Tax Category
taxes Table Sales Taxes and Charges

Share Type

Defines a named class of company shares for Shareholder and Share Transfer records.

Naming: field title · 2 fields · 2 inbound refs

Key fields

Field Type Req Label
title Data yes Title

Relationships

No outgoing relationships.

Shareholder

Represents a person or organization that owns company shares and tracks its current holdings.

Naming: Naming Series · 15 fields · 2 inbound refs

Key fields

Field Type Req Label
title Data yes Title
naming_series Select naming_series

Relationships

Field Type References Req
company Link Company yes
share_balance Table Share Balance

Shipping Rule

Calculates a shipping charge from transaction value, quantity, weight, territory, or country conditions.

Naming: field label · 20 fields · 9 inbound refs

Key fields

Field Type Req Label
label Data yes Shipping Rule Label
disabled Check Disabled
calculate_based_on Select Calculate Based On

Relationships

Field Type References Req
account Link Account yes
company Link Company yes
cost_center Link Cost Center yes
project Link Project
conditions Table Shipping Rule Condition
countries Table Shipping Rule Country

Subscription

Schedules recurring Sales or Purchase Invoices for a party using one or more Subscription Plans.

Naming: Expression (old style) · 33 fields · 3 inbound refs

Key fields

Field Type Req Label
status Select Status
generate_invoice_at Select yes Generate Invoice At

Relationships

Field Type References Req
company Link Company
cost_center Link Cost Center
party_type Link DocType (fw) yes
purchase_tax_template Link Purchase Taxes and Charges Template
sales_tax_template Link Sales Taxes and Charges Template
plans Table Subscription Plan Detail yes
party Dynamic Link resolved via party_type

Subscription Plan

Defines the Item, price, billing interval, and charging behavior used by a Subscription.

Naming: field plan_name · 20 fields · 1 inbound ref

Key fields

Field Type Req Label
plan_name Data yes Plan Name
price_determination Select yes Subscription Price Based On
cost Currency Cost
billing_interval Select yes Billing Interval
billing_interval_count Int yes Billing Interval Count

Relationships

Field Type References Req
cost_center Link Cost Center
currency Link Currency (fw) yes
item Link Item yes
payment_gateway Link Payment Gateway Account
price_list Link Price List

Tax Category

Classifies parties or transactions so matching Tax Rules can select the appropriate tax template.

Naming: field title · 2 fields · 16 inbound refs

Key fields

Field Type Req Label
title Data yes Title
disabled Check Disabled

Relationships

No outgoing relationships.

Tax Rule

Selects a sales or purchase tax template when a transaction matches defined company, party, item, and location conditions.

Naming: ACC-TAX-RULE-.YYYY.-.##### · 32 fields · 0 inbound refs

Key fields

Field Type Req Label
tax_type Select Tax Type

Relationships

Field Type References Req
billing_country Link Country (fw)
company Link Company
customer Link Customer
customer_group Link Customer Group
item Link Item
item_group Link Item Group
purchase_tax_template Link Purchase Taxes and Charges Template
sales_tax_template Link Sales Taxes and Charges Template
shipping_country Link Country (fw)
supplier Link Supplier
supplier_group Link Supplier Group
tax_category Link Tax Category

Tax Withholding Category

Defines the rules used to deduct tax at source from qualifying supplier payments.

Naming: user prompt · 12 fields · 10 inbound refs

Key fields

Field Type Req Label
category_name Data Category Name
tax_deduction_basis Select yes Deduct Tax On Basis

Relationships

Field Type References Req
accounts Table Tax Withholding Account yes
rates Table Tax Withholding Rate yes

Tax Withholding Group

Defines a withholding group so a Tax Withholding Category can apply group-specific rates.

Naming: field group_name · 1 fields · 8 inbound refs

Key fields

Field Type Req Label
group_name Data yes Group Name

Relationships

No outgoing relationships.

Was this page helpful?