Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

The structure of the XML as svg can be found here:   eso.svg

and created via .xsd:

View file
nameeso.xsd

...

XML-Element

webso

Type

description

<Window>

<Signatures>

x

<Signatures>

Contains the signature-field definitions. Possible Signature Types are

<Signature>: The field is defined with a search item (<Placeholder>) within the pdf-file

<DigSig>: The field is defined with a signature-filed within the pdf-file

<Static>: The field is defined with coordinates

<FillInfo>

x

<FillInfo>

Contains a List of Name-Value Pairs to fill formfields within the pdf-document

<GUIMode>

<SCSPath>

<ReadBeforeSign>

<DeviceKind>

<BlindPadSearch>

<PublicKey1Emulation>

<SCS>

<CorpCode>

<Overlapped>

<AfterSigning>

<AfterCancel>

<PDF>

x

base64

base64 encoded PDF-file

<PDFName>

x

String

name of the pdf shown in GUI. If no name is set, the name will be set dynamically:

upload_2022-07-21_46669.pdf

<TapToSign>

x

Integer

1/0

"true" or "false" / "1" or "0" (false by default or if tag isn't defined). If TapToSign is "true" the signature fields can be activated/signed via clicking into the individual field within the iSignatureOffice or aSignatureOffice App (instead of clicking the start-signing button).

<TapToSignOnly>

x

Integer

1/0

If "1"/ "true" the pen icon (start signing button) in the Apps will be disabled and you need to click into the signature field to sign.

<PdfNoBiodata>

x

If present, the method retrieveXml will fill the field with the base64 encoded pdf without biometric data.

The document doesn't contain the certificates but pictures of the signatures.

The <PDF> tag will still be filled with the signed document.

See Condition.DocumentNoBiodata

At upload time the field must be empty.

<DisableHelpButton>

<DisableInfoButton>

<ShowDialogPrintButton>

<ShowFormFillButton>

<HideSignControllButtons>

<HideLcdSignButton>

<DeviceKeys>

<OpenResult>

<LastMacroNumber>

<MacroButtonHistory>

<Macro1Upload>

<Zoom>

<ScrollInSignMode>

<HashDialog>

<Found>

<Signed>

<Output>

<DeviceDetails>

tbd: not applicable at upload time

<DueDate>

x

DateTime

2019-07-21

This tag defines the expiration date of the signature request / envelope.

Example: <DueDate>2019-07-21</DueDate>

If <DueDate> is defined, <DueDays> <DueWeeks> and <DueMonths> will be ignored.

If neither <DueDate> <DueDays> <DueWeeks> and <DueMonths> are defined, the expiration time is unlimited.

If <DueDate> is in the past, no due date will be set.

<DueDays>,

<DueWeeks>,

<DueMonths>

x

Integer

Tags are defining the expiration of the signature request / envelope.

With setting a value in one of the three tags, the due date will be the date x days / weeks or months after the time of upload.

The relevant value is always the next expected date. For example <DueDays> is set with the value 9 and <DueWeeks> is set with the value 1, the due date will be 7 days later (one week)

If <DueDate> is defined, <DueDays> <DueWeeks> and <DueMonths> will be ignored.

If neither <DueDate> <DueDays> <DueWeeks> and <DueMonths> are defined, the expiration time is unlimited.

<MandatorySkippable>

Integer

1/0

If set to 1 (true) mandatory fields can be skipped.

This optional tag defines, if mandatory signature fields are skippable (value 1) or not (value 0).

If no value is set or tag is not defined, mandatory signature fields are not skippable.

<Observer>

x

String

userName /

email-adress

Sets an observer for a document. The observer can view the document, but has no signature-fields.

If email notification is active, the user will receive an email with the document-link.

Possible values are a valid email adress or the userName (login) of an active user.

(If the xml defines an envelope and Document.Observer is not defined, ESign.Observer will be used)

Deprecated observer Definition. See <ObserverUser> below.

<ObserverUser>

x

<UserName>

Contains an array of UserNames:

<ObserverUser>
  <UserName>user1@example.com</UserName>
  <UserName>user2Login</UserName>
</ObserverUser>

Sets observers for envelopes.. The observers can view the envelope, but have no signature-fields.

If email notification is active, the observers will receive an email with the envelope-link.

Possible values are a valid email adress or the userName (login) of an active user.

<CallbackUrl>

x

String (URL)

www.example.com/event

Defines a callbackURL for the document. If not present, the default callbackURL (server settings) will be used. See e) Callback-API

<DocumentPassword>

x

String

Defines a document password.

If a user has to enter the password is defined in the <Signatures> Element. see <PasswordRequired>

NOTE: Document passwords are stored in plain text in visible for the document creator.See <PasswordRequired> for details

<SignatureGroups>

x

<SignatureGroups>

Contains a list of SignatureGroups. 

(If the xml is an envelope, signature groups can also be defined in ESign.SignatureRequestEnvelope.SignatureGroups.)

<ExecutionOrder>

x

Integer

