Beta

Inkoopautomatisering

End-to-end API voor het indienen en intrekken van biedingen op 5 openbare aanbestedingsportalen. Versleuteling, bestandsupload en stapsgewijze logging — alles via één enkele REST API. Momenteel in bèta — om toegang aan te vragen kunt u contact met ons opnemen.

Ondersteunde portalen

GET/api/v2/procurement/portals

NEN (nen.nipez.cz), E-ZAK (instantie-URL), TenderArena, Eveza (instantie-URL), E-zakazky.cz (instantie-URL). E-ZAK, Eveza en E-zakazky vereisen portalUrl — de URL van de specifieke instantie.

Een bieding indienen

POST/api/v2/procurement/bids

Bodyparameters

ParameterTypeBeschrijving
portal*stringNEN | EZAK | TENDERARENA | EVEZA | EZAKAZKY
tenderId*stringAanbestedings-ID op het portaal
credentialIdstringOpgeslagen referentie-ID (of geef inloggegevens mee)
credentialsobject{username, password, portalUrl?} — alternatief voor credentialId
filesarray[{name, url, size}] — biedingsbestanden
criteriaarray[{name, value}] — gunningscriteria
tenderTitlestringAanbestedingstitel (voor overzicht)
dryRunbooleantrue = test zonder definitieve indiening
curl -X POST https://veritra.io/api/v2/procurement/bids \
  -H "X-API-Key: mrw_procurement_..." \
  -H "Content-Type: application/json" \
  -d '{
    "portal": "NEN",
    "tenderId": "N006-24-V00012345",
    "credentialId": "clx1abc...",
    "files": [{"name": "bod.pdf", "url": "https://..."}],
    "criteria": [{"name": "Biedprijs", "value": "1500000"}]
  }'
{
  "jobId": "clx1abc...",
  "status": "PENDING",
  "message": "Job created — will be processed by cron"
}

Taakstatus

GET/api/v2/procurement/bids/:jobId
{
  "id": "clx1abc...",
  "type": "SUBMIT_BID",
  "status": "COMPLETED",
  "portal": "NEN",
  "steps": [
    {"step": 1, "action": "login", "status": "ok", "durationMs": 1240},
    {"step": 2, "action": "load_tender", "status": "ok", "durationMs": 890},
    {"step": 3, "action": "encrypt", "status": "ok", "durationMs": 320},
    {"step": 4, "action": "upload_file", "status": "ok", "durationMs": 2100},
    {"step": 5, "action": "submit", "status": "ok", "durationMs": 1560}
  ]
}

Biedenlijst

GET/api/v2/procurement/bids

Een bod intrekken

DELETE/api/v2/procurement/bids/:jobId

Bodyparameters

ParameterTypeBeschrijving
reasonstringReden voor intrekking (optioneel)

AI-analyse

POST/api/v2/procurement/analyze
ParameterTypeBeschrijving
tenderId*stringAanbestedings-ID in de RWX-database

Geeft een gestructureerde JSON terug met 50+ velden: titel, waarde, criteria, kwalificaties, risico's, AI-aanbevelingen en een schatting van de winkans.

Portaalgegevens

Beheer portaalgegevens in het dashboard op /dashboard/procurement/credentials. Wachtwoorden worden versleuteld met AES-256-GCM en nooit in platte tekst opgeslagen.

Creditkosten

ParameterTypeBeschrijving
Bod indienenPOST bids50 credits
Bod intrekkenDELETE bids/:id20 credits
AI-analysePOST analyze10 credits
Lezen (lijst, detail)GET1 credit
Portalen weergevenGET portals0 credits

Workflow

Typische stroom: 1) Sla gegevens op in het dashboard → 2) Test de inlog → 3) Zoek een aanbesteding (GET tenders) → 4) Analyseer de documentatie (POST analyze) → 5) Dien een bod in (POST bids) → 6) Volg de status (GET bids/:jobId)