Show/Hide Toolbars

How to set up Purchase Pre-requisites

Note:
The CWT will upload its configuration to WebOffice on reboot with a cwtconfig.xml file available on the SD card. It any article and/or Tariffpackage with the same ID exist in WebOffice this will be overwritten.

 

PAYMENT element

set the parameter ongoingPurchaseDatabaseLocation to "Global"

Example

<PAYMENT tickFactor="100" currency="978" defaultVAT="2500" ongoingPurchaseDatabaseLocation="Global"/>

 

PAYMENTSERVICE element

Set the parameter purchasePreRequisitesMode to Online

Set the parameter ongoingPurchaseDatabaseReplication to AtPurchase

Example

<PAYMENTSERVICE paymentServiceId="1"
  name="PrePay"
  userIdentifier="Code"
  ticketRemovalTimer="30"
  autoCardPay="true"
  articleChoice="true"
  defaultArticleId="1"
  tariffChoice="false"
  defaultTariffId="1"
  overpayment="Confirm"
  addPay="NewBuy"
  purchasePreRequisitesMode="Online"
  ongoingPurchaseDatabaseReplication="AtPurchase" >

 

TARIFFPACKAGE element

Create a Tariff Package for Pre-Requisites.

Example of a tariff where the third party replies with a Tariff ID.

See REST or SOAP for an explanation.

This Tariff Package will be used to calculate the amount to pay, to print a ticket and to send a purchase to WebOffice.

  <TARIFFPACKAGE name="PreReqFixedParking" tariffPackageId="15001">
    <ticket ticketType="PrePayCheckIn" ticketId="0" />
    <ticket ticketType="Normal" ticketId="0" />
    <description row="0" col="0" string="Paidparking@" />
    <description row="0" col="1" string="€ 6 / @hour@" />
    <description row="1" col="0" string="Mon@ @tm@ @Sat@:" />
    <description row="1" col="1" string="07.00-19.00" />
    <description row="2" col="0" string="ShoppingSunday@" />
    <description row="2" col="1" string="12.00-19.00" />
    <tariff>
     PACKAGE "PreReqFixedParking";
     min ticks = 1;
     max paid units = 600;
 
     INTERVAL "DAYS weekdays";
     timepredicate = "((($daytype = 0) or($daytype = 1) or($daytype = 5)) and ($hour in [07 to 19[))";
     tariffrate = linear 6 per 60;
 
     INTERVAL "Shopping sunday";
     timepredicate = "((($daytype = 3)) and ($hour in [12 to 19[))";
     tariffrate = linear 6 per 60;
 
     INTERVAL "FREE" : priority 0;
     timepredicate = #always;
     tariffrate = flat 0 until end of interval;
  </tariff>
  </TARIFFPACKAGE>

Example of a Tariff Package where the customer pays on an external page and insert a reference ID in the terminal

This Tariff Package is used to create a ticket and send a zero-amount purchase to WebOffice.

  <TARIFFPACKAGE name="CNPFallback" tariffPackageId="10003">
    <ticket ticketType="PrePayCheckIn" ticketId="0" />
    <description row="0" col="0" string="Payedparking@" />
    <description row="0" col="1" string="€ 0,90 / @hour@" />
    <description row="1" col="0" string="Mon@ @tm@ @Sat@:" />
    <description row="1" col="1" string="09.00-19.00" />
    <description row="2" col="0" string="ShoppingSunday@" />
    <description row="2" col="1" string="12.00-19.00" />
    <tariff>
     PACKAGE "CNPFallback";
     min paid units = 5;
     max paid units = 600;
 
     INTERVAL "DAYS weekdays";
     timepredicate = "((($daytype = 0) or($daytype = 1) or($daytype = 5)) and ($hour in [09 to 19[))";
     tariffrate = linear 90 per 60;
 
     INTERVAL "Shopping sunday";
     timepredicate = "((($daytype = 3)) and ($hour in [12 to 19[))";
     tariffrate = linear 90 per 60;
 
     INTERVAL "FREE" : priority 0;
     timepredicate = #always;
     tariffrate = flat 0 until end of interval;
  </tariff>
  </TARIFFPACKAGE>

 

ARTICLE element

For a set up where the customer purchase parking space and time on an external site:

Create an ARTICLE for the “Purchase Pre-Requisites”.

Set the parameter acceptZeroPurchase to true.

Create a sub-element deliverables with the ticket setting matching your set up. The ticket ID shall match the ticket to print.

Example

  <ARTICLE acceptZeroPurchase="true" articleId="10003" name="ClickNPark" useCommonTariffs="false" defaultTariffId="10003" autoSelectTariff="true">
    <paymentService id="1" />
    <deliverables>
        <ticket ticketType="PrePayCode" ticketId="1" />
        <ticket ticketType="Normal" ticketId="1" />
    </deliverables>
  </ARTICLE>

 

For a set up where the third party responds with a Tariff Package ID or an Amount to pay:

Important:
All parties; WebOffice, CWT, and Third party; must have the same Tariff Package defined.

Create an ARTICLE for the “Purchase Pre-Requisites”.

Create a sub-element deliverables with the ticket setting matching your set up. The ticket ID shall match the ticket to print.

Example

  <ARTICLE articleId="10002" name="Prereq" useCommonTariffs="false" defaultTariffId="15000" autoSelectTariff="true">
    <paymentService id="1" />
    <deliverables>
        <ticket ticketType="PrePayCode" ticketId="0" />
        <ticket ticketType="Normal" ticketId="0" />
    </deliverables>
  </ARTICLE>

 

ARTICLETARIFFGROUP element

Create an ARTICLETARIFFGROUP element to link the ARTICLE and the TARIFFPACKAGE together.

example

  <ARTICLETARIFFGROUP articleTariffGroupId="0" articleId="10002">
    <buttonControlledPackage id="01" tariffPackageName="PreReqFixedParking" />
  </ARTICLETARIFFGROUP>

 

TICKET element

Create a TICKET for the pre-requisites purchases to display e.g. the purchase number from the external site.

Example of a simple ticket

  <TICKET ticketId="1" height="300" width="380" orientation="Landscape" layout="@f32@y4@x5ClickAndPark - valid to@y10@x5@f48@lu@v111 @v15 @ll@v10 @v13@y15@x5@v86@y22@x5@ln@f48License plate: @v46@y28@x5@f32@y32@x5Arrival: @v88 @v90@y35@x5@f24MeterId: @v33@dx1PurchaseNumber: @v34@dx1Tariff ID: @v203">
    <margin left="0" right="0" top="65" bottom="0" />
  </TICKET>

Figure 2, Example of a ticket

Figure 2, Example of a ticket