Please enable JavaScript to view this site.

CWT Software Configuration Handbook 4.40

Navigation: Reference Guide CWTCONFIG.XML

PAYMENTSERVICE element

Scroll Prev Top Next More

Element        Path: <cwt><PAYMENTSERVICE>

The PAYMENTSERVICE element is used to set up different payment methods. E.g. if the terminal allows for payment with coin and card and can handle post payment. Post payment purchases can only be made with Credit cards or fleet cards. To allow an end user to pay with coin 2 payment services are made. The first one for post payment as the default payment method. In this service is an inputrule configured to point to the second payment service for prepay with coin.

rebootWhen a new pay unit is added

activityTimer

Value:0 to 4,294,967,295
Default:60,000
Description:Time-out in ms before returning to idle mode due to inactivity when navigating in help or information panels.

additionalFreeMinutesArticleId

Value:0 to 65535
Default:N/A
Description:The Article to use for additional free minutes purchase.
This attribute sets the article that will contain the additional free minutes purchase. This is only necessary if you need to log the free minutes in WebOffice.

additionalPaymentAllowedWhenIdentifierExpired

Value:NewPurchaseFromEndDate, ContinuePurchaseFromEndDate, true, false
Default:false
Description:If set to true, the user is allowed to make an additional payment to extend the parking session when receiving "Identifier Expired" from purchase prerequisites.

When set to ContinuePurchaseFromEndDate or true the additional cost is calculated from start date to now minus ticks already paid (tariff is continuous).

When set to NewPurchaseFromEndDate the additional cost is calculated from end date to now (tariff is restarted).

When set to false additional payment to extend the parking session is not allowed.

adjustStartDate

Value:true, false
Default:false
Description:This attribute is used to fix a wrong startDate. I.e. when startDate is greater than endDate.
This happens when CWT receives a wrong startDate from a third party using purchase prerequisites.
Setting adjustStartDate to true will change startDate=endDate

aggregatedPurchaseAllowedWhenIdentifierExpired

Value:true, false
Default:false
Descrpition:This will allow a continuation of a progressive  tariff calculation from the expiration time. Elapsed time since the previous parking end time will be used as an offset to adjust the final start and end time for the continued parking.

aggregatedPurchaseDurationIsPaidTime

Value:true, false
Default:false
Description:Data for a previous parking is used by the tariff engine to only consider duration as time that must be paid for. Any free intervals in the tariff will be jumped over until the  number of minutes for the paid duration is met.

aggregatedPurchaseDurationTariff

Value:true, false
Default:false
Description:The terminal can enforce a progressive tariff rate for non-continuous purchase extensions.
The tariff is calculated based on the aggregated previous purchase duration which is retrieved from WebOffice using a Purchase pre-requisites response.

Note:
purchasePreRequisitesMode="Online" and startDateFromPreReq="true" attribute should be configured

articleChoice

Value:true, false
Default:false
Description:Enables article selection in the PAT selection process.

autoCardPay

Value:true, false
Default:false
Description:true = Automatic button press enabled.
This attribute is part of the PAT-selection process described in PAT selection.
This function works for all Card readers from CWT application version 2.34
Post payment step scenario: The attribute controls whether a value button for credit cards should be pressed automatically to reach the minimum amount you will be charged for when you check out.

Note:
When not using the "min ticks" in the tariff or setting it to zero, the tariff engine will take the least possible amount to pay and set this as ticks to pay.
E.g. with a tariff rate 1.00€  = 100 ticks per 60 minutes this will result in a minimum amount to pay of 0.02€. (1.00€/60 = 0.0166667€. Rounded this gives 0.02€).
Set the autoPayCard to false if no minimum ticks are used.

Prepayment scenario: The attribute controls whether value buttons or step buttons for credit cards should be pressed automatically to reach the minimum amount to pay.

autoReject

Value:None,
IfRestrainExceeded
Default:None
Description:The attribute controls if the purchase should be rejected automatically if a tariff restriction (blocked or max.) is exceeded.
None = Purchase not rejected.
IfRestrainExceeded = Purchase rejected if tariff restriction is exceeded.

autoSelectArticle

Value:true / false
Default:true
Description:Enables automatic selection of Article when a Payment Service is selected, and the current Article and the default Article are not valid.
true = Automatic Article selection enabled.
This attribute is part of the PAT selection.

autoTicket

Value:None,
IfRestrainReached,
IfRestrainReachedAndPaid,
IfRestrainReachedOrExceeded,
IfRestrainReachedOrExceededAndPaid
Default:None
Description:The attribute controls if the ticket should be printed automatically if a tariff restriction is reached or exceeded.

None = Automatic printing disabled.
All other values = Automatic printing enabled if restriction is reached.

Note: Not valid for payment services with step=”true”

buyTimer

