首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用Stripe测试Shopify签出API时出错“在没有任何事务的情况下无法完成签出”。

使用Stripe测试Shopify签出API时出错“在没有任何事务的情况下无法完成签出”。
EN

Stack Overflow用户
提问于 2021-04-25 17:04:40
回答 1查看 570关注 0票数 0

我正在尝试使用与Stripe集成的/checkout API来完成结帐,下面是https://shopify.dev/tutorials/complete-a-sales-channel-payment-with-checkout-api#integrate-stripe-wi..文档。

在我最后的请求中,我得到了这样的答复:

请求:

代码语言:javascript
复制
curl --location --request POST 'https://<nameofmyshop>.myshopify.com/admin/api/2021-04/checkouts/<shopify-checkout-token>/complete.json' \
--header 'Content-Type: application/json' \
--header 'X-Shopify-Access-Token: <shpat_shopify-access-token>' \
--data-raw '{
    "payment": {
        "amount": "1.00",
        "unique_token": "unique token I made",
        "payment_token": {
            "payment_data": "<tok_stripe-vault-token>",
            "type": "stripe_vault_token"
        },
        "request_details": {
            "ip_address": "123.1.1.1",
            "accept_language": "en",
            "user_agent": "Mozilla\/5.0 (Macintosh; Intel Mac OS X 10_12_1) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/54.0.2840.98 Safari\/537.36"
        }
    }
}'

(错误)答复:

代码语言:javascript
复制
422 Unprocessable Entity

{
    "errors": {
        "base": [
            {
                "code": "missing_transactions",
                "message": "Cannot complete the checkout without any transactions.",
                "options": {}
            }
        ]
    }
}

有关我的Shopify商店和Stripe设置的一些详细信息:

  • I有Shopify支付功能的
  • 测试模式是在
  • 上成功下了订单,虽然商店的网站上有CC# 4242 4242 4242
  • ,但我有一个测试条连接帐户,用于我的“客户”

H 112我可以成功地获得为客户生成的Stripe令牌H 213F 214

这是我的流程:

创建结帐后的https://{{store_name}}.myshopify.com/admin/api/{{api_version}}/checkouts.json

  1. Save checkout.token和响应

中的checkout.shopify_payments_account_id

  1. 为客户获取带条令牌:

代码语言:javascript
复制
curl --location --request POST 'https://api.stripe.com/v1/tokens' \
--header 'Content-Type: application/x-www-form-urlencoded' \
--header 'Stripe-Account: {{shopify_payments_account_id}}' \
--header 'Authorization: Bearer {{stripe-token}}' \
--data-urlencode 'customer=<cus_customers-stripe-connect-id>'

从响应" id:"“保存id的

  1. 完成带带标记的签出(请求)

我们应该能够使用Shopify /checkout API + Stripe-Connect测试帐户完成结帐吗?

谢谢你的帮助!

EN

回答 1

Stack Overflow用户

发布于 2021-04-26 23:04:41

我使用了错误的端点:

最后的请求应该转到/payments.json,而不是/complete.json

代码语言:javascript
复制
url --location --request POST 'https://<nameofmyshop>.myshopify.com/admin/api/2021-04/checkouts/<shopify-checkout-token>/payments.json' \
--header 'Content-Type: application/json' \
--header 'X-Shopify-Access-Token: <shpat_shopify-access-token>' \
--data-raw '{
    "payment": {
        "amount": "1.00",
        "unique_token": "unique token I made",
        "payment_token": {
            "payment_data": "<tok_stripe-vault-token>",
            "type": "stripe_vault_token"
        },
        "request_details": {
            "ip_address": "123.1.1.1",
            "accept_language": "en",
            "user_agent": "Mozilla\/5.0 (Macintosh; Intel Mac OS X 10_12_1) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/54.0.2840.98 Safari\/537.36"
        }
    }
}'
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/67256082

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档