A thermal transfer printer comprising: a processor; a memory storing computer readable instructions arranged to cause the processor to: generate (S2) access request data for processing by an access control server ; send, to a smartphone and via a wireless connection comprising a short range communications protocol, the access request data, wherein the smartphone receives the access request data from the thermal transfer printer for onward transmission to the access control server; receive (S3), from the smartphone and via the wireless connection, access response data responsive to the access request data, wherein the smartphone receives the access response data from the access control server; process (S4) the access response data to determine a first print limit indicated by the access response data; and update, responsive to processing the access response data, an access status in the memory from indicating a third print limit to indicate a second print limit, the second print limit being the sum of the first print limit and the third print limit, wherein the first, second and third print limit specify a length of ribbon. a processor; a memory storing computer readable instructions arranged to cause the processor to: generate (S2) access request data for processing by an access control server ; send, to a smartphone and via a wireless connection comprising a short range communications protocol, the access request data, wherein the smartphone receives the access request data from the thermal transfer printer for onward transmission to the access control server; receive (S3), from the smartphone and via the wireless connection, access response data responsive to the access request data, wherein the smartphone receives the access response data from the access control server; process (S4) the access response data to determine a first print limit indicated by the access response data; and update, responsive to processing the access response data, an access status in the memory from indicating a third print limit to indicate a second print limit, the second print limit being the sum of the first print limit and the third print limit, wherein the first, second and third print limit specify a length of ribbon. generate (S2) access request data for processing by an access control server ; send, to a smartphone and via a wireless connection comprising a short range communications protocol, the access request data, wherein the smartphone receives the access request data from the thermal transfer printer for onward transmission to the access control server; receive (S3), from the smartphone and via the wireless connection, access response data responsive to the access request data, wherein the smartphone receives the access response data from the access control server; process (S4) the access response data to determine a first print limit indicated by the access response data; and update, responsive to processing the access response data, an access status in the memory from indicating a third print limit to indicate a second print limit, the second print limit being the sum of the first print limit and the third print limit, wherein the first, second and third print limit specify a length of ribbon. <EOS>