Value:0 to 4,294,967,295
Default:240,000
Description:Time-out in milliseconds before a purchase is rejected due to inactivity after a purchase has been started with a coin insertion, a card swipe or a value button depression.

cardDataAsInputTextAutoClick

Value:true, false
Default:false
Description:Defines if the button will be auto clicked when card data as input is available according to cardDataAsInputTextFormat.
ButtonId 1006 will be clicked if this is enabled.

cardDataAsInputTextFormat

Value:string of ticket variables
Default:N/A
Description:When a card is inserted, the current UI input text can be populated with text from ticket variables. At card insertion, ticket variables for masked pan and expiry date are available.
If this parameter is set, data is sent to the current input text at card insertion. The data format is defined by this attribute.
E.g. If cardDataAsInputTextFormat = “@v49-@v50" then a “<masked pan>-<expiry date>” string is sent to input text at card insertion.

See Ticket layout for ticket variable details.

checkIn

Value:Auto,
Confirm
Default:Auto
Description:The attribute controls whether Check-In should be confirmed or performed automatically, i.e. whether PostPay_Panel1 should appear or not.

checkInTicket

Value:Yes,
No,
Confirm,
ConfirmAfterAuthorization
Default:-
Description:configures the printing of the check-in ticket. If not configured the system uses the value from the ticket attribute.
Yes: Ticket printed automatically.
No: No ticket printed
Confirm: A yes/No question is stated when ticket is to be printed.
ConfirmAfterAuthorization: the yes/No question is stated after the authorization.

checkout

Value:Auto,
Confirm
Default:Auto
Description:The attribute controls whether Check-Out should be confirmed or performed automatically, i.e. whether PostPay_Panel5 should appear or not.

checkOutTicket

Value:Yes,
No,
Confirm
Default:-
Description:configures the printing of the check-out ticket. If not configured the system uses the value from the ticket attribute.
Yes: Ticket printed automatically.
No: No ticket printed
Confirm: A yes/No question is stated when ticket is to be printed.

countrySelectionBeforeStartPurchase

Value:true, false
Default:true
Description:The attribute controls if Country Selection is required before starting the purchase, i.e. before entering coins or card.
If set to true, a country must be selected before pay units are enabled for purchase

debitAttempts

Value:1 to 10
Default:1
Description:The attribute controls the number of debit attempts before rejecting. If a debit fails, the UI backs to payment panel 1 and the user can press accept/debit to try another debit. When number of debit attempts is reached, a debit fail will reject the whole purchase.
example:1 = One attempt before rejecting the whole purchase

declineTicket

Value:Yes,
No,
Confirm
Default:No
Description:Determines if a Decline ticket is printed on a card transaction.

decreaseLeftToPayWhenCashIsPaid

Value:true, false
Default:true
Description:Determines if the additional cash payment is subtracted from the card payment. This attribute controls the behaviour of the payment calculation when paying with Card and then with Coins. When a mixed payment is made at a meter with coins and then card, the additional payment is added to the coin payment made so far. However, if a payment is made with Card and then coin, the meter by default subtracts the coin value from the card entry first, and then starts to add. Confusion may occur because the customer perceives that the additional payment was taken by the meter without getting parking time.
true: the cash will be subtracted
false: the cash will NOT be subtracted

WARNING! This allows the Credit Card to charge less than the minimum amount.

defaultArticleID

Value:0 to 65535
Default:0
Description:Sets the default Article ID to use when no Article is set, or the selected Article is not valid.
This attribute is part of the PAT selection.

defaultTariffId

Value:–1 (Off),
0 to 2147483647
Default:0
Description:The default Tariff id (Tariff Package id) is used when a Payment Service is selected, and the current Tariff Package is not valid.
This attribute is part of the PAT selection.

defaultTickLimitFirstStepFromBalanceAccount

Value:0 to 2147483647
Default:-
Description:This attribute allows the user to configure number of ticks to start with when using a BalanceAccount. The amount/ticks can later be adjusted by the user using step buttons. Note! This attribute is not used when starting a purchase with coins.
Optional. If omitted treated as “not in use”, i.e. max amount will be loaded.
Example:<PAYMENTSERVICE paymentServiceId="3" name="Azul_Monedas" forceCodeInputAfterFirstCoin="true" userIdentifier="Code" ticketRemovalTimer="30" ticketMode="TicketAfterAccept" articleChoice="false" defaultArticleId="1" tariffChoice="false" defaultTariffId="1" addPay="NewBuy" overpayment="Accept" overpaymentArticleId="45454" refundArticleId="45455" autoReject="None" ongoingPurchaseDatabaseReplication="AtPurchase" decreaseLeftToPayWhenCashIsPaid="false" userSelectedOverPaymentLimit="true" defaultTickLimitFirstStepFromBalanceAccount ="25">
  <payUnit name="Coin" />
  <payUnit name="Ext1" />
</PAYMENTSERVICE>

dependentOf

