Kosta

Archiving Package with diferent Sigantures Types throws SDK EslException

0 votes
Hello there, I have an eSignLive integration, using the SDK v11, where I am able to Create& Send package for signing to:
1.  Three Signers with corresponding "Click to Sign" signatures 
2. and another - 4th signer with a "Hidden - Click to Accept" signature
I am also able to Sign this PackageDocument for each signer using the eslClienbt.signDocuments() call. After above implementation I am able to check my sandbox account and see the created, signed and auto-completed Transaction. However when I try to archive it, using SDK, code:
documentPackage.setStatus(PackageStatus.ARCHIVED);
eslClient.updatePackage(packageId, documentPackage);
I get th efollowing Exception:
com.silanis.esl.sdk.EslException: It is not allowed to use acceptance signature styles and other signature styles together in one document.
Could you let me know if this is going to get updated, as I am able to manually Archive the same Package through the UI, i.e. it seems that the SDK call fails with above exception, but the API allows us to do this.

Approved Answer

Reply to: Archiving Package with diferent Sigantures Types throws SDK EslException

1 votes
Hi Kosta, Did you try the following call?
eslClient.getPackageService().archive(packageId);
Btw, just as an FYI, you can't set an acceptance signature and a click-to-sign/capture signature on the same document. It is possible that you've found a workaround but typically that behavior is not allowed. You would normally get an error when sending the package.
Haris Haidary OneSpan Technical Consultant

Reply to: Archiving Package with diferent Sigantures Types throws SDK EslException

0 votes
Hello Haris, thank you very much for the suggestion. The code you provide:
eslClient.getPackageService().archive(packageId);
worked fine. What we had was:
documentPackage.setStatus(PackageStatus.ARCHIVED);
eslClient.updatePackage(packageId, documentPackage);
Just to show how we managed to create "our" - "hidden" signature, please check code below:
SignatureBuilder signerSignature = SignatureBuilder.signatureFor(signer.getEmail()).withSize(0, 0);
documentBuilder.withSignature(signerSignature);
And we are able to sign it using:
eslClient.signDocuments(packageId, EslResource.generateIdFromString(email));
where: EslResource.generateIdFromString(email) is our custom code which we use to generate unique Signer ID based on the Signer email. Thank you very much for your quick help, one more time :)

Hello! Looks like you're enjoying the discussion, but haven't signed up for an account.

When you create an account, we remember exactly what you've read, so you always come right back where you left off