User experience

​​The E-Signing user experience can be adjusted in several ways. There are two GUI options, embedded or standalone. Parameters appended to the sign url can alter the experience.

User presentation mode

There are three different presentation modes in E-Signing: Pop-up, Standalone or Embedded UI. The E-Signing service can be requested to display the UI in either of these modes.

Pop-up UI

The pop-up option allows customers to present the E-Signing service UI in a window partly covering their own web UI. This will keep the E-Signing features in the context of the web application where it is integrated, without the technicial limitations the comes with using iframe.

Note, on mobile devices, the window will cover the entire screen.

A simple pop-up can be setup with similar JavaScript code as below. The pop-up has to be opened by a user action. The example assumes that a button with id “open-popup-button” is used to start the signing flow.

<script>
  document.addEventListener("DOMContentLoaded", function() {
    document.getElementById("open-popup-button").addEventListener("click", openCenteredPopup);
  });

  window.addEventListener("focus", keepPopupInFocus);
  window.addEventListener("click", keepPopupInFocus); // Workaround for Firefox

  let popup;

  // Get the sref (signing reference) part by first calling GetSigningProcesses. This is just an example:
  let url = "https://www.sign-preprod1.nets.eu/sign/index.html?sref=19E4C32A43F69E8A1D8A335B33A5A4B81E5BF632";

  function keepPopupInFocus() {
    if (popup && !popup.closed) {
      popup.focus();
    }
  }

  function openCenteredPopup() {
    let width = 700;
    let height = 950;
    let x = window.outerWidth/2 - width/2 + window.screenX;
    let y = window.outerHeight/2 - height/2 + window.screenY;
    openPopup(x, y, width, height);
  }

  function openPopup(x, y, width, height) {
    popup = window.open(url, "width=" + width + ",height=" + height + ",top=" + y + ",left=" + x);
  }
</script>

In the page given by the customer’s exit url (and other customer urls) closing the pop-up can be done with similar JavaScript code as below.

<script>
  window.opener.location.href = "<confirmation page>" + window.location.search;
  window.close();
</script>

Standalone UI

In the standalone UI, the E-Signing service renders the user interface using the Nets E-Signing visual interface.  Compared to the pop-up option, the standalone UI takes over the entire browser window. To access the standalone UI, the following URL can be used (for customer test):

https://www.sign-preprod1.nets.eu/sign/index.html?sref=<sign-reference>

The sign reference is retrieved from sign URL. Note that the sign reference is sent through the sref parameter for standalone mode. The resulting page from the above sign URL does not require any further styling from you i.e. the signer can be directly taken to the standalone user interface sign URL.

Embedded UI

Note: Embedded user interface is no longer recommended due to various browser security restrictions when using iframe with content from a different origins than the page itself.

The embedded option allows customers to present E-Signing service UI within their own web UI. To access the embedded UI, the following URL can be used (for customer test):

https://www.sign-preprod1.nets.eu/sign/index.html?ref=<sign-reference>  

The sign reference is retrieved from sign URL. Note that the sign reference is sent through the ref parameter for embedded mode. The page that is returned by the above sign URL can be styled with your own look-and-feel to fit your web UI. One example is to display the response from embedded UI sign URL into an iframe in ​​​​your web UI.

A simple iframe can be setup with similar HTML code as below:  

 <iframe name="E-Signing" src="https://www.sign-preprod1.nets.eu/sign/index.html?ref=E63652CDEF590BAB30F5B225E1AA8A09977F890E"></iframe>

eID selection page

For customers enabled with more than one eID, end users can choose between the available eIDs.

eID selection page for standalone and pop-up UI:

eID selection page standalone 2.PNG

eID selection page for embedded UI:

eID selection page embedded UI 2.PNG

Note: The list of eIDs will include all eIDs enabled on your configuration. The list can be skipped or modified using the AcceptedPKIs element or the forcepkivendor parameter. Only those eID's specified in this element will be listed. When using the forcepkivendor parameter, the list will be sorted in the given order.

Sign URL parameters

The sign URL is a URL through which an end user can access the document to be signed. A set of parameters can be appended to the sign URL to adjust the user experience. The parameters are appended to the sign URL like this (customer test link):

https://www.sign-preprod1.nets.eu/sign/index.html?sref=<sref value>&<parameter name>=<parameter value>​

Several parameters can be appended to the sign URL. The parameters are divided into:

Common sign URL parameters​

Parameter​​Description​Constraints
ref​This is the sign URL reference. Use this parameter to start the user signing in the embedded user interface.Not together with the sref parameter.
sref​This is the sign URL reference. Use this parameter to start the user signing in the standalone or pop-up user interface.​Not together with the ref parameter.
​lc

​The lc parameter can be used to set the language.

Read more about supported languages.

​Required: no
One of: [en | no | sv | da | fi | sv_fi]
cancel

​This parameter defines a URL to where the signer is directed if he/she chooses to terminate or cancel the signing. ​The use of this parameter overrides any use of the AbortURL element defined in the WebContexts part of the sign order.  

To update the sign order status when cancel is used, the ModifySigningProcess ​function must be implemented. ​​​

