Skip to main content
POST
/
api
/
billing
/
financialaccounts
{
  "Status": 123,
  "Message": "<string>",
  "Value": "<any>",
  "WasSuccessful": true,
  "Errors": [
    {
      "AttemptedValue": "<any>",
      "Message": "<string>",
      "PropertyName": "<string>"
    }
  ]
}
A FinancialAccount represents a bookkeeping account used for categorising revenue and payments. Financial accounts can be assigned to Products, EventProducts, TimePasses, ExtraServices (resource prices), Tariffs and Charges to control how income is tracked and reported. Each account has a Code (typically matching an external accounting system reference), a Name, and an AccountType that determines where it appears:
AccountTypeValuePurpose
Sales1Revenue from products, services and bookings
Payments2Incoming payment receipts
Deposits3Security deposits held against contracts
Important: Changing a financial account’s details or reassigning it to different items has no effect on existing invoices. The financial account recorded on each invoice line is captured at the time the invoice is issued and is never updated retroactively.

Authentication

This endpoint requires OAuth2 authentication. Include a valid bearer token in the Authorization header. The authenticated user must be a full unrestricted administrator or have the FinancialAccount-Create role.

Enums

ValueName
0None
1Sales
2Payments
3Deposits

Request Body

Required Fields

BusinessId
integer
required
Business Id.
Name
string
required
Display name for this financial account.
Code
string
required
Short reference code, typically matching the account code in an external accounting system.

Optional Fields

Description
string
Optional free-text description of the account’s purpose.
AccountType
integer
Category of the account: Sales (1), Payments (2) or Deposits (3). Defaults to eFinancialAccountType.Sales. See eFinancialAccountType enum above.

Code Examples

curl -X POST \
  "https://spaces.nexudus.com/api/billing/financialaccounts" \
  -H "Authorization: Bearer YOUR_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "BusinessId": 0,
    "Name": "",
    "Code": ""
}'

Response

200

Status
integer
HTTP status code. 200 on success.
Message
string
A human-readable message confirming the creation.
Value
object
Contains the Id of the newly created record.
WasSuccessful
boolean
true if the financialaccount was created successfully.
Errors
array
null on success.
Example Response
{
  "Status": 200,
  "Message": "FinancialAccount was successfully created.",
  "Value": {
    "Id": 87654321
  },
  "OpenInDialog": false,
  "OpenInWindow": false,
  "RedirectURL": null,
  "JavaScript": null,
  "UpdatedOn": "2025-01-15T10:30:00Z",
  "UpdatedBy": "admin@example.com",
  "Errors": null,
  "WasSuccessful": true
}

400

Message
string
A summary of the validation error(s), in the format PropertyName: error message.
Value
any
null on validation failure.
Errors
object[]
Array of validation errors.
WasSuccessful
boolean
false when the request fails validation.
Example Response
{
  "Message": "Name: is a required field",
  "Value": null,
  "Errors": [
    {
      "AttemptedValue": null,
      "Message": "is a required field",
      "PropertyName": "Name"
    }
  ],
  "WasSuccessful": false
}