Platform JSON Objects

Table of Contents

Below is a list of all the available BSS JSON objects. All basic objects keep their object key in the property IntegrationId when they sync with the third party system for the first time.

Account

Push Method

Account

{
  "id": int,
  "integrationId": string,
  "createdAt": dateTimeOffset?,
  "updatedAt": dateTimeOffset?,
  "customValues": List of CustomValue Object,
  "name": string,
  "enableOrdering": bool,
  "parentAccount": AccountObject,
  "job": string,
  "code": string,
  "webSite": string,
  "phone": string,
  "fax": string,
  "description": string,
  "prorateBillingEnabled": ProrateBillingObject,
  "creditLimitAmount": decimal,
  "unlimitedCreditLimit": bool?,
  "useDebitInvoice": int?,
  "separateInvoicesEnabled": bool,
  "locationCode": string,
  "partialChargesInvoicing": PartialChargesInvoicingObject,
  "corpEmail": string,
  "companyName": string,
  "resellerType": ResellerTypeObject,
  "autoInvoiceNotificationEnabled": bool,
  "vatNumber": string,
  "validVatNum": int?,
  "ιsTaxable": bool,
  "industry": AccountIndustryObject,
  "type": AccountTypeObject,
  "source": AccountSourceObject,
  "transactionCurrency": CurrencyObject,
  "addresses": ListofAccountAddressobject,
  "entityUsage": string,
  "transactionCurrency": CurrencyObject,
  "paymentMethod": PaymentMethodObject,
  "responsibleUser": UserObject,
  "noteType": NoteTypeObject,
}

Account Industry

{
    "id": int,
    "integrationId": string,
    "name": string,
    "description": string,
    "position": int,
    "eRPCode": string,
    "isDefault": bool?
}

Account Type

{
	"id": int,
	"integrationId": string,
	"name": string,
	"position": int
}

Account Source

{
	"id": int,
	"integrationId": string,
	"name": string,
	"position": int
}

Account Address

{
    "id": Guid,
    "integrationId": string,
    "description": string,
    "address1": string,
    "address2": string,
    "city": string,
    "egion": string,
    "postCode": string,
    "isBilling": bool,
    "stateCode": string,
    "stateName": string,
    "eRPCode": string,
    "areaCode": string,
    "countryName": string,
    "countryCode": string,
    "isTaxEngineValid": byte,
    "addressState": int
}

Pull Method

Account

{
	"Name" : string,
	"EnableOrdering": bool,
	"ParentAccountId": int?,
	"PaymentMethodId": Guid?
	"Job": string,
	"Code": string,
	"WebSite": string,
	"Phone": string,
	"Fax": string,
	"Description": string,
	"ProrateBillingEnabled": int?,
	"CreditLimitAmount": decimal,
	"UnlimitedCreditLimit": bool,
	"UseDebitInvoice": int?,
	"SeparateInvoicesEnabled": bool,
	"LocationCode": string,
	"IsActive": bool,
	"PartialChargesInvoicing": int,
	"CorpEmail": string,
	"CompanyName": string,
	"EnableReselling": bool,
	"AutoInvoiceNotificationEnabled": bool,
	"VatNumber": string,
	"TaxAuthority": string,
	"ValidVatNum": int?,
	"IsTaxable": bool,
	"CreditLimitThresholdExceededAt": dateTimeOffset?,
	"ProfileID": string,
	"NoteType": int,
	"TypeID" : External system account type Id,
	"SourceId" : External system account source Id,
	"IndustryId" : External system account industry Id,
	"CurrencyCodeId" : External system account currency Id,
	"TransactionCurrencyCodeId" : External system account currency Id,
	"PaymentMethodId" : External system account currency Id,
	"Address" : Account Address object
}

Account Address

{
	"AccountId": int,
	"Description": string,
	"Adress1": string,
	"Address2": string,
	"City": string,
	"Region": string,
	"PostCode": string,
	"CountryCode": ISO 3166 country code, or custom value by using lookup table,
	"StateCode" : ISO 3166 State name or state code
	"IsBilling": bool,
	"StateId": int?,
	"ERPCode": string,
	"AreaCode": string,
	"CountryName": string,
	"AddressState": int?,
	"IsTaxEngineValid": bool
}