​Required: no
exit​​This parameter defines the URL where the signer is redirected upon sign completion. The use of this parameter overrides any use of the ExitURL element defined in the WebContexts part of the sign order.​​Required: no
rejectstatusurl

​This parameter is used to route the end user to a specified URL after he/she has rejected a signing. This function is only usable if the customers do not want to use their own AbortURL.

The end user flow:​

  1. ​​End user cancels the signing.
  2. End user is sent to Nets default AbortURL.
  3. End user can insert reason before reject is pushed.
  4. End user is sent to the specified rejectstatusurl.

Sample URL:

&rejectstatusurl=<URL>​

​Required: no
rejectstatusurl is not a part of the WebContexts element in the InsertOrder.​
status​This parameter defines the location the signer is sent to if an error occurs. The use of this parameter overrides any use of the ErrorURLBase element defined in the WebContexts ​part of the sign order.​Required: no
style

​This parameter can be used to point to a customer specific css file to tailor the user interface. The use of this parameter overrides any use of the StyleURL element defined in the WebContexts part of the sign order.

​Required: no


 

deflecttarget​​Where the ExitURL should be opened. Options are to keep it in iframe (_self) or take over the page (_top).

​​Required: no

Valid values: [_top, _self]

Default: _self

​eID specific sign URL param​eters

​Parameters for several of the eIDs​

​Parameter​​Description​​Constraints
​​inlinepdf​This parameter turns off the inline pdf view for the applicable eIDs. A link to the PDF will be presented instead of the PDF directly. The PDF will be opened in another browser window or PDF app.​​Valid value: false
Required: no
​​Applicable for: 
BankID (SE), BankID on mobile (NO) and Bank ID (FI)
forcepkivendor

A comma separated list of eID provider. The list limits the eID providers made available to the user for signing. If only one eID is present in the list, the user will be directly routed to the eID and not presented with a list of eIDs to sign with. 

All values prefixed with "abs:" will direct the user to an authentication-based signing for that eID. Note: The authentication-based signing parameter can not be used together with the native signing option for the same eID.

Sample usage:
​​&f​​orcepkivendor=
no_bidmob,no_bankid,abs:no_buypass

See table below for mapping of value to eID.​
​Required: no

One or more of: [no_bankid | no_bidmob | dk_nemid_js | dk_nemid-opensign | mitidse_bankid | fi_tupas | abs:no_bankid | abs:no_bidmobabs:no_buypassabs:dk_nemid_js | abs:dk_nemid-opensign | abs:mitid | abs:se_bankid | abs:fi_tupas | abs:fi_mobiilivarmenneabs:passport_reader | abs:verimi | abs:nets_sms | abs:smart_id | abs:mobile_id]

​BankID (N​​O)

​Parameter​Description​​Constraints
​​clientversion​This parameter overrides the default BankID client version configured in your configuration. Default configuration is BankID 2.1 if no changes have been requested by you.​​Required: no
One of: 2.0 | 2.1
multisign
​This parameter controls the BankID 2.1 multi-document signing functionality.
Default value is multisign=true if the clientversion parameter is 2.1 or your configuration is 2.1 (and the clientversion is not 2.0).
​​Required: no
One of: false | true
docdisplaymode​​
The docdisplaymode parameter controls the browsing context for display of the document to be signed.
window: The document to be signed will be displayed in a separate reader window.
interior: The document to be signed is displayed inside the visual boundary of the browsing context. If the parameter is not used, this is the default.
overlay: The document to be signed is displayed over the web client.
Required: no
One of: window | overlay | interior
​​framemode​​This parameter controls the browsing context of the web client itself.
iframe: The web client is loaded in an iframe. This is also the default if the parameter is not used.
window: The web client is loaded in a new window.
redirect: The browsing context is redirected to a centrally hosted BankID-branded landing page to load the client. Upon completion, the browser is redirected to a page determined by the merchant application.
​Required: no
One of: iframe | window | redirect
​​windowheight​​This parameter sets the height of the window when the framemode is set to window.
Number of pixles from top left corner of screen. Sample of a large window:
&framemode=window&
windowwidth=800&windowheight=600
​Required: no

 
Must be used together with framemode set to window.
​​windowwidth​This parameter sets the width of the window when the framemode is set to window.
Number of pixles from top left corner of screen.  See large window sample above.
​Required: no
Must be used together with framemode set to window.
​​positionx​This parameter sets the position on the x axis of the window.
positionx and positiony determines the placement of upper left corner on the client window. The values are number of pixles from upper left corner on the screen.
Example: If the values is set to zero, the client will be placed in the upper left corner of the screen.
Sample URL: 
&framemode=window&positionx=0&positiony=0
Required: no
Must be used together with framemode set to window.
​​positiony​This parameter sets the position on the y axis. See description in positionx above.
Required: no
​Must be used together with framemode set to window.​
presetid​This parameter accepts the signer's SSN. When used, the first page where the signer needs to enter his/hers SSN is skipped since the value is automatically forwarded to BankID. This parameter is mainly a parameter used to reduce the number of steps for a signer. If you want the signer's SSN to be validated towards the actual signer of the document, you need to set the SSN in the SignerID element in the sign order.

