Customers

A customer is any company to which you sell goods and services. Sage Intacct applications use the customer information for record-keeping purposes, printing the names and addresses on forms, such as invoices, and for determining the ship-to contact so tax can be computed.

List customers

get/objects/accounts-receivable/customer

Returns a collection with a key, ID, and link for each customer. This operation is mostly for use in testing; use the query service to find objects that meet certain criteria and to specify properties that are returned.

SecurityOAuth2
Responses
200

OK

400

Bad Request

Request samples
Response samples
application/json
{
  • "ia::result": [
    • {
      • "key": "68",
      • "id": "CUST-100",
      • "href": "/objects/accounts-receivable/customer/68"
      },
    • {
      • "key": "69",
      • "id": "CUST-200",
      • "href": "/objects/accounts-receivable/customer/69"
      },
    • {
      • "key": "73",
      • "id": "CUST-300",
      • "href": "/objects/accounts-receivable/customer/73"
      }
    ],
  • "ia::meta": {
    • "totalCount": 3,
    • "start": 1,
    • "pageSize": 100
    }
}

Create a customer

post/objects/accounts-receivable/customer

Creates a new customer.

SecurityOAuth2
Request
Request Body schema: application/json
required
name
required
string

Name of the customer, which is usually the company name.

Example: "Gomez Manufacturers"
id
string

Unique identifier for the customer.

Example: "C-00003"
status
string
Default: "active"

Status of the dimension object:

  • active - Transactions can be posted to this dimension member and it can be used in reports.
  • activeNonPosting - Transactions cannot be posted to the dimension member but it can be used in reports.
  • inactive - The dimension member cannot be used for transactions or reports.
Enum: "active" "activeNonPosting" "inactive"
Example: "active"
object

The category assigned to the customer (for example, Consultants, Subcontractors, or Equipment).

key
string

System-assigned key for the customer type.

Example: "1"
id
string

ID for the customer type.

Example: "Customer - Direct"
object

Parent customer, which creates a customer hierarchy.

key
string

System-assigned key for the parent customer.

Example: "10"
id
string

ID of the parent customer.

Example: "C-00014"
object

Name of the employee responsible for this customer account.

key
string

System-assigned key for the employee.

Example: "39"
id
string

ID of the employee.

Example: "awong"
taxId
string

Tax identification number for the customer.

Example: "12-3434900"
object

GL account for customer revenue.

key
string

System-assigned key for the GL account.

Example: "41"
id
string

ID of the GL account.

Example: "1001"
object

How goods are shipped to the customer.

key
string

System-assigned key for the shipping method.

Example: "3"
id
string

ID of the shipping method.

Example: "Fedex"
creditLimit
number

Credit limit extended to the customer.

Example: 10000
isOnHold
boolean
Default: false

Indicates whether customer is on credit hold.

Example: true
object

Contacts for the customer.

object

Display contact for this customer. Used as the default for other customer contacts, such as shipTo, that are not defined.

key
string

System-assigned unique key for the contact.

Example: "21"
id
string

Contact ID.

Example: "jsmith"
lastName
string or null
Deprecated

Last name.

Example: "Smith"
firstName
string or null
Deprecated

First name.

Example: "John"
middleName
string or null
Deprecated

Middle name.

Example: "Archibald"
prefix
string or null
Deprecated

Prefix, such as Mr., Mrs., or Ms.

Example: "Mr"
printAs
string
Deprecated

The contact's name as it will appear on documents.

Example: "John Smith"
email1
string or null
Deprecated

Primary email address.

Example: "[email protected]"
email2
string or null
Deprecated

Secondary email address.

Example: "[email protected]"
phone1
string or null
Deprecated

Primary phone number.

Example: "14085551212"
phone2
string or null
Deprecated

Secondary phone number.

Example: "14085559876"
mobile
string or null
Deprecated

Mobile phone number.

Example: "14085554420"
pager
string or null
Deprecated

Pager number.

Example: "14085559987"
fax
string or null
Deprecated

Fax number.

Example: "14085555309"
URL1
string or null
Deprecated