User

{
	"id": int,
	"name": string,
	"createdAt": dateTimeOffset,
	"updatedAt": dateTimeOffset,
	"firstname": string,
	"lastname": string,
	"email": string,
	"contact": Contact Object,
	"currency": Currency Object,
	"userType": string
}

Contact

Push Method

{
  "id": int,
  "integrationId": string,
  "createdAt": dateTimeOffset,
  "updatedAt": dateTimeOffset,
  "customValues": ListofCustomValueObjects"customValue": 	  CustomValueObject,
  "account": AccountObject,
  "isPrimary": bool?,
  "lastName": string,
  "firstName": string,
  "mobilePhone": string,
  "phone": string,
  "fax": string,
  "email": string,
  "isBillTo": bool?,
  "jobTitle": string,
  "notes": string,
  "iDSource": int?,
  "massMailEnabled": Int16?
}

Pull Method

{
	"Account": External system account Id,
	"IsPrimary": bool?,
	"LastName": string,
	"FirstName": string,
	"MobilePhone": string,
	"Phone": string,
	"Fax": string,
	"Email": string,
	"IsBillTo": bool?,
	"JobTitle": string,
	"Notes": string,
	"SourceId": int?,
	"MassMailEnabled": int?,
	"OptIn": bool?,
	"CurrencyCodeId" : External system account currency Id
}

Case

Push Method

Case

{
    "id": int,
    "integrationId": string,
    "account": Account Object,
    "contact": Contact Object,
    "stage": CaseStage Object,
    "initContact": CaseInitContact Object,
    "type": CaseType Object,
    "reason": CaseReason Object,
    "satisfaction": CaseSatisfaction Object,
    "priority": CasePriority Object,
    "name": string,
    "description": string,
    "percentComplete": byte,
    "dueDate": dateTimeOffset?,
    "code": string,
    "manHours": int?,
    "folder": CaseFolder Object,
    "originalMsg": int?,
    "onLineSupport": int?,
    "parent": Case Object,
    "mainCase": Case Object,   
    "startDate": dateTimeOffset?,
    "autoSchedule": bool?,
    "manHoursCalculation": double?,
    "duration": TimeSpan?,
    "product": Product Object
}

Case Folder

{
    "id": int,
    "integrationId": string,
    "createdAt": dateTimeOffset?,
    "updatedAt": dateTimeOffset?,
    "name": string,
    "description": string,
    "parent": CaseFolder Object
}

Case Stage

{
    "id": int,
    "integrationId": string,
    "name": string,
    "positionInList": byte,
    "type": string,
    "isActive": bool,
    "isDefault": bool?
}

Case Init Contact

{
    "id": int,
    "integrationId": string,
    "name": string,
    "positionInList": byte,
    "webComEnabled": bool
}

Case Priority

{
    "id": int,
    "integrationId": string,
    "name": string,
    "positionInList": byte,
    "webComEnabled": bool
}

Case Reason

{
    "id": int,
    "integrationId": string,
    "name": string,
    "positionInList": byte,
    "webComEnabled": bool
}

Case Satisfaction

{
    "id": int,
    "integrationId": string,
    "name": string,
    "positionInList": byte,
    "webComEnabled": bool
}

Case Type

{
    "id": int,
    "integrationId": string,
    "name": string,
    "positionInList": byte?,
    "webComEnabled": bool,
    "isDefault": bool?
}

Pull Method

Case

{
  "Account": External system Account Id,
  "ContactId": External system contact Id,
  "StageId": External system case stage Id,
  "TypeId": External system case type Id,
  "PriorityId": External system case priority Id,
  "Name": string,
  "Description": string,
  "Percentcomplete": byte,
  "DueDate" : dateTimeOffset?
  "Code" : string,
  "ManHours": int?,
  "FolderId": Case Folder object,
  "OriginalMsg": int?,
  "OnLineSupport": int?,
  "Parent": External system case Id,
  "MainCase": External system case stage Id,
  "StartDate": dateTimeOffset?,
  "AutoSchedule": bool?,
  "ProductId": External system case product Id
}

Order

Order

