Delegate
The transactionRequiresSignature delegate is called when a signature must be confirmed as part of processing a transaction. Handle the transactionRequiresSignature delegate by writing the POS app to call either [ADYSignatureRequest submitConfirmedSignature:] or [ADYSignatureRequest submitUnconfirmedSignature:].
After this method has been called, the transaction will be paused until either submitConfirmedSignature: or submitUnconfirmedSignature: has been called on the given signatureRequest.
This method must be implemented in two different ways, depending on the presence of a printer on the payment-device (as determined by the paymentDeviceHasPrinter method on the Adyen class).
If the device has a printer:
- The device prints a receipt, which must be signed by the customer.
- The attendant compares this signature to the signature on the card, and either confirm that they are identical, or not.
- Implement the method to show a user-interface where the attendant can choose between Confirmed or Not confirmed, for example by pressing a button.
- The method must call either
submitConfirmedSignature:orsubmitUnconfirmedSignature:on thesignatureRequest, both withnilas thesignatureImageparameter, to continue transaction processing.
If the device does not have a printer:
- Implement the method to display a user-interface on which the customer can draw a signature.
- Implement the method to allow the attendant to confirm or deny the drawn signature after comparing it to the signature on the card - for example, by pressing a button.
- The method must call either
submitConfirmedSignature:orsubmitUnconfirmedSignature:on the givensignatureRequest, both with the drawn image assignatureImageparameter.
Instead of calling submitConfirmedSignature: or submitUnconfirmedSignature:, it is also possible to cancel the transaction at this point as usual, by calling [ADYTransactionRequest requestCancel]. After a transaction has been cancelled, subsequent calls to submitConfirmedSignature: or submitUnconfirmedSignature: will have no effect.
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
signatureRequest |
ADYSignatureRequest | ![]() |
Request-object used to continue transaction processing. |
Declaration code example
Objective-C
- (void)transactionRequiresSignature:(ADYSignatureRequest *)signatureRequest;
Swift
func transactionRequiresSignature(_ signatureRequest: ADYSignatureRequest!)
