External Policy Activation Service

This service will be replaced by the new Navigate APIs. Please contact us for guidance before integrating using this service.

Summary

The Policy Activation Service is an XML Service. The fields are self-describing. The service can be invoked either using a SOAP client (e.g. WCF, Web Services) or a simple POST HTTP request with the required WS-A addressing header specified. Each call to the request instantiate can request only one policy section, for policies with multiple policy sections the service has to be invoked once for each section.

Documentation endpoint

The best source of information on the service can be obtained by querying the WSDL endpoint https://integration.autoprotect.net/TCF/RemotePolicyMaintenance.svc?singleWsdl

Service Endpoint

Environment Endpoint
PROD https://integration.autoprotect.net/TCF/RemotePolicyMaintenance.svc
UAT https://dc-uat-integration.autoprotect.net/TCF/RemotePolicyMaintenance.svc

Enable WS-A addressing with the following action http://tempuri.org/PostPolicyStringsReduced

Supporting Documentation

The following information is provided as an addition to the WSDL endpoint. The WSDL endpoint should be regarded as the master documentation for the service the following is provided only for the purposes of clarification.

Methods

The Service supports a single method PostPolicyStringsReduced which requires an XML document to be submitted as the payload. An example payload is show below.

Example XML

Request

<soap:Envelope soap:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
               xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"
               xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/"
               xmlns:xsd="http://www.w3.org/2001/XMLSchema"
               xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
    <soap:Body>
        <PostPolicyStringsReduced
                xmlns="http://tempuri.org">
            <salesPersonStakeholderId xsi:type="xsd:int" />
            <strFinancePolicy_YN xsi:type="xsd:string">N</strFinancePolicy_YN>
            <strPolicyAlreadyFunded_YN xsi:type="xsd:string">N</strPolicyAlreadyFunded_YN>
            <strCustomerDOB xsi:type="xsd:string" />
            <strBankAccountName xsi:type="xsd:string" />
            <strBankAccountNumber xsi:type="xsd:string" />
            <strBankSortCode xsi:type="xsd:string" />
            <strPrefPaymentDate xsi:type="xsd:string" />
            <strUserName xsi:type="xsd:string">tcf12563567</strUserName>
            <strPassword xsi:type="xsd:string">**password**</strPassword>
            <strActivatePolicy_YN xsi:type="xsd:string">Y</strActivatePolicy_YN>
            <strUserReference xsi:type="xsd:string">Jamie Orr</strUserReference>
            <strDealerCode xsi:type="xsd:string">12566574</strDealerCode>
            <strPolicyNumber xsi:type="xsd:string" />
            <strCustomerType xsi:type="xsd:string">PRIV</strCustomerType>
            <strCustomerTitle xsi:type="xsd:string">Miss</strCustomerTitle>
            <strCustomerForename xsi:type="xsd:string">Firstname</strCustomerForename>
            <strCustomerSurname xsi:type="xsd:string">Lastname</strCustomerSurname>
            <strCompanyName xsi:type="xsd:string" />
            <strCustomerAddress1 xsi:type="xsd:string">******</strCustomerAddress1>
            <strCustomerAddress2 xsi:type="xsd:string">.</strCustomerAddress2>
            <strCustomerAddress3 xsi:type="xsd:string">LONDON,Greater London</strCustomerAddress3>
            <strCustomerAddress4 xsi:type="xsd:string" />
            <strCustomerAddress5 xsi:type="xsd:string" />
            <strCustomerPostCode xsi:type="xsd:string">N5 2JS</strCustomerPostCode>
            <strCustomerCountryCode xsi:type="xsd:string">GB</strCustomerCountryCode>
            <strCustomerTelephone xsi:type="xsd:string">*********</strCustomerTelephone>
            <strCustomerEmailAddress xsi:type="xsd:string">email@email.com</strCustomerEmailAddress>
            <strVehicleMake xsi:type="xsd:string">AUDI</strVehicleMake>
            <strVehicleModel xsi:type="xsd:string">a1</strVehicleModel>
            <strVehicleModelDesc xsi:type="xsd:string">Sportback</strVehicleModelDesc>
            <strVehicleAgeInMonths xsi:type="xsd:string">0</strVehicleAgeInMonths>
            <strVehicleReg xsi:type="xsd:string">KE15XPN</strVehicleReg>
            <strVehicleRegDate xsi:type="xsd:string">23/06/2015</strVehicleRegDate>
            <strVehicleMileage xsi:type="xsd:string">5</strVehicleMileage>
            <strEngineSize xsi:type="xsd:string">1495</strEngineSize>
            <strIsNewVehicle_YN xsi:type="xsd:string">Y</strIsNewVehicle_YN>
            <strVehicleClassType xsi:type="xsd:string">0</strVehicleClassType>
            <strVehicleUse xsi:type="xsd:string">1</strVehicleUse>
            <strPurchasePrice xsi:type="xsd:string">22651</strPurchasePrice>
            <strChassisNumber xsi:type="xsd:string" />
            <strPrivate_Plate_YN xsi:type="xsd:string">N</strPrivate_Plate_YN>
            <strLengthOfCover xsi:type="xsd:string">99</strLengthOfCover>
            <strCommencementDate xsi:type="xsd:string">24/06/2015</strCommencementDate>
            <strPurchaseDate xsi:type="xsd:string">24/06/2015</strPurchaseDate>
            <strSellingPrice xsi:type="xsd:string">300.00</strSellingPrice>
            <strInsurerCode xsi:type="xsd:string" />
            <strExcessValue xsi:type="xsd:string" />
            <strClaimLimitValue xsi:type="xsd:string" />
            <strFinance_YN xsi:nil="true" xsi:type="xsd:string" />
            <strAddOnTurbo xsi:type="xsd:string">N</strAddOnTurbo>
            <strAddonCAT xsi:type="xsd:string">N</strAddonCAT>
            <strAddonABS xsi:type="xsd:string">N</strAddonABS>
            <strAddonAWD xsi:type="xsd:string">N</strAddonAWD>
            <strAddonAirCon xsi:type="xsd:string">N</strAddonAirCon>
            <strCoverCode xsi:type="xsd:string">10002142</strCoverCode>
            <strProductInfoHandOverDateTime xsi:type="xsd:string">10/06/2016</strProductInfoHandOverDateTime>
            <strOptinDateTime xsi:type="xsd:string">11/06/2016</strOptinDateTime>
            <strUniqueReference xsi:type="xsd:string">UNIQ_REF_1234321</strUniqueReference>
        </PostPolicyStringsReduced>
    </soap:Body>
