Skip to main content

Referral Program

The Referral Program is designed for businesses seeking to collaborate with PayU. This program is particularly relevant for various types of e-commerce platforms and web developers who are involved in integrating payment services for their clients.

If you're interested in the program and would like to gain insights into compensation, business terms, and the process of becoming a participant, feel free to get in touch with us at

partner program logo

Here, you'll discover instructions on registering a merchant in a way that allows us to identify that the referral came from you and subsequently provide compensation.


Registration link is the easiest way to register the referred merchants in the PayU system. Please be aware that at present, only merchants interested in conducting business in Poland can be registered through the provided link.

You have the option to share the link with potential merchants either through email or by embedding it on your website. This link can be utilized multiple times, and anyone who clicks on it will be directed to the PayU registration procedure. Any business that successfully completes the registration process will be marked as having been referred by you.

Sample Registration Link
Parameters that can be used in the Registration Link
nsfNoIf this value is present and set to true, the merchant will be registered without accepting online agreement in the process. This option can be used if your merchants are not subject to the standard PayU merchant agreement.
partnerIdYesYour Partner ID provided by PayU.
langNoIf not present, the default value will be used. Possible values:
  • en (English, default),
  • pl (Polish).

Terms and Conditions


Terms and Conditions of the Referral Program valid from 1st Apr 2017 are available for download.

You can find previous version of the Terms and Conditions here.

Program Branding

Graphic materials for download:



Registration via API


Merchant Registration API can be used to register merchants in the PayU system directly from your website.

The Merchant Registration API enables participants of the Referral Program (referred to as "partners") to establish merchant entities within the PayU system. This API is tailored for payment service integrators and operators of Software as a Service (SaaS) platforms.

Merchant Registration API assumes that despite automated merchant creation facilitated by the partner, PayU performs the following processes:

  1. Merchant verification through KYC (Know-Your-Customer) procedure, including AML (Anti-Money-Laundering) check.
  2. Merchant agreement conclusion, usually online via the merchant panel.
  3. Merchant activation to allow payment acceptance.

For the sake of this documentation, "merchant" means a full set of entities which designate a type of customer which creates payments and receives money from payers.

