Skip to main content

Use cases

Signature tunnel customisation (21 ui_config fields)

Compliant with EU-SES spec (eIDAS-certified)

The Scell.io signature tunnel is fully customisable via 21 `ui_config` fields mapped onto the eIDAS EU-SES spec (v1.0.17 from OpenAPI.com, certified provider). Categories: sidebar (sidebar_color, sidebar_text_color, sidebar_logo_url), header (header_background_color, header_text_color, header_logo_url), footer (footer_text, footer_color, footer_text_color), buttons (button_color, button_text_color, button_hover_color), sign button (sign_button_color, sign_button_text_color), hiding (hide_powered_by, hide_help, hide_download), iframe (iframe_ancestors[]). Additional `signature_options` block: `signature_mode` (typed/drawn/both), `signer_must_read` (mandatory scroll before signing), `user_editable_data`, `timezone` (IANA). Scell.io snake_case names are internally mapped to the partner's camelCase convention.

Key facts

  • 21 `ui_config` fields (sidebar, header, footer, buttons, hiding, iframe)
  • `signature_options` block: mode, scroll, timezone
  • Signature mode: `typed` / `drawn` / `both`
  • `signer_must_read`: forces full scroll before signing
  • `iframe_ancestors[]`: parent domain whitelist (anti-clickjacking)
  • No legacy fields (logo_url, primary_color, company_name)

Code example

import { ScellClient } from '@scell/sdk';
const scell = new ScellClient({ apiKey: process.env.SCELL_SECRET_KEY! });

const sig = await scell.signatures.create({
  document: { name: 'cgv.pdf', content_base64: pdfBase64 },
  signers: [{ email: 'client@example.com', phone: '+33612345678', first_name: 'Marie', last_name: 'Curie' }],
  signature_options: {
    signature_mode: 'both',
    signer_must_read: true,
    timezone: 'Europe/Paris',
  },
  ui_config: {
    sidebar_color: '#1E3A8A',
    sidebar_text_color: '#FFFFFF',
    sidebar_logo_url: 'https://cdn.example.com/logo.svg',
    header_background_color: '#FFFFFF',
    button_color: '#1E3A8A',
    sign_button_color: '#16A34A',
    hide_powered_by: true,
    iframe_ancestors: ['https://app.example.com'],
  },
});

See also

Your cookie preferences

We use cookies to improve your experience. Essential cookies are always active. Cookie policy.