1

PHPtoolkip_v2010.php を使用して Netsuite で新しいセールス オーダーを作成し、支払い方法に認証 ID を追加しようとしています。

セールス オーダーを作成し、支払い方法を PayPal に設定できますが、AuthId を設定できません。トランザクション ID を設定しようとすると成功しますが、コードを切り替えて認証を行うとすぐに失敗します。

私が試しているコードのスニペットは次のとおりです。

$sales_order_data = array(
    'entity'=> new nsRecordRef(array('internalId' => $customer_id)),
    'tranDate'=>date('c', strtotime($order_date)),
    'itemList'=>array('item'=>array()),
);

//...

$sales_order_data['paymentMethod'] = array('internalId'=>7);

//$sales_order_data['payPalTranId'] = $paypal_transaction_id;
$sales_order_data['paypalAuthId'] = $paypal_transaction_id;

$sales_order = new nsComplexObject('SalesOrder', $sales_order_data);
$new_sales_order = $ns->add($sales_order);

API を介して既存の Paypal 注文を取得すると、var_dumpフィールドが表示され、設定されます。Paypal の秒の P は、TranId では大文字になりますが、AuthId では大文字ではないことに注意してください。しかし、私は AuthId に対してキャップ付きとキャップなしの両方を試しましたが、結果はありませんでした。payPalTranIdpaypalAuthId

4

2 に答える 2

1

私がやりたかったことは不可能だったようです。

この声明は、Magento と Netsuite の統合を専門とする会社であるCeligoからのものです。

認証とキャプチャの両方を Magento 側で行う必要があります。NetSuite は、NetSuite 外で承認された支払いの回収を促進しません。認証ステータスを示すために設定する必要がある NetSuite フィールド「PayPal ステータス」は読み取り専用であるため、設定できません。このフィールドが設定されていないと、トランザクションを処理できません。

彼らは私が AuthId を設定できないと明示的に述べていませんが、そうする私の目標は、Netsuite の外部で支払いを承認し、内部でキャプチャすることでした。それが不可能な場合、AuthId を設定しても意味がありません。

于 2012-01-13T17:38:58.993 に答える