清軍入越戰爭指1788年底至1789年初清朝與越南西山朝之間發生的戰爭。
1788年，西山朝北伐，攻破后黎朝的都城升龍（今越南河內市）。后黎朝的昭統帝逃往保祿山，派大臣阮輝宿向清朝求救。乾隆帝便派孫士毅為主帥攻入安南境內，欲讓黎昭統帝復位。起初，大清軍隊勢如劈竹，佔領了升龍（今越南河內市）；但後來西山朝皇帝阮惠自富春（今越南順化）率軍反擊，戰局迅速逆轉。阮惠並於清軍慶祝春節時，對駐守玉洄（今河內市青池縣玉洄社）、棟多（今河內市棟多郡）等地的清軍發起突襲，清軍大敗，退回邊境以內。阮惠隨後主動向清國請和，乾隆帝同意講和並承認阮惠為安南的新君主。
清史稱這場戰爭為清越戰爭、清軍入越戰爭或乾隆年平定安南之役；越南則稱之為抗清戰爭、清與大越戰爭、玉洄棟多之戰或己酉戰勝。
背景
18世紀的時候，越南全境分為南北兩部份。南方由阮主統治，北方由鄭主挾持后黎朝皇帝作為傀儡統治。阮主和鄭主的腐敗導致了民眾的不滿，1771年，阮岳、阮侶、阮惠三兄弟在西山邑舉兵，反抗阮主的統治。西山起義軍擊退了暹羅的援軍，推翻了南方的阮主；並以扶黎滅鄭為名義于1786年北伐，推翻了鄭主，讓后黎朝昭統帝親政，統治北方。
起因
但北方后黎朝陷入內亂，鄭主復辟；隨後阮有整驅逐鄭主專權用事。阮惠遣武文任再次北伐，攻佔了升龍，另立宗室黎維𬓑監國。而武文任圖謀割據升龍稱雄，阮惠再次出兵前往升龍，將武文任誘殺。阮惠留將領吳文楚留守升龍，自己則返回根據地富春。
黎昭統帝攜家眷出奔高平。皇太后阮氏玉素等人在高平都統阮輝宿的保護下，經高平逃入清朝廣西太平府下屬的龍州境內，后被安置在南寧。阮氏遣阮輝宿、黎黎⿰亻冏（一作「黎侗」）、黃益曉、阮廷灌、阮國練、阮廷枚六人向清朝的兩廣總督孫士毅、巡撫孫永清告急。而黎昭統帝前往山南、皇弟黎維䄂前往宣光、興化一帶糾集各路遺臣反抗西山軍。
孫士毅向乾隆帝上表奏稱此事，建議乾隆帝發兵討伐安南，扶昭統帝重登皇位。而孫永清則提出不同的觀點，認為當時后黎朝勢力弱小西山朝強大，后黎朝必然會被西山朝滅亡，建議按兵不動。乾隆帝與內閣大學士和珅商量之後，決定出兵安南。其出師的真實目的，中越史料中記載不同，《清史稿·越南傳》稱其目的是興滅繼絕、滅阮扶黎，原非利其土地；但越南《大南列傳前編·偽西列傳》則有在中國史料中不曾出現的說法，稱孫士毅曾向乾隆帝提出出兵安南后，發兵鎮守安南，扶昭統帝繼位擔任傀儡皇帝。
清軍出師
1788年，孫士毅奉旨，調兩廣、雲貴之兵出征安南。孫士毅與提督許世亨率兩廣兵一萬出鎮南關（今中越邊境友誼關），鎮守諒山的西山將潘啟德投降；阮文艷逃往京北（今北寧省），與京北留守阮文和併力守城。孫士毅遂以八千人直搗升龍，以二千人駐守諒山為聲援。田州知府岑宜棟率軍進入高平。雲南提督烏大經率部八千人取道開化府的馬白關（今雲南文山市馬關），渡過賭咒河（今中越邊境的盤龍河），進入宣化鎮。雲貴總督富綱駐守都龍（在馬白關之南），負責監督糧餉的運輸。同時移檄安南各路，勸各地西山軍投降，其檄文為：
清軍的入侵
10月，孫士毅、許世亨由諒山分路進軍升龍，廣西總兵尚維升、副將慶成率廣西兵，廣東總兵張朝龍、李化龍率廣東兵進軍。后黎朝遺臣紛紛響應，宣稱清軍數十萬來嚇唬西山軍。沿途的西山軍不知虛實，驚恐之下紛紛大敗潰散。唯獨三江一帶的西山軍由阮文和率領，據險頑抗。十一月十三日，尚維升、慶成率廣西兵千餘人來到壽昌江（今北江，在北江省境內）北岸。西山軍退往南岸。浮橋斷，皆超筏直上。恰好當時是霧天，西山軍無法分辨敵我，自相殘殺；尚維升趁機渡壽昌江，大破西山軍。與此同時，張朝龍也率廣東兵破西山軍于柱石。
得知清軍入侵之後，鎮守升龍的西山朝大司馬吳文楚非常驚恐，遣文官阮衙、陳伯覽、武輝瑨等人前往孫士毅營中求和，請求立黎維𬓑為監國，以為緩兵之計，等待富春阮惠的援軍。孫士毅拒絕了這個請求。吳文楚召集眾將商議，最終接受了吳時任的主張，決定儲存西山軍的實力，焚燬並拋棄了升龍城，退往三疊山（位於寧平省和清化省交界處），水陸相通，據險以守。同時召集山南、山西、京北各地的西山軍保衛升龍。潘文璘對此持異議，因此獨自率領一千人來到市球江（越南史料稱之為「月德江」，即今越南北部梂江）抵抗。
十五日，清軍兵至市球江。根據《清史稿·越南傳》的說法，市球江江面寬廣而且南岸地勢高於北岸，西山軍據守南岸，向對岸的清軍開炮，致使清軍無法渡江。孫士毅派遣二千人奇兵繞過山的背面偷襲西山軍；另一方面令人建造浮橋以欺騙西山軍。西山軍中計，十七日清軍的奇兵繞到西山軍陣地的背後，從山丘上衝下，向西山軍發起猛攻。西山軍大敗潰散。而《大南列傳前編·偽西列傳》則稱潘文璘率西山軍冒寒渡河挑戰，清軍大破之。潘文璘隻身一人逃回，吳文楚隱瞞了這個訊息，不讓西山軍知道，西山軍得以順利地到達三疊山。吳文楚令阮文雪連夜前往富春告急。
十九日，清軍到達富良江（越南史料稱之為「珥河」，即今紅河）。富良江乃是通往升龍的門戶，西山軍已事先將沿岸的樹木全部砍掉，並將江面上的船全部聚集到了南岸。孫士毅見西山軍軍容不整，因此乘夜奪取了三十餘艘小船，將二千餘名士兵分批渡江，並立即對西山軍軍營發動夜襲。西山軍不能辨識來襲清軍的數量，大敗潰散。
清軍佔領升龍，阮惠北上救援
孫士毅率清軍兵不血刃地佔領了升龍，但升龍已經成為一片廢墟。黎昭統帝得知清軍到來，前往升龍謁見孫士毅。孫士毅奉乾隆帝的旨意，冊封昭統帝為安南國王。但孫士毅自恃有恩于昭統帝，十分輕視他。昭統帝每天都要到孫士毅的營中參謁。有一次孫士毅並沒有接見他，而是派遣傳令兵簡單地宣佈沒有事務，要黎昭統帝回去休息。后黎朝遺臣們對此憤憤不平，但又無可奈何。
孫士毅奏表戰功，並請求繼續進軍攻打阮惠的根據地富春。先鋒的清軍將領張朝龍、李化龍都是勇將，曾在對緬甸、金川、臺灣的作戰中英勇立功，故而所率的廣東兵行軍甚為迅速。而云南烏大經的部隊尚未到達升龍，因此乾隆帝十分高興，封孫士毅為一等謀勇公、許世亨為一等子，各將士也都有賞。
但對於孫士毅進軍的請求，乾隆帝認為安南地區久經戰火，殘破空虛；后黎朝皇帝已經有好幾代沒有實權了，其氣數已盡。而且清軍長途跋涉十分勞苦，如今已經將昭統帝扶上皇位，沒有出征的必要，因此下令孫士毅班師回朝。
孫士毅貪功，沒有立即班師回朝，而是率部在升龍逗留享樂。他和所率的清軍在升龍度過了春節，計劃在正月初六南下進攻富春。
與此同時，阮惠得知了清軍入侵的訊息，率師北上。由於清朝是以扶黎昭統帝歸國登位為名義的，西山朝諸將紛紛請求正出師之名，於是阮惠於十一月十五日登基即位，改年號為光中，率水陸之軍齊進。二十九日，阮惠的軍隊駐紮于乂安一帶，研究了清軍的作戰計劃。乂安是阮惠的祖籍地，西山軍於此地進行充分的整頓，並招募了大量農民入伍，選拔了十萬餘人、大象數百匹，並舉行了大閱兵。阮惠集合西山軍，發表演說：
西山軍聽后憤慨激昂，皆有鬥志。阮惠隨後宣佈西山軍提前過春節，並相約在升龍城共度開春日（即正月初七）。
十二月二十日（西曆1789年1月15日），阮惠進軍三疊山，與大司馬吳文楚、內侯潘文璘的部隊會合。阮惠稱讚了吳時任的計謀，兵分五隊，進攻清軍。
* 第一隊：阮惠自己率領，為主力部隊，直接進攻升龍，以吳文楚、潘文璘為先鋒，嘑虎侯殿後。
* 第二隊：都督雪（阮文雪）率左軍水師越過海港進入祿頭河，負責進攻海陽，為東道之接應；
* 第三隊：都督祿（阮文祿）率左軍水師越過海港進入祿頭河，進攻諒江、鳳眼、安世等地，以截斷清軍的退路。
* 第四隊：鄧進東率右軍象兵、馬兵，走山道出擊西面，穿過彰德縣（今河內市彰美縣），取路直趨青池縣的仁睦村，橫擊岑宜棟所率的田州兵。
* 第五隊：都督保（鄧春保）率右軍象兵、馬兵，走山道出擊西面，由山朗縣出青池縣的大盎村，為右支的接應。
清軍的戰敗
阮惠將西山軍每三個人分為一組，每組配備一個網兜，行軍的時候，一個人躺在網兜里讓兩個人抬著走，就這樣三個人互相輪流，向升龍方向行進。西山軍士氣高昂，趁清軍準備歡度春節之機，在除夕夜（即西曆1789年1月25日夜）越過澗水（今寧平省與河南省交界的澗渡口）。后黎朝的山南鎮守黃馮義毫無防備，大潰。西山軍逮捕並殺害了所有清軍的斥侯，因此清軍無人知曉。
清軍從升龍城外至上福河洄一帶設定了不少屯堡，堡外埋下震地雷，防衛工事堅固。阮惠在正月初三夜（西曆1月28日夜）突然將清軍的河洄營（位於今河內市常信縣）圍得水泄不通，以軍用喇叭大聲勸降。清軍大駭，全部投降，軍資器械盡數被西山軍繳獲。阮惠又于初五日的黎明包圍了玉洄壘（位於今河內市青池縣）。壘上的清軍向下不斷開炮，阮惠下令西山軍用濕稻草包紮的大木板抵擋清軍的槍炮，自己身先士卒，驅象兵攻破了堡壘。攻入玉洄壘后，阮惠命西山軍將木板放在地上，用短刀向清軍亂砍。西山軍乘勝連破文典等諸營，清軍大潰，四散奔逃，卻又觸發了震地雷死傷甚眾。西山軍乘勝連破文典等諸營。殘餘的清軍奔至墨塘（今屬河內市青池縣），陷入沼澤地中，遭到西山軍都督保部的圍攻，全軍覆沒。
阮惠包圍並攻克了升龍城西南方的要塞姜上營（位於今河內市棟多郡），駐守姜上營的田州知府岑宜棟退往螺山（今河內市青蛙山），自縊而死。西山軍都督龍（可能是阮增龍）部率先攻入升龍城。阮惠隨後率西山軍大部隊入城。根據《大南列傳前編·偽西列傳》的記載，阮惠的戰袍被火藥熏成了焦黑色。
黎昭統帝得知清軍兵敗后，帶領家小先自逃入鎮南關。烏大經所率的雲貴兵當時剛剛攻佔山西，聽見炮聲，也在嚮導黎文通指引下的率軍逃歸境內。孫士毅與諸將在升龍城內飲酒作樂慶祝新年，毫無防備。得知西山軍已攻入升龍城內，驚慌失措，僅僅率領少數的騎兵倉惶向北逃跑。清軍的提督許世亨、總兵張朝龍、尚維升斷後，皆陣亡。到了富良江邊，爲了防止西山軍的追擊，孫士毅下令切斷了浮橋。無數清軍爭相渡河，官兵伕役萬餘人溺死於河中，富良江之水為之不流。
孫士毅一行走了七天七夜方才到達鎮南關，其隨身印信全部遺失，被西山軍繳獲。在得知孫士毅逃歸之後，安南境內的清軍也全部退回境內。后黎朝遺臣們得知皇帝的逃跑和清軍的撤退後，也紛紛逃往清朝境內。皇弟黎維祗欲逃鎮南關，為西山軍所阻止，遂在諒山起兵反抗，兵敗被擒殺。至此清越戰爭以西山朝的勝利而結束。
結局與後續
乾隆帝得知孫士毅戰敗后大怒，下令褫奪了之前給予孫士毅一等謀勇公的封號。同時命令福康安代替其職準備繼續討伐安南。福康安得知西山朝強大，欲停止干戈。而阮惠雖然在這場戰爭中大勝，但他對清朝亦有所顧慮。西山朝當時又與暹羅交惡，阮惠害怕遭到清朝與暹羅兩大強鄰的夾擊，於是賄賂福康安，請求其上表建議停止出征。另一方面阮惠則以阮光平的名字向清朝請求冊封。不久阮惠派遣部將范公治假冒自己前往京師謁見乾隆帝。乾隆帝大喜，當即封阮惠為安南國王。而後黎朝的君主黎昭統帝，乾隆帝稱他先後兩次失去了皇位，說明后黎朝已經被上天唾棄，因此拒絕再支援黎昭統帝，並將昭統帝及其宗室、遺臣遷到京師軟禁。
阮惠在議和后試圖入侵清朝以報復這次戰爭，而且阮惠有入侵清朝兩廣之志向，因此積極準備糧草戰船、訓練士卒。阮惠試圖拉攏中國沿海一帶的華南海盜勢力，例如鄭七、莫觀扶、陳添保等著名海盜不少曾被西山朝授予官職。與此同時，阮惠還拉攏反清復明的勢力為己所用，例如四川的天地會成員在叛亂后逃到安南，阮惠任命這些人為將領。但不久后的1792年阮惠得病將死，這些計劃才被取消。
清朝將清越戰爭視為乾隆帝的一大功績，將此列為乾隆帝的「十全武功」之一。清朝人認為乾隆帝以興亡繼絕為名，攻入安南的都城升龍，將黎昭統帝重新扶上皇位，將此認為是一功。而越南人則將此戰爭看做是越南歷史上抵抗外國侵略的重大勝利之一。