deprecated ExecutionOrder – specifies field execution order. Possible values: 0 – ABC   ABC ABC, 1 – AAA BBB CCC, 2 – as sorted.

<SignatureRequestEnvelope>

x

<SignatureRequestEnvelope>

defines an Envelope which can contain several documents and download-conditions.

<AppAvailability>

x

Defines how long the signatureRequest / document is available in the app.

<ActiveFrom>: Date from which the document is visible in the app

<ActiveUntil>: Date until the document is visible in the app.

(<DeleteOnServer> : deprecated)

<AppAvailability>
  <ActiveFrom>2022-07-22</ActiveFrom>
  <ActiveUntil>2022-07-25</ActiveUntil>
</AppAvailability>

Document will be visible in app from 22/7/2022 till 25/7/2022

<CryptoIDSelection>

<SignatureOrder>

x

<SignatureOrder>

Defines in which order the users of the document/envelope have to sign.

Contains a list of <SignaturePosition>.

<PasswordRequired>

<PasswordRequired>

List of users that have to enter the document password.

<SignatureOrder> : Defining an order for the signatories
Anchor
Signatureorder
Signatureorder

...

XML-Element

webso

Type

description

<SignaturePosition>

x

Contains a list of <UserName> which defines the signatories on the given position.

example

explanation

    <SignatureOrder>
        <SignaturePosition>
            <UserName>signer1@example.com</UserName>
            <UserName>registeredUserLogin</UserName>
        </SignaturePosition>
        <SignaturePosition>
            <UserName>signer2@example.com</UserName>
        </SignaturePosition>
        <SignaturePosition>
            <UserName>signer3@example.com</UserName>
            <UserName>registered_user2@example.com</UserName>
        </SignaturePosition>
   

Code Block
<SignatureOrder>
	<SignaturePosition>
		<UserName>signer1@example.com</UserName>
		<UserName>registeredUserLogin</UserName>
	</SignaturePosition>
	<SignaturePosition>
		<UserName>signer2@example.com</UserName>
	</SignaturePosition>
	<SignaturePosition>
		<UserName>signer3@example.com</UserName>
		<UserName>registered_user2@example.com</UserName>
	</SignaturePosition>
</SignatureOrder>

The document contains signatures for five users.

  1. First the guest user with the email adress signer1@example.com and the registered user with the login "registeredUserLogin" have to sign.

  2. After all users from position one signed their fields, the guest user signer2@example.com can sign the document

  3. After all users from position two signed their fields, the guest user signer3@example.com and the registered user defined by the user email adress registered_user2@example.com can sign the document.

Note: Each user can only be set to one position. So "registeredUserLogin" and "registered_user2@example.com" are not the same users!

...

XML-Element

webso

Type / example

description

<Position>

x

Integer

Position of the document inside the signatureRequestEnvelope

<PDF>

x

base64

base64 encoded PDF file

<Signatures>

x

<Signatures>

Contains the signature-field definitions. Possible Signature Types are

<Signature>: The field is defined with a Placeholder within the pdf-file

<DigSig>: The field is defined with a signature-filed within the pdf-file

<Static>: The field is defined with coordinates

<PDFName>

x

String

name of the pdf shown in GUI. If no name is set, the name will be set dynamically:

upload_2022-07-21_46669.pdf

<FillInfo>

x

<FillInfo>

Contains a List of Name-Value Pairs to fill formfields within the pdf-document

<TapToSign>

x

Boolean

"true" or "false" / "1" or "0" (false by default or if tag isn't defined). If TapToSign is "true" the signature fields can be activated/signed via clicking into the individual field within the iSignatureOffice or aSignatureOffice App (instead of clicking the start-signing button).

<TapToSignOnly>

x

Boolean

If "1"/ "true" the pen icon (start signing button) in the Apps will be disabled and you need to click into the signature field to sign.

(<PdfNoBiodata>)

x

If present, the method retrieveXml will fill the field with the base64 encoded pdf without biometric data.

The document doesn't contain the certificates but pictures of the signatures.

The <PDF> tag will still be filled with the signed document.

See Condition.DocumentNoBiodata

Doesn't need to be filled at upload time.

<Signed>

<OutPut>

<DueDate>

x

DateTime

2019-07-21

Deprecated: The DueDate for a signature request / envelope should be defined as a child of <ESign>!

This tag defines the expiration date of the signature request.

Example: <DueDate>2019-07-21</DueDate>

If <DueDate> is defined, <DueDays> <DueWeeks> and <DueMonths> will be ignored.

If neither <DueDate> <DueDays> <DueWeeks> and <DueMonths> are defined, the expiration time is one week.

<DueDays>,

<DueWeeks>,

<DueMonths>

x

Integer

Deprecated: The DueDate for a signature request / envelope should be defined as a child of <ESign>!

Tags are defining the expiration of the signature request.

With setting a value in one of the three tags, the due date will be the date x days / weeks or months after the time of upload.

The relevant value is always the next expected date. For example <DueDays> is set with the value 9 and <DueWeeks> is set with the value 1, the due date will be 7 days later (one week)

If <DueDate> is defined, <DueDays> <DueWeeks> and <DueMonths> will be ignored.

If neither <DueDate> <DueDays> <DueWeeks> and <DueMonths> are defined, the expiration time is one week.

<MandatorySkippable>

x

Integer

1/0

If set to 1 (true) mandatory fields can be skipped.

This optional tag defines, if mandatory signature fields are skippable (value 1) or not (value 0).

If no value is set or tag is not defined, mandatory signature fields are not skippable.

<Observer>

x

String

userName / email-adress

Sets an observer for a document. The observer can view the document, but has no signature-fields.

If email notification is active, the user will receive an email with the document-link.

Possible values are a valid email adress or the userName (login) of an active user.

(If the xml defines an envelope and Document.Observer is not defined, ESign.Observer will be used)

Deprecated <Observer> definition. See <ESign><ObserverUser> instead.

<CallbackUrl>

x

String (URL)

www.example.com/event

Defines a callbackURL for the document. If not present, the default callbackURL (server settings) will be used. See e) Callback-API