</soap:Envelope>

Response

<s:Envelope
        xmlns:s="http://schemas.xmlsoap.org/soap/envelope/">
    <s:Body
            xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
            xmlns:xsd="http://www.w3.org/2001/XMLSchema">
        <PostPolicyStringsReducedResponse
                xmlns="http://tempuri.org">
            <PostPolicyStringsReducedResult>
                <Status>Success</Status>
                <PolicyDocURL>https://integration.autoprotect.net/Document/Download/************************************/Policy Pack.pdf</PolicyDocURL>
                <PolicyNumber>10196645</PolicyNumber>
            </PostPolicyStringsReducedResult>
        </PostPolicyStringsReducedResponse>
    </s:Body>
</s:Envelope>

Key fields

For further clarification the following fields are explained in more detail.

Field Usage
strUserName strPassword The dealer's autoprotect user credentials
strActivatePolicy_YN if the policy has multiple sections, will be 'Y' on the last policy section received for the policy. In quoted state the policies are matched by quoted status, VRN and strPolicyNumber field
strFinancePolicy_YN Y for premium funding policy, strCustomerDOB, strBankAccountName, strBankAccountNumber, strBankAccountNumber, strPrefPaymentDate will be required for financed policies
strFinance_YN Y for when the Vehicle is being purchased through a finance plan (e.g. PCP or HP). Has no impact on premium funding.
strPolicyAlreadyFunded_YN Introduced for F45 only - indicates when the supplied funding provider is not Premium Credit. Cannot be supplied with 'Y' whilst 'strFinancePolicy_YN' is also 'Y'!
strVehicleReg an Experian lookup will be executed for this registration number to resolve the glass model id of the vehicle
strLengthOfCover length of the cover in moths, it has to match the RangeTo value configured in ApAdmin for the product base rate card
strClaimLimitValue claim limit in pounds, it has to match the RangeTo value configured in ApAdmin for the product base rate card
strCoverCode the policy type id configured in ApAdmin

Other Fields

Most other fields are described by their names for example strCustomerSurname is the Customer Surname. And strChassisNumber is the ChassisNumber/VIN.

Some fields require a number representing a choice from a list:

Field Usage
strVehicleClassType 0: Car; 1: LCV; 2: Motorcycle
strVehicleUse 1: Private; 2: Commercial; 3: Hire & Reward; 4: Motability; 5: Lifestyle; 12: On Road; 13: Off Road; 14: Business Use

Multiple Policy Sections or Covers

For multiple products per policy you have to make multiple SOAP requests to our service endpoint https://integration.autoprotect.net/TCF/RemotePolicyMaintenance.svc. strActivatePolicy_YN should be set to Y on the last product of the policy to indicate the policy is complete and intimate activation and PDF document generation. This means intermediary calls to the service, before activating the policy, will not return any PolicyDocURL value in the result dataset.

Multiple calls for the same VRN and strPolicyNumber will update the customer name and address with the most recent data received. If a cancelled policy is matched with the above details, an error will be returned.

Assumptions

  • Requests will be aggregated using the strVehicleReg, strCustomerForename and strCustomerSurname request
  • fields

Example request