{
    "id": Guid,
    "integrationId": string,
    "createdAt": dateTimeOffset,
    "updatedAt": dateTimeOffset,
    "customValues": List of CustomValue Object,
    "code": string,
    "name": string,
    "date": dateTimeOffset,
    "deliveryDate": dateTimeOffset?,
    "totalPrice": decimal,
    "discount": decimal?,
    "discountType": byte?,
    "usage": string,
    "creditLimitExceeded": bool?,
    "stage": OrderStage Object,
    "type": OrderType Object,
    "description": string,
    "account": Account Object,
    "customer": Account Object,
    "contact": Contact Object,
    "paymentMethod": PaymentMethod Object,
    "isInvoiced": bool?,
    "parentId": string,
    "orderItems": List of OrderItem Objects
}

Order Item

{
    "Id": Guid,
    "IntegrationId": string,
    "CreatedAt": dateTimeOffset,
    "UpdatedAt": dateTimeOffset,
    "Name": string,
    "relatedItemId": Guid?,
    "ItemRelationType": string,
    "Product": Product Object,
    "Unit": UnitLite Object,
    "price": decimal?,
    "tax": decimal?,
    "Quantity": decimal,
    "discount": decimal?.
    "discountType": byte?,
    "totalPrice": decimal?,
    "basePrice": decimal?,
    "RowPosition": int,
    "Comments": string,
    "baseQuantity": decimal?,
    "PromotionDiscount": decimal,
    "promotionDiscountType": byte?,
    "parentId": Guid?,
    "billingOption": int?,
    "isUserPrice": bool?,
    "isInvoiced": bool?,
    "taxes": List of OrderItemTax Objects,
    "variations": List of OrderItemVariation Objects
    "lineAmount": decimal?,
    "costPrice": decimal?
}

Order Stage

{
    "id": int,
    "integrationId": string,
    "name": string,
    "type": OrderStageType Enum
}

Order Type

{
  "id": int,
  "integrationId" : string,
  "name": string
 }

Order Item Tax

{
  "id": Guid,
  "integrationId" : string,
  "name": string,
  "rate": decimal?,
  "amount": decimal?
 }

Order Item Variation

{
    "id": Guid,
    "valueId": string,
    "name": string,
    "value": string,
    "chargeAmount": string,
    "chargePercent": string,
    "allowUnlimited": bool?,
    "variation": ProductTypeAttribute Object
}

Invoice

Invoice

{
    "id": Guid,
    "integrationId": string,
    "createdAt": dateTimeOffset?,
    "updatedAt": dateTimeOffset?,,
    "customValues": List of CustomValue Objects,
    "code": string,
    "invoiceDate": dateTimeOffset?,
    "dueDate": dateTimeOffset?.
    "proformaDue": dateTimeOffset?,
    "datePaid": dateTimeOffset?,
    "grossAmount": decimal,
    "discountAmount": decimal,
    "totalAmount": decimal,
    "netAmount": decimal,
    "amountFactor": decimal,
    "balance": decimal,
    "IsProforma": bool,
    "stage": InvoiceStage Object,
    "type": InvoiceType Object,
    "paymentMethod": PaymentMethod Object,
    "account": Account Object,
    "billingAccount": Account Object,
    "invoiceItems": List of InvoiceItem Objects,
    "transactionCurrency": Currency Object,
    "transactionExchangeRate": decimal?,
    "invoiceCurrency": InvoiceCurrency Object
}

Invoice Stage

{
    "id": int,
    "integrationId" : string,
    "name": string,
    "type" : string
}

Invoice Type

{
    "id": int,
    "integrationId" : string,
    "name": string,
    "type" : string
}

Invoice Item

{
    "id": Guid,
    "integrationId": string,
    "invoice": Invoice Object,
    "account": Account Object,
    "parent": InvoiceItem Object,
    "invoiceItemTaxes": List of InvoiceItemTax Objects,
    "product": Product Object,
    "orderItem": OrderItem Object,
    "unit": UnitLite Object,
    "customUnitCategory": string,
    "itemName": string,
    "quantity": decimal?,
    "unitPrice": decimal?,
    "costPrice": decimal?,
    "discount": decimal,
    "discountType": byte?,
    "finalPrice": decimal,
    "leaseStart": dateTimeOffset?,
    "leaseEnd": dateTimeOffset?,
    "comments": string,
    "invoiceDue": dateTimeOffset?.
    "promotionDiscount": decimal,
    "promotionEnd": dateTimeOffset?,,
    "vatPercent": decimal,
    "usage": string,
    "addonItemID": Guid,
    "subscriptionId": Guid?
}