<DocumentPassword>

x

StringPasswords

for envelopes are not supportedDeprecated. Use <PasswordRequired> instead.

Defines a document password.

If a user has to enter the password is defined in the <Signatures> Element. see <PasswordRequired>

It is possible to set different passwords for distinct documents in the envelope. When opening a document-viewer the specified password of the document must be entered. When opening the envelope-viewer the password of the first document in the envelope must be entered.

<ExecutionOrder>

x

Integer

deprecated ExecutionOrder – specifies field execution order. Possible values: 0 – ABC   ABC ABC, 1 – AAA BBB CCC, 2 – as sorted.

...

common xml elements in <Static>, <Signature> and <DigSig>:

XML-Element

webso

Type

description

<Placeholder>

x

String

The placeholder for the intelligent signature placement. The placeholder is a string inside the pdf document.

If several strings are found, a signature field will be placed for every occurence.

The top left corner of the placeholder is the top left corner of the signature field. The field can be displaced with Offset_X and Offset_Y.

<Width>

Decimal

Width of the field in cm.

<Height>

Decimal

Height of the field in cm.

<FilterSignature>

x

Filter the signature by the number they are found inside the document. 

Although the element is defined for all signature definitions, it's only applicable for <Signature>.

<FilterSignature>Begin:End;</FilterSignature>

<FilterSignature>Begin:End;Begin2:End2;</FilterSignature>

Note: If <FilterSignature> is defined, <FilterPage> will be ignored.

Sample:

<FilterSignature>1:1;</FilterSignature>     (only first appareance)

<FilterSignature>1:3;</FilterSignature>     (1, 2 and 3 appareance)

<FilterSignature>1:1;5:#PasswordRequired

With this tag you can define if user have to enter a auto-generated SMS token before entering the document (two factor authentication).

The SmsToken element has to be part of the <Signature> / <DigSig> / <Static> element and requires following parameters:

<Number>: the mobile number excluding the phone code / country code

<PhoneCode>: the international phone code of the mobile number according to iso 3166-1 alpha 2 (https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2 ).

('DE' for Germany, 'US' for United States, 'GB' for Great Britain, etc.)

You can only set one <SmsToken> element for each <Signature> / <DigSig> / <Static> element and only one <SmsToken> element for each signatory (defined via <UserName> for other user or self-sign fields).
Means if you have more than one signature elements for the same user within the XML, only the last set number and phone code will be defined for the signatory.

<Signature>
    <SignatureType>2</SignatureType>
    <Placeholder>Signature1</Placeholder>
    <Height>2</Height>
    <Width>3.5</Width>
    <SmsToken>
        <Number>173123456</Number>
        <PhoneCode>DE</PhoneCode>
    </SmsToken>
</Signature>

XML-Element

webso

Type / example

description

<PasswordRequired>

Anchor
#PasswordRequired

x

Integer

1/0

Deprecated password definition. See <PasswordRequired> below

true or false, defines if the signer of the signature has to enter the password when opening the document.

If a password is assigned to the document by default <PasswordRequired> is set to true. It must be explicitly set to false to prohibit the password prompt.

The <DocumentPassword> is defined globally.

Note: The first appearence of <PasswordRequired> in the signature fields of a distinct user defines whether the user has to enter a password. eg:

A user has three signature fields.

  • In the first field <PasswordRequired> is not defined, in the second field it is "1", in the third field it is "0" → password is required

  • In the first field <PasswordRequired> is not defined, in the second field it is "0", in the third field it is "1" → password is NOT required

  • In the first field <PasswordRequired> is "1", in the second field it is not defined, in the third field it is "1" → password is required

  • <PasswordRequired> isn't defined in any field → password is required

(<Signed>)

When the method retrieveXML is called and the field is signed, the element is set to 1.

<Signed> can't be set at upload time.

<Mandatory>

x

Integer

1/0

Is an optional field indicating that signature field is mandatory.

 <Mandatory>1</Mandatory> means mandatory field

<Mandatory>0</Mandatory> means optional field

If no value is set, the field is optional.

<Textblock>

