〔당나라〕 고종이 조서를 내려 좌무위대장군(左武衛大將軍) 소정방(蘇定方)을 신구도(神丘道) 행군대총관(行軍大摠管)으로 삼아 좌효위장군(左驍衛將軍) 유백영(劉伯英)・우무위장군(右武衛將軍) 풍사귀(馮士貴)・좌효위장군(左驍衛將軍) 방효공(龐孝公)을 거느리고 군사 130,000명을 통솔하며 〔백제로〕 와서 정벌하게 하였다. 아울러 신라왕 김춘추를 우이도(嵎夷道) 행군총관(行軍摠管)으로 삼아 그 나라 군사를 거느리고 당나라 군사와 합세하게 하였다. 소정방이 군사를 이끌고 성산(城山)에서 바다를 건너 나라 서쪽 덕물도(德物島)에 이르니, 신라왕이 장군 김유신을 보내 정예 군사 50,000명을 거느리고 나아가게 하였다.
왕이 그 소식을 듣고 신하들을 모아 〔나가서〕 싸우는 것과 지키는 것 중에서 〔어느 쪽이〕 마땅한지를 물으니 좌평 의직이 나서서 말하기를, “당나라 군사는 멀리서 깊은 바다를 건너 왔으니 물에 익숙하지 못한 자는 배에서 분명 피곤할 것입니다. 그들이 처음 땅에 내려서 군사들의 기운이 회복되지 않았을 때 갑자기 공격하면 뜻을 이룰 수 있을 것입니다. 신라 사람은 큰 나라의 도움을 믿기 때문에 우리를 가벼이 여기는 마음이 있을 것이니 만일 당나라 사람이 불리해지는 것을 보면 반드시 의심하고 두려워해서 감히 재빠르게 나아오지 못할 것입니다. 그러므로 먼저 당나라 사람과 결전을 벌이는 것이 옳을 것입니다”라고 하였다. 달솔 상영(常永) 등이 말하기를, “그렇지 않습니다. 당나라 군사는 멀리서 왔으므로 빨리 싸우려 할 것이니 그 칼끝을 당할 수 없으며, 신라 사람은 예전에 여러 차례 우리 군사에게 패하였기 때문에 이제 우리 군대의 기세를 보면 겁먹지 않을 수 없습니다. 오늘의 계책은 마땅히 당나라 사람의 길을 막아서 그 군사들이 지치기를 기다리고, 먼저 일부 군사로 신라 군대를 쳐서 그 날카로운 기운을 꺾은 뒤에 그 형편을 보아 전투를 벌이면 군대를 온전히 유지하고 나라를 보전할 수 있을 것입니다.”라고 하였다. 왕은 주저하면서 어느 쪽을 따라야 할지 몰랐다.
이때 좌평 흥수(興首)는 죄를 지어 고마미지의 현(古馬彌知縣)에서 귀양살이를 하고 있었는데, 〔왕이〕 사람을 보내서 물어 말하기를, “사태가 위급하니 어찌하면 좋겠는가?”라고 하였다. 흥수가 말하기를, “당나라 군사는 숫자가 많고 군사의 규율이 엄하고 분명합니다. 더구나 신라와 함께 앞뒤에서 치려고 하니 만약 평탄한 벌판과 넓은 들에서 마주하고 진을 친다면 승패를 장담할 수 없습니다. 백강(白江) 기벌포(伎伐浦)라고도 한다.과 탄현(炭峴) 침현(沈峴)이라고도 한다.은 우리나라의 요충지로서, 한 명의 군사가 한 자루의 창을 가지고 있어도 10,000명이 당할 수 없으니 마땅히 용감한 군사를 가려내어 가서 지키게 하여, 당나라 군사가 백강으로 들어오지 못하게 하고, 신라 사람이 탄현을 지나지 못하게 하면서 대왕께서 성문을 굳게 닫고 단단하게 지키며 그들의 물자와 군량이 떨어지고 군사들이 피곤해질 때를 기다린 뒤에 분발하여 공격하면 이길 것이 분명합니다.”라고 하였다. 이때 대신들은 믿지 않고 말하기를, “흥수는 오랫동안 갇혀 있었기에 임금을 원망하고 나라를 사랑하지 않을 것이니 그 말을 따를 수 없습니다. 당나라 군사를 백강으로 들어오게 하여 강물 흐름에 따라 배를 나란히 하지 못하게 하고, 신라 군사를 탄현으로 올라오게 하여 좁은 길 때문에 말을 나란히 몰 수 없게 하는 것보다 못합니다. 이럴 때 군사를 풀어 공격하면 마치 닭장에 있는 닭을 죽이고 그물에 걸린 물고기를 잡는 것과 같을 것입니다.”라고 하였다. 왕은 그 말을 옳다고 여겼다. 또 당나라와 신라 군사가 이미 백강과 탄현을 지났다는 말을 듣고 장군 계백(階伯)을 보내 결사대 5,000명을 거느리고 황산(黃山)으로 나가 신라 군사와 싸우게 하였는데, 네 번 싸워서 모두 이겼으나 군사가 적고 힘이 모자라서 마침내 패하고 계백이 사망하였다. 이에 〔왕은〕 군사를 모아 웅진 어귀를 막고 강가에 군사를 주둔시켰으며, 정방이 왼쪽 강변으로 나와 산 위에 진을 쳤는데, 맞붙어 싸워서 우리 군사가 크게 졌다. 당나라 군사가 밀물을 타고 배의 꼬리에 꼬리를 물고 나아가며 북을 치고 떠들어댔다. 정방은 보병과 기병을 거느리고 곧장 도성으로 달려가 30리[一舍] 밖에서 멈추었다. 우리 군사가 모두 막았으나 또 패배하여 사망자가 1만여 명이었다. 당나라 군사가 승세를 타고 성에 다가서니 왕이 피할 수 없음을 알고 탄식하며 말하기를, “성충의 말을 듣지 않아 이 지경에 이른 것이 후회스럽구나.”라고 하고는 마침내 태자 효(孝)와 함께 북쪽 변경으로 달아났다. 정방이 성을 둘러싸니 왕의 둘째 아들 태(泰)가 스스로 왕이 되어 무리를 이끌고 굳게 지켰다. 태자의 아들 문사(文思)가 왕자 융에게 일러 말하기를, “왕은 태자와 함께 나갔고, 숙부가 자기 마음대로 왕이 되었는데, 만일 당나라 군사가 포위를 풀고 가버리면 우리들이 어찌 안전할 수 있겠습니까?”라고 하고 마침내 측근들을 데리고 밧줄을 타고 나가니 백성들이 모두 뒤따랐지만 태는 말리지 못하였다. 정방이 군사들에게 성가퀴를 넘어가 당나라 깃발을 세우게 하자, 태는 다급히[窘迫] 성문을 열고 명령을 청하였다. 이에 왕과 태자 효가 여러 성과 함께 모두 항복하였다. 정방이 왕과 태자 효, 왕자 태, 융, 연(演) 및 대신(大臣)과 장사(將士) 88명, 백성 12,870명을 당나라 수도[京師]로 보냈다.
나라는 본래 5부(部) 37군(郡) 200성(城) 760,000호(戶)가 있었는데, 이때에 이르러 웅진(熊津)・마한(馬韓)・동명(東明)・금련(金漣)・덕안(德安) 5도독부로 나누어 두어 각각 주(州)・현(縣)을 다스리게 하고, 우두머리를 뽑아서 도독(都督)・자사(刺史)・현령(縣令)으로 삼아 다스리게 하였다. 낭장(郎將) 유인원(劉仁願)에게 명령하여 도성을 지키게 하고 또한 좌위낭장(左衛郎將) 왕문도(王文度)를 웅진도독으로 삼아 남은 무리들을 달래게 하였다.
정방이 포로들을 바치니 고종이 꾸짖고는 용서해 주었으며, 왕이 병으로 죽자 금자광록대부(金紫光祿大夫) 위위경(衛尉卿)을 내려주고 옛 신하들이 문상하는 것을 허락하였다. 조서를 내려 손호(孫皓)와 진숙보(陳叔寶)의 무덤 옆에 장사지내고 아울러 비석을 세우게 하였으며, 융에게 사가경(司稼卿)을 제수하였다. 문도가 바다를 건너다가 사망하자 유인궤(劉仁軌)에게 그를 대신하게 하였다.