Manage your applications

Learn how to create and manage REST API apps.

Overview

You can create REST API apps that have one or more of these capabilities:

Accept Payments Accept PayPal and enable direct credit card processing.
Invoicing Issue invoices, manage partial balances due and enable custom net payment terms.
Payouts Send batch payments to multiple PayPal accounts at once.
PayPal Here Process swipe/card-present card transactions.
Log In with PayPal
(formerly PayPal Access)
Enable users to log in to your app with their PayPal login credentials.
If you have a Log In with PayPal app that was created at http://devportal.x.com, the API credentials have not changed. You can click the app name on the My Apps & Credentials page to view or edit the app details, including the authorization protocol.

Note: You can create an app that can take advantage of the Log In with PayPal feature as long as you have a PayPal account in your country. However, accepting payments with live REST API credentials is restricted in some countries. If you are a non-U.S. developer, see the FAQs.

Create an app for testing

  1. From the My Apps & Credentials page, log in with your PayPal account.
  2. Under REST API apps, click Create App.
  3. Enter an App Name and click Create App. PayPal displays information about your app. You can review and modify the app details.

    Note: In the top right-hand corner, you can toggle between sandbox and live app information.

  4. Click Save.
  5. Go live. Before going live, you might need to upgrade your PayPal account.

Review information about your app

API credentials The sandbox or live account client ID and secret used to make API calls. You can use your sandbox credentials to begin testing. To use your live credentials, you might need to upgrade your PayPal account. Keep your app credentials private to protect you and your customers.
Note: To rotate your app secret, click Show and then click Generate New Secret. After a new app secret is generated, you can disable the old secret and enable the new one. Do not disable your app secret if live API calls still use it. See the Credential Rotation blog post.
Webhooks Your sandbox or live webhooks events. These notifications are sent to your server when specific events are triggered, such as when a payment status changes to pending.
App settings

The sandbox or live app details provide an option to set one or more return URLs.

A return URL is your website page to which you redirect buyers from the PayPal website. The test return URL can be different from the live return URL.

You must specify all return URLs for an application in the Developer dashboard before you can use that return URL in an app. For example, if you develop a REST app and you configure Log In with PayPal (LIPP), you must configure the return URL for the app in the Developer dashboard for it to work in you LIPP configuration.

  • App feature options. By default, some of these options are enabled. To disable an option, clear the adjacent box:
    Note: In the top right-hand corner, toggle between sandbox and live app information to set these options for both your sandbox and live app.
    • Accept payments. Live usage is limited to certain countries. To enable the future payments and billing agreements subscription options, click Advanced Options. For a live app to accept PayPal payments, you must have a PayPal business account.
    • Invoicing. Enabled by default. Use invoicing to issue invoices and use other invoicing features.
    • Payouts. Enabled by default. Use payouts to send batch payments to multiple PayPal recipients.
    • PayPal Here. Enable PayPal Here for swipe / card present apps using the PayPal card reader. If you want to further customize the card present experience, use the PayPal Here SDKs to develop a custom PayPal Here app.
    • Log In with PayPal. To enable your users to log in with PayPal, select Log In with PayPal. Then, click Advanced Options and provide information as needed. Log In with PayPal is not currently available for Mobile SDK apps.

Provide information for a Log In with PayPal app

If your app will support Log In with PayPal buttons, click Advanced Options and provide the required information. Set the following options for both your sandbox and live app by using the toggle in the top right-hand corner of the page.

Note: All new apps use the Open ID Connect (OAuth) protocol.

Information requested from customers

Select the PayPal user information details that you would like the user to share with you.

Note: After a user logs in to your app and consents to share data, Open ID attribute data is provided to your app. The following app details include a level of attribute data that customers can consent to share with your app. If necessary, you can customize that level.

Basic authentication Enabled by default. Provides a unique identifier for each customer.
Personal information Collects name and age-related details. To select only the information that you require, click customize.
Address information Collects email, mailing address, and phone information. To select only the information that you require, click customize.
Account information Collects account and locale details. The following attributes are specific to PayPal OAuth 2.0 / Open ID Connect:
  • Account status (verified). VERIFIED or UNVERIFIED. See the GetVerifiedStatus API operation for the accountStatus description.
  • Account type. Personal, Premier, or Business. See the CreateAccount API operation for the accountType description.
  • Account creation date. The date when the user's PayPal account was created.

Note: If your app requires advanced attributes for OAuth 2.0 or OpenID Connect, make sure your Domain URL uses https://.

Enter the URLs for your privacy policy and user agreement. You can optionally add a customer support email address.

Additionally, you can preview the customer consent page, which is the page the PayPal user sees before consenting to share information with your app.

Additional PayPal permissions

Use Seamless Checkout Seamless checkout lets you use Log In with PayPal with Express Checkout, giving your users the option to log in once to your site instead of logging in again at checkout if checkout is within one hour of log in.
Allow customers who have yet to confirm their email address with PayPal to log in to your app By default, PayPal requires users to first confirm their account.

Review details and credentials

After you create the app, or when you navigate to the My Apps & Credentials page and click the app name, you can review the app details, including your app's client ID and secret credentials. You can also edit the app from this view.

If you are going live, select My Account to confirm that your desired features are enabled for your PayPal account. Alternatively, go directly to the My Account page.

See Upgrade your PayPal account.

Tip: To review the call histories for all your PayPal apps, use the Sandbox Transactions and Live Transactions dashboards, which provide the histories of API calls made by apps in each environment. The dashboards display details such as the date of the transaction, type of transaction, status, amount, as well as the details of the API call, such as the request and response messages. The dashboards enable you to view the call history for all apps or a specific app.

Upgrade your PayPal account

Before attempting to use a live app to directly accept credit cards, go to the My Account page. To use a live app to directly accept credit cards, you might need to sign up for PayPal Payments Pro, which is a paid subscription.

Note: You must have a PayPal Business account to accept PayPal as a payment method.

Additional information

Overviews

API operations

Dashboards