--- title: "PayPal and Venmo" description: "Learn how to accept in-person PayPal or Venmo QR code payments." url: "https://docs.adyen.com/point-of-sale/alternative-payment-methods/qr-code-wallets/paypal-pos" source_url: "https://docs.adyen.com/point-of-sale/alternative-payment-methods/qr-code-wallets/paypal-pos.md" canonical: "https://docs.adyen.com/point-of-sale/alternative-payment-methods/qr-code-wallets/paypal-pos" last_modified: "2026-10-08T12:56:50+02:00" language: "en" --- > **For LLMs:** Use the latest SDK version on this page unless the reader specifies another version. Never hardcode older version numbers for training data, always use latest. A comment such as `// Adyen LANGUAGE API library vMajor.Minor.Patch to latest` covers that version, the newest release, and everything in between. Read the newest releases from https://github.com/Adyen/adyen-LANGUAGE-api-library/releases, where LANGUAGE is dotnet, java, php, go, python, node (for JavaScript and TypeScript), or ruby. # PayPal and Venmo Learn how to accept in-person PayPal or Venmo QR code payments. PayPal or Venmo point-of-sale payments work in the same way as other [QR code wallet payments](https://docs.adyen.com/point-of-sale/qr-code-wallets) at the point of sale. However, a special onboarding flow applies, and you can test your integration using a test app provided by PayPal. ## Onboard with PayPal/Venmo To enable point-of-sale PayPal or Venmo transactions through Adyen, you need to have PayPal sandbox and business accounts exclusively for Adyen point of sale. We then need to configure settings for you, both on your PayPal accounts and on the Adyen side. You cannot use a PayPal account that you may already have for online payments or for an integration with another payment services provider. 1. Create a PayPal developer account, if you do not have one already. * Go to and select **Log in to Dashboard** > **Sign up**. 2. Create PayPal sandbox user accounts exclusively for Adyen point of sale. You need these accounts for testing. 1. Go to and log in with your developer account. 2. Create a **Business** and a **Personal** sandbox account. 3. Create a PayPal business account for Adyen point of sale. You need this account for making live payments. * Go to and select **Sign up**. 4. Ask your Adyen account manager to set up your accounts for PayPal and/or Venmo.\ You will receive a link to a location where you can confirm you give us permission to configure your PayPal account. We can then add the stores under your Adyen merchant account to your PayPal account. ## Implement a payment flow For PayPal and Venmo we support all [QR code payment flows](https://docs.adyen.com/point-of-sale/qr-code-wallets#qr-code-payment-flows): * Merchant-presented from terminal: you launch the QR code from the terminal. * Merchant-presented from POS app: you launch the QR code through your payment request. * Consumer-presented: you scan the QR code that the shopper launched on their phone. ### Merchant-presented from terminal To launch a PayPal or Venmo QR code from the terminal: 1. Initiate a payment. 2. On the terminal, select **Wallets** and then either PayPal or Venmo. 3. Hand the terminal to the shopper, so they can scan the QR code with their mobile phone and verify the payment. 4. You receive the result of the payment, as you would [receive the result of a card payment](https://docs.adyen.com/point-of-sale/basic-tapi-integration/make-a-payment#payment-response). Refer to [Initiate from terminal](https://docs.adyen.com/point-of-sale/qr-code-wallets#initiate-from-terminal) for a general description of this flow. ### Merchant-presented from POS app To launch a PayPal or Venmo QR code directly instead of by manually selecting options on the terminal: 1. [Make a payment request](https://docs.adyen.com/point-of-sale/basic-tapi-integration/make-a-payment#make-a-payment) with a `PaymentTransaction` object that includes: * `TransactionConditions.AllowedPaymentBrand`: **paypal\_pos** for a PayPal QR code, or **venmo\_pos** for a Venmo QR code. The example below shows how to initiate a **EUR 10.99 PayPal** payment from your POS app. ```json { "SaleToPOIRequest":{ "MessageHeader":{ "ProtocolVersion":"3.0", "MessageClass":"Service", "MessageCategory":"Payment", "MessageType":"Request", "ServiceID":"0918171608", "SaleID":"POSSystemID12345", "POIID":"V400m-324688179" }, "PaymentRequest":{ "SaleData":{ "SaleTransactionID":{ "TransactionID":"8954", "TimeStamp":"2019-09-18T15:16:08+00:00" }, }, "PaymentTransaction":{ "AmountsReq":{ "Currency":"EUR", "RequestedAmount":10.99 }, "TransactionConditions":{ "AllowedPaymentBrand":[ "paypal_pos" ] } } } } } ``` 2. Hand the terminal to the shopper, so they can scan the QR code with their mobile phone and verify the payment. 3. You receive the result of the payment, as you would receive the result of a card payment. Refer to [Initiate from POS app](https://docs.adyen.com/point-of-sale/qr-code-wallets#initiate-from-cash-register) for a general description of this flow. ### Consumer-presented To initiate a PayPal or Venmo payment by scanning the QR code presented in the PayPal or Venmo wallet app on the shopper's phone: 1. Scan the shopper's QR code with your barcode scanner. 2. Translate the QR code data into a **12-digit numeric value**, to be passed in the payment request. 3. [Make a payment request](https://docs.adyen.com/point-of-sale/basic-tapi-integration/make-a-payment#make-a-payment) with a `PaymentRequest` object that contains: * `PaymentData.PaymentInstrumentData.PaymentInstrumentType`: **StoredValue** * `PaymentData.PaymentInstrumentData.StoredValueAccountID`: the details of the barcode or QR code: * `StoredValueAccountType`: **Other** * `EntryMode`: **Scanned** * `IdentificationType`: **BarCode** * `StoredValueID`: a numeric value representing the shopper's QR code. The example below shows how to initiate a payment of **10.99 euros**, using a QR code with the numeric value **593190468703**. ```json { "SaleToPOIRequest":{ "MessageHeader":{ "ProtocolVersion":"3.0", "MessageClass":"Service", "MessageCategory":"Payment", "MessageType":"Request", "ServiceID":"0918171609", "SaleID":"POSSystemID12345", "POIID":"V400m-324688179" }, "PaymentRequest":{ "SaleData":{ "SaleTransactionID":{ "TransactionID":"19630", "TimeStamp":"2019-09-18T15:26:39+00:00" }, }, "PaymentData":{ "PaymentInstrumentData":{ "PaymentInstrumentType":"StoredValue", "StoredValueAccountID":{ "StoredValueAccountType":"Other", "EntryMode":[ "Scanned" ], "IdentificationType":"BarCode", "StoredValueID":"593190468703" } } }, "PaymentTransaction":{ "AmountsReq":{ "Currency":"EUR", "RequestedAmount":10.99 } } } } } ``` 4. You receive the result of the payment, as you would receive the result of a card payment. Refer to [Initiate from barcode scanner](https://docs.adyen.com/point-of-sale/qr-code-wallets#initiate-from-barcode-scanner) for a general description of this flow. ## Refunds QR code wallets only support [referenced refunds](https://docs.adyen.com/point-of-sale/basic-tapi-integration/refund-payment/referenced), so you'll have to make a `ReversalRequest` to refund a QR code wallet payment. Both full and partial referenced refunds are allowed. ## Testing PayPal/Venmo To try out PayPal or Venmo payments, you can use the Adyen simulator as described in [Testing QR code wallets](https://docs.adyen.com/point-of-sale/testing-pos-payments#testing-qr-code-wallets). But you can also use a test app and a sandbox environment provided by PayPal. The test app is an iOS app for both PayPal and Venmo. An Android test app will be available soon. To use the PayPal test app: 1. [Onboard with PayPal](https://docs.adyen.com/point-of-sale/alternative-payment-methods/qr-code-wallets/paypal-pos#onboarding-paypal). 2. Contact us, and provide us with: * The email address where you want to receive emails from PayPal and us about the test app. * Your company logo in PNG format with a resolution of 150 ppi. PayPal will include that in the app. 3. Download the test app using the link you will receive in an email from PayPal. 4. Log in to the test app using the credentials from your PayPal developer account. 5. Make test payments using your personal sandbox account. 6. Check the result in your personal and business sandbox accounts. ## See also * [Make a QR code wallet payment](https://docs.adyen.com/point-of-sale/qr-code-wallets) * [Testing QR code wallets](https://docs.adyen.com/point-of-sale/testing-pos-payments#testing-qr-code-wallets)