<Zoom>

<Stamp>

x

<Stamp>

Stamp can be:

  1. the image can be omitted, then only a text is added defined. Line breaks are defined with "\r\n".

  2. only an image can be defined

  3. if both image and text are defined, then the text is added to the stamp image and overlayed upon the signature

If <SignatureType> value of the signature element is 0, a stamp creation without signature will be set, otherwise it's a combination of stamp and signature.

A stamp can't be defined for digitalStamp (<SignatureType>1) because the stamp image including the email address or username of the signee is generated automatically.

<Signer>

<UserName>

x

String

Login name of a registered user or an email address. Defines which technical user has to sign the field.

If no <UserName> is defined, a self-sign field (for own/ xml-upload user) is set.

If the email adress doesn't belong to a registered user a guest user will be created.

<Reason>

x

String

Can be used to set the reason for the signature which will be visible in the pdf certificate.

<SignatureType>

x

Integer

0-4

The available values are:
*0 = stamp data (text/image) without signature
1 = digital stamp (signature with user certificate instead of hand-written signature)
2 = html-signer signature only
3 = pad signature only
4 = app / phone / tablet signature only (QR code, link, sms)
If no signature type is defined, a selection window appears. 

The signer can choose between following types: StepOver signature pad OR one of our apps OR HTML-signer (with a pen or your finger on your mobile device)

Detailed Description: https://stepoverinfo.atlassian.net/wiki/spaces/WEBSO/pages/181960712/j+ESign+Input+XML#4.-Defining-the-%E2%80%9Csignature-type%E2%80%9D-%3CSignatureType%3E

please note: If a SigatureGroup is defined, the signatureType will be ignored.

<SignatureGroupName>

x

String

The name of the <SignatureGroup>

<HtmlSignerWidth>

x

Decimal

depricated

Defines the displayed / zoomed signature field width (in cm) for signatures with HTML signer (and with apps)

<SmsToken>

x

<SelectionPhoneTabletDetails>

x

<SelectionPhoneTabletDetails>

Defines what options are shown in the Phone/Tablet overlay:

The child elements <OptionQRCode>, <OptionLink> and <OptionSMS> have the values 0 or 1.

Note: If SignatureType is not 4 (handwritten), <SelectionPhoneTabletDetails> will be ignored.

<Signature> : Intelligent signature field definition

<Signature> fields use <PlaceHolders> to define the position of the signature fields in the pdf. A placeholder is a string/text in the pdf.

<Signature>:

(<Signed>)

When the method retrieveXML is called and the field is signed, the element is set to 1.

<Signed> can't be set at upload time.

<Mandatory>

x

Integer

1/0

Is an optional field indicating that signature field is mandatory.

 <Mandatory>1</Mandatory> means mandatory field

<Mandatory>0</Mandatory> means optional field

If no value is set, the field is optional.

<Textblock>

<Zoom>

<Stamp>

x

<Stamp>

Stamp can be:

  1. the image can be omitted, then only a text is added defined. Line breaks are defined with "\r\n".

  2. only an image can be defined

  3. if both image and text are defined, then the text is added to the stamp image and overlayed upon the signature

If <SignatureType> value of the signature element is 0, a stamp creation without signature will be set, otherwise it's a combination of stamp and signature.

A stamp can't be defined for digitalStamp (<SignatureType>1) because the stamp image including the email address or username of the signee is generated automatically.

<Signer>

<UserName>

x

String

Login name of a registered user or an email address. Defines which technical user has to sign the field.

If no <UserName> is defined, a self-sign field (for own/ xml-upload user) is set.

If the email adress doesn't belong to a registered user a guest user will be created.

<Reason>

x

String

Can be used to set the reason for the signature which will be visible in the pdf certificate.

<SignatureType>

x

Integer

0-4

The available values are:
*0 = stamp data (text/image) without signature
1 = digital stamp (signature with user certificate instead of hand-written signature)
2 = html-signer signature only
3 = pad signature only
4 = app / phone / tablet signature only (QR code, link, sms)
If no signature type is defined, a selection window appears for a biometric signature appears.

The signer can choose between following types: StepOver signature pad OR one of our apps OR HTML-signer (with a pen or your finger on your mobile device)

Detailed Description: https://stepoverinfo.atlassian.net/wiki/spaces/WEBSO/pages/181960712/j+ESign+Input+XML#4.-Defining-the-%E2%80%9Csignature-type%E2%80%9D-%3CSignatureType%3E

please note: If a SigatureGroup is defined, the signatureType will be ignored.

<SignatureGroupName>

x

String

The name of the <SignatureGroup>

<HtmlSignerWidth>

x

Decimal

Deprecated!

Defines the displayed / zoomed signature field width (in cm) for signatures with HTML signer (and with apps)

<SmsToken>

x

Deprecated: SmsTokens are defined in the <ESign>.<SmsTokens> element. See https://stepoverinfo.atlassian.net/wiki/spaces/PAF/pages/edit-v2/126484481#%3CSmsTokens%3E%3A-MFA-sms-envelope-protection

