Download OpenAPI specification:Download
The Location Management API provides developers a way to view and manage location info such as regions, stores, and registers.
Search for all retail products. [Rev 2.06]
The following indicates how each field can be used.
| $count | boolean Example: $count=true Specifies whether to fetch the total count of results. This is the count of all entities that match the |
| $filter | string Example: $filter=field1 eq 1234 A structured search expression in standard OData syntax. |
| $inlinecount | string Enum: "allpages" "none" Example: $inlinecount=allpages Tells the server to include the total count of matching entities in the response. |
| $orderby | string Example: $orderby=field1 A list of comma-separated expressions to sort the results by. Each expression can be followed by asc to indicate ascending, and desc to indicate descending. The default is ascending order. |
| $select | string Example: $select=field1, field2 A list of comma-separated fields to retrieve. If unspecified, all fields in the schema are included. |
| $skip | integer Example: $skip=10 Number of search results to skip. |
| $skiptoken | integer Example: $skiptoken=2 Indicator to the next set of results. This value is usually supplied on the response from a previous search. |
| $top | integer Example: $top=1 Number of search results to retrieve. Default value is 100 with the ability to specify up to 500. Any number greater than 500 will still only return 500 records. |
{- "@odata.count": 145,
- "@odata.nextLink": "https://api.idibilling.com/LocationManagement/2X/anenvironment/api/odataquery?$filter=name eq 'foo'&$skip=50",
- "value": [
- {
- "averageCost": 12.33,
- "catalogID": 1234,
- "costEvaluationMethod": "First In, First Out",
- "costEvaluationMethodID": 17.38,
- "inventoryItemID": 6868,
- "inventoryStatus": "Available for Sale",
- "inventoryStatusID": 1,
- "isSerialized": 1,
- "lastModifiedDate": "2017-03-22T17:35:09.123Z",
- "lastModifiedUser": "username",
- "location": "Cool Store",
- "locationID": 1003,
- "negativeCount": 12,
- "onHandQuantity": 3,
- "outboundQuantity": 2,
- "sku": "cool_sku_1314"
}
]
}Search for serialized items in Inventory. [Rev 2.05]
The following indicates how each field can be used.
| $count | boolean Example: $count=true Specifies whether to fetch the total count of results. This is the count of all entities that match the |
| $filter | string Example: $filter=field1 eq 1234 A structured search expression in standard OData syntax. |
| $inlinecount | string Enum: "allpages" "none" Example: $inlinecount=allpages Tells the server to include the total count of matching entities in the response. |
| $orderby | string Example: $orderby=field1 A list of comma-separated expressions to sort the results by. Each expression can be followed by asc to indicate ascending, and desc to indicate descending. The default is ascending order. |
| $select | string Example: $select=field1, field2 A list of comma-separated fields to retrieve. If unspecified, all fields in the schema are included. |
| $skip | integer Example: $skip=10 Number of search results to skip. |
| $skiptoken | integer Example: $skiptoken=2 Indicator to the next set of results. This value is usually supplied on the response from a previous search. |
| $top | integer Example: $top=1 Number of search results to retrieve. Default value is 100 with the ability to specify up to 500. Any number greater than 500 will still only return 500 records. |
{- "@odata.count": 145,
- "@odata.nextLink": "https://api.idibilling.com/LocationManagement/2X/anenvironment/api/odataquery?$filter=name eq 'foo'&$skip=50",
- "value": [
- {
- "catalogID": 1234,
- "cost": 17.38,
- "inventoryItemID": 6868,
- "inventoryStatus": "Available for Sale",
- "inventoryStatusID": 1,
- "lastModifiedDate": "2017-03-22T17:35:09.123Z",
- "lastModifiedUser": "username",
- "location": "Cool Store",
- "locationID": 1003,
- "quantity": 12,
- "requestedQuantity": 3,
- "reservedQuantity": 2,
- "serialNumber": 4,
- "sku": 4
}
]
}Creates printing options at a specified location. [Rev 1.04]
| Content-Type required | string Example: application/json |
| billPaymentFooter | string Text to be shown at the foot of the document printed for a bill payment. |
| billPaymentHeader | string Text to be shown at the head of the document printed for a bill payment. |
| exchangeFooter | string Text to be shown at the foot of the document printed for an exchange. |
| exchangeHeader | string Text to be shown at the head of the document printed for an exchange. |
| invoiceItemsToPrint | string Default: "AllItems" Enum: "AllItems" "DirectInvoiceItems" Defines what items should be printed on a direct invoice printed from this location. [Rev 1.05] [Rev 1.06] |
| locationID required | integer Unique identifier of the location that the new printing options should be associated with. NoteWhen creating new printing options at a specified location, that location must exist but it cannot yet have printing options directly associated with it. |
| logo | string The Base64 encoded string for a location logo. [Rev 1.05] |
| logoFileName | string The name of the logo file, including the file extension. [Rev 1.05] |
| networkPrinterTemplateID | integer Unique identifier for the document template to be used for printing the full-size network receipt. [Rev 1.05] |
| printServiceAgreement | boolean True indicates that service and installment agreements should be automatically printed after they have been electronically signed. |
| quoteTemplateID | integer Unique identifier for the document template to be used for printing quotes. [Rev 1.05] |
| receiptTemplateID | integer Unique identifier for the document template to be used for the POS receipt printer. [Rev 1.05] |
| returnFooter | string Text to be shown at the foot of the document printed for a return. |
| returnHeader | string Text to be shown at the head of the document printed for a return. |
| saleFooter | string Text to be shown at the foot of the document printed for a sale. |
| saleHeader | string Text to be shown at the head of the document printed for a sale. |
| storeReceiptType | string Enum: "None" "SignedCards" "All" "Unknown" Defines what types of original network receipts will be stored immediately upon initial generation. NoteThe value |
{- "billPaymentFooter": "Returns & exchanges must meet the following requirements: purchased within 60 days.",
- "billPaymentHeader": "Some company text.",
- "exchangeFooter": "Returns & exchanges must meet the following requirements: purchased within 60 days.",
- "exchangeHeader": "Some company text.",
- "invoiceItemsToPrint": "AllItems",
- "locationID": 555,
- "logo": "iVBORw0KGgoAA...",
- "logoFileName": "Fog.gif",
- "networkPrinterTemplateID": 3,
- "printServiceAgreement": true,
- "quoteTemplateID": 4,
- "receiptTemplateID": 5,
- "returnFooter": "Returns & exchanges must meet the following requirements: purchased within 60 days.",
- "returnHeader": "Some company text.",
- "saleFooter": "Returns & exchanges must meet the following requirements: purchased within 60 days.",
- "saleHeader": "Some company text.",
- "storeReceiptType": "All"
}{- "billPaymentFooter": "Returns & exchanges must meet the following requirements: purchased within 60 days.",
- "billPaymentHeader": "Some company text.",
- "exchangeFooter": "Returns & exchanges must meet the following requirements: purchased within 60 days.",
- "exchangeHeader": "Some company text.",
- "invoiceItemsToPrint": "AllItems",
- "location": "Western Region",
- "locationID": 1,
- "logo": "iVBORw0KGgoAA...",
- "logoFileName": "Fog.gif",
- "networkPrinterTemplate": "NW Receipt",
- "networkPrinterTemplateID": 3,
- "printingOptionsID": 555,
- "printServiceAgreement": true,
- "quoteTemplate": "Default Quote",
- "quoteTemplateID": 4,
- "receiptTemplate": "POS Receipt",
- "receiptTemplateID": 5,
- "returnFooter": "Returns & exchanges must meet the following requirements: purchased within 60 days.",
- "returnHeader": "Some company text.",
- "saleFooter": "Returns & exchanges must meet the following requirements: purchased within 60 days.",
- "saleHeader": "Some company text.",
- "storeReceiptType": "All"
}Retrieve printing options by printingOptionsID. [Rev 1.04]
| printingOptionsID required | integer Unique ID of the printing options to retrieve. |
{- "billPaymentFooter": "Returns & exchanges must meet the following requirements: purchased within 60 days.",
- "billPaymentHeader": "Some company text.",
- "exchangeFooter": "Returns & exchanges must meet the following requirements: purchased within 60 days.",
- "exchangeHeader": "Some company text.",
- "invoiceItemsToPrint": "AllItems",
- "location": "Western Region",
- "locationID": 1,
- "logo": "iVBORw0KGgoAA...",
- "logoFileName": "Fog.gif",
- "networkPrinterTemplate": "NW Receipt",
- "networkPrinterTemplateID": 3,
- "printingOptionsID": 555,
- "printServiceAgreement": true,
- "quoteTemplate": "Default Quote",
- "quoteTemplateID": 4,
- "receiptTemplate": "POS Receipt",
- "receiptTemplateID": 5,
- "returnFooter": "Returns & exchanges must meet the following requirements: purchased within 60 days.",
- "returnHeader": "Some company text.",
- "saleFooter": "Returns & exchanges must meet the following requirements: purchased within 60 days.",
- "saleHeader": "Some company text.",
- "storeReceiptType": "All"
}Updates printing options by their unique ID. [Rev 1.04]
This operation uses the JSON Patch document structure for specifying updates to printing options, which you can read more about here: JSON Patch (RFC 6902).
After JSON Patch validation, field validation is performed the same as Create Printing Options.
Allowed patch operations for each patchable printing options property.
billPaymentFooter : add, remove, replace
billPaymentHeader : add, remove, replace
exchangeFooter : add, remove, replace
exchangeHeader : add, remove, replace
invoiceItemsToPrint : add, replace [Rev 1.05] [Rev 1.06]
logo : add, remove, replace [Rev 1.05]
logoFileName : add, remove, replace [Rev 1.05]
networkPrinterTemplateID : add, remove, replace [Rev 1.05]
printServiceAgreement : replace
quoteTemplateID : add, remove, replace [Rev 1.05]
receiptTemplateID : add, remove, replace [Rev 1.05]
returnFooter : add, remove, replace
returnHeader : add, remove, replace
saleFooter : add, remove, replace
saleHeader : add, remove, replace
storeReceiptType : replace
| printingOptionsID required | integer Unique ID of the printing options. |
| Content-Type required | string Example: application/json |
| op required | string (op) Enum: "add" "replace" "remove" The type of JSON Patch operation being requested. |
| path required | string Path within the JSON document that should be modified. |
| value required | string If supplied, the new value to be used at the given path by the given operation. |
[- {
- "op": "replace",
- "path": "/fieldName",
- "value": "newValue"
}
]{- "errors": [
- {
- "correlationId": "8c041095",
- "field": "exampleField",
- "loggingNumber": 500032,
- "message": "You do not have access to foo ID 1 or it does not exist."
}
]
}Search for Printing Templates in the system. [Rev 1.04]
The following indicates how each field can be used.
| $count | boolean Example: $count=true Specifies whether to fetch the total count of results. This is the count of all entities that match the |
| $filter | string Example: $filter=field1 eq 1234 A structured search expression in standard OData syntax. |
| $inlinecount | string Enum: "allpages" "none" Example: $inlinecount=allpages Tells the server to include the total count of matching entities in the response. |
| $orderby | string Example: $orderby=field1 A list of comma-separated expressions to sort the results by. Each expression can be followed by asc to indicate ascending, and desc to indicate descending. The default is ascending order. |
| $select | string Example: $select=field1, field2 A list of comma-separated fields to retrieve. If unspecified, all fields in the schema are included. |
| $skip | integer Example: $skip=10 Number of search results to skip. |
| $skiptoken | integer Example: $skiptoken=2 Indicator to the next set of results. This value is usually supplied on the response from a previous search. |
| $top | integer Example: $top=1 Number of search results to retrieve. Default value is 100 with the ability to specify up to 500. Any number greater than 500 will still only return 500 records. |
{- "@count": 145,
- "value": [
- {
- "name": "Default Receipt",
- "printingTemplateID": 15,
- "printingTemplateType": "Receipt",
- "printingTemplateTypeID": 1
}
], - "@nextLink": "https://api.idibilling.com/LocationManagement/2X/{environment}/api/odataquery?$filter=name eq 'foo'&$skip=50"
}Search for Regions in the system.
The following indicates how each field can be used.
| $count | boolean Example: $count=true Specifies whether to fetch the total count of results. This is the count of all entities that match the |
| $filter | string Example: $filter=field1 eq 1234 A structured search expression in standard OData syntax. |
| $inlinecount | string Enum: "allpages" "none" Example: $inlinecount=allpages Tells the server to include the total count of matching entities in the response. |
| $orderby | string Example: $orderby=field1 A list of comma-separated expressions to sort the results by. Each expression can be followed by asc to indicate ascending, and desc to indicate descending. The default is ascending order. |
| $select | string Example: $select=field1, field2 A list of comma-separated fields to retrieve. If unspecified, all fields in the schema are included. |
| $skip | integer Example: $skip=10 Number of search results to skip. |
| $skiptoken | integer Example: $skiptoken=2 Indicator to the next set of results. This value is usually supplied on the response from a previous search. |
| $top | integer Example: $top=1 Number of search results to retrieve. Default value is 100 with the ability to specify up to 500. Any number greater than 500 will still only return 500 records. |
{- "@count": 145,
- "value": [
- {
- "abbreviation": "abc",
- "lastModifiedDate": "2017-03-22T17:35:09.123Z",
- "lastModifiedUser": "Freddy",
- "locationID": 1001,
- "name": "Northwest Passage",
- "parentLocation": "Global",
- "parentLocationID": 1
}
], - "@nextLink": "https://api.idibilling.com/LocationManagement/2X/{environment}/api/odataquery?$filter=name eq 'foo'&$skip=50"
}Creates a Region under the Global location.
| Content-Type required | string Example: application/json |
| abbreviation required | string A unique abbreviation for the region. |
| name required | string A unique name for the region. |
{- "abbreviation": "ABC",
- "name": "Easy as One Two Three"
}{- "abbreviation": "abc",
- "lastModifiedDate": "2017-03-22T17:35:09.123Z",
- "lastModifiedUser": "Freddy",
- "locationID": 1001,
- "name": "Northwest Passage",
- "parentLocation": "Global",
- "parentLocationID": 1
}Retrieve a specific Region by locationID.
| locationID required | integer Unique locationID of the Region to retrieve. |
{- "abbreviation": "abc",
- "lastModifiedDate": "2017-03-22T17:35:09.123Z",
- "lastModifiedUser": "Freddy",
- "locationID": 1001,
- "name": "Northwest Passage",
- "parentLocation": "Global",
- "parentLocationID": 1
}Search for Registers in the system. [Rev 1.01]
The following indicates how each field can be used.
| $count | boolean Example: $count=true Specifies whether to fetch the total count of results. This is the count of all entities that match the |
| $filter | string Example: $filter=field1 eq 1234 A structured search expression in standard OData syntax. |
| $inlinecount | string Enum: "allpages" "none" Example: $inlinecount=allpages Tells the server to include the total count of matching entities in the response. |
| $orderby | string Example: $orderby=field1 A list of comma-separated expressions to sort the results by. Each expression can be followed by asc to indicate ascending, and desc to indicate descending. The default is ascending order. |
| $select | string Example: $select=field1, field2 A list of comma-separated fields to retrieve. If unspecified, all fields in the schema are included. |
| $skip | integer Example: $skip=10 Number of search results to skip. |
| $skiptoken | integer Example: $skiptoken=2 Indicator to the next set of results. This value is usually supplied on the response from a previous search. |
| $top | integer Example: $top=1 Number of search results to retrieve. Default value is 100 with the ability to specify up to 500. Any number greater than 500 will still only return 500 records. |
{- "@count": 145,
- "value": [
- {
- "autoReconcile": true,
- "description": "abc",
- "floatAmount": 43.43,
- "floatOverride": true,
- "isActive": true,
- "lastFloatDate": "2021-07-30T10:38:08.079Z",
- "lastReconcileDateSinceLastFloat": "2023-01-12T10:38:08.079Z",
- "lastReconcileNoSaleID": 44,
- "location": "Plaza Mall Kiosk",
- "locationID": 1003,
- "machineName": "Register 1",
- "registerID": 1005,
- "registerNumber": 4,
- "registerStatus": "Inactive Open",
- "registerStatusID": 1,
- "userName": "IDI-User",
- "transactionCountSinceLastFloat": 4
}
], - "@nextLink": "https://api.idibilling.com/LocationManagement/2X/{environment}/api/odataquery?$filter=name eq 'foo'&$skip=50"
}Creates a Register under the specified location, which must be a Store. [Rev 1.01]
| Content-Type required | string Example: application/json |
| autoReconcile | boolean Default: false True indicates that the register is configured to automatically reconcile. If Auto-Reconcile is configured for the store, then the value of this property is ignored. |
| description required | string A description for the register. |
| floatAmount | decimal Default: 0 Value that overrides the float amount configured for the store if floatOverride is set to true. |
| floatOverride | boolean Default: false True indicates that the register will have its own float amount that overrides the one configured for the store. |
| isActive | boolean Default: true True indicates that the register can be used for sales and transactions. |
| locationID required | integer Unique identifier for the store that the register is associated with. |
| registerNumber required | integer Unique user-defined identifier for the register. |
{- "autoReconcile": true,
- "description": "abc",
- "floatAmount": 42.42,
- "floatOverride": true,
- "isActive": false,
- "locationID": 1003,
- "registerNumber": 4
}{- "autoReconcile": true,
- "description": "abc",
- "floatAmount": 43.43,
- "floatOverride": true,
- "isActive": true,
- "location": "Plaza Mall Kiosk",
- "locationID": 1003,
- "registerID": 1005,
- "registerNumber": 4
}Retrieve a specific Register by registerID. [Rev 1.01]
| registerID required | integer Unique identifier of the Register to retrieve. |
{- "autoReconcile": true,
- "description": "abc",
- "floatAmount": 43.43,
- "floatOverride": true,
- "isActive": true,
- "lastFloatDate": "2021-07-30T10:38:08.079Z",
- "lastReconcileDateSinceLastFloat": "2023-01-12T10:38:08.079Z",
- "lastReconcileNoSaleID": 44,
- "location": "Plaza Mall Kiosk",
- "locationID": 1003,
- "machineName": "Register 1",
- "registerID": 1005,
- "registerNumber": 4,
- "registerStatus": "Inactive Open",
- "registerStatusID": 1,
- "userName": "IDI-User",
- "transactionCountSinceLastFloat": 4
}Updates a specific Register by ID. [Rev 2.07]
Allowed patch operations for each patchable property of a tender type.
machineName : add, remove, replace
userName : add, remove, replace
| registerID required | integer Unique ID of the Register. |
| Content-Type required | string Example: application/json |
| op required | string (op) Enum: "add" "replace" "remove" The type of JSON Patch operation being requested. |
| path required | string Path within the JSON document that should be modified. |
| value | string If supplied, the new value to be used at the given path by the given operation. |
[- {
- "op": "replace",
- "path": "/machineName",
- "value": "HAL 9000"
}
]{- "errors": [
- {
- "correlationId": "8c041095",
- "field": "exampleField",
- "loggingNumber": 500032,
- "message": "You do not have access to foo ID 1 or it does not exist."
}
]
}Retrieve a specific Register Tender Summary by registerID. [Rev 2.09]
The following indicates how each field can be used.
{- "@odata.count": 145,
- "@odata.nextLink": "https://api.idibilling.com/LocationManagement/2X/anenvironment/api/odataquery?$filter=name eq 'foo'&$skip=50",
- "value": [
- {
- "amount": 120.5,
- "baseTenderTypeID": 2,
- "creditCardType": "Visa",
- "creditCardTypeID": 3,
- "description": "Credit Card",
- "isDrawerReconcilable": true,
- "tenderTypeID": 2
}
]
}Search for Stores in the system.
The following indicates how each field can be used.
| $count | boolean Example: $count=true Specifies whether to fetch the total count of results. This is the count of all entities that match the |
| $filter | string Example: $filter=field1 eq 1234 A structured search expression in standard OData syntax. |
| $inlinecount | string Enum: "allpages" "none" Example: $inlinecount=allpages Tells the server to include the total count of matching entities in the response. |
| $orderby | string Example: $orderby=field1 A list of comma-separated expressions to sort the results by. Each expression can be followed by asc to indicate ascending, and desc to indicate descending. The default is ascending order. |
| $select | string Example: $select=field1, field2 A list of comma-separated fields to retrieve. If unspecified, all fields in the schema are included. |
| $skip | integer Example: $skip=10 Number of search results to skip. |
| $skiptoken | integer Example: $skiptoken=2 Indicator to the next set of results. This value is usually supplied on the response from a previous search. |
| $top | integer Example: $top=1 Number of search results to retrieve. Default value is 100 with the ability to specify up to 500. Any number greater than 500 will still only return 500 records. |
{- "@count": 145,
- "value": [
- {
- "abbreviation": "abc",
- "isThirdPartyLocation": false,
- "lastModifiedDate": "2017-03-22T17:35:09.123Z",
- "lastModifiedUser": "Freddy",
- "locationID": 1003,
- "name": "Plaza Mall Kiosk",
- "parentLocation": "Sunset Plaza",
- "parentLocationID": 1001,
- "paymentusLocationID": "IDI_01",
- "storeType": "M2M",
- "storeTypeID": 4
}
], - "@nextLink": "https://api.idibilling.com/LocationManagement/2X/{environment}/api/odataquery?$filter=name eq 'foo'&$skip=50"
}Creates a Store under the specified location.
| Content-Type required | string Example: application/json |
| abbreviation required | string A unique abbreviation for the store. |
object (Contact) | |
| isThirdPartyLocation | boolean Default: false True indicates that the store is a third-party location. |
| isVirtual | boolean Default: false True will request that the store be created as a virtual location which auto reconciles and allows only BTA tenders on Sales and Returns. |
| name required | string A unique name for the store. |
| parentLocationID required | integer Unique identifier for the parent location of the store. |
| paymentusLocationID | string Corresponds to 'location-id' in the Paymentus system and determines which, if any, terminal devices can be used for tendering in the web. [Rev 2.11] |
| storeTypeID required | integer Unique identifier for the type of store to be created. |
{- "abbreviation": "abc",
- "contact": {
- "addressValidationInformation": {
- "actualValidationType": "USPS",
- "bypassUser": "Phil",
- "errorCode": "USPS_11_InvalidInput5digitZIPCode",
- "excludeReasonID": 52,
- "failureCount": 2,
- "isPOBox": true,
- "requiredValidationType": "Proxix",
- "taxFIPS": 601368294,
- "taxSpecialDistricts": [
- "29CDD11243"
], - "validationDate": "2019-08-24T14:15:22Z"
}, - "city": "Victor",
- "companyName": "IDI Billing Solutions",
- "country": "USA",
- "emailAddress1": {
- "email": "noreply@idibilling.com",
- "type": "Work"
}, - "emailAddress2": {
- "email": "noreply@idibilling.com",
- "type": "Work"
}, - "emailAddress3": {
- "email": "noreply@idibilling.com",
- "type": "Work"
}, - "firstName": "John",
- "lastName": "Doe",
- "latitude": 96.5,
- "longitude": 10.7,
- "middleInitial": "J",
- "note": "This contact is the customers primary residence.",
- "phoneNumber1": {
- "number": 5855555555,
- "type": "Work"
}, - "phoneNumber2": {
- "number": 5855555555,
- "type": "Work"
}, - "phoneNumber3": {
- "number": 5855555555,
- "type": "Work"
}, - "phoneNumber4": {
- "number": 5855555555,
- "type": "Work"
}, - "state": "NY",
- "street1": "7615 Omnitech Place",
- "street2": "Suite 7",
- "street3": "",
- "taxJurisdictionIDs": [
- 11017
], - "zipCode": 14564
}, - "isThirdPartyLocation": true,
- "isVirtual": true,
- "name": "Plaza Mall Kiosk",
- "parentLocationID": 1001,
- "paymentusLocationID": "IDI_01",
- "storeTypeID": 10005
}{- "abbreviation": "abc",
- "contact": {
- "addressValidationInformation": {
- "actualValidationType": "USPS",
- "bypassUser": "Phil",
- "errorCode": "USPS_11_InvalidInput5digitZIPCode",
- "excludeReasonID": 52,
- "failureCount": 2,
- "isPOBox": true,
- "requiredValidationType": "Proxix",
- "taxFIPS": 601368294,
- "taxSpecialDistricts": [
- "29CDD11243"
], - "validationDate": "2019-08-24T14:15:22Z"
}, - "city": "Victor",
- "companyName": "IDI Billing Solutions",
- "country": "USA",
- "emailAddress1": {
- "email": "noreply@idibilling.com",
- "type": "Work"
}, - "emailAddress2": {
- "email": "noreply@idibilling.com",
- "type": "Work"
}, - "emailAddress3": {
- "email": "noreply@idibilling.com",
- "type": "Work"
}, - "firstName": "John",
- "lastName": "Doe",
- "latitude": 96.5,
- "longitude": 10.7,
- "middleInitial": "J",
- "note": "This contact is the customers primary residence.",
- "phoneNumber1": {
- "number": 5855555555,
- "type": "Work"
}, - "phoneNumber2": {
- "number": 5855555555,
- "type": "Work"
}, - "phoneNumber3": {
- "number": 5855555555,
- "type": "Work"
}, - "phoneNumber4": {
- "number": 5855555555,
- "type": "Work"
}, - "state": "NY",
- "street1": "7615 Omnitech Place",
- "street2": "Suite 7",
- "street3": "",
- "taxJurisdictionIDs": [
- 11017
], - "zipCode": 14564
}, - "isThirdPartyLocation": false,
- "lastModifiedDate": "2017-03-22T17:35:09.123Z",
- "lastModifiedUser": "Freddy",
- "locationID": 1003,
- "name": "Plaza Mall Kiosk",
- "parentLocation": "Sunset Plaza",
- "parentLocationID": 1001,
- "paymentusLocationID": "IDI_01",
- "storeType": "M2M",
- "storeTypeID": 4
}Retrieve a specific Store by locationID.
| locationID required | integer Unique locationID of the Store to retrieve. |
{- "abbreviation": "abc",
- "contact": {
- "addressValidationInformation": {
- "actualValidationType": "USPS",
- "bypassUser": "Phil",
- "errorCode": "USPS_11_InvalidInput5digitZIPCode",
- "excludeReasonID": 52,
- "failureCount": 2,
- "isPOBox": true,
- "requiredValidationType": "Proxix",
- "taxFIPS": 601368294,
- "taxSpecialDistricts": [
- "29CDD11243"
], - "validationDate": "2019-08-24T14:15:22Z"
}, - "city": "Victor",
- "companyName": "IDI Billing Solutions",
- "country": "USA",
- "emailAddress1": {
- "email": "noreply@idibilling.com",
- "type": "Work"
}, - "emailAddress2": {
- "email": "noreply@idibilling.com",
- "type": "Work"
}, - "emailAddress3": {
- "email": "noreply@idibilling.com",
- "type": "Work"
}, - "firstName": "John",
- "lastName": "Doe",
- "latitude": 96.5,
- "longitude": 10.7,
- "middleInitial": "J",
- "note": "This contact is the customers primary residence.",
- "phoneNumber1": {
- "number": 5855555555,
- "type": "Work"
}, - "phoneNumber2": {
- "number": 5855555555,
- "type": "Work"
}, - "phoneNumber3": {
- "number": 5855555555,
- "type": "Work"
}, - "phoneNumber4": {
- "number": 5855555555,
- "type": "Work"
}, - "state": "NY",
- "street1": "7615 Omnitech Place",
- "street2": "Suite 7",
- "street3": "",
- "taxJurisdictionIDs": [
- 11017
], - "zipCode": 14564
}, - "isThirdPartyLocation": false,
- "lastModifiedDate": "2017-03-22T17:35:09.123Z",
- "lastModifiedUser": "Freddy",
- "locationID": 1003,
- "name": "Plaza Mall Kiosk",
- "parentLocation": "Sunset Plaza",
- "parentLocationID": 1001,
- "paymentusLocationID": "IDI_01",
- "storeType": "M2M",
- "storeTypeID": 4
}Get the Printing Options for a specified location ID. [Rev 1.04]
| locationID required | integer Unique identifier of the location for which to retrieve tender types. |
{- "billPaymentFooter": "Returns & exchanges must meet the following requirements: purchased within 60 days.",
- "billPaymentHeader": "Some company text.",
- "exchangeFooter": "Returns & exchanges must meet the following requirements: purchased within 60 days.",
- "exchangeHeader": "Some company text.",
- "inheritedLocation": "Western Region",
- "inheritedLocationID": 1,
- "invoiceItemsToPrint": "AllItems",
- "logo": "iVBORw0KGgoAA...",
- "logoFileName": "Fog.gif",
- "networkPrinterTemplate": "NW Receipt",
- "networkPrinterTemplateID": 3,
- "printingOptionsID": 555,
- "printServiceAgreement": true,
- "quoteTemplate": "Default Quote",
- "quoteTemplateID": 4,
- "receiptTemplate": "POS Receipt",
- "receiptTemplateID": 5,
- "returnFooter": "Returns & exchanges must meet the following requirements: purchased within 60 days.",
- "returnHeader": "Some company text.",
- "saleFooter": "Returns & exchanges must meet the following requirements: purchased within 60 days.",
- "saleHeader": "Some company text.",
- "storeReceiptType": "All"
}Get the Secure Terminal Configuration for a specified location ID. [Rev 1.07]
| locationID required | integer Unique identifier of the location for which to retrieve secure terminal configuration. |
{- "isIVREnabled": true,
- "isPinpadEnabled": false,
- "storeID": 456,
- "terminalID": 41
}List of tender types with usability flags that are specific to the specified store. [Rev 1.01]
The following indicates how each field can be used.
| locationID required | integer Unique identifier of the store for which to retrieve tender types. |
{- "allowBillPayment": true,
- "allowForDirectInvoice": false,
- "allowReturn": false,
- "allowSale": true,
- "baseTenderType": "cash",
- "baseTenderTypeID": 0,
- "requireCount": false,
- "sortIndex": 1,
- "tenderType": "Cash",
- "tenderTypeID": 2
}Replaces all contact information for a Store with the contact information submitted in the request. [Rev 1.02]
| Content-Type required | string Example: application/json |
object (AddressValidationInformation) | |
| city | string City the contact resides in. |
| companyName | string Company name for the contact |
| country | string Country the contact resides in. |
object (EmailAddress) | |
object (EmailAddress) | |
object (EmailAddress) | |
| firstName | string First name for the contact. |
| lastName | string Last name for the contact. |
| latitude | number Latitude for the supplied address information. |
| longitude | number Logitude for the supplied address information. |
| middleInitial | string Single character representation for the contacts middle name. |
| note | string Any notes associated with the contact. |
object (PhoneNumber) | |
object (PhoneNumber) | |
object (PhoneNumber) | |
object (PhoneNumber) | |
| state | string State the contact resides in. |
| street1 | string Street address for the contact. |
| street2 | string Additional street address information for the contact. |
| street3 | string Additional street address information for the contact. |
| taxJurisdictionIDs | Array of integers <int32> (TaxJurisdictionIDs) [ items <int32 > ] A collection of unique identifiers of the tax jurisdictions for this contact. NoteThis field is currently only used in responses and will be ignored in requests. |
| zipCode | string Zip code for the contact. |
{- "addressValidationInformation": {
- "actualValidationType": "USPS",
- "bypassUser": "Phil",
- "errorCode": "USPS_11_InvalidInput5digitZIPCode",
- "excludeReasonID": 52,
- "failureCount": 2,
- "isPOBox": true,
- "requiredValidationType": "Proxix",
- "taxFIPS": 601368294,
- "taxSpecialDistricts": [
- "29CDD11243"
], - "validationDate": "2019-08-24T14:15:22Z"
}, - "city": "Victor",
- "companyName": "IDI Billing Solutions",
- "country": "USA",
- "emailAddress1": {
- "email": "noreply@idibilling.com",
- "type": "Work"
}, - "emailAddress2": {
- "email": "noreply@idibilling.com",
- "type": "Work"
}, - "emailAddress3": {
- "email": "noreply@idibilling.com",
- "type": "Work"
}, - "firstName": "John",
- "lastName": "Doe",
- "latitude": 96.5,
- "longitude": 10.7,
- "middleInitial": "J",
- "note": "This contact is the customers primary residence.",
- "phoneNumber1": {
- "number": 5855555555,
- "type": "Work"
}, - "phoneNumber2": {
- "number": 5855555555,
- "type": "Work"
}, - "phoneNumber3": {
- "number": 5855555555,
- "type": "Work"
}, - "phoneNumber4": {
- "number": 5855555555,
- "type": "Work"
}, - "state": "NY",
- "street1": "7615 Omnitech Place",
- "street2": "Suite 7",
- "street3": "",
- "taxJurisdictionIDs": [
- 11017
], - "zipCode": 14564
}{- "addressValidationInformation": {
- "actualValidationType": "USPS",
- "bypassUser": "Phil",
- "errorCode": "USPS_11_InvalidInput5digitZIPCode",
- "excludeReasonID": 52,
- "failureCount": 2,
- "isPOBox": true,
- "requiredValidationType": "Proxix",
- "taxFIPS": 601368294,
- "taxSpecialDistricts": [
- "29CDD11243"
], - "validationDate": "2019-08-24T14:15:22Z"
}, - "city": "Victor",
- "companyName": "IDI Billing Solutions",
- "country": "USA",
- "emailAddress1": {
- "email": "noreply@idibilling.com",
- "type": "Work"
}, - "emailAddress2": {
- "email": "noreply@idibilling.com",
- "type": "Work"
}, - "emailAddress3": {
- "email": "noreply@idibilling.com",
- "type": "Work"
}, - "firstName": "John",
- "lastName": "Doe",
- "latitude": 96.5,
- "longitude": 10.7,
- "middleInitial": "J",
- "note": "This contact is the customers primary residence.",
- "phoneNumber1": {
- "number": 5855555555,
- "type": "Work"
}, - "phoneNumber2": {
- "number": 5855555555,
- "type": "Work"
}, - "phoneNumber3": {
- "number": 5855555555,
- "type": "Work"
}, - "phoneNumber4": {
- "number": 5855555555,
- "type": "Work"
}, - "state": "NY",
- "street1": "7615 Omnitech Place",
- "street2": "Suite 7",
- "street3": "",
- "taxJurisdictionIDs": [
- 11017
], - "zipCode": 14564
}Search for Tender Types in the system. [Rev 1.04]
The following indicates how each field can be used.
| $count | boolean Example: $count=true Specifies whether to fetch the total count of results. This is the count of all entities that match the |
| $filter | string Example: $filter=field1 eq 1234 A structured search expression in standard OData syntax. |
| $inlinecount | string Enum: "allpages" "none" Example: $inlinecount=allpages Tells the server to include the total count of matching entities in the response. |
| $orderby | string Example: $orderby=field1 A list of comma-separated expressions to sort the results by. Each expression can be followed by asc to indicate ascending, and desc to indicate descending. The default is ascending order. |
| $select | string Example: $select=field1, field2 A list of comma-separated fields to retrieve. If unspecified, all fields in the schema are included. |
| $skip | integer Example: $skip=10 Number of search results to skip. |
| $skiptoken | integer Example: $skiptoken=2 Indicator to the next set of results. This value is usually supplied on the response from a previous search. |
| $top | integer Example: $top=1 Number of search results to retrieve. Default value is 100 with the ability to specify up to 500. Any number greater than 500 will still only return 500 records. |
{- "@odata.count": 145,
- "@odata.nextLink": "https://api.idibilling.com/LocationManagement/2X/anenvironment/api/odataquery?$filter=name eq 'foo'&$skip=50",
- "value": [
- {
- "allowForDirectInvoice": false,
- "baseTenderType": "E-Check",
- "baseTenderTypeID": 15,
- "creditAdjustmentType": "An Adjustment Type",
- "creditAdjustmentTypeID": 12,
- "debitAdjustmentType": false,
- "debitAdjustmentTypeID": false,
- "isDrawerReconcilable": false,
- "isInternalUseOnly": false,
- "name": "E-Check Web",
- "paymentType": "My Payment Type",
- "paymentTypeID": 2,
- "tenderTypeID": 4
}
]
}Updates a specific tender type by ID. [Rev 1.05]
Allowed patch operations for each patchable property of a tender type.
baseTenderTypeID : add, replacebaseTenderTypeID may not be:creditAdjustmentTypeID : add, remove, replacecreditAdjustmentTypeID may not be:debitAdjustmentTypeID : add, remove, replacedebitAdjustmentTypeID may not be:name : add, replacename may not be:paymentTypeID : add, remove, replacepaymentTypeID may not be:| tenderTypeID required | integer Unique ID of the tender type. |
| Content-Type required | string Example: application/json |
| op required | string (op) Enum: "add" "replace" "remove" The type of JSON Patch operation being requested. |
| path required | string Path within the JSON document that should be modified. |
| value | string If supplied, the new value to be used at the given path by the given operation. |
[- {
- "op": "replace",
- "path": "/name",
- "value": "Fred"
}
]{- "errors": [
- {
- "correlationId": "8c041095",
- "field": "exampleField",
- "loggingNumber": 500032,
- "message": "You do not have access to foo ID 1 or it does not exist."
}
]
}Retrieve a specific tender type by ID. [Rev 1.05]
| tenderTypeID required | integer Unique ID of the Tender Type to retrieve. |
{- "allowForDirectInvoice": false,
- "baseTenderType": "E-Check",
- "baseTenderTypeID": 15,
- "creditAdjustmentType": "An Adjustment Type",
- "creditAdjustmentTypeID": 12,
- "debitAdjustmentType": false,
- "debitAdjustmentTypeID": false,
- "isDrawerReconcilable": false,
- "isInternalUseOnly": false,
- "name": "E-Check Web",
- "paymentType": "My Payment Type",
- "paymentTypeID": 2,
- "tenderTypeID": 4
}paymentusLocationID to Create a Store POST api/store, Get a Store GET api/store/{locationId}, and Search Stores GET api/store/GET api/register/{registerID}/registerTenderSummaryrequireCount to List Tender Types GET api/store/{locationID}/tenderTypelastReconcileDateSinceLastFloat , lastReconcileNoSaleID, registerStatus, registerStatusID and transactionCountSinceLastFloat to Get Register GET api/register/{registerID} and Search Register GET api/registeruserName , machineName and lastFloatDate to Get Register GET api/register/{registerID}userName , machineName and lastFloatDate to Search Register GET api/registerGET api/user/authorizedRegisterPATCH api/register/{registerID}GET api/inventoryGET api/inventorySerializedAllowForDirectInvoice to the followingGET api/store/{locationID}/tenderTypeGET api/tenderTypeGET api/tenderType/{tenderTypeID}GET api/user/authorizedLocationGET api/store/{locationID}/secureTerminalConfigurationinvoiceItemsToPrint value upon creation, and made the field no longer removable. Affected operations werePOST api/printingOptionsGET api/printingOptions/{printingOptionsID}GET api/store/{locationID}/printingOptionsPATCH api/printingOptions/{printingOptionsID}GET api/tenderType/{tenderTypeID}PATCH api/tenderType/{tenderTypeID}invoiceItemsToPrint, logo, and logoFileName to the followingGET api/printingOptions/{printingOptionsID}GET api/store/{locationID}/printingOptionsinvoiceItemsToPrint, logo, logoFileName, networkPrinterTemplateID, quoteTemplateID, and receiptTemplateID as creatable, updatable, and removable fieldsPOST api/printingOptionsPATCH api/printingOptions/{printingOptionsID}POST api/printingOptionsGET api/printingOptions/{printingOptionsID}GET api/store/{locationID}/printingOptionsPATCH api/printingOptions/{printingOptionsID}GET api/printingTemplateGET api/tenderTypePOST api/storeGET api/store/{locationId}POST api/store/{locationID}/contactGET api/registerPOST api/registerGET api/register/{registerID}GET api/store/{locationID}/tenderType