Taxrate data model

View field support, webhooks, and list parameters for each integration on the Supported Integrations page.

FieldTypeRequiredDescription
idstringNo
created_atstring (date-time)No(ISO-8601 / YYYY-MM-DDTHH:MM:SSZ format)
updated_atstring (date-time)No(ISO-8601 / YYYY-MM-DDTHH:MM:SSZ format)
namestringNo
descriptionstringNo
ratenumberNo%
is_activebooleanNo
organization_idstringNo
metadataAccountingMetadata[]No
metadata[].idstringNo
metadata[].slugstringNo
metadata[].valueobjectNo
metadata[].namespacestringNo
metadata[].formatenumNoValues: TEXT, NUMBER, DATE, BOOLEAN, FILE, TEXTAREA, SINGLE_SELECT, MULTIPLE_SELECT, MEASUREMENT, PRICE, YES_NO, CURRENCY, URL
metadata[].extra_dataobjectNo
effective_ratenumberNoNet effective rate in %, where it differs from the nominal rate
total_ratenumberNoSum of all components, in %
componentsAccountingTaxrateComponent[]NoComponent parts of a compound or multi-component tax
components[].namestringNoName of the tax component, e.g. GST or PST
components[].ratenumberNoRate of this component, in %
components[].is_compoundbooleanNoTrue when this component is charged on top of the other components
typeenumNoWhether the rate applies to sales, purchases, or both Values: SALES, PURCHASE, BOTH, OTHER
is_compoundbooleanNoTrue when the rate stacks on top of other taxes
countrystringNoJurisdiction country
regionstringNoJurisdiction state / province

TypeScript

TypeScript
export type AccountingTaxrate = {
	id?: string;
	created_at?: string-time; // (ISO-8601 / YYYY-MM-DDTHH:MM:SSZ format)
	updated_at?: string-time; // (ISO-8601 / YYYY-MM-DDTHH:MM:SSZ format)
	name?: string;
	description?: string;
	rate?: number; // %
	is_active?: boolean;
	organization_id?: string;
	metadata?: [];
	effective_rate?: number; // Net effective rate in %, where it differs from the nominal rate
	total_rate?: number; // Sum of all components, in %
	components?: []; // Component parts of a compound or multi-component tax
	type?: 'SALES' | 'PURCHASE' | 'BOTH' | 'OTHER'; // Whether the rate applies to sales, purchases, or both
	is_compound?: boolean; // True when the rate stacks on top of other taxes
	country?: string; // Jurisdiction country
	region?: string; // Jurisdiction state / province
	raw?: any;
} 

Zod

Zod
import { z } from 'zod';

export const ZodAccountingTaxrate = z.object({
	id: z.string().optional(),
	created_at: z.string-time().optional().describe("(ISO-8601 / YYYY-MM-DDTHH:MM:SSZ format)"),
	updated_at: z.string-time().optional().describe("(ISO-8601 / YYYY-MM-DDTHH:MM:SSZ format)"),
	name: z.string().optional(),
	description: z.string().optional(),
	rate: z.number().optional().describe("%"),
	is_active: z.boolean().optional(),
	organization_id: z.string().optional(),
	metadata: z.array().optional(),
	effective_rate: z.number().optional().describe("Net effective rate in %, where it differs from the nominal rate"),
	total_rate: z.number().optional().describe("Sum of all components, in %"),
	components: z.array().optional().describe("Component parts of a compound or multi-component tax"),
	type: z.enum("SALES", "PURCHASE", "BOTH", "OTHER").optional().describe("Whether the rate applies to sales, purchases, or both"),
	is_compound: z.boolean().optional().describe("True when the rate stacks on top of other taxes"),
	country: z.string().optional().describe("Jurisdiction country"),
	region: z.string().optional().describe("Jurisdiction state / province"),

});

Python

Python
import dataclasses

@dataclasses.dataclass
class AccountingTaxrateType(str, Enum):
	SALES = 'SALES'
	PURCHASE = 'PURCHASE'
	BOTH = 'BOTH'
	OTHER = 'OTHER'

@dataclasses.dataclass
class AccountingTaxrate:
	id: Optional[str]
	"""(ISO-8601 / YYYY-MM-DDTHH:MM:SSZ format)"""
	created_at: Optional[str]
	"""(ISO-8601 / YYYY-MM-DDTHH:MM:SSZ format)"""
	updated_at: Optional[str]
	name: Optional[str]
	description: Optional[str]
	"""%"""
	rate: Optional[int]
	is_active: Optional[bool]
	organization_id: Optional[str]
	metadata: Optional[PropertyAccountingTaxrateMetadata]
	"""Net effective rate in %, where it differs from the nominal rate"""
	effective_rate: Optional[int]
	"""Sum of all components, in %"""
	total_rate: Optional[int]
	"""Component parts of a compound or multi-component tax"""
	components: Optional[PropertyAccountingTaxrateComponents]
	"""Whether the rate applies to sales, purchases, or both"""
	type: Optional[AccountingTaxrateType]
	"""True when the rate stacks on top of other taxes"""
	is_compound: Optional[bool]
	"""Jurisdiction country"""
	country: Optional[str]
	"""Jurisdiction state / province"""
	region: Optional[str]
Are we missing anything? Let us know
Was this page helpful?