With this tag you can define if user have to enter a auto-generated SMS token before entering the document (two factor authentication).

The SmsToken element has to be part of the <Signature> / <DigSig> / <Static> element and requires following parameters:

<Number>: the mobile number excluding the phone code / country code

<PhoneCode>: the international phone code of the mobile number according to iso 3166-1 alpha 2 (https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2 ).

('DE' for Germany, 'US' for United States, 'GB' for Great Britain, etc.)

You can only set one <SmsToken> element for each <Signature> / <DigSig> / <Static> element and only one <SmsToken> element for each signatory (defined via <UserName> for other user or self-sign fields).
Means if you have more than one signature elements for the same user within the XML, only the last set number and phone code will be defined for the signatory.

Code Block
<Signature>
    <SignatureType>2</SignatureType>
    <Placeholder>Signature1</Placeholder>
    <Height>2</Height>
    <Width>3.5</Width>
    <SmsToken>
        <Number>173123456</Number>
        <PhoneCode>DE</PhoneCode>
    </SmsToken>
</Signature>

<SelectionPhoneTabletDetails>

x

<SelectionPhoneTabletDetails>

Defines what options are shown in the Phone/Tablet overlay:

The child elements <OptionQRCode>, <OptionLink> and <OptionSMS> have the values 0 or 1.

Note: If SignatureType is not 4 (handwritten), <SelectionPhoneTabletDetails> will be ignored.

<Signature> : Intelligent signature field definition

<Signature> fields use <PlaceHolders> to define the position of the signature fields in the pdf. A placeholder is a string/text in the pdf.

<Signature>:

XML-Element

webso

Type

description

<Placeholder>

x

String

The placeholder for the intelligent signature placement. The placeholder is a string inside the pdf document.

If several strings are found, a signature field will be placed for every occurence.

The top left corner of the placeholder is the top left corner of the signature field. The field can be displaced with Offset_X and Offset_Y.

<Width>

Decimal

Width of the field in cm.

<Height>

Decimal

Height of the field in cm.

<FilterSignature>

x

Filter the signature by the number they are found inside the document. 

Although the element is defined for all signature definitions, it's only applicable for <Signature>.

<FilterSignature>Begin:End;</FilterSignature>

<FilterSignature>Begin:End;Begin2:End2;</FilterSignature>

Note: If <FilterSignature> is defined, <FilterPage> will be ignored.

Sample:

<FilterSignature>1:1;</FilterSignature>     (only first appareance)

<FilterSignature>1:3;</FilterSignature>     (1, 2 and 3 appareance)

<FilterSignature>1:1;5:6;</FilterSignature>     (1, 5 and 6 appareance)

<FilterSignature>3:-1;</FilterSignature>     (3 until last appareance)

<FilterSignature>-2:-1;</FilterSignature>     (second to last and last appareance)

Code Block
<Signature>


    <SignatureType>2</SignatureType>


    <Placeholder>Signature1</Placeholder>


    <Height>2</Height>


    <Width>3.5</Width>


    <FilterSignature>-3:-1;</FilterSignature>


</Signature>

Signature fields are only created for the last three placeholder matches.

<FilterPage>

x

String

Filter the signature by the pages, which means you can define on which pages the signature should be offered to the signer.

Although the element is defined for all signature definitions, it's only applicable for <Signature>.

Sample:

<FilterPage>1:1;</FilterPage>     (only first page appareance)

<FilterPage>1:3;</FilterPage>     (1, 2 and 3 page appareance)

<FilterPage>1:1;5:6;</FilterPage>     (1, 5 and 6 page appareance)

<FilterPage>3:-1;</FilterPage>     (3 until last page appareance)

<FilterPage>-2:-1;</FilterPage>     (second to last page and last page appareance)

Note: If <FilterSignature> is defined, <FilterPage> will be ignored.

Code Block
<Signature>


    <SignatureType>2</SignatureType>


    <Placeholder>Signature1</Placeholder>


    <Height>2</Height>


    <Width>3.5</Width>


    <FilterPage>2:3;</FilterPage>


</Signature>

Signature fields are only created on page two and three.

<DisplacementTLIndex>

<FeldPositionIndex>

<Page>

<X>

<Y>

<Offset_X>

x

Decimal

Horizontal displacement of the signature field in cm.

If offset is positive, the field will be moved right.

<Offset_Y>

x

Decimal

Vertical displacement of the signature field in cm.

If offset is positive, the field will be moved down.

<RectPosX>

<RectPosY>

<BeforeSignConfirmation>

<Location>

<Background>

<FrameColor>

<FrameThickness>

...

XML-Element

webso

Type

description

<OptionQRCode>

x

Integer

1/0

If 1 QRCode option is shown

<OptionLink>

x

Integer

1/0

If 1 link option is shown

<OptionSMS>

x

Integer

1/0

If 1 sms option is shown.

<Number>

x

Integer

Can be set if <OptionSMS> is 1.

If <OptionSMS> is 0, it will be ignored.

Defines the phone number for the sms link without the country code.

<PhoneCode>

x

String