Web page address for this contact.

Example: "https://mycompany.com"
URL2
string or null
Deprecated

Secondary web page address.

Example: "https://anothercompany.com"
companyName
string or null
Deprecated

Name of the company.

Example: "AlcoSoft Inc"
object

Mailing address.

showInContactList
boolean
Default: true

Set to true to display the contact in the contact list.

Example: true
object
object

For businesses operating in France, the following fields are required to comply with local electronic invoicing.

internationalTaxId
string

Business identification number for EU companies.

Example: "123"
object

Primary contact for the customer.

key
string

System-assigned key for the contact.

Example: "87"
id
string

ID of the contact.

Example: "Ben Jones"
object

Customer contact for company activity such as sales transactions, invoice creation, and manual deposits.

key
string

System-assigned key for the contact.

Example: "63"
id
string

ID of the contact.

Example: "Rose Garcia"
object

Customer contact for company activity such as sales transactions, invoice creation, and tax calculations.

key
string

System-assigned key for the contact.

Example: "29"
id
string

ID of the contact.

Example: "Veronica Clark"
Array of objects

List of contacts for the customer.

Array
categoryName
string

User-defined category for grouping and sorting contacts.

Example: "Billing contact"
object

Contact to associate with the customer.

object

Customer that has the contactList where this contact appears.

object
restrictionType
string or null
Default: null

Restrict customers to only the top-level company or for specific locations and departments. These restriction options are valid only for multi-entity companies that are configured for restrictions. Learn more about restricting customers. The following values specify who can view and post transactions against this customer.

Valid values:

  • unrestricted - The top level and all entities within the multi-entity structure.
  • rootOnly - Only the top level of the multi-entity structure.
  • restricted - Only the chosen locations, location groups, departments, or department groups within the multi-entity structure.
Enum: null "restricted" "rootOnly" "unrestricted"
Example: "restricted"
Array of objects

Email templates for the customer.

Array
object

Customer associated with the email template.

object

Transaction definition, which is the template that contains accounting settings, workflow rules, and other configuration settings for a transaction.

object

Associated email template.

discountPercent
string

Discount percentage for the customer.

Example: "10"
object

AR term for the customer, which are the rules for extending credit to the customer.

key
string

System-assigned key for the term.

Example: "20"
id
string

Name of the term.

Example: "Net 15"
advanceBillBy
string

Bill in advance setting, which instructs Sage Intacct to create billing schedules that automatically start before a contract line starts.

Example: "7"
advanceBillByType
string

Bill in advance type to indicate whether the advance value is number of days or months.

Enum: "" "days" "months"
Example: "days"
resaleNumber
number

Resale number, which applies to customers who are resellers of your company's products or services.

Example: 1534
deliveryOptions
string
Default: "print"

Delivery option for the customer's statements.

Enum: "both" "email" "print"
Example: "both"
overridePriceList
string
Default: "customer"

By default, the customer price list is assigned to the entire customer, including the customer contacts. But, you can override the customer price list with the corresponding options for either the billing or shipping contact.

Enum: "billingContact" "customer" "shippingContact"
Example: "billingContact"
object

Message to include on the customer's invoice.

key
string

System-assigned key for the customer message.

Example: "10"
id
string

ID for the customer message.

Example: "welcome message"
message
string

Message text for the customer message.

Example: "welcome to the company"
currency
string

Currency for the customer.

Example: "CAD"
emailOptIn
boolean
Default: false

Indicates whether the customer accepts emailed invoices.

Example: true
object

The sales territory to which the customer is assigned.

key
string

Territory key.

Example: "6"
id
string

Territory ID.

Example: "NE"
name
string

Territory name.

Example: "Northeast"
enableOnlineACHPayment
boolean
Default: true

Set to true to enable automation of customer payments using ACH.

Example: true
enableOnlineCardPayment
boolean
Default: true

Set to true to automate customer payments using a credit card.

Example: true
isOneTimeUse
boolean
Default: false

Set to true to designate the customer as a one-time use customer that should not be included in standard look-up lists.

Example: false
object

