Obserwuj
Dodaj NIP-y, od których zależysz. Wybierz źródła i częstotliwość dla każdego kontrahenta — resztą zajmie się harmonogram.
Monitorujemy VAT / KRS / KRZ — wyłącznie oficjalne rejestry
RiskWatch monitoruje oficjalne polskie rejestry — VAT, KRS i KRZ — dla każdej firmy, od której zależysz. Zmiany stają się punktowanymi zdarzeniami, podpisanymi i dostarczanymi do Twoich systemów.
Darmowy plan obejmuje 25 firm na Białej liście VAT bez podpinania karty.
Dodaj NIP-y, od których zależysz. Wybierz źródła i częstotliwość dla każdego kontrahenta — resztą zajmie się harmonogram.
Wyłącznie oficjalne rejestry. Dane VAT i KRS płyną wprost z systemów państwowych, a KRZ sprawdzamy w osobnym, kontrolowanym środowisku.
Każdy odczyt porównujemy z poprzednim. Szum odpada — zdarzeniem staje się tylko zmiana, która ma znaczenie.
Zdarzenia mają udokumentowane wagi — od wniosków upadłościowych po zmiany w zarządzie. Wynik trafia do pasma od LOW do CRITICAL.
Zdarzenia trafiają prosto do Twoich systemów jako podpisane webhooki. Twój zespół wie, że przyszły od nas — i może działać automatycznie.
Status rejestracji prosto z Ministerstwa Finansów: czynny, zwolniony, wykreślony, przywrócony. Rejestr, który decyduje, czy fakturę można bezpiecznie opłacić.
Likwidacje, wykreślenia, zmiany zarządu i adresu z OpenAPI Krajowego Rejestru Sądowego.
Postępowania upadłościowe i restrukturyzacyjne. Gdy rejestr nie daje pewnej odpowiedzi, nigdy nie zgłaszamy „czysto”.
Każde zdarzenie ma udokumentowaną wagę. Wynik to suma nierozwiązanych przesłanek, w pasmach czytelnych na pierwszy rzut oka.
Niepewny odczyt nie zastępuje ostatniego zweryfikowanego stanu. Kontrola kończy się błędem i nie tworzy nowej czystej bazy odniesienia.
Klucze API przechowujemy jako hashe. Sekrety webhooków są szyfrowane i odszyfrowywane przez serwer wyłącznie wtedy, gdy musi podpisać dostarczenie.
Dane bierzemy wprost z rejestrów państwowych, nie z kopii ani agregatorów. Zdarzenie zapisuje kod rejestru i typ sygnału; krytyczne ustalenia zawsze weryfikuj w oficjalnym rejestrze.
Publiczne wejścia monitoringu przyjmują NIP podmiotu gospodarczego. RiskWatch nie oferuje monitoringu konsumenckiego ani wyszukiwania osób.
curl -X POST https://api.riskwatch.pl/v1/watchlist \
-H "Authorization: Bearer rw_live_yourkey" \
-H "Idempotency-Key: add-batch-014" \
-H "Content-Type: application/json" \
-d '{"nips":["<YOUR_VALID_NIP>"],"sources":["VAT"]}'import { createHmac, timingSafeEqual } from "node:crypto";
// During secret rotation the header carries several v1= signatures
// (t=...,v1=<current>,v1=<previous>); accept a match on any of them.
const parts = signatureHeader.split(",").map((part) => part.trim());
const t = (parts.find((part) => part.startsWith("t=")) ?? "").slice(2);
const age = Math.abs(Date.now() / 1000 - Number(t));
if (!t || !Number.isFinite(age) || age > 300) throw new Error("stale");
const digest = Buffer.from(
createHmac("sha256", webhookSecret).update(`${t}.${rawBody}`).digest("hex"),
"hex"
);
const ok = parts
.filter((part) => part.startsWith("v1="))
.some((part) => {
const actual = Buffer.from(part.slice(3), "hex");
return actual.length === digest.length && timingSafeEqual(actual, digest);
});