Cost objects on Perk

Only account admins and company admins can perform this task.

Cost objects are used to allocate and track costs coming through Perk. They can represent different parts of a business, such as departments, teams, projects, or cost centers, depending on how each business is set up and what they need to report on.

Cost objects can be:

In Perk, you can create cost objects manually. Alternatively, you can import them using a CSV file or using an integration with a third-party system such as an HR system, an ERP, or a finance and accounting system.

Caution: Only one source system can be used to synchronize cost objects. For example, if you import cost objects from an HR system, you can’t import them with an ERP system.

Once created, cost objects can’t be deleted, they can only be archived. This ensures traceability and maintains consistent reporting. A cost object can be used for travel management, expense processing, and invoice processing.

Tip: Cost objects replaced cost center for greater flexibility for companies:

  • Scoping by company: use a cost object in only one company if needed
  • Scoping by usage: create cost objects exclusively for travel, expense or invoice, if needed
  • Cost objects accessible by other people: people may be able to view and use other cost objects as well as their own default cost object.

Using cost objects for approval

Cost objects can be used determine the approval flow for travel, expenses or invoices.

For travel, you can choose to send all travel requests to the cost object approver as part of the travel approval process. Travel cost objects support one preferred approver and optional additional approvers (anyone can approve).

For expenses and invoices, you can choose a standard Perk approval strategy or create a custom workflow built with the workflow designer. If you use hierarchical cost objects, approval can be escalated up to parent cost object approvers.

  • Set up a travel approval process by cost object
  • Set up a expense approval process by cost object
  • Set up a invoice approval process by cost object

Cost object approval in travel

Often travel requests go straight to your direct manager. However, you can set the approval rule so that the cost object determines who signs off on the trip instead.

When you set up travel cost objects, assign a preferred approver for the cost object. You can also add additional approvers (optional). If your travel approval process uses the cost object approver, any one of the preferred or additional approvers can approve the trip. If an employee chooses that cost object during checkout, Perk automatically routes the request to the cost object approvers rather than their usual line manager.

For example, Company A has two main departments: Sales and Marketing.

  • Sales budget is managed by Jo Smith.
  • Marketing budget is managed by Alex Macdonald.

If the company sets up their travel approval process to use cost objects, the approval routing changes based on the department being charged:

  • Sarah works in Sales, but she’s traveling to help with a Marketing event.
  • When Sarah books her trip, she selects the Marketing cost object.
  • The approval request goes directly to Alex Macdonald (the Marketing lead) because she owns that cost object, skipping Sarah’s usual manager entirely. If Alex has additional approvers configured, any of them could also approve the trip.

Note: Additional approvers apply to travel approval only. For expenses and invoices, use the Approver and Delegate fields — these are separate from travel additional approvers.

You can set up a travel delegate, which allows you to temporarily transfer approval rights to someone else while you're out of office. When additional approvers are configured, they are also eligible as backup approval recipients in travel out-of-office settings.

Cost object approval in expenses and invoices

In expense processing and invoice processing, you can set up complex approval flows depending on how your cost objects are set up:

  • Non-hierarchical: only a single approval
  • Hierarchical: may involve multiple approvals depending on approval limits, as approval is escalated up the structure

Expense and invoice approval with non-hierarchical cost objects

Each cost object has a default approver who is responsible for approving all expenses or invoices submitted against this cost object. When an expense or invoice is submitted with this cost object, the person selected in the Approver field is responsible for approving the expense/invoice before it is reviewed by financial reviewers.

If the approver is the same as expense or invoice submitter, by default, the document is automatically approved (unless you have set up a custom workflow to escalate approval to another user).

For example, when Sarah (from Sales) submits an expense for a Marketing banner she bought, Perk sees the "Marketing" cost object and sends the expense straight to Alex. However, if Alex buys something and tags it to her own Marketing budget, Perk knows she’s already "approved" it. It will skip the approval step and go straight to Finance (unless your company has a custom workflow to prevent this).