Can be set if <OptionSMS> is 1.

If <OptionSMS> is 0, it will be ignored.

Defines the country code according to ISO 3166-1 alpha-2 (https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2 )

example

explanation

Code Block
<Signature>


    <Placeholder>Unterschrift 123</Placeholder>


    <Height>2.0</Height>


    <Width>4.0</Width>


    <SignatureType>4</SignatureType>


    <SelectionPhoneTabletDetails>


        <OptionQRCode>1</OptionQRCode>


        <OptionSMS>1</OptionSMS>


        <OptionLink>0</OptionLink>


        <Number>173123456</Number>


        <PhoneCode>DE</PhoneCode>


    </SelectionPhoneTabletDetails>


</Signature>

A <Signature> is defined with the width 4cm and height 2cm without <SignatureGroup>.

The SignatureType is 4 = Phone/Tablet.

When clicking on "sign now" the Popup appears with the QR-code to scan and the tab to send a SMS containing a link to the document to the given number.

...

<FillInfo> contains a List of <FillEntry>. 

If the xml defines a single document, <FillInfo> is defined at ESign.FillInfo.

If the xml defines a <SignatureRequestEnvelope> <FillInfo> is defined for each document of the envelope at ESign.SignatureRequestEnvelope.Documents.Document.FillInfo

...

<Qes>: Qualified electronic signatures

Qualified electronic signatures (QES) are defined within the <QES> element. This element contains a list of <QesUser> entries. Each <QesUser> element provides the user's signature details, including email, phone number, and phone code/country code.

The user is referenced in the signature field by the <UserName> element

<Qes>: List of QES signatories

...

<SignatureGroups> contains a list of <SignatureGroup>

It can either be defined under ESign.SignatureGroups or ESign.SignatureRequestEnvelope.SignatureGroups.

All fields of a SignatureGroup belong to the same user.

<SignatureGroups> overwrite the order of the signatures: All fields in the first groups are signed first, then the fields of the second group etc.

Note: If SignatureGroups are used, the document must contain only one technical user!

<SignatureGroup>:

XML-Element

webso

Type

description

<Name>

<QesUser>

x

String

The name (identifier in the pdf) of the pdf formfield.

<Value>

x

String

The value to be set for the formfield.

example

explanation

  <FillInfo>
    <FillEntry>
      <Name>Text1</Name>
      <Value>foo</Value>
    </FillEntry>
    <FillEntry>
      <Name>Text2</Name>
      <Value></Value>
    </FillEntry>
    <FillEntry>
      <Name>RadioButton5</Name>
      <Value>Yes</Value>
    </FillEntry>
    <FillEntry>
      <Name>CheckBox4</Name>
      <Value>Yes</Value>
    </FillEntry>
    <FillEntry>
      <Name>CheckBox3</Name>
      <Value>No</Value>
    </FillEntry>
    <FillEntry>
      <Name>Optionsfeld1</Name>
      <Value>Ja</Value>
    </FillEntry>
    <FillEntry>
      <Name>Kombinationsfeld3</Name>
      <Value>Option3</Value>
    </FillEntry>
  </FillInfo>

  1. sets the value of text field with identifier "Text1" to "foo"

  2. clears the value of text field with identifier "Text2"

  3.  sets the value of the radiobutton-group with identifier "RadioButton5" to "Yes"

  4. checks the checkbox with the identifier "Checkbox4"

  5. unchecks the checkbox with the identifier "Checkbox3"

  6. sets the value of radiobutton-group with identifier "Optionsfeld1" to "Ja"

  7. sets the value of dropdown list with identifier "Kombinationsfeld3" to "Option3".

Image Removed

The identifiers and values can be defined in Adobe Acrobate or other PDF creation software.

The values can be changed in the viewer.

Note:

  • Observers can't change formfield values.

  • With the server setting formfields_writable_for_others=false you can prohibit editing formfields in the viewer by other users.

...

List of <QesUser>

QES definition of a signer:

Code Block
<ESign>
	...
	<Qes>
		<QesUser>
			<!-- QesUser see below > -->
			...
		</QesUser>
		<QesUser>
			<!-- QesUser see below > -->
			...
		</QesUser>
	</Qes>
	...
</ESign>

<QesUser>: QES definition for signer

XML-Element

webso

Type

description

<QesProviderId>

x

Integer

The id of the qes service provider. Either <QesProviderId> or <QesProvider> must be provided.

<QesProvider>

x

String

The name of the qes service. Either <QesProviderId> or <QesProvider> must be provided.

example:

Code Block
<QesProvider>signius</QesProvider>

<UserName>

x

String

The UserName. It is used to map the Qes data of the user to the signature fields.

Code Block
<ESign>
	<Qes>
		<QesUser>
			<UserName>signer2@example.de</UserName>
			<QesProvider>signius</QesProvider>
		</QesUser>
		<QesUser>
			<UserName>signer1@example.de</UserName>
			<QesProviderId>1</QesProviderId> 
		</QesUser>
	</Qes>
</ESign>

<SmsTokens>: MFA sms envelope protection

