Configure PayPal Plus Checkout

Warning: PayPalPlus Checkout requires the Pro version of the shop extension

PayPal Plus Account

You will need a PayPal account. Login to PayPal and open https://developer.paypal.com. Go to My Apps & Credentials in the menu and create a new app. Take note of whether you want to create a Live or a Sandbox account. After creating it, you should have the following information

  • (Sandbox) Account: This is an email address.
  • Client ID: This is a hash value that identifies the client.
  • Secret: This is also a hash value. Make sure you keep it secret!

For testing purposes you will need an extra account which you can set up under https://developer.paypal.com/developer/accounts/.

Configure callback

Create a new webhook in the App & Credentials view on developer.paypal.com. The webhook is triggered by a Payment sale completed event and will receive the callback URL from your TYPO3. Here is an example of a callback URL:

https://test9.t3co.de/checkout?tx_shop_basketorder%5Baction%5D=payPalPlusCallback&tx_shop_basketorder%5Bcontroller%5D=BasketOrder

Using human readable urls:

routeEnhancers:
  ShopCheckoutPlugin:
    type: Extbase
    limitToPages:
      - 4
    extension: Shop
    plugin: BasketOrder
    routes:
      - routePath: '/pay-pal-plus-callback'
        _controller: 'BasketOrder::payPalPlusCallback'

https://shop.typo3-demos.de/checkout/pay-pal-plus-callback

Warning:

If your environment is password protected the webhook can't be executed. Please make sure that the webhook can be accessed.

When a webhook is created the webhook ID is displayed. This ID is important for configuring checkout. (See Checkout configuration section)

Checkout configuration

  • active Activate/deactivate checkout
  • checkoutPid Enter the page Uid of the checkout page.
  • successPid Enter the page Uid of the success page. This is the page you will be redirected to after successful payment.
  • cancelPid Enter the page Uid of the cancel page. This is the page you will be redirected to if you cancel the payment process.
  • service The checkout service PHP class is assigned here. This can be modified if the process needs to be changed.
  • sandbox Activate/deactivate the sandbox.
  • payPalPlusSuccessRedirectPid Enter the page Uid of the success page to which the user will be redirected after successful PayPal authentication.
  • webhookID Enter the webhook ID of the webhook triggered by the Payment sale completed event. (See section Configure callback)
  • payPalPlusClientId Enter the client ID of the (sandbox) account created in PayPal.
  • payPalPlusSecret Enter the Secret of the (sandbox) account that was created in PayPal.

Debugging

If a callback does not work, you can activate debugging. Read how this works in the How To/Debugging section.