Invoice Item Tax

{
    "id": Guid,
    "integrationId" : string,
    "name": string,
    "rate": decimal?,
    "amount": decimal
 }

Invoice Currency

{
    "id": Guid,
    "currency": Currency Object,
    "rateDate": dateTimeOffset?,
    "exchangeRate": decimal?
}

Product

Product

{
        "id": Guid,
        "integrationId": string,
        "createdAt": dateTimeOffset?, 
        "updatedAt": dateTimeOffset?,
        "customValues": List of CustomValue Objects,
        "isActivated": bool?,
        "storefrontEnabled": bool?,
        "isFeatured": bool?,
        "isEnabled": bool?,
        "trialDuration": int?,
        "trialDurationType": string,
        "trialNo": int?,
        "trialType": string,
        "ignoreProrate": int,
        "prorataBilling": short?,
        "chargeType": string,
        "isNew": bool?,
        "overviewPage": string,
        "featuresTabVisible": bool?,
        "supportTabVisible": bool?,
        "supportOptions": string,
        "keyWords": string,
        "screenshotLinkEnabled": bool?,
        "demoLinkEnabled": bool?,
        "documentLinkEnabled":bool?,
        "termsOfUseEnabled": bool?,
        "termsOfUse": string,
        "isTaxable": bool,
        "trialVariationsEnabled": bool?,
        "webOfferEnabled": int?,
        "webCatalogueEnabled": bool,
        "groupPosition": int?,
        "availableViaPriceList": bool,
        "unitType":UnitType Object,
        "productType": ProductType Object,        
        "name": string,
        "code": string,
        "isBundle": bool,
        "isDeleted": bool,
        "numberOfDecimals": int,
        "chargeRule": string,
        "webOrderEnabled": Int16,
        "isProductGroup": bool,
        "shortDescription": string,
        "fullDescription": string,
        "isNegative": bool?,
        "comments": string,
        "isCompetitive": bool?,
        "competitionComments": string,
        "activateAllUnits": bool?,
        "filePath": string,
        "billingOption": int?,
        "isAddon": bool?,
        "includeAllProducts": int?,
        "extraKeyWords": string,
        "userProvisioningEnabled": int?,
        "requestType": int?,
        "iDResource": int?,
        "productPrices": List of ProductPrice Objects,
        "freePeriodEnabled": bool?,
        "externalBilling": bool
}

Product Prices

{
        "priceProductId": ProductPriceId Object,
        "unit": Unit Object,
        "salesPrice": decimal?,
        "purchasePrice": decimal?,
        "isSalesDefault": byte?,
        "sheet": string,
        "cell": string,
        "purSheet": string,
        "purCell": string,
        "isComputed": bool?,
        "term": int
}

Product Price ID

{
        "unit": Unit Object,
        "currency": Currency Object
}

Unit Group

{
        "id": int,
        "integrationId": string,
        "name": string,
        "description": string,
        "lastUpdateID": int?,
        "isActive": bool,
        "systemType": short,
        "isDeleted": int,
        "iDCopyOf": int?
}

Unit Type

{
        "id": Guid,
        "integrationId": string,
        "name": string,
        "position": int?,
        "isActive": bool,
        "isDefault": int,
        "iDCopyOf": Guid?
}

Unit

{
        "id": Guid,
        "integrationId": string,
        "name": string,
        "mnemonic": string,
        "decimalPlaces": string,
        "group": UnitCategory Object,
        "relatedUnitId": Guid?,
        "quantity": int,
        "baseQuantity": int,
        "isDefault": bool,
        "isActive": bool,
        "isEnabledForOrder": bool,
        "isViewable": bool?,
        "unitType": UnitType Object,
        "duration": int?,
        "durationType": string,
        "isDeleted": int?,
        "DCopyOf": Guid?
}

Unit Lite

{
	"id": Guid,
	"name": string,
	"mnemonic": string,
	"duration": int?,
	"durationType": string
}