When a <SmsToken> is defined for a user, a sms is sent to user containing a one-time token, when opening a protected envelope. The user has to enter the token, to access the envelope. The <SmsTokens> element contains a list of <SmsToken>, which contains the information for the specified user. The user is referenced by the <UserName> element.

<SmsTokens>: List of <SmsToken> definitions

XML-Element

webso

Type

description

<SmsTokens>

x

List of <SmsToken>

SmsToken definition of a signer:

Code Block
<ESign>
    ...
	<SmsTokens>
		<SmsToken>
            <!-- SmsToken see below-->
             ...
		</SmsToken>
		<SmsToken>
            <!-- SmsToken see below-->
            ...
		</SmsToken>
	</SmsTokens>
    ...
</ESign>

<SmsToken>: sms protection definition for signer

XML-Element

webso

Type

description

<UserName>

x

String

The UserName. It is used to map the sms protection data of the user to the signature fields.

<Number>

x

Number

The phone number without country code.

e.g.: 173 123 123

<PhoneCode>

x

String

The international phone code of the mobile number according to iso 3166-1 alpha 2 (https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2 ).

e.g. “de” for Germany

Code Block
<ESign>
    ...
	<SmsTokens>
		<SmsToken>
			<UserName>signer1@example.de</UserName>
			<Number>17100100100</Number>
			<PhoneCode>de</PhoneCode>
		</SmsToken>
		<SmsToken>
			<UserName>signer2@example.de</UserName>
			<Number>17200123123</Number>
			<PhoneCode>de</PhoneCode>
		</SmsToken>
	</SmsTokens>
    ...
</ESign>

<FillInfo> : Filling PDF-formfields
Anchor
FillInfo
FillInfo

<FillInfo> contains a List of <FillEntry>. 

If the xml defines a single document, <FillInfo> is defined at ESign.FillInfo.

If the xml defines a <SignatureRequestEnvelope> <FillInfo> is defined for each document of the envelope at ESign.SignatureRequestEnvelope.Documents.Document.FillInfo

<FillEntry>:

XML-Element

webso

Type

description

<Name>

x

String

The name (identifier in the pdf) of the pdf formfield.

<Value>

x

String

The value to be set for the formfield.

example

explanation

 

Code Block
<FillInfo>
    <FillEntry>
        <Name>Text1</Name>
        <Value>foo</Value>
    </FillEntry>
    <FillEntry>
        <Name>Text2</Name>
        <Value></Value>
    </FillEntry>
    <FillEntry>
        <Name>RadioButton5</Name>
        <Value>Yes</Value>
    </FillEntry>
    <FillEntry>
        <Name>CheckBox4</Name>
        <Value>Yes</Value>
    </FillEntry>
    <FillEntry>
        <Name>CheckBox3</Name>
        <Value>No</Value>
    </FillEntry>
    <FillEntry>
        <Name>Optionsfeld1</Name>
        <Value>Ja</Value>
    </FillEntry>
    <FillEntry>
        <Name>Kombinationsfeld3</Name>
        <Value>Option3</Value>
    </FillEntry>
</FillInfo>
  1. sets the value of text field with identifier "Text1" to "foo"

  2. clears the value of text field with identifier "Text2"

  3.  sets the value of the radiobutton-group with identifier "RadioButton5" to "Yes"

  4. checks the checkbox with the identifier "Checkbox4"

  5. unchecks the checkbox with the identifier "Checkbox3"

  6. sets the value of radiobutton-group with identifier "Optionsfeld1" to "Ja"

  7. sets the value of dropdown list with identifier "Kombinationsfeld3" to "Option3".

Image Added

The identifiers and values can be defined in Adobe Acrobate or other PDF creation software.

The values can be changed in the viewer.

Note:

  • Observers can't change formfield values.

  • With the server setting formfields_writable_for_others=false you can prohibit editing formfields in the viewer by other users.

<SignatureGroups> : Grouping signature fields
Anchor
SignatureGroups
SignatureGroups

<SignatureGroups> contains a list of <SignatureGroup>

It can either be defined under ESign.SignatureGroups or ESign.SignatureRequestEnvelope.SignatureGroups.

All fields of a SignatureGroup belong to the same user.

<SignatureGroups> overwrite the order of the signatures: All fields in the first groups are signed first, then the fields of the second group etc.

Note: If SignatureGroups are used, the document must contain only one technical user!

<SignatureGroup>:

XML-Element

webso

Type

description

<SignatureGroupName>

x

String

Defines the name of the signatureGroup. (mandatory)

<ShowSignatureTypePopUp>

x

Integer

1/0

defines if the signatureTypePopup is shown.

If 1 (true), the signatureTypePopup will be shown.

Note: If <ShowSignatureTypePopUp> is true, <ShowSignatureTypePopUpDetails> must be defined! (see below)

<ShowSignatureTypePopUpDetails>

x

<ShowSignatureTypePopUpDetails>

With the tag <ShowSignatureTypePopUpDetails> and it's child tags

