Builds scraper credentials for a bank.
Normalises phoneNumber at this boundary so the upstream
validateInternationalDigits step never falls back to the raw input.
When otpRetriever is provided, it is included in the credentials for
banks that read otpCodeRetriever from credentials (oneZero, pepper,
payBox), and is also passed via ScraperOptions for banks that use
OtpHandler (beinleumi). The otpLongTermToken branch covers API-direct
banks; the retriever is still attached when supplied so upstream's
cold-path fallback works when the token is stale.
Builds scraper credentials for a bank. Normalises phoneNumber at this boundary so the upstream
validateInternationalDigitsstep never falls back to the raw input. When otpRetriever is provided, it is included in the credentials for banks that read otpCodeRetriever from credentials (oneZero, pepper, payBox), and is also passed via ScraperOptions for banks that use OtpHandler (beinleumi). The otpLongTermToken branch covers API-direct banks; the retriever is still attached when supplied so upstream's cold-path fallback works when the token is stale.