Value:Bill, Coin, Card, Ext0,…, Ext8
Default:-
Description:Normally the Payment Service is dependent of the included pay units defined by sub-tag <payUnit>. If there is at least one of the included pay units functional, the Payment Service will be functional. With this attribute it is possible to define stricter dependencies. All the defined pay units in this attribute must be functional for the Payment Service to be functional.

It is with this attribute possible to define stricter dependencies with a list of other pay units.

With logical “and” all the defined pay units in this attribute must be functional for the Payment Service to be functional. The separator “,” is the same as “and”.

With logical “or”, any of the defined pay units in this attribute must be functional for the Payment Service to be functional.

It is not allowed to combine “or” and “and”

Example:<PAYMENTSERVICE dependentOf="Coin">  
 <payUnit name="Coin" />
 <payUnit name="Ext1" />
</PAYMENTSERVICE>  

Pay unit Coin must be functional for this Payment Service to be functional.

Example:<PAYMENTSERVICE dependentOf="Ext3 and Ext4">  
 <payUnit name="Card" />
 <payUnit name="Ext1" />
</PAYMENTSERVICE>  

Pay unit Ext3 and Ext4 must be functional for this Payment Service to be functional.

Example:<PAYMENTSERVICE dependentOf="Ext3 or Ext4">  
 <payUnit name="Card" />
 <payUnit name="Ext1" />
</PAYMENTSERVICE>  

Pay unit Ext3 or Ext4 must be functional for this Payment Service to be functional.

disableAllButCurrentUsedPayUnit

Value:true, false
Default:false
Description:The pay unit the purchase started with will be the only pay unit available during the purchase. I.e. Mixed payment is disabled.

forceCodeInputAfterFirstCoin

Value:true, false
Default:false
Description:When set to true the coin antipin will close and the CodeInputPanel will be displayed directly after a coin has been inserted.
This attribute is used to force the user to enter their code (typically license plate number) after the first coin has been inserted.
Example:<PAYMENTSERVICE paymentServiceId="3" name="Azul_Monedas" forceCodeInputAfterFirstCoin="true" userIdentifier="Code" ticketRemovalTimer="30" ticketMode="TicketAfterAccept" articleChoice="false" defaultArticleId="1" tariffChoice="false" defaultTariffId="1" addPay="NewBuy" overpayment="Accept" overpaymentArticleId="45454" refundArticleId="45455" autoReject="None" ongoingPurchaseDatabaseReplication="AtPurchase" decreaseLeftToPayWhenCashIsPaid="false">
  <payUnit name="Coin" />
  <payUnit name="Ext1" />

forcePaymentServiceSelectionAtPurchasePrerequisites

Value:true, false
Default:false
Description:If enabled, it is allowed to select payment service at purchase prerequisites even though the article is activated

forcePaymentServiceSelectionAtTopUp

Value:true, false
Default:false
Description:If enabled, it is allowed to select payment service at space selection even though the article is activated during top up

Group

Value:string
Default:-
Description:The payment service can be included in a group. The group name can be used in the user interface to show specific panels that are connected to the group.
User Interface group name.

See CWT User Interface Design Handbook.

historyBasedTariffUsingPurchasePreRequisites

Value:true, false
Default:false
Description:The terminal can enforce a progressive tariff rate for non-continuous purchase extensions.
The tariff is calculated based on the aggregated previous purchase history which is retrieved from WebOffice using Purchase pre-requisites.

inhibitOnAccept

Value:true, false
Default:true
Description:The attribute defines whether or not an inhibit command should be sent before the accept command is sent to all involved pay units when a purchase is being accepted.
true = Inhibit command precedes accept command.

inhibitUntilCodeInputDone

Value:true, false
Default:false
Description:When set to true, this will inhibit all pay units until code input is done. This will prevent user from starting any payments until code (e.g. license plate) is provided.

lockCurrentPATAtCardInserted

Value:true, false
Default:false
Description:Prepayment scenario:

The attribute controls whether the currently selected PAT should be locked when a card is inserted. If set to true it prohibits further PAT selections after a card is inserted.

Note that if AutoCardPay is used this attribute has no effect.

true = prohibits further PAT selections after a card is inserted.

This attribute is part of the PAT-selection process described in PAT selection.

name

Value:Any number of characters
Default:-
Description:Name of the PAYMENTSERVICE.  Any character can be used.
The name can be presented in the user interface.

maxSetBackStartDateTimeInMinutes

Value:0 to 71581 minutes (49 days)
Default:10
Description:Setting to select how far back in time it shall be possible to select time with the click-function: OnSetStartDate.

ongoingPurchaseDatabaseReplication

Value:None,

AtPurchase,

RequiredForPurchase,

RequiredForPurchaseFallback,

AtPurchaseSmsFallback,

RequiredForPurchaseFallbackAndSmsFallback,

AtPurchaseSmsAsPrimaryDelivery,