Product Type

{
        "id": Guid,
        "integrationId": string,
        "name": string,
        "description": string,
        "productDescription": string,
        "quantityLimit": decimal?,
        "uniqueLease": int,
		"requestType": string,
        "quantityLimitLocked": int?,
        "retentionPeriodDays": short?,
        "iDCopyOf": Guid?
}

Product Attribute Value

{
        "id": Guid,
        "value": string,
        "allowUnlimited": bool?,
        "quantityLinked": bool?,
        "usageBased": int?,
        "productTypeAttribute": ProductTypeAttribute Object
}

Product Category

{
        "id": Guid,
        "integrationId": string,
        "name": string,
        "code": string,
        "iDCopyOf": Guid?,
        "parent": Category Object,
        "productNo": int?,
        "isActivated": bool,
        "description": string,
        "isSalesGroup": byte?,
        "positionInList": int?,
        "createdAt": dateTimeOffset,
        "updatedAt": dateTimeOffset
}

Product Type Attribute Type

{
        "id": Guid,
        "productType": ProductType Object,
        "productTypeAttributeType": ProductTypeAttributeType Object,
        "productTypeAttributeGroup": ProductTypeAttributeGroup Object,
        "name": string,
        "description": string,
        "indent": byte,
        "attributeType": byte,
        "dataType": byte?,
        "positionInList": int,
        "isCompulsory": int,
        "valueDescription": string,
        "iDRow": int,
        "hasExtraValue": bool?,
        "conditionRule": string,
        "allowUnlimited": bool?,
        "quantityLinked": bool?,
        "usageBased": int?,
        "externalSpec": string,
        "positionInWeb": int?,
        "isSyncLocked": int?,
        "sliderMin": int?,
        "sliderMax": int?,
        "sliderStep":int?
}

Product Type Attribute Group

{
        "id": Guid,
        "createdAt": dateTimeOffset,
        "updatedAt": dateTimeOffset,
        "name": string,
        "dataType": short,
        "description": string,
        "valueDescription": string
}

Product Type Attribute Value

{
        "id": Guid,
        "productTypeAttributeType": List of ProductTypeAttributeType Objects,
        "value": string,
        "language": Language Object,
        "iDParent": Guid?,
        "isDefault": int,
        "code": string,
        "positionInlist": int?,
        "externalSpec": string,
        "iDResource": int?,
        "productTypeAttributeCharges": List of ProductTypeAttributeCharge Objects,
        "iDCopyOf": Guid?
}

Product Type Attribute Charge

{
        "id": Guid,
        "productTypeAttribute": ProductTypeAttribute Object,
        "productTypeAttributeValue": ProductTypeAttributeValue Object,
        "charge": decimal?,
        "chargeType": byte?,
        "sheet": string,
        "cell": string
}

Payment

Push Method

Payment

{
    "id": Guid,
    "integrationId": string,
    "createdAt": dateTimeOffset,
    "updatedAt": dateTimeOffset,
    "method": PaymentMethod Object,
    "gateway": PaymentGateway Object,
    "account": Account Object,
    "contact": Contact Object,
    "chequeBank": Bank Object,
    "paymentDate": dateTimeOffset,
    "amount": decimal,
    "code": string,
    "state": string,
    "chequeNo": string,
    "dueDate": dateTimeOffset?,
    "chequePayTo": string,
    "creditCard": string,
    "creditCardId": Guid,
    "comments": string,
    "eRPCode": string,
    "isCanceled": bool,
    "transactionFee": decimal,
    "sendConfirmation": bool,
    "sysState": int,
    "sysComment": string,
    "transactionID": string,
    "balance": decimal,
    "lastUpdate": dateTimeOffset,
    "paymentInvoices": List of PaymentInvoice Objects
}

Payment Method

{
    "id": Guid,
    "integrationId": string,
    "name": string,
    "active": bool,
    "default": bool?,
    "eRPName": string,
    "payDays": int,
    "type": string,
    "gateway":PaymentGateway Object
}

Payment Type

{
    "id": Guid,
    "integrationId" : string,
    "name": string,
    "type": string,
    "isActive" : bool
}

Payment Gateway

{
    "id": int,
    "integrationId" : string,
    "name": string,
    "type": string,
    "isSupported" : bool
}

