Ещё 23 сентября, в условиях уже второй надвигающейся катастрофы Западного фронта на чрезвычайной сессии ВЦИК было принято решение об отказе выдвинутых Польше первоначальных требований. Советская Россия признавала независимость Литвы, Польши и Белоруссии, передавала Польше Западную Украину и Западную Белоруссию, а также выплачивала Польше огромную контрибуцию за причинённый ущерб и вывезенное имущество. На этих условиях, 18 марта 1921 года в Риге между Польшей с одной стороны и РСФСР (делегация которой представляла также Белорусскую ССР) и Украинской ССР — с другой, был подписан Рижский мирный договор, подведший окончательную черту под Советско-польской войной.
По условиям договора к Польской Республике отошли обширные территории, находившиеся к востоку от линии Керзона, с преобладанием непольского населения — Западная Украина (западная часть Волынской губернии), Западная Белоруссия (Гродненская губерния) и часть территорий других губерний Российской империи.
Стороны обязывались не вести враждебной деятельности в отношении друг друга. Договором предусматривалось проведение переговоров о заключении торговых соглашений.
Советская сторона согласилась возвратить Польской Республике военные трофеи, все научные и культурные ценности, вывезенные с территории Царства Польского начиная с 1 января 1772 года, а также обязалась уплатить Польше в течение года 30 млн золотых рублей за вклад Царства Польского в хозяйственную жизнь Российской империи и передать польской стороне имущества на сумму 18 млн золотых рублей, то есть выплатить де-факто репарации. Польская Республика освобождалась от ответственности за долги и иные обязательства бывшей Российской империи.