RequiredForPurchaseAfterCardValidation,

RequiredForPurchaseAfterCardValidationFallback,

RequiredForPurchaseAfterCardValidationFallbackAndSmsFallback

Default:None
Description:Defines when the ongoing purchase information shall be sent to the location defined by the attribute ongoingPurchaseDatabaseLocation. If “None” is selected the ongoing purchase information will not be sent at all.

See Ongoing Purchases for a complete description

Note: This attribute is also available in <PAYMENT>. Setting the attribute in <PAYMENT> will act as default and any value set in <PAYMENTSERVICE> will override this setting when that payment service is selected

If None is selected the ongoing purchase information will not be sent at all.

If AtPurchase is selected the ongoing purchase information will be sent after the purchase.

If RequiredForPurchase is selected the ongoing purchase information is sent synchronously during the purchase.

If RequiredForPurchaseFallback is selected the ongoing purchase information is sent synchronously during the purchase. And if there is no response from third party the ongoing purchase information will be sent after the purchase

If AtPurchaseSmsFallback is selected the ongoing purchase information will be sent after the purchase.

If the normal data communication for WebOffice fails. A reduced set of ongoing purchase data will be sent in a SMS.

If RequiredForPurchaseFallback is selected the ongoing purchase information is sent synchronously during the purchase. And if there is no response from third party the ongoing purchase information will be sent after the purchase. If the normal data communication for WebOffice fails. A reduced set of ongoing purchase data will be sent in a SMS.

If AtPurchaseSmsAsPrimaryDelivery is selected a reduced set of ongoing purchase data will be sent after the purchase in a SMS as the primary online synchronization. The complete ongoing purchase information will be sent in a regular heartbeat.

If RequiredForPurchaseAfterCardValidation is selected the ongoing purchase information is sent synchronously during the purchase, after card validation is done.  (in cAcceptPhase_8_ValidateCardOnAccept)

If RequiredForPurchaseAfterCardValidationFallback is selected the ongoing purchase information is sent synchronously during the purchase, after card validation is done. And if there is no response from third party the ongoing purchase information will be sent after the purchase.

If RequiredForPurchaseAfterCardValidationFallbackAndSmsFallback is selected the ongoing purchase information is sent synchronously during the purchase, after card validation is done. And if there is no response from third party the ongoing purchase information will be sent after the purchase.

Example:        <PAYMENT ongoingPurchaseDatabaseLocation="Global" ongoingPurchaseDatabaseReplication="None"/>
<PAYMENTSERVICE paymentServiceId="0" name="PS1">
  <payUnit name="Coin"/>
</PAYMENTSERVICE>
<PAYMENTSERVICE paymentServiceId="1" name="PS2" ongoingPurchaseDatabaseReplication="RequiredForPurchase">
  <payUnit name="Coin"/>
</PAYMENTSERVICE>
<PAYMENTSERVICE paymentServiceId="2" name="PS3" ongoingPurchaseDatabaseReplication="AtPurchase">
  <payUnit name="Coin"/>
</PAYMENTSERVICE>

ongoingPurchaseDefaultDescription

Value:String
Default:-
Description:Used when No Response from Third party.

Note: If this attribute is not set and the CWT cannot connect to WebOffice, the name of the label will be used to display.

ongoingPurchaseDefaultExternalId

Value:String
Default:-
Description:Used when No Response from Third party.

ongoingPurchaseFallbackTicket

Value:Yes,
No,
Confirm
Default:No
Description:This attribute sets if a ticket with default information shall be printed if the CWT cannot get a confirmation from WebOffice.
Yes: Ticket printed automatically.
No: No ticket printed
Confirm: A yes/No question is stated when ticket is to be printed.

ongoingPurchaseRejectTicket

Value:Yes,
No,
Confirm
Default:No
Description:This attribute sets if a ticket shall be printed when an ongoing purchase is rejected by the provider
Yes: Ticket printed automatically.
No: No ticket printed.
Confirm: A yes/No question is stated when ticket is to be printed.

overpayment

Value:Accept,
Reject,
Confirm,
ProhibitAccept
Default:Accept
Description:The attribute controls the behaviour at overpayment (for instance if the tariff is 4 SEK for 1 hour and a 5 SEK coin is paid).
Accept = The purchase is accepted if overpayment is detected at Accept.
Reject = The purchase is rejected if overpayment is detected at Accept.
Confirm = The purchase must be confirmed (UI: “Confirm OverpaymentPopup”) if overpayment is detected at Accept.
ProhibitAccept = It is not possible to Accept purchase if overpayment is detected at Accept.

Note: For tariffs that use Units and are not linear.

overpaymentArticleId

