Manage your applications

These topics show you how to create and manage REST API applications:

Overview

To create and manage REST API apps:

  1. From the My Apps & Credentials page, log in with your PayPal account, and create an app for testing.
  2. Go live. Before going live, you might need to upgrade your PayPal account.

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

Your can create REST API apps that have one or more of the following 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 credential.

    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.

Provide a name for your app

To create a REST API app:

  1. Log in to the My Apps & Credentials page on the PayPal developer site.
  2. Under REST API apps, click Create App.
  3. On the Create New App page, provide an App Name.
  4. Click Create App.
  5. Review information about your app.

Review information about your app

After you provide a name for your app and click Create App, PayPal displays information about your app. You can review and modify the details before clicking Save at the bottom of the app review page.

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

  • 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. For more information about this feature, 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. For more information, see Webhooks notifications.

  • 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 application. For example, if you develop a REST application and you configure Log In with PayPal (LIPP), you must configure the return URL for the application 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 — As stated previously, 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. For more information, see Upgrade your PayPal account as necessary.

      • 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 applications 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, check the Log In with PayPal box. Then, click Advanced Options and provide information as needed. For details, see Provide information for a Log In with PayPal app. 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 the Log In with PayPal capability, click Advanced Options and provide information as needed. 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 you with 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 PayPal-specific OAuth 2.0 / Open ID Connect attributes:
    • Account status (verified): VERIFIED or UNVERIFIED. See GetVerifiedStatus API Operation for the accountStatus description.
    • Account type: Personal, Premier, or Business. See 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://.

In this section, enter the URLs for your privacy policy and user agreement. You can also add an optional 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 CheckoutSeamless 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 the credentials (client ID and secret) for your app. 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.

For additional information, see Upgrade your PayPal account as necessary.

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 as necessary

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 may need to sign up for PayPal Payments Pro (a paid subscription).

Additionally, please note that you must have a PayPal Business account to accept PayPal as a payment method.