@cfxlabsinc/b2b-services
    Preparing search index...
    Index
    instance: (...args: []) => AchCreditDepositQuoteService = ...

    The process default: built from each dependency's own instance().

    • Parameters

      • args: {
            customerId: string;
            idempotencyKey: string;
            onCancelled?: "return" | "recreate";
            quoteId: string;
        }
        • customerId: string
        • idempotencyKey: string
        • OptionalonCancelled?: "return" | "recreate"

          Only processFromBankTransaction passes "recreate". Left at the default here, where the key is customer-supplied and idempotency means the same key always answers the same thing.

        • quoteId: string

      Returns Promise<{ ok: true; value: { depositId: string } }>

    • Parameters

      • args: {
            customerId: string;
            entityId: string;
            ffcMemo?: string;
            idempotencyKey?: string;
            sourceAmount: BigNumber;
            sourceCurrency: string;
            targetCurrency: "MOVEUSD";
            walletAddress: Address;
            walletBlockchain: "SOLANA";
        } & AchCreditEntry
        • customerId: string
        • entityId: string
        • OptionalffcMemo?: string
        • OptionalidempotencyKey?: string

          Caller-supplied dedupe token threaded into the audit quote so a re-drive of the same source (e.g. bank-transaction webhook redelivery) reuses the pinned product_quote instead of orphaning a fresh one.

        • sourceAmount: BigNumber
        • sourceCurrency: string
        • targetCurrency: "MOVEUSD"
        • walletAddress: Address
        • walletBlockchain: "SOLANA"

      Returns Promise<
          | { error: QuoteError; ok: false }
          | { ok: true; value: DepositQuote | null },
      >

    • Parameters

      • args: {
            achId?: string;
            achTraceId?: string;
            bankTransactionId: string;
            customerId: string;
            entityId: string;
            memo?: string;
            senderName?: string;
            walletAddress: Address;
            walletBlockchain: "SOLANA";
        }
        • OptionalachId?: string
        • OptionalachTraceId?: string
        • bankTransactionId: string
        • customerId: string
        • entityId: string
        • Optionalmemo?: string

          Fallbacks: each fills its field only when the bank transaction lacks it.

        • OptionalsenderName?: string
        • walletAddress: Address
        • walletBlockchain: "SOLANA"

      Returns Promise<
          | { ok: true; value: { depositId: string } }
          | {
              error:
                  | ServiceError<"QUOTE_FAILED">
                  | ServiceError<"INVALID_BANK_TX", { bankTransactionId: string }>
                  | ServiceError<
                      "DEPOSIT_CANCELLED_AFTER_MINT",
                      { depositId: string; receiptId: string },
                  >;
              ok: false;
          },
      >