qc-custody binary, with its default and a one-line description. Source of truth: custody/config/config.go.
All variables are prefixed CUSTODY_. They may be set in the process environment, in a .env file, or via your orchestrator’s secret-injection mechanism.
Server
Database
Quantum Chain node
Chain
Authentication and SSO
Webhooks
Signer
CUSTODY_SIGNER_* variables also accept CUSTODY_ENQLAVE_* aliases. If both are set, CUSTODY_SIGNER_* wins.
RBAC
Rate limiting
Telemetry (OpenTelemetry)
Secrets provider
Compliance / AML
Validation rules
The service refuses to start if:CUSTODY_DB_PASSWORDis empty andCUSTODY_DB_IAM_AUTH=false.CUSTODY_NODE_RPC_URLis empty.CUSTODY_SSO_ENABLED=trueandCUSTODY_SSO_JWT_SIGNING_KEYis empty.CUSTODY_COMPLIANCE_PROVIDER=shuftiproand eitherCUSTODY_SHUFTIPRO_CLIENT_IDorCUSTODY_SHUFTIPRO_SECRET_KEYis empty.CUSTODY_COMPLIANCE_PROVIDER=chainalysisandCUSTODY_CHAINALYSIS_API_KEYis empty.CUSTODY_SIGNER_TYPE=grpcandCUSTODY_SIGNER_GRPC_TARGETis empty.CUSTODY_SIGNER_BACKENDis notenqlaveorqey.CUSTODY_SIGNER_BACKEND=qeyandCUSTODY_SIGNER_TYPEis notgrpc.CUSTODY_SIGNER_KEYGEN_MODEis notlocalorqey.CUSTODY_SIGNER_KEYGEN_MODE=qeyandCUSTODY_SIGNER_BACKENDis notqey.CUSTODY_WEBHOOK_ENCRYPTION_KEYis set but is not exactly 64 hex chars.