Value:0 to 65535
Default:-
Description:Article ID for overpayment account credit. If not set in the configuration, no overpayment article will be used.
This attribute sets the article ID to use for overpaid amount due to tariff calculation rounding. Applicable when <cwt><TARIFFPACKAGE><tariff roundingRule="PayForWholeUnit"> which is the default rounding rule.
Example:Rate r = $8/h = 800 cent/h. Insert $1 = 100cent
For 100 cent you get: 60/800×100 = 7,5 minutes => round down => 7 minutes
7 minutes costs: 800/60×7=93,333 cent
Overpaid: 100 - 93,333-100 = 6,6666 cent which is rounded to 7 cent in WebOffice

<PAYMENTSERVICE paymentServiceId="3" name="Azul_Monedas" forceCodeInputAfterFirstCoin="true" userIdentifier="Code" ticketRemovalTimer="30" ticketMode="TicketAfterAccept" articleChoice="false" defaultArticleId="1" tariffChoice="false" defaultTariffId="1" addPay="NewBuy" overpayment="Accept" overpaymentArticleId="45454" refundArticleId="45455" autoReject="None" ongoingPurchaseDatabaseReplication="AtPurchase" decreaseLeftToPayWhenCashIsPaid="false">
  <payUnit name="Coin" />
  <payUnit name="Ext1" />
</PAYMENTSERVICE>

paymentServiceId

Value:0 to 65535
Default:Automatic setting
Description:The id number is automatically set if not defined in the configuration file (see Automatic setting of attributes ).

The id must be unique

pollSensorWhenPaperLeftInPresenter

Value:true, false
Default:false
Description:If set to true, polling of the take ticket sensor will start if the ticket is not taken after the purchase. There will be a paper left in presenter partial error event reported directly. When the ticket is taken the partial error will be reset.

Note:
This functionality only works if the attribute ticketRemovalTimer is set to a positive integer value.

This feature is currently only available for the Flowbird printer.
This sensor is standard not available.

postPay

Value:true, false
Default:false
Description:true = Post payment is used.

postPayStartWithCard

Value:true, false
Default:true
Description:If false, the post payment flow can be started with card. The normal flow is start with card.
If set to false, the flow must begin with selecting check-in or check-out (this is normally done by the system when starting with card). When not starting with card, the flow enables check-in with a single tap for contact-less cards. This is not supported by all pay units.

purchasePreRequisitesLoginAuthCodeNotValidAnswerString

Value:string
Default:-
Description:Local configured externalDescription response code if the entered code is not valid. I.e. empty in online validation.

purchasePreRequisitesMode

Value:None,
Online,
OnlineWithOfflineFallback,
OnlineWithOfflineFallbackIdIsCode,
ReportAuxGuidAsId
Default:None
Description:None:
Purchase pre-requisites not enabled

Online:
Purchase pre-requisites is retrieved online when identifier is given. A successful connection to pre-requisites server is required to fullfull the purchase.

OnlineWithOfflineFallback:
Purchase pre-requisites is retrieved online when identifier is given. If communication fails purchases can still be made with the tariffs configured in cwtconfig.

OnlineWithOfflineFallbackIdIsCode:
Same as OnlineWithOfflineFallback, but Code will be Prerequisites ID if Offline

ReportAuxGuidAsId:
If no identifier is entered in the UI, a GUID is generated in core and used as identifier. This is used to create sessionId for use with extpu: OnlineParkingSession.dll

questionTimer

Value:0 to 4,294,967,295
Default:60,000
Description:Time-out in ms before rejecting a purchase due to inactivity when a question is asked.

recall

Value: true, false, Yes, No, Confirm
Default:false
Description:The attribute is used to enable the Recall functionality, which remembers information like license plate number, phone number or email that a parker has entered in a previous purchase. The next time the parker makes a purchase in the terminal the user details will be pre-populated in the display.
The user details are stored in the WebOffice database. This table does not have a user        interface. Removal of this data must be done manually by a developer.
true & Yes = The Recall functionality is enabled for this payment service
false & No = The Recall functionality is disabled for this payment service
Confirm = The parker has to confirm the Recall actions.

Note:
Additional configuration may be needed for the PAYUNIT depending on the model of the pay unit installed. See the Recall how to guide for details.

refundArticleId

Value:0 to 65535
Default:-
Description:This attribute sets the article ID to use for refund to a creditable pay unit. If not set in the config no refund will be done.
Example:<PAYMENTSERVICE paymentServiceId="3" name="Azul_Monedas" forceCodeInputAfterFirstCoin="true" userIdentifier="Code" ticketRemovalTimer="30" ticketMode="TicketAfterAccept" articleChoice="false" defaultArticleId="1" tariffChoice="false" defaultTariffId="1" addPay="NewBuy" overpayment="Accept" overpaymentArticleId="45454" refundArticleId="45455" autoReject="None" ongoingPurchaseDatabaseReplication="AtPurchase" decreaseLeftToPayWhenCashIsPaid="false">
  <payUnit name="Coin" />
  <payUnit name="Ext1" />
