Skip to main content
The payment/paypalonboarding endpoint provides a REST interface for managing PayPal onboarding processes in the shop system. It supports creating, retrieving, updating and deleting onboarding entries, generating the PayPal action URL required for the flow, and processing the PayPal return (return URL).

Supported methods

List of all supported methods.
Command/InfoEndpointsGETPOSTPUTDELETE
PayPal onboardingpayment/ paypalonboarding

PayPal onboarding process

Data fields of an entry

NameTypeUsage
idStringTracking ID of the onboarding process; generated from <unixTimestamp>_<shopId>_<sequentialId> and serves as the primary key.
shopStringShop identifier to which the entry is assigned.
statusIntegerCurrent onboarding status, derived from email confirmation, payment capability and response validity, among other things. Possible values: - 0 = Unknown (not determined) - 1 = NoConnection (no valid PayPal response/connection) - 2 = Success (prerequisites met) - 3 = EmailNotConfirmed (email not confirmed) - 4 = PaymentNotReceivable (account cannot (yet) receive payments) - 5 = InvalidResponse (incomplete/unexpected response)
merchantIdStringMerchant ID at PayPal (merchantIdInPayPal); uniquely identifies the PayPal account.
emailStringPrimary PayPal email of the merchant account (primary_email).
permissionsGrantedBooleanIndicates whether the required OAuth permissions/scopes were granted (return param permissionGranted or from PayPal status).
emailConfirmedBooleanIndicates whether the primary email is confirmed at PayPal (primary_email_confirmed).
consentStatusBooleanIndicates whether legal consents have been granted (return param consentStatus).
accountTypeStringAccount state reported by the PayPal return.
updatedAtStringTime of the last update of the entry (ISO 8601 format, UTC).
createdAtStringTime of creation (ISO 8601 format, UTC).
deletedAtStringTime of deletion (ISO 8601 format, UTC); empty if the entry is active.
rawResponseStringComplete, unfiltered response of the PayPal Account Status API (as JSON string) for tracking/debugging.
activePaymentsStringEnabled payment methods.
modeIntegerOperating mode of the entry (determined from the configuration): Production or Test. Possible values: - 0 = Unknown - 1 = Production - 2 = Test

Example

{
    "accountType": "",
    "activePayments": "",
    "consentStatus": false,
    "createdAt": "2025-09-15T09:42:35Z",
    "deletedAt": "",
    "email": "",
    "emailConfirmed": false,
    "id": "1757929355_myshop_8",
    "merchantId": "",
    "mode": 2,
    "permissionsGranted": false,
    "rawResponse": "",
    "shop": "myshop",
    "status": 1,
    "updatedAt": "2025-09-15T09:42:35Z"
}

Methods for PayPal onboarding

This section describes the endpoints for managing individual PayPal onboarding entries.

GET payment/paypalonboarding

This endpoint can be used to load a list of existing onboarding entries for the current shop. Search and filter parameters from the request are taken into account and limited to deleted=false. If the request contains the indication of a PayPal return (PPact=finish), the return data is processed first. To use it, read permissions for PayPal onboarding data are required.

Example

https://www.<your-shop>.de/admin/api/v1/payment/paypalonboarding?size=100

Response

{
    "endReached": true,
    "items": [
        {
            "accountType": "",
            "activePayments": "",
            "consentStatus": false,
            "createdAt": "2025-09-12T06:54:33Z",
            "deletedAt": "",
            "email": "",
            "emailConfirmed": false,
            "id": "1757660073_myshop_1",
            "merchantId": "",
            "mode": 2,
            "permissionsGranted": false,
            "rawResponse": "",
            "shop": "myshop",
            "status": 1,
            "updatedAt": "2025-09-12T06:54:33Z"
        },
        {
            "accountType": "",
            "activePayments": "",
            "consentStatus": false,
            "createdAt": "2025-09-15T08:43:26Z",
            "deletedAt": "",
            "email": "",
            "emailConfirmed": false,
            "id": "1757925806_myshop_2",
            "merchantId": "",
            "mode": 2,
            "permissionsGranted": false,
            "rawResponse": "",
            "shop": "myshop",
            "status": 1,
            "updatedAt": "2025-09-15T08:43:26Z"
        }
    ],
    "nextPageToken": "MQ",
    "totalCount": 2
}

Filter fields

id, updatedAt, status, emailConfirmed, permissionsGranted, mode, deleted

Sort fields