Customer GL group to control the GL account that transactions with the customer should post to.

key
string

System-assigned key for the customer GL group.

Example: "41"
id
string

ID for the customer GL group.

Example: "Direct"
object

Label for the AR account associated with the customer.

key
string

System-assigned key for the AR account label.

Example: "38"
id
string

ID for the account label.

Example: "SW Sales"
object

Attachment that serves as a supporting document for the customer.

key
string or null

System-assigned key for the attachment.

Example: "51"
id
string or null

ID for the attachment.

Example: "Sales01"
retainagePercentage
number

Default retainage percentage for the customer. Retainage must be enabled for a customer and a Construction subscription is required to enable this capability.

Example: 25
notes
string

Notes or comments about the customer.

Example: "Service tier 1"
object

Price list associated with the customer.

key
string

System-assigned key for the price list.

Example: "7"
id
string

ID for the price list.

Example: "Base Price List"
object

Price schedule associated with the customer.

key
string

System-assigned key for the price schedule.

Example: "4"
id
string

ID for the price schedule.

Example: "PREF"
object

Default AR override offset account for this customer.

key
string

System-assigned key for the GL account.

Example: "12"
id
string

ID for the GL account.

Example: "134"
customerRestriction
string
Default: "unrestricted"

Customer visibility type.

Enum: "restricted" "rootOnly" "unrestricted"
Example: "restricted"
Array of objects

Restricted locations for the customer.

Array
object

Location to which the customer is restricted.

object

Location group to which the customer is restricted.

object

Customer that is restricted.

Array of objects

Restricted departments for the customer.

Array
object

Customer that is restricted.

Responses
201

Created

400

Bad Request

Request samples
application/json
{
  • "id": "CUST-002",
  • "name": "Starluck",
  • "taxId": "12-3456789",
  • "creditLimit": 50000,
  • "status": "active"
}
Response samples
application/json
{
  • "ia::result": {
    • "key": "32",
    • "id": "CUST-200",
    • "href": "/objects/accounts-receivable/customer/32"
    },
  • "ia::meta": {
    • "totalCount": 1,
    • "totalSuccess": 1,
    • "totalError": 0
    }
}

Get a customer

get/objects/accounts-receivable/customer/{key}

Returns detailed information for a specified customer.

SecurityOAuth2
Request
path Parameters
key
required
string

System-assigned key for the customer.

Example: 99
Responses
200

OK

400

Bad Request

