PayPal MPL library

luke2012

Well-Known Member
Licensed User
Longtime User
Ok. But in this case the email is hardcoded for test purpose.
In a production environment I don't know the customer email address programmatically and I suppose that the customer email will be input from the paypal login screen.
Correct?
 

JOTHA

Well-Known Member
Licensed User
Longtime User
Got it...but no PopUp appears for logging in.
I added also the part in the manifest editor:
B4X:
'This code will be applied to the manifest file during compilation.
'You do not need to modify it in most cases.
'See this link for for more information: http://www.b4x.com/forum/showthread.php?p=78136
AddManifestText(
<uses-sdk android:minSdkVersion="4" android:targetSdkVersion="17"/>
<activity android:name="com.paypal.android.MEP.PayPalActivity"
  android:theme="@android:style/Theme.Translucent.NoTitleBar"
  android:configChanges="keyboardHidden|orientation"/>
<supports-screens android:largeScreens="true"
    android:normalScreens="true"
    android:smallScreens="true"
    android:anyDensity="true"/>)
SetApplicationAttribute(android:icon, "@drawable/icon")
SetApplicationAttribute(android:label, "$LABEL$")
'End of default text.

Nor with the Sandbox neither with the live-id.
The button appears after a second or so, but pressing it gives no result.
Your manifest editor should look like this:
B4X:
'This code will be applied to the manifest file during compilation.
'You do not need to modify it in most cases.
'See this link for for more information: http://www.b4x.com/forum/showthread.php?p=78136
AddManifestText(
<uses-sdk android:minSdkVersion="4" android:targetSdkVersion="14"/>
<supports-screens android:largeScreens="true"
    android:normalScreens="true"
    android:smallScreens="true"
    android:anyDensity="true"/>)
SetApplicationAttribute(android:icon, "@drawable/icon")
SetApplicationAttribute(android:label, "$LABEL$")
AddApplicationText(
<activity android:name="com.paypal.android.MEP.PayPalActivity"
  android:theme="@android:style/Theme.Translucent.NoTitleBar"
  android:configChanges="keyboardHidden|orientation"/>)
'End of default text.

It works ...
 

JOTHA

Well-Known Member
Licensed User
Longtime User
Hello Erel,

you did again a great job with that library. Thanks a lot!

But I have just one question: The dialogs in the sandbox-mode all comming in English language.
If I will change from sandbox-mode to production-mode, do they come f.e. in German?

You told:
In v1.0 you cannot change the language. However such a feature can be added in a simple update
Is there an update?
 

JOTHA

Well-Known Member
Licensed User
Longtime User
You can explicitly set it with this code (put it inside the ready event):
B4X:
Dim jo As JavaObject
jo.InitializeStatic("com.paypal.android.MEP.PayPal").RunMethodJO("getInstance", null).RunMethod("setLanguage", Array As Object("de_DE"))
Thank you very much, Erel!
It works ... :)
 

JOTHA

Well-Known Member
Licensed User
Longtime User
Hello Erel and luke2012,
@Erel what I have to write insted of example-facilitator@domain.com ?
Erel answered:
This is the customer email address it can also be the customer phone number.
... but sorry ... there is a misunderstanding: This is NOT the customer-email-adress, it is the email-adress of "your company" in the test area of paypal sandbox.

To this email-adress where sent the notifications, when you test the app in sandbox-mode.
You can see them on this paypal-page https://developer.paypal.com/webapps/developer/dashboard/email
(first you have to login to your paypal-account).

So my problem is now, that the sandbox-mode is working, but how to code it to the "real-mode"?
PayPalX.Initialize("APP-80W284485P519543T", True, "PayPal") '-- Testkonto --
... this -- Testkonto -- above works ... but this -- LIVE-KONTO -- ...
'PayPalX.Initialize("AReJj............", False, "PayPal") '-- LIVE-KONTO !!! --
... is not working! I changed the static "APP-80W284485P519543T" into the real App-ID (which I've got from PayPal) and the "True" for using sandbox-mode into "False" for using real-mode. Experiment is not working.

In the next step I changed the line with the "request" from sandbox-mode ...
PayPalX.RequestPayment("EUR", 2, "Test-facilitator@gmail.com", "JOTHA", PayPalX.PAYMENT_TYPE_SERVICE) '-- Testkonto --
into real mode:
PayPalX.RequestPayment("EUR", 2, "My_real_email_adress@gmail.com", "JOTHA", PayPalX.PAYMENT_TYPE_SERVICE) '-- LIVE-KONTO !!! --
Experiment is not working.

On the PayPal-website "https://developer.paypal.com/docs/classic/lifecycle/goingLive/" is a description, how to go live. There are 6 steps:
To take your application live:
  1. Ensure your application adheres to the PayPal Application Policies and Guidelines.
  2. Update the Sandbox API credentials in your PayPal calls to those assigned to a live PayPal account.
  3. Update your PayPal endpoints from the Sandbox to the PayPal production servers.
  4. Register your application with PayPal.
  5. If your application makes use of Adaptive operations, obtain a live AppID.
  6. Go Live !
Are these steps in the library included?
Why does my LIVE-code don't work?
 

JOTHA

Well-Known Member
Licensed User
Longtime User
I dont get an error message.

In the case of "sandbox-mode" the sandbox is shown with the PayPal-login.
In the case of "real-mode" nothing is shown and there is no error message.
 

JOTHA

Well-Known Member
Licensed User
Longtime User
OK Erel, thank you!
Is there anyone who has tested in "real-mode"?

In the case of "sandbox-mode" everything works and there is a dialog with the sandbox on the PayPal-Website. I receive E-Mail notifications via the test-accounts.

I trust in you Erel ... so I have to check if there is any mistake with the App-ID or anything else ... so it would be helpful to know if there is anywhere a real working app.

I will report, if I have a solution.
:confused:
 

JOTHA

Well-Known Member
Licensed User
Longtime User
I tried again, but no solution.

There are 2 IDs at PayPal in the "Live credentials":
a) Client ID
b) Secret

Does anybody know what is equal to the "AppID"?
I mean what to replace instead the "AppID" = a) or b) ???
 
Top