Php 贝宝自适应支付-产品名称

Php 贝宝自适应支付-产品名称,php,paypal,paypal-adaptive-payments,Php,Paypal,Paypal Adaptive Payments,我正在为我的网站使用paypal自适应支付。我有很多卖家和不同的产品。当我作为一名用户尝试从我的网站购买任何产品时,我在Paypal表单摘要中看不到产品名称,而是卖家的姓名 请让我知道使用哪个参数传递产品名称 这是截图 对于自适应付款,您不能在付款请求中发送逐项详细信息。取而代之的是,你必须像往常一样打电话给Pay,然后再打电话给Pay。这样,您将传入从付款请求返回的PayKey,然后您可以设置所有其他详细信息,如SetPaymentsOptions提供的详细信息 然后你会重定向到PayPal,

我正在为我的网站使用paypal自适应支付。我有很多卖家和不同的产品。当我作为一名用户尝试从我的网站购买任何产品时,我在Paypal表单摘要中看不到产品名称,而是卖家的姓名

请让我知道使用哪个参数传递产品名称

这是截图


对于自适应付款,您不能在付款请求中发送逐项详细信息。取而代之的是,你必须像往常一样打电话给Pay,然后再打电话给Pay。这样,您将传入从付款请求返回的PayKey,然后您可以设置所有其他详细信息,如SetPaymentsOptions提供的详细信息


然后你会重定向到PayPal,它会告诉你你在找什么。

我也有同样的问题。它似乎只在嵌入式支付流中起作用


对于自适应支付,使用SetPaymentOptions设置的项目详细信息仅通过嵌入式流程显示给客户。 嵌入式流使用lightbox或小型浏览器作为签出页面


这里有一个关于如何在前端页面中实现嵌入式流程的技术说明,

请显示一个代码示例,显示您正在传递给PayPal的内容(删除任何安全内容)。在重定向到PayPal之前,我已经调用了SetPaymentOptions,但没有成功。下面是我的代码:我在最后看到您正在设置$detailsPacket并将其传递到SetPaymentOptions调用中,但这与SetPaymentOptions附带的任何参数都不一样。我在这里没有看到任何实际的详细信息,$detailsPacket看起来只有常规的付款请求参数。我在你的设置中没有看到任何类似的参数..?您好!我也有同样的问题。在我设置receiveroptions以显示逐项列出的项目后,它似乎确实会在paypal的网页屏幕上显示它们。这是我使用的代码。来自Paypal API的响应显示“成功”。我是不是遗漏了什么?
    $receiverOptions = new PayPal\Types\AP\ReceiverOptions();
    $setPaymentOptionsRequest->receiverOptions[] = $receiverOptions;

    $receiverOptions->description = 'Description';

    $invoiceItems = array();
    $item = new PayPal\Types\AP\InvoiceItem();

    $item->name = 'Item Name'; 
    $item->price = 10;
    $item->itemPrice = 10;
    $item->itemCount = 1;

    $invoiceItems[] = $item;

    $receiverOptions->invoiceData = new PayPal\Types\AP\InvoiceData();
    $receiverOptions->invoiceData->item = $invoiceItems;

    $receiverId = new PayPal\Types\AP\ReceiverIdentifier(); 
    $receiverId->email = 'email@domain.com';//Change it
    $receiverOptions->receiver = $receiverId;


    $setPaymentOptionsRequest->payKey = $_POST['payKey'];

        $servicePaymentOptions = new PayPal\Service\AdaptivePaymentsService($config);
        try {
            /* wrap API method calls on the service object with a try catch */
            $responsePaymentOptions = $servicePaymentOptions->SetPaymentOptions($setPaymentOptionsRequest);

            print_r($responsePaymentOptions); die;
        } catch(Exception $ex) {
            //error
        }

        if (isset($responsePaymentOptions) && $responsePaymentOptions->responseEnvelope->ack == "Success")
        {
            //Success
        }