Request samples
Response samples
application/json
{
  • "ia::result": {
    • "key": "1",
    • "id": "PAMats",
    • "name": "Power Aerospace Materials",
    • "parent": {
      • "key": "2055",
      • "id": "12",
      • "name": "12",
      • "href": "/objects/accounts-receivable/customer/2055"
      },
    • "contacts": {
      • "default": {
        },
      • "primary": {
        },
      • "shipTo": {
        },
      • "billTo": {
        }
      },
    • "term": {
      • "id": "15DaysExtToEOM",
      • "key": "26",
      • "href": "/objects/accounts-receivable/term/26"
      },
    • "salesRepresentative": {
      • "id": "EM M",
      • "name": "Aaron",
      • "key": "89",
      • "href": "/objects/company-config/employee/89"
      },
    • "resaleNumber": 123456789,
    • "taxId": "123456803",
    • "creditLimit": 20000,
    • "totalDue": "99999.99",
    • "notes": "Sample Notes",
    • "accountLabel": {
      • "id": "Pledges",
      • "key": "9"
      },
    • "defaultRevenueGLAccount": {
      • "id": "2080.06",
      • "name": "Germany(France) - Inter Entity Payable",
      • "key": "136",
      • "href": "/objects/general-ledger/account/136"
      },
    • "lastInvoiceCreatedDate": "2021-10-12",
    • "lastStatementGeneratedDate": "2023-02-28",
    • "deliveryOptions": "print",
    • "territory": {
      • "id": "23456",
      • "name": "North East",
      • "key": "23",
      • "href": "/objects/accounts-receivable/territory/23"
      },
    • "shippingMethod": {
      • "id": "Fedex",
      • "key": "3",
      • "href": "/objects/accounts-receivable/shipping-method/3"
      },
    • "customerType": {
      • "id": "DOCS",
      • "key": "13",
      • "href": "/objects/accounts-receivable/customer-type/13"
      },
    • "accountGroup": {
      • "key": "10",
      • "id": "Auto CGL Group",
      • "href": "/objects/accounts-receivable/customer-account-group/10"
      },
    • "priceSchedule": {
      • "id": "101",
      • "key": "101",
      • "href": "/objects/purchasing/price-schedule/101"
      },
    • "discountPercent": "10",
    • "priceList": {
      • "id": "Base Price List",
      • "key": "1",
      • "href": "/objects/order-entry/price-list/1"
      },
    • "currency": "USD",
    • "status": "active",
    • "isOneTimeUse": false,
    • "customerMessage": {
      • "key": "10",
      • "id": "welcome message",
      • "message": "Welcome to Power Aerospace Materials",
      • "href": "/objects/accounts-receivable/customer-message/10"
      },
    • "isOnHold": false,
    • "overridePriceList": "customer",
    • "enableOnlineCardPayment": true,
    • "enableOnlineACHPayment": true,
    • "audit": {
      • "modifiedDateTime": "2023-12-14T11:31:06Z",
      • "createdDateTime": "2018-07-28T19:22:31Z",
      • "createdBy": "1",
      • "modifiedBy": "1"
      },
    • "customerRestriction": "restricted",
    • "overrideOffsetGLAccount": {
      • "id": "1120",
      • "name": "Pledges Receivable"
      },
    • "emailOptIn": false,
    • "contactList": [
      • {
        }
      ],
    • "customerEmailTemplates": [
      • {
        }
      ],
    • "restrictedDepartments": [
      • {
        }
      ],
    • "restrictedLocations": [
      • {
        }
      ],
    • "href": "/objects/accounts-receivable/customer/1"
    },
  • "ia::meta": {
    • "totalCount": 1,
    • "totalSuccess": 1,
    • "totalError": 0
    }
}

Update a customer

patch/objects/accounts-receivable/customer/{key}

Updates an existing customer by setting field values. Any fields not provided remain unchanged. Customers included in posted transactions will not be updated. Only new transactions and records will refer to the updated customer information.

SecurityOAuth2
Request
path Parameters
key
required
string

System-assigned key for the customer.

Example: 99
Request Body schema: application/json
name
string

Name of the customer, which is usually the company name.

Example: "Gomez Manufacturers"
status
string
Default: "active"

Status of the dimension object:

  • active - Transactions can be posted to this dimension member and it can be used in reports.
  • activeNonPosting - Transactions cannot be posted to the dimension member but it can be used in reports.
  • inactive - The dimension member cannot be used for transactions or reports.
Enum: "active" "activeNonPosting" "inactive"
Example: "active"
object

The category assigned to the customer (for example, Consultants, Subcontractors, or Equipment).

key
string

System-assigned key for the customer type.

Example: "1"
id
string

ID for the customer type.

Example: "Customer - Direct"
object

Parent customer, which creates a customer hierarchy.

key
string

System-assigned key for the parent customer.

Example: "10"
id
string

ID of the parent customer.

Example: "C-00014"
object

Name of the employee responsible for this customer account.

key
string

System-assigned key for the employee.

Example: "39"
id
string

ID of the employee.

Example: "awong"
taxId
string

Tax identification number for the customer.

Example: "12-3434900"
object

GL account for customer revenue.

key
string

System-assigned key for the GL account.

Example: "41"
id
string

ID of the GL account.

Example: "1001"
object

How goods are shipped to the customer.

key
string

System-assigned key for the shipping method.

Example: "3"
id
string

ID of the shipping method.

Example: "Fedex"
creditLimit
number

Credit limit extended to the customer.

Example: 10000
isOnHold
boolean
Default: false

Indicates whether customer is on credit hold.

Example: true
object

Contacts for the customer.

object

