失敗的生成不扣費
Makernice 不對失敗的 AI 影片或圖片生成扣費。唯一的例外:若完成的輸出因違反政策而被輸出審核攔截,仍會扣費。你可以聯絡客服申請人工審核。建立生成任務時,會從你的預付餘額中凍結報價金額;任務完成時,凍結金額轉為扣款。若任務失敗或逾時,凍結金額全額釋放。生成前被輸入審核拒絕,或在排隊期間取消,同樣全額釋放。
適用於同一個 API 金鑰下的全部 17 個模型。來源:退款政策 §2 · API 文件:價格與計費。最近核對:2026 年 10 月 21 日。
價格截至 2026 年 11 月 4 日(價目表 v12)。
運作方式:報價 → 凍結 → 扣款或釋放
- 報價。
POST /v1/generations/quote會依模型、模式、解析度與時長傳回確切金額(影片按秒計價,圖片按張計價)。價格鎖定 12 分鐘(expires_at)。取得報價不收費,也不會凍結任何金額。 - 凍結。 帶上
quote_id呼叫POST /v1/generations,才會凍結該金額;只有在這時才會凍結餘額,並在生成進入最終狀態時結算。生成任務以status: "queued"與billing: "held"開始。錢仍在你的餘額裡,只是被預留。 - 任務完成時扣款。 任務完成時,凍結金額會被扣款(
billing: "charged")。檢查輸出期間狀態為moderating,檔案可以下載後變為succeeded。 - 失敗時釋放。 若以
failed或canceled結束,凍結金額全額釋放(billing: "released")。不需要申請,也不需要提出要求:一切自動完成。
| 最終狀態 | billing | 你的錢會怎樣 |
|---|---|---|
queued / generating | held | 已預留,未扣款 |
moderating | charged | 任務完成時扣款;通過輸出審核後即可取得檔案 |
succeeded | charged | 任務成功時按報價金額扣款 |
failed | released | 凍結金額全額回到餘額 |
canceled(只能在 queued 時發生) | released | 凍結金額全額回到餘額 |
succeeded,輸出 state: "blocked"(完成的輸出未通過輸出審核) | charged | 已扣款;沒有檔案網址。請聯絡 support@makernice.com 申請人工審核 |
checking | held | 確認結果期間維持凍結;只有確認生成成功才扣款 |
釋放凍結金額不是退款。這筆錢從未離開你的餘額,所以不需要申請退款、沒有等待期,也不必經過支付服務商往返處理。
什麼算是失敗的生成?
| 發生了什麼 | 扣費嗎? | API 中會看到什麼 | 下一步 |
|---|---|---|---|
| 模型供應商回報生成失敗 | 不扣費,凍結金額釋放 | status: "failed",error.code 例如 generation_failed 或 upstream_unavailable | 重新報價、重新建立;凍結金額已回到餘額。 |
| 任務超過最長執行時間 | 不扣費,凍結金額釋放 | status: "failed",error.code: "timeout" | 同上。 |
| 我們這方的內部錯誤中止了任務 | 不扣費,凍結金額釋放 | status: "failed" | 同上。 |
| 輸入審核在生成前拒絕了提示詞或輸入圖片 | 不扣費,凍結金額釋放(或從未凍結) | error.code: "content_rejected",error.reason = prompt、input_image 或 model | 依 error.reason 修改提示詞或更換圖片(model 表示模型供應商自己的安全政策拒絕了,請修改提示詞),再重新報價。 |
| 輸入圖片無法使用(無法存取、檔案太大、格式不符) | 不扣費,凍結金額釋放 | error.code: "invalid_request",error.input 會指出是哪張圖片 | 更換 error.input 指出的那張圖片,重新報價後再建立。 |
你在生成任務仍為 queued 時取消 | 不扣費,凍結金額釋放 | status: "canceled" | |
| 請求在任務建立之前就被拒絕(金鑰無效、請求內容不合法、缺少欄位、餘額不足、速率限制、報價不符) | 不扣費,從未凍結任何金額 | HTTP 4xx,例如 401 invalid_api_key、400 invalid_request、402 insufficient_balance、429 rate_limited | 依錯誤碼處理,請見錯誤碼。 |
| 結果不明(例如供應商沒有回應) | 只有確認成功才扣費 | status: "checking",billing: "held" | 繼續輪詢,直到變成 succeeded 或 failed。 |
| 輸出已生成,但被輸出審核攔截 | 扣費,已扣款(只有經客服人工審核後才可能退款) | billing: "charged",輸出 state: "blocked",檔案網址為空 | 聯絡客服申請人工審核。 |
| 生成成功,但你不喜歡結果 | 扣費 | status: "succeeded",billing: "charged" | 下次先用低解析度短片試跑。 |
品質不算失敗條件:影片或圖片只要已經交付就會扣費,無論你是否滿意。因此每個模型頁都會先列出一段短時長、低解析度試跑的費用。
範例(價目表 v12,2026 年 11 月 4 日)
API 中的金額是以 micro-USD 為單位的字串(1,000,000 = $1.00)。
1 · 一段 10 秒、720p 的 Seedance 2.5 影片,執行逾時
- 報價:$0.2592/秒 × 10 秒 = $2.592 →
"amount": "2592000"。 - 建立 →
billing: "held"。執行期間,你的可用餘額會少顯示 $2.592。 - 任務超過最長執行時間 →
status: "failed",error.code: "timeout",billing: "released"。 - 淨成本:$0.00。
/events時間軸以failed_refunded結束。
{
"id": "gen_…",
"model": "seedance-2.5",
"status": "failed",
"amount": "2592000",
"billing": "released",
"outputs": [],
"error": { "code": "timeout", "message": "…" }
}2 · 一段 5 秒的 Kling 3.0 Pro 影片,生成成功
- 報價:$0.1612/秒 × 5 秒 = $0.8064 →
"amount": "806400"。 - 建立 → 凍結 →
succeeded→billing: "charged"。淨成本:$0.8064,正好是報價金額,即使執行期間價格有變動也一樣。
3 · 一段 5 秒、480p、你已不再需要的 MiniMax H3 Max Turbo 草稿
- 報價:$0.03/秒 × 5 秒 = $0.15。你在它仍為
queued時取消 →POST /v1/generations/{id}/cancel→status: "canceled",billing: "released"。淨成本:$0.00。 - 如果它已經開始(
generating),取消會傳回409 not_cancelable,執行會繼續到正常結果。
4 · 被審核攔截的提示詞
- 如果提示詞在提交時就被攔截,你會收到
422 content_rejected,不會凍結任何金額。如果供應商的安全政策稍後拒絕它,生成會以failed結束並帶有error.code: "content_rejected",凍結金額會被釋放。兩種情況的淨成本都是:$0.00。 - 如果影片已經生成,但完成的輸出被輸出審核攔截,該次執行會扣費(
billing: "charged",輸出state: "blocked",沒有檔案網址)。請寄電子郵件至 support@makernice.com 申請審核。
在程式碼中處理(Python)
import time, requests
def wait_for(gen_id, headers, api="https://api.makernice.com/v1"):
while True:
gen = requests.get(f"{api}/generations/{gen_id}", headers=headers, timeout=15).json()
if gen["status"] == "succeeded":
return gen # billing == "charged"
if gen["status"] in ("failed", "canceled"):
# billing == "released": the full hold is already back in your balance
raise RuntimeError(f"{gen['status']}: {gen.get('error')}")
time.sleep(5) # queued / generating / moderating / checking偏好使用 webhook?generation.failed 與 generation.canceled 會在凍結金額釋放後發送;generation.succeeded 會在扣款後發送。請見 Webhooks。
如何避免重複扣款,並為每個 API 金鑰設定花費上限?
- 重試不會重複扣款。
POST /v1/generations必須帶Idempotency-Key。以相同的 key、報價與輸入重複發送請求,會傳回原本的那次生成,不會再次扣款。(冪等性) - 每個金鑰的花費上限。 每個 API 金鑰都可以設定花費上限與到期日。會使金鑰超過上限的請求,會在凍結任何金額之前以
402 key_spend_limit_reached拒絕。失敗與已取消的生成不計入金鑰的花費。(身分驗證)
開發前,任何 AI 影片 API 都該確認的事
在任何 AI 影片 API 上開發之前,可以先問這幾個問題:
- 失敗或逾時的執行會扣費、部分扣費,還是不收費?
- 錢是在提交時扣,還是在執行完成時扣?
- 被內容審核拒絕要不要付費?生成前與生成後分別如何?
- 能否取消排隊中的任務?錢會回到你的餘額嗎?
- 價格是在執行前鎖定,還是事後計算?
- 重試是否具冪等性,確保網路錯誤不會讓你被扣兩次?
在 Makernice 上,答案是:不收費 · 執行完成時 · 生成前不收費(被攔截的完成輸出會扣費) · 可以,全額釋放 · 以報價鎖定 12 分鐘 · 是。
常見問題
Makernice 會對失敗的 AI 影片生成扣費嗎?
不會。唯一的例外:若完成的輸出因違反政策而被輸出審核攔截,仍會扣費。你可以聯絡客服申請人工審核。Makernice 在你建立生成任務時凍結報價金額,任務完成時凍結金額轉為扣款;若任務失敗或逾時,凍結金額全額釋放。生成前被輸入審核拒絕,同樣會釋放凍結金額。以上適用於全部 17 個影片與圖片模型。
什麼算是失敗的生成?
當模型供應商回報失敗、任務超過最長執行時間、內部錯誤導致中止、輸入審核在生成前拒絕提示詞或輸入圖片,或輸入圖片無法使用時,該次生成即視為失敗。以上每種情況,凍結金額都會全額釋放。
釋放的凍結金額多久會回到餘額?
釋放的凍結金額通常在任務結束時就會反映在餘額中。因為這筆錢只是被凍結,並沒有被扣款,所以不需要提出退款申請,也沒有支付服務商造成的延遲。
如果我不喜歡結果,還要付費嗎?
要。生成成功就會按報價金額扣款,無論輸出的品質、風格或相關性如何。想降低這項風險,請先以低解析度試跑一段短片,並在執行前用報價確認確切價格。
我可以取消生成,讓錢回到餘額嗎?
可以,只要它仍在排隊:使用 POST /v1/generations/{id}/cancel 取消,凍結金額就會全額釋放。生成任務一旦進入 generating 就無法停止,取消會傳回 409 not_cancelable。
如果模型供應商沒有回應會怎樣?
生成任務會顯示 checking 狀態,在我們確認結果期間金額會維持凍結。只有確認生成成功才會扣款;否則凍結金額會被釋放。
重試會讓我被扣兩次嗎?
不會。建立生成任務必須帶 Idempotency-Key 請求標頭。以相同的 key、報價與輸入重複發送請求,會傳回原本的那次生成,不會再次扣款。
未使用的餘額可以退款嗎?
未使用的餘額原則上不予退款,但永不過期。重複儲值或誤儲值可以申請審核:請寄電子郵件至 support@makernice.com。我們提供英語、中文(簡體與繁體)、日語、韓語、葡萄牙語和西班牙語客服,並以你來信的語言回覆。
如果我的輸出被審核攔截會怎樣?
如果輸入審核在生成前拒絕了你的提示詞或圖片,該次生成失敗,不會扣費。如果影片已經生成,而完成的輸出隨後被輸出審核攔截,該次執行會扣費,且不會交付檔案。請寄電子郵件至 support@makernice.com,我們會進行審核。
相關內容
- 價格 — 即時單價,最低儲值 $15(最高 $1,000),無訂閱
- AI 影片 API 如何計價(英文) — 價格 = 單價 × 秒數,報價鎖定 12 分鐘
- API 文件:價格與計費 · 查詢狀態 · 取消 · 冪等性
- 影片 API 最佳實務:冪等性、429 與輪詢(英文)
- 退款政策
- 全部 17 個模型