Bank

{
    id": Guid,
    "integrationId": string,
    "name": string,
    "description": string,
    "position": byte,
    "isActive": bool,
    "payments": List of Payment Objects
}

Payment Invoice

{
    "paymentId": Guid,
    "invoice": Invoice object,
    "amount" : decimal
}

Pull Method

Payment

{
    "TypeId" : External system payment type Id,
    "MethodId" : External system payment method Id,
    "AccountId": External system payment account Id,
    "PaymentDate": dateTimeOffset,
    "Amount": decimal,
    "Code": string,
    "State": string,
    "ChequeNo": string,
    "DueDate": dateTimeOffset?,
    "ChequePayTo": string,
    "Comments": string,
    "ERPCode": string,
    "IsCanceled": bool?,
    "TransactionFee": decimal?,
    "SendConfirmation": bool,
    "SysState": int?,
    "SysComment": string,
    "Balance": decimal,
    "PaymentInvoices": Array of PaymentInvoice objects
}

Payment Invoice

{
  "InvoiceId": External system invoice Id,
  "PaymentAmount" : decimal
}

Currency

{
    "id": Guid,
    "integrationId": string,
    "name": string,
    "mnemonic": string,
    "sign": string,
    "code": string
}

Custom Value

Custom Value

{
    "CustomField": CustomFieldDefinition Object,
    "Value": string,
    "Values": string
}

Custom Field Definition

{
  "id": int,
  "name" : string,
  "caption": string,
  "apiField" : string
}

Subscription

Lease

{
        "id": Guid,
        "integrationId": string,
        "createdAt": dateTimeOffset?,
        "updatedAt": dateTimeOffset?,
        "customValues": List of CustomValue Objects,
        "name": string,
        "startDate": dateTimeOffset?,
        "endDate": dateTimeOffset?,
        "duration": int?,
        "durationType": string,
        "signupDate": dateTimeOffset?,
        "account": Account Object,
        "billingAccount": Account Object,
        "stage": SubscriptionStage Object,
        "quantity": int,
        "autoRenew": bool,
        "isTrial": bool,
        "contact": Contact Object,
        "billingOption": bool,
        "unit": Unit Object,
        "unitPrice": decimal?,
        "subscriptionAmount": decimal?,
        "finalPrice": decimal?,
        "totalAmount": decimal?,
        "basePrice": decimal?,
        "discount": decimal?,
        "discountType": Int16?,
        "isUserPrice": Int16?,
        "isExcelPrice": bool?,
        "prorataRate": decimal,
        "rounding": Int32?,
        "prorataDay": Int32?.
        "monthlyRunRate": decimal?
        "productAmount": decimal?,
        "product": Product Object,
        "order": Order Object,
        "promotion": Promotion Object,
        "promotionDiscountType": int?,
        "promotionDiscount ": decimal?,
        "promotionEndDate": dateTimeOffset?
        "iDParent": Guid?,
        "term": int?,
        "termType": string,
        "termStartDate": dateTimeOffset?,
        "termEndDate": dateTimeOffset?,
        "freePeriodStartDate": dateTimeOffset?,
        "freePeriodEndDate": dateTimeOffset?,
        "priceList": Pricelist Object,
        "variations": List of SubscriptionVariation Objects,
        "leaseCurrency": SubscriptionCurrency Object,
        "type": SubscriptionType Object,
        "productSalesPrice": decimal?,
        "productCostPrice": decimal?,
        "description": string
}

Lease Variation

{
        "id": int,
        "subscription": Subscription Object,
        "variation": ProductTypeAttribute Object,
        "variationValues": List of ProductTypeAttributeValue Objects,
        "value": string,
        "allowUnlimited": bool,
        "variationName": string
}

Language

{
        "id": string,
        "integrationId": string,
        "label": string,
        "isEnabled": bool,
        "charSet": string,
        "pageCode": string,
        "guid": Guid
}

Lease Stage

{
        "id": int,
        "integrationId": string,
        "name": string,
        "positioninlist": int,
        "type": string,
        "color": string,
        "isactive": bool,
        "isdefault": bool?
}

Promotion

