---
title: "PayMe Drop-in integration"
description: "Add PayMe to an existing Drop-in integration."
url: "https://docs.adyen.com/payment-methods/payme/web-drop-in"
source_url: "https://docs.adyen.com/payment-methods/payme/web-drop-in.md"
canonical: "https://docs.adyen.com/payment-methods/payme/web-drop-in"
last_modified: "2026-06-01T15:33:15+02:00"
language: "en"
---

# PayMe Drop-in integration

Add PayMe to an existing Drop-in integration.

[View source](/payment-methods/payme/web-drop-in.md)

This page explains how to add PayMe to your existing Web Drop-in integration.

Our [Web Drop-in](/online-payments/build-your-integration/sessions-flow/?platform=Web\&integration=Drop-in) renders PayMe in your payment form.

Depending on whether your shopper is using a desktop or laptop, or the browser on their mobile device, Drop-in:

* Shows the shopper a QR code which they can scan to pay using their PayMe app.
* Redirects the shopper to the PayMe app on their mobile device.

Implement both flows to make sure that your shoppers can pay on different devices.

PayMe is supported from Web Drop-in version 5.56.0.

## Requirements

Select the [server-side flow](/online-payments/build-your-integration) that your integration uses:

### Tab: Sessions flow

| Requirement          | Description                                                                                                                                                       |
| -------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| **Integration type** | Make sure that you have built a Sessions flow [Web Drop-in integration](/online-payments/build-your-integration/sessions-flow?platform=Web\&integration=Drop-in). |
| **Setup steps**      | Before you begin, [add PayMe in your Customer Area](/payment-methods/add-payment-methods).                                                                        |

### Tab: Advanced flow

| Requirement          | Description                                                                                                                                                        |
| -------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| **Integration type** | Make sure that you have built an Advanced flow [Web Drop-in integration](/online-payments/build-your-integration/advanced-flow?platform=Web\&integration=Drop-in). |
| **Setup steps**      | Before you begin, [add PayMe in your Customer Area](/payment-methods/add-payment-methods).                                                                         |

## Import resources for v6

If you are using Web Drop-in v6, import the resources you need for PayMe:

```js
import { AdyenCheckout, PayMe} from '@adyen/adyen-web'
```

## API reference

Select which endpoint you are using:

### Tab: `/sessions`

This is the default with [Drop-in v5.0.0](/online-payments/build-your-integration/sessions-flow?platform=Web\&integration=Drop-in) or later.