Display contact for this customer. Used as the default for other customer contacts, such as shipTo, that are not defined.

key
string

System-assigned unique key for the contact.

Example: "21"
id
string

Contact ID.

Example: "jsmith"
lastName
string or null
Deprecated

Last name.

Example: "Smith"
firstName
string or null
Deprecated

First name.

Example: "John"
middleName
string or null
Deprecated

Middle name.

Example: "Archibald"
prefix
string or null
Deprecated

Prefix, such as Mr., Mrs., or Ms.

Example: "Mr"
printAs
string
Deprecated

The contact's name as it will appear on documents.

Example: "John Smith"
email1
string or null
Deprecated

Primary email address.

Example: "[email protected]"
email2
string or null
Deprecated

Secondary email address.

Example: "[email protected]"
phone1
string or null
Deprecated

Primary phone number.

Example: "14085551212"
phone2
string or null
Deprecated

Secondary phone number.

Example: "14085559876"
mobile
string or null
Deprecated

Mobile phone number.

Example: "14085554420"
pager
string or null
Deprecated

Pager number.

Example: "14085559987"
fax
string or null
Deprecated

Fax number.

Example: "14085555309"
URL1
string or null
Deprecated

Web page address for this contact.

Example: "https://mycompany.com"
URL2
string or null
Deprecated

Secondary web page address.

Example: "https://anothercompany.com"
companyName
string or null
Deprecated

Name of the company.

Example: "AlcoSoft Inc"
object

Mailing address.

showInContactList
boolean
Default: true

Set to true to display the contact in the contact list.

Example: true
object
object

For businesses operating in France, the following fields are required to comply with local electronic invoicing.

internationalTaxId
string

Business identification number for EU companies.

Example: "123"
object

Primary contact for the customer.

key
string

System-assigned key for the contact.

Example: "87"
id
string

ID of the contact.

Example: "Ben Jones"
object

Customer contact for company activity such as sales transactions, invoice creation, and manual deposits.

key
string

System-assigned key for the contact.

Example: "63"
id
string

ID of the contact.

Example: "Rose Garcia"
object

Customer contact for company activity such as sales transactions, invoice creation, and tax calculations.

key
string

System-assigned key for the contact.

Example: "29"
id
string

ID of the contact.

Example: "Veronica Clark"
Array of objects

List of contacts for the customer.

Array
categoryName
string

User-defined category for grouping and sorting contacts.

Example: "Billing contact"
object

Contact to associate with the customer.

object

Customer that has the contactList where this contact appears.

object
restrictionType
string or null
Default: null

Restrict customers to only the top-level company or for specific locations and departments. These restriction options are valid only for multi-entity companies that are configured for restrictions. Learn more about restricting customers. The following values specify who can view and post transactions against this customer.

Valid values:

  • unrestricted - The top level and all entities within the multi-entity structure.
  • rootOnly - Only the top level of the multi-entity structure.
  • restricted - Only the chosen locations, location groups, departments, or department groups within the multi-entity structure.
Enum: null "restricted" "rootOnly" "unrestricted"
Example: "restricted"
Array of objects

Email templates for the customer.

Array
object

Customer associated with the email template.

object

Transaction definition, which is the template that contains accounting settings, workflow rules, and other configuration settings for a transaction.

object

Associated email template.

discountPercent
string

Discount percentage for the customer.

Example: "10"
object

AR term for the customer, which are the rules for extending credit to the customer.

key
string

System-assigned key for the term.

Example: "20"
id
string

Name of the term.

Example: "Net 15"
advanceBillBy
string

Bill in advance setting, which instructs Sage Intacct to create billing schedules that automatically start before a contract line starts.

Example: "7"
advanceBillByType
string

Bill in advance type to indicate whether the advance value is number of days or months.

Enum: "" "days" "months"
Example: "days"
resaleNumber
number

Resale number, which applies to customers who are resellers of your company's products or services.

Example: 1534
deliveryOptions
string
Default: "print"

Delivery option for the customer's statements.

Enum: "both" "email" "print"
Example: "both"
overridePriceList
string
Default: "customer"