{
        "id": Guid,
        "createdAt": dateTimeOffset,
        "updatedAt": dateTimeOffset,
        "customValues": List of CustomValue Objects,
        "subject": string,
        "description": string,
        "dtage": PromotionStage Object
}

Promotion Stage

 {
        "id" : int,
        "integrationId" : string,
        "name" : string
}

Pricelist

{
        "id": int,
        "createdAt": dateTimeOffset,
        "updatedAt": dateTimeOffset,
        "customValues": List of CustomValue Objects,
        "fromDate": dateTimeOffset?,
        "name": string,
        "toDate: dateTimeOffset?,
        "description": string,
        "active": int,
        "pricelistCurrency": PricelistCurrency Object
}

Pricelist Item

{
        "id": int,
        "priceType": byte,
        "price": decimal?,
        "sheet": string,
        "cell": string,
        "conditionRule": string,
        "name": string,
        "comment": string,
        "status": int?,
        "unit": Unit Object,
        "priceGroup": PriceGroup Object,
        "product": Product Object,
        "volumeDiscount": VolumeDiscount Object
}

Price Group

{
        "id": Guid,
        "integrationId": string,
        "createdAt": dateTimeOffset,
        "updatedAt": dateTimeOffset,
        "name": string,
        "description": string,
        "lastUpdateID": int?,
        "isActive": bool,
        "systemType": short,
        "isDeleted": int,
        "iDCopyOf": Guid?
}

Volume Discount

{
        "id": int,
        "integrationId": string,
        "createdAt": dateTimeOffset,
        "updatedAt": dateTimeOffset,
        "name": string,
        "isActive": bool,
        "isScalable": int,
        "iDCopyOf": int?,
        "volumeDiscountItems": List of VolumeDiscountItem Objects
}

Volume Discount Item

{
        "id" : int,
        "fromQuantity" : decimal?,
        "toQuantity" : decimal?,
        "amount" : decimal
}

Pricelist Currency

{
        "rateDate" : dateTimeOffset?,
        "exchangeRate" : decimal?,
        "currency" : Currency object
}

Lease Currency

{
        "rateDate" : dateTimeOffset?,
        "exchangeRate" : decimal?,
        "currency" : Currency object,
}

Lease Type

{
        "id" : int,
        "integrationId" : string,
        "name" : string,
        "positionInList" : int
}

Enumerations

ProrateBillingEnabled Enum

NotSet = -9999,
FirstOrderDay = -1,
Disabled = 0,
FirstDayOfTheMonth = 1,
Day2 = 2,
Day3 = 3,
Day4 = 4,
Day5 = 5,
Day6 = 6,
Day7 = 7,
Day8 = 8,
Day9 = 9,
Day10 = 10,
Day11 = 11,
Day12 = 12,
Day13 = 13,
Day14 = 14,
Day15 = 15,
Day16 = 16,
Day17 = 17,
Day18 = 18,
Day19 = 19,
Day20 = 20,
Day21 = 21,
Day22 = 22,
Day23 = 23,
Day24 = 24,
Day25 = 25,
Day26 = 26,
Day27 = 27,
Day28 = 28,
Day29 = 29,
Day30 = 30,
LastDayOfTheMonth = 31

PartialChargesInvoicing

OnOrderDate = 0,
OnBillingDate = 1

ResellerType

NotAReseller = 0,
TenantReseller = 1,
LightReseller = 2

NoteType

None = 0,
Invoice = 1,
Receipt = 2

NoteType

Executed = 0,
Submitted = 1,
Cancelled = 2,
Delivered = 3,
Locked = 4

Property IntegrationId is accessible only up to the third level dot notation. For example:
$.contact.account.type.IntegrationId is accessible but $.invoice.invoiceItem.product.unitType.integrationId is not accessible

Nested objects can be accessed with dot notation, i.e to access the ID of the parentAccount object on account use $.account.parentAccount.Id

Supported Push and Pull Methods

This article explains which are the Push and Pull methods supported by our custom connector.
Push are the methods where interworks.cloud platform sends information to external systems and pull are the methods where we get information from the external systems.

PushPull
CreateUpdateDeleteCreateUpdate
Account
Contact
Product
Invoice
Invoice Items
Orders
Order Items
Payments
Subscriptions
Cases