diff --git a/src/clj/auto_ap/square/core.clj b/src/clj/auto_ap/square/core.clj index 8f4e7aa2..1ca9cd18 100644 --- a/src/clj/auto_ap/square/core.clj +++ b/src/clj/auto_ap/square/core.clj @@ -214,13 +214,15 @@ (map :id) (into #{}))] (->> search-results - (filter (fn [order] - ;; sometimes orders stay open in square. At least one payment - ;; is needed to import, in order to avoid importing orders in-progress. - (and (or (> (count (:tenders order)) 0) - (seq (:returns order))) - (not= #{"FAILED"} - (set (map #(:status (:card_details %)) (:tenders order))))))) + (filter (fn [order] + ;; sometimes orders stay open in square. At least one payment + ;; is needed to import, in order to avoid importing orders in-progress. + (and (or (> (count (:tenders order)) 0) + (seq (:returns order))) + (or (= #{} (set (map #(:status (:card_details %)) (:tenders order)))) + (not= #{} (clojure.set/difference + (set (map #(:status (:card_details %)) (:tenders order))) + #{"FAILED" "VOIDED"})))))) (filter (fn [order] (not= "Koala" (:name (:source order))))) (filter (fn has-linked-koala-production? [order]