Kiirjuhend

Alustage Chaindociga tööd vähem kui 10 minutiga. Käesolev juhend hõlmab nii veebiliidest kui ka API integratsiooni arendajatele.

Lõppkasutajatele

Samm-sammult: teie esimene allkiri

1RegistreeruLooge tasuta konto aadressil app.chaindoc.io. Kinnitage oma e-posti aadress.

2Lae dokument ülesKlõpsake nuppu „Uus dokument” ja laadige oma fail üles. Toetab PDF-faili, Office'i dokumente, pilte (kuni 50 MB).

3Lisa dokumendi üksikasjadSisestage dokumendi nimi, kirjeldus ja sildid organiseerimiseks. Valige juurdepääsutase (privaatne, meeskond või avalik).

4Loo allkirja taotlusKlõpsake nuppu „Nõua allkirju”, lisage saajate e-posti aadressid, määrake tähtaeg ja kohandage sõnumit.

5Konfigureerige allkirja voogValige allkirjastamise järjekord (paralleelne või järjestikune), aktiveerige vajadusel KYC, valige teavituste eelistused.

6Saada taotlusVaadake üle ja saatke. Saajad saavad e-kirja turvalise allkirjastamislingiga.

7Jälgi edusammeJälgige allkirjastamise staatust reaalajas. Saage teateid, kui allkirjad on kogutud.

8Lae alla allkirjastatud dokumentKui olete valmis, laadige alla allkirjastatud dokument koos plokiahela sertifikaadiga.

Arendajatele

Integreerige Chaindoc oma rakendusse, kasutades meie REST API-d ja SDK-sid.

1. Hankige API-võtmed

2. Paigalda SDK

Valige SDK vastavalt oma kasutusjuhtumile:

# Node.js 18+ required
npm install @chaindoc_io/server-sdk

3. Looge oma esimene dokument API kaudu

server.ts
import { Chaindoc } from '@chaindoc_io/server-sdk';
import { readFile } from 'fs/promises';

// Initialize SDK
const chaindoc = new Chaindoc({
  secretKey: process.env.CHAINDOC_SECRET_KEY!,
});

// 1. Upload document
const buffer = await readFile('./contract.pdf');
const file = new Blob([buffer], { type: 'application/pdf' });
const { media } = await chaindoc.media.upload([file]);

// 2. Create document record
const doc = await chaindoc.documents.create({
  name: 'Service Agreement',
  description: 'Q4 2024 Contract',
  media: media[0],
  status: 'published', // Triggers blockchain verification
  hashtags: ['#contract', '#2024'],
  meta: [{ key: 'client', value: 'Acme Corp' }],
});

console.log('Document created:', doc.documentId);

4. Loo allkirja taotlus

server.ts
// Create signature request for multiple signers
const sigRequest = await chaindoc.signatures.createRequest({
  versionId: doc.document.versions[0].uuid,
  recipients: [
    { email: 'signer1@example.com' },
    { email: 'signer2@example.com' },
  ],
  deadline: new Date('2024-12-31'),
  message: 'Please review and sign this agreement',
  embeddedFlow: true, // Enable for frontend integration
});

console.log('Signature request created:', sigRequest.signatureRequest.uuid);

5. Integreerige allkirjastamise liides (esmane kasutajaliides)

Veebirakendusse sisseehitatud allkirjastamiseks:

// Create embedded session for signer
const session = await chaindoc.embedded.createSession({
  email: 'signer1@example.com',
  metadata: {
    documentId: doc.documentId,
    signatureRequestId: sigRequest.signatureRequest.uuid,
  },
});

// Return sessionId to frontend
res.json({ sessionId: session.sessionId });

6. Jälgige staatust ja käsitelge sündmusi

terminal
// Check signature request status
const status = await chaindoc.signatures.getRequestStatus(
  sigRequest.signatureRequest.uuid
);

