/
登录
 找回密码
 立即注册

只需一步,快速开始

发帖
首页 › 华人城论坛 › 生活杂谈 ›海外支付平台Creem注册教程,creem支付配置:小白视角和 ...

海外支付平台Creem注册教程,creem支付配置:小白视角和路径,手把手教学

2025-5-25 22:48:35 评论(1)
网站出海赚美金是每一个出海人在做的事儿,赚美金,我们把工具做好了,尤其是一次性支付或者订阅的这种工具,就需要有一种支付工具帮助我们“收款美金”,常见的stripe需要办理港卡,且封控严格,新手极不友好;PayPal的话电商确实常见,只是必须需要公司,对于独立个体也不方便,这时候Creem出现了!
  • 中国人友好
  • 直接打款支付宝
  • 支付接入简单


这几个在一起,“如果是真的”,那很王炸啊!


第一次看到creem支付是在这篇文章

当时的说法是,这个支付只需要20分钟就能搞定,我信了,注册到审核确实只要20分钟,但是后面的操作,让作为0基础小白的我崩溃了。经过了2周的爱恨纠结,终于还是把这个creem给装完了了,,3月底接完了支付也写了这篇文章的80%,但是还是拖到了5月中才真正把creem的支付给“拿下”,今天就用小白的视角帮大家一起梳理接creem支付的每一个步骤。


文章主要包含四个部分:
  • 注册creem账号
  • 准备各种creem的信息
  • webhook和ngrok(有些情况不需要)
  • 正式配置支付


一、注册账号+完善信息1. 注册账号(google可直接登录)直通车,可以直接google登录 或者邮箱注册,注册成功就会进入下面的页面







  • 完善提现信息
2.1 创建提现账号在Balance的Payout Account中,选择创建一个新的账号,国家选择China,

2.2 填写业务信息主要填写你的基本信息和你的产品是做什么的

2.3 完善个人信息请按照下面的流程,完成个人信息填写,上传大陆身份证的正反面,并且电脑摄像头拍照,最终你的个人信息会被保存到Sumsub ID中。



提交完以后,你可能会看到:


莫慌,等待即可,大概过了24小时,就会邮件通知 审核通过!
当然 你也有可能是 直接通过的那种




2.4 完善提现信息点击Payout Details的Manage Payout Account,完善提现信息。

填写提现账号的国家,选择China,币种选择CNY,转账方式选择支付宝。
接着填写支付宝的账号,邮箱地址和全名(中文名)。

最后填写你的家庭地址,这里如实填写即可。提交之后,个人信息和提现信息就完善好了。

2.5 等待审核最后就是等待审核,快的话,半天到一天就可以结果。



二、准备2套配置信息测试环境和生产环境的配置信息不一样!
这个非常的重要!当初我跟彩笺都忽略了“test mode”这个东西!
打开和关掉,是完全的2套内容,所以下面所有的东西,都要做2遍。
一个是 test mode一个是非test mode

1. product首先是注册产品
product--->add product

1.1 product details

name:产品名字
return url:用户在支付完成以后,你希望对方返回的页面
description:产品介绍(可以让ai生成啦~)
status:选择active(激活状态)
image preview:产品图,可以上传,可以不上传


1.2 payment details

