如何在 Stripe Express 入职时预填电子邮件字段?

Posted

技术标签:

【中文标题】如何在 Stripe Express 入职时预填电子邮件字段?【英文标题】:How to prefill email field in Stripe Express onboarding? 【发布时间】:2022-01-14 16:47:02 【问题描述】:

在一些在线课程的预订网站的这些代码行中,我正在为卖家创建一个条带快递帐户和一个包含将用户(卖家)发送到流程中的 url 的 accountLink 对象。

我在帐户链接 url(代码中的 LINK)中传递用户电子邮件时遇到问题,我在表单中预填了我的个人电子邮件,而不是我用于测试的用户电子邮件。

  import User from "../models/user"
  import Stripe from "stripe"
  import queryString from "query-string"

   const stripe = Stripe(process.env.STRIPE_SECRET)

   export const createConnectAccount = async (req, res) => 
  // 1. find user from db
  const user = await User.findById(req.user._id).exec()
  //2. if user don't have stripe_account_id yet, create now
  if (!user.stripe_account_id) 
    const account = await stripe.accounts.create(type: 'express');
    user.stripe_account_id = account.id
    user.save()

// 3. create login link based on account id (for frontend to complete onboarding)
let accountLink = await stripe.accountLinks.create( 
    account: user.stripe_account_id,
    refresh_url: process.env.STRIPE_REDIRECT_URL ,  
    return_url: process.env.STRIPE_REDIRECT_URL , 
    type: 'account_onboarding'
) 

// prefill any info such as email
accountLink = Object.assign(accountLink, 
  'stripe_user[email]': user.email,
);

const LINK = `$accountLink.url?$queryString.stringify(accountLink)`
res.send(LINK)

我也尝试过这种语法,但没有任何改变:

const account = await stripe.accounts.create(type: 'express' , email: user.email);

在发送的链接中预填用户电子邮件的正确语法是什么?

【问题讨论】:

【参考方案1】:

为已连接帐户预填电子邮件的正确方法是在创建帐户时提供:

const account = await stripe.accounts.create(
  type: 'express',
  email: user.email,
);

我还建议在隐身窗口中打开帐户入职链接,因为它们会与您拥有的任何活动 Stripe 会话(例如登录到仪表板/文档)发生冲突并显示错误的电子邮件。

来源:https://stripe.com/docs/connect/express-accounts#create-account https://stripe.com/docs/api/accounts/create?lang=node

【讨论】:

谢谢,但即使我在创建帐户时添加了用户电子邮件并在隐身窗口中打开链接,这次电子邮件字段也是空白 您是否检查了仪表板中的请求日志以确保您传递了电子邮件的预期值?

以上是关于如何在 Stripe Express 入职时预填电子邮件字段?的主要内容,如果未能解决你的问题,请参考以下文章

我可以在 Stripe Express Onboarding 中预填手机号码字段吗?

使用 CURL 进行 Stripe Express 或自定义入职

Stripe Standard 和 Express 帐户入职有啥区别

Stripe Connect Express Webhook - 如何在用户完成 Stripe Connect Express 表单并被重定向后触发 Stripe Webhook

如何使用 Vue js 中的 paypal/stripe 等付款方式收费?我需要像express这样的服务器吗?

女子入职被公司乐捐制度吓退