核心解答
替您編寫程式碼的人,並不會自動成為程式碼對您的企業而言的所有人。泰國法律有預設規則,而且因開發者是您的僱員還是外部承攬人而不同。這些規則還僅限於確實為您創作的那部分程式碼。
規則(《著作權法》佛曆2537年)。 計算機程式作為文字作品受到保護(第4條)。如果開發者是僱員,第9條規定,除非書面協議另有約定,著作權歸僱員所有,僱主可為僱傭目的發表該作品。如果開發者是受委託人,第10條規定,除非創作人與委託人另有約定,著作權歸委託人所有。轉讓必須採用書面形式,並由雙方簽字(第17條)。
我們的實務觀點。 不要依賴預設規則。請使用書面合同,寫明各項成果歸誰所有,以書面形式把程式碼轉讓給您的公司,列明開發者可以保留的內容(其工具和既有程式碼),並把付款與經過測試的里程碑掛鉤。第8節的合同條款清單,是可以交給您的律師的部分。
1. 在泰國,原始碼受著作權保護嗎?
受保護。第4條對"文字作品"的定義包括計算機程式,並把計算機程式界定為以任何程式語言編寫的、用於使計算機工作或產生結果的指令、指令集或其他任何內容。第15條賦予權利人專有權利:複製或改編作品、向公眾傳播、出租程式的原件或複製件、享有著作權的利益,以及許可他人使用。
第4條還把對程式的實質性部分進行修改、但並未形成新作品的情形視為"改編"。因此,如果您日後聘請第二位開發者修改第一位開發者的程式碼,您需要擁有改編的權利,途徑是擁有著作權,或取得涵蓋修改的許可。
2. 如果我聘請開發者,程式碼歸誰所有?
取決於雙方之間的關係。
| 關係 | 預設規則 | 實際意義 |
|---|---|---|
| 僱員(勞動合同) | 第9條:除非書面另有約定,著作權歸創作人(僱員)所有。僱主可按僱傭的需要發表該作品。 | 公司享有與職務相關的使用權,但不一定擁有所有權。請在勞動合同中增加權屬條款。 |
| 承包商或外包機構(承攬) | 第10條:除非創作人與委託人另有約定,著作權歸委託人所有。 | 是有利的預設規則,但僅適用於在委託範圍內創作的作品。 |
| 沒有合同、非正式合作的自由職業者 | 實踐中並不明確。是僱傭、承攬還是其他關係,取決於事實。 | 應當避免。請在開工之前簽訂合同。 |
對於承包商,合同可以被歸類為承攬。《民商法典》第587條把承攬界定為:承攬人同意完成一項確定的工作,委託人同意就工作成果支付報酬的合同。範圍固定的軟體開發通常屬於此類。長期委託(retainer)、人員外派和持續性支援,則可能更像僱傭或服務關係,所以合同中的名稱本身並不能解決這一問題。
3. 為什麼仍然需要書面轉讓?
有四個原因。
- 預設規則存在缺口。 第10條只涉及開發者為該委託而創作的作品。開發者在您的專案之前編寫的庫、框架、模板和程式碼,並不是"為您"創作的。
- 第10條可以被變更。 如果機構的標準條款寫明"開發者保留全部權利",這就是法條所說的"另有約定"。
- 舉證。 發生爭議時,一份簽署的條款寫明"專案中創作的所有程式碼、檔案和設計均轉讓給客戶",要比圍繞關係定性展開的爭論容易證明得多。
- 第17條。 如果您想要的是轉讓而不是許可,則必須採用書面形式,並由雙方簽字。如果沒有寫明期限,法律視為十年。永久轉讓需要使用諸如"在著作權保護期的整個期間內"這樣的表述。
精神權利是另一回事。根據第18條,除書面另有約定外,創作人可以主張作者身份,並可反對損害其聲譽的歪曲或修改。合同中常包含一個條款,約定如何署明開發者的貢獻,以及客戶可以修改程式碼。
轉讓還是許可? 永久、獨佔、不可撤銷的許可有時可以滿足業務需要,在開發者把核心平臺重複用於其他客戶時很常見。如果您選擇許可,請寫明是否獨佔、您是否可以修改、轉許可、委託第三方託管,以及在出售業務時是否可以轉讓。關於名稱和標誌的類似問題,請參閱我們的指南:設立公司時的品牌與商標權屬。
4. 程式碼倉庫和訪問許可權應當如何處理?
如果唯一的副本掌握在開發者手中,程式碼的所有權就沒有多少意義。請通過合同取得實際的控制權:
- 程式碼倉庫放在由貴公司擁有的賬戶(組織級別)中,開發者以貢獻者身份受邀加入。
- 雲賬戶、域名、應用商店上架資訊、API 金鑰和證書都以貴公司而非個人的名義註冊。
- 開發者定期提交程式碼,使您已付款的程式碼在每個里程碑都存在於您的倉庫中,而不是隻在最後才有。
- 憑據通過安全渠道交接,並在交接時更換。
- 測試和生產系統中的客戶資料或個人資料,按事先約定的規則處理。請參閱我們的 PDPA 合規清單,以及涉及在公共 AI 工具中使用原始碼的指南:公司 AI 政策與客戶資料。
5. 開源和第三方元件怎麼辦?
幾乎所有現代軟體都包含開發者並未編寫的元件,其許可證隨元件一併適用。從實務角度看:
- 寬鬆型許可證一般允許在商業產品中使用,前提是保留規定的宣告。
- Copyleft 許可證可能對與該元件結合或分發該元件的軟體附加條件,在某些情況下可能要求以相同許可證公開您自己的原始碼。條件因許可證而異,也取決於軟體的使用方式(例如向客戶分發,還是僅在您自己的伺服器上執行),因此在依賴某一元件之前,應當審查實際的許可證文本。
- 付費第三方元件(SDK、字型、模板、支付或地圖 API)通常按專案或按席位收費,也未必自動轉移給您。
合同要點:開發者列出每一項第三方和開源元件及其許可證(物料清單),保證交付成果中沒有任何內容迫使您公開自有的專有程式碼,並且未經您批准不得加入許可證帶有限制的元件。開發者還應保證其有權交付該程式碼,且程式碼不侵犯他人的權利。我們在此不對某一具體許可證作出結論。請核實所涉及許可證的文本。
6. 里程碑和驗收測試應當如何運作?
泰國法律並未規定軟體的驗收程式,所以必須由合同來規定。這一點很重要,因為根據《民商法典》第598條,如果委託人明示或以行為接受了有缺陷的工作成果而沒有提出異議,承攬人對該缺陷一般不再負責,除非該缺陷在交接時無法發現,或承攬人隱瞞了該缺陷。因此,交付後保持沉默可能對您不利。請設定固定的審查期,並寫明為測試而在生產環境中使用不等於驗收。
假設示例(數字僅為示意)。 一家公司委託開發線上訂購系統,價款為 600,000 泰銖。下表顯示付款如何跟隨經過測試的交付物。
| 里程碑 | 交付內容 | 驗收測試 | 付款(示例) |
|---|---|---|---|
| 1. 需求規格與設計 | 書面需求、使用者流程、介面設計、技術方案 | 客戶簽字確認書面範圍;遺留問題已關閉 | 20% |
| 2. 核心開發 | 測試伺服器上可執行的核心功能,程式碼位於客戶的倉庫中 | 規格書中的測試用例通過;沒有未解決的嚴重缺陷 | 30% |
| 3. 整合與資料 | 支付、通知和資料匯入可通過測試賬戶執行 | 客戶執行約定的測試指令碼;匯入資料與源資料核對一致 | 20% |
| 4. 使用者驗收測試(UAT) | 預釋出(staging)環境上的完整系統、釋出說明 | 客戶在約定期限內測試;缺陷按嚴重程度分級;沒有未解決的嚴重或重大缺陷 | 20% |
| 5. 上線與交接 | 生產部署、原始碼、文件、憑據、培訓 | 生產環境冒煙測試;交接清單已簽署 | 10%(簽署前扣留) |
好的驗收條款應包括:由誰測試、在什麼環境中測試、使用哪些測試用例、審查期為多少天(例如 7 至 14 天,根據專案確定)、缺陷如何分級(嚴重、重大、輕微)、開發者須在何時修復,以及審查期屆滿而無人答覆時會怎樣。許多客戶傾向於約定沉默不視為驗收;如果開發者堅持視為驗收,則應使該期限足夠長,以便能夠進行充分的測試。
7. 變更、缺陷與合同終止
變更請求。 範圍蔓延是最常見的爭議。要求變更必須以書面形式提出、報價,並在開工之前由雙方簽字,同時寫明對進度的影響。還要寫明,某項請求屬於"變更"還是"缺陷",由誰來決定。
保修與缺陷。 在沒有相反約定的情況下,《民商法典》第600條規定,承攬人對交付後一年內出現的缺陷負責(土地上的建築物為五年,與軟體無關)。第601條禁止在缺陷出現一年之後提出索賠。該法條是針對有形工作而制定的,法院如何將其適用於軟體,是應當諮詢律師的問題,所以請通過合同約定保修:期限、缺陷的定義、嚴重程度等級、響應與修復時限,以及保修期後的支援是否屬於另行付費的方案。
合同終止。 根據第605條,在工作尚未完成期間,委託人可以終止承攬合同,但須賠償承攬人因解除而遭受的損失。合同應當更加具體:通知期限、已完成工作的付款,以及重要的一點,即即使專案中止,迄今已創作的全部程式碼和檔案也須交付。還要規定因開發者違約(錯過里程碑、放棄專案)和因您違約(未付款)而終止的情形,並把權屬的轉移與付款掛鉤,這樣您就不必在支付有爭議的賬單與失去程式碼之間二選一。
交接。 完成或終止時:完整的原始碼和構建指令碼、資料庫結構、部署說明、環境與憑據清單、開源物料清單,以及一段短期的知識轉移支援。如果開發者想保留倉庫或託管,請要求採用原始碼託管(escrow),或定期向您交付副本。
8. 合同條款清單
- 合同各方、專案描述,以及作為附件的書面規格書。
- 固定價格或按工時和材料計費的規則,付款計劃與已驗收的里程碑掛鉤。
- 權屬:向貴公司作出的明示書面轉讓(第17條),寫明轉讓期限為著作權的整個保護期,並由雙方簽字。
- 例外:列明開發者既有的工具和程式碼,並給予您永久、不可撤銷、涵蓋修改和託管的許可。
- 開源和第三方清單(物料清單)及其許可證,並附帶不負有公開貴公司程式碼義務的保證。
- 倉庫和賬戶由貴公司擁有;定期提交程式碼;交接憑據。
- 驗收程式:測試用例、環境、審查期、嚴重程度等級、視為驗收的規則。
- 書面的變更請求流程,開工前報價。
- 保修期、缺陷定義、修復時限和支援條款。
- 保密、個人資料處理和安全義務(見上文的 PDPA 指南)。
- 精神權利與署名:如何署明開發者;客戶可以修改。
- 僅經您批准才可分包,且每名分包商須作出同樣的轉讓。
- 延誤救濟、責任上限,以及侵權索賠的賠償。
- 終止權、已完成工作的付款,以及退出時的程式碼交付(第605條作為預設規則適用)。
- 適用法律、管轄法院和電子簽名安排。請參閱公司合同的電子簽名。
書面合同遠比口頭合同容易證明;原因請見口頭合同及其可執行性。
延伸閱讀
付款之前先在書面上取得程式碼的所有權:一份簽署的轉讓檔案、一個由公司擁有的程式碼倉庫,以及與經過測試的里程碑掛鉤的付款,比任何預設規則都更能保護您。
我們為泰國企業起草和審查軟體開發、許可和服務協議。初步諮詢免費 —— 請致電 +66 92 254 2045 或將詳情傳送給我們。更多內容請見合同與檔案以及法律顧問服務。
本指南由蘇婉瓦拉律師事務所釋出 —— 該律師事務所位於孔敬府,成立於 1986 年。本文僅為一般性資訊,不構成針對任何特定事項的法律建議。