</PAYMENTSERVICE>

roundUpArticleId

Value:0 to 65535
Default:-
Description:The identifier of the article registering the round up amount and time.
The attribute is used to save the round up data from a purchase in a own article. Units and amount stored in this article is registered in Pay Unit None sine no amount is received.

The corresponding article need to be defined and added in the ARTICLETARIFFGROUP element.

Note:
roundUp article will be generated together with a normal purchase if an overpayment occoured.

The Start date and ticket number will be the same as for the roundUp and original purchase.

Example:Payment service setting

<PAYMENTSERVICE roundUpArticleId="45456" >

Example:Article service setting

<!-- Article for registering round-up units and ticks.-->
<ARTICLE articleId="45456" name="RoundUp" useCommonTariffs="false" autoSelectTariff="false" defaultTariffId="1" VATCategory="1" purchaseCategory="10">
 <paymentService id="1" />
 <deliverables>
         <ticket ticketType="PrePayCode" ticketId="2" />
         <ticket ticketType="ForwardToCWO" ticketId="0" />
 </deliverables>
</ARTICLE>

Example:ArticleTariffGroup settings

<ARTICLETARIFFGROUP articleTariffGroupId="6" articleId="45456">
 <buttonControlledPackage id="1" tariffPackageName="Parking" />
</ARTICLETARIFFGROUP>

resultingBalancePlusUserSelectedOverpaymentMax

Value:0 to 2147483647
Default:0
Description:Resulting balance Max for BalanceAccount and UserSelectedOverpaymentLimit.

0 means no max.

selectFromAllArticles

Value:true, false
Default:true
Description:Defines if article selection shall be possible from all articles defined in the CWT or if it shall be made from the articles belonging to previously selected paymentservice.

selectionTimer

Value:0 to 4,294,967,295
Default:60,000
Description:Time-out in ms before rejecting a selection due to inactivity. A selection is started when the user has started PAT selection or has entered a code such as a licence plate number.

selectPreviousPurchaseArticleAndTariff

Value:true, false
Default:false
Description:The attribute is used when purchase top up is allowed. By default, when a top up purchase is made the same article and tariff package from previous purchase must be selected prior to code input, otherwise the previous purchase is not used. With this attribute set to true the system allows a different article or tariff package being selected at code input. If a previous purchase exists, the article and tariff package from the previous purchase is automatically selected.
true: Automatically select the article and tariff package from previous purchase on code input in a top up purchase

spaceSelection

Value:true, false
Default:false
Description:The attribute is part of the set of attributes that defines the type/behaviour of a Payment Service (see also P PAT selection) for Pay By Space (PBS).

The PBS functionality offers companies the possibility to sell time linked to a parking space. The CWT has the option to allow clients to add time to an existing active purchase; this functionality is called Top-up and can be configured in WebOffice.

The PBS payment service can be linked to several articleTariffGroups, who in turn are linked to several articles. The articles can only contain one tariff package each.

To enable the PBS payment service, add the spaceSelection attribute to the payment service and set to true. The userIdentifier must be set to None for PBS to function properly.

true = Pay by space is enabled for the payment service

Example:<PAYMENTSERVICE paymentServiceId="0" name="PayBySpace"
  postPay="false" ticket="Yes" step="false" userIdentifier="None"
  spaceSelection="true" startPurchaseWithCard="false">
  <payUnit name="Coin"/>
  <payUnit name="Card"/>
</PAYMENTSERVICE>

startDateFromPreReq

Value:true, false
Default:false
Description:Use the start date from a purchase pre-requisites

startPurchaseWithCard

Value:true, false
Default:true
Description:The attribute control whether an inserted card should start a purchase or not. If set to true and the CWT is in idle mode, an inserted card skips the PAT selections if possible and automatically selects the default selection. The CWT then moves forward to the purchase start panel and the payment can be started. If set to false and the CWT is in Idle mode, an inserted card triggers the PAT selection.
true = CWT starts purchase when card is inserted.
This attribute is part of the PAT selection.

startWithCard

Value:true, false
Default:false
Description:The attribute controls if the Card pay units should accept a card before an amount is given to the Card pay unit.
true = Accept card before amount is given.

Note: This attribute cannot be used with collectors that do not accept an authentication with a zero (0) amount.

step

Value:true, false
Default:false
Description:The attribute is part of the set of attributes that defines the type and behaviour of Payment Service. See also PAT selection.

When step=”true” the amount of time to purchase is selected stepwise with a step button via the user interface. The debit of card payments is handled by the card reader module (external pay unit). The CWT does not store any credit card information for later use. A step-based payment service requires a pay unit of type CardCollector, see Pay unit element. true = Stepwise selection of amount or time to purchase.

Post Payment:When using Step in Post Payment (PostPay=true) then the Step function means that the end user selects when automatic checkout will take place if the end user does not checkout. If an EMV card is used, then the amount selected will be authorized.