支付方式:你是一次性支付(single payment)还是 订阅类型(subscrition)的支付
curency:货币方式
price:自定义价格
tax category:一般选择“digital goods or service”(虚拟服务)
tax behaviour:是否包含税(看个人情况选择


1.3 product other infomation

图片、特性、其他...
这些内容都能让ai搞定
填写完成以后 点击“create product”
1.4 product信息在product页面 自己创建的产品 有三个点,点击以后 可以复制自己的product id

2. api key

点击右上角的 developer就创建自己的api key
记得创建2组,test和非test的 这是2个不同的


三、webhook&ngrok(选择性)1 什么是webhook直通车
Webhook 可以理解为一个网络通知器"。
想象你在等快递,有两种方式知道快递到了:
  • 传统方式:你每隔一会儿就要打开App 查看快递到哪了(这就像传统的轮询方式。隔一段时间就问,然后得到回复)
  • Webhook 方式:快递员到了直接给你打电话(这就是 Webhook 的工作方式)


2 怎么判断自己需不需要

以下情况你可能需要 Webhook:

  • 需要实时通知
    • 用户下单后立即通知商家
    • 有人在你的博客留言后立即收到提醒

  • 需要自动化处理
    • 用户付款成功后自动发货
    • 有人提交表单后自动发送确认邮件




  • 需要系统联动
    • Github 代码更新后自动部署网站
    • 订单系统和库存系统需要实时同步

如果你的网站不需要这些实时性或自动化的功能,可能就不需要 Webhook。
3 准备webhook如果细心的朋友会发现,刚刚在创建api key的时候 旁边就有一个 webhooks

点击add webhook只需要填写两个信息
webhook name:取个名字,这个通知器是通知什么的
webhook url:这个地方的url是指,在支付完成以后,creem需要向哪一个page传达通知。


那这个url具体要怎么填写呢?
3.1 非test mode
  • 直接让cursor告诉你 需要那个页面来接收通知,他就会给你一个路径,域名+path即可.例如下面的
暂时无法在飞书文档外展示此内容
3.2 test mode按理说应该是
暂时无法在飞书文档外展示此内容
但是 你填进去 就得到通知,不能使用本地的路径,必须使用公开的URL。所以这个时候你就需要一个新的东西ngrok。
具体看下一个part的具体实操
经过ngrok的操作以后,本地连接就会变成一个可以用的public url
暂时无法在飞书文档外展示此内容
3.3 获取 webhookRUL创建完成以后 获取 webhook的URL

3.4 获取webhook的secret


4. ngrokngrok 是一个非常实用的网络工具,它的主要作用是帮助我们实现"内网穿透",开发者可以让其他人实时查看本地开发的网站
4.1 注册账号ngrok
可以google直接登录,点击菜单栏的 “your authtoken”,查看并复制你的token


4.2 安装ngrok4.2.1 下载暂时无法在飞书文档外展示此内容
也可以直接点击“download”进行下载,选择对应的芯片

4.2.2 加入token添加 authtoken到电脑上,终端运行下面内容
暂时无法在飞书文档外展示此内容


4.3 使用ngrok启动本地开发服务,终端运行下面?
暂时无法在飞书文档外展示此内容
运行ngrok,一般程序在3000端口,如果你的有指定修改端口即可
暂时无法在飞书文档外展示此内容
运行完以后会出现 类似下面的图,就得到了local的path对应的public URL

最后再把我们需要的具体path换进去例如
暂时无法在飞书文档外展示此内容
Public URL就是
暂时无法在飞书文档外展示此内容
4. 注意事项免费版本的,每一次 run ngrok以后 都会生成一个随机的url。
如果你关闭了terminal以后,再次打开,就会生成另外一个URL,你就需要去creem里面更换mode 模式下的 webhook的URL!


四、配置1. 检查配置信息经过以上种种 ,我们应该就得到了下面的所有东西
env文件
暂时无法在飞书文档外展示此内容
api_key暂时无法在飞书文档外展示此内容
product_id暂时无法在飞书文档外展示此内容
api URL
这个好像是通用的
暂时无法在飞书文档外展示此内容
webhook 相关暂时无法在飞书文档外展示此内容
支付成功以后要返回的页面路径暂时无法在飞书文档外展示此内容
2. 使用cursor连接2.1 支付的逻辑我让ai给我画了一个说明的流程图,结果感觉画的非常复杂,看起来可能真的这么复杂,简单来说就是,
  • 前端看到的:用户点击付款按钮--->跳转付款页面--->填写信息付款成功--->返回某个页面/获得积分
  • 后端实际:服务器发起请求--->支付端收到请求,给了一个付款连接--->服务器把付款连接传给用户--->用户支付--->支付端收到支付通知--->支付端给服务器回传消息(通知支付完成)
大概就是这么个意思~(主打一个看图说话


网站的支付就2种,一次性(pay one-time)&订阅(subscribe),下面就手把手把带大家尝试一下 一次性付费。
配置规则文档直通车


2.2 一次性付费(Return URL)
一句话说逻辑就是:配置规则在这里,我有这些配置信息,我希望实现什么效果,你帮我写
划重点“配置信息”、“配置规则”、“实现效果”
就是这3个内容,配置信息上面我们已经搞定,接下来就是配置规则和实现效果


先确定我们这一次的实现效果


⚠️整个操作,不涉及用户注册和登录,所以也挺容易实现的,别害怕,即使是后面有注册和登录,也都有第三方集成,莫慌!


这个实现逻辑,我们是需要有一个使用参数`success_url`和`signature验证`直接看到对应文档官方解释
  • 您可以为每个 checkout_session 传递一个自定义的success_url,它将覆盖success_url产品上的设置。这使得您可以在每次付款后动态地将用户重定向到自定义页面(对于在付款后将用户引导到他们的特定帐户资源很有用)。
  • 返回和重定向 URL 是成功付款后您的客户将被重定向到的 URL。它们包含由 creem 签名的重要信息,您可以使用这些信息来验证付款和用户。
划重点:付款成功,重定向的自定义页面,使用信息验证付款(和用户)


一次性付费总共需要3个API:创建checkout、生成signature、验证signature
API1:创建会话暂时无法在飞书文档外展示此内容


看起来吓人,实际上就4个东西:
  • https://api.creem.io/v1/checkouts支付连接(固定的,测试和生产2个不同连接)
  • success_url": "https://example.com 支付成功以后你要去到的页面path(路径)
  • "product_id": "prod_your-product-id 换成你的产品id
  • "x-api-key": `creem_123456789 换成你的api key(测试和生产2个不同)
我的文件如下:
暂时无法在飞书文档外展示此内容

(GPT的解读,下面的你也可以发给任意ai去看看写的到底是什么)


API2:生成signture暂时无法在飞书文档外展示此内容
API3:验证签名signature暂时无法在飞书文档外展示此内容
  • 测试支付
3.1 测试支付测试支付时使用测试信用卡
卡号
暂时无法在飞书文档外展示此内容
其他信息都可以随便填写
3.2 实际支付(必须看!痛失40刀)完成了以上所有的,也完成了测试模式的支付以后,准备实际检查一下,生产环境的真实支付了,请一定要做以下事情,不然荷包真的会痛!
?1000元免手续费说明这个1000元的货币单位竟然是“欧元”!请注意,不是美元,是欧元。我跟彩笺都踩了这个坑,一开始我的产品设置的就是美元,自己给自己付了9.9以后发现扣了手续费!后来仔细看,越看越不对劲儿,这个符号,就是欧元符号吧!


?Discount 折扣在菜单页,有一个非常明显的discount按钮,这里可以自己创建优惠券,最高是100%的折扣,也就是免费使用!
免费使用!


在林悦己给自己的支付测试冲了5次9.9美刀以后,在大哥的提醒下,发现并使用了这玩意儿,一开始我还只是设置90%,结果大哥自己测试的时候,直接上了100%(我?)


有了这个折扣券,在支付的时候甚至不需要输入银行卡信息,只需要输入discount的code就会显示FREE!
?Refund 退款在大哥的提醒下,我又无意中点进了我的payment,想着,是不是可以退款(refund),还真给我找到了,点击order最右边的三个点,就会有一个“refund”按钮,2分钟内完成退款
(如果是立刻支付,信用卡还没入账的情况,写这个帖子的时候,我有4笔9.9是几天前的,还没退给我)
五、实战操作演示
前提:这次实战,只专注在如何接支付的api,关于“登录”、“数据库”等部分不会详细说明(后面我也准备再写一篇接支付的)
5.1 完成的效果点击按钮,触发支付,完成支付,返回指定的成功页面,creem后台查看钱是否收到





5.2 代码结构为了节省cursor的次数,我使用augment作为演示(还没有用上augment的朋友可以看我之前那篇augment,现在还能薅羊毛,越早上车越好)!
暂时无法在飞书文档外展示此内容
各文件详细功能

  • signatureUtils.ts:
    • 核心功能:生成符合Creem规范的签名
    • 工作方式:将参数按照key1=value1|key2=value2|...|salt=apiKey格式连接,然后使用SHA-256哈希算法生成签名
    • 被verifySignature.ts调用来验证签名

  • verifySignature.ts:
    • 核心功能:验证从Creem重定向回来的URL中的签名
    • 工作方式:过滤参数,移除signature参数,调用generateSignature生成签名,然后与URL中的签名比较
    • 被SuccessContent.tsx组件调用来验证支付结果

  • createCheckout.ts:
    • 核心功能:调用Creem API创建结账会话
    • 工作方式:使用axios发送POST请求到Creem API,返回包含checkout_url的响应
    • 被app/api/create-checkout/route.ts调用

  • app/api/create-checkout/route.ts:
    • 核心功能:处理前端支付请求
    • 工作方式:接收前端请求,验证参数,调用createCheckout服务,返回结果
    • 被app/page.tsx中的支付按钮点击事件调用

5.3 跟AI对话的过程暂时无法在飞书文档外展示此内容
写好md文件,发出prompt,就开始自己工作了

如果你遇到了 verify失败,就是下面这种情况

就让ai检查verify的代码和参考代码的区别,严格按照参考代码进行修改:




六、碎碎念一开始不懂,真的是很正常的,不懂就硬上!崩溃100次以后,就进入下一个阶段了!


支付、登录真的是2座可怕的大山,这篇内容其实在3月底的时候我就写好了,一直想加一个实操演练,结果就拖到了现在。


面对这个自己害怕的东西,搞明白支付到底怎么接,api还有service之间的关系到底是怎样,似懂非懂等于不懂,完全懂,完全明白,完全掌握,才算真正克服了这座大山。借老师的那句话,今天,我终于把支付这颗珠子 给扔掉了!


2025-5-25 23:08:43
哇,Creem支付,听起来不错!20分钟搞定?我有点心动了,不过2周时间搞定,也是够折腾的。  希望能找到快速上手的教程,不然我也要崩溃了!
您需要登录后才可以回帖 登录 | 立即注册
楼主
索氏摄影王丽鑫

关注0

粉丝0

帖子1

最新动态