Skip to content

Elevate Customer and Sites API (1.41)

Customer and Site Management

Provides read & write access to customer and site entities.

Definitions

  • Customer - the primary entity within Elevate to represent the person or company who is contracted with a Contract Owner for the provision of products or services
  • Site - within each Customer, there are one or more Sites to represent the physical locations of the Customer

Products and services are associated to the Sites as inventory items. Sites can be setup to receive invoices individually or to consolidate invoices to a particular site or sites

Languages
Servers
https://rest.elevatebilling.com/v1

customers

Customers represent the person or company contracted to receive products or services

Operations

Get a list of available customers

Request

Security
bearerAuth
Query
pageinteger(int32)(PageParam)>= 1required

Page of results to show

Example: page=1
pageSizeinteger(int32)(ResultsPerPageParam)[ 1 .. 1000 ]required

Results to return per page

Example: pageSize=100
sortstring(SortParam)

Comma-delimited list of the fields to sort by - defaults to ascending order, suffix :desc to change

Example: sort=id,name | name:desc
fieldsstring(FieldsParam)

Comma-delimited list of the field(s) to return if only a subset is required

Example: fields=id,name
contractOwnerIdstring(IdFilterParam)

Filter by contract owner

Example: contractOwnerId=0
customerNamestring(StringFilterParam)

Filter by customer name

Example: customerName=xyz | in:x,y | like:xyz
customerTypestring(StringFilterParam)

Filter by customer type

Example: customerType=xyz | in:x,y | like:xyz
customerAccountNumberstring(StringFilterParam)

Filter by customer account number

Example: customerAccountNumber=xyz | in:x,y | like:xyz
billingCycleIdstring(IdFilterParam)

Filter by billing cycle

Example: billingCycleId=0
startDatestring(DateFilterParam)

Filter by start date

Example: startDate=yyyy-MM-dd | lt:yyyy-MM-dd | gt:yyyy-MM-dd | gtn:yyyy-MM-dd
endDatestring(DateFilterParam)

Filter by end date

Example: endDate=yyyy-MM-dd | lt:yyyy-MM-dd | gt:yyyy-MM-dd | gtn:yyyy-MM-dd
createdDatestring(DateTimeFilterParam)

Filter by created date/time

Example: createdDate=yyyy-MM-ddTHH:mm:ssZ | lt:yyyy-MM-ddTHH:mm:ssZ | gt:yyyy-MM-ddTHH:mm:ssZ
updatedDatestring(DateTimeFilterParam)

Filter by updated date/time

Example: updatedDate=yyyy-MM-ddTHH:mm:ssZ | lt:yyyy-MM-ddTHH:mm:ssZ | gt:yyyy-MM-ddTHH:mm:ssZ
curl -i -X GET \
  'https://rest.elevatebilling.com/v1/customers?page=1&pageSize=100&sort=id%2Cname+%7C+name%3Adesc&fields=id%2Cname&contractOwnerId=0&customerName=xyz+%7C+in%3Ax%2Cy+%7C+like%3Axyz&customerType=xyz+%7C+in%3Ax%2Cy+%7C+like%3Axyz&customerAccountNumber=xyz+%7C+in%3Ax%2Cy+%7C+like%3Axyz&billingCycleId=0&startDate=yyyy-MM-dd+%2C+lt%3Ayyyy-MM-dd+%2C+gt%3Ayyyy-MM-dd+%2C+gtn%3Ayyyy-MM-dd&endDate=yyyy-MM-dd+%2C+lt%3Ayyyy-MM-dd+%2C+gt%3Ayyyy-MM-dd+%2C+gtn%3Ayyyy-MM-dd&createdDate=yyyy-MM-ddTHH%3Amm%3AssZ+%2C+lt%3Ayyyy-MM-ddTHH%3Amm%3AssZ+%2C+gt%3Ayyyy-MM-ddTHH%3Amm%3AssZ&updatedDate=yyyy-MM-ddTHH%3Amm%3AssZ+%2C+lt%3Ayyyy-MM-ddTHH%3Amm%3AssZ+%2C+gt%3Ayyyy-MM-ddTHH%3Amm%3AssZ' \
  -H 'Authorization: Bearer <YOUR_JWT_HERE>'

Responses

OK

