Please enable JavaScript to view this site.

CWT Software Configuration Handbook 4.40

Element        Path: <cwt><PAYUNIT>

Each one of the pay units used needs to be defined by a PAYUNIT tag. This tag is used to configure the pay unit in terms of type and values of the different pay unit channels.

There are two different categories of pay units. The first category is the internal pay units that are Flowbird standard pay units. The coin and card pay units are internal and there can only be one active coin unit and one active card unit in a terminal (or one of those types only). The second category is the eight external pay units Ext0 to Ext7 developed for specific markets. They are not considered a part of the standard configuration. Special software libraries are required for each external pay unit.

At least one pay unit must be defined to prevent a terminal from going Out of Order
If no pay units are needed (e.g. with only free tickets) define the pay unit "card"

attributes

acceptZeroTicksLeftToPay

Value:true / false
Default:false
Description:The attribute defines if a card type pay unit will receive an Accept even if tickLeftToPay is zero. Normally the pay unit receives a Reject

true = The card type Pay Unit will receive an Accept even if ticksLeftToPay is zero. Normally it gets a Reject.

alias

Value:String
Default:-
Description:External pay units log entries are prefixed by filename(pay unit id), e.g. archipel_gc.dll(Ext0).
With alias attribute it is possible to change the prefix to whatever name.

actionAtEscrowFull

Value:InhibitPayUnit, PartialEncash
Default:PartialEncash
Description:Selects the behaviour if the maximum allowed number of coins in the escrow is reached.

InhibitPayUnit will block the coin pay unit but allow mixed payment with other pay units.

PartialEncash is only implemented for the old Cale-Coin system. The escrow will encash the coins and continue accepting coins. Note that in this mode, rejection of accepted coins is not possible.

PartialEncash is not possible with the SCA-coin system.

blockButtonGroup

Description:The blockButtonGroup attribute will block user interface buttons that has a ButtonGroup property with the same name.
When a user interface button, in the same button group as a pay unit is pressed, the pay unit will be inhibited (blocked).
Example:<PAYUNIT blockButtonGroup="name">

coinAcceptTest

Value:true/false
Default:false

Do an accept motion with the escrow after a reject, this is to prevent fraud when it is possible to reach the escrow from outside the terminal

coinJam3EventCode

Value:1-286
Default:201 (EVENT_CODE_UNKNOWN)
Description:Sets what event code will be sent to WebOffice when a coin jam 3 error occurs

coinJam4EventCode

Value:1-286
Default:201 (EVENT_CODE_UNKNOWN)
Description:Sets what event code will be sent to WebOffice when a coin jam 4 error occurs

emptyEscrowOnCoinJam4

Value:true/false
Default:false
Description:If true, the escrow cashes its contents when a Coin Jam 4 error is received. The user can no longer get a refund.

Note that the last coin that caused the jam will not be counted.

escrowreboot
Value:true / false
Default:true
Description:If the Coin unit is not equipped with an escrow it needs to be set to false.

Note: This attribute is only used in the CWT ADA upgrade kit

Example:The following Example: set the escrow to false when no coin unit is available

<PAYUNIT name="Coin" type="Coin" escrow="false" /PAYUNIT>

Error handling:

If the error "Escrow Not Moving" is present at boot this error handling should kick in. First a Reject motion will be done (4 tries) and then Accept (4 tries). This is only done once since we don't want to get stuck in a loop where the escrow is moved for ever. A reboot will reset the error handling.

filenamereboot
Value:string
Default:cdsextpu.dll
Description:Filename of external pay unit dll that handles the pay unit. Only applicable for pay units with name=”Ext0”, …, ”Ext7”

forwardEvent

Value:true, false
Default:false
Description:If set to true, all CWT events will be forwarded to this pay unit. This is only applicable for external pay units with an external pay unit DLL that implements version 24 of the external pay unit API. Note that if the external pay unit DLL handles more than one pay unit (ex: Ext0 and Ext1) it should be set only for one of them.

hubPaymentMethod

Value:sp:Coin, sp:Bill, sp:ContactLessCreditCard, sp:ContactCreditCard, sp:CityCardPaymentMethod, sp:OtherPaymentMethod, sp:BlikMobilePaymentMethod, sp:VippsMobilePaymentMethod, sp:SwishMobilePaymentMethod
Description:For cashless pay units like Swish, Blik etc. the property hubPaymentMethod is used to specify the type of payment. This information is available through ticket variable @v146.
Example:<PAYUNIT hubPaymentMethod="sp:SwishMobilePaymentMethod">

