首页 > 解决方案 > 使用谷歌应用脚​​本创建发票条带

问题描述

嗨,我遵循了 有关在条带上创建发票的文档

它在这里说,The ID of the customer who will be billed. 所以我在条带上手动创建了一个测试客户,现在我尝试了这段代码

function testDataInvoices()
{
  var url = "https://api.stripe.com/v1/invoices";
      var params = {
      method: "post",
      headers: {Authorization: "Basic " + Utilities.base64Encode("sk_testXXXXX:")},
      payload: 
      {
        customer: "cus_JLKM93Pc6j2mxB",
      }
    };
    var res = UrlFetchApp.fetch(url, params);
    Logger.log(res.getContentText())
}

但我收到了这个错误

例外:对https://api.stripe.com的请求失败,返回代码 400。截断的服务器响应:{“错误”:{“代码”:“invoice_no_customer_line_items”,

有人可以告诉我这个条纹我真的只是这个API的新手,他们的API只适用于node.js

#尝试过

我试着按照这个链接

并将我的代码更改为此

function testDataInvoices()
{
  var url = "https://api.stripe.com/v1/invoices";
      var params = {
      method: "post",
      headers: {Authorization: "Basic " + Utilities.base64Encode("sk_test_XXXXXX:")},
      payload: 
      {
        "email": "paul.kevin@senren.page",
        "payment_settings": 'pm_1FWS6ZClCIKljWvsVCvkdyWg',
        "invoice_settings[default_payment_method]":'pm_1FWS6ZClCIKljWvsVCvkdyWg'
      }
    };
    var res = UrlFetchApp.fetch(url, params);
    Logger.log(res.getContentText())
}

并得到了这个错误

在此处输入图像描述

标签: google-apps-scriptstripe-paymentsstripes

解决方案


一些东西:

  • 我对 Google App Scripts 不熟悉——你确定在这样的脚本中存储密钥是安全的,而且你不需要一个实际的后端服务器吗?该密钥必须保密,因为它可用于在您的 Stripe 帐户上执行任何操作。
  • 在第一种情况下,您会收到一个错误,因为要开具发票,您必须先调用/v1/invoiceitems以向客户添加一些项目。然后,当您致电时/v1/invoices,这将吸引他们为他们收费:https ://stripe.com/docs/invoicing/integration#create-invoice-code
  • 在第二种情况下,您会收到错误,因为这些不是该端点的有效参数(如果您检查您发布的链接,这些参数是 for /v1/customers而不是 /v1/invoices)。

我建议遵循https://stripe.com/docs/invoicing/integration


推荐阅读