ClaimedCashDrawer ClaimedCashDrawer ClaimedCashDrawer ClaimedCashDrawer ClaimedCashDrawer Class


Provides access to exclusive and privileged methods, properties, and events on a point-of-service cash drawer device.

public : sealed class ClaimedCashDrawer : IClosable
struct winrt::Windows::Devices::PointOfService::ClaimedCashDrawer : IClosable
public sealed class ClaimedCashDrawer : IDisposable
Public NotInheritable Class ClaimedCashDrawer Implements IDisposable
// This class does not provide a public constructor.

Windows 10 requirements

Device family
Windows 10 (introduced v10.0.10240.0 - for Xbox, see UWP features that aren't yet supported on Xbox)
API contract
Windows.Foundation.UniversalApiContract (introduced v1)


The user gets an instance of ClaimedCashDrawer from the CashDrawer.ClaimDrawerAsync method. Claim is cooperatively managed, so multiple concurrent apps can negotiate which app owns claim.

Version history

Windows version SDK version Value added
1809 17763 Closed


CloseAlarm CloseAlarm CloseAlarm CloseAlarm CloseAlarm

Gets the close alarm for this cash drawer. This is only valid if IsDrawerOpenSensorAvailable is true.

DeviceId DeviceId DeviceId DeviceId DeviceId

The identifier string of the claimed cash drawer device.

IsDrawerOpen IsDrawerOpen IsDrawerOpen IsDrawerOpen IsDrawerOpen

Indicates whether the cash drawer is open.

IsEnabled IsEnabled IsEnabled IsEnabled IsEnabled

Indicates whether the cash drawer is operational and can be used.


Close() Close() Close() Close() Close()

Disposes the claimed cash drawer, releases claim on the device, and disables the device the same way as calling DisableAsync.

DisableAsync() DisableAsync() DisableAsync() DisableAsync() DisableAsync()

Notifies the underlying hardware to power off.

Dispose() Dispose() Dispose() Dispose() Dispose()

Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources.

EnableAsync() EnableAsync() EnableAsync() EnableAsync() EnableAsync()

Asynchronously notifies the underlying hardware to power on for use.

OpenDrawerAsync() OpenDrawerAsync() OpenDrawerAsync() OpenDrawerAsync() OpenDrawerAsync()

Opens the cash drawer.

ResetStatisticsAsync(IIterable<String>) ResetStatisticsAsync(IIterable<String>) ResetStatisticsAsync(IIterable<String>) ResetStatisticsAsync(IIterable<String>) ResetStatisticsAsync(IIterable<String>)

Resets the specified device statistics to their defaults.

RetainDeviceAsync() RetainDeviceAsync() RetainDeviceAsync() RetainDeviceAsync() RetainDeviceAsync()

Retain the current claim on the cash drawer. This is usually called in response to a ReleaseDeviceRequested event notification.

UpdateStatisticsAsync(IIterable<IKeyValuePair<String, String>>) UpdateStatisticsAsync(IIterable<IKeyValuePair<String, String>>) UpdateStatisticsAsync(IIterable<IKeyValuePair<String, String>>) UpdateStatisticsAsync(IIterable<IKeyValuePair<String, String>>) UpdateStatisticsAsync(IIterable<IKeyValuePair<String, String>>)

Updates device statistics values using the provided key/value pair.


Closed Closed Closed Closed Closed

Event that is raised when the ClaimedCashDrawer is closed.

ReleaseDeviceRequested ReleaseDeviceRequested ReleaseDeviceRequested ReleaseDeviceRequested ReleaseDeviceRequested

Occurs when the device gets a request to release its exclusive claim.

There is a small window of time (2 seconds) where the app may call RetainDeviceAsync to keep exclusive claim. Or alternatively, the app may release claim via Close to end the window immediately.

See also