Aby pozyskać współpracujące dotychczas ze Szwedami Prusy, Jan Kazimierz podpisał z elektorem brandenburskim traktaty welawsko-bydgoskie (1657r.). Na ich mocy Prusy Książęce uzależniły się od Polski. Z pomocą Polsce przyszło także Cesarstwo Niemieckie i Dania. Wkrótce Szwedzi zostali wyparci z większości Rzeczpospolitej. Ostatecznie w roku 1660 zawarto pokój w Oliwie. Król Jan Kazimierz zrzekł się pretensji do tronu szwedzkiego, a Szwedzi opuścili Polskę, zachowując jednak część Inflant. Rzeczpospolita zatrzymała jedynie ich południowo-wschodnią część, tzw. Inflanty Polskie.