<SelectionPad>, <SelectionPhoneTablet>, <SelectionDisplay> (all int's with 1 or 0 values) 

the SignatureTypePopUp can be defined showing all or just some of the signature type selections.

Image Added

Note:

  • If <ShowSignatureTypePopUpDetails> is not set, no SignatureTypePopUp will be shown.

  • If <ShowSignatureTypePopUp> is not set or 0, <ShowSignatureTypePopUp> will be ignored.

  • tbd: If <SignatureGroup> with <ShowSignatureTypePopUpDetails> is defined, the <SignatureType> in <Signatures> value will be ignored!

<SignatureFieldColor>

<ShowSignatureTypePopUpDetails> : Define which signing options are presented in SignatureGroups
Anchor
ShowSignatureTypePopUpDetails
ShowSignatureTypePopUpDetails

The Element <ShowSignatureTypePopUpDetails> defines which signing options are presented for each individual <SignatureGroup> when clicking on "sign now".

It is mandatory, if SignatureGroup.ShowSignatureTypePopUp is 1 (true).

SignatureTypePopUp:

...

<ShowSignatureTypePopUpDetails>:

...

The Element <ShowSignatureTypePopUpDetails> defines which signing options are presented for each individual <SignatureGroup> when clicking on "sign now".

It is mandatory, if SignatureGroup.ShowSignatureTypePopUp is 1 (true).

SignatureTypePopUp:

...

...

XML-Element

webso

Type

description

<SignatureGroupName>

<SelectionPad>

x

Integer

String

Defines the name of the signatureGroup. (mandatory)

<ShowSignatureTypePopUp>

 1/0

If 1 the option "SIGNATURE PAD" is shown

<SelectionDisplay>

x

Integer

1

 1/0

defines if the signatureTypePopup

If 1 the option "ON THIS DISPLAY" is shown.

<SelectionPhoneTablet>

x

Integer

 1/0

If 1

(true), the signatureTypePopup will be

the option "SMARTPHONE/TABLET" is shown.

Note:

If

<ShowSignatureTypePopUp>

<SelectionPhoneTablet> is

true, <ShowSignatureTypePopUpDetails> must be defined!

1, it is possible to further define which methods are shown to share the link after clicking "Smartphone/Tablet" with <SelectionPhoneTabletDetails> (see below)

<ShowSignatureTypePopUpDetails>

<SelectionPhoneTabletDetails>

x

<ShowSignatureTypePopUpDetails>

With the tag <ShowSignatureTypePopUpDetails> and it's child tags

<SelectionPad>, <SelectionPhoneTablet>, <SelectionDisplay> (all int's with 1 or 0 values) 

the SignatureTypePopUp can be defined showing all or just some of the signature type selections.

Image Removed

Note:

  • If <ShowSignatureTypePopUpDetails> is not set, no SignatureTypePopUp will be shown.

  • If <ShowSignatureTypePopUp> is not set or 0, <ShowSignatureTypePopUp> will be ignored.

  • tbd: If <SignatureGroup> with <ShowSignatureTypePopUpDetails> is defined, the <SignatureType> in <Signatures> value will be ignored!

<SignatureFieldColor>

...

<SelectionPhoneTabletDetails>

If <SelectionPhoneTablet> is 1, you can further define the methods to send the viewer link with <SelectionPhoneTabletDetails>.

Possible options are Link, QR-Code and SMS (with phone number definition).

<SelectionPhoneTabletDetails> is described in Section Signatures.

<PasswordRequired>: Define password protection
Anchor
PasswordRequired
PasswordRequired

A password protection for envelopes and documents can be defined with the <PasswordRequired> element. The protection can be set individually for every user. The users must be referenced by the username or email which is used in the signature field definition.

Code Block
<ESign>
    ...
	<PasswordRequired>
		<UserName>user@example.com</UserName>
		<UserName>exampleLogin</UserName>
	</PasswordRequired>
	<DocumentPassword>password</DocumentPassword>
    ...
</ESign>

XML-Element

webso

Type

description

<SelectionPad>

x

Integer

 1/0

If 1 the option "SIGNATURE PAD" is shown

<SelectionDisplay>

x

Integer

 1/0

If 1 the option "ON THIS DISPLAY" is shown.

<SelectionPhoneTablet>

x

Integer

 1/0

If 1 the option "SMARTPHONE/TABLET" is shown.

If <SelectionPhoneTablet> is 1, it is possible to further define which methods are shown to share the link after clicking "Smartphone/Tablet" with <SelectionPhoneTabletDetails> (see below)

<SelectionPhoneTabletDetails>

x

<SelectionPhoneTabletDetails>

If <SelectionPhoneTablet> is 1, you can further define the methods to send the viewer link with <SelectionPhoneTabletDetails>.

Possible options are Link, QR-Code and SMS (with phone number definition).

<SelectionPhoneTabletDetails> is described in Section Signatures

<PasswordRequired>

x

List of <UserName>

The <PasswordRequired> element contains a list of <UserName>. Every user in

<UserName>

x

string

Defines which users have to enter the password.

<DocumentPassword>

x

string

The password of the document or envelope.