You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Stripe资金流转集成问题:Top Up API使用求助

解决Stripe Top Up API日元充值及「No Source Image」错误问题

核心问题分析

「No Source Image」错误本质是你的Top Up请求中指定的支付源(source/payment_method)不符合日元账户的充值要求——要么是源本身无效,要么是未正确关联到你的Stripe主账户。后台操作能成功是因为后台自动完成了支付源的验证和关联流程,而API调用需要你手动完成这些步骤。


一、创建并关联日元支付源

日元场景不能直接复用美元测试token,必须使用适配JPY的测试支付方式:

测试环境操作

  1. 生成日元支付方式(Payment Method)
    用Stripe提供的日元测试卡创建支付方式,示例curl调用:
curl https://api.stripe.com/v1/payment_methods \
  -u sk_test_你的密钥: \
  -d type=card \
  -d "card[number]"=4242424242424242 \
  -d "card[exp_month]"=12 \
  -d "card[exp_year]"=2028 \
  -d "card[cvc]"=123 \
  -d currency=jpy

(也可以用日本本地测试卡如3566 0020 2036 0505,参数设置一致)

  1. 将支付源附加到主账户
    生成的pm_xxx ID需要绑定到你的Stripe主账户,才能用于Top Up:
curl https://api.stripe.com/v1/accounts/你的主账户ID/external_accounts \
  -u sk_test_你的密钥: \
  -d external_account=pm_刚才生成的ID

生产环境操作

需要收集用户的日本银行卡信息,用Stripe Elements创建支付方式,再附加到主账户,流程和测试环境一致,只是使用真实卡号。


二、正确调用Top Up API

调用时必须指定已关联到主账户的支付源,不能用后台临时生成的一次性source:

示例调用(用Payment Method)

curl https://api.stripe.com/v1/topups \
  -u sk_test_你的密钥: \
  -d amount=1000 \
  -d currency=jpy \
  -d payment_method=pm_你的支付源ID \
  -d description="日元账户充值"

示例调用(用已绑定的银行卡ID)

如果之前绑定的是银行账户(ba_xxx ID),可以直接用source参数:

curl https://api.stripe.com/v1/topups \
  -u sk_test_你的密钥: \
  -d amount=1000 \
  -d currency=jpy \
  -d source=ba_你的银行卡ID \
  -d description="日元账户充值"

三、设置默认支付源(简化后续调用)

如果不想每次Top Up都指定支付源,可以把常用的支付源设为主账户的默认充值源:

curl https://api.stripe.com/v1/accounts/你的主账户ID \
  -u sk_test_你的密钥: \
  -d settings[topup][default_payment_method]=pm_你的支付源ID

之后调用Top Up API时,只需要传递amount和currency参数即可,Stripe会自动使用默认源。


四、错误排查要点

  1. 确认支付源的币种是JPY,且与Top Up请求的currency参数完全一致
  2. 支付源必须关联到主账户,而非你的关联子账户
  3. 测试环境禁止使用真实银行卡,必须用Stripe官方提供的测试卡
  4. 后台生成的source大多是一次性的,无法用于重复Top Up,必须用持久化的Payment Method或绑定的external_account

内容的提问来源于stack exchange,提问作者Hieu Le

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.10 15:20:47