Vai al contenuto principale
Approvazione specifica delle clausole vessatorie ex art. 1341 c.c. — servizio per imprese (B2B)

Piattaforma di test: prova Convalido su un contratto d'esempio

Questa pagina è un contratto B2B fittizio con tre clausole vessatorie e il widget vero di Convalido collegato a un account dimostrativo. Inserisci la tua email o il tuo cellulare, ricevi davvero il codice, confermalo: nel pannello "Cosa succede" vedi in tempo reale ogni chiamata all'API e tutto ciò che viene registrato — esattamente come accadrebbe sul tuo sito.

A cosa serve

A capire il flusso e la prova prodotta prima di registrarti o scrivere una riga di codice: quanti passaggi fa il firmatario, cosa riceve, cosa resta agli atti.

Cosa provare

  • gli artt. 12 e 15 approvati in gruppo con un solo codice (due evidenze);
  • l'art. 18 approvato singolarmente;
  • un codice sbagliato, per vedere tentativi e telemetria;
  • il pulsante che modifica il testo della clausola dopo l'invio del codice: la verifica viene rifiutata.

Cosa non è

Un ambiente probatorio: le approvazioni fatte qui appartengono all'account dimostrativo, sono cancellate dopo pochi giorni e non valgono nulla. Per provare sul tuo sito usa una chiave di test del tuo account.

Condizioni generali di fornitura B2B — ordine demo-20260902-39f92

1. Oggetto. Il Fornitore si impegna a consegnare i beni indicati nell'ordine alle condizioni qui riportate.

2. Pagamento. Bonifico a 30 giorni data fattura.

3. Consegna. Termini indicativi; il Fornitore comunica eventuali ritardi.

Art. 12 — Foro competente e limitazione di responsabilità. Per qualsiasi controversia derivante dal presente contratto è competente in via esclusiva il Foro di Bari. La responsabilità del Fornitore è in ogni caso limitata all'importo dell'ordine, con esclusione di ogni danno indiretto o mancato guadagno.
Art. 15 — Rinnovo tacito. Il contratto si rinnova tacitamente per periodi di uguale durata salvo disdetta da comunicarsi a mezzo PEC almeno 60 giorni prima della scadenza.

Gli artt. 12 e 15 sono vessatori ex art. 1341 c. 2 c.c.: qui vengono approvati in gruppo, con un solo codice che produce un'evidenza per ciascuna clausola.

Art. 18 — Decadenza dai reclami. Eventuali reclami sulla merce devono essere comunicati per iscritto entro 8 giorni dal ricevimento, a pena di decadenza.

L'art. 18 è approvato singolarmente, con un codice dedicato: i due modi convivono nello stesso contratto e il contatto già inserito viene riproposto.

Prova anche

  • Inserisci un codice sbagliato: vedrai i tentativi residui scendere e l'evento in telemetria.
  • Approva le clausole in gruppo e poi l'art. 18: nel pannello compaiono un'evidenza per clausola, ciascuna con la propria marca temporale RFC 3161.
  • Dopo aver richiesto il codice, e poi verifica: la richiesta viene rifiutata con clause_mismatch.

Cosa succede

Chiamate del widget all'API (il codice OTP e la chiave completa non vengono mai mostrati).

  • In attesa…

Come configurare il servizio sul tuo sito

1. Inserisci il widget al posto del checkbox

<div id="clausola-foro">…testo della clausola…</div>

<div data-convalido
     data-api-key="cv_live_LA_TUA_CHIAVE"
     data-clause-id="foro-competente"
     data-contract-id="ID_ORDINE"
     data-clause-selector="#clausola-foro"
     data-account-id="ID_CLIENTE (opzionale)"></div>

<script src="https://api.convalido.it/widget.js" async></script>
AttributoSignificato
data-api-keyChiave del merchant (dominio del sito in allowlist).
data-clause-idIdentificativo stabile della clausola nel tuo sistema.
data-contract-idRiferimento all'ordine/contratto.
data-clause-selectorSelettore CSS dell'elemento che mostra il testo: il widget lo rilegge al momento della verifica.
data-account-idOpzionale: il tuo id cliente, per cercare le approvazioni in dashboard.

A verifica avvenuta il widget aggiunge al <form> che lo contiene un campo nascosto convalido_evidence_token ed emette l'evento convalido:verified.

2. Valida il token sul tuo backend prima di concludere l'ordine

Non fidarti dell'esito lato browser: conferma server-to-server con la tua chiave.

// PHP
$token = $_POST['convalido_evidence_token'] ?? '';
$ch = curl_init('https://api.convalido.it/v1/evidence/verify-token');
curl_setopt_array($ch, [
  CURLOPT_POST => true,
  CURLOPT_HTTPHEADER => ['Content-Type: application/json', 'X-Api-Key: cv_live_LA_TUA_CHIAVE'],
  CURLOPT_POSTFIELDS => json_encode(['evidence_token' => $token]),
  CURLOPT_RETURNTRANSFER => true,
]);
$res = json_decode(curl_exec($ch), true);
if (($res['valid'] ?? false) !== true
    || $res['evidence']['contract_id'] !== $idOrdine
    || $res['evidence']['clause_id'] !== 'foro-competente') {
    // clausola NON approvata: blocca l'ordine
}
# cURL
curl -X POST https://api.convalido.it/v1/evidence/verify-token \
  -H "X-Api-Key: cv_live_LA_TUA_CHIAVE" -H "Content-Type: application/json" \
  -d '{"evidence_token":"…"}'

In seguito: GET /v1/evidence/{evidence_id} per il record completo, GET /v1/evidence/{evidence_id}/bundle per il pacchetto probatorio, GET /v1/evidence/search?email=… per la ricerca. Tutto è disponibile anche nella dashboard account.convalido.it. Guida completa: documentazione.