Makernice

失敗的生成不扣費

Makernice 如何為每一次 AI 影片與圖片生成凍結、扣款與釋放金額。

Makernice 不對失敗的 AI 影片或圖片生成扣費。唯一的例外:若完成的輸出因違反政策而被輸出審核攔截,仍會扣費。你可以聯絡客服申請人工審核。建立生成任務時,會從你的預付餘額中凍結報價金額;任務完成時,凍結金額轉為扣款。若任務失敗或逾時,凍結金額全額釋放。生成前被輸入審核拒絕,或在排隊期間取消,同樣全額釋放。

適用於同一個 API 金鑰下的全部 17 個模型。來源:退款政策 §2 · API 文件:價格與計費。最近核對:2026 年 10 月 21 日。

價格截至 2026 年 11 月 4 日(價目表 v12)。

運作方式:報價 → 凍結 → 扣款或釋放

  1. 報價。 POST /v1/generations/quote 會依模型、模式、解析度與時長傳回確切金額(影片按秒計價,圖片按張計價)。價格鎖定 12 分鐘(expires_at)。取得報價不收費,也不會凍結任何金額。
  2. 凍結。 帶上 quote_id 呼叫 POST /v1/generations,才會凍結該金額;只有在這時才會凍結餘額,並在生成進入最終狀態時結算。生成任務以 status: "queued" 與 billing: "held" 開始。錢仍在你的餘額裡,只是被預留。
  3. 任務完成時扣款。 任務完成時,凍結金額會被扣款(billing: "charged")。檢查輸出期間狀態為 moderating,檔案可以下載後變為 succeeded。
  4. 失敗時釋放。 若以 failed 或 canceled 結束,凍結金額全額釋放(billing: "released")。不需要申請,也不需要提出要求:一切自動完成。
最終狀態
最終狀態billing你的錢會怎樣
queued / generatingheld已預留,未扣款
moderatingcharged任務完成時扣款;通過輸出審核後即可取得檔案
succeededcharged任務成功時按報價金額扣款
failedreleased凍結金額全額回到餘額
canceled(只能在 queued 時發生)released凍結金額全額回到餘額
succeeded,輸出 state: "blocked"(完成的輸出未通過輸出審核)charged已扣款;沒有檔案網址。請聯絡 support@makernice.com 申請人工審核
checkingheld確認結果期間維持凍結;只有確認生成成功才扣款

釋放凍結金額不是退款。這筆錢從未離開你的餘額,所以不需要申請退款、沒有等待期,也不必經過支付服務商往返處理。

什麼算是失敗的生成?

依據我們的退款政策(§2)與 API 文件:

什麼算是失敗的生成?
發生了什麼扣費嗎?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 金鑰設定花費上限?

開發前,任何 AI 影片 API 都該確認的事

在任何 AI 影片 API 上開發之前,可以先問這幾個問題:

  1. 失敗或逾時的執行會扣費、部分扣費,還是不收費?
  2. 錢是在提交時扣,還是在執行完成時扣?
  3. 被內容審核拒絕要不要付費?生成前與生成後分別如何?
  4. 能否取消排隊中的任務?錢會回到你的餘額嗎?
  5. 價格是在執行前鎖定,還是事後計算?
  6. 重試是否具冪等性,確保網路錯誤不會讓你被扣兩次?

在 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,我們會進行審核。

相關內容

為畫面付費,不為失敗買單。

以美元預付,可使用卡片付款(包括 Apple Pay 與 Google Pay)或加密貨幣。每次儲值金額為 $15 至 $1,000,餘額永不過期。