By default, the customer price list is assigned to the entire customer, including the customer contacts. But, you can override the customer price list with the corresponding options for either the billing or shipping contact.

Enum: "billingContact" "customer" "shippingContact"
Example: "billingContact"
object

Message to include on the customer's invoice.

key
string

System-assigned key for the customer message.

Example: "10"
id
string

ID for the customer message.

Example: "welcome message"
message
string

Message text for the customer message.

Example: "welcome to the company"
currency
string

Currency for the customer.

Example: "CAD"
emailOptIn
boolean
Default: false

Indicates whether the customer accepts emailed invoices.

Example: true
object

The sales territory to which the customer is assigned.

key
string

Territory key.

Example: "6"
id
string

Territory ID.

Example: "NE"
name
string

Territory name.

Example: "Northeast"
enableOnlineACHPayment
boolean
Default: true

Set to true to enable automation of customer payments using ACH.

Example: true
enableOnlineCardPayment
boolean
Default: true

Set to true to automate customer payments using a credit card.

Example: true
isOneTimeUse
boolean
Default: false

Set to true to designate the customer as a one-time use customer that should not be included in standard look-up lists.

Example: false
object

Customer GL group to control the GL account that transactions with the customer should post to.

key
string

System-assigned key for the customer GL group.

Example: "41"
id
string

ID for the customer GL group.

Example: "Direct"
object

Label for the AR account associated with the customer.

key
string

System-assigned key for the AR account label.

Example: "38"
id
string

ID for the account label.

Example: "SW Sales"
object

Attachment that serves as a supporting document for the customer.

key
string or null

System-assigned key for the attachment.

Example: "51"
id
string or null

ID for the attachment.

Example: "Sales01"
retainagePercentage
number

Default retainage percentage for the customer. Retainage must be enabled for a customer and a Construction subscription is required to enable this capability.

Example: 25
notes
string

Notes or comments about the customer.

Example: "Service tier 1"
object

Price list associated with the customer.

key
string

System-assigned key for the price list.

Example: "7"
id
string

ID for the price list.

Example: "Base Price List"
object

Price schedule associated with the customer.

key
string

System-assigned key for the price schedule.

Example: "4"
id
string

ID for the price schedule.

Example: "PREF"
object

Default AR override offset account for this customer.

key
string

System-assigned key for the GL account.

Example: "12"
id
string

ID for the GL account.

Example: "134"
customerRestriction
string
Default: "unrestricted"

Customer visibility type.

Enum: "restricted" "rootOnly" "unrestricted"
Example: "restricted"
Array of objects

Restricted locations for the customer.

Array
object

Location to which the customer is restricted.

object

Location group to which the customer is restricted.

object

Customer that is restricted.

Array of objects

Restricted departments for the customer.

Array
object

Customer that is restricted.

Responses
200

OK

400

Bad Request

Request samples
application/json
{
  • "creditLimit": 10000
}
Response samples
application/json
{
  • "ia::result": {
    • "key": "34",
    • "id": "CUST-100",
    • "href": "/objects/accounts-receivable/payment/34"
    },
  • "ia::meta": {
    • "totalCount": 1,
    • "totalSuccess": 1,
    • "totalError": 0
    }
}

Delete a customer

delete/objects/accounts-receivable/customer/{key}

Deletes a customer. Customers that have already been used in a transaction cannot be deleted. Instead, you can update customers that have already been used to make them inactive.

SecurityOAuth2
Request
path Parameters
key
required
string

System-assigned key for the customer.

Example: 99
Responses
204

No Content

400

Bad Request

Request samples
Response samples
application/json
{
  • "ia::result": {
    • "ia::error": {
      • "code": "invalidRequest",
      • "message": "A POST request requires a payload",
      • "errorId": "REST-1028",
      • "additionalInfo": {
        },
      • "supportId": "Kxi78%7EZuyXBDEGVHD2UmO1phYXDQAAAAo"
      }
    },
  • "ia::meta": {
    • "totalCount": 1,
    • "totalSuccess": 0,
    • "totalError": 1
    }
}