if (status.signatureRequest.status === 'completed') {
  console.log('All signatures collected!');
  // Download signed document
  // Send notifications
  // Update your database
}

7. Veebihookide seadistamine (valikuline)

Saada reaalajas teateid sündmuste kohta:

webhooks.ts
// Configure webhook endpoint
app.post('/webhooks/chaindoc', (req, res) => {
  const event = req.headers['x-webhook-event'];
  const payload = req.body;
  
  switch (event) {
    case 'document.verified':
      console.log('Document verified on blockchain:', payload.txHash);
      break;
    case 'signature.request.completed':
      console.log('All signatures collected!');
      // Send notifications, update status, etc.
      break;
  }
  
  res.status(200).send('OK');
});

Täielik töövoo näide

Siin on täielik näide, mis ühendab kõik sammud:

complete-workflow.ts
import { Chaindoc } from '@chaindoc_io/server-sdk';
import { readFile } from 'fs/promises';

async function createSigningWorkflow() {
  const chaindoc = new Chaindoc({
    secretKey: process.env.CHAINDOC_SECRET_KEY!,
  });
  
  // Step 1: Upload document
  const buffer = await readFile('./contract.pdf');
  const file = new Blob([buffer], { type: 'application/pdf' });
  const { media } = await chaindoc.media.upload([file]);
  
  // Step 2: Create document
  const doc = await chaindoc.documents.create({
    name: 'Service Agreement',
    description: 'Contract for consulting services',
    media: media[0],
    status: 'published',
    hashtags: ['#contract'],
    meta: [],
  });
  
  // Step 3: Create signature request
  const sigRequest = await chaindoc.signatures.createRequest({
    versionId: doc.document.versions[0].uuid,
    recipients: [{ email: 'signer@example.com' }],
    deadline: new Date('2024-12-31'),
    embeddedFlow: true,
  });
  
  // Step 4: Create session for frontend
  const session = await chaindoc.embedded.createSession({
    email: 'signer@example.com',
    metadata: {
      documentId: doc.documentId,
      signatureRequestId: sigRequest.signatureRequest.uuid,
    },
  });
  
  return {
    documentId: doc.documentId,
    sessionId: session.sessionId,
  };
}

// Usage
const { documentId, sessionId } = await createSigningWorkflow();
console.log('Ready for signing:', { documentId, sessionId });

Järgmised sammud

  • Loe installimisjuhendit, et saada üksikasjalikku teavet SDK seadistamise kohta.
  • Tutvuge API dokumentatsiooniga, et saada täielik ülevaade lõpppunktidest.
  • Vaadake SDK dokumentatsioonist raamistikupõhiseid näiteid (React, Vue, Angular)
  • Seadista veebihookid reaalajas sündmuste teavituste jaoks
  • Vaadake läbi tootmise kasutuselevõtu parimad turvapraktikad.

Korduma kippuvad küsimused

Kui kaua võtab aega plokiahela kontrollimine?

Blockchaini kontrollimine võtab sõltuvalt võrgustikust tavaliselt aega 1–5 minutit. Dokumendid on kohe kättesaadavad, kontrollimine toimub asünkroonselt.

Kas ma saan testida ilma tasulise paketi ostmata?

Jah! Tasuta pakett sisaldab juurdepääsu veebiliidesele. API-le juurdepääsuks on vaja ärikontot, kuid testimiseks saate kasutada sandbox-keskkonda.

Kas allkirjad on õiguslikult siduvad?

Jah, Chaindoc-allkirjad vastavad eIDASi, ESIGN Acti ja UETA eeskirjadele. Blockchaini kontrollimine pakub täiendavat õiguslikku tõendusmaterjali.

Millised failivormingud on toetatud?

PDF, DOC, DOCX, XLS, XLSX, PPT, PPTX, TXT, JPG, PNG, GIF, WEBP, SVG, MP4, AVI, MOV, WMV. Faili maksimaalne suurus: 50 MB.