Capita Education Software Solutions is a trading name of
Capita Business Services Ltd. Our Registered office is 30
Berners Street, London, W1T 3LR and our registered number
is 02299747. Further information about Capita plc can be
found in our legal statement.
FMS supports the electronic exchange of Content Order, Authorised Order, Invoice and Credit Note documents via a Web Services interface from web sites or portals. The exchange of Content Order and Authorised Order by eMail is still available but is no longer recommended and will not be supported at a future date.
* Provided with permission from BASDA. The available version is 3.10 but we are advised that there was no breaking difference from 3.09.
This document is intended to help support the implementation of the Web Services interface. Any references to the eMail transfer mechanism are only included to aid clarity where the Web Services functionality differs.
This document, and the associated documents and files are not manuals or training guides and assume that the reader has
The required working knowledge of FMS, its processes, and the reasons for those processes. That formal training will acquired as needed through ESS.
Web Services and their implementation. ESS will not provide training or expertise in this area.
XML its use, implementation, or integration with other systems. ESS will not provide training or expertise in this area.
The intent is to reduce the use of paper documents, formal or informal, to increase the accuracy of the data transferred, to use current prices upon Content Orders, and increase the timeliness of the entire process. Additional benefits of automated price comparison can be obtained if suitable portals/web sites are used for this process.
To support this, it is envisaged that usage will be as follows based upon functionality being included in FMS 6.132 Summer 2010:-
A number of users are authorised by the establishment to access a purchasing web site provided by a supplier or suitable portal. The user is able to assemble a “shopping basket” of desired items. At point of checkout these are not paid for in the traditional manner, but are packaged as “Content Order” messages for transmission to the establishment via Web Service calls.
The establishment receives the “Content Order” message which is automatically saved in FMS as an unauthorised order and appears in the Purchase Order screen. This can be processed in the familiar manner meeting the requirements of budget control and authorisation as laid down in the Financial Regulations of the relevant Local Authority; alternatively it can undergo limited editing before authorisation, or can be discarded completely.
The Authorised Order is returned to the supplier using the same Web Service that sent the original Content Order to FMS.
Functionality included in FMS 6.132 Summer 2010, will allow Authorised Orders that have only been generated in FMS to be transferred via Web Services to the portal as well as Content Orders.
The supplier is able to queue suitable Invoice document messages for transmission to the establishment via Web Service calls. This only applicable when more than one Web Server has been defined in FMS.
The supplier is able to queue suitable Credit Note document messages for transmission to the establishment via Web Service calls. This only applicable when more than one Web Server has been defined in FMS.
The order documents supported are the Content Order (received by FMS) and the Authorised Order (sent from FMS). These are based on the “eBIS XML 3.09 Order Schema (UK Gov)” order schema.
The invoice documents supported are Invoices and Credit Notes. These are based on the “eBIS XML 3.09 Invoice Schema”.
The documents Content Order, Invoice, and Credit Note should be held in a queue at the supplier or portal for collection by the establishment. Authorised Orders are sent from FMS immediately they are “Printed” in FMS. It is known that some establishments do not have full internet access “24/7” while other establishments do. FMS therefore expects the Web Service to be permanently available.
The checksum is validated. It must therefore be correctly provided. The calculation is included in the official documentation. NOTE: we have found it necessary to use an INT64 to support this as very large numbers can be generated.
The Authorised Order exported from FMS is schema valid and has been validated against the OGC/BASDA test facility.
The mapping section below for order import is not, and is not meant to be, UKGov schema compliant. It is provided solely to indicate what FMS expects in the way of data and how it will handle that data. Any data in the XML file not shown in this section will be ignored by FMS, but will not cause the import to fail.
When importing a Content Order FMS ignores the catalogue that is held in FMS. There is no interface or updating of the FMS held catalogue.
A Content Order can be edited in FMS. Therefore it may not be returned as raised. The user can not edit the part number, the description, or the price. Additional lines can not be added. The user can edit the line quantity to be purchased. Lines can be deleted.
FMS allows for encryption of order messages only. This was provided to enhance security when eMail was the only transfer method. eMail is no longer the recommended transfer method for order documents but is still available for existing users.
The use of encryption is not available for Invoice and Credit Note documents and should not be used for order documents transferred via Web Services. Security is provided by the use of SSL methods in the Web Services.
ESS is unable to provide support for encryption, beyond that normally provided to users of FMS under the terms of their support contract.
The Invoice and Credit Note both use the same schema, and are therefore treated as identical documents. The documents are identified at point of import by the internal identifiers. Additionally, to aid clarity or purpose FMS makes use of the facility to extend the schema by the use of the <Invoice / Extensions> tag. The following schema snippet identifies the extension, and its use can found below under “Import – Invoice and Credit Note”
On import the checksum is not validated, the file is validated against the schema and must therefore be schema compliant.
The values in the tags Order / OrderHead / Parameters / Language and Order / OrderHead / OrderCurrency (Code) of a Content Order are validated against user defined system parameters held within FMS. This is to ensure the consistency of data within FMS. It is assumed that the Invoice, and Credit Note if required, will in the same currency as the order.
FMS does not “Expect” a particular value. It is anticipated that for a British school trading with a British supplier that these values would be “en” and “GBP” respectively. NOTE: FMS does not support multiple currencies, or multiple languages. .
An Order, Invoice, or Credit Note line in FMS can not be saved without a valid linked Fund, Ledger Code and Cost Centre. Therefore a valid linked Fund, Ledger Code and Cost Centre is assigned to each order line at import. FMS has template functionality to automate this process.
To assist the user of FMS it is helpful if the supplier can return the login ID or name of the user raising the Content Order. If the supplier’s system also allows the entry of a cost centre or ledger code at order line level on the portal this should also be returned. This permits the full power of the template system within FMS to be used when importing Content Orders.
The template system allows for the definition of valid linked Fund, Ledger Code and Cost Centre to be defined by any combination of login id and/or line level cost centre.
The import/export processes within FMS are automated using standard, non proprietary, XML handling methods. It is therefore imperative that data is compliant with its tag data type; e.g. dates of type “XSD:date” must be correctly entered in accordance with the W3C type definitions as "YYYY-MM-DD" and must
include the century
not omit any leading zeroes for either the month and/or day.
NOTE: Please note this exception. On import FMS expects an integer for the line quantity as FMS will only accept an integer for line quantity.
The handshake for Content Orders makes use of the DUNS numbers as identifiers for both supplier and the establishment. Consequently, the suppliers “Account Number” field in FMS should be used to hold the Account Number that the supplier has provided to the school.
FMS continues to use a handshake on the suppliers “Account Number” and the FMS “XML Reference Number”. If this “Handshake” fails then the Content Order will not be imported.
The FMS “XML Reference Number” is the mirror of the supplier’s account number. The supplier uses the account number to identify the customer. The customer (establishment) uses the “XML Reference Number” to identify the supplier. It is recommended that for new systems, or when adding suppliers, the suppliers DUNS number is used as the XML Reference Number.
The FMS “XML Reference Number” is only guaranteed unique within any one FMS database. The “XML Reference Number” is user defined and for any one supplier will not be the same from different customers. It is possible for an LA to require all their schools to use the same number for a single supplier. It is not possible for a supplier to derive this number.
This functionality will not be supported in the future – date to be provided.
Each schema tag is listed with a brief comment about the data imported by FMS. This section must be read in conjunction with the eBIS XML 3.09 Order Schema (UK Gov) to ensure the reader understands the relationships and structures. The following does not indicate either relationship or structure.
Any schema tag not listed below is ignored by FMS. Node attributes are identified by italics.
NOTE:
1. For a Content Order that is received via Web Services, it is essential that the Content Order contains the FMS held DUNS Number for both the establishment and supplier. This provides the handshake used in FMS to ensure the order is intended for the recipient and is attached to the correct supplier.
2. For a Content Order that is received via email, it is essential that the Content Order contains the FMS held “Account Number” and “XML Reference”, SuppliersCodeForBuyer and BuyersCodeForSupplier respectively. This provides the handshake used in FMS to ensure the order is intended for the recipient and is attached to the correct supplier.
<Order / OrderHead / Parameters / Language>
First 2 characters should match (ignore case) Establishment Details | tab 3 System Parameters | System Language. If not fail import.
Use to determine/validate supplier in FMS. Used to provide a handshake to verify the buyer – supplier relationship and must be present if file is to import.
Use to determine/validate supplier in FMS. Used to provide a handshake to verify the buyer – supplier relationship and must be present if file is to import.
<Order / Buyer / BuyerReferences / DUNS>
Ignored. NOTE: May be used later to confirm the buyer is correctly identified.
<Order / Buyer / Contact / Name>
Supplier to enter users web site logon ID. Stored at order header level to indicate who raised the order on the web site.
<Order / OrderLine / Action>
If = “Original” add line to order otherwise ignore line.
Each schema tag is listed with a brief comment about the data populated by FMS. This section must be read in conjunction with the eBIS XML 3.09 Order Schema (UK Gov) to ensure the reader understands the relationships and structures. The following does not indicate either relationship or structure.
Any schema tag not listed below is not populated by FMS. A tag will not be included in the XML file with no value. Node attributes are identified by italics.
<Order / OrderHead / Schema / Version>
Constant = Schema version currently supported by FMS e.g. "3.09-UKGov.20030911"
<Order / OrderHead / Parameters / Language>
Establishment Details | tab 3 System Parameters | System Language.
Order Head | Delivery Address Text. Repeat tag for each line starting at the second line.
NOTE: The user should structure their deliver to address so that the establishment’s name is on the first line only. All other lines will be put in here.
Each schema tag is listed with a brief comment about the data imported by FMS. This section must be read in conjunction with the “eBIS XML 3.09 Invoice Schema” to ensure the reader understands the relationships and structures. The following does not indicate either relationship or structure.
Note. For an Invoice and Credit Note that is received via Web Services, it is essential that they contain the FMS held DUNS Number for both the school and supplier. This provides the handshake used in FMS to ensure the order is intended for the recipient and is attached to the correct supplier.
Any schema tag not listed below is ignored by FMS. Node attributes are identified by italics.
<Invoice / InvoiceHead / TestFlag / @Mode>
If present must be Boolean 0 (zero). Not present accepted.
<Invoice / InvoiceHead / InvoiceType / @Code>
Must be either “INV” or “CRN” (any case). Determines whether the message is treated as an Invoice (“INV”) or as a Credit Note (“CRN”).
<Invoice / InvoiceHead / InvoiceType / @Codelist>
Must be “BASDA” (any case). Other Code Lists are not recognised
<Invoice / InvoiceReferences / BuyersOrderNumber>
Provides the Invoice “Order Number, used to link the Invoice to the Order.
Used for matching the Invoice line to the Order line or the Credit Note line to the Invoice Line. If missing the line is treated as a Post and Packing line.
Provides the Line Detail “Disc %”. Only applied if present and <Invoice / InvoiceLine / PercentDiscount / QualifyingTerms / @Code> is not “LPI” (any case).
<Invoice / InvoiceLine / LineTax / TaxRate >
Used by FMS to determine the FMS VAT Code for the line for both Invoice and Credit Note.
<Invoice / InvoiceLine / NetLineTotal>
Provides the Line Detail “Net Amount” for both Invoice and Credit Note.
<Invoice / TaxSubTotal / TaxRate>
Used to determine the FMS VAT Code for the tax rate and identifies the VAT summary line to validate for both Invoice and Credit Note.
<Invoice / TaxSubTotal / TaxAtRate>
Used to validate the total VAT for the FMS VAT Code determined by the above tag item. The VAT summary line will be updated to match the XML file value for both Invoice and Credit Note.
<Invoice / InvoiceTotal / GrossPaymentTotal>
Provides the Invoice “Invoice Total”, the Credit Note “Credit Note Total”.
This document details all the standards that need to be followed to create an e-procurement web service that can interface with the FMS system. All of these standards will need to be followed explicitly for FMS to be able to access the Web Service.
The documented details include:
The web methods that are required, including details of:
What they are used for
The parameter types and values
What data is returned from the method and the return data type
What exceptions can be thrown from the method
How this method is secured to a user
The soap headers that are required, including details of:
What they are used for
The parameter types and values
How exceptions should be handled
The namespace and name of the web service
The XML schemas used for validation
This document does not detail out any business rules regarding what is contained within the e-procurement documents of the system, other than what XML schemas they should be validated against.
Each e-procurement web service must support the following methods, soap header, exceptions and namespace at the bare minimum, ensuring the method name, parameter names, parameter types and return value type match.
If required the web service may support additional methods but these will not be accessed by FMS.
The web service must be located on a public internet URL and must use SSL to encrypt all data transferred. The web service will be protected by a Soap Header (AuthHeader) to allow for application level security, HTTP authentication will not be supported.
This method is used by the client to change the connection password of the current authenticated user. The method will return the new password that has been assigned.
There should be no constraints on the number of times this method is called.
Passwords should have a minimum life of 60 days to prevent them needing to be reset over the summer holidays.
Parameters
This method has no parameters.
Return value
A string containing the new password for the logged in user will be returned from this method call.
Expected Exceptions
FMS will be configured to handle the following exceptions from this method. The description of each exception type is shown in section 0 below.
AuthenticationException
Security
This method will require authentication through the AuthHeader Soap Header.
This method returns an XML string that contains the id, type and create date of all documents that have not been processed and are awaiting collection by the connecting organisation. The document id should be no longer than 100 characters long and must not contain any spaces.
The types of document that can be returned in the XML are:
order – Content Orders (not purchase orders)
invoice – Invoices
creditnote – Credit notes
quote – Quotes
Please note that FMS does not currently support quotes so these documents will not be downloaded or processed when they appear in the index.
Documents that are not downloaded should expire after a designated period and then be removed. This length of this period should be discussed with ESS.
Only documents that the current authenticated user has access to should be returned in this call.
Parameters
This method has no parameters.
Return value
A string containing XML that adheres to the Fetch Index XML Schema that is defined in section 0 below.
Expected Exceptions
FMS will be configured to handle the following exceptions from this method. The description of each exception type is shown in section 0 below.
AuthenticationException
Security
This method will require authentication through the AuthHeader Soap Header.
This method, similar to the FetchIndex method, returns an XML string that contains the name, type and create date of all documents that were created after the specified BeginDate parameter. This method will return documents that have and have not been processed.
Only documents that the current authenticated user has access to should be returned in this call.
Parameters
The BeginDate dateTime parameter in the WSDL must be a valid dateTime XML Schema data type and indicates the date and time value to retreive all documents from.
Return value
The returned value will be a string containing XML that adheres to the Fetch Index XML Schema, defined in section 0 below.
Expected Exceptions
FMS will be configured to handle the following exceptions from this method. The description of each exception type is shown in section 0 below.
AuthenticationException
Security
This method will require authentication through the AuthHeader Soap Header.
This method is used to update a documents status to be processed or unprocessed. Once a document is marked as processed it will not be returned in the next FetchIndex call. It will normally be used to mark an unprocessed document as processed but should also allow for a processed document to be marked as unprocessed.
Parameters
DocID is a string value that specifies the document ID to update. This ID will match the ID of the document returned in the FetchIndex XML.
Processed is a Boolean value that specifies whether the document has been processed or not.
Return value
This method will return a Boolean true value if the call was successful. If the call was not successful then a soap exception should be thrown.
Expected Exceptions
FMS will be configured to handle the following exceptions from this method. The description of each exception type is shown in section 0 below.
DocumentNotExistException
AuthenticationException
Security
This method will require authentication through the AuthHeader Soap Header.
This method is used to return the Contents of the specified document. All documents must be in XML and must be validated against the appropriate XML Schema detailed in section 0 below.
Calling this method should not affect a documents processed status.
Parameters
DocID is a string value that specifies the document ID to retrieve. This ID will match the ID of the document returned in the FetchIndex XML.
Return value
This method will return a string value containing the Contents of the specified document.
Expected Exceptions
FMS will be configured to handle the following exceptions from this method. The description of each exception type is shown in section 0 below.
DocumentNotExistException
AuthenticationException
Security
This method will require authentication through the AuthHeader Soap Header.
This method is used to send the XML of Purchase Order to the web service from FMS. The XML that is sent must conform to the eBIS-XML-UKGov Order 3.09 XML schema.
Parameters
Document is the XML string of a purchase order.
Return value
This method will return a Boolean true value if the call was successful. If the call was not successful then a soap exception should be thrown.
Expected Exceptions
FMS will be configured to handle the following exceptions from this method. The description of each exception type is shown in section 0 below.
InvalidXmlException
AuthenticationException
Security
This method will require authentication through the AuthHeader Soap Header.
To prevent any cross system incompatibilities any exceptions that are thrown from the web service will be a Soap Exception whose type will be identified by the exception message itself. There are three identified exceptions that can be thrown from the system whose message should be formatted in the following format:
This exception can be thrown from any of the web methods in the service and will be thrown if the login credentials passed in the AuthHeader are invalid.
Exception message format
The message should be outputted in the following format:
This exception can be thrown from the UpdateDocumentStatus and FetchDoc web methods and is thrown if the supplied document id cannot be found. This exception will also be thrown if the document does exist but the current authenticated user does not have access to it.
Exception message format
The message should be outputted in the following format:
This exception can be thrown from the SendOrder web method and will be thrown if the purchase order XML that is passed as a parameter does not validate against the appropriate XML schema or if it contains any invalid data.
Exception message format
The message should be outputted in the following format:
The application will be making extensive use of XML, to prevent any invalid XML being passed XML Schemas should be used to validate any XML before it is sent to us.
The following section details out all the different types of XML that will be passed across the system and the XML schema that should be used for each type.
The following code snippet details out the Contents of the FetchIndex xml schema file. This may not be the latest version, to get the latest version please contact ESS Partner support team.