You can delegate any approvals for the cost object to another person temporarily by selecting that person in the Delegate field. You can do this either in Settings > Cost management > Cost objects (if you are an account admin) or in Spend > Approvals > Cost object approvals (for approvers).

You can also set an expiry date. After that date, cost object approval goes back to the original approver.

Hierarchical cost objects for expenses and invoices

Cost objects can have a parent-child relationship. This determines how the approval is handled in those cost objects, automatically escalating any expenses/invoices to the parent cost object approver where the expense/invoice exceeds a certain threshold. You can set up to eight hierarchical levels in Perk. See Cost object approval strategies.

Note: You can only set up hierarchical cost objects for expenses and invoices. Travel-only cost objects can’t be configured with hierarchical structure, since approval is determined by travel approval processes.

Cost objects by company and people

Cost objects are usually created for a specific company; however you can choose to create cost objects that are shared across all companies in the account. In this case, the cost object has the same configuration for all companies.

Caution: If you need to define separate ERP IDs for exporting data separately to the finance and accounting system, you must only select one company when creating the cost object.

Assigning cost objects to people

When you add a person to Perk, you can assign them a default cost object. This default appears as the first choice for them during travel booking checkout, and in expenses and invoices. A person can only have one default cost object at a time, and being assigned as default automatically gives them access to select it.

By default, a cost object is only visible to its assigned users. Everyone else can't see or select it . For example, it won't appear if another employee searches for it in the cost object field.

To let other people use a cost object without making it their default, select Allow other people to use this cost object in the cost object's own settings. Once this is checked, you can extend access to everyone on the account, or to specific individual users or user groups. Extending access this way never changes anyone's default cost object, only assignment does that.

Approvers (and their delegates) always have access to whatever cost object has been selected by the person requesting approval, regardless of whether it's their own default.

However, you may choose to allow other people to view and select other cost objects as appropriate. In this case, they can choose either their own default cost object or the other cost object made available to them.

You assign a default cost object to an individual person in their profile. You can assign a cost object to multiple people at the same time from either the cost object itself or in the People page (by selecting all people and clicking Cost object).

Note: Cost object access only impacts selecting cost objects in travel, expenses, and invoices. It does not impact analytics. All cost object data is displayed in Analytics.

Cost objects in travel

You can use the cost object to categorize trip expenses, regardless of whether you process your expenses and invoices in Perk or via a third-party integration.

Cost objects are used in 3 ways when managing travel:

  • Use cost objects to categorize the trip expense during the checkout step when booking a trip in Perk (either by the traveler, a booker, or via Concierge). The cost object may be automatically selected for travelers (using the default cost object set in their profile). Alternatively, travelers may be able to choose another cost object.
  • Use in travel budgets to determine travel spending allowed.
  • Use cost objects to determine travel approvals.
  • Use cost objects to track and analyze travel spending: Admins and analysts can track and classify travel spending by different departments. Cost objects are displayed on travel invoices so you can process the expense in your finance and accounting system. If you use Perk to process your expenses, the cost object is included on all travel booking expenses.

See Set up cost objects for travel costs.

Note: Guests can only view the cost object set for them in their profile. They can’t change the cost object selected; only travel managers can perform this task.

Caution: In Concierge, the number of cost objects displayed is limited to 500. If the customer has more than 500 cost objects, they should reach out to Customer Care.

Cost objects in expenses and invoices

For expenses and invoices, cost objects are used to report costs.

Using cost objects when submitting expenses or invoices

Cost objects are selected when you create an expense or add an invoice in Perk. For example, when employees create an expense, they access either their default cost object, which is set in their profile by an admin or people manager. If no default cost object is set, Perk selects the last cost object selected by the employee.

For invoices, you can choose a default cost object per supplier so that Perk automatically smart-codes invoices from that supplier.

Note: Perk admins can choose not to display cost objects to employees. In this case, financial reviewers are responsible for checking and assigning cost objects as appropriate during review.

