Quick File API Overview
 | The Quick File API is a fully featured XML gateway, enabling 3rd Party developers to extend and enhance the Quick File Platform. The API contains all the common methods for building invoices, managing clients, inventory items and credit information.
At present the API methods only extend to the sales invoicing and client management functions. Additional methods are planned and will be released shortly, these will include purchase and bank management routines. |
Prerequisites
To access the API you must have a Quick File account. Communications with the server are made via the Simple Object Access Protocol (SOAP) standard with the request and response messages wrapped up into XML feeds and delivered over HTTP.
You can access the web service and view all the methods and functions here:
https://quickfile.co.uk/WebServices/API/invoices.asmxAuthentication Mechanism
The API uses a simple authentication mechanism to validate each request. The authentication credentials are delivered via an MD5 Encrypted Key that is passed in the header section of the request.
The following details are used to validate the request.
Account Number
The Quick File account number.
Unique API Key
A static key generated for your account to authenticate your access to the API. This can be found in your account settings area.
Submission Number
An alphanumeric string issued by the presenter that uniquely identifies every submission. The same submission number cannot be used more than once on the API.
MD5 Encrypted Authentication Key
This is an MD5 encryption of the Account Number, API key and submission number. The three values are concatenated and then hashed using the MD5 algorithm. The submission number is used to salt the encryption so it cannot be intercepted and reused.
For Example...
Account Number: 123456789
API Key: AAA3321-12BH-A
Submission Number: 00001
This would be concatenated to: 123456789AAA3321-12BH-A2200001
The resulting MD5 Hash would look like: 507c9d79c192da6e86428919ee0382dc
Please note that the MD5 hash must be presented in lower-case hexadecimal
The following online tool can be used to MD5 encrypt your string:
http://www.logicalpackets.com/md5.aspBasic Message Structure
Each submission on the API adheres to a basic format which includes a header and footer section. The header will encapsulate any information relating to the type of message, the authentication data, the unique submission number and whether the submission is for a test or live transaction. The body contains content specific to the type of request being made. The API response follows a similar format with a header and body section.
Each call to the API must be made with a unique submission number. If a duplicate submission number is transmitted, the API will return an error.
Please also be aware of the following when formulating your requests:
- All requests must be UTF8 Encoded
- You must include the appropriate Schema reference within the root of each request.
- Date time values must be formatted as yyYY-MM-DDTHH:MM (The T prefixes the time)
- Boolean values must be 'true' or 'false' and in lower case.
The Quick File API Sandbox
In order to make life a little easier we have provided a sandbox area where you can test your XML submissions and obtain the response in plain text. The sandbox area contains example XML for each of the methods and functions within the API and links directly to each of the XSD Schemas for you to correctly structure your request messages.
Click here to access the API SandboxAPI Call Limits
Each account has an initial request limit of 3000 API calls, permissible within a rolling 24 hour period. We are happy to lift this limit should you require additional capacity. For any queries regarding your API call limit, please contact us.
API Methods
The API has been divided up into the following categories. You can view the documentation for each category and obtain sample XML and schemas below.
The Quick File API is continually evolving and we will be building additional methods and functionality over time. If there is a feature that is missing and would be of benefit to our wider client base, we will be more than happy to build it for you...Just contact us with the details! |
|