              "count" (count transfers)
              "limit" limit)
   (let [checksum (eip55/address->checksum address)
-        min-known-block (or (get-min-known-block db address)
-                            (:ethereum/current-block db))
+        max-known-block (or (get-max-block-with-transfers db address)
+                            0)
         effects (cond-> [(when (seq transfers)
-                           (set-lowest-fetched-block checksum transfers))]
+                           (set-lowest-fetched-block checksum transfers))
+                         (when (seq transfers)
+                           (set-max-block-with-transfers checksum transfers))]
 
                   (seq transfers)
                   (concat (mapv add-transfer transfers))

(defn get-min-known-block [db address]
  (get-in db [:wallet :accounts (eip55/address->checksum address) :min-block]))

(defn min-block-transfers-count [db address]
  (get-in db [:wallet :accounts
              (eip55/address->checksum address)

    {:db (update-in db [:wallet :accounts checksum] assoc
                    :min-block min-block
                    :min-block-transfers-count min-block-transfers-count)}))

(fx/defn set-max-block-with-transfers
  [{:keys [db]} address transfers]
  (let [max-block (reduce
                   (fn [max-block {:keys [block]}]
                     (if (> block max-block)
                       block
                       max-block))
                   (get-in db [:wallet :accounts address :max-block] 0)
                   transfers)]
    {:db (assoc-in db [:wallet :accounts address :max-block] max-block)}))

(defn update-fetching-status
  [db addresses fetching-type state]
