cancel
Showing results for 
Search instead for 
Did you mean: 

In-Person SDK for Android- how to get signature image?

We are buildling a mobile checkout app.

 

We have everyting working now except can't seem to get the signature image back from the transaction response.

 

We need access to that image to add to our POS record of the transaction.

 

We passed "true" to the startEMVTransaction call.

 

EMVTransactionManager.startEMVTransaction(emvTransaction, emvTransactionListener, this, true);

 

But signature attribute in response continues to be blank.

 

Suggestions?

 

Also, is there a way to get the signature later through transaction API?

 

Thanks,

Kurt

 

 

 

 

krobson
Contributor
15 REPLIES 15

 Hi Richard - yes it worked!  We got a signature string back.  thank you.  Please do merge the fix into production version.

 

I'd like to ask what format that string is in.  Base 64?

 

Thank You,

Kurt

 Hi Richard - yes it worked!  We got a signature string back.  thank you.  Please do merge the fix into production version.

 

I'd like to ask what format that string is in.  Base 64?

 

Thank You,

Kurt

@krobson  The image is base 64 encoded string. 

 

Richard

That fixed it!   thanks.

To retrieve the signature image from the In-Person SDK on Android, make sure of the following: You're passing true for collectSignature in startEMVTransaction – which you're already doing. The transaction must require a signature. If it's not needed based on card type or amount, the SDK may skip signature capture. Ensure you're checking the EMVTransactionResponse.getSignature() method after the full transaction completes. If the signature is still blank: Double-check if the card network or terminal config is bypassing signature due to low-risk transaction. Also, some SDK versions only return the signature after batch settlement, not immediately. As for retrieving it later: Yes, some providers offer an API (via Transaction ID) to fetch transaction details, including the signature image if captured. You’ll need to check your payment processor’s transaction management API or portal for this feature. If you're still stuck, consider reaching out to the SDK provider with logs to confirm signature capture is supported for your flow.

danielcarter
Member

 If the `signature` field in the EMV transaction response is blank, it usually means **signature capture wasn't triggered** or completed during the transaction. Try this: * Ensure the card type and transaction **require a signature** (some don’t under EMV rules). * Check if your device **supports signature capture** natively. * Confirm signature capture is **enabled in SDK/device settings**. You **cannot retrieve the signature later** via the transaction API if it wasn’t captured during the transaction. The image must be collected at the time of the transaction and saved locally or via callback. Double-check the EMVTransactionListener — the signature may be returned through a separate method like `onSignatureCaptured()` depending on SDK version.

danielcarter
Member