Note: If you have defined the SignerID for BankID with a SSN in the AcceptedPKIs ​element of the sign order, the presetid will be ignored and the SignerID will apply. The usage of SignerID will also trigger that the enter SSN page is skipped. 
Required: no
​base64 encoded.

​BankID on mobil​​​​e (NO)

​Parameter​Description​Constraints
​​dob6​

​​6-digit date of birth for BankID on mobile (NO). Together with the celnr8 parameter, the user will not be shown the first step in the BankID on mobile (NO) signing dialogue.

Example usage: &celnr8=MTIzNDU2Nzg==&dob6=MTIzNDU2

​Required: no
Encoding: Base64
Must be used together with celnr8.
​​celnr8

​8-digit mobile/cell number for BankID on mobile (NO).  Together with the dob6 parameter, the user will not be shown the first step in the BankID on mobile (NO) signing dialogue. See example usage above.

​Required: no

Encoding: Base64

Must be used together with dob6.

​BankID (SE)​​​​

​Parameter​Description​Constraints
​​autostart​​​Used to inform the service if it shall try to start the eID client automatically if the signer is using the device where the eID client is located. ​Required: no
Encoding: [ true | false ]

​​NemID (DK)​​​

​Parameter​​Description​Constraints
​​nemid_clientmode​​​The nemid_clientmode parameter is used to control the ​NemID JavaScript client mode. There are two modes: limited​ and standard.​
If not used, default NemID client mode is currently standard.
​Required: no
​One of: standard |                 limited
transactiontextT​his is a transaction text displaye​d in the end user's NemID code app.​Required: no
Max length: 100 char

​​​​Bank ID (FI)

​Parameter​​Description​Constraints
​​forcebank​​Pre-select ​the bank to use for Bank ID (FI). This parameter can only be​ used in combination with forcepkivendor=fi_tupas.
If the parameter is not used, a list of all the banks configured on the customer site will be displayed.
Required: no
One of: [nordea | opbank | danske | handelsbanken | aland | sbank | aktia | popbank | savingsbank | omasp]​

​​​MitID Authentication Based Signing (ABS)

​Parameter​​Description​Constraints
​​appswitchos​​Ena​ble MitID app-switching for selected operating system (os).
Required: no
One of:  [ ios android ]​
​​​appswitchurlUniversal link to customer's app
​​
​​transactiontextThis is a transaction text displayed in the end user's MitID app or webpage. 
Required: no
Max length: 100 char​​​

Mapping of eID to forcepkivendor parameters:

eID​​forcepkivendor parameter
​BankID (NO)

​no_bankid or abs:no_bankid

​BankID on mobile (NO)

no_bidmob ​or abs:no_bidmob

​​BankID (SE)​​se_bankid or abs:se_bankid
​Buypass (NO)​abs:no_buypass
​​Finnish Bank ID (FI)​fi_tupas or abs:fi_tupas
​MitID (DK)​mitid or abs:mitid
​Mobiilivarmenne (FI)​​abs:fi_mobiilivarmenne
​NemID with key card (DK)

dk_nemid_js​ or abs:dk_nemid_js

​NemID with key file (DK)

dk_nemid-opensign​ or abs:dk_nemid-opensign

Nets One time codeabs:nets_sms
​Nets Passport Reader​abs:passport_reader
​Verimi
​abs:verimi
​Smart-ID
​abs:smart_id
​Mobile-ID
​abs:mobile_id

​Mapping of bank to forcebank parameter:

​Bank​forcebank parameter
​Nordea​nordea
Osu​uspankki​opbank
​Danske Bank​danske
​Handelsbanken​handelsbanken
​Ålandsbanken​aland
​S-Pankki​sbank
​Aktia​aktia
​POP Pankki​popbank
​Säästöpankki​savingsbank
​Oma Säästöpankki​​​omasp

CSS styling

All pages (except for the eID clients) can be adjusted. Nets has a default style, but customers can override this by either adding your own style when defining the WebContext of the sign order or by appending the style parameter to the ​sign URL.

See the Nets default for elements to change. This can be downloaded from: https://www.sign.nets.eu/sign/signng.css

Language support

E-Signing support these languages:

  • English (en)
  • Norwegian bokmål (no)
  • Norwegian nynorsk (nn_no)
  • Swedish (sv)
  • Danish (da)
  • Finnish (fi)
  • Finnish-Swedish (sv_fi)
  • German (de_DE)
  • Estonian (et_EE)
  • Lithuanian (lt_LT)
  • ​Latvian (lv_LV)​​

Note: Finnish-Swedish is only supported in Embedded UI mode.

The language presented to the end user is based on these criteria:

  • If the lc parameter is added to the sign URL, the language specified as the value will be presented to the end user.
  • If the language parameter is not used, the language in the end user's web browser are presented.
  • If no supported languages are available in the browser or the language parameter is not used, then English as default will be displayed.

 See the description of the lc parameter in the Sign URL parameters section above.