storeAbortedPurchaseTicketForwardingEmail

Range:true, false
Default:true
Description:When set to false the email address will not be included in aborted purchase table (i.e. no email receipt will be sent for aborted purchase)

storeAbortedPurchaseTicketForwardingPhoneNumber

Range:true, false
Default:true
Description:When set to false the phone number will not be included in aborted purchase table

storeZeroPurchase

Value:true, false
Default:true
Description:Added the possibility to not store purchases with a zero amount for a specific payment service

submitPurchaseState

Value:true, false
Default:false
Description:The attribute is used to enable sending of purchase state data to WebOffice. Purchase state data is used to retrieve from WebOffice purchase data for a previous purchase that is still active.  An active purchase has end time later than current time.

Active purchase state data is saved locally in the terminal data base and in WebOffice.

true = Purchase state data is sent to WebOffice

tariffChoice

Value:true, false
Default:false
Description:Enables Tariff selection in the PAT-selection process.
true = Tariff selection enabled.
This attribute is part of the PAT selection.

ticket

Value:Yes,
Auto,
No,
Confirm
Default:Auto
Description:The attribute controls if a ticket should be printed and if it needs to be confirmed.
Yes = Ticket is printed.
Auto = Ticket is printed.
No = Ticket is not printed.
Confirm = Ticket needs to be confirmed.  UI: “ConfirmTicketPopup” is shown.

ticketMode

Value:TicketAfterAccept,
TicketBeforeAccept
Default:TicketAfterAccept
Description:This command allows you to choose the order in which ticket printout and accept of payment occur.
TicketAfterAccept: Ticket is printed after accept.
TicketBeforeAccept Ticket is printed before accept.

ticketRemovalTimer

Value:0 to 180 seconds
Default:0
Description:The terminal will wait the specified time for the ticket to be removed by the end user. If the ticket is not taken, it will be ejected or retracted when the ticket removal time has expired and the information event "Ticket not taken" is generated and sent to WebOffice during the next WebOffice communication.

0 means feature disabled.

Note:
If the ticket is not taken from the printer when the ticketRemovalTimer is set to a positive integer, the terminal will not return to the idle panel after a purchase until either the ticket is removed, or the timer runs out.

When running a terminal in solar mode, do not set the ticketRemovalTimer to a high value as that may increase the power consumption of the terminal.

Printer:Settings for GeBe gtp4672 printer
If retractEnabled is set to true, the ticket will to be retracted instead of ejected.

Settings for TTP2030 printer type

Important:
This attribute requires special printer settings (see below)

ticketRemovalTimer requires that the following printer settings are included in the printer attribute list. I.e., cwtconfig.xml Zebra TTP2030

Example:<PRINTER>
  <ttp2030>
    <attributes>
        <attribute id="45" value="0" use="true" description="Wastebasket"
          min="0" max="130" />
        <attribute id="57" value="255" use="true" description="System"
          min="0" max="255" />
    </attributes>
  </ttp2030>
</PRINTER>

topUpPurchaseMode

Value:NewPurchaseFromEndDate, ContinuePurchaseFromEndDate, NewPurchaseFromArrivalTimeAndGainRemainingTime
Default:ContinuePurchaseFromEndDate
Description:The attribute controls how top up purchases are made. There are three different ways to top up a purchase.

Note:
The climbing line in the examples does not mean that the price per tick will increase. It just indicates the time that has passed by.

NewPurchaseFromEndDate:

The top up purchase is a new purchase in terms of tariff package (no history). Top up start date is the previous purchase end date.

Example:The end user wants to top the purchase before the end of the previous purchase (top up time). The new purchase will start after the end of the previous purchase and the tariff will be calculated from the beginning of its interval.
NewPurchaseFromEndDate

ContinuePurchaseFromEndDate:

The top up purchase is a continuous purchase in terms of tariff package (history). The amount from previous purchases is retrieved from WebOffice. The Top up start date is the start date of the previous purchase.

Example:The end user wants to top the purchase before the end of the previous purchase (top up time). The Top up start date is the start date of the previous purchase. The tariff will be calculated from the start of the previous purchase
ContinuePurchaseFromEndDate

NewPurchaseFromArrivalTimeAndGainRemainingTime:

The top up purchase is a new purchase in terms of tariff package (no history). Top up start date is the arrival time. The remaining time from previous purchases is retrieved from WebOffice.

Note:
The retrieved time from previous purchase are recalculated to ticks and then reinserted into tariff package calculation. Depending on tariff package and arrival time the retrieved time can exceed previous purchase end date.

Example:newPurchaseFromArrivalTimeAndGainRemainingTime

transactionFeeFixedAmount

Value:0.0 to 10000.0
Default:0.0
Description:Transaction fee fixed amount is added to the purchase amount.

Note:
When any card fee is configured in the card prefix table in WebOffice, any transaction fees will be ignored.

