Добавление метаданных в объект клиента Stripe - PullRequest
0 голосов
/ 23 января 2019

Я устанавливаю платежную систему с Stripe, и я хотел бы добавить некоторые метаданные к объекту customer.Я хотел бы добавить свой идентификатор рабочей области в свойство метаданных клиента.Я попробовал приведенный ниже код, но он возвращает следующую ошибку:

⛔️ Error:
 Error: Invalid val: {:_bsontype=>"ObjectID", :id=>"\\HÉ\u001E��\u000F�=��"} must be a string under 500 characters

Я зарегистрировал идентификатор рабочей области, который добавляю в это свойство метаданных, но кажется, что это просто обычный объектный идентификатор mongodb.Кто-нибудь может увидеть, что я сделал не так?

Код, который должен добавить метаданные к клиенту, которого я создаю

    // find the current User and use his workspace ID
    const user = await User.findOne({ _id: req.userId });
    const workspaceId = user._workspace;

    // get the payment plan
    const plan = await stripe.plans.retrieve('plan_EK1uRUJLJcDS6e');

    //   // then we create a new customer
    const customer = await stripe.customers.create({
      email,
      source,
      metadata: {
        workspace_id: workspaceId
      }
    });

    res.status(200).json({
      message: 'payment complete',
      subscription: adjustedSubscription
    });

1 Ответ

0 голосов
/ 23 января 2019

Значения, которые вы храните в metadata, могут содержать только строки длиной до 500 символов .В этом случае вы захотите проанализировать ваш workspaceId как строку.Похоже, вы хотите запустить toString() или toHexString() на этом ObjectId.

...