In short, these entities are:


  1. Firm - merchant's legal entity (name, address, tax id etc.).
  2. URL - address of the online shop, charity or other paid service.
  3. Shop - payment currency, balance and payout details (incl. merchant's bank account) are defined at this level.
  4. POS (point of sale) - available payment methods are configured here. Payment orders are created at this level.


To use the Registration API, you need to register as a "partner" (i.e. sign up to the PayU referral program) and obtain your client_id and client_secret to authenticate API calls.


The registration API is available on the PayU sandbox environment.

To start quickly just use these test partner credentials before you get your production ones:

Test Partner Credentials
client_id = egmcvdo5
client_secret = 9e0cad643b2d4f0bc1fe1750b9b706ec

The full process for creating a new merchant within the PayU system is illustrated below:


  1. Obtain OAuth access token to create new firm.
  2. Create new firm, receive public firmId.
  3. For enhanced security, obtain another, firm-specific OAuth access token to add further entities to the firm.
  4. Create new URL, receive public urlId.
  5. Create new shop, using the URL to denote shop's URL, receive public shopId.
  6. Create new POS for the shop, receive posId.
  7. Obtain POS config details and add them to your SaaS platform to create payment transactions on behalf of the merchant.
  8. Obtain OAuth 2 access token to retrieve payment methods with status.
  9. Retrieve payment methods with status. Initially, POS is configured with a disabled test payment method only and without payout schedule configured. Addition of other payment methods in enabled status means merchant activation in PayU.

Creating a Firm

Authencticating Request

You authenticate using the OAuth standard by obtaining a token with grant_type="client_credentials". This token is then used for subsequent communication with PayU servers.

For more information on how to authenticate with PayU servers, please refer to the Authentication section on the Authorize and Order page.

Creating Firm Request

Below are examples of requests containing the essential data needed to create Czech and Polish firm entities within the sandbox environment:

curl -X POST \
-H "Content-Type: application/json" \
-H "Authorization: Bearer d9a4536e-62ba-4f60-8017-6053211d3f47" \
-d '{
"name": "Testowa sp. z o.o.",
"type": "SO",
"taxId": "3771910486",
"taxIdType": "NIP",
"cin": "138237420",
"bankAccount": "PL92906300080597567560803897",
"partnerId": "egmcvdo5",
"businessArea": {
"origin": "PL"
"users": [
"name": "Jan",
"surname": "Nowak",
"email": "",
"phone": "123123123",
"role": "manager"
"representatives": [
"name": "Jan",
"surname": "Nowak",
"nin": "80010104578",
"countryCode": "PL"
"contactData": {
"phone": "123123123",
"email": ""
"address": {
"street": "Grunwaldzka",
"houseNo": "186",
"apartmentNo": "1",
"postalCode": "61-166",
"city": "Poznań",
"countryCode": "PL"

In response, you will receive firmId parameter. This parameter should be stored in your system and utilized to create additional entities for that specific firm.

firmId Parameter Retrieved in the Response
"firmId": "nZzFT4I5"

For details on parameters, please refer to the Create a firm section in our API Reference.

Authorizing Creation of firm Entities

To generate additional entities within a previously established firm, you must acquire a firm-specific access token. For this purpose, authenticate using the OAuth standard and obtain a token with grant_type="partner". Additionally, ensure that you include the firm_id parameter in the request.

For more information on how to authenticate with PayU servers, please refer to the Authentication section on the Authorize and Order page.


This authentication method should be used to create every entity that falls under Firm umbrella:

Creating URL

After creating a firm and obtaining firm-specific OAuth access token, the subsequent step involves creating a URL.

This URL should point to an actual location where the "customer journey" begins, such as an online shop or a charity website.

When creating the URL, it's essential to specify the desired payment services.


Endpoint address contains firmId in the path.

URL Creation Request Example
curl -X POST '{firmId}/urls' \
-H "Content-Type: application/json" \
-H "Authorization: Bearer d9a4536e-62ba-4f60-8017-6053211d3f47" \
-d '{
"mcc": "0742",
Possible mcc Parameter Values
4722Trips & Travel agencies
4812Mobile phones
4816Computer networks and services
4900Electricity, water and gas supply
5047Medical supplies
5200Home & Garden
5300MLM (Multi-level marketing)
5533Sale of vehicles and parts
5651Clothing, shoes and accessories
5732Consumer electronics
5815E-books, digital music and film
5816Electronic games
5912Drugs and supplements
5941Sports equipment
5942Books and magazines
5993Tobacco and e-cigarettes
6050Financial services
7011Hotels & Accommodation
7273Dating portals
7333Photography and graphics
7512Vehicle rental
7922Events & Conferences
8099Medical services
8299Education & Online courses
8398Foundations & Charities
Default mcc

If required MCC is not present on the above list, please provide value 8999.

In response, you will obtain a urlId parameter. You should to store this parameter within your system, as it will be used for creating a Shop entity.

urlId Parameter Retrieved in Response to the Request
"urlId": "PItR5x0v"

For details on parameters, pleae refer to the Create a URL for the Partner's firm section in our API Reference.

Creating a Shop

Following the process of establishing a firm and URL creation, the next step involves creating a Shop entity.

Shop requires a reference to a previously created URL and is used to store payment account balance, therefore the most important parameter is the currencyCode.


Endpoint address contains firmId in the path.

Shop Creation Request Example
curl -X POST '{firmId}/shops' \
-H "Content-Type: application/json" \
-H "Authorization: Bearer d9a4536e-62ba-4f60-8017-6053211d3f47" \
-d '{
"name":"Shop name",
"description":"Shop description",

In response, you will receive a shopId parameter. You should store this parameter in your system, as it will be utilized for creating a POS (Point of Sale) entity.

shopId Parameter Retrieved in the Response to the Request
"shopId": "ycmGyfCv"

For details on parameters, please refer to the Create a shop for the Partner section in our API Reference.

Creating a POS

The final entity you need to create is a POS (Point of Sale).

A POS is established at the shop level and inherits its currency. It houses the credentials required for authenticating payments.


Endpoint address contains shopId in the path.

POS Creation Request Example
curl -X POST{shopId}/poses \
-H "Content-Type: application/json" \
-H "Authorization: Bearer d9a4536e-62ba-4f60-8017-6053211d3f47" \
-d '{
"name":"Test POS",

In response, you will receive posId parameter. You should store this parameter within your system, as it will be used to retrieve POS-related data.

posId Parameter Retrieved in the Response to the Request
"posId": "JyoMIVTY"

For details on parameters, please refer to the Create POS for Partner section in our API Reference.

The request params contain POS name and type. REST is the default type and allows to integrate payments via REST API.

POS Classic Type

In rare cases when a legacy CLASSIC type needs to be used, please contact PayU technical support for further guidance.

Obtaining POS Credentials

GET Request Body

When making GET requests, please remember not to include any data in the request body, as specified in the RFC 9110 standard. Requests that do not adhere to this requirement will be rejected by PayU with an HTTP 403 status.

To retrieve POS credentials, you need to send a GET request to the /api/v2_1/poses/{posId} endpoint.

Retrieveing POS Credentials Request Example
curl -X GET '{posId}' \
-H 'Authorization: Bearer d9a4536e-62ba-4f60-8017-6053211d3f47'

In response, you will receive a full set of credentials which will allow you to authenticate payments and refunds and check payment status notifications.

Retrieving POS Credentials Response
"posId": "JyoMIVTY",
"type": "REST",
"name": "Test POS",
"encoding": "UTF-8",
"authorization": {
"standard": {
"merchantPosId": "385234",
"key": "9c0041e05fdee99749de4c2d2ce4c66e",
"secondKey": "f096a39d78fbe03b8d23dde43b728cfd",
"authKey": "uHcZ9Ly"

For details on parameters, please refer to the Retrieve Partner's POS Data section in our API Reference.

firm Type Values

Firm Types Values
Polish Name
English Name
Czech Name
PPjednoosobowa działalność gospodarczasole traderpodnikající fyzická osoba tuzemská
SOspółka z ograniczoną odpowiedzialnościąlimited liability companyspolečnost s ručením omezeným
SCspółka cywilnacivil law partnershipobčanské sdružení
SJspółka jawnageneral partnershipkomora (hospodářská, agrární)
SAspółka akcyjnajoint-stock companyakciová společnost
SKspółka komandytowalimited liability partnershipspolečnost komanditní
SPspółka partnerskaprofessional partnershipsamosprávná stavovská organizace (profesní komora)
SDspółka komandytowo-akcyjnalimited joint-stock partnershipspolečnost komanditní na akcie
POplacówka oświatyeducational institutionškolská právnická osoba
KOPkościelna osoba prawna lub jej jednostka organizacyjnachurch legal personevidované církevní právnické osoby
JSTjednostka samorządu terytorialnegolocal government unitobec, kraj, městská část, městský obvod
IBinstytut badawczyresearch instituteveřejná výzkumná instituce
PPZprzedstawicielstwo przedsiębiorstwa zagranicznegoagency of foreign companyodštěpný závod zahraniční právnické osoby
PRPAprzedsiębiorstwo państwowestate companystátní podnik
SIKpubliczna instytucja kulturypublic culture institutionveřejná kulturní instituce
FZzagraniczna osoba prawnaforeign legal bodyzahraniční spolek

Further Actions

After obtaining POS credentials, you may consider not only using them to integrate payment services specified in REST API reference, but also non-payment API calls, like: