跳到內容

教學

在 Polar 設定收款 + 接到 BuilderWorld Sell link

從零開始的 Polar 設定教學,包含每個第一次設的人都會卡 30 分鐘的 GitHub Organization 那個坑。內容是我們自己設定 AlphaForge Framework 那個 product 時的真實流程。一條龍跑完大約 30 分鐘。

最後更新 2026-04-28

為什麼選 Polar(vs Gumroad / Lemon Squeezy / Stripe)

短答:你賣的是「客戶付完款要拿到 GitHub repo 存取權」這種數位產品,選 Polar。

  • Merchant of Record — Polar 當商家,銷售稅 / VAT / 退款全包,你只管收 payout。
  • 5% + $0.50 一筆 — 跟 Lemon Squeezy 同等費率。
  • 原生 GitHub Repository Access benefit — 客戶付完款,Polar 自動把他加進你 private repo 當 collaborator,你 0 行 webhook code 要寫。這是賣 template / starter / framework 的殺手級功能。
  • 支援台灣商家 — 不像 Stripe 要先註冊美國公司,也不像 Lemon Squeezy 在某些市場會被拒。
  • 審核比 LS 寬 — 不會莫名被駁回。

如果你賣的不是 GitHub repo 存取(下載檔、課程、月訂閱),先去看 /docs/payments 的選擇指南,Gumroad 跟 LS 在那些情境通常更合適。

註冊帳號

polar.sh 註冊。

幾個一開始選了之後會影響後面的點:

  • 用跟你其他 SaaS 服務同一個 email(Resend、GitHub 之類)。三個月後你管 5 個 dashboard 時會感謝這個決定。
  • 註冊後 Polar 會強制你建一個 organization。產品都掛在 org 下,不是個人帳號下。Org 名取乾淨點,客戶在 checkout 頁面會看到(我們的是「Builderworld」)。
  • 看到 Stripe Connect 連結 prompt 就連 — Polar 後端跑 Stripe 處理刷卡。通常 5 分鐘走完 KYC。
  • 國家選你實際居住地。Polar 用 Stripe 處理 payout,Stripe 支援的國家 Polar 都行。

Product 跟 Checkout Link 是兩件事

這個概念最容易混,先講清楚:

  • Product = 你賣的東西(只有一個)
  • Checkout Link = 給買家點的付款入口 URL(同一個 product 可以有很多條 checkout link,給不同 campaign 或 A/B test 用)

你貼到 BuilderWorld Sell link 欄位的是 checkout link URL,不是 product 詳情頁的 URL。

順序:先建 product → 再建 checkout link 連到那個 product。

Step 1 — 建你的 Product

左側 nav → ProductsNew Product。重要欄位:

  • Name — 客戶在 checkout 頁面最上面看到的名字
  • Description — 跟你 marketing landing page 那段文字差不多就好,checkout 會顯示。簡潔 + 講清楚買家拿到什麼最有用。
  • Pricing type選 One-time purchase(除非你真的是賣訂閱)
  • Price — USD,可填小數
  • Tax behavior — 留預設 inclusive。Polar 是 MoR,稅他們處理。

存完之後確認 product status 是 Active / Published。inactive 的 product 不會出現在 checkout。

Step 2 — GitHub Repository Access benefit(這裡會踩坑)

這是 Polar 賣 repo 類產品的殺手級功能,但設定有一個非常坑的擋路,每個第一次設的人都會卡 30 分鐘。

流程:

1. 左側 nav → Benefits+ 建新 benefit 2. Description 填產品名(會顯示在客戶付完款的 success 頁面) 3. Type 選 GitHub Repository Access 4. Polar 跳 GitHub OAuth 授權,授權它 5. 接下來會看到紅色警告:

> For security reasons, we do not support configuring a repository on a personal organization.

翻譯成人話:Polar 不收「你個人 GitHub 帳號下的 repo」,只收「organization 下的 repo」。

解法 — 建一個免費 GitHub org:

1. 去 github.com/organizations/new 2. 選 Free plan(千萬不要選 Team — Team 是以人頭算錢,你 buyer 會被算成 collaborator,賣越多帳單越貴) 3. 2020 年起 GitHub Free org 給 private repo「無限 collaborators」。賣 repo 存取就用這個。 4. Org 名取一個 — 全 GitHub 不能撞名。建議 `yourname-labs` / `yourbrand-products` 這類。 5. 跳過邀請成員那步,你只是要一個容器裝 repo,沒同事要邀。

把你的 repo transfer 進 org:

1. 進 repo → Settings → Danger Zone → Transfer ownership 2. New owner 填你的 org 名 3. 打 repo 名確認 4. 完成。GitHub 會自動 redirect 舊 URL 到新位置,記了舊網址的人不會壞掉。

回 Polar — Reconnect:

1. 在 benefit form 找「Connected as @你的個人帳號」那行,點旁邊的 Reconnect 2. GitHub OAuth 跑一次,這次 GitHub 問「Polar 要裝在哪」時,選你剛建的 org(不是個人帳號) 3. 授權範圍:Only select repositories → 選你那個 repo → Install 4. 回 Polar,Repository 下拉現在會出現 `<你的 org>/<你的 repo>`,選它 5. 紅色警告消失。(可能會剩一條橘色 GitHub 付費 plan 警告 — 不用理,你是 Free plan) 6. Role 選 Read不要選 Write — 客戶不該能 push 你 repo 7. 按 Create

最後 — 把 benefit attach 到 product(關鍵!很多人卡這步):

建好 benefit ≠ 自動連到 product,要手動 attach:

1. 左側 nav → Products → 點進你 product → Edit 2. 滑到 Automated Benefits 區 3. 勾選剛建的 GitHub benefit 4. Save Changes

弄完這步整套自動化就接好了:客戶付款 → Polar 拿他 GitHub username → 自動加他進你 repo 當 Read collaborator → 你完全不用碰。

Step 4 — 接到 BuilderWorld

回 BuilderWorld:

1. 進你 project detail page → Edit project 2. 滑到 Pro section → Sell link URL 欄位 3. 貼 Polar checkout link URL 4. Sell link button label — 寫個 CTA,例如「Buy — $29」 5. 存

你 project 頁面會出現一個明顯的按鈕。客戶點 → 跳 Polar checkout → 付款 → 自動加進你 GitHub repo → 跳回你 BuilderWorld project 頁。

Step 5 — 不付錢怎麼驗證設定對

最直接的方法是自己付一次驗,但 $29 只為了測有點傷。免錢的檢查:

1. 開無痕視窗點你的 Sell link。應該跳到 Polar checkout、看到正確的 product 名稱、價格、描述。如果這頁有問題,product 或 checkout link 設錯了。

2. Polar dashboard → Benefits → 你那個 GitHub benefit → Benefit Grants tab。真實購買後這頁會出現 row,現在是空的("No Results")很正常 — 但能進這頁就代表 benefit 已經建好了。

3. Polar dashboard → Products → 你的 product → Edit → Automated Benefits。確認 GitHub benefit 那格有打勾。沒打勾 → 你跳過 Step 2 最後 attach 那步,回去打勾。

如果想做完整壓力測試,用另一個帳號付 $29 過一遍。Polar 14 天內可全額 refund,只會收 ~$1.95 不退手續費 — 真實 launch 前花這個錢驗很值得。

常見錯誤跟解法

「For security reasons, we do not support configuring a repository on a personal organization」 → 你 repo 還在個人帳號下,沒 transfer 到 org。回 Step 2 建免費 org + transfer。

Repository 下拉看不到你 repo → Polar GitHub App 還沒裝到 org。回 benefit form,點「Click here to install it on Polar」走一次安裝。

客戶付了錢沒被加進 repo → 99% 的原因:benefit 沒 attach 到 product。檢查 Products → Edit → Automated Benefits。第二個原因:客戶沒在 post-payment 頁授權 GitHub(很少發生,Polar UI 做得很明顯)。

付款成功但沒跳回 BuilderWorld → Checkout link 的 Success URL 沒填。Edit checkout link,補上。

BuilderWorld log 看到 webhook 錯誤 → 不用管。BuilderWorld 既有的 Polar webhook handler 是處理 Pro tier 訂閱的,跟你這個獨立 product 不衝突 — handler 用 product ID 篩,只認 BuilderWorld Pro 那個 ID。

退款 / 取消

退款流程:Polar dashboard → Sales → 找到那筆訂單 → Refund。錢的部分 Polar 處理,客戶 14 天內可申請。

手動清理:你要記得把客戶從 GitHub repo collaborators 移除(repo Settings → Manage access → 點他名字旁邊的 X)。Polar 不會自動移除 collaborator — 因為退款不一定等於「撤銷 access」(有些賣家退錢但仍保留 access 當 goodwill)。

訂閱型產品 Polar 會在訂閱結束時自動撤銷 access。一次性購買(像我們這個)就是手動移除。

We use cookies

Anonymous analytics help us improve the site. You can opt out anytime. Learn more