SKOOR Risk Money movement. Skoored by AI.

Transfer

A dollar moving on a rail, with its Transaction Risk Skoor.

Every transfer the bank's webhooks describe, on any rail, keyed by Column's id. The Transaction Risk Skoor (trs-v1) is a number from 0 to 100 stored on the row with its band, version, n and confidence; null means too little history, never zero risk. Bands: clear 0–29, review 30–69, hold 70–100. Transfers are written by ingest; the API rescores them and reads them inside reports and pre-flights.

Transfer

FieldTypeNotes
idstringColumn transfer id, any rail.
tenantIdstring (uuid)
programIdstring (uuid)
rail"ach" | "wire" | "realtime" | "book" | "intl_wire" | "check" | "card"
direction"incoming" | "outgoing"
type"CREDIT" | "DEBIT" | nullACH type, null on other rails.
amountCentsstringInteger cents as a string (bigint-safe).
currencystringISO 4217, default USD.
statusstringColumn's status enum, upper-cased.
entityIdstring | null
accountIdstring | null
counterpartyIdstring | null
counterpartyCountrystring | nullISO 3166-1 alpha-2.
secCodestring | nullACH SEC code.
returnCodestring | nullACH return code when returned (R01…).
returnedAtstring | null (date-time)
effectiveAtstring | null (date-time)
columnCreatedAtstring (date-time)When the bank created it.
skoorinteger | nullTransaction Risk Skoor 0–100; null until scored or when history is too thin.
skoorBand"clear" | "review" | "hold" | "unscored" | null
skoorVersionstring | nullScorer version, e.g. trs-v1.
skoorNinteger | nullObservations behind the baselines.
skoorConfidencenumber | null0–1; null when the Skoor is null.
skoorInputsobject | null
skooredAtstring | null (date-time)
rawobjectThe bank's own object as last delivered.
updatedAtstring (date-time)

Reason

FieldTypeNotes
idstringStable reason id, e.g. TRS-ENT-01.
signalstringThe signal code the scorer emitted.
weightnumberPoints added.
hardboolean
sentencestringWhat a compliance officer reads.
detail (optional)string

SkoorSignal

FieldTypeNotes
codestring
weightnumber
hard (optional)boolean
detail (optional)string

Endpoints

post/api/skoor/backfill/{programId}

Rescore every transfer on a program

Recomputes the Transaction Risk Skoor for every transfer on the program with the current scorer. The bearer must be the operator token of the tenant that owns the program; X-Operator is not required.

AuthBearer (program's tenant); no X-Operator
OperationTransfer · POST /api/skoor/backfill/{programId}

Parameters

NameInTypeNotes
programIdpathstring (uuid)Program id.

Responses

200 — How many transfers were scored. object

FieldTypeNotes
scoredinteger

401 — Bearer is not the owning tenant's operator token. Error

FieldTypeNotes
errorstringWhat went wrong, in one sentence.
requestId (optional)stringPresent once the gateway is live: the X-Request-Id of the failed request.

Example

curl -s -X POST "https://skoor.ai/risk/api/skoor/backfill/a1e0c2d4-6b7f-4d8e-9a3b-0c1d2e3f4a55" \
  -H "Authorization: Bearer test_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"

← All objects