<?xml version="1.0" encoding="UTF-8"?>
<soap:Envelope
        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
        xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/"
        xmlns:xsd="http://www.w3.org/2001/XMLSchema" soap:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
        xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
    <soap:Body>
        <PostPolicyStringsReduced xmlns="http://tempuri.org">
            ...
            <strActivatePolicy_YN xsi:type="xsd:string" >Y</strActivatePolicy>
            <!-- Y/N values, Y for flagging the last product of the policy and activation, N for keeping the policy in Quoted state -->
            ...
        </PostPolicyStringsReduced>
    </soap:Body>
</soap:Envelope>

Intermediary Response

<s:Envelope
        xmlns:s="http://schemas.xmlsoap.org/soap/envelope/">
    <s:Body
            xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
            xmlns:xsd="http://www.w3.org/2001/XMLSchema">
        <PostPolicyStringsReducedResponse xmlns="http://tempuri.org">
            <PostPolicyStringsReducedResult>
                <Status>Success</Status>
                <PolicyNumber>10196645</PolicyNumber>
                <!-- PolicyDocURL missing or empty value. Will be set only when the strActivatePolicy_YN = Y -->
            </PostPolicyStringsReducedResult>
        </PostPolicyStringsReducedResponse>
    </s:Body>
</s:Envelope>

Premium credit finance

The following fields and assumptions apply to premium credit:

  • Request will be sent on the final request (strActivatePolicy_YN = Y)
  • On a premium credit request error the Status of the result will be set as Error and a Message will be returned.
  • CreditAgreementDate – Our system will default this value to today's date if not supplied
  • The following existing fields will have no impact over premium credit finance:
<strFinance_YN>Y</strFinance_YN>
<strFinanceCompanyName xsi:type="xsd:string" />

Example request

<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope
        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
        xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/"
        xmlns:xsd="http://www.w3.org/2001/XMLSchema" soap:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
        xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
    <soap:Body>
        <PostPolicyStringsReduced
                xmlns="http://tempuri.org">...

            <strFinancePolicy_YN>Y</strFinancePolicy_YN>
            <!-- Y/N values, Y ? Submit premium credit request, N or blank for no premium credit -->
            <strBankAccountName xsi:type="xsd:string">Joe Bloggs</strBankAccountName>
            <!-- Customer Bank Account Name Must not be blank. Max Length: 18 -->
            <strBankAccountNumber xsi:type="xsd:string">12345678</strBankAccountNumber>
            <!-- Customer's Bank Account Number. Must be an 8-digit number. Zero fill to left. Max Length: 8 -->
            <strBankSortCode xsi:type="xsd:string">123456</strBankSortCode>
            <!-- Customer's Bank Sort Code. Must be a valid bank Sort Code. Max Length: 6 -->
            <strCustomerDOB xsi:type="xsd:string">01/01/1980</strCustomerDOB>
            <!-- Customer DOB. This is the customer's DOB for use as a means of authentication. -->
            <strPrefPaymentDate xsi:type="xsd:string">01</strPrefPaymentDate>
            <!-- Preferred Payment Date. The New Collection Day for Direct Debit Collections, to be applied to the customer's Master Record by PCL. If set, must be a number from '01' to '31' representing the day-of-the-month on which future Direct Debit Collections for the customer will be scheduled by PCL. A Collection Day matching that of the Inception (Contract) Date shown on the customer's Master Record will cause PCL to schedule collections on the same day-of- the-month as the Inception Date. -->
            <strCustomerTelephone xsi:type="xsd:string" />
            <!-- Existing field. Make sure it's filled in. Seems not to be required by premium credit, but all our dealers are required to fill in this field -->
            <!-- Existing fields. Make sure the values are present. -->
            <strCustomerTitle xsi:type="xsd:string">Mrs</strCustomerTitle>
            <strCustomerForename xsi:type="xsd:string">J</strCustomerForename>
            <strCustomerSurname xsi:type="xsd:string">Test</strCustomerSurname>
            <strCompanyName xsi:type="xsd:string" />
            <strCustomerAddress1 xsi:type="xsd:string">Stapeley House London Road</strCustomerAddress1>
            <strCustomerAddress2 xsi:type="xsd:string">Stapeley</strCustomerAddress2>
            <strCustomerAddress3 xsi:type="xsd:string">NANTWICH,Cheshire</strCustomerAddress3>
            <strCustomerAddress4 xsi:type="xsd:string" />
            <strCustomerAddress5 xsi:type="xsd:string" />
            <strCustomerPostCode xsi:type="xsd:string">CW5 7JW</strCustomerPostCode>...
        </PostPolicyStringsReduced>
    </soap:Body>
</soap:Envelope>

Testing

The SoapUI application can be used for testing the service, please use the URL specified in the Interface section above with the ?WSDL suffix (e.g. https://dc-uat-integration.autoprotect.net/TCF/RemotePolicyMaintenance.svc?WSDL) and enable WS-A addressing with the action specified in the same Interface section from above.

results matching ""

    No results matching ""