Depending on the company settings, employees can update the cost object, changing the cost allocation entirely by selecting another cost object.

In expenses, employees can add additional cost objects to an expense. This adds another row where the employee can select another cost object and adjust the percentage or amount to allocate to each cost object. This splits the expense line item, effectively generating two sub-line items with a single cost object assigned to each individual sub-line of the expense entry.

The amount allocated to each cost object must always add up to the total claim of the expense. If you adjust the amount or percentage of one cost object, the other cost object allocations are automatically adjusted. Similarly, the percentage breakdown must always add up to 100%. You can express percentages with up to two decimal places. For example, if you enter 33.337%, this will be rounded up to 33.34%.

Note: If employees decide to split the expense, allocating part of the total claim amount to an additional category (and hence, cost object), the remaining amount is automatically adjusted in the cost object breakdown according to the percentage entered.

With invoices, invoice processors can accept the default cost object proposed for each invoice line item or select another one, as appropriate.

For cost objects that have been restricted to specific people, if the cost object hasn’t been selected as the default cost object for the supplier or hasn’t been selected for the line item by a person with the appropriate permissions to view it, it won’t appear.

Using cost objects as a financial reviewer

Financial reviewers can view the cost objects that are assigned in expenses and invoices when reviewing the documents (Finance > Review > Expenses and invoices). However, by default they can only select the cost object assigned to them. If you want to allow financial reviewers to be able to select other cost objects, add additional cost objects, or even choose an additional category (and hence cost object) before finishing the review, you need to give them access to those cost objects in the cost object settings.

Exporting cost objects in expenses and invoices

You can only assign one cost object per journal entry. For example, a typical journal entry for a privately paid expense might look like this:

ID Post date Expense date GL account Description Transaction type Amount Debit amount Credit amount Currency Code
IdicO6yWQr 5/10/25 8/5/25 204 Felix Manager Amsterdam - Rotterdam  DEBIT 24.00 24.00   EUR C1
IdicO6yWQr 5/10/25 8/5/25 na Felix Manager Amsterdam - Rotterdam CREDIT 24.00   24.00 EUR  

Here, the cost object is reported for the debit amount so that you can track the expense.

You can split a cost among multiple cost centers or projects, choose different cost objects, or use other cost objects. To do this, Perk splits the line item, creating two sub-line items with a single cost object assigned to each sub-line.

For example, for an expense split across two cost objects, the journal entries might look like this:

ID Post date Expense date GL account Description Transaction type Amount Debit amount Credit amount Currency Code
qBIGvOzTta 6/10/25 18/7/25 204 Yokoy Academy BRITTANY FERRIES 18 Jul 2... DEBIT 50.10 50.10   EUR 779 - Procurement
qBIGvOzTta 6/10/25 18/7/25 204 Yokoy Academy BRITTANY FERRIES 18 Jul 2... DEBIT 50.10 50.10   EUR 773 - Manufacturing
qBIGvOzTta 6/10/25 18/7/25 0 Yokoy Academy BRITTANY FERRIES 18 Jul 2... CREDIT 100.20   100.20 EUR  

If you also want to track multiple teams or projects, you can use custom fields to capture these additional financial dimensions. 

For example, you may want to assign an expense to a cost object, Professional Services, and also track it by customer project. To do this, you create Professional Services as the cost object. The expense is assigned to that cost object and can then include an additional custom field, Projects, with the customer’s name.

For example, for a privately paid expense that the submitter has assigned to a specific project set up as a custom field, the journal entry might look like this:

ID Post date Expense date GL account Description Transaction type Amount Debit amount Credit amount Currency Code Project
IdicO6yWQr 5/10/25 8/5/25 204 Felix Manager Amsterdam - Rotterdam  DEBIT 24.00 24.00   EUR C1 Acme
IdicO6yWQr 5/10/25 8/5/25 na Felix Manager Amsterdam - Rotterdam CREDIT 24.00   24.00 EUR   Acme

Note: If required, you can choose not to export cost objects to the third-party system.

Was this article helpful?