Paypal DoDirectPaymentRequest返回NULL

Paypal DoDirectPaymentRequest返回NULL,paypal,Paypal,我使用贝宝的经典API做一个直接付款。代码如下: require('merchant-sdk-php-master/samples/PPBootStrap.php'); $logger = new PPLoggingManager('DoDirectPayment'); $address = new AddressType(); $address->Name = $full_name; $address-&

我使用贝宝的经典API做一个直接付款。代码如下:

        require('merchant-sdk-php-master/samples/PPBootStrap.php');

        $logger = new PPLoggingManager('DoDirectPayment');

        $address = new AddressType();
        $address->Name = $full_name;
        $address->Street1 = $address_1;
        $address->Street2 = $address_2;
        $address->CityName = $city;
        $address->StateOrProvince = $province;
        $address->PostalCode = $postal_code;
        $address->Country = $country;
        $address->Phone = $phone;

        $paymentDetails = new PaymentDetailsType();
        $paymentDetails->ShipToAddress = $address;
        $paymentDetails->OrderTotal = new BasicAmountType('CAD', $amount);

        $personName = new PersonNameType();
        $personName->FirstName = $first_name;
        $personName->LastName = $last_name;

        $payer = new PayerInfoType();
        $payer->PayerName = $personName;
        $payer->Address = $address;
        $payer->PayerCountry = $country;

        $cardDetails = new CreditCardDetailsType();
        $cardDetails->CreditCardNumber = $card_number;
        $cardDetails->CreditCardType = $card_type;
        $cardDetails->ExpMonth = $expiry_month;
        $cardDetails->ExpYear = $expiry_year;
        $cardDetails->CVV2 = $cvv;
        $cardDetails->CardOwner = $payer;

        $ddReqDetails = new DoDirectPaymentRequestDetailsType();
        $ddReqDetails->CreditCard = $cardDetails;
        $ddReqDetails->PaymentDetails = $paymentDetails;
        $ddReqDetails->PaymentAction = 'Sale';
        $ddReqDetails->IPAddress = $ip_address;
        $ddReqDetails->ReturnFMFDetails = true;

        $doDirectPaymentReq = new DoDirectPaymentReq();
        $doDirectPaymentReq->DoDirectPaymentRequest = new DoDirectPaymentRequestType($ddReqDetails);

        $logger->info("created doDirectPaymentReq Object");

        $paypalService = new PayPalAPIInterfaceServiceService();

        try{
            $doDirectPaymentResponse = $paypalService->DoDirectPayment($doDirectPaymentReq);
            var_dump($doDirectPaymentResponse);
        } 
        catch (Exception $ex){
            var_dump($ex);
        }
这是它返回的对象:

object(DoDirectPaymentResponseType)#84 (15) { ["Amount"]=> NULL ["AVSCode"]=> NULL ["CVV2Code"]=> NULL ["TransactionID"]=> NULL ["PendingReason"]=> NULL ["PaymentStatus"]=> NULL ["FMFDetails"]=> NULL ["ThreeDSecureResponse"]=> NULL ["PaymentAdviceCode"]=> NULL ["Timestamp"]=> NULL ["Ack"]=> NULL ["CorrelationID"]=> NULL ["Errors"]=> NULL ["Version"]=> NULL ["Build"]=> NULL } ­
我是加拿大人,所以我不能使用新的API,因为这里还没有。我一直在使用经典的API。为什么我会得到这个结果


感谢您的帮助

由于某种原因,昨天我得到了一个空值的对象。然而,今天我收到一条错误消息。我修复了错误并获得了成功

我不知道为什么它今天而不是昨天向我显示错误消息。我从未更改过任何代码,所以它一定是Paypal端的东西


我仍然不知道出了什么问题,但就是这样

我还想提到,当我删除请求所需的信息时,响应是失败的,带有错误代码和所有内容,因此我正在连接Paypal。