updatedAt, createdAt, id, shop, merchantId, accountType, status, mode, emailConfirmed, email, consentStatus, permissionsGranted

Error codes

ErrorTypeReason
401 UnauthorizedNot authorized: you are not logged in or you do not have the required permissions to read PayPal onboarding data.
400 Bad Request”invalidValue”size ∉ [1;300] pageToken is not a number or is less than 0. The sort direction in sort is neither “asc” nor “desc”.
400 Bad Request”unknownDataField”A filter or sort field is invalid.
400 Bad Request”unknownOperation”A filter type is invalid.
400 Bad Request”invalidCharacters”size is not an integer. A filter value is invalid.
400 Bad Request”syntaxError”sort contains more than one or no ”:“.
503 Service Unavailable”internalError”Reading data failed.

GET payment/paypalonboarding/{id}

This endpoint can be used to retrieve a single onboarding entry by its ID for the current shop. To use this endpoint, read permissions for PayPal onboarding data are required.

Example

https://www.<your-shop>.de/admin/api/v1/payment/paypalonboarding/1757660073_myshop_1

Response

{
    "accountType": "",
    "activePayments": "",
    "consentStatus": false,
    "createdAt": "2025-09-12T06:54:33Z",
    "deletedAt": "",
    "email": "",
    "emailConfirmed": false,
    "id": "1757660073_myshop_1",
    "merchantId": "",
    "mode": 2,
    "permissionsGranted": false,
    "rawResponse": "",
    "shop": "myshop",
    "status": 1,
    "updatedAt": "2025-09-12T06:54:33Z"
}

Error codes

ErrorTypeReason
401 UnauthorizedNot authorized: you are not logged in or you do not have the required permissions to read PayPal onboarding data.
404 Not FoundThe data was not found.

GET payment/paypalonboarding/{id}/url

This endpoint can be used to directly request the current PayPal action URL for a tracking ID. The URL is intended to start the PayPal onboarding flow and contains the configured return URL of the shop. To use this endpoint, write permissions for PayPal onboarding data are required.

Example

https://www.<your-shop>.de/admin/api/v1/payment/paypalonboarding/1757925806_myshop_2/url

Response

{
    "action_url": "https://www.sandbox.paypal.com/bizsignup/partner/entry?referralToken=NjlhMjM3ODctMDZjMy00MjZkLWJjMGQtMTU1YzdiZjRiMjQwMm5xRk9weFNtYjNDRmpYb2g3b25RdzVqeWtacEVCSnVTZzRaL3NsMkdXRT12Mg=="
}

Error codes

ErrorTypeReason
401 UnauthorizedNot authorized: you are not logged in or you do not have the required permissions to write PayPal onboarding data.
404 Not FoundThe URL could not be generated. Details can be found in the logs.

POST payment/paypalonboarding

This endpoint can be used to create a new onboarding entry. The tracking ID is built from a timestamp, shop ID and a sequential number; the operating mode (Production/Test) is determined from the configuration. The generated { "trackingId": "…" } is returned as the result. To use this endpoint, create permissions for PayPal onboarding data are required.

Example

https://www.<your-shop>.de/admin/api/v1/payment/paypalonboarding

Request body

{}

Response

{
    "trackingId": "1757929355_myshop_8"
}

Error codes

ErrorTypeReason
401 UnauthorizedNot authorized: you are not logged in or you do not have the required permissions to create PayPal onboarding data.
400 Bad RequestRequest body could not be loaded. No mode was specified in the setupConfig. Possible values: "production", "test". Creating data failed.
404 Not FoundThe data could not be loaded after creation.

PUT payment/paypalonboarding/{id}

This endpoint can be used to update an onboarding entry or — if no merchant ID is yet available — to query the PayPal action URL for starting the onboarding. Without merchantIdInPayPal, the endpoint returns the action URL ({ "acturl": "…" }). With merchantIdInPayPal, the account/integration status is queried at PayPal, relevant fields (e.g. email confirmation, payment capability, scopes) are taken over and a corresponding internal status is set; the result is the updated entry as JSON. To use this endpoint, write permissions for PayPal onboarding data are required.

Query parameters

merchantIdInPayPal – (optional) PayPal merchant ID. If specified, the account status is queried at PayPal and the entry is updated. If not specified, the action URL is returned instead.

Example

https://www.<your-shop>.de/admin/api/v1/payment/paypalonboarding/1757927249_myshop_6

Response when no merchantIdInPayPal was provided

