Позволяет ли Stripe по-прежнему осуществлять предварительное заполнение экспресс-счетов? Если да, то каков синтаксис для передачи таких данных, как электронная почта, имя, название компании и т. Д

#express #stripe-payments

Вопрос:

изображение начального целевого экрана, на котором я также хочу, чтобы мобильный телефон был предварительно заполнен

Я следил за некоторыми онлайн-учебниками по созданию торговой площадки Stripe, все это настроил, однако у меня возникли проблемы с передачей сведений, которые я собрал для пользователя, например, по электронной почте, как лучший пример, а затем, чтобы они были предварительно заполнены, когда новый поставщик на моей торговой площадке проходит процесс регистрации Stripe Connect Express.

Любая помощь была бы отличной, особенно в том, как передать эти данные в отправляемой ссылке на учетную запись.

 export const makeSeller = async (req, res) => {
    try {
        // 1. find user from db
        const seller = await Seller.findById(req.user._id).exec();
        // 2. if user dont have stripe_account_id yet, then create new
        if (!seller.stripe_account_id) {
            const account = await stripe.accounts.create({ type: 'express' });
            // console.log('ACCOUNT => ', account.id)
            seller.stripe_account_id = account.id;
            seller.save();
        }
        // 3. create account link based on account id (for frontend to complete onboarding)
        let accountLink = await stripe.accountLinks.create({
            account: seller.stripe_account_id,
            refresh_url: process.env.STRIPE_REDIRECT_URL,
            return_url: process.env.STRIPE_REDIRECT_URL,
            type: 'account_onboarding',
        });
        console.log('ACCOUNT LINK', accountLink);
        // 4. pre-fill any info such as email (optional), then send url resposne to frontend
        accountLink = Object.assign(accountLink, {
            'stripe_user[email]': seller.email,
        });
        // 5. then send the account link as response to fronend
        res.send(`${accountLink.url}?${queryString.stringify(accountLink)}`);
    } catch (err) {
        console.log('MAKE SELLER ERR ', err);
    }
};
 

Ответ №1:

Полоса позволяет предварительно заполнить любое из полей объекта учетной записи! Место для предварительного заполнения этой информации находится в stripe.accounts.create вызове перед созданием объекта Ссылки на учетную запись, если вы предварительно заполните информацию в объекте учетной записи, она не будет собрана в потоке ввода[1].

 const account = await stripe.accounts.create({ type: 'express', email: 'vendor@example.com' });
 

Ознакомьтесь с разделом документа API, посвященным созданию объекта учетной записи, для получения информации о том, как заполнять определенные поля[2].

[1] https://stripe.com/docs/connect/express-accounts#create-account

[2] https://stripe.com/docs/api/accounts/create

Комментарии:

1. очень полезно, особенно ссылка на документы [2], чтобы я мог предварительно заполнить большую часть формы в полоску и, надеюсь, сократить время отправки при регистрации