@cfxlabsinc/b2b-services
    Preparing search index...

    Type Alias PinnedMatcherCriteria

    PinnedMatcherCriteria: Partial<
        {
            bankId: BankId;
            cashDepositRetailerId: string;
            countryCode: string;
            dayOfWeek: number;
            entityType: "IDENTITY"
            | "ORGANIZATION";
            fboAccountNumber: string;
            hasIdentityDocument: boolean;
            ledgerAccountId: string;
            ledgerProgramId: string;
            productId: ProductName;
            regionCode: string;
            sourceAmount: string;
            sourceCurrency: string;
            sourceWalletType: SourceWalletType;
            speed: Speed;
            targetAmount: string;
            targetCurrency: string;
            timeOfDay: string;
            usage24hCount: string;
            usage24hUsd: string;
            usage30dCount: string;
            usage30dUsd: string;
            usage7dCount: string;
            usage7dUsd: string;
            usageCalendarMonthCount: string;
            usageCalendarMonthUsd: string;
            verificationByo: boolean;
            victorCounterpartyId: string;
            virtualAccountId: string;
            virtualAccountNumber: string;
            virtualAccountProvider: string;
            virtualAccountStatus: "ACTIVE" | "PENDING";
        },
    >

    JSON-serializable shape of MatcherCriteria. Every numeric field (BigNumber | number) is rendered as its decimal string form because JSON.parse cannot reconstruct a BigNumber and any pin we audit must survive a jsonb round-trip without lossy Number coercion.

    Used as the $type<> for product_quote.data (the persisted criteria snapshot the resolver evaluated against) and produced by toPinnedCriteria in product-services/src/internal/pinnedCriteria.ts — that codec lives outside the schema module so this file stays free of BigNumber-arithmetic code.