POST
/
accounting
/
expenses
import { Panora } from "@panora/sdk";

const panora = new Panora({
  apiKey: "<YOUR_API_KEY_HERE>",
});

async function run() {
  const result = await panora.accounting.expenses.create({
    xConnectionToken: "<value>",
    remoteData: false,
    unifiedAccountingExpenseInput: {
      transactionDate: new Date("2024-06-15T12:00:00Z"),
      totalAmount: 10000,
      subTotal: 9000,
      totalTaxAmount: 1000,
      currency: "USD",
      exchangeRate: "1.2",
      memo: "Business lunch with client",
      accountId: "801f9ede-c698-4e66-a7fc-48d19eebaa4f",
      contactId: "801f9ede-c698-4e66-a7fc-48d19eebaa4f",
      companyInfoId: "801f9ede-c698-4e66-a7fc-48d19eebaa4f",
      trackingCategories: [
        "801f9ede-c698-4e66-a7fc-48d19eebaa4f",
      ],
      lineItems: [
        {
          name: "Net Income",
          value: 100000,
          type: "Operating Activities",
          parentItem: "801f9ede-c698-4e66-a7fc-48d19eebaa4f",
          remoteId: "report_item_1234",
          remoteGeneratedAt: new Date("2024-07-01T12:00:00Z"),
          companyInfoId: "801f9ede-c698-4e66-a7fc-48d19eebaa4f",
          createdAt: new Date("2024-06-15T12:00:00Z"),
          modifiedAt: new Date("2024-06-15T12:00:00Z"),
        },
      ],
      fieldMappings: {},
    },
  });
  
  // Handle the result
  console.log(result)
}

run();
{
  "transaction_date": "2024-06-15T12:00:00Z",
  "total_amount": 10000,
  "sub_total": 9000,
  "total_tax_amount": 1000,
  "currency": "USD",
  "exchange_rate": "1.2",
  "memo": "Business lunch with client",
  "account_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f",
  "contact_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f",
  "company_info_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f",
  "tracking_categories": [
    "801f9ede-c698-4e66-a7fc-48d19eebaa4f"
  ],
  "line_items": [
    {
      "name": "Net Income",
      "value": 100000,
      "type": "Operating Activities",
      "parent_item": "801f9ede-c698-4e66-a7fc-48d19eebaa4f",
      "remote_id": "report_item_1234",
      "remote_generated_at": "2024-07-01T12:00:00Z",
      "company_info_id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f",
      "created_at": "2024-06-15T12:00:00Z",
      "modified_at": "2024-06-15T12:00:00Z"
    }
  ],
  "field_mappings": {
    "custom_field_1": "value1",
    "custom_field_2": "value2"
  },
  "id": "801f9ede-c698-4e66-a7fc-48d19eebaa4f",
  "remote_id": "expense_1234",
  "remote_data": {
    "raw_data": {
      "additional_field": "some value"
    }
  },
  "remote_created_at": "2024-06-15T12:00:00Z",
  "created_at": "2024-06-15T12:00:00Z",
  "modified_at": "2024-06-15T12:00:00Z"
}

Authorizations

x-api-key
string
header
required

Headers

x-connection-token
string
required

The connection token

Query Parameters

remote_data
boolean

Set to true to include data from the original Accounting software.

Body

application/json
transaction_date
string | null

The date of the expense transaction

Example:

"2024-06-15T12:00:00Z"

total_amount
number | null

The total amount of the expense

Example:

10000

sub_total
number | null

The sub-total amount of the expense (before tax)

Example:

9000

total_tax_amount
number | null

The total tax amount of the expense

Example:

1000

currency
string | null

The currency of the expense

Example:

"USD"

exchange_rate
string | null

The exchange rate applied to the expense

Example:

"1.2"

memo
string | null

A memo or description for the expense

Example:

"Business lunch with client"

account_id
string | null

The UUID of the associated account

Example:

"801f9ede-c698-4e66-a7fc-48d19eebaa4f"

contact_id
string | null

The UUID of the associated contact

Example:

"801f9ede-c698-4e66-a7fc-48d19eebaa4f"

company_info_id
string | null

The UUID of the associated company info

Example:

"801f9ede-c698-4e66-a7fc-48d19eebaa4f"

tracking_categories
string[] | null

The UUIDs of the tracking categories associated with the expense

Example:
["801f9ede-c698-4e66-a7fc-48d19eebaa4f"]
line_items
object[]

The line items associated with this expense

field_mappings
object | null

The custom field mappings of the object between the remote 3rd party & Panora

Example:
{
  "custom_field_1": "value1",
  "custom_field_2": "value2"
}

Response

201 - application/json
transaction_date
string | null

The date of the expense transaction

Example:

"2024-06-15T12:00:00Z"

total_amount
number | null

The total amount of the expense

Example:

10000

sub_total
number | null

The sub-total amount of the expense (before tax)

Example:

9000

total_tax_amount
number | null

The total tax amount of the expense

Example:

1000

currency
string | null

The currency of the expense

Example:

"USD"

exchange_rate
string | null

The exchange rate applied to the expense

Example:

"1.2"

memo
string | null

A memo or description for the expense

Example:

"Business lunch with client"

account_id
string | null

The UUID of the associated account

Example:

"801f9ede-c698-4e66-a7fc-48d19eebaa4f"

contact_id
string | null

The UUID of the associated contact

Example:

"801f9ede-c698-4e66-a7fc-48d19eebaa4f"

company_info_id
string | null

The UUID of the associated company info

Example:

"801f9ede-c698-4e66-a7fc-48d19eebaa4f"

tracking_categories
string[] | null

The UUIDs of the tracking categories associated with the expense

Example:
["801f9ede-c698-4e66-a7fc-48d19eebaa4f"]
line_items
object[]

The line items associated with this expense

field_mappings
object | null

The custom field mappings of the object between the remote 3rd party & Panora

Example:
{
  "custom_field_1": "value1",
  "custom_field_2": "value2"
}
id
string | null

The UUID of the expense record

Example:

"801f9ede-c698-4e66-a7fc-48d19eebaa4f"

remote_id
string | null

The remote ID of the expense in the context of the 3rd Party

Example:

"expense_1234"

remote_data
object | null

The remote data of the expense in the context of the 3rd Party

Example:
{
  "raw_data": { "additional_field": "some value" }
}
remote_created_at
string | null

The date when the expense was created in the remote system

Example:

"2024-06-15T12:00:00Z"

created_at
string | null

The created date of the expense record

Example:

"2024-06-15T12:00:00Z"

modified_at
string | null

The last modified date of the expense record

Example:

"2024-06-15T12:00:00Z"