TransactionFeePercent is used if the calculated transactionFeePercent is larger than transactionFeeFixedAmount otherwise transactionFeeFixedAmount will be used

Transaction fees do not work with Post-payment

See the "Fees Explained" how-to guide for a detailed description on the relation between different fees.

Example:Set cardFeePercent=10 and cardFeeFixed=0,15 on the terminal in WebOffice

In the cwtconfig paymentservice set transactionFeePercent=20 and transactionFeeFixedAmount=0,25

Make a purchase for 4,00
the purchase including fees is 4.40 (4 * 10%). I.e. the cardFeePercent is used.

After removing the cardFee in WebOffice a 4.00 purchase is charged 4.80 (4 * 20%). I.e. the transactionFeePercent is used.

transactionFeePercent

Value:0.0 to 10000.0
Default:0.0
Description:Calculated transaction fee percent is added to the purchase amount.

Note:
When any card fee is configured in the card prefix table in WebOffice, any transaction fees will be ignored.

TransactionFeePercent is used if the calculated transactionFeePercent is larger than transactionFeeFixedAmount otherwise transactionFeeFixedAmount will be used

Transaction fees do not work with Post-payment

underpaidArticleId

Value:0 to 65535
Default:-
Description:This attribute sets the article ID to use for underpaid amount due to tariff calculation rounding.

Applicable when <cwt><TARIFFPACKAGE><tariff roundingRule="UnitsUpTicksDownForLinearRates">.

Example:Rate r = $8/h = 800 cent/h. Insert $1 = 100cent

For 100 cent you get: 60/800×100 = 7,5 minutes => round up => 8 minutes

8 minutes costs: 800/60×8=106,666 cent

Underpaid: 106,666 - 100 = 6,6666 cent which is rounded to 7 cent in WebOffice

userIdentifeirInputRestriction

Value:KeyboardOnly,
NoRestriction
Default:NoRestriction
Description:Sets the way the user can enter his identifier. When setting it to KeyboardOnly the user can only use the keyboard otherwise all other options like Card and RFID can be used

userIdentifier

Value:None,
Code
Default:None
Description:The attribute defines how to identify the user.
None = No user identifier used.
Code = User identified by a code, e.g. car license plate.
This attribute is part of the PAT selection.

userSelectedOverPaymentLimit

Value:true, false
Default:false
Description:This attribute allows the user to adjust the amount from entered coins to use as overpayment amount that will be credit to a wallet balance account.
Example:<PAYMENTSERVICE paymentServiceId="3" name="Azul_Monedas" forceCodeInputAfterFirstCoin="true" userIdentifier="Code" ticketRemovalTimer="30" ticketMode="TicketAfterAccept" articleChoice="false" defaultArticleId="1" tariffChoice="false" defaultTariffId="1" addPay="NewBuy" overpayment="Accept" overpaymentArticleId="45454" refundArticleId="45455" autoReject="None" ongoingPurchaseDatabaseReplication="AtPurchase" decreaseLeftToPayWhenCashIsPaid="false" userSelectedOverPaymentLimit="true">
  <payUnit name="Coin" />
  <payUnit name="Ext1" />
</PAYMENTSERVICE>

useWholeBalanceBeforePaidTicks

Value:true, false
Default:false
Description:If enabled: When a balance from a virtual wallet is set, other pay units are disabled until the whole balance is used.
Can be used in combination with userSelectedOverpaymentLimit.

waitForCard

Value:true, false
Default:false
Description:The attribute control whether the application should wait for card rather the pay unit. When stepping an amount and accept is pressed the system wants to pay the remaining ticks with card. If the attribute is set to true, the application is waiting for a card. The popup WaitingForCardPopup is shown if defined when application is waiting for card. If the attribute is set to false, the application determines the first available card pay unit which will be waiting for a card. No popup will be visible.
true = CWT application handles the waiting for a card.

waitForTicket

Value:DoneState, ConfirmPurchaseState
Default:DoneState
Description:This parameter sets when to wait for ticket in the accept statemachine.
DoneState is the end of the accept statemachine.
ConfirmPurchaseState is just before displaying ConfirmPurchasePopup.

Example:

Setup with Post Payment and Prepayment in the same terminal. Post Payment with Card only is default. If a coin is inserted during default payment service the Payment Service, will change to paymentServiceId = 1 for PrePay:

<CORE defaultPaymentServiceId="0">
...
</CORE>
<PAYMENTSERVICE paymentServiceId="0" name="PostPay" postPay="true">
<payUnit name="Card"/>
<inputRules>
  <rule triggerUnit="Coin">
    <selection paymentServiceId="1"/>
  </rule>
</inputRules>
</PAYMENTSERVICE>
<PAYMENTSERVICE paymentServiceId="1" name="PrePay" postPay="false">
<payUnit name="Coin"/>
</PAYMENTSERVICE>