php - Paypal 请求不断收到 MALFORMED_REQUEST

标签 php json api rest paypal

我尝试向 PayPal 付款。但出于某种原因,我只收到 MALFORMED_REQUEST 错误。 没有更多信息。甚至没有异常的 getData() 函数。

这是编译后的 JSON:

{
"intent": "sale",
"payer": {
    "payment_method": "paypal",
    "payer_info": {
        "first_name": "Testvorname",
        "last_name": "Testnachname",
        "email": "test@example.com",
        "suffix": "Herr"
    }
},
"transactions": [
    {
        "amount": {
            "currency": "EUR",
            "total": "72.00"
        },
        "item_list": {
            "items": [
                {
                    "quantity": "4",
                    "name": "test1",
                    "price": "8",
                    "currency": "EUR"
                },
                {
                    "quantity": "2",
                    "name": "test2",
                    "price": "20",
                    "currency": "EUR"
                }
            ]
        }
    }
],
"redirect_urls": {
    "return_url": "https://www.google.de",
    "cancel_url": "https://www.google.de"
} }

我不知道这个 JSON 有什么问题。 我正在使用 PHP SDK。

最佳答案

问题不在 SDK 中。您传递给 Paypal 服务器的数据导致了这个问题。不过这里的错误信息并不明显。

您不需要在“payer”对象中传递“payer_info”。删除它可以解决问题。这是 JSON 的样子:

{
    "intent": "sale",
    "payer": {
        "payment_method": "paypal"
    },
    "transactions": [
        {
            "amount": {
                "currency": "EUR",
                "total": "72.00"
            },
            "item_list": {
                "items": [
                    {
                        "quantity": "4",
                        "name": "test1",
                        "price": "8",
                        "currency": "EUR"
                    },
                    {
                        "quantity": "2",
                        "name": "test2",
                        "price": "20",
                        "currency": "EUR"
                    }
                ]
            }
        }
    ],
    "redirect_urls": {
        "return_url": "https://www.google.de",
        "cancel_url": "https://www.google.de"
    }
}

有关更多信息,您始终可以使用 SDK 中提供的示例,以及帮助您快速帮助您调试问题的文档等。

以下是一些有用的链接:

关于php - Paypal 请求不断收到 MALFORMED_REQUEST,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32099506/

相关文章:

php - 使用 ORDER BY 子句通过使用从下拉菜单中选择的值来对查询进行排序

php - is_account_page() 的 WooCommerce 条件,但只有登录部分

angularjs - $http 通过服务调用,然后将数据拉入 Controller (AngularJS)

sql - 更新对象数组中的特定对象 Postgres jsonb

javascript - 引用谷歌地图中的特定位置

PHP MongoDb 插入删除所有旧记录

javascript - 返回 JSON 响应到 ajax 调用提示下载包含响应的文件

用于 IP 到位置 API 的 PHP 正则表达式

python - 如何在 python 中编写 for 循环以仅从 csv 文件中提取唯一值以加载到我的 API 脚本中?

php - 带有乘客和 php 模块的 Apache,不执行 php