paypal-express-checkout-simpleを使用しました。商品ごとに送料を追加し、ペイパルチェックアウトページに表示する必要があります。私はpaypalのアカウント設定を変更する必要がありますか?paypal-express-checkout-simpleでの送料の追加
私はこの非常に感謝のhttps://www.npmjs.com/package/paypal-express-checkout-simple
すべてのヘルプに従っています。
paypal-express-checkout-simpleを使用しました。商品ごとに送料を追加し、ペイパルチェックアウトページに表示する必要があります。私はpaypalのアカウント設定を変更する必要がありますか?paypal-express-checkout-simpleでの送料の追加
私はこの非常に感謝のhttps://www.npmjs.com/package/paypal-express-checkout-simple
すべてのヘルプに従っています。
ローカルノードモジュールファイルのlib/paypal-express-checkout.jsファイルを変更しました。
私はparams.PAYMENTREQUEST_0_SHIPPINGAMTを追加しました。これは送料のために機能しませんでした。
Paypal.prototype.setExpressCheckoutPayment = function(email, invoiceNumber, amount, totalShipCost, description, currency, returnUrl, cancelUrl, onlyPayPalUsers, callback) {
var self = this;
var params = self.params();
if (email) {
params.EMAIL = email;
}
params.SOLUTIONTYPE = onlyPayPalUsers === true ? 'Mark' : 'Sole';
params.PAYMENTREQUEST_0_AMT = prepareNumber(amount + totalShipCost); // ***add ship cost here
params.PAYMENTREQUEST_0_DESC = description;
params.PAYMENTREQUEST_0_CURRENCYCODE = currency;
params.PAYMENTREQUEST_0_INVNUM = invoiceNumber;
params.PAYMENTREQUEST_0_CUSTOM = invoiceNumber + '|' + params.PAYMENTREQUEST_0_AMT + '|' + currency;
params.PAYMENTREQUEST_0_PAYMENTACTION = 'Sale';
params.PAYMENTREQUEST_0_ITEMAMT = prepareNumber(amount);
params.PAYMENTREQUEST_0_SHIPPINGAMT = prepareNumber(totalShipCost); // ***add variable for ship cost
params = _.extend(params, this.getItemsParams());
params.RETURNURL = returnUrl;
params.CANCELURL = cancelUrl;
params.NOSHIPPING = 0;
params.ALLOWNOTE = 1;
params.REQCONFIRMSHIPPING = 1;
params.METHOD = 'SetExpressCheckout';
params = _.extend(params, this.payOptions);
self.request(self.url, 'POST', params, function(err, data) {
if (err) {
callback(err);
return;
}
if (data.ACK === 'Success') {
callback(null, {
redirectUrl: self.redirect + '?cmd=_express-checkout&useraction=commit&token=' + data.TOKEN,
token: data.TOKEN
});
return;
}
callback(new Error('ACK ' + data.ACK + ': ' + data.L_LONGMESSAGE0));
});
return self;
};
とAPIからsetExpressCheckoutPayment関数を呼び出している間、私は郵送料を通過してきた、それはPayPalのチェックアウトページに送料を表示するには私の問題を修正しました。
詳しくはhttps://github.com/totaljs/node-paypal-express-checkout/issues/24 を参照してください。 ハッピーコーディング。