| Parameter name                                                                                                                           | Required | Description                                                                                             |
| ---------------------------------------------------------------------------------------------------------------------------------------- | -------- | ------------------------------------------------------------------------------------------------------- |
| [`channel`](https://docs.adyen.com/api-explorer/Checkout/71/post/sessions#request-channel)                                               |          | To determine whether the shopper is using a desktop, laptop or mobile.                                  |
| [`lineItems.quantity`](https://docs.adyen.com/api-explorer/Checkout/latest/post/sessions#request-lineItems-quantity)                     |          | The number of items. Must be between 0 and 9999.                                                        |
| [`lineItems.sku`](https://docs.adyen.com/api-explorer/Checkout/latest/post/sessions#request-lineItems-sku)                               |          | The stock keeping unit. Maximum length 200 characters. Available if you use Checkout API v70 and later. |
| [`lineItems.description`](https://docs.adyen.com/api-explorer/Checkout/latest/post/sessions#request-lineItems-description)               |          | The order description to display to the shopper. Maximum length 200 characters.                         |
| [`lineItems.amountIncludingTax`](https://docs.adyen.com/api-explorer/Checkout/latest/post/sessions#request-lineItems-amountIncludingTax) |          | Item amount including the tax, in minor units. Must be between 1 and 100000000.                         |
| [`lineItems.itemCategory`](https://docs.adyen.com/api-explorer/Checkout/latest/post/sessions#request-lineItems-itemCategory)             |          | The item category. Maximum length 200 characters.                                                       |

### Tab: `/payments`

If you implemented an [additional use case](/online-payments/build-your-integration).

| Parameter name                                                                                                                           | Required | Description                                                                                             |
| ---------------------------------------------------------------------------------------------------------------------------------------- | -------- | ------------------------------------------------------------------------------------------------------- |
| [`channel`](https://docs.adyen.com/api-explorer/Checkout/latest/post/payments#request-channel)                                           |          | To determine whether the shopper is using a desktop, laptop or mobile.                                  |
| [`lineItems.quantity`](https://docs.adyen.com/api-explorer/Checkout/latest/post/payments#request-lineItems-quantity)                     |          | The number of items. Must be between 0 and 9999.                                                        |
| [`lineItems.sku`](https://docs.adyen.com/api-explorer/Checkout/latest/post/payments#request-lineItems-sku)                               |          | The stock keeping unit. Maximum length 200 characters. Available if you use Checkout API v70 and later. |
| [`lineItems.description`](https://docs.adyen.com/api-explorer/Checkout/latest/post/payments#request-lineItems-description)               |          | The order description to display to the shopper. Maximum length 200 characters.                         |
| [`lineItems.amountIncludingTax`](https://docs.adyen.com/api-explorer/Checkout/latest/post/payments#request-lineItems-amountIncludingTax) |          | Item amount including the tax, in minor units. Must be between 1 and 100000000.                         |
| [`lineItems.itemCategory`](https://docs.adyen.com/api-explorer/Checkout/latest/post/payments#request-lineItems-itemCategory)             |          | The item category. Maximum length 200 characters.                                                       |

### Tab: Desktop flow

#### curl

```bash
curl https://checkout-test.adyen.com/v72/payments \
-H 'x-api-key: ADYEN_API_KEY' \
-H 'content-type: application/json' \
-d '{
    "paymentMethod": {
      "type": "payme"
    },
    "amount": {
      "currency": "HKD",
      "value": 4200
    },
    "countryCode": "HK",
    "merchantAccount": "ADYEN_MERCHANT_ACCOUNT",
    "reference": "YOUR_ORDER_REFERENCE",
    "returnUrl": "https://your-company.example.com/...",
    "channel":"Web",
    "lineItems": [
      {
        "quantity": "1",
        "sku": "3232",
        "description": "Shoes",
        "amountIncludingTax": 4200,
        "itemCategory": "Fashion"
      }
    ]
}'
```

#### NodeJS (JavaScript)

```js
// Set your X-API-KEY with the API key from the Customer Area.
const {Client, Config, CheckoutAPI} = require('@adyen/api-library');
const config = new Config();
// Set your X-API-KEY with the API key from the Customer Area.
config.apiKey = '[API_KEY]';
config.merchantAccount = '[MERCHANT_ACCOUNT]';
const client = new Client({ config });
client.setEnvironment("TEST");
const checkout = new CheckoutAPI(client);
checkout.payments({
    "paymentMethod": {
      "type": "payme"
    },
    "amount": {
      "currency": "HKD",
      "value": 4200
    },
    "countryCode": "HK",
    "merchantAccount": "YOUR_MERCHANT_ACCOUNT",
    "reference": "YOUR_ORDER_REFERENCE",
    "returnUrl": "https://your-company.example.com/...",
    "channel":"Web",
    "lineItems": [
      {
        "quantity": "1",
        "sku": "3232",
        "description": "Shoes",
        "amountIncludingTax": 4200,
        "itemCategory": "Fashion"
      }
    ]
  })
```

### Tab: Mobile flow

#### curl

```bash
curl https://checkout-test.adyen.com/v72/payments \
-H 'x-api-key: ADYEN_API_KEY' \
-H 'content-type: application/json' \
-d '{
    "paymentMethod": {
      "type": "payme"
    },
    "amount": {
      "currency": "HKD",
      "value": 4200
    },
    "countryCode": "HK",
    "merchantAccount": "ADYEN_MERCHANT_ACCOUNT",
    "reference": "YOUR_ORDER_REFERENCE",
    "returnUrl": "https://your-company.example.com/...",
    "channel":"Web",
    "lineItems": [
      {
        "quantity": "1",
        "sku": "3232",
        "description": "Shoes",
        "amountIncludingTax": 4200,
        "itemCategory": "Fashion"
      }
    ]
}'
```

#### NodeJS (JavaScript)

```js
// Set your X-API-KEY with the API key from the Customer Area.
const {Client, Config, CheckoutAPI} = require('@adyen/api-library');
const config = new Config();
// Set your X-API-KEY with the API key from the Customer Area.
config.apiKey = '[API_KEY]';
config.merchantAccount = '[MERCHANT_ACCOUNT]';
const client = new Client({ config });
client.setEnvironment("TEST");
const checkout = new CheckoutAPI(client);
checkout.payments({
    "paymentMethod": {
      "type": "payme"
    },
    "amount": {
      "currency": "HKD",
      "value": 4200
    },
    "countryCode": "HK",
    "merchantAccount": "YOUR_MERCHANT_ACCOUNT",
    "reference": "YOUR_ORDER_REFERENCE",
    "returnUrl": "https://your-company.example.com/...",
    "channel":"Web/iOS/Android",
    "lineItems": [
      {
        "quantity": "1",
        "sku": "3232",
        "description": "Shoes",
        "amountIncludingTax": 4200,
        "itemCategory": "Fashion"
      }
    ]
  })
```

See the [Web Drop-in integration guide](/online-payments/build-your-integration/sessions-flow?platform=Web\&integration=Drop-in) to get the payment outcome and show your shopper the result of the payment.

## Drop-in configuration

There are no configuration steps specific to PayMe required for Drop-in.

## Test and go live

Use the PayMe sandbox to test your integration. You do not need to use the PayMe app to test using the sandbox.

Use the amounts specified below to simulate different payment outcomes.

| Amount ending in | Result         | Description                                                                   |
| ---------------- | -------------- | ----------------------------------------------------------------------------- |
| 30 or 81         | Authorised     | Successful payment.                                                           |
| 77 or 90         | OfferCancelled | The payment request expired after PayMe's default expiry time of ten minutes. |
| 40 or 44         | Error          | There was an error when creating the payment request.                         |
