将付款与PayU集成

时间:2020-03-15 15:23:28

标签: php json rest payment payu

我在 PayU 上进行付款集成时遇到问题。 我不是高级程序员,但是我想在我的网站上进行此操作。 我在https://www.payu.pl/en上创建了一个沙箱帐户。 我正在浏览论坛,但我还是不明白。 首先,我使用了以下代码:https://repl.it/@PayU/pop-up-widget。 但这可能是商店本身和网站的结合。

现在我可能必须使用此代码并从http://developers.payu.com/en/restapi.html#creating_new_order_api创建订单

    curl -X POST https://secure.snd.payu.com/api/v2_1/orders \
-H "Content-Type: application/json" \
-H "Authorization: Bearer d9a4536e-62ba-4f60-8017-6053211d3f47" \
-d '{
    "notifyUrl": "https://your.eshop.com/notify",
    "customerIp": "127.0.0.1",
    "merchantPosId": "300746",
    "description": "RTV market",
    "currencyCode": "PLN",
    "totalAmount": "21000",
    "buyer": {
        "email": "john.doe@example.com",
        "phone": "654111654",
        "firstName": "John",
        "lastName": "Doe",
        "language": "pl"
    },
    "settings":{
        "invoiceDisabled":"true"
    },
    "products": [
        {
            "name": "Wireless Mouse for Laptop",
            "unitPrice": "15000",
            "quantity": "1"
        },
        {
            "name": "HDMI cable",
            "unitPrice": "6000",
            "quantity": "1"
        }
    ]
}'

如果代码正确,如何使用? 将文件保存为哪种格式? 如何运行此脚本。 我从未使用过卷发,也不知道该怎么办。

1 个答案:

答案 0 :(得分:0)

您发布的代码是一个命令,它将发送HTTP POST-REQUEST(请参阅https://en.wikipedia.org/wiki/Hypertext_Transfer_Protocol)。

请求基本上包括:

  1. 目的地址(https://secure.snd.payu.com/api/v2_1/orders),用于标识服务器以及服务器上请求的路径,以便服务器可以适当地执行请求。
  2. 两个标头,第一个标明消息所具有的内容类型,第二个标头提供某种标识/授权。
  3. 消息主体本身,它向服务器提供请求的实际内容。

此请求是通过终端命令(curl)执行的,因此要执行该请求,您有几个选择。您可以将其完全像显示的代码一样粘贴到终端中以直接执行,或者将其保存到普通文本文件中,该文件以.sh结尾并执行(在使其可执行之后)。当然,这些方法仅在您具有像操作系统这样的unix且curl命令行实用程序位于您的可执行路径中的情况下才有效。但是,有多种发送http请求的方法,不一定需要curl。甚至还有一些在线表格,允许这样做。甚至在PayU上也提供了一个,如果您单击页面上的“立即尝试”按钮,就可以找到它。

因此,这回答了您的问题。但是,我还有几点要说的:

这是正确的代码吗?它有效,我测试过。但是,由于您创建了自己的沙箱帐户,因此可能应该更改行Authorization: Bearer d9a4536e-62ba-4f60-8017-6053211d3f47,使其包含您可能收到的授权代码。

如果要在您的网站上执行此代码,则需要找出如何使用用于Web开发的语言(例如PHP)来执行请求。然后,您可能不需要使用curl,但是我在上面指出的那样,可以适当地使用该语言的功能来使用请求的各个部分。但这可能是一个新问题。

如果您不理解我的部分答案,请发表评论。