How to get PayPal REST API credentials and Braintree keys for Zendesk

By Jake Marsh · Updated

To connect PayPal to Zendesk, sign in to developer.paypal.com with your business account, open Apps & Credentials, choose Live, click Create App and name it "Zendesk". Keep the payments feature, turn on Transaction search, Customer disputes and Subscriptions, leave Payouts off, and copy the client id and secret into Pursewell's settings. For Braintree, generate an API key as a non-admin user and paste the public key, private key and merchant id.

Steps: PayPal

  1. Sign in to developer.paypal.com with your PayPal business account and open Apps & Credentials.
  2. Choose Live, or Sandbox to test, and click Create App. Name it "Zendesk" and keep it for Pursewell only.
  3. Set the features. Keep the payments feature. Turn on Transaction search (needed to find payments), Customer disputes and Subscriptions if you use them.
  4. Leave these off: Payouts, Invoicing and Log in with PayPal. Pursewell refuses an app that can send payouts or credits to new recipients.
  5. Copy the client id and secret into Pursewell's settings. Turn on PayPal sandbox only for sandbox credentials.

PayPal's REST API authentication guide explains client ids and secrets.

Steps: Braintree

  1. Add a user. In the Braintree Control Panel, open Settings > Team and add a user for Zendesk.
  2. Give it a custom role that can view transactions and disputes, refund and void transactions, and view and manage subscriptions.
  3. Sign in as that user, open Settings > API and generate a new API key.
  4. Copy the public key, private key and merchant id into Pursewell's settings. Turn on Braintree sandbox only for sandbox keys.

Pursewell refuses the keys of a Braintree account admin.

Which PayPal features turn on what

PayPal app featureWhat Pursewell shows or does
Payments (keep on)Refunds
Transaction searchFinds the requester's payments by email
Customer disputesDisputes with their respond-by date
SubscriptionsSubscriptions, cancel, suspend, reactivate, charge a past-due balance
PayoutsMust be off, or Pursewell refuses the app

How the keys are kept

Your PayPal secret and Braintree private key are Zendesk secure settings: Zendesk adds them to requests on its own servers and only sends them to PayPal's and Braintree's API hosts. PayPal's sign-in returns a token that lasts up to 9 hours. It stays in the browser memory of each agent allowed to see payments while Pursewell is open, and Pursewell checks every token's permissions and refuses one that can send payouts or credits.

Errors and fixes

MessageFix
Pursewell will not use this PayPal appThe app has Payouts or non-referenced credit. Create a separate PayPal app for Zendesk.
PayPal did not accept the client id and secretCheck the sandbox switch matches the credentials, or paste a regenerated secret.
Transaction search is off for this PayPal appTurn on Transaction search under the app's Features.
Pursewell will not use API keys of a Braintree account adminUse keys from a non-admin Braintree user.
The Braintree user behind these API keys is not allowed to do thatAdd the permission to that user's role in Braintree.

What it costs

Pursewell is $49 a month for up to 3 agents and admins, $169 a month for 4 to 11, or $25 per agent per month for 12 or more, billed monthly by Zendesk with a 14-day free trial. The Pursewell documentation has every setting.

Pursewell

PayPal and Braintree sidebar: payments on the ticket, refunds, dispute deadlines, subscriptions. From $49 a month per Zendesk account.


Questions

Where do I find my PayPal API credentials?

At developer.paypal.com, under Apps & Credentials. Open the app you created for Zendesk to see its client id and secret.

Can I use the PayPal app my website checkout uses?

Use a separate app for Zendesk with only the features above. Pursewell refuses any app that can send payouts.

Do I need both PayPal and Braintree?

No. Set up PayPal, Braintree or both.

Can I test with sandbox credentials first?

Yes. Turn on PayPal sandbox or Braintree sandbox and paste sandbox credentials. Switch them off when you paste live ones.


More Pursewell guides


More Zendesk guides