{"activeVersionTag":"latest","latestAvailableVersionTag":"latest","collection":{"info":{"_postman_id":"b3532e54-66a8-406e-abde-e3f2e2ab3535","name":"Aldelo Express REST API - v1","description":"![Aldelo Express Cloud POS System](https://www.aldelo.express/uploads/1/0/1/3/101368870/published/apos-homepage-header-pos_2.png?1544113417 \"Aldelo Express Point of Sale System\")\n\n# Welcome to Aldelo\nHey there, welcome to **Aldelo Express Cloud POS** Developer's API page. If you are looking to integrate with a modern, intuitive, and full-featured Cloud Point-of-Sale (POS) platform, then congrats for choosing **Aldelo Express Cloud POS**.  You are at the right place for all things integration related, so let's start building something great together.\n\n# Why is Aldelo Better?\nSo why is **Aldelo Express** the **Best Cloud POS** for Restaurants, Bars, Retailers, and Service Shops?\n\n**Aldelo Express** is a **full-featured Cloud POS** that is **simple to setup**, **intuitive to use**, and **extremely capable** of handling restaurants, bars, and retail shops of any size or complexity.  Whether the merchant needs a **Station POS**, **Mobile POS**, or swap between at anytime on a whim, **Aldelo Express** gets the job done without thinking.\n\n**Aldelo Express** also helps merchants save on operating expenses by eliminating store deployed PCs, Servers, complex maintenances, expensive POS labor costs, as well as concerns about store database management.  Store owners and managers can finally focus on their business rather than the **POS Systems**.\n\nTo learn more about **Aldelo Express Cloud POS**, the point of sale system made for restaurants, bars, retailers, and service shops, please visit our product site at [www.aldelo.express](https://www.aldelo.express)\n\n# Why Integrate with Aldelo?\nWe provide a set of cloud based RESTful APIs for you to consume.  You do not have to deploy any middleware software to the store, nor having to understand our database structure, nor needing to know about internal business logic in the system.  Just like the best REST APIs in the world, ours is also just as **simple, straightforward, and gets the job done in record time**.\n\n# The Aldelo App Market\nThe best apps and services **integrated with the best Cloud POS** won't have a market if the store owner or manager had to jump through hoops to choose an integrated solution.  We understand that and therefore, we have an app market that simplifies the connections.\n\nOnce your solution is tested and **certified by Aldelo**, it will be published to Aldelo's App Market. Our **Aldelo Express merchants** can **easily access our App Market** on the Express Cloud, search for their favorite solution and simply click \"Connect\" to add your world class app and service to their store.  Its really that simple.\n\nYou will then have access to the store data and store's subscriber ID, so that we can **jointly help merchants operate more efficiently** and succeed with our **best in class Cloud POS** and your cutting edge app and service.\n\n# Developer Program Costs\nIs there a cost to integrate with Aldelo Express, or market on the Aldelo App Market?\n\nThe short answer is **\"It Costs Nothing\"**, we don't charge developers any fees or residuals, you **keep all your money**.\n\nFor developers evaluating our API and doing initial testing, feel free to use the Sandbox URL and API documentation published on this site.  **Go ahead and build your next great app with our Cloud POS**.  \n\nAfter you have completed your integration and Sandbox testing, contact us to open a free developer account and request for app certification.\n\nThere is **no membership fees** to join the **Aldelo Developer Network**.  There is **no app fees** to submit apps for certification.  There is **no app connection or api integration usage fees** charged to the developer neither.  **Developer support is also free** via email.  Lastly, Aldelo Pay merchants choosing the integrated solution also do not incur any additional integration or API fees.  Yes, **it's all Free**.  Isn't that great for everyone.\n\nSo does this mean Aldelo provides an App Market for you to publish your app and service, connect with our merchants all for free?  Does this mean there is **no such thing as a 30% app fee or residual** charged against the developer for use of the marketplace?  Absolutely right.  We do not take any of your revenue and there is no marketplace fees we charge.\n\nSo there, it's another great reason to choose Aldelo Express and integrate with us.  **Keep 100% of your revenue in your pockets**.\n\n# Ideal Apps to Integrate\nTo better service our merchants and make their store operations more efficiently, Aldelo welcomes all types of app and service integrations.  \n\nVisit our app market intro site for examples of apps ideal for Aldelo Express integration at [www.aldelo.express/integratedapps.html](https://www.aldelo.express/integratedapps.html)\n\n# Integration Tips\nTo get the most out of this API documentation, We suggest the following workflow to maximize your integration efforts:\n\n1) Review the API list and be familiar with all of the API methods available.  Based on your App or Service's requirements, choose the appropriate API methods to integrate.\n\n2) Please review closely the data type and data type size expected as described under the Request and Response Examples.  Sending invalid data will cause the API method call to be discarded.  \n\n3) In the Request or Response example, if a field is tagged as NOT NULL, it means data must be provided during the request or such data will be returned during the response. Likewise, if a field is tagged as NULL, it means data may be omitted during the request or such data may not be returned during the response. However, if you have null for a request field, do still send the element, such as \"PictureName\":null\n\n4) Please note that for documentation purposes only, the C style comments starting with // is not part of the request or response and should not be included or parsed. They only exist in this documentation to explain the expected data type, data type size, and if required or not. In your source code, when you code the JSON request data, please do not include the // comments.  Likewise, when you parse the response data in JSON format as returned by the API host, there will not be any // comments included.\n\n5) In the API path, if the placeholder {...} exists, the entire placeholder needs to be replaced with actual value.  For example, /v1/employee/{requiredEmployeeID}, the {requiredEmployeeID} needs to be replaced with actual employee id, such as 10000000001. Therefore, the actual path becomes /v1/employee/10000000001\n\n6) While you build the integration, be sure to test against the Sandbox. Sandbox information is described within this documentation below.  When you are ready to join as a Developer Partner and submit your app or service for certification, please contact us at integrations@aldelo.com\n\n# API Authentication\nWhen integrating with Aldelo Express REST API, always use HTTPS with TLS 1.2.  Each request must accompany the required headers as described below:\n\n\tContent-Type:\"application/json\"\n\tISV-ID:\"???\"\t\t// Use Sandbox or Live Credential (Live is from Developer Portal's Developer ID)\n\tISV-Key:\"???\"\t\t// Use Sandbox or Live Credential (Live is from Developer Portal's API Key) \n\tApp-Key:\"???\"\t\t// Use Sandbox or Live Credential (Live is from Developer Portal's App Key)\n\tApp-Version:\"???\"\t// Use Sandbox or Live Credential (Live is from Developer Portal's App Version)\n\tStore-Sub-ID:\"???\"\t// Use Sandbox or Live Credential (Live is from Developer Portal's App Connections)\n\n# Sandbox Information\nSandbox is used for your pre-certification integration and testing use. Sandbox cannot connect to a live merchant's subscriber ID.\n\n\tContent-Type:\"application/json\"\n\tISV-ID:“D-181207-0001”\n\tISV-Key:“480a31cb-03e6-4718-9e16-2d7a27e7af8f”\n\tApp-Key:”6eeeccfb-dd19-41a3-b2fa-a15586c23e64“\n\tApp-Version:“1.0.0.0”\n\tStore-Sub-ID:”2296-1C2A“\n\t\nBefore you submit your app or service for certification, please ensure self testing against the sandbox pass successfully. Any errors received during certification will cause the app or service to fail certification.  Aldelo's certification team members cannot provide QA assistance if integration errors are found. A certification fail means developer must resolve all outstanding errors prior to request for re-certification.  If you have any questions related to errors, feel free to consult with our developer services at integrations@aldelo.com\n\nPlease be sure to NOT hardcode the Sandbox URL and Credentials into your source code.\n\t\n# Production API Hosts\nOnce your app or service is ready for certification by Aldelo, please contact us at integrations@aldelo.com to request a developer portal account access.  To sign up for developer portal access and join Aldelo's developer program, you will need to provide your business documentation along with a NDA executed. Aldelo reserves the right to deny any applicants or apps for any other reasons at its sole discretion.\n\nOnce you have joined the Aldelo developer program (which is free to join upon approval), you will then be given the Production API host url.\n\nIf you already have a developer portal access, then simply login and submit your certification request. You can also maintain your developer account settings, keys, apps, and integrated stores on the Developer Portal.\n\nPlease be sure to NOT hardcode the Sandbox URL and Credentials into your source code.\n\n# Error Codes\n\n\t200 = OK (Evaluate Response JSON for Result or Error Details if applicable)\n\tAll Other HTTP Status Codes denote system level error\n\t\n# Common Business Error Codes and Error Messages\n\n    \"err_code\": 10301,\n    \"err_msg\": \"...\" //all kinds of messages except below\n\n    \"err_code\": 10302,\n    \"err_msg\": \"Either Header Credentials Isn't Valid or Target Store Not Authorized For ISV App Access\"\n    \n    \"err_code\": 10303,\n    \"err_msg\": \"ISV App Not Authorized for API Access, Please Contact Aldelo Developer Services\"\n    \n    \"err_code\": 10304,\n    \"err_msg\": \"ISV App Not Authorized for Target HTTP Method Type, Please Contact Aldelo Developer Services\"\n    \n    \"err_code\": 10305,\n    \"err_msg\": \"API Daily Limit Reached, Access Restricted Until Next Day, To Lift Limit, Please Contact Aldelo\"\n    \n    \"err_code\": 10306,\n    \"err_msg\": \"Cannot Find The Store By The Store-Sub-ID\"\n    \n    \"err_code\": 10307,\n    \"err_msg\": \"No Data\"\n    \n    \"err_code\": 10308,\n    \"err_msg\": \"Request Body Not Valid\"\n    \n    \"err_code\": 10309,\n    \"err_msg\": \"DataBase Error\"\n    \n    \"err_code\": 10310,\n    \"err_msg\": \"This Record is Already In Use And Cannot Be Permanently Deleted\"\n    \n    \"err_code\": 10311,\n    \"err_msg\": \"Data Signature is Required\"\n    \n    \"err_code\": 10312,\n    \"err_msg\": \"Data Signature is Not Current\"\n    \n    \"err_code\": 10313,\n    \"err_msg\": \"Unique Key Existed\"\n    \n    \"err_code\": 10314,\n    \"err_msg\": \"Record Does Not Exist\"\n    \n    \n    \n    \n","schema":"https://schema.getpostman.com/json/collection/v2.0.0/collection.json","isPublicCollection":false,"owner":"4980328","team":216243,"collectionId":"b3532e54-66a8-406e-abde-e3f2e2ab3535","publishedId":"RzfiH8rJ","public":true,"publicUrl":"https://doc.aldelo.io","privateUrl":"https://go.postman.co/documentation/4980328-b3532e54-66a8-406e-abde-e3f2e2ab3535","customColor":{"top-bar":"FFFFFF","right-sidebar":"000000","highlight":"EF5B25"},"documentationLayout":"classic-double-column","version":"8.10.0","publishDate":"2018-12-13T08:30:19.000Z","activeVersionTag":"latest","documentationTheme":"light","metaTags":{},"logos":{}},"statusCode":200},"environments":[],"user":{"authenticated":false,"permissions":{"publish":false}},"run":{"button":{"js":"https://run.pstmn.io/button.js","css":"https://run.pstmn.io/button.css"}},"web":"https://www.getpostman.com/","team":{"logo":"https://res.cloudinary.com/postman/image/upload/t_team_logo_pubdoc/v1/team/8329d4000479771c53c1c6aef9519b3c6fec5b5ad47dfb3f4ae207f20578d051","favicon":"https://aldelo.io/favicon.ico"},"isEnvFetchError":false,"languages":"[{\"key\":\"csharp\",\"label\":\"C#\",\"variant\":\"HttpClient\"},{\"key\":\"csharp\",\"label\":\"C#\",\"variant\":\"RestSharp\"},{\"key\":\"curl\",\"label\":\"cURL\",\"variant\":\"cURL\"},{\"key\":\"dart\",\"label\":\"Dart\",\"variant\":\"http\"},{\"key\":\"go\",\"label\":\"Go\",\"variant\":\"Native\"},{\"key\":\"http\",\"label\":\"HTTP\",\"variant\":\"HTTP\"},{\"key\":\"java\",\"label\":\"Java\",\"variant\":\"OkHttp\"},{\"key\":\"java\",\"label\":\"Java\",\"variant\":\"Unirest\"},{\"key\":\"javascript\",\"label\":\"JavaScript\",\"variant\":\"Fetch\"},{\"key\":\"javascript\",\"label\":\"JavaScript\",\"variant\":\"jQuery\"},{\"key\":\"javascript\",\"label\":\"JavaScript\",\"variant\":\"XHR\"},{\"key\":\"c\",\"label\":\"C\",\"variant\":\"libcurl\"},{\"key\":\"nodejs\",\"label\":\"NodeJs\",\"variant\":\"Axios\"},{\"key\":\"nodejs\",\"label\":\"NodeJs\",\"variant\":\"Native\"},{\"key\":\"nodejs\",\"label\":\"NodeJs\",\"variant\":\"Request\"},{\"key\":\"nodejs\",\"label\":\"NodeJs\",\"variant\":\"Unirest\"},{\"key\":\"objective-c\",\"label\":\"Objective-C\",\"variant\":\"NSURLSession\"},{\"key\":\"ocaml\",\"label\":\"OCaml\",\"variant\":\"Cohttp\"},{\"key\":\"php\",\"label\":\"PHP\",\"variant\":\"cURL\"},{\"key\":\"php\",\"label\":\"PHP\",\"variant\":\"Guzzle\"},{\"key\":\"php\",\"label\":\"PHP\",\"variant\":\"HTTP_Request2\"},{\"key\":\"php\",\"label\":\"PHP\",\"variant\":\"pecl_http\"},{\"key\":\"powershell\",\"label\":\"PowerShell\",\"variant\":\"RestMethod\"},{\"key\":\"python\",\"label\":\"Python\",\"variant\":\"http.client\"},{\"key\":\"python\",\"label\":\"Python\",\"variant\":\"Requests\"},{\"key\":\"r\",\"label\":\"R\",\"variant\":\"httr\"},{\"key\":\"r\",\"label\":\"R\",\"variant\":\"RCurl\"},{\"key\":\"ruby\",\"label\":\"Ruby\",\"variant\":\"Net::HTTP\"},{\"key\":\"shell\",\"label\":\"Shell\",\"variant\":\"Httpie\"},{\"key\":\"shell\",\"label\":\"Shell\",\"variant\":\"wget\"},{\"key\":\"swift\",\"label\":\"Swift\",\"variant\":\"URLSession\"}]","languageSettings":[{"key":"csharp","label":"C#","variant":"HttpClient"},{"key":"csharp","label":"C#","variant":"RestSharp"},{"key":"curl","label":"cURL","variant":"cURL"},{"key":"dart","label":"Dart","variant":"http"},{"key":"go","label":"Go","variant":"Native"},{"key":"http","label":"HTTP","variant":"HTTP"},{"key":"java","label":"Java","variant":"OkHttp"},{"key":"java","label":"Java","variant":"Unirest"},{"key":"javascript","label":"JavaScript","variant":"Fetch"},{"key":"javascript","label":"JavaScript","variant":"jQuery"},{"key":"javascript","label":"JavaScript","variant":"XHR"},{"key":"c","label":"C","variant":"libcurl"},{"key":"nodejs","label":"NodeJs","variant":"Axios"},{"key":"nodejs","label":"NodeJs","variant":"Native"},{"key":"nodejs","label":"NodeJs","variant":"Request"},{"key":"nodejs","label":"NodeJs","variant":"Unirest"},{"key":"objective-c","label":"Objective-C","variant":"NSURLSession"},{"key":"ocaml","label":"OCaml","variant":"Cohttp"},{"key":"php","label":"PHP","variant":"cURL"},{"key":"php","label":"PHP","variant":"Guzzle"},{"key":"php","label":"PHP","variant":"HTTP_Request2"},{"key":"php","label":"PHP","variant":"pecl_http"},{"key":"powershell","label":"PowerShell","variant":"RestMethod"},{"key":"python","label":"Python","variant":"http.client"},{"key":"python","label":"Python","variant":"Requests"},{"key":"r","label":"R","variant":"httr"},{"key":"r","label":"R","variant":"RCurl"},{"key":"ruby","label":"Ruby","variant":"Net::HTTP"},{"key":"shell","label":"Shell","variant":"Httpie"},{"key":"shell","label":"Shell","variant":"wget"},{"key":"swift","label":"Swift","variant":"URLSession"}],"languageOptions":[{"label":"C# - HttpClient","value":"csharp - HttpClient - C#"},{"label":"C# - RestSharp","value":"csharp - RestSharp - C#"},{"label":"cURL - cURL","value":"curl - cURL - cURL"},{"label":"Dart - http","value":"dart - http - Dart"},{"label":"Go - Native","value":"go - Native - Go"},{"label":"HTTP - HTTP","value":"http - HTTP - HTTP"},{"label":"Java - OkHttp","value":"java - OkHttp - Java"},{"label":"Java - Unirest","value":"java - Unirest - Java"},{"label":"JavaScript - Fetch","value":"javascript - Fetch - JavaScript"},{"label":"JavaScript - jQuery","value":"javascript - jQuery - JavaScript"},{"label":"JavaScript - XHR","value":"javascript - XHR - JavaScript"},{"label":"C - libcurl","value":"c - libcurl - C"},{"label":"NodeJs - Axios","value":"nodejs - Axios - NodeJs"},{"label":"NodeJs - Native","value":"nodejs - Native - NodeJs"},{"label":"NodeJs - Request","value":"nodejs - Request - NodeJs"},{"label":"NodeJs - Unirest","value":"nodejs - Unirest - NodeJs"},{"label":"Objective-C - NSURLSession","value":"objective-c - NSURLSession - Objective-C"},{"label":"OCaml - Cohttp","value":"ocaml - Cohttp - OCaml"},{"label":"PHP - cURL","value":"php - cURL - PHP"},{"label":"PHP - Guzzle","value":"php - Guzzle - PHP"},{"label":"PHP - HTTP_Request2","value":"php - HTTP_Request2 - PHP"},{"label":"PHP - pecl_http","value":"php - pecl_http - PHP"},{"label":"PowerShell - RestMethod","value":"powershell - RestMethod - PowerShell"},{"label":"Python - http.client","value":"python - http.client - Python"},{"label":"Python - Requests","value":"python - Requests - Python"},{"label":"R - httr","value":"r - httr - R"},{"label":"R - RCurl","value":"r - RCurl - R"},{"label":"Ruby - Net::HTTP","value":"ruby - Net::HTTP - Ruby"},{"label":"Shell - Httpie","value":"shell - Httpie - Shell"},{"label":"Shell - wget","value":"shell - wget - Shell"},{"label":"Swift - URLSession","value":"swift - URLSession - Swift"}],"layoutOptions":[{"value":"classic-single-column","label":"Single Column"},{"value":"classic-double-column","label":"Double Column"}],"versionOptions":[],"environmentOptions":[{"value":"0","label":"No Environment"}],"canonicalUrl":"https://doc.aldelo.io/view/metadata/RzfiH8rJ"}