Bodyapplication/jsonArray [
idinteger(int64)read-only

Customer identifier

Example: 1
contractOwnerIdinteger(int32)required

Contract Owner Identifier

contractOwnerSubBrandIdinteger(int32)

Contract owner sub brand identifier, if not specified then the default will be used

customerTypestring(CustomerType)required

Customer type

Enum"RESIDENTIAL""BUSINESS""RESELLER""STAFF_MEMBER"
customerNamestring[ 1 .. 100 ] characters[\w\p{L}\s%£@&#=':;`’,|!_—–\(\)\\/\-\+\.\?\*\...required

Customer Name

customerAccountNumberstring[ 1 .. 100 ] characters[\w\p{L}\s%£@&#=':;`’,|!_—–\(\)\\/\-\+\.\?\*\...required

Customer account number

startDatestring(date)required

Customer start date

endDatestring(date)

Customer end date

createdDatestring(date-time)read-only

Customer created date

updatedDatestring(date-time)read-only

Customer updated date

contractTerminteger(int32)

Contract term in months if applicable - requires contract term start date

contractTermStartDatestring(date)

Start date of contract term if applicable - required with contract term

customerIsVipboolean

Customer is marked as VIP (deprecated - please use customerMarker instead)

Default false
customerMarkerboolean

Customer is marked, e.g. VIP, Vulnerable, etc

Default false
externalCommissionAgentIdinteger(int64)

External commission agent identifier

Example: 1
onlineBillingRequiredboolean

Online billing required

Default false
onlineEmailAddressstring(EmailAddress)<= 255 characters(?:[a-zA-Z0-9!#$%&'*+/=?^_`{|}~-]+(?:\.[a-zA-...

Email address

sendWelcomeEmailOnstring(date)

Send welcome email on this date

billingCycleIdinteger(int64)required

Billing cycle identifier

Example: 1
sitesArray of objects(Site)[ 1 .. 1000 ] itemsrequired
sites[].​idinteger(int64)read-only

Site identifier

Example: 1
sites[].​customerIdinteger(int64)required

Customer identifier - set to 0 when creating a new customer

Example: 0
sites[].​siteNamestring[ 1 .. 100 ] characters[\w\p{L}\s%£@&#=':;`’,|!_—–\(\)\\/\-\+\.\?\*\...required

Site name

sites[].​siteReferencestring[ 1 .. 100 ] characters[\w\p{L}\s%£@&#=':;`’,|!_—–\(\)\\/\-\+\.\?\*\...required

Site reference

sites[].​startDatestring(date)required

Site start date

sites[].​endDatestring(date)

Site end date

sites[].​createdDatestring(date-time)read-only

Site created date

sites[].​updatedDatestring(date-time)read-only

Site updated date

sites[].​siteAddressobject(Address)required
sites[].​siteAddress.​idinteger(int64)read-only

Internal identifier for address entry

Example: 1
sites[].​siteAddress.​businessNamestring[ 0 .. 100 ] characters[\w\p{L}\s%£@&#=':;`’,|!_—–\(\)\\/\-\+\.\?\*\...

Business name

sites[].​siteAddress.​address1string[ 1 .. 100 ] characters[\w\p{L}\s%£@&#=':;`’,|!_—–\(\)\\/\-\+\.\?\*\...required

Address line 1

sites[].​siteAddress.​address2string[ 0 .. 100 ] characters[\w\p{L}\s%£@&#=':;`’,|!_—–\(\)\\/\-\+\.\?\*\...

Address line 2

sites[].​siteAddress.​address3string[ 0 .. 100 ] characters[\w\p{L}\s%£@&#=':;`’,|!_—–\(\)\\/\-\+\.\?\*\...

Address line 3

sites[].​siteAddress.​townstring[ 1 .. 50 ] characters[\w\p{L}\s%£@&#=':;`’,|!_—–\(\)\\/\-\+\.\?\*\...required

Town

sites[].​siteAddress.​countystring[ 0 .. 30 ] characters[\w\p{L}\s%£@&#=':;`’,|!_—–\(\)\\/\-\+\.\?\*\...

County

sites[].​siteAddress.​postcodestring[ 0 .. 20 ] characters[a-zA-Z0-9\p{L}@.\-\+_\s]+required

Postcode

sites[].​siteAddress.​countrystring(CountryCode)= 2 characters[A-Z]{2}required

ISO 3166 alpha-2 code representing country

Example: "GB"
sites[].​siteInvoiceDetailsobject(SiteInvoiceDetails)

Invoice details if this site should receive invoices

sites[].​siteIdReceivingInvoiceinteger(int64)

Identifier of another site that receives the invoices if no invoice details provided for this site

Example: 1
sites[].​siteContactsArray of objects(ContactDetails)non-emptyrequired
sites[].​siteContacts[].​idinteger(int64)read-only

Contact identifier

Example: 1
sites[].​siteContacts[].​contactNamestring[ 1 .. 100 ] characters[\w\p{L}\s%£@&#=':;`’,|!_—–\(\)\\/\-\+\.\?\*\...required

Contact name

sites[].​siteContacts[].​contactTelephoneNumberstring[ 4 .. 100 ] characters^$|[a-zA-Z0-9\p{L}\s()@&.,-_£|]{4,100}

Contact telephone number

sites[].​siteContacts[].​contactAlternativeTelephoneNumberstring[ 4 .. 100 ] characters^$|[a-zA-Z0-9\p{L}\s()@&.,-_£|]{4,100}

Contact alternative telephone number

sites[].​siteContacts[].​contactEmailAddressstring(EmailAddress)<= 255 characters(?:[a-zA-Z0-9!#$%&'*+/=?^_`{|}~-]+(?:\.[a-zA-...

Email address

sites[].​siteContacts[].​contactRolestring(ContactRole)required

Contact Role

Enum"ACCOUNTS""TECHNICAL""SALES""GENERAL"
sites[].​siteContacts[].​receiveInvoiceBystring(ReceiveInvoiceBy)

Receive invoice by email, post or both? Required when contactNameToAppearOnInvoice is set to true

Enum"EMAIL""POST""EMAIL_AND_POST"
sites[].​siteContacts[].​receiveInvoiceSummaryBystring(ReceiveInvoiceSummaryBy)

Receive invoice summary by email, post or both?

Enum"EMAIL""POST""EMAIL_AND_POST"
sites[].​siteContacts[].​receiveElectronicSummaryReportsboolean

Will receive electronic summary reports

sites[].​siteContacts[].​emailSuspendedboolean

Whether the contact is unable to receive emails

Default false
sites[].​siteContacts[].​contactNameToAppearOnInvoiceboolean

Only 1 contact per site can be set to true. If unspecified, this will be defaulted to the 1st contact. If specified for a different contact, it will be set to false for the previous one

Default false
sites[].​siteContacts[].​receiveEmailFraudAlertboolean

Will receive a fraud alert by email

Default false
sites[].​siteContacts[].​receiveSmsFraudAlertboolean

Will receive a fraud alert by SMS

Default false
sites[].​repaymentPlanAmountnumber(decimal)[ 1 .. 100000 ]

Repayment plan period amount in major currency (e.g pounds/dollars/euros)

sites[].​repaymentPlanRemainingPeriodsinteger(int64)[ 0 .. 240 ]

repayment plan remaining periods (typically in months)

Example: 0
sites[].​assignedCustomFieldsArray of objects(AssignedCustomField)
Example: [{"customFieldDefinitionId":102,"label":"Customer Tier","value":"Gold"}]
creditThresholdnumber[ 0 .. 100000000000000000 ]

Customer credit threshold

Example: 100
tripwireIdinteger(int64)

Tripwire plan identifier

customerContactsArray of objects(ContactDetails)
assignedCustomFieldsArray of objects(AssignedCustomField)
Example: [{"customFieldDefinitionId":102,"label":"Customer Tier","value":"Gold"}]
]
Response
application/json
[ { "id": 1, "contractOwnerId": 0, "contractOwnerSubBrandId": 0, "customerType": "RESIDENTIAL", "customerName": "string", "customerAccountNumber": "string", "startDate": "2019-08-24", "endDate": "2019-08-24", "createdDate": "2019-08-24T14:15:22Z", "updatedDate": "2019-08-24T14:15:22Z", "contractTerm": 0, "contractTermStartDate": "2019-08-24", "customerIsVip": false, "customerMarker": false, "externalCommissionAgentId": 1, "onlineBillingRequired": false, "onlineEmailAddress": "string", "sendWelcomeEmailOn": "2019-08-24", "billingCycleId": 1, "sites": [], "creditThreshold": 100, "tripwireId": 0, "customerContacts": [], "assignedCustomFields": [] } ]

Create a new customer and primary site

Request

Security
bearerAuth
Bodyapplication/jsonrequired

New customer and default site

contractOwnerIdinteger(int32)required

Contract Owner Identifier

contractOwnerSubBrandIdinteger(int32)

Contract owner sub brand identifier, if not specified then the default will be used

customerTypestring(CustomerType)required

Customer type

Enum"RESIDENTIAL""BUSINESS""RESELLER""STAFF_MEMBER"
customerNamestring[ 1 .. 100 ] characters[\w\p{L}\s%£@&#=':;`’,|!_—–\(\)\\/\-\+\.\?\*\...required

Customer Name

customerAccountNumberstring[ 1 .. 100 ] characters[\w\p{L}\s%£@&#=':;`’,|!_—–\(\)\\/\-\+\.\?\*\...required

Customer account number

startDatestring(date)required

Customer start date

endDatestring(date)

Customer end date

contractTerminteger(int32)

Contract term in months if applicable - requires contract term start date

contractTermStartDatestring(date)

Start date of contract term if applicable - required with contract term

customerIsVipboolean

Customer is marked as VIP (deprecated - please use customerMarker instead)

Default false
customerMarkerboolean

Customer is marked, e.g. VIP, Vulnerable, etc

Default false
externalCommissionAgentIdinteger(int64)

External commission agent identifier

Example: 1
onlineBillingRequiredboolean

Online billing required

Default false
onlineEmailAddressstring(EmailAddress)<= 255 characters(?:[a-zA-Z0-9!#$%&'*+/=?^_`{|}~-]+(?:\.[a-zA-...

Email address

sendWelcomeEmailOnstring(date)

Send welcome email on this date

billingCycleIdinteger(int64)required

Billing cycle identifier

Example: 1
sitesArray of objects(Site)[ 1 .. 1000 ] itemsrequired
sites[].​customerIdinteger(int64)required

Customer identifier - set to 0 when creating a new customer

Example: 0
sites[].​siteNamestring[ 1 .. 100 ] characters[\w\p{L}\s%£@&#=':;`’,|!_—–\(\)\\/\-\+\.\?\*\...required

Site name

sites[].​siteReferencestring[ 1 .. 100 ] characters[\w\p{L}\s%£@&#=':;`’,|!_—–\(\)\\/\-\+\.\?\*\...required

Site reference

sites[].​startDatestring(date)required

Site start date

sites[].​endDatestring(date)

Site end date

sites[].​siteAddressobject(Address)required
sites[].​siteAddress.​businessNamestring[ 0 .. 100 ] characters[\w\p{L}\s%£@&#=':;`’,|!_—–\(\)\\/\-\+\.\?\*\...

Business name

sites[].​siteAddress.​address1string[ 1 .. 100 ] characters[\w\p{L}\s%£@&#=':;`’,|!_—–\(\)\\/\-\+\.\?\*\...required

Address line 1

sites[].​siteAddress.​address2string[ 0 .. 100 ] characters[\w\p{L}\s%£@&#=':;`’,|!_—–\(\)\\/\-\+\.\?\*\...

Address line 2

sites[].​siteAddress.​address3string[ 0 .. 100 ] characters[\w\p{L}\s%£@&#=':;`’,|!_—–\(\)\\/\-\+\.\?\*\...

Address line 3

sites[].​siteAddress.​townstring[ 1 .. 50 ] characters[\w\p{L}\s%£@&#=':;`’,|!_—–\(\)\\/\-\+\.\?\*\...required

Town

sites[].​siteAddress.​countystring[ 0 .. 30 ] characters[\w\p{L}\s%£@&#=':;`’,|!_—–\(\)\\/\-\+\.\?\*\...

County

sites[].​siteAddress.​postcodestring[ 0 .. 20 ] characters[a-zA-Z0-9\p{L}@.\-\+_\s]+required

Postcode

sites[].​siteAddress.​countrystring(CountryCode)= 2 characters[A-Z]{2}required

ISO 3166 alpha-2 code representing country

Example: "GB"
sites[].​siteInvoiceDetailsobject(SiteInvoiceDetails)

Invoice details if this site should receive invoices

sites[].​siteIdReceivingInvoiceinteger(int64)

Identifier of another site that receives the invoices if no invoice details provided for this site

Example: 1
sites[].​siteContactsArray of objects(ContactDetails)non-emptyrequired
sites[].​siteContacts[].​contactNamestring[ 1 .. 100 ] characters[\w\p{L}\s%£@&#=':;`’,|!_—–\(\)\\/\-\+\.\?\*\...required

Contact name

sites[].​siteContacts[].​contactTelephoneNumberstring[ 4 .. 100 ] characters^$|[a-zA-Z0-9\p{L}\s()@&.,-_£|]{4,100}

Contact telephone number

sites[].​siteContacts[].​contactAlternativeTelephoneNumberstring[ 4 .. 100 ] characters^$|[a-zA-Z0-9\p{L}\s()@&.,-_£|]{4,100}

Contact alternative telephone number

sites[].​siteContacts[].​contactEmailAddressstring(EmailAddress)<= 255 characters(?:[a-zA-Z0-9!#$%&'*+/=?^_`{|}~-]+(?:\.[a-zA-...

Email address

sites[].​siteContacts[].​contactRolestring(ContactRole)required

Contact Role

Enum"ACCOUNTS""TECHNICAL""SALES""GENERAL"
sites[].​siteContacts[].​receiveInvoiceBystring(ReceiveInvoiceBy)

Receive invoice by email, post or both? Required when contactNameToAppearOnInvoice is set to true

Enum"EMAIL""POST""EMAIL_AND_POST"
sites[].​siteContacts[].​receiveInvoiceSummaryBystring(ReceiveInvoiceSummaryBy)

Receive invoice summary by email, post or both?

Enum"EMAIL""POST""EMAIL_AND_POST"
sites[].​siteContacts[].​receiveElectronicSummaryReportsboolean

Will receive electronic summary reports

sites[].​siteContacts[].​emailSuspendedboolean

Whether the contact is unable to receive emails

Default false
sites[].​siteContacts[].​contactNameToAppearOnInvoiceboolean

Only 1 contact per site can be set to true. If unspecified, this will be defaulted to the 1st contact. If specified for a different contact, it will be set to false for the previous one

Default false
sites[].​siteContacts[].​receiveEmailFraudAlertboolean

Will receive a fraud alert by email

Default false
sites[].​siteContacts[].​receiveSmsFraudAlertboolean

Will receive a fraud alert by SMS

Default false
sites[].​repaymentPlanAmountnumber(decimal)[ 1 .. 100000 ]

Repayment plan period amount in major currency (e.g pounds/dollars/euros)

sites[].​repaymentPlanRemainingPeriodsinteger(int64)[ 0 .. 240 ]

repayment plan remaining periods (typically in months)

Example: 0
sites[].​assignedCustomFieldsArray of objects(AssignedCustomField)
Example: [{"customFieldDefinitionId":102,"label":"Customer Tier","value":"Gold"}]
creditThresholdnumber[ 0 .. 100000000000000000 ]

Customer credit threshold

Example: 100
tripwireIdinteger(int64)

Tripwire plan identifier

customerContactsArray of objects(ContactDetails)
assignedCustomFieldsArray of objects(AssignedCustomField)
Example: [{"customFieldDefinitionId":102,"label":"Customer Tier","value":"Gold"}]
curl -i -X POST \
  https://rest.elevatebilling.com/v1/customers \
  -H 'Authorization: Bearer <YOUR_JWT_HERE>' \
  -H 'Content-Type: application/json' \
  -d '{
    "contractOwnerId": 0,
    "contractOwnerSubBrandId": 0,
    "customerType": "RESIDENTIAL",
    "customerName": "string",
    "customerAccountNumber": "string",
    "startDate": "2019-08-24",
    "endDate": "2019-08-24",
    "contractTerm": 0,
    "contractTermStartDate": "2019-08-24",
    "customerIsVip": false,
    "customerMarker": false,
    "externalCommissionAgentId": 1,
    "onlineBillingRequired": false,
    "onlineEmailAddress": "string",
    "sendWelcomeEmailOn": "2019-08-24",
    "billingCycleId": 1,
    "sites": [
      {
        "customerId": 0,
        "siteName": "string",
        "siteReference": "string",
        "startDate": "2019-08-24",
        "endDate": "2019-08-24",
        "siteAddress": {
          "businessName": "string",
          "address1": "string",
          "address2": "string",
          "address3": "string",
          "town": "string",
          "county": "string",
          "postcode": "string",
          "country": "GB"
        },
        "siteInvoiceDetails": {
          "invoiceSummaryTemplateId": 0,
          "invoiceTemplateId": 0,
          "electronicSummaryTemplateIds": [
            123
          ],
          "invoiceSummaryTemplateComponents": [
            {}
          ],
          "invoiceAddress": {
            "businessName": "string",
            "address1": "string",
            "address2": "string",
            "address3": "string",
            "town": "string",
            "county": "string",
            "postcode": "string",
            "country": "GB"
          },
          "accountPackageReference": "string",
          "paymentTermsInDays": 400,
          "preferredPaymentDay": 1,
          "paymentMethod": "CHEQUE",
          "mandateReference": "string",
          "thirdPartyCustomerReference": "string",
          "directDebitReference": "string",
          "accountName": "string",
          "accountNumber": "stringst",
          "sortCode": "string",
          "purchaseOrderNumber": "string",
          "invoiceNotes": "string",
          "taxExempt": false,
          "taxRegistrationNumber": "string"
        },
        "siteIdReceivingInvoice": 1,
        "siteContacts": [
          {
            "contactName": "string",
            "contactTelephoneNumber": "string",
            "contactAlternativeTelephoneNumber": "string",
            "contactEmailAddress": "string",
            "contactRole": "ACCOUNTS",
            "receiveInvoiceBy": "EMAIL",
            "receiveInvoiceSummaryBy": "EMAIL",
            "receiveElectronicSummaryReports": true,
            "emailSuspended": false,
            "contactNameToAppearOnInvoice": false,
            "receiveEmailFraudAlert": false,
            "receiveSmsFraudAlert": false
          }
        ],
        "repaymentPlanAmount": 1,
        "repaymentPlanRemainingPeriods": 0,
        "assignedCustomFields": [
          {
            "customFieldDefinitionId": 102,
            "label": "Customer Tier",
            "value": "Gold"
          }
        ]
      }
    ],
    "creditThreshold": 100,
    "tripwireId": 0,
    "customerContacts": [
      {
        "contactName": "string",
        "contactTelephoneNumber": "string",
        "contactAlternativeTelephoneNumber": "string",
        "contactEmailAddress": "string",
        "contactRole": "ACCOUNTS",
        "receiveInvoiceBy": "EMAIL",
        "receiveInvoiceSummaryBy": "EMAIL",
        "receiveElectronicSummaryReports": true,
        "emailSuspended": false,
        "contactNameToAppearOnInvoice": false,
        "receiveEmailFraudAlert": false,
        "receiveSmsFraudAlert": false
      }
    ],
    "assignedCustomFields": [
      {
        "customFieldDefinitionId": 102,
        "label": "Customer Tier",
        "value": "Gold"
      }
    ]
  }'

Responses

OK

Bodyapplication/json
idinteger(int64)read-only

Customer identifier

Example: 1
contractOwnerIdinteger(int32)required

Contract Owner Identifier

contractOwnerSubBrandIdinteger(int32)

Contract owner sub brand identifier, if not specified then the default will be used

customerTypestring(CustomerType)required

Customer type

Enum"RESIDENTIAL""BUSINESS""RESELLER""STAFF_MEMBER"
customerNamestring[ 1 .. 100 ] characters[\w\p{L}\s%£@&#=':;`’,|!_—–\(\)\\/\-\+\.\?\*\...required

Customer Name

customerAccountNumberstring[ 1 .. 100 ] characters[\w\p{L}\s%£@&#=':;`’,|!_—–\(\)\\/\-\+\.\?\*\...required

Customer account number

startDatestring(date)required

Customer start date

endDatestring(date)

Customer end date

createdDatestring(date-time)read-only

Customer created date

updatedDatestring(date-time)read-only

Customer updated date

contractTerminteger(int32)

Contract term in months if applicable - requires contract term start date

contractTermStartDatestring(date)

Start date of contract term if applicable - required with contract term

customerIsVipboolean

Customer is marked as VIP (deprecated - please use customerMarker instead)

Default false
customerMarkerboolean

Customer is marked, e.g. VIP, Vulnerable, etc

Default false
externalCommissionAgentIdinteger(int64)

External commission agent identifier

Example: 1
onlineBillingRequiredboolean

Online billing required

Default false
onlineEmailAddressstring(EmailAddress)<= 255 characters(?:[a-zA-Z0-9!#$%&'*+/=?^_`{|}~-]+(?:\.[a-zA-...

Email address

sendWelcomeEmailOnstring(date)

Send welcome email on this date

billingCycleIdinteger(int64)required

Billing cycle identifier

Example: 1
sitesArray of objects(Site)[ 1 .. 1000 ] itemsrequired
sites[].​idinteger(int64)read-only

Site identifier

Example: 1
sites[].​customerIdinteger(int64)required

Customer identifier - set to 0 when creating a new customer

Example: 0
sites[].​siteNamestring[ 1 .. 100 ] characters[\w\p{L}\s%£@&#=':;`’,|!_—–\(\)\\/\-\+\.\?\*\...required

Site name

sites[].​siteReferencestring[ 1 .. 100 ] characters[\w\p{L}\s%£@&#=':;`’,|!_—–\(\)\\/\-\+\.\?\*\...required

Site reference

sites[].​startDatestring(date)required

Site start date

sites[].​endDatestring(date)

Site end date

sites[].​createdDatestring(date-time)read-only

Site created date

sites[].​updatedDatestring(date-time)read-only

Site updated date

sites[].​siteAddressobject(Address)required
sites[].​siteAddress.​idinteger(int64)read-only

Internal identifier for address entry

Example: 1
sites[].​siteAddress.​businessNamestring[ 0 .. 100 ] characters[\w\p{L}\s%£@&#=':;`’,|!_—–\(\)\\/\-\+\.\?\*\...

Business name

sites[].​siteAddress.​address1string[ 1 .. 100 ] characters[\w\p{L}\s%£@&#=':;`’,|!_—–\(\)\\/\-\+\.\?\*\...required

Address line 1

sites[].​siteAddress.​address2string[ 0 .. 100 ] characters[\w\p{L}\s%£@&#=':;`’,|!_—–\(\)\\/\-\+\.\?\*\...

Address line 2

sites[].​siteAddress.​address3string[ 0 .. 100 ] characters[\w\p{L}\s%£@&#=':;`’,|!_—–\(\)\\/\-\+\.\?\*\...

Address line 3

sites[].​siteAddress.​townstring[ 1 .. 50 ] characters[\w\p{L}\s%£@&#=':;`’,|!_—–\(\)\\/\-\+\.\?\*\...required

Town

sites[].​siteAddress.​countystring[ 0 .. 30 ] characters[\w\p{L}\s%£@&#=':;`’,|!_—–\(\)\\/\-\+\.\?\*\...

County

sites[].​siteAddress.​postcodestring[ 0 .. 20 ] characters[a-zA-Z0-9\p{L}@.\-\+_\s]+required

Postcode

sites[].​siteAddress.​countrystring(CountryCode)= 2 characters[A-Z]{2}required

ISO 3166 alpha-2 code representing country

Example: "GB"
sites[].​siteInvoiceDetailsobject(SiteInvoiceDetails)

Invoice details if this site should receive invoices

sites[].​siteIdReceivingInvoiceinteger(int64)

Identifier of another site that receives the invoices if no invoice details provided for this site

Example: 1
sites[].​siteContactsArray of objects(ContactDetails)non-emptyrequired
sites[].​siteContacts[].​idinteger(int64)read-only

Contact identifier

Example: 1
sites[].​siteContacts[].​contactNamestring[ 1 .. 100 ] characters[\w\p{L}\s%£@&#=':;`’,|!_—–\(\)\\/\-\+\.\?\*\...required

Contact name

sites[].​siteContacts[].​contactTelephoneNumberstring[ 4 .. 100 ] characters^$|[a-zA-Z0-9\p{L}\s()@&.,-_£|]{4,100}

Contact telephone number

sites[].​siteContacts[].​contactAlternativeTelephoneNumberstring[ 4 .. 100 ] characters^$|[a-zA-Z0-9\p{L}\s()@&.,-_£|]{4,100}

Contact alternative telephone number

sites[].​siteContacts[].​contactEmailAddressstring(EmailAddress)<= 255 characters(?:[a-zA-Z0-9!#$%&'*+/=?^_`{|}~-]+(?:\.[a-zA-...

Email address

sites[].​siteContacts[].​contactRolestring(ContactRole)required

Contact Role

Enum"ACCOUNTS""TECHNICAL""SALES""GENERAL"
sites[].​siteContacts[].​receiveInvoiceBystring(ReceiveInvoiceBy)

Receive invoice by email, post or both? Required when contactNameToAppearOnInvoice is set to true

Enum"EMAIL""POST""EMAIL_AND_POST"
sites[].​siteContacts[].​receiveInvoiceSummaryBystring(ReceiveInvoiceSummaryBy)

Receive invoice summary by email, post or both?

Enum"EMAIL""POST""EMAIL_AND_POST"
sites[].​siteContacts[].​receiveElectronicSummaryReportsboolean

Will receive electronic summary reports

sites[].​siteContacts[].​emailSuspendedboolean

Whether the contact is unable to receive emails

Default false
sites[].​siteContacts[].​contactNameToAppearOnInvoiceboolean

Only 1 contact per site can be set to true. If unspecified, this will be defaulted to the 1st contact. If specified for a different contact, it will be set to false for the previous one

Default false
sites[].​siteContacts[].​receiveEmailFraudAlertboolean

Will receive a fraud alert by email

Default false
sites[].​siteContacts[].​receiveSmsFraudAlertboolean

Will receive a fraud alert by SMS

Default false
sites[].​repaymentPlanAmountnumber(decimal)[ 1 .. 100000 ]

Repayment plan period amount in major currency (e.g pounds/dollars/euros)

sites[].​repaymentPlanRemainingPeriodsinteger(int64)[ 0 .. 240 ]

repayment plan remaining periods (typically in months)

Example: 0
sites[].​assignedCustomFieldsArray of objects(AssignedCustomField)
Example: [{"customFieldDefinitionId":102,"label":"Customer Tier","value":"Gold"}]
creditThresholdnumber[ 0 .. 100000000000000000 ]

Customer credit threshold

Example: 100
tripwireIdinteger(int64)

Tripwire plan identifier

customerContactsArray of objects(ContactDetails)
assignedCustomFieldsArray of objects(AssignedCustomField)
Example: [{"customFieldDefinitionId":102,"label":"Customer Tier","value":"Gold"}]
Response
application/json
{ "id": 1, "contractOwnerId": 0, "contractOwnerSubBrandId": 0, "customerType": "RESIDENTIAL", "customerName": "string", "customerAccountNumber": "string", "startDate": "2019-08-24", "endDate": "2019-08-24", "createdDate": "2019-08-24T14:15:22Z", "updatedDate": "2019-08-24T14:15:22Z", "contractTerm": 0, "contractTermStartDate": "2019-08-24", "customerIsVip": false, "customerMarker": false, "externalCommissionAgentId": 1, "onlineBillingRequired": false, "onlineEmailAddress": "string", "sendWelcomeEmailOn": "2019-08-24", "billingCycleId": 1, "sites": [ {} ], "creditThreshold": 100, "tripwireId": 0, "customerContacts": [ {} ], "assignedCustomFields": [ {} ] }

Check if customer exists

Request

Security
bearerAuth
Query
contractOwnerIdstring(IdFilterParam)

Filter by contract owner

Example: contractOwnerId=0
customerNamestring(StringFilterParam)

Filter by customer name

Example: customerName=xyz | in:x,y | like:xyz
customerTypestring(StringFilterParam)

Filter by customer type

Example: customerType=xyz | in:x,y | like:xyz
customerAccountNumberstring(StringFilterParam)

Filter by customer account number

Example: customerAccountNumber=xyz | in:x,y | like:xyz
billingCycleIdstring(IdFilterParam)

Filter by billing cycle

Example: billingCycleId=0
startDatestring(DateFilterParam)

Filter by start date

Example: startDate=yyyy-MM-dd | lt:yyyy-MM-dd | gt:yyyy-MM-dd | gtn:yyyy-MM-dd
endDatestring(DateFilterParam)

Filter by end date

Example: endDate=yyyy-MM-dd | lt:yyyy-MM-dd | gt:yyyy-MM-dd | gtn:yyyy-MM-dd
curl -i -X HEAD \
  'https://rest.elevatebilling.com/v1/customers?contractOwnerId=0&customerName=xyz+%7C+in%3Ax%2Cy+%7C+like%3Axyz&customerType=xyz+%7C+in%3Ax%2Cy+%7C+like%3Axyz&customerAccountNumber=xyz+%7C+in%3Ax%2Cy+%7C+like%3Axyz&billingCycleId=0&startDate=yyyy-MM-dd+%2C+lt%3Ayyyy-MM-dd+%2C+gt%3Ayyyy-MM-dd+%2C+gtn%3Ayyyy-MM-dd&endDate=yyyy-MM-dd+%2C+lt%3Ayyyy-MM-dd+%2C+gt%3Ayyyy-MM-dd+%2C+gtn%3Ayyyy-MM-dd' \
  -H 'Authorization: Bearer <YOUR_JWT_HERE>'

Responses

Exists

Body

Get a specific customer

Request

Security
bearerAuth
Path
customer_idinteger(int64)(IdParam)>= 1required

Customer identifier

Example: 1
curl -i -X GET \
  https://rest.elevatebilling.com/v1/customers/1 \
  -H 'Authorization: Bearer <YOUR_JWT_HERE>'

Responses

Customer found

Bodyapplication/json
idinteger(int64)read-only

Customer identifier

Example: 1
contractOwnerIdinteger(int32)required

Contract Owner Identifier

contractOwnerSubBrandIdinteger(int32)

Contract owner sub brand identifier, if not specified then the default will be used

customerTypestring(CustomerType)required

Customer type

Enum"RESIDENTIAL""BUSINESS""RESELLER""STAFF_MEMBER"
customerNamestring[ 1 .. 100 ] characters[\w\p{L}\s%£@&#=':;`’,|!_—–\(\)\\/\-\+\.\?\*\...required

Customer Name

customerAccountNumberstring[ 1 .. 100 ] characters[\w\p{L}\s%£@&#=':;`’,|!_—–\(\)\\/\-\+\.\?\*\...required

Customer account number

startDatestring(date)required

Customer start date

endDatestring(date)

Customer end date

createdDatestring(date-time)read-only

Customer created date

updatedDatestring(date-time)read-only

Customer updated date

contractTerminteger(int32)

Contract term in months if applicable - requires contract term start date

contractTermStartDatestring(date)

Start date of contract term if applicable - required with contract term

customerIsVipboolean

Customer is marked as VIP (deprecated - please use customerMarker instead)

Default false
customerMarkerboolean

Customer is marked, e.g. VIP, Vulnerable, etc

Default false
externalCommissionAgentIdinteger(int64)

External commission agent identifier

Example: 1
onlineBillingRequiredboolean

Online billing required

Default false
onlineEmailAddressstring(EmailAddress)<= 255 characters(?:[a-zA-Z0-9!#$%&'*+/=?^_`{|}~-]+(?:\.[a-zA-...

Email address

sendWelcomeEmailOnstring(date)

Send welcome email on this date

billingCycleIdinteger(int64)required

Billing cycle identifier

Example: 1
sitesArray of objects(Site)[ 1 .. 1000 ] itemsrequired
sites[].​idinteger(int64)read-only

Site identifier

Example: 1
sites[].​customerIdinteger(int64)required

Customer identifier - set to 0 when creating a new customer

Example: 0
sites[].​siteNamestring[ 1 .. 100 ] characters[\w\p{L}\s%£@&#=':;`’,|!_—–\(\)\\/\-\+\.\?\*\...required

Site name

sites[].​siteReferencestring[ 1 .. 100 ] characters[\w\p{L}\s%£@&#=':;`’,|!_—–\(\)\\/\-\+\.\?\*\...required

Site reference

sites[].​startDatestring(date)required

Site start date

sites[].​endDatestring(date)

Site end date

sites[].​createdDatestring(date-time)read-only

Site created date

sites[].​updatedDatestring(date-time)read-only

Site updated date

sites[].​siteAddressobject(Address)required
sites[].​siteAddress.​idinteger(int64)read-only

Internal identifier for address entry

Example: 1
sites[].​siteAddress.​businessNamestring[ 0 .. 100 ] characters[\w\p{L}\s%£@&#=':;`’,|!_—–\(\)\\/\-\+\.\?\*\...

Business name

sites[].​siteAddress.​address1string[ 1 .. 100 ] characters[\w\p{L}\s%£@&#=':;`’,|!_—–\(\)\\/\-\+\.\?\*\...required

Address line 1

sites[].​siteAddress.​address2string[ 0 .. 100 ] characters[\w\p{L}\s%£@&#=':;`’,|!_—–\(\)\\/\-\+\.\?\*\...

Address line 2

sites[].​siteAddress.​address3string[ 0 .. 100 ] characters[\w\p{L}\s%£@&#=':;`’,|!_—–\(\)\\/\-\+\.\?\*\...

Address line 3

sites[].​siteAddress.​townstring[ 1 .. 50 ] characters[\w\p{L}\s%£@&#=':;`’,|!_—–\(\)\\/\-\+\.\?\*\...required

Town

sites[].​siteAddress.​countystring[ 0 .. 30 ] characters[\w\p{L}\s%£@&#=':;`’,|!_—–\(\)\\/\-\+\.\?\*\...

County

sites[].​siteAddress.​postcodestring[ 0 .. 20 ] characters[a-zA-Z0-9\p{L}@.\-\+_\s]+required

Postcode

sites[].​siteAddress.​countrystring(CountryCode)= 2 characters[A-Z]{2}required

ISO 3166 alpha-2 code representing country

Example: "GB"
sites[].​siteInvoiceDetailsobject(SiteInvoiceDetails)

Invoice details if this site should receive invoices

sites[].​siteIdReceivingInvoiceinteger(int64)

Identifier of another site that receives the invoices if no invoice details provided for this site

Example: 1
sites[].​siteContactsArray of objects(ContactDetails)non-emptyrequired
sites[].​siteContacts[].​idinteger(int64)read-only

Contact identifier

Example: 1
sites[].​siteContacts[].​contactNamestring[ 1 .. 100 ] characters[\w\p{L}\s%£@&#=':;`’,|!_—–\(\)\\/\-\+\.\?\*\...required

Contact name

sites[].​siteContacts[].​contactTelephoneNumberstring[ 4 .. 100 ] characters^$|[a-zA-Z0-9\p{L}\s()@&.,-_£|]{4,100}

Contact telephone number

sites[].​siteContacts[].​contactAlternativeTelephoneNumberstring[ 4 .. 100 ] characters^$|[a-zA-Z0-9\p{L}\s()@&.,-_£|]{4,100}

Contact alternative telephone number

sites[].​siteContacts[].​contactEmailAddressstring(EmailAddress)<= 255 characters(?:[a-zA-Z0-9!#$%&'*+/=?^_`{|}~-]+(?:\.[a-zA-...

Email address

sites[].​siteContacts[].​contactRolestring(ContactRole)required

Contact Role

Enum"ACCOUNTS""TECHNICAL""SALES""GENERAL"
sites[].​siteContacts[].​receiveInvoiceBystring(ReceiveInvoiceBy)

Receive invoice by email, post or both? Required when contactNameToAppearOnInvoice is set to true

Enum"EMAIL""POST""EMAIL_AND_POST"
sites[].​siteContacts[].​receiveInvoiceSummaryBystring(ReceiveInvoiceSummaryBy)

Receive invoice summary by email, post or both?

Enum"EMAIL""POST""EMAIL_AND_POST"
sites[].​siteContacts[].​receiveElectronicSummaryReportsboolean

Will receive electronic summary reports

sites[].​siteContacts[].​emailSuspendedboolean

Whether the contact is unable to receive emails

Default false
sites[].​siteContacts[].​contactNameToAppearOnInvoiceboolean

Only 1 contact per site can be set to true. If unspecified, this will be defaulted to the 1st contact. If specified for a different contact, it will be set to false for the previous one

Default false
sites[].​siteContacts[].​receiveEmailFraudAlertboolean

Will receive a fraud alert by email

Default false
sites[].​siteContacts[].​receiveSmsFraudAlertboolean

Will receive a fraud alert by SMS

Default false
sites[].​repaymentPlanAmountnumber(decimal)[ 1 .. 100000 ]

Repayment plan period amount in major currency (e.g pounds/dollars/euros)

sites[].​repaymentPlanRemainingPeriodsinteger(int64)[ 0 .. 240 ]

repayment plan remaining periods (typically in months)

Example: 0
sites[].​assignedCustomFieldsArray of objects(AssignedCustomField)
Example: [{"customFieldDefinitionId":102,"label":"Customer Tier","value":"Gold"}]
creditThresholdnumber[ 0 .. 100000000000000000 ]

Customer credit threshold

Example: 100
tripwireIdinteger(int64)

Tripwire plan identifier

customerContactsArray of objects(ContactDetails)
assignedCustomFieldsArray of objects(AssignedCustomField)
Example: [{"customFieldDefinitionId":102,"label":"Customer Tier","value":"Gold"}]
Response
application/json
{ "id": 1, "contractOwnerId": 0, "contractOwnerSubBrandId": 0, "customerType": "RESIDENTIAL", "customerName": "string", "customerAccountNumber": "string", "startDate": "2019-08-24", "endDate": "2019-08-24", "createdDate": "2019-08-24T14:15:22Z", "updatedDate": "2019-08-24T14:15:22Z", "contractTerm": 0, "contractTermStartDate": "2019-08-24", "customerIsVip": false, "customerMarker": false, "externalCommissionAgentId": 1, "onlineBillingRequired": false, "onlineEmailAddress": "string", "sendWelcomeEmailOn": "2019-08-24", "billingCycleId": 1, "sites": [ {} ], "creditThreshold": 100, "tripwireId": 0, "customerContacts": [ {} ], "assignedCustomFields": [ {} ] }

Update a customer

Request

Security
bearerAuth
Path
customer_idinteger(int64)(IdParam)>= 1required

Customer identifier

Example: 1
Headers
cascade_end_datestring(BooleanFilterParam)

A boolean flag to specify that the end date is to be cascaded down to all sites / inventories. An end date must be supplied in the patch for this flag to apply

Example: true | false
Bodyapplication/json-patch+jsonrequired

A set of JSONPatch operations to be performed

Array [
opstringrequired

The JSON Patch operation to be performed

Enum"add""remove""replace""move""copy""test"
pathstringrequired

A JSON-Pointer

valueobject

The value to be used within the operations

fromstring

A string containing a JSON Pointer value

]
curl -i -X PATCH \
  https://rest.elevatebilling.com/v1/customers/1 \
  -H 'Authorization: Bearer <YOUR_JWT_HERE>' \
  -H 'Content-Type: application/json-patch+json' \
  -H 'cascade_end_date: true | false' \
  -d '[
    {
      "op": "replace",
      "path": "/name",
      "value": "Supreme Wire Telecoms Ltd"
    }
  ]'

Responses

Success

Bodyapplication/json
idinteger(int64)read-only

Customer identifier

Example: 1
contractOwnerIdinteger(int32)required

Contract Owner Identifier

contractOwnerSubBrandIdinteger(int32)

Contract owner sub brand identifier, if not specified then the default will be used

customerTypestring(CustomerType)required

Customer type

Enum"RESIDENTIAL""BUSINESS""RESELLER""STAFF_MEMBER"
customerNamestring[ 1 .. 100 ] characters[\w\p{L}\s%£@&#=':;`’,|!_—–\(\)\\/\-\+\.\?\*\...required

Customer Name

customerAccountNumberstring[ 1 .. 100 ] characters[\w\p{L}\s%£@&#=':;`’,|!_—–\(\)\\/\-\+\.\?\*\...required

Customer account number

startDatestring(date)required

Customer start date

endDatestring(date)

Customer end date

createdDatestring(date-time)read-only

Customer created date

updatedDatestring(date-time)read-only

Customer updated date

contractTerminteger(int32)

Contract term in months if applicable - requires contract term start date

contractTermStartDatestring(date)

Start date of contract term if applicable - required with contract term

customerIsVipboolean

Customer is marked as VIP (deprecated - please use customerMarker instead)

Default false
customerMarkerboolean

Customer is marked, e.g. VIP, Vulnerable, etc

Default false
externalCommissionAgentIdinteger(int64)

External commission agent identifier

Example: 1
onlineBillingRequiredboolean

Online billing required

Default false
onlineEmailAddressstring(EmailAddress)<= 255 characters(?:[a-zA-Z0-9!#$%&'*+/=?^_`{|}~-]+(?:\.[a-zA-...

Email address

sendWelcomeEmailOnstring(date)

Send welcome email on this date

billingCycleIdinteger(int64)required

Billing cycle identifier

Example: 1
sitesArray of objects(Site)[ 1 .. 1000 ] itemsrequired
sites[].​idinteger(int64)read-only

Site identifier

Example: 1
sites[].​customerIdinteger(int64)required

Customer identifier - set to 0 when creating a new customer

Example: 0
sites[].​siteNamestring[ 1 .. 100 ] characters[\w\p{L}\s%£@&#=':;`’,|!_—–\(\)\\/\-\+\.\?\*\...required

Site name

sites[].​siteReferencestring[ 1 .. 100 ] characters[\w\p{L}\s%£@&#=':;`’,|!_—–\(\)\\/\-\+\.\?\*\...required

Site reference

sites[].​startDatestring(date)required

Site start date

sites[].​endDatestring(date)

Site end date

sites[].​createdDatestring(date-time)read-only

Site created date

sites[].​updatedDatestring(date-time)read-only

Site updated date

sites[].​siteAddressobject(Address)required
sites[].​siteAddress.​idinteger(int64)read-only

Internal identifier for address entry

Example: 1
sites[].​siteAddress.​businessNamestring[ 0 .. 100 ] characters[\w\p{L}\s%£@&#=':;`’,|!_—–\(\)\\/\-\+\.\?\*\...

Business name

sites[].​siteAddress.​address1string[ 1 .. 100 ] characters[\w\p{L}\s%£@&#=':;`’,|!_—–\(\)\\/\-\+\.\?\*\...required

Address line 1

sites[].​siteAddress.​address2string[ 0 .. 100 ] characters[\w\p{L}\s%£@&#=':;`’,|!_—–\(\)\\/\-\+\.\?\*\...

Address line 2

sites[].​siteAddress.​address3string[ 0 .. 100 ] characters[\w\p{L}\s%£@&#=':;`’,|!_—–\(\)\\/\-\+\.\?\*\...

Address line 3

sites[].​siteAddress.​townstring[ 1 .. 50 ] characters[\w\p{L}\s%£@&#=':;`’,|!_—–\(\)\\/\-\+\.\?\*\...required

Town

sites[].​siteAddress.​countystring[ 0 .. 30 ] characters[\w\p{L}\s%£@&#=':;`’,|!_—–\(\)\\/\-\+\.\?\*\...

County

sites[].​siteAddress.​postcodestring[ 0 .. 20 ] characters[a-zA-Z0-9\p{L}@.\-\+_\s]+required

Postcode

sites[].​siteAddress.​countrystring(CountryCode)= 2 characters[A-Z]{2}required

ISO 3166 alpha-2 code representing country

Example: "GB"
sites[].​siteInvoiceDetailsobject(SiteInvoiceDetails)

Invoice details if this site should receive invoices

sites[].​siteIdReceivingInvoiceinteger(int64)

Identifier of another site that receives the invoices if no invoice details provided for this site

Example: 1
sites[].​siteContactsArray of objects(ContactDetails)non-emptyrequired
sites[].​siteContacts[].​idinteger(int64)read-only

Contact identifier

Example: 1
sites[].​siteContacts[].​contactNamestring[ 1 .. 100 ] characters[\w\p{L}\s%£@&#=':;`’,|!_—–\(\)\\/\-\+\.\?\*\...required

Contact name

sites[].​siteContacts[].​contactTelephoneNumberstring[ 4 .. 100 ] characters^$|[a-zA-Z0-9\p{L}\s()@&.,-_£|]{4,100}

Contact telephone number

sites[].​siteContacts[].​contactAlternativeTelephoneNumberstring[ 4 .. 100 ] characters^$|[a-zA-Z0-9\p{L}\s()@&.,-_£|]{4,100}

Contact alternative telephone number

sites[].​siteContacts[].​contactEmailAddressstring(EmailAddress)<= 255 characters(?:[a-zA-Z0-9!#$%&'*+/=?^_`{|}~-]+(?:\.[a-zA-...

Email address

sites[].​siteContacts[].​contactRolestring(ContactRole)required

Contact Role

Enum"ACCOUNTS""TECHNICAL""SALES""GENERAL"
sites[].​siteContacts[].​receiveInvoiceBystring(ReceiveInvoiceBy)

Receive invoice by email, post or both? Required when contactNameToAppearOnInvoice is set to true

Enum"EMAIL""POST""EMAIL_AND_POST"
sites[].​siteContacts[].​receiveInvoiceSummaryBystring(ReceiveInvoiceSummaryBy)

Receive invoice summary by email, post or both?

Enum"EMAIL""POST""EMAIL_AND_POST"
sites[].​siteContacts[].​receiveElectronicSummaryReportsboolean

Will receive electronic summary reports

sites[].​siteContacts[].​emailSuspendedboolean

Whether the contact is unable to receive emails

Default false
sites[].​siteContacts[].​contactNameToAppearOnInvoiceboolean

Only 1 contact per site can be set to true. If unspecified, this will be defaulted to the 1st contact. If specified for a different contact, it will be set to false for the previous one

Default false
sites[].​siteContacts[].​receiveEmailFraudAlertboolean

Will receive a fraud alert by email

Default false
sites[].​siteContacts[].​receiveSmsFraudAlertboolean

Will receive a fraud alert by SMS

Default false
sites[].​repaymentPlanAmountnumber(decimal)[ 1 .. 100000 ]

Repayment plan period amount in major currency (e.g pounds/dollars/euros)

sites[].​repaymentPlanRemainingPeriodsinteger(int64)[ 0 .. 240 ]

repayment plan remaining periods (typically in months)

Example: 0
sites[].​assignedCustomFieldsArray of objects(AssignedCustomField)
Example: [{"customFieldDefinitionId":102,"label":"Customer Tier","value":"Gold"}]
creditThresholdnumber[ 0 .. 100000000000000000 ]

Customer credit threshold

Example: 100
tripwireIdinteger(int64)

Tripwire plan identifier

customerContactsArray of objects(ContactDetails)
assignedCustomFieldsArray of objects(AssignedCustomField)
Example: [{"customFieldDefinitionId":102,"label":"Customer Tier","value":"Gold"}]
Response
application/json
{ "id": 1, "contractOwnerId": 0, "contractOwnerSubBrandId": 0, "customerType": "RESIDENTIAL", "customerName": "string", "customerAccountNumber": "string", "startDate": "2019-08-24", "endDate": "2019-08-24", "createdDate": "2019-08-24T14:15:22Z", "updatedDate": "2019-08-24T14:15:22Z", "contractTerm": 0, "contractTermStartDate": "2019-08-24", "customerIsVip": false, "customerMarker": false, "externalCommissionAgentId": 1, "onlineBillingRequired": false, "onlineEmailAddress": "string", "sendWelcomeEmailOn": "2019-08-24", "billingCycleId": 1, "sites": [ {} ], "creditThreshold": 100, "tripwireId": 0, "customerContacts": [ {} ], "assignedCustomFields": [ {} ] }

Returns billing summary information

Request

Returns billing summary information for customers including open vs previous bill run values

Security
bearerAuth
Query
pageinteger(int32)(PageParam)>= 1required

Page of results to show

Example: page=1
pageSizeinteger(int32)(ResultsPerPageParam)[ 1 .. 1000 ]required

Results to return per page

Example: pageSize=100
sortstring(SortParam)

Comma-delimited list of the fields to sort by - defaults to ascending order, suffix :desc to change

Example: sort=id,name | name:desc
fieldsstring(FieldsParam)

Comma-delimited list of the field(s) to return if only a subset is required

Example: fields=id,name
customerIdstring(IdFilterParam)

Filter by customer

Example: customerId=0
valueDifferencestring(StringFilterParam)

Filter by the difference (absolute value) between the previous and the open bill run value

Example: valueDifference=xyz | in:x,y | like:xyz
percentageDifferencestring(StringFilterParam)

Filter by the difference (as percentage) between the previous and the open bill run value

Example: percentageDifference=xyz | in:x,y | like:xyz
ratingStatusstring(StringFilterParam)

Filter by rating status

Example: ratingStatus=xyz | in:x,y | like:xyz
billingStatusstring(StringFilterParam)

Filter by customer billing status

Example: billingStatus=xyz | in:x,y | like:xyz
curl -i -X GET \
  'https://rest.elevatebilling.com/v1/customer-billing-summaries?page=1&pageSize=100&sort=id%2Cname+%7C+name%3Adesc&fields=id%2Cname&customerId=0&valueDifference=xyz+%7C+in%3Ax%2Cy+%7C+like%3Axyz&percentageDifference=xyz+%7C+in%3Ax%2Cy+%7C+like%3Axyz&ratingStatus=xyz+%7C+in%3Ax%2Cy+%7C+like%3Axyz&billingStatus=xyz+%7C+in%3Ax%2Cy+%7C+like%3Axyz' \
  -H 'Authorization: Bearer <YOUR_JWT_HERE>'

Responses

OK

Bodyapplication/jsonArray [
customerIdinteger(int64)read-only

Customer identifier

Example: 1
billingStatusstring(CustomerBillingStatus)

Billing status of a customer

Enum"ACTIVE""FIRST_INVOICE""CEASED""RESURRECTED""NEVER_BILLED"
ratingStatusstring(CustomerRatingStatus)

Rating status of customer bill runs. If INCOMPLETE, then the bill run values are subject to change based on re-rating

Enum"COMPLETE""INCOMPLETE"
openBillRunValuenumberread-only

Value for this customer in the open bill run

Example: 100
previousBillRunValuenumberread-only

Value for this customer in the previous bill run

Example: 60
valueDifferencenumberread-only

The difference in monetary value between the previous and the open bill run value

Example: 40
percentageDifferencenumberread-only

The difference between the previous and the open bill run value as a percentage

Example: 80
]
Response
application/json
[ { "customerId": 1, "billingStatus": "ACTIVE", "ratingStatus": "COMPLETE", "openBillRunValue": 100, "previousBillRunValue": 60, "valueDifference": 40, "percentageDifference": 80 } ]

Returns usage data information for a customer

Request

Security
bearerAuth
Query
pageinteger(int32)(PageParam)>= 1required

Page of results to show

Example: page=1
pageSizeinteger(int32)(ResultsPerPageParam)[ 1 .. 1000 ]required

Results to return per page

Example: pageSize=100
sortstring(SortParam)

Comma-delimited list of the fields to sort by - defaults to ascending order, suffix :desc to change

Example: sort=id,name | name:desc
fieldsstring(FieldsParam)

Comma-delimited list of the field(s) to return if only a subset is required

Example: fields=id,name
customerIdstring(IdFilterParam)

Filter by customer id

Example: customerId=0
siteIdstring(IdFilterParam)

Filter by site id

Example: siteId=0
billRunIdstring(IdFilterParam)

Filter by bill run id

Example: billRunId=0
productReferencestring(StringFilterParam)

Filter by product reference

Example: productReference=xyz | in:x,y | like:xyz
serviceIdstring(StringFilterParam)

Filter by serviceId

Example: serviceId=xyz | in:x,y | like:xyz
eventDateFromstring(DateTimeFilterParam)

Filter based on events from this date

Example: eventDateFrom=yyyy-MM-ddTHH:mm:ssZ | lt:yyyy-MM-ddTHH:mm:ssZ | gt:yyyy-MM-ddTHH:mm:ssZ
eventDateTostring(DateTimeFilterParam)

Filter based on events until this date

Example: eventDateTo=yyyy-MM-ddTHH:mm:ssZ | lt:yyyy-MM-ddTHH:mm:ssZ | gt:yyyy-MM-ddTHH:mm:ssZ
destinationstring(StringFilterParam)

Filter by destination/origin

Example: destination=xyz | in:x,y | like:xyz
excludeZeroValueRecordsstring(BooleanFilterParam)

Filter out zero value entries

Example: excludeZeroValueRecords=true | false
curl -i -X GET \
  'https://rest.elevatebilling.com/v1/customer-usage-data?page=1&pageSize=100&sort=id%2Cname+%7C+name%3Adesc&fields=id%2Cname&customerId=0&siteId=0&billRunId=0&productReference=xyz+%7C+in%3Ax%2Cy+%7C+like%3Axyz&serviceId=xyz+%7C+in%3Ax%2Cy+%7C+like%3Axyz&eventDateFrom=yyyy-MM-ddTHH%3Amm%3AssZ+%2C+lt%3Ayyyy-MM-ddTHH%3Amm%3AssZ+%2C+gt%3Ayyyy-MM-ddTHH%3Amm%3AssZ&eventDateTo=yyyy-MM-ddTHH%3Amm%3AssZ+%2C+lt%3Ayyyy-MM-ddTHH%3Amm%3AssZ+%2C+gt%3Ayyyy-MM-ddTHH%3Amm%3AssZ&destination=xyz+%7C+in%3Ax%2Cy+%7C+like%3Axyz&excludeZeroValueRecords=true+%2C+false' \
  -H 'Authorization: Bearer <YOUR_JWT_HERE>'

Responses

OK

Bodyapplication/jsonArray [
idinteger(int64)read-only

Customer usage identifier

Example: 1
customerIdinteger(int64)

Customer identifier

Example: 0
siteIdinteger(int64)

Site identifier

Example: 0
billRunIdinteger(int64)

Bill run identifier

Example: 0
eventDatestring(date-time)read-only

Event date/time

productReferencestring(int64)

Product Reference identifier

Example: 0
serviceIdstring[ 4 .. 100 ] characters^$|[a-zA-Z0-9\p{L}\s()@&.,-_£|]{4,100}

Service ID

destinationstring[ 4 .. 100 ] characters

Destination

chargeGroupIdinteger(int64)

Charge group identifier

Example: 1
callClassstring[ 4 .. 255 ] characters

Call class

oneOffQuantityinteger(int32)

One-off quantity

dataQuantitynumber

Data (MB) quantity

durationQuantityinteger(int32)

Duration (seconds)

sellPricenumber

Sell Price

preDiscountedSellPricenumber

Pre-discounted sell price

buyPricenumber

Buy Price

ratedBuyPricenumber

Rated buy Price

profitnumber

Profit

profitPercentagenumber

Profit percentage

marginPercentagenumber

Margin percentage

timeBandstring(TimeBand)

Time band

Enum"OFFPEAK""PEAK""WEEKEND"
usageProductIdinteger(int64)

Usage product identifier

Example: 1
usageDirectionstring(UsageDirection)

Usage direction

Enum"OUTBOUND""INBOUND"
isdnboolean

Is ISDN?

Default false
additionalInfoGeneralstring

Additional info general

additionalInfoElectronicstring

Additional info electronic summary

supplierAccountIdinteger(int64)

Supplier account identifier

Example: 1
fileNamestring[ 4 .. 255 ] characters

File name

loadedDatestring(date)

Loaded date/time

parserNamestring[ 4 .. 255 ] characters

Parser name

fileTypestring[ 4 .. 50 ] characters

File type

]
Response
application/json
[ { "id": 1, "customerId": 0, "siteId": 0, "billRunId": 0, "eventDate": "2019-08-24T14:15:22Z", "productReference": 0, "serviceId": "string", "destination": "string", "chargeGroupId": 1, "callClass": "string", "oneOffQuantity": 0, "dataQuantity": 0, "durationQuantity": 0, "sellPrice": 0, "preDiscountedSellPrice": 0, "buyPrice": 0, "ratedBuyPrice": 0, "profit": 0, "profitPercentage": 0, "marginPercentage": 0, "timeBand": "OFFPEAK", "usageProductId": 1, "usageDirection": "OUTBOUND", "isdn": false, "additionalInfoGeneral": "string", "additionalInfoElectronic": "string", "supplierAccountId": 1, "fileName": "string", "loadedDate": "2019-08-24", "parserName": "string", "fileType": "string" } ]

sites

Sites represent the physical locations for each Customer

Operations