minOffTimeMs

Value:0- 4,294,967,295
Default:0
Description:Minimum amount of time in milliseconds the payunit stays powered down. This is used to make sure the payunit hardware has uncharged its capacitors and went into a real powered down state.

mustHaveInternet

Value:true/false
Default:false
Description:If set to true, the pay unit goes into partial error during modem resets. Modem resets are controlled in the COMMUNICATION element.

name

Value:Coin, Card, Ext0 to Ext7
Default:
Description:The identifier of the pay unit in the system.

numberOfCoinsAllowedInEscrow

Value:0- 4,294,967,295
Default:4,294,967,295
Description:Number of coins allowed in the escrow before the escrow cashes its contents. After this, the user can no longer get a refund

outletOnInitially

Value:true/false
Default:true
Description:If set to true, the connected outlet is on from initialization of the application.

rejectOnCardNotValid

Value:true, false
Default:true
Description:If set to true and validation of inserted card fails a popup is shown and reject is performed. If set to false and validation of inserted card fails a popup is shown (and no reject). Parameter is only valid for PAYUNIT Card.

Note: If set to false the popups CardNotValidWrongTypePopup, CardReadErrorPopup, CardExpiredPopup, CardBlacklistedPopup, CardAmountReachedPopup, and CardNotValidPopup must have a Timeout.

rejectOnCoinJam3

Value:true/false
Default:false
Description:Configurable behaviour on CoinJam 3 if set to true. If CoinJam 3 occurs, a Info Event Unit: 20, Event code: 201 will be logged, but purchase will not be rejected. The coin causing the jam will not be included in the purchase nor the collection balance. The coin will be “lost” for the customer.

rejectOnCoinJam4

Value:true/false
Default:false
Description:Configurable behaviour on CoinJam 4 if set to true. If CoinJam 4 occurs, a Info Event Unit: 20, Event code: 201 will be logged, but purchase will not be rejected. The coin causing the jam will not be included in the purchase nor the collection balance. The coin will be “lost” for the customer.

storePurchase

Value:true / false
Default:true
Description:The attribute defines if a pay unit should be included in the Purchase.
false = the pay unit is not included in Purchase table

testPurchasesChannel

Value:0–31
Default:
Description:Defines the test purchases channel, the channel that will start a test purchase. Define ticks for the testPurchasesChannel as usual.

ticketVariableOffset

Value:0-19
Default:0
Description:Defines the offset for external pay unit ticket attributes. Each external pay unit can define start offset for its attributes relative to @V600
typereboot
Value:Coin, Bill, Card, CardCollector, CardStep, BalanceAccount, OnlinePaymentProvider, ExtPUX,  CardSwipe
Default:
Description:Defines the type of pay unit.

CWT104.pngCardSwipe is only supported in CWT 104/Compact Classic.

For card reader external pay units, the type shall be CardCollector if the pay unit requires a debit amount before the card is swiped (like chip & pin). If the card must be swiped before the amount to debit is determined, the type shall be CardStep.

BalanceAccount is used for Wallet (Virtual Purse Account) pay units, for Example: when using an overpayment virtual account.

waitForCard

Value:true / false
Default:-
Description:The default behaviour is set in the PAYMENTSERVICE element waitForCard. This attribute can define an exception to the default behaviour.

If the attribute is set to true, the pay unit is waiting for a card.

If the attribute is set to false, the application will handle the waiting for card.

Example:

External pay unit 0 of CardCollector type:

<PAYUNIT name="Ext0" type="CardCollector">
</PAYUNIT>

Example:

Use a swipe reader as internal credit card reader in CWT 104/Compact:

<PAYUNIT name="Card" type="CardSwipe">
</PAYUNIT>

Example:

Test purchase with test tokens:

<PAYUNIT name="Coin" type="Coin" testPurchasesChannel="13">
<channel id="13" value="100"/>
</PAYUNIT>

Example:

External pay unit 0 of BalanceAccount type:

<PAYUNIT name="Ext0" type="BalanceAccount">
</PAYUNIT>

Example: on Coinjam

Individual configurable Coin Jam 3 and Coin Jam 4. If these coin jams occur, a Info Event Unit: 20, Event code: 201 and purchase will not be rejected, but the coin will not be included in the purchase nor the collection balance.

<PAYUNIT name="Coin" type="Coin" rejectOnCoinJam3="false" rejectOnCoinJam4="false">