Ich muss Paypal in meine Anwendung implementieren. Hier habe ich einige Produkte in den Warenkorb gelegt. Wenn ich auf den Einkaufswagen klicke, muss ich den Betrag mit Paypal bezahlen.Paypal Integration Problem in Titan
Wenn die Schaltfläche Paypal klicken, erhalte ich folgende Fehlermeldung:
Die für Artikelpreis, Steuern angegebenen Mengen und Versand Sie auf die Gesamtmenge nicht aufaddieren.
Warum bekomme ich diesen Fehler?
Ich verwende den folgenden Code ein:
$.paypalWindow.addEventListener('open', function(){
var Paypal = require('ti.paypal');
var u = Ti.Android != undefined ? 'dp' : 0;
var status = Ti.UI.createLabel({ top: 20 + u, height: 50 + u, color: '#333', text: 'Loading, please wait...' });
$.paypalWindow.add(status); var price = totalamount;
var invoiceitemslist = JSON.stringify(data);
var button; function addButtonToWindow() {
if (button) { $.paypalWindow.remove(button); button = null; }
button = Paypal.createPaypalButton({ width: 194 + u, height: 37 + u, buttonStyle: Paypal.BUTTON_194x37, top: 20 + u,
language: 'en_US',
appID: 'APP-80W284485P519543T',
paypalEnvironment: Paypal.PAYPAL_ENV_SANDBOX,
feePaidByReceiver: false,
enableShipping: false,
payment: {
paymentType: Paypal.PAYMENT_TYPE_BUSINESS,
subtotal: price,
tax: 0.00,
shipping: 0.00,
currency: 'USD',
recipient: 'thaib[email protected]',
customID: 'anythingYouWant',
invoiceItems:
[{"name":"Bajaj 200 mm Ultima PT01 Personal Fan","totalPrice":2997,"itemPrice":999,"itemCount":3},
],
ipnUrl: 'http://www.appcelerator.com/',
merchantName: 'EYMOBINS Insurance',
memo: 'For the insurance with EYMOBINS!'
}
});
button.addEventListener('paymentCancelled', function (e) {
alert('Payment cancelled. Please try again!');
addButtonToWindow();
});
button.addEventListener('paymentSuccess', function (e) {
alert('Payment successfull. Please get your Policy No.!'+" "+e.transactionID);
$.paypalWindow.remove(button);
//addButtonToWindow();
});
button.addEventListener('paymentError', function (e) {
alert('Payment Error. Please try again!');
addButtonToWindow();
});
button.addEventListener('buttonDisplayed', function() {
$.paypalWindow.remove(status);
//alert('Please pay '+Ti.App.totalcost+'$ with Paypal!')
});
button.addEventListener('buttonError', function() {
});
$.paypalWindow.add(button);
}
addButtonToWindow();
});
$.paypalWindow.open();
Bitte überprüfen Sie den Code und geben Sie mir eine Idee, um das oben genannte Problem zu lösen.
EDIT:
Hier bin ich mit Blick auf ein Thema:
[{"name":"Bajaj 200 mm Ultima PT01 Personal Fan","totalPrice":999,"itemPrice":999,"itemCount":1},{"name":"Average2Excellent CBSE KG EVS MATHS ENG Educational CD ROMS","totalPrice":547,"itemPrice":547,"itemCount":1}]
Hier die TotalAmount ist 1546. Hier habe ich die InvoiceItems in der Konsole ausgegeben haben, und ich bin die Daten immer wie oben .
invoiceItems:invoiceitems,
Wie Mittel bin immer das Problem (die für Artikelpreis, Steuern angegebenen Mengen und Versand auf die Gesamtmenge addieren sich nicht):
So, dass ich wie angegeben.
Gleiche, was ich habe den Code wie geschrieben:
invoiceItems:[{"name":"Bajaj 200 mm Ultima PT01 Personal Fan","totalPrice":999,"itemPrice":999,"itemCount":1},{"name":"Average2Excellent CBSE KG EVS MATHS ENG Educational CD ROMS","totalPrice":547,"itemPrice":547,"itemCount":1}]
es perfekt funktioniert hat.
Es funktioniert nicht dynamisch, wenn der Wert zugewiesen wird. Können Sie bitte den Code überprüfen und helfen?
EDIT:
Wenn ich versucht habe, diesen Code auf Android-Gerät laufen zu lassen, wie ich die Paypal-Button nichts happends klicken. Warum ist das Login-Formular im Android-Gerät nicht geöffnet?
Können Sie die Korrelations-ID aus der PayPal-Antwort zurückgeben? – Eshan
Ich habe die Korrelations-ID in meinem Code nirgendwo angegeben. Wo muss ich diese ID erstellen? Wenn Sie das Tutorial haben, geben Sie mir bitte das zum Lernen –