Handle the Signature callback

Implement the signature callback

Implement the tender_check_signature_CB and assign to the function pointer status_tender_check_signature. For more information on how to do this, see Implement callbacks as part of a register_device_request.

Code example

void tender_check_signature_CB(response_header *, ped_device_info *, void * echo_struct);

Handle the check signature callback

The tender_check_signature_CB is invoked whenever a shopper signature is required, either on the touchscreen of the PED or on a printed paper receipt. The PED must confirm this and accept or decline the signature to proceed.

  • The shopper can sign on the touch screen display of the PED. The check signature callback then invokes the merchant to accept or decline the signature. In that case, the response header contains a graphic representation of the signature, so it can be shown on the POS.
  • A signature on the printed paper copy of the receip also needs to be confirmed. In this scenario, there would not be no graphical representation of the signature.

In both cases, it is assumed that a cashier checks the signature against the signature on the back of the card, before confirming and accepting the signature.
Create this function and assign to the function pointer  status_tender_check_signature.

Parameters

Field Description
response_header Pointer to the response_header struct, this struct contains all the input parameters for this call. This includes the additional_data struct and it's signature data elements.
ped_device_info Pointer to the ped_device_info struct in the POS. Called with the results of the create tender call.
echo_struct Pointer to a POS defined struct. Returned in the callback. Can be used to share a POS data struct between the call to the library and the associated callback from the library

The state is an enum of type TENDER_STATE and contains the transaction state, which is CHECK_SIGNATURE.

Confirming the check signature callback

Function

Name Description
 confirm_signature

In response to the check signature callback, a call must be made to inform the Library that the merchant has approved or declined the signature of the shopper. The transaction continues after this confirmation is received.

Parameters

Field Description
terminal_id Terminal id of the PED.
tender_reference Tender reference of the transaction.
confirmation

Enum of type a ATTENDANT_ACTION_CODE, indicating either ATTENDANT_ACTION_CODE_APPROVED, ATTENDANT_ACTION_CODE_DECLINED, ATTENDANT_ACTION_CODE_RETRY.

Code example

The declaration of the call to confirm the signature callback is as follows:

 confirm_signature (char *terminal_id, char *tender_reference, ATTENDANT_ACTION_CODE confirmation)