{
    "acturl": "https://www.sandbox.paypal.com/bizsignup/partner/entry?referralToken=YjY3Nzk2ODQtYTQwOS00MjhiLWFhYWUtMzc1YjcyOTMwZmViVkN0MXA2RlFxTDhZTnRxWGxnL0s4Mmpick5udERFUmNFZ3NJZVlmNDZpUT12Mg=="
}

Response when a merchantIdInPayPal was provided

{
    "accountType": "BUSINESS",
    "activePayments": "",
    "consentStatus": true,
    "createdAt": "2025-09-15T09:07:29Z",
    "deletedAt": "",
    "email": "merchant@example.com",
    "emailConfirmed": true,
    "id": "1757927249_myshop_6",
    "merchantId": "ABCDEF123456",
    "mode": 2,
    "permissionsGranted": true,
    "rawResponse": "{...}",
    "shop": "myshop",
    "status": 2,
    "updatedAt": "2025-09-15T10:15:00Z"
}

Error codes

ErrorTypeReason
401 UnauthorizedNot authorized: you are not logged in or you do not have the required permissions to write PayPal onboarding data.
400 Bad RequestUpdating data failed.
404 Not FoundThe action URL could not be determined or PayPal did not return any account data.

PUT payment/paypalonboarding/{id}/checkstatus

This endpoint receives return data from PayPal (return URL), logs it and assigns it to the corresponding onboarding entry. The provided query parameters are stored; the valid account status is then queried via the PayPal API, persisted in the entry, and the updated entry is returned as JSON. To use this endpoint, write permissions for PayPal onboarding data are required.

Query parameters

commonid – shop ID
merchantId – tracking ID of the entry
merchantIdInPayPal – PayPal merchant ID
accountStatus – account status
consentStatus – consent status (“true”/“false”)
isEmailConfirmed – email confirmed (“true”/“false”)
permissionGranted – permissions granted (“true”/“false”)

Example

https://www.<your-shop>.de/admin/api/v1/payment/paypalonboarding/1757927249_myshop_6/checkstatus?commonid=myshop&merchantId=1757927249_myshop_6&merchantIdInPayPal=ABCDEF123456&accountStatus=BUSINESS&consentStatus=true&isEmailConfirmed=true&permissionGranted=true

Response

{
    "accountType": "BUSINESS",
    "activePayments": "",
    "consentStatus": true,
    "createdAt": "",
    "deletedAt": "",
    "email": "",
    "emailConfirmed": false,
    "id": "1757927249_myshop_6",
    "merchantId": "ABCDEF123456",
    "mode": 0,
    "permissionsGranted": true,
    "rawResponse": "{...}",
    "shop": "myshop",
    "status": 5,
    "updatedAt": ""
}

Error codes

ErrorTypeReason
401 UnauthorizedNot authorized: you are not logged in or you do not have the required permissions to write PayPal onboarding data.
400 Bad RequestUpdating data failed.
404 Not FoundPayPal did not return any data.

DELETE payment/paypalonboarding/{id}

This endpoint marks an existing onboarding entry as deleted by its ID (soft delete). The entry remains in the database, but is given a deletion timestamp and no longer appears in the list. The request returns the updated list in the response body. To use this endpoint, delete permissions for PayPal onboarding data are required.

Example

https://www.<your-shop>.de/admin/api/v1/payment/paypalonboarding/1757929355_myshop_8

Response

{
    "endReached": true,
    "items": [
        {
            "accountType": "",
            "activePayments": "",
            "consentStatus": false,
            "createdAt": "2025-09-12T06:54:33Z",
            "deletedAt": "",
            "email": "",
            "emailConfirmed": false,
            "id": "1757660073_myshop_1",
            "merchantId": "",
            "mode": 2,
            "permissionsGranted": false,
            "rawResponse": "",
            "shop": "myshop",
            "status": 1,
            "updatedAt": "2025-09-12T06:54:33Z"
        },
        ...
    ],
    "nextPageToken": "Ng",
    "totalCount": 7
}

Error codes

ErrorTypeReason
401 UnauthorizedNot authorized: you are not logged in or you do not have the required permissions to delete PayPal onboarding data.
404 Not FoundNo data was found.

Support

Bei technischen Fragen und Hilfestellungen ist unser Support-Team für Sie erreichbar: Zum Kundenportal Bitte senden Sie uns eine möglichst detaillierte Beschreibung sowie Screenshots, Requests/Antworten, damit wir Ihre Anfrage zeitnah und zielführend beantworten können.