Skip to main content

Service Sale Item API

Create and manage services sold directly to customers (labor, consulting, training, etc.).


Endpoints

MethodEndpointDescription
GET/record/v1/serviceSaleItemList service sale items
GET/record/v1/serviceSaleItem/{id}Get specific item
POST/record/v1/serviceSaleItemCreate item
PATCH/record/v1/serviceSaleItem/{id}Update item
DELETE/record/v1/serviceSaleItem/{id}Delete item

Key Fields

FieldTypeDescriptionRequired
itemIdstringItem name/numberYes (if not auto)
displayNamestringDisplay nameNo
descriptionstringItem descriptionNo
subsidiaryobjectSubsidiary assignmentYes (OneWorld)
incomeAccountobjectIncome accountYes
salesDescriptionstringSales descriptionNo
basePricenumberBase selling priceNo
taxScheduleobjectTax scheduleNo
departmentobjectDefault departmentNo
classobjectDefault classNo
locationobjectDefault locationNo
isInactivebooleanInactive flagNo
isTaxablebooleanTaxable flagNo
includeChildrenbooleanInclude child subsidiariesNo

Example: Create Service Sale Item

POST /record/v1/serviceSaleItem
Content-Type: application/json
{
"itemId": "CONSULTING-HR",
"displayName": "Consulting Services - Hourly",
"description": "Professional consulting services billed hourly",
"subsidiary": {
"id": "1"
},
"incomeAccount": {
"id": "400"
},
"salesDescription": "Professional consulting services - hourly rate",
"basePrice": 150.00,
"taxSchedule": {
"id": "1"
},
"isTaxable": true,
"department": {
"id": "10"
}
}

Response:

{
"id": "901",
"itemId": "CONSULTING-HR",
"displayName": "Consulting Services - Hourly",
"description": "Professional consulting services billed hourly",
"subsidiary": {
"id": "1",
"refName": "Parent Company"
},
"incomeAccount": {
"id": "400",
"refName": "Service Revenue"
},
"salesDescription": "Professional consulting services - hourly rate",
"basePrice": 150.00,
"taxSchedule": {
"id": "1",
"refName": "Tax Schedule"
},
"isTaxable": true,
"department": {
"id": "10",
"refName": "Consulting"
},
"isInactive": false,
"lastModifiedDate": "2025-12-25T10:30:00Z"
}

Example: Update Service Sale Item

PATCH /record/v1/serviceSaleItem/901
Content-Type: application/json
{
"basePrice": 175.00,
"salesDescription": "Premium professional consulting services - hourly rate"
}

Response:

{
"id": "901",
"itemId": "CONSULTING-HR",
"displayName": "Consulting Services - Hourly",
"basePrice": 175.00,
"salesDescription": "Premium professional consulting services - hourly rate",
"lastModifiedDate": "2025-12-25T11:00:00Z"
}

Query Filters

Find Active Service Sale Items

GET /record/v1/serviceSaleItem?q=isInactive=false

Find by Item ID Pattern

GET /record/v1/serviceSaleItem?q=itemId LIKE 'CONSULTING%'

Find by Price Range

GET /record/v1/serviceSaleItem?q=basePrice>=100 AND basePrice<=200

Find by Income Account

GET /record/v1/serviceSaleItem?q=incomeAccount.id=400

Find Taxable Services

GET /record/v1/serviceSaleItem?q=isTaxable=true

Find by Department

GET /record/v1/serviceSaleItem?q=department.id=10

Important Notes

  • Service sale items represent services you sell to customers, not services you purchase from vendors
  • These items appear on sales transactions (invoices, sales orders, cash sales) only
  • The incomeAccount is required and determines where revenue is posted when the service is invoiced
  • Unlike Service Resale Items, sale items do not track COGS or vendor relationships
  • Unlike Service Purchase Items, sale items do not track expense accounts
  • Services do not track inventory quantity or use costing methods like physical items
  • The basePrice is optional but commonly used to set a default hourly or per-unit rate
  • Service sale items are ideal for:
    • Professional services (consulting, legal, accounting)
    • Labor charges
    • Training and education services
    • Maintenance and support contracts
    • Custom services provided by your company
  • In OneWorld accounts, subsidiary assignment is mandatory
  • Service sale items can have default department, class, and location dimensions
  • Use isTaxable and taxSchedule to control tax treatment on sales transactions

See Also