This reference is designed to assist you in effectively utilizing the PayU REST API to enhance your online payment capabilities. Whether you're running an e-commerce store or developing applications that require secure and seamless payment processing, our API offers a range of features to meet your needs.
Our API offers a comprehensive set of endpoints to empower you with full control over your payment processes. With these endpoints, you can seamlessly create, capture, cancel, and retrieve orders, conduct payouts, and access essential reports.
For more details on the integration, please refer to the official PayU documentation. It provides comprehensive explanations, code samples, and best practices for seamless integration of the PayU API into your applications.
For a basic integration, including only a redirection to PayU hosted payment page, it is perfectly enough to use the public test point of sale. However, if you would like to test a full set of endpoints, including e.g. refunds, consider registering for a sandbox account.
Public Test POS (point of sale)
| Key name | Value |
|---|---|
| POS ID (pos_id) | 145227 |
| OAuth protocol - client_id | 145227 |
| Second key (MD5) | 13a980d4f851f3d9a1cfc792fb1f5e50 |
| OAuth protocol - client_secret | 12f071174cb7eb79d4aac5bc2f07563f |
Sandbox is an almost identical copy of PayU production system. It can be used for integration and testing purposes.
Public Test POS (Point of Sale)
Although it is best to create your own account to later be able to configure it as needed, you may also use a public sandbox test POS without registering:
| Key name | Value |
|---|---|
| POS ID (pos_id) | 300746 |
| OAuth protocol - client_id | 300746 |
| Second key (MD5) | b6ca15b0d1020e8094d9b5f8d163db54 |
| OAuth protocol - client_secret | 2ee86a66e5d97e3fadc400c9f19b065d |
The availability of the sandbox environment can be checked on the Status page.
Testing Card Payments
In order to test card payments on sandbox, please use credentials displayed on the Sandbox documentation page.
Authentication involves generating an OAuth token, which is used for further communication with PayU servers. To create a standard OAuth token, you will need client_id and client_secret keys, which can be found in your merchant panel, in the POS.
Each payment should be authorized in one of three available modes:
client_credentials - used for standard integration,trusted_merchant - used for authentication of requests made for logged-in shop/application users with fixed extCustomerId,partner - special type of a token meant for creating entities (e.g. Shop, POS, URL) within partner firm.Generated access token is valid for 43199 seconds.
| grant_type required | string Authorization mode |
| client_id required | string Merchant's POS identifier in PayU's system. Can be found in PayU's merchant panel |
| client_secret required | string Merchant's secret key. Can be found in PayU's merchant panel |
{- "access_token": "7eb55bcf-6593-4040-afac-252ee1f78e20",
- "token_type": "bearer",
- "refresh_token": "120c200e-32b3-497f-b267-07b30cc24052",
- "expires_in": 43199,
- "grant_type": "client_credentials"
}Retrieving payment methods allows you to remove the threat of presenting a disabled payment method with white-label integration. It also gives you the ability to retrieve stored tokens and customer card data.
| lang | string Examples:
Language code, ISO-639-1 compliant, determins language of description in |
| features | string Examples:
Determine the availability and parameters of specific features. |
| Content-Type required | string Example: application/json Content type |
| Authorization required | string Example: Bearer 3e5cac39-7e38-4139-8fd6-30adc06a61bd Auth token |
{- "blikTokens": [
- {
- "value": "string",
- "type": "UID",
- "bankApplicationReferences": [
- {
- "key": 11111,
- "label": "BLIK label"
}
], - "recurring": {
- "aliasLabel": "string",
- "type": "O",
- "initializationDate": "2026-10-01T00:00:00+02:00",
- "expirationDate": "2026-10-01T00:00:00+02:00"
}
}
], - "cardTokens": [
- {
- "value": "TOKC_XATB7DF8ACXYTVQIPLWTVPFRKQE",
- "preferred": true,
- "status": "ACTIVE",
- "cardExpirationYear": 2026,
- "cardExpirationMonth": 7,
- "cardNumberMasked": "411111******1111",
- "cardScheme": "VS",
- "cardBrand": "VISA"
}
], - "payByLinks": [
- {
- "value": "sgb",
- "name": "SGB Bank",
- "status": "DISABLED",
- "minAmount": 50,
- "maxAmount": 99999999,
- "features": {
- "clickToPay": {
- "mastercard": {
- "status": "ENABLED",
- "dpaId": "jI8iGo86"
}, - "visa": {
- "status": "ENABLED",
- "dpaId": "jI8iGo86",
- "acquirerBIN": 123456,
- "acquirerMerchantId": "MARCH01"
}
}
}
}
], - "status": {
- "statusCode": "SUCCESS"
}
}Order is the basic payment request for the standard integration with PayU.
If the response to the payment creation request is returned with an HTTP 200 status and in HTML format, make sure that the tool used to communicate with PayU has automatic redirect handling disabled. Only in this case is it possible to receive the correct JSON response with an HTTP 302 status code.
Create a new order request.
| Content-Type required | string Example: application/json Content type |
| Authorization required | string Example: Bearer 3e5cac39-7e38-4139-8fd6-30adc06a61bd Auth token |
| continueUrl | string <RFC 3986> <= 1024 characters Address for redirecting the customer after payment is commenced. |
| notifyUrl | string <RFC 3986> <= 1024 characters The address for sending notifications |
| customerIp required | string Payer's IP address. Value is accepted in following formats:
|
| merchantPosId required | string Point of sale ID. |
| description required | string <= 4000 characters Description of the order. |
| additionalDescription | string <= 1024 characters Additional description of the order. |
| visibleDescription | string <= 80 characters Order/Payment description visible for Buyer on the PayU payment page. |
| statementDescription | string <= 22 characters Payment recipient name followed by payment description (order ID, ticket number etc) visible on card statement. The name should be easy to recognize by the cardholder. If field is not provided, static name configured by PayU will be used. |
| extOrderId | string <= 1024 characters ID of an order used in merchant system. Order identifier assigned by the merchant. It enables merchants to find a specific order in their system. This value must be unique within a single POS. |
| currencyCode required | string Currency code compliant with ISO 4217 (e.g EUR). |
| totalAmount required | string Total price of the order in pennies (e.g. 1000 is 10.00 EUR). Applies also to currencies without subunits (e.g. 1000 is 10 HUF). |
| validityTime | string Duration for the validity of an order (in seconds), during which time payment must be made. Default value 86400. |
| cardOnFile | string Enum: "FIRST" "STANDARD_CARDHOLDER" "STANDARD_MERCHANT" Information about party initializing order or a transaction with Buyer consent to save card token. "cardOnFile" parameter cannot be used with "recurring" parameter. |
| recurring | string Enum: "FIRST" "STANDARD" Marks the order as recurring payment:
recurring parameter cannot be used with cardOnFile parameter .
|
object (donation) Section containing data of donation added to the order. | |
object (buyer) Section containing buyer data. | |
Array of objects (shoppingCarts) Array of objects related to transaction identification. | |
required | Array of objects (products) Section containing data of the ordered products. Section |
object (payMethods) Section allows to directly invoke payment method. Section | |
object (mcpData) Section allows to pass currency conversion details if you chose to use Multi-Currency Pricing. | |
object (threeDsAuthentication) Contains optional fields required by 3DS 2 authentication protocol. | |
object (riskData) Contains optional fields required for risk analysis purposes. Required for BLIK with authorization code or token. | |
object (credit) Section containing credit data. This information is not required, but it is strongly recommended to include it. Otherwise the buyer will be prompted to provide missing data on provider page when payment by Installments or Pay later. | |
object (submerchant) | |
object (settings) | |
| deviceFingerprint | string <= 255 characters Hashed identifier of the user or its device. |
{- "continueUrl": "www.example.com/path",
- "customerIp": "127.0.0.1",
- "merchantPosId": "140332",
- "description": "string",
- "additionalDescription": "string",
- "visibleDescription": "string",
- "statementDescription": "string",
- "extOrderId": "string",
- "currencyCode": "EUR",
- "totalAmount": "1000",
- "validityTime": "100000",
- "cardOnFile": "FIRST",
- "recurring": "FIRST",
- "donation": {
- "amount": 500,
- "organizationId": "string"
}, - "buyer": {
- "extCustomerId": "string",
- "email": "email@email.com",
- "phone": "+48 225108001",
- "firstName": "John",
- "lastName": "Doe",
- "nin": 123456789,
- "language": "pl",
- "birthDate": "2006-12-03T00:00:00.000+01:00",
- "delivery": {
- "street": "string",
- "postalBox": "string",
- "postalCode": "string",
- "city": "string",
- "state": "30",
- "countryCode": "string",
- "name": "string",
- "recipientName": "string",
- "recipientEmail": "string",
- "recipientPhone": "string"
}
}, - "shoppingCarts": [
- {
- "extCustomerId": "ext-customer-1",
- "amount": 24950,
- "fee": 250,
- "shippingMethods": [
- {
- "country": "PL",
- "price": 250,
- "name": "Postal package"
}
], - "products": [
- {
- "name": "My product",
- "unitPrice": 999,
- "quantity": 4,
- "virtual": true
}
]
}
], - "products": [
- {
- "name": "My product",
- "unitPrice": 999,
- "quantity": 4,
- "virtual": true
}
], - "payMethods": {
- "payMethod": {
- "type": "PBL",
- "value": "c",
- "clickToPay": {
- "visa": {
- "srcCorrelationId": "123e4567-e89b-12d3-a456-426614174000"
}
}, - "authorizationCode": "777123",
- "authorizationType": "PRE_AUTHORIZATION",
- "card": {
- "number": "5100052384536818",
- "expirationMonth": "02",
- "expirationYear": "29",
- "cvv": "123",
- "firstTransactionId": "MCC0111LL1121"
}, - "specificData": [
- {
- "name": "string",
- "value": "string"
}
], - "amount": "string",
- "blikData": {
- "aliasLabelProposal": "string",
- "registerTokenValue": "string",
- "register": true,
- "appKey": "string",
- "recommendedAuthLevel": "NO_CONFIRMATION",
- "countryCode": "PL",
- "recurring": {
- "type": "O",
- "initializationDate": "2026-10-01T00:00:00+02:00",
- "expirationDate": "2026-10-01T00:00:00+02:00",
- "authorizeDespiteRecurringNotSupported": false
}
}, - "threeDsData": {
- "status3Ds": "Y",
- "status3DsDescription": "Authentication successful",
- "xid": "string",
- "dsTransactionId": "3b31b19d-1c06-4ea4-a85a-00af10c66588",
- "eciCode": 5,
- "cavv": "AAABBBEAUAAAABgICABQAAAAAAA=",
- "tavv": "AgAAABBEAUAAAABg8CABQAAQEAAA="
}, - "sourcePaymentFlow": "VISA_MOBILE",
- "cardInstallments": {
- "provider": "BRD_INSTALLMENTS",
- "number": 6
}
}
}, - "mcpData": {
- "mcpCurrency": "EUR",
- "mcpAmount": 10000,
- "mcpRate": 4.2556,
- "mcpFxTableId": 132331,
- "mcpPartnerId": "6283a549-8b1a-430d-8a62-eea64327440e"
}, - "threeDsAuthentication": {
- "challengeRequested": "YES",
- "exemption": {
- "value": "LOW_RISK",
- "rejectionHandling": "PERFORM_AUTHENTICATION",
- "riskScore": "120 - low risk score calculated in Merchants antifraud tool"
}, - "browser": {
- "acceptHeaders": "string",
- "requestIP": "127.0.0.1",
- "screenWidth": 1920,
- "javaEnabled": false,
- "timezoneOffset": 1,
- "screenHeight": 1280,
- "userAgent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/100.0.4896.127 Safari/537.36",
- "colorDepth": 32,
- "language": "pl_PL"
}, - "sdk": {
- "sdkReferenceNumber": "DS_LOA_SDK_ADBV_739485_94783",
- "sdkMaxTimeout": 30,
- "sdkAppID": "9063b12c-fcde-43c7-b28e-8d0af5520e8a",
- "sdkEncData": "9063b12c-fcde-43c7-b28e-8d0af5520e8a",
- "sdkTransID": "b60c9879-ac77-4918-a317-7b01c4317053/8Q==.",
- "sdkEphemPubKey": {
- "y": "MRy7wofaw77myc7hZef23hmmEOE",
- "x": "MRy7wofaw77myc7hZef23hmmEOE",
- "kty": "EC",
- "crv": "P-256"
}
}, - "merchantRiskIndicator": {
- "orderType": "LOAN",
- "shipIndicator": "TICKETS",
- "preOrdered": false,
- "preOrderedDate": "2019-03-27T10:57:59.000+01:00",
- "deliveryTimeFrame": "OVERNIGHT",
- "reordered": false,
- "merchantFunds": {
- "amount": 100,
- "currencyCode": "PLN"
}
}, - "recurring": {
- "frequency": "7",
- "expiry": "2025-03-27T00:00:00.000Z"
}, - "cardholder": {
- "name": "John Doe",
- "accountInformation": {
- "createDate": "2019-03-27T10:57:59.000+01:00",
- "suspiciousActivity": false,
- "deliveryAddressFirstUsedDate": "2019-03-27T10:57:59.000+01:00",
- "deliveryAdressUsageIndicator": "THIS_TRANSACTION",
- "pastOrdersYear": 46,
- "pastOrdersDay": 125,
- "purchasesLastSixMonths": 12,
- "changeDate": "2019-03-27T10:57:59.000+01:00",
- "changeIndicator": "THIS_TRANSACTION",
- "passwordChanged": "2019-03-27T10:57:59.000+01:00",
- "passwordChangeIndicator": "NO_CHANGE",
- "nameToRecipientMatch": true,
- "addCardAttemptsDay": 3,
- "authMethod": "GUEST",
- "authDateTime": "2019-03-27T10:57:59.000+01:00",
- "cardAddedDate": "2019-03-27T10:57:59.000+01:00",
- "cardAddedIndicator": "THIS_TRANSACTION"
}, - "billingAddress": {
- "street": "Test Street",
- "postalCode": "01-000",
- "city": "Test City",
- "state": 30,
- "countryCode": "PL"
}
}
}, - "riskData": {
- "browser": {
- "acceptHeaders": "string",
- "requestIP": "127.0.0.1",
- "screenWidth": 1920,
- "javaEnabled": false,
- "timezoneOffset": 1,
- "screenHeight": 1280,
- "userAgent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/100.0.4896.127 Safari/537.36",
- "colorDepth": 32,
- "language": "pl_PL"
}
}, - "credit": {
- "shoppingCarts": [
- {
- "shippingMethod": {
- "type": "COURIER",
- "price": "string",
- "address": {
- "pointId": "Parcel locker POZ29A",
- "street": "string",
- "streetNo": "string",
- "flatNo": "string",
- "postalCode": "string",
- "city": "string",
- "countryCode": "string"
}
}, - "products": [
- {
- "name": "string",
- "unitPrice": "string",
- "quantity": "string",
- "virtual": true,
- "listingDate": "string"
}
], - "extCustomerId": "string"
}
], - "applicant": {
- "email": "test@test.com",
- "phone": 123456789,
- "firstName": "Joe",
- "lastName": "Doe",
- "language": "pl",
- "nin": 123456789,
- "address": {
- "street": "Test Street",
- "streetNo": 123,
- "flatNo": 987,
- "postalCode": "01-000",
- "city": "Test City",
- "countryCode": "PL"
}, - "additionalInfo": {
- "hasSuccessfullyFinishedOrderInShop": "YES"
}
}, - "klarnaAttachment": {
- "content_type": "string",
- "body": "string"
}
}, - "submerchant": {
- "id": "string"
}, - "settings": {
- "cardInstallmentsOptions": {
- "property1": [
- 1,
- 3,
- 5,
- 7,
- 9,
- 11,
- 13
], - "property2": [
- 1,
- 3,
- 5,
- 7,
- 9,
- 11,
- 13
]
}
}, - "deviceFingerprint": "3e9fae0b3e6003a4093358167bc1079e"
}{- "status": {
- "statusCode": "string"
}, - "redirectUri": "string",
- "qrCode": "string",
- "orderId": "WZHF5FFDRJ140731GUEST000P01",
- "iframeAllowed": true,
- "threeDsProtocolVersion": "3DS2",
- "extOrderId": "string",
- "challengeParameters": {
- "threeDsServerTransactionId": "0016f22b-f988-4358-b2c6-8917bba22037",
- "acsTransID": "d7c1ee99-9478-44a6-b1f2-391e29c6b340",
- "acsReferenceNumber": "3DS_LOA_ACS_201_13579",
- "acsSignedContent": "c29tZUJhc2U2NGVuY29kZWRTdHJpbmc="
}
}Retrieve the status and details of an order.
| orderId required | string Example: "WZHF5FFDRJ140731GUEST000P01" Order ID generated by the PayU system |
| Content-Type required | string Example: application/json Content type |
| Authorization required | string Example: Bearer 3e5cac39-7e38-4139-8fd6-30adc06a61bd Auth token |
{- "orders": [
- {
- "shippingMethod": {
- "country": "PL",
- "price": 2000,
- "name": "parcell"
}, - "orderId": "VVLR1HXK2S160929GUEST000P01",
- "extOrderId": "343242",
- "orderCreateDate": "2023-01-03T14:58:17.443+01:00",
- "customerIp": "127.0.0.1",
- "merchantPosId": "145227",
- "description": "New Order",
- "additionalDescription": "New Order",
- "validityTime": "86400",
- "currencyCode": "PLN",
- "totalAmount": "3200",
- "buyer": {
- "extCustomerId": "string",
- "email": "email@email.com",
- "phone": "+48 225108001",
- "firstName": "John",
- "lastName": "Doe",
- "nin": 123456789,
- "language": "pl",
- "birthDate": "2006-12-03T00:00:00.000+01:00",
- "delivery": {
- "street": "string",
- "postalBox": "string",
- "postalCode": "string",
- "city": "string",
- "state": "30",
- "countryCode": "string",
- "name": "string",
- "recipientName": "string",
- "recipientEmail": "string",
- "recipientPhone": "string"
}
}, - "payMethod": {
- "amount": 20000,
- "type": "PBL"
}, - "products": [
- {
- "name": "My product",
- "unitPrice": 999,
- "quantity": 4,
- "virtual": true
}
], - "shoppingCarts": [
- {
- "extCustomerId": "ext-customer-1",
- "amount": 24950,
- "fee": 250,
- "shippingMethods": [
- {
- "country": "PL",
- "price": 250,
- "name": "Postal package"
}
], - "products": [
- {
- "name": "My product",
- "unitPrice": 999,
- "quantity": 4,
- "virtual": true
}
]
}
], - "status": "COMPLETED"
}
], - "properties": [
- {
- "name": "PAYMENT_ID",
- "value": "1234567890"
}
]
}Cancel (reject) orders processed by the PayU system.
| orderId required | string Example: "WZHF5FFDRJ140731GUEST000P01" Order ID generated by the PayU system |
| Content-Type required | string Example: application/json Content type |
| Authorization required | string Example: Bearer 3e5cac39-7e38-4139-8fd6-30adc06a61bd Auth token |
{- "orderId": "WZHF5FFDRJ140731GUEST000P01",
- "extOrderId": "3e5cac39-7e38-4139-8fd6-30adc06a61bd",
- "status": {
- "statusCode": "SUCCESS"
}
}Retrieve the details of transactions created for an order with specified orderId.
| orderId required | string Example: "WZHF5FFDRJ140731GUEST000P01" Order ID generated by the PayU system |
| Content-Type required | string Example: application/json Content type |
| Authorization required | string Example: Bearer 3e5cac39-7e38-4139-8fd6-30adc06a61bd Auth token |
{- "transactions": [
- {
- "payMethod": {
- "value": "c"
}, - "paymentFlow": "CARD",
- "validUntil": "2024-06-20T09:05:44.238+02:00",
- "card": {
- "cardData": {
- "cardNumberMasked": "543402******4014",
- "cardScheme": "MC",
- "cardProfile": "CONSUMER",
- "cardClassification": "DEBIT",
- "cardResponseCode": "000",
- "cardResponseCodeDesc": "000 - OK",
- "cardEciCode": "2",
- "card3DsStatus": "Y",
- "card3DsFrictionlessIndicator": "YES",
- "card3DsStatusDescription": "MessageVersion=2.1.0,browser flow,3DS method not available,dynamic authentication,no cancel indicator,no status reason",
- "cardBinCountry": "PL",
- "firstTransactionId": "MCC0111LL1121"
}
}, - "resultCode": "AUT_ERROR_NO_AUTHORIZATION"
}
]
}Shop is the main entity in the management panel. It is the place where you can manage incoming transactions processed by PayU.
Retrieve your PayU shop balance, id, etc.
| shopId required | string Example: "a1B2C3x" ShopId value generated by PayU assigned to Shop |
| Content-Type required | string Example: application/json Content type |
| Authorization required | string Example: Bearer 3e5cac39-7e38-4139-8fd6-30adc06a61bd Auth token |
{- "shopId": "a1B2C3x",
- "name": "Test Shop",
- "currencyCode": "PLN",
- "balance": {
- "currencyCode": "PLN",
- "total": 1234567890,
- "available": 987654321
}
}The PayU system fully supports refunds for the processed payments, the balance of which is transferred directly to the buyer's account.
Create new refund - this request is idempotent, so if exactly same data will be provided, response will return data of already previously created refund instead of creating new refund.
| orderId required | string Example: WZGF5FFDRJ140731GUEST000P01 Order ID generated by the PayU system |
| Content-Type required | string Example: application/json Content type |
| Authorization required | string Example: Bearer 3e5cac39-7e38-4139-8fd6-30adc06a61bd Auth token |
required | object Contains detailed information about a refund. | ||||||||||||
| |||||||||||||
{- "refund": {
- "description": "Test refund",
- "amount": "10000",
- "extRefundId": "3e5cac39-7e38-4139-8fd6-30adc06a61bd",
- "currencyCode": "PLN",
- "bankDescription": "Bank transfer refund",
- "type": "REFUND_PAYMENT_STANDARD"
}
}{- "orderId": "WZGF5FFDRJ140731GUEST000P01",
- "refund": {
- "refundId": "5000000142",
- "description": "Test refund",
- "amount": "10000",
- "extRefundId": "3e5cac39-7e38-4139-8fd6-30adc06a61bd",
- "currencyCode": "PLN",
- "bankDescription": "Bank transfer refund",
- "creationDateTime": "2020-07-02T09:19:03.896+02:00",
- "status": "PENDING",
- "statusDatetime": "2020-07-02T09:19:04.013+02:00"
}, - "status": {
- "statusCode": "SUCCESS",
- "statusDesc": "Refund queued for processing"
}
}| orderId required | string Example: WZHF5FFDRJ140731GUEST000P01 Order ID generated by the PayU system |
| Content-Type required | string Example: application/json Content type |
| Authorization required | string Example: Bearer 3e5cac39-7e38-4139-8fd6-30adc06a61bd Auth token |
[- {
- "refundId": "5000000142",
- "extRefundId": "hdjJduUEEH2",
- "amount": 10000,
- "description": "Refund for order <orderId>",
- "creationDateTime": "2020-07-02T09:19:03.896+02:00",
- "currencyCode": "string",
- "statusDatetime": "2020-07-02T09:19:04.016+02:00",
- "status": "PENDING"
}, - {
- "refundId": "5000000142",
- "extRefundId": "hdjJduUEEH2",
- "amount": 10000,
- "description": "Refund for order <orderId>",
- "creationDateTime": "2020-07-02T09:19:03.896+02:00",
- "currencyCode": "string",
- "statusDatetime": "2020-07-02T09:19:04.016+02:00",
- "status": "string",
- "statusError": {
- "code": "string",
- "description": "string"
}
}
]| orderId required | string Example: WZHF5FFDRJ140731GUEST000P01 Order ID generated by the PayU system |
| refundId required | string Example: 5000000142 Refund identifier in the PayU system. |
| Content-Type required | string Example: application/json Content type |
| Authorization required | string Example: Bearer 3e5cac39-7e38-4139-8fd6-30adc06a61bd Auth token |
{- "refundId": "5000000142",
- "extRefundId": "hdjJduUEEH2",
- "amount": 10000,
- "description": "Refund for order <orderId>",
- "creationDateTime": "2020-07-02T09:19:03.896+02:00",
- "currencyCode": "string",
- "statusDatetime": "2020-07-02T09:19:04.016+02:00",
- "status": "FINALIZED"
}Create a payout with the selected destination of funds.
| Content-Type required | string Example: application/json Content type |
| Authorization required | string Example: Bearer 3e5cac39-7e38-4139-8fd6-30adc06a61bd Auth token |
Parameters for creating payouts.
| shopId required | string Public identifier for the shop within PayU, under which payout will be executed. |
object Payout information. |
{- "shopId": "1a2B3Cx",
- "payout": {
- "description": "string",
- "extPayoutId": "string",
- "amount": 987654321,
- "additionalVariables": "VS=888111"
}
}{- "payout": {
- "payoutId": "string",
- "extPayoutId": "string",
- "extCustomerId": "string",
- "amount": 10000,
- "currencyCode": "PLN",
- "status": "PENDING",
- "fxData": {
- "currencyCode": "EUR",
- "amount": 2500,
- "rate": 0.25,
- "partnerId": "string",
- "tableId": "string"
}
}, - "status": {
- "statusCode": "string"
}
}Retrieve data of a specified payout.
| payoutId required | string Example: "fefa25e021b14970bfac9ebfb20761dc" Payout ID generated by the PayU system |
| Content-Type required | string Example: application/json Content type |
| Authorization required | string Example: Bearer 3e5cac39-7e38-4139-8fd6-30adc06a61bd Auth token |
{- "payout": {
- "payoutId": "string",
- "extPayoutId": "string",
- "amount": 10000,
- "description": "string",
- "status": "PENDING",
- "fxData": {
- "currencyCode": "string",
- "amount": 2500,
- "rate": 0.25,
- "partnerId": "string",
- "tableId": "string"
}
}, - "status": {
- "statusCode": "string"
}
}With tokenization, we are confident that your customers' card data is protected from third parties.
In case the customer terminates the user account in your shop or chooses to remove the stored card from the user account, you need to delete the token.
| token required | string Example: "TOKC_XATB7DF8ACXYTVQIPLWTVPFRKQE" |
| Content-Type required | string Example: application/json Content type |
| Authorization required | string Example: Bearer 3e5cac39-7e38-4139-8fd6-30adc06a61bd Auth token with |
{- "status": {
- "statusCode": "string",
- "severity": "string",
- "code": "string",
- "codeLiteral": "string",
- "statusDesc": "string"
}
}We can convert your customers' payments to the currency of your shop set up with PayU.
Retrieve current table with the conversion rates for the currencies.
| mcpPartnerId required | string Example: "6283a549-8b1a-430d-8a62-eea64327440e" |
| Content-Type required | string Example: application/json Content type |
| Authorization required | string Example: Bearer 3e5cac39-7e38-4139-8fd6-30adc06a61bd Auth token |
{- "id": 802438,
- "validTo": "2023-01-02T20:18:00Z",
- "currencyPairs": [
- {
- "baseCurrency": "PLN",
- "exchangeRate": 0.23753,
- "termCurrency": "USD"
}
]
}According to regulations in the European Union countries, payment service providers and parties providing currency conversion services at the point of sale are obliged to express the total currency conversion charges as a percentage mark-up over the latest available euro foreign exchange reference rates issued by the European Central Bank (ECB).
You can retrieve a reference rate table that is updated daily. This table encompasses rates released by the European Central Bank (ECB) against EUR, as well as additional rates that are triangulated using EUR (e.g., PLN/USD, CZK/GBP, etc.).
| termCurrency required | string Examples:
|
| Content-Type required | string Example: application/json Content type |
| Authorization required | string Example: Bearer 3e5cac39-7e38-4139-8fd6-30adc06a61bd Auth token |
{- "effectiveDate": "2023-01-03",
- "fxRates": [
- {
- "baseCurrency": "string",
- "termCurrency": "string",
- "midRate": 3.141
}
]
}In PayU, as a marketplace, you have the capability to manage various aspects of your submerchants.
You can check the verification status of your submerchants.
| extCustomerId required | string Submerchant identifier. |
| currencyCode required | string Example: currencyCode=PLN Currency code according to ISO-4217. |
| Content-Type required | string Example: application/json Content type |
| Authorization required | string Example: Bearer 3e5cac39-7e38-4139-8fd6-30adc06a61bd Auth token |
{- "customVerificationStatus": "Verified",
- "name": "string",
- "taxId": "string",
- "regon": "string"
}| extCustomerId required | string Submerchant identifier. |
| currencyCode required | string Example: currencyCode=PLN Currency code according to ISO-4217. |
| Content-Type required | string Example: application/json Content type |
| Authorization required | string Example: Bearer 3e5cac39-7e38-4139-8fd6-30adc06a61bd Auth token |
{- "balance": {
- "availableAmount": "string",
- "totalAmount": "string"
}, - "status": {
- "statusCode": "string"
}
}| extCustomerId required | string Submerchant identifier. |
| currencyCode | string Currency code according to ISO-4217. You can enter multiple values. Subsequent entries should be separated by a comma. |
| type | string Enum: "PAYMENT_SENT" "PAYMENT_RECEIVED" "PAYOUT" "REFUND_SENT" "REFUND_RECEIVED" "RETURN" "ADMIN_TRANSFER_SENT" "ADMIN_TRANSFER_RECEIVED" "FEE_TRANSFER_SENT" "FEE_TRANSFER_RECEIVED" Operation type. You can enter multiple values. Subsequent entries should be separated by a comma. |
| eventDateFrom required | string <2019-01-30T20%3A59%3A00%2B02%3A00> Start of the search range for "eventDate". Date must be url encoded. |
| eventDateTo required | string <2019-04-30T20%3A59%3A00%2B02%3A00> End of the search range for "eventDate". Date must be url encoded. |
| creationDateFrom | string <2019-04-30T20%3A59%3A00%2B02%3A00> Start of the search range for "creationDate". Date must be url encoded. |
| creationDateTo | string <2019-04-30T20%3A59%3A00%2B02%3A00> End of the search range for "creationDate". Date must be url encoded. |
| limit | string Number of records per page. |
| offset | string Page number (indexing from 0). |
| sortBy | string Enum: "eventDate" "creationDate" "type" "currencyCode" Examples:
Sorting field. Additional sign "+" or "-" before field name defines sorting order. Default is ascending. |
| Content-Type required | string Example: application/json Content type |
| Authorization required | string Example: Bearer 3e5cac39-7e38-4139-8fd6-30adc06a61bd Auth token |
{- "operations": [
- {
- "type": "PAYMENT_RECEIVED",
- "amount": "string",
- "currencyCode": "PLN",
- "description": "string",
- "status": "COMPLETED",
- "creationDate": "string",
- "eventDate": "string",
- "details": {
- "orderId": "string",
- "extOrderId": "string",
- "feeAmount": "string",
- "counterparties": {
- "extCustomerId": "string",
- "name": "string",
- "email": "string",
- "products": [
- {
- "name": "string",
- "unitPrice": "string",
- "quantity": "string"
}
]
}
}, - "funds": [
- { }
]
}
], - "pageResponse": {
- "records": "string",
- "size": "string",
- "pageCount": "string"
}
}| extCustomerId required | string Submerchant identifier. |
| Content-Type required | string Example: application/json Content type |
| Authorization required | string Example: Bearer 3e5cac39-7e38-4139-8fd6-30adc06a61bd Auth token |
| amount | number Transfer amount. |
| currencyCode | string Currency code according to ISO-4217. |
| description | string Description of the operation. |
| extTransferId | string Unique transfer identifier for given marketplace. |
{- "amount": 0,
- "currencyCode": "PLN",
- "description": "string",
- "extTransferId": "string"
}{- "extCustomerId": "string",
- "extTransferId": "string",
- "status": {
- "statusCode": "SUCCESS"
}
}| extCustomerId required | string Unique submerchant identifier. |
| Content-Type required | string Example: application/json Content type |
| Authorization required | string Example: Bearer 3e5cac39-7e38-4139-8fd6-30adc06a61bd Auth token |
| amount | number Transfer amount. |
| currencyCode | string Currency code according to ISO-4217. |
| description | string Description of the operation. |
| extTransferId | string Unique transfer identifier for given marketplace. |
{- "amount": 0,
- "currencyCode": "PLN",
- "description": "string",
- "extTransferId": "string"
}{- "extCustomerId": "string",
- "extTransferId": "string",
- "status": {
- "statusCode": "SUCCESS"
}
}PayU is required by the Anti-Money Laundering Act to verify customers in this context. For this purpose, we provide a collection of endpoints to make it easier for you to verify sellers.
Verify, on the basis of a Personal Identification Number or NIP number, whether a given individual/company has already been registered in the PayU system.
| companyTaxId required | string Company tax id of a entity. Required if you want to check a status of a company. |
| pesonalIdentificationNumber required | string Personal identification number of individual. Required if you want to check a status of a private person. |
| Content-Type required | string Example: application/json Content type |
| Authorization required | string Example: Bearer 3e5cac39-7e38-4139-8fd6-30adc06a61bd Auth token |
{- "advice": "FULL_ONBOARDING_REQUIRED"
}Retrieve the status of the verification with the specific Id.
| id required | string Example: id="aZl6Ja" Value of the query |
| Content-Type required | string Example: application/json Content type |
| Authorization required | string Example: Bearer 3e5cac39-7e38-4139-8fd6-30adc06a61bd Auth token |
{- "verificationId": "5002500000BVmycAAD",
- "verificationType": "FULL",
- "verificationTransferStatus": "null",
- "processType": "OCCASIONAL",
- "status": "REJECTED",
- "sellerId": "123456test12",
- "note": null,
- "errors": [
- {
- "content": {
- "itemType": "SELLER_DOCUMENT",
- "itemProperties": {
- "documentType": "PEP_STATEMENT",
- "documentId": "2",
- "associateId": null
}
}, - "code": "006"
}
], - "updateDate": "2020-04-03T09:14:06.000Z",
- "createDate": "2020-04-03T06:36:15.000Z"
}Initialize the verification process of the seller.
| Content-Type required | string Example: application/json Content type |
| Authorization required | string Example: Bearer 3e5cac39-7e38-4139-8fd6-30adc06a61bd Auth token |
| sellerId required | string <= 50 characters Unique id of seller (submerchant) given by marketplace side. This id must be constant for every verification concerning the same seller (submerchant). |
| type required | string Enum: "PAYOUT_ACCOUNT_DATA" "FULL" "UPDATE" "REVERIFICATION" "PERSONAL_ID_TAX_ID_CHANGE" "CONVERSION" Verification type. Possible values descriptions:
|
| overridePayouts | boolean |
{- "sellerId": "string",
- "type": "PAYOUT_ACCOUNT_DATA",
- "overridePayouts": true
}{- "verificationId": "aZl6Ja",
- "status": "WAITING_FOR_DATA",
- "sellerId": "seller_27"
}This method allows to send data of the seller (submerchant).
| Content-Type required | string Example: application/json Content type |
| Authorization required | string Example: Bearer 3e5cac39-7e38-4139-8fd6-30adc06a61bd Auth token |
| verificationId required | string <= 18 characters Unique id of the verification provided by PayU. |
| sellerId required | string <= 50 characters Unique id of seller (submerchant) given by marketplace side. This id must be constant for every verification concerning the same (submerchant). |
| email required | string [ 5 .. 80 ] characters Contact email. |
| phone | string <= 40 characters Contact phone. |
| taxId required | string <no spaces, eg. 1122334455> <= 60 characters Tax id. |
| companyName required | string <= 80 characters Name of the company. |
| legalForm required | string Enum: "AGENCY_OF_FOREIGN_COMPANY" "ASSOCIATION" "CHURCH_LEGAL_PERSON" "CIVIL_LAW_PARTNERSHIP" "COOPERATIVE" "EDUCATIONAL_INSTITUTION" "FOUNDATION" "GENERAL_PARTNERSHIP" "JOINT_STOCK_COMPANY" "LIMITED_JOINT_STOCK_PARTNERSHIP" "LIMITED_LIABILITY_COMPANY" "LIMITED_LIABILITY_PARTNERSHIP" "LIMITED_PARTNERSHIP" "LOCAL_GOVERNMENT_UNIT" "PRIVATE_PERSON" "PROFESSIONAL_PARTNERSHIP" "LOCAL_GOVERNMENT_CULTURE_INSTITUTION" "RESEARCH_INSTITUTE" "SOLE_TRADER" "OTHER" FOREIGN_COMPANY type has been deprecated. |
| gusCode | string <= 50 characters Code relating to the legal form. For more information see the site of the Główny Urząd Statystyczny. |
| registryNumber | string <= 40 characters Company registry number (eg REGON in Poland). |
| registrationDate | string <YYYY-MM-DD> Company registration date in the registries. |
required | object Address of the company. |
{- "verificationId": "aZx65uY",
- "sellerId": "seller_1\"",
- "email": "company@test.com",
- "phone": "111222333",
- "taxId": "1122334455",
- "companyName": "Company 1",
- "legalForm": "CIVIL_LAW_PARTNERSHIP",
- "gusCode": "string",
- "registryNumber": "string",
- "registrationDate": "2019-07-07",
- "address": {
- "street": "Grunwaldzka 186",
- "zipcode": "60-166",
- "city": "Poznan",
- "country": "PL"
}
}{- "status": {
- "statusCode": "string",
- "severity": "string",
- "code": "string",
- "codeLiteral": "string",
- "statusDesc": "string"
}
}Send the data of the associates (representatives and beneficiaries according to the relevant instructions from PayU).
| Content-Type required | string Example: application/json Content type |
| Authorization required | string Example: Bearer 3e5cac39-7e38-4139-8fd6-30adc06a61bd Auth token |
| verificationId required | string <= 18 characters Unique id of the verification provided by PayU. |
| associateId required | string <= 100 characters Associate id. Unique on seller level. |
| associateType required | string Enum: "BENEFICIARY" "REPRESENTATIVE" Type of the associate. |
| associateName required | string <= 200 characters Associate first name. |
| associateSurname required | string <= 200 characters Associate last name. |
| associateBirthDate | string <YYYY-MM-DD> Associate date of birth. Required for non-polish associates. |
| associateIdentityNumber | string <= 150 characters Unique associate identification number. PESEL in Poland. Required for polish associates. |
| associateCitizenship required | string <ISO Country Code> <= 255 characters Two letter ISO country code. |
| associateCountryOfBirth required | string <= 255 characters Two letter ISO country code. |
| pepStatement | string Enum: "true" "false" |
| verified | string Enum: "true" "false" |
object Object containing Authologic data. |
{- "verificationId": "aZx65uY",
- "associateId": "dsada65",
- "associateType": "BENEFICIARY",
- "associateName": "Jan",
- "associateSurname": "Kowalski",
- "associateBirthDate": "1980-01-27",
- "associateIdentityNumber": "90120789112",
- "associateCitizenship": "PL",
- "associateCountryOfBirth": "PL",
- "pepStatement": "true",
- "verified": "true",
- "externalVerificationData": {
- "externalVerificationType": "MOJEID_PL",
- "documentNumber": "ABC123456",
- "documentType": "ID_CARD",
- "documentExpiryDate": "2030-09-23",
- "identityNumber": "94091100007",
- "nationality": "PL",
- "dateOfBirth": "2000-09-11",
- "secondDocumentNumber": "DFE123456",
- "secondDocumentType": "PASSPORT",
- "secondDocumentExpiryDate": "2030-09-23",
- "identityNumberSecondDocument": "94091100007",
- "nationalitySecondDocument": "PL",
- "dateOfBirthSecondDocument": "2030-09-23",
- "authologicConversationID": "string"
}
}{- "status": {
- "statusCode": "string",
- "severity": "string",
- "code": "string",
- "codeLiteral": "string",
- "statusDesc": "string"
}
}Upload documents to the server.
| Content-Type required | string Example: application/json Content type |
| Authorization required | string Example: Bearer 3e5cac39-7e38-4139-8fd6-30adc06a61bd Auth token |
| verificationId required | string <= 18 characters Unique id of the verification provided by PayU. |
| filename required | string |
| content required | string |
{- "verificationId": "string",
- "filename": "string",
- "content": "string"
}{- "verifictionId": "aZx65uY",
- "fileId": "string"
}This method allows to load company related documents.
| Content-Type required | string Example: application/json Content type |
| Authorization required | string Example: Bearer 3e5cac39-7e38-4139-8fd6-30adc06a61bd Auth token |
| verificationId required | string <= 18 characters Id of verification in context of which data are provided. |
| documentId required | string <= 100 characters |
| type required | string Enum: "REGISTRY_DOCUMENT" "BANK_ACCOUNT_AGREEMENT" "INVOICE" "UBO_STATEMENT" "CIVIL_LAW_AGREEMENT" "PROXY_DOCUMENT" "OTHER_DOCUMENT" Document types. |
| files required | Array of strings List of file ids given in a response to the dataloading/files request. There can be many IDs in this field when one document contains many files. |
| note | string <= 255 characters |
| translationFiles | Array of strings
|
{- "verificationId": "string",
- "documentId": "string",
- "type": "REGISTRY_DOCUMENT",
- "files": [
- "string"
], - "note": "string",
- "translationFiles": [
- "string"
]
}{- "status": {
- "statusCode": "string",
- "severity": "string",
- "code": "string",
- "codeLiteral": "string",
- "statusDesc": "string"
}
}Upload required documents for associates (representatives or beneficiaries).
| Content-Type required | string Example: application/json Content type |
| Authorization required | string Example: Bearer 3e5cac39-7e38-4139-8fd6-30adc06a61bd Auth token |
| verificationId required | string <= 18 characters Unique id of the verification provided by PayU. |
| associateId required | string <= 100 characters Unique id of an associate assigned by the Marketplace. |
| type required | string Enum: "ID_CARD" "PASSPORT" "DRIVING_LICENCE" "RESIDENCE_PERMIT" "OTHER_DOCUMENT" "PEP_STATEMENT" Document type. |
| files required | Array of strings List of file ids given in a response to the dataloading/files request. Can be many IDs in this field when one document contains many files. |
| documentId required | string <= 100 characters Unique document ID assigned by the Marketplace. |
| documentNumber | string <= 100 characters Serial number of the provided document. |
| issueDate | string <YYYY-MM-DD> Issue date of the document. |
| expireDate | string <YYYY-MM-DD> Expiry date of the document. |
| note | string <= 255 characters |
| translationFiles | Array of strings
|
{- "verificationId": "string",
- "associateId": "string",
- "type": "ID_CARD",
- "files": [
- "string"
], - "documentId": "string",
- "documentNumber": "string",
- "issueDate": "string",
- "expireDate": "string",
- "note": "string",
- "translationFiles": [
- "string"
]
}{- "status": {
- "statusCode": "string",
- "severity": "string",
- "code": "string",
- "codeLiteral": "string",
- "statusDesc": "string"
}
}Create an order for the verification transfer service. In response you will be provided with the bank account details to make the transfer.
| Content-Type required | string Example: application/json Content type |
| Authorization required | string Example: Bearer 3e5cac39-7e38-4139-8fd6-30adc06a61bd Auth token |
| verificationId required | string <= 18 characters Unique id of the verification provided by PayU. |
| transferCurrency | string |
string | |
| language | string Changes the language of the sent email message. Possible values you can find in languages table. |
{- "verificationId": "verification-123",
- "transferCurrency": "PLN",
- "email": "user@example.com",
- "language": "string"
}{- "verificationTransferId": "5f7007da-8e05-4f0f-9503-05c053034bde",
- "expirationTime": "2020-08-20T14:03:44.473Z",
- "transferData": {
- "bankName": "mBank S.A.",
- "accountNumber": "PL12114011243630011718031748",
- "swiftCode": "BREXPLPW",
- "recipientName": "PayU S.A.",
- "recipientAddress": "ul. Grunwaldzka 186, 60-166 Poznań",
- "transferTitle": "Verification transfer XX1718031748XX",
- "transferAmount": 101,
- "transferCurrency": "PLN"
}
}Send bank account data for the payouts.
| Content-Type required | string Example: application/json Content type |
| Authorization required | string Example: Bearer 3e5cac39-7e38-4139-8fd6-30adc06a61bd Auth token |
| bankDataId required | string <= 100 characters Id of the bank account details assigned by marketplace. |
| verificationId required | string <= 18 characters Id of verification in context of which data are provided. |
| accountNumberRequested required | string <IBAN> <= 255 characters Bank account number declared for withdrawals by submerchant. |
| hasDocument | string Enum: true false Flag informing that this bank account for payouts should be verified on base of bank document. It must be set to true when the method used is "BANK_STATEMENT". |
| payoutDataVerificationType required | string Enum: "LIAN_LIAN" "PINGPONG" "OFX" "BANK_STATEMENT" "BANK_TRANSFER" "NO_VERIFICATION_NEEDED" Type of verification used for the provided payout details verification. Different for each verification type:
|
| foreign required | string Enum: true false Foreign Transfer Indicator. Has to be For domestic transfers set this parameter to
|
| verificationTransferId required | string <= 255 characters Have to be indicated in request with declared payouts data. Payouts data need to be declared in 72 hours from above request/response. |
| verified required | string parameter indicating whether the bank account number was already verified e.g. by another provider. If set to false and the verification type is other than "NO_VERIFICATION_NEEDED" PayU must verify the bank account details. |
{- "bankDataId": "01102020",
- "verificationId": "verification-123",
- "accountNumberRequested": "PL1122334455667788991010111223345",
- "hasDocument": "true",
- "payoutDataVerificationType": "BANK_STATEMENT",
- "foreign": "false",
- "verificationTransferId": "5f7007da-8e05-4f0f-9503-05c053034bde",
- "verified": "false"
}{- "status": {
- "statusCode": "string",
- "severity": "string",
- "code": "string",
- "codeLiteral": "string",
- "statusDesc": "string"
}
}Send bank account data for the payouts. Method is reserved for the users who have verified Payoneer account.
| Content-Type required | string Example: application/json Content type |
| Authorization required | string Example: Bearer 3e5cac39-7e38-4139-8fd6-30adc06a61bd Auth token |
| bankDataId required | string <= 100 characters Id of the bank account details assigned by marketplace. |
| verificationId required | string <= 18 characters Unique id of the verification provided by PayU. |
| payoneerId required | string <= 50 characters Id of the account of the submerchant in the Payoneer. |
{- "bankDataId": "acc1sd",
- "verificationId": "hfs6sfa",
- "payoneerId": "string"
}{- "status": {
- "statusCode": "string",
- "severity": "string",
- "code": "string",
- "codeLiteral": "string",
- "statusDesc": "string"
}
}Send bank account data for the payouts. Method is reserved for the users who have verified Worldfirst account.
| Content-Type required | string Example: application/json Content type |
| Authorization required | string Example: Bearer 3e5cac39-7e38-4139-8fd6-30adc06a61bd Auth token |
| bankDataId required | string <= 100 characters Id of the bank account details assigned by marketplace. |
| verificationId required | string <= 18 characters Unique id of the verification provided by PayU. |
| referenceCustomerId required | string Id of the account binding between the marketplace and the WorldFirst. |
{- "bankDataId": "acc1sd",
- "verificationId": "hfs6sfa",
- "referenceCustomerId": "string"
}{- "status": {
- "statusCode": "string",
- "severity": "string",
- "code": "string",
- "codeLiteral": "string",
- "statusDesc": "string"
}
}Inform PayU about completing verification process.
| Content-Type required | string Example: application/json Content type |
| Authorization required | string Example: Bearer 3e5cac39-7e38-4139-8fd6-30adc06a61bd Auth token |
| verificationId required | string <= 18 characters Unique id of the verification provided by PayU. |
{- "verificationId": "hfs6sfa"
}{- "status": {
- "statusCode": "string",
- "severity": "string",
- "code": "string",
- "codeLiteral": "string",
- "statusDesc": "string"
}
}Cancel verification on every step of verification providing the reason.
| Content-Type required | string Example: application/json Content type |
| Authorization required | string Example: Bearer 3e5cac39-7e38-4139-8fd6-30adc06a61bd Auth token |
| verificationId required | string <= 18 characters Unique id of the verification provided by PayU. |
| rejectionReasonComment | string Reason for cancelling verification. |
{- "verificationId": "hfs6sfa",
- "rejectionReasonComment": "string"
}{- "status": {
- "statusCode": "string",
- "severity": "string",
- "statusDesc": "string"
}
}Retrieve available card installments options for specific card. For merchants operating on the Romanian market (Requires contact with a Payu representative first).
Retrieve available card installments options for specific card. For merchants operating on the Romanian market (Requires contact with a Payu representative first).
| Content-Type required | string Example: application/json Content type |
| cardBin required | string Card BIN to retrieve card installments data. |
| posId required | string Amount of the transaction for which you want to retrieve available installments options. |
{- "cardBin": "5364477839",
- "posId": "203018"
}{- "numbers": [
- 1,
- 6,
- 12
], - "provider": "BRD_INSTALLMENTS",
- "settings": {
- "minAmount": 60000
}
}Statements in PayU are comprehensive reports that provide a detailed summary of completed purchase transactions, refunds, and payouts.
In response to retrieving a statement via the API, PayU returns a statement file (as indicated by the Content-Type=application/octet-stream) in the Content-Disposition header. You should take this attached binary data and save it with the same name and file extension.
For example, if the value of the Content-Disposition header is attachment; filename="69e45495-bed9-4824-ace9-f7c191449bbb.zip", then you should save the attached data on your computer with the same name 69e45495-bed9-4824-ace9-f7c191449bbb.zip.
| reportId required | string Example: "4a3534fb-85b5-4f29-9da8-a6d73b34d528" |
| Content-Type required | string Example: application/json Content type |
| Authorization required | string Example: Bearer 3e5cac39-7e38-4139-8fd6-30adc06a61bd Auth token |
Below are the endpoints that enable you to create the necessary entities (Firm, Url, Shop, POS) for your partner.
Create a Firm entity for your partner.
| Content-Type required | string Example: application/json Content type |
| Authorization required | string Example: Bearer 3e5cac39-7e38-4139-8fd6-30adc06a61bd Auth token with |
| name required | string Full legal name. |
| type required | string Dictionary value - legal entity type. Dictionaries for specific origin are available here. For a firm which |
| taxId required | string Tax identification. |
| taxIdType required | string Enum: "NIP" "VAT_EU" "TAX_ID" Type of tax identification. |
| cin required | string Business identification. IČ (CZ) or REGON (PL). |
| bankAccount required | string <IBAN> Primary bank account to receive payouts for payments. Will be inherited by all shops created for this firm. Must be a valid IBAN number in case of firms with PL origin. Different bank account maybe defined at shop level manually, via PayU merchant panel. |
| partnerId required | string Your partner id. |
| contactLanguage | string Enum: "EN" "PL" "CS" "RO" Preferred language for communication. |
required | object Business area of the registered firm. |
required | Array of objects Array of PayU panel users. At least 1 must be provided. |
required | Array of objects Array of firm legal representatives. At least 1 must be provided. |
required | object Object containing firm's contact details. |
| technicalContactData | object Object containing firm's technical contact details (e.g. to the developer responsible for integration with PayU). |
required | object Firm's registration address. |
object Firm's correspondence address (if other than registration address). This object the same fields as address. |
{- "name": "Test sp. z o.o.",
- "type": "SO",
- "taxId": "3771910486",
- "taxIdType": "NIP",
- "cin": "138237420",
- "bankAccount": "PL92906300080597567560803897",
- "partnerId": "egmcvdo5",
- "contactLanguage": "PL",
- "businessArea": {
- "origin": "PL"
}, - "users": [
- {
- "name": "Jan",
- "surname": "Nowak",
- "email": "jan.nowak@testowa.pl",
- "phone": 123123123,
- "role": "MANAGER"
}
], - "representatives": [
- {
- "name": "Jan",
- "surname": "Nowak",
- "nin": 80010104578,
- "countryCode": "PL",
- "birthDate": "2000-01-01",
- "birthCountryCode": "pl"
}
], - "contactData": {
- "phone": 123123123,
- "email": "biuro@testowa.pl"
}, - "technicalContactData": { },
- "address": {
- "street": "Grunwaldzka",
- "houseNo": 186,
- "apartmentNo": 1,
- "postalCode": "61-166",
- "city": "Poznań",
- "countryCode": "PL"
}, - "correspondenceAddress": {
- "street": "Grunwaldzka",
- "houseNo": 186,
- "apartmentNo": 1,
- "postalCode": "61-166",
- "city": "Poznań",
- "countryCode": "PL"
}
}{- "firmId": "KzXy4ZzD"
}Create a URL for the specified firmId.
| firmId required | string Example: "KzXy4ZzD" Firm identifier retrieved after firm creation. |
| Content-Type required | string Example: application/json Content type |
| Authorization required | string Example: Bearer 3e5cac39-7e38-4139-8fd6-30adc06a61bd Auth token with |
| value required | string URL address. |
| mcc | string Merchant Category Code (value is validated). Data type |
required | Array of objects Array of service types. |
{- "mcc": "0742",
- "services": [
- {
- "type": "TRANSFERS"
}
]
}{- "urlId": "PItR5x0v"
}Create a Shop for the specified firmId.
| firmId required | string Example: "KzXy4ZzD" Firm identifier retrieved after firm creation. |
| Content-Type required | string Example: application/json Content type |
| Authorization required | string Example: Bearer 3e5cac39-7e38-4139-8fd6-30adc06a61bd Auth token with |
| name required | string Shop name - will be visible in the merchant panel. |
| description | string Shop description - more detailed info, visible in the merchant panel. |
| currencyCode required | string Must be a three-letter ISO 4217 currency code. Please contact your key account manager to get more information about available currencies. |
| urlId required | string Reference to previously created URL. |
{- "name": "Shop name",
- "description": "Shop description",
- "currencyCode": "EUR",
- "urlId": "PItR5x0v"
}{- "shopId": "ycmGyfCv"
}Create a POS, for your partner, for the specified shopId.
| shopId required | string Example: "Shop identifier retrieved after shop creation." |
| Content-Type required | string Example: application/json Content type |
| Authorization required | string Example: Bearer 3e5cac39-7e38-4139-8fd6-30adc06a61bd Auth token with |
| name required | string Name of the created POS. |
| type required | string Type of the created POS. |
{- "name": "Test POS",
- "type": "REST"
}{- "posId": "JyoMIVTY"
}Retrieve data of the POS with specified posId.
| posId required | string Example: "POS identifier retrieved after POS creation." |
| Content-Type required | string Example: application/json Content type |
| Authorization required | string Example: Bearer 3e5cac39-7e38-4139-8fd6-30adc06a61bd Auth token with |
{- "posId": "JyoMIVTY",
- "type": "REST",
- "name": "Test POS",
- "encoding": "UTF-8",
- "authorization": {
- "standard": {
- "merchantPosId": "385234",
- "key": "9c0041e05fdee99749de4c2d2ce4c66e\"",
- "secondKey": "f096a39d78fbe03b8d23dde43b728cfd",
- "authKey": "uHcZ9Ly"
}
}
}Create an additional User for your partner.
| firmId required | string Example: "KzXy4ZzD" Firm identifier retrieved after firm creation. |
| Content-Type required | string Example: application/json Content type |
| Authorization required | string Example: Bearer 3e5cac39-7e38-4139-8fd6-30adc06a61bd Auth token with |
required | object | ||||||||||
| |||||||||||
{- "user": {
- "name": "Joe",
- "surname": "Doe",
- "email": "joe.doe@test.com",
- "phone": "string",
- "role": "manager"
}
}{- "userId": "2e629a11-8add-49c5-bf27-a7f684721b86"
}Payment Facilitator (PF) is an advanced form of partnership where PayU cedes much of its own responsibilities, like e.g. Know Your Customer (KYC) and verification, customer support and settlement (payouts) to the PF. Below are the endpoints for registering and handling PF submerchants.
| firmPublicId required | string Firm id in alphanumeric format, visible in the merchant panel. |
| Content-Type required | string Example: application/json Content type |
| Authorization required | string Example: Bearer 3e5cac39-7e38-4139-8fd6-30adc06a61bd Auth token |
| payTypeCategories | Array of strings Array of enumerated values: |
| externalId required | string Id assigned by the Payment Facilitator. |
| notifyUrl required | string Notifications regarding submerchant status change will be sent to address provided in this field. |
| legalName required | string Full legal (registration) name. |
| dbaName required | string "Doing business as" name, usually simplified website address which can be recognized by customer (e.g. when displayed on card statement). |
required | object Legal address object. |
| phone required | string Contact phone number. |
| websiteUrl required | string A valid URL address of merchant's website. |
| mcc required | number Accurate Merchant Category Code established during KYC process by the PF. |
| riskClass required | string Enum: "LOW" "NORMAL" "HIGH" Risk class assigned by Payment Facilitator (basing on requirements provided by PayU). |
required | Array of objects Array of either principals or enterprise owners (depends on legal form). Minimum one is required. |
| legalForm required | string Enum: "FU" "FZ" "IB" "JST" "KOP" "PO" "PP" "PPZ" "PRPA" "SA" "SC" "SD" "SIK" "SJ" "SK" "SO" "SP" "SPOL" "ST" Dictionary value - legal entity type. Check dictionaries for specific origin. |
| taxId required | string Tax identification (e.g. NIP in Poland) or business identification (e.g. IČ in Czechia). |
| agreementDate required | string <yyyy-mm-dd> Date when PF signed agreement with the submerchant (required by Visa for reporting purposes). |
{- "payTypeCategories": "Card",
- "externalId": "string",
- "notifyUrl": "string",
- "legalName": "string",
- "dbaName": "string",
- "address": {
- "street": "string",
- "city": "string",
- "postalCode": "string",
- "countryCode": "string"
}, - "phone": "string",
- "websiteUrl": "string",
- "mcc": 0,
- "riskClass": "LOW",
- "representatives": [
- {
- "name": "string",
- "phone": "string"
}
], - "legalForm": "FU",
- "taxId": "string",
- "agreementDate": "string"
}{- "id": "string",
- "externalId": "string",
- "status": "NOT_ACTIVE",
- "lastUpdated": "string",
- "notifyUrl": "string",
- "legalName": "string",
- "dbaName": "string",
- "address": {
- "street": "string",
- "city": "string",
- "postalCode": "string",
- "countryCode": "string"
}, - "phone": "string",
- "websiteUrl": "string",
- "mcc": 0,
- "riskClass": "LOW",
- "taxId": "string",
- "representatives": [
- {
- "name": "string",
- "phone": "string"
}
], - "legalForm": "string",
- "agreementDate": "string",
- "payTypeCategories": "string"
}| firmPublicId required | string Firm id in alphanumeric format, visible in the merchant panel. |
| submerchantId required | string Id returned by PayU upon submerchant registration. |
| Content-Type required | string Example: application/json Content type |
| Authorization required | string Example: Bearer 3e5cac39-7e38-4139-8fd6-30adc06a61bd Auth token |
| payTypeCategories | Array of strings Array of enumerated values: |
| externalId required | string Id assigned by the Payment Facilitator. |
| notifyUrl required | string Notifications regarding submerchant status change will be sent to address provided in this field. |
| legalName required | string Full legal (registration) name. |
| dbaName required | string "Doing business as" name, usually simplified website address which can be recognized by customer (e.g. when displayed on card statement). |
required | object Legal address object. |
| phone required | string Contact phone number. |
| websiteUrl required | string A valid URL address of merchant's website. |
| mcc required | number Accurate Merchant Category Code established during KYC process by the PF. |
| riskClass required | string Enum: "LOW" "NORMAL" "HIGH" Risk class assigned by Payment Facilitator (basing on requirements provided by PayU). |
required | Array of objects Array of either principals or enterprise owners (depends on legal form). Minimum one is required. |
| legalForm required | string Enum: "FU" "FZ" "IB" "JST" "KOP" "PO" "PP" "PPZ" "PRPA" "SA" "SC" "SD" "SIK" "SJ" "SK" "SO" "SP" "SPOL" "ST" Dictionary value - legal entity type. Check dictionaries for specific origin. |
| taxId required | string Tax identification (e.g. NIP in Poland) or business identification (e.g. IČ in Czechia). |
| agreementDate required | string <yyyy-mm-dd> Date when PF signed agreement with the submerchant (required by Visa for reporting purposes). |
{- "payTypeCategories": "Card",
- "externalId": "string",
- "notifyUrl": "string",
- "legalName": "string",
- "dbaName": "string",
- "address": {
- "street": "string",
- "city": "string",
- "postalCode": "string",
- "countryCode": "string"
}, - "phone": "string",
- "websiteUrl": "string",
- "mcc": 0,
- "riskClass": "LOW",
- "representatives": [
- {
- "name": "string",
- "phone": "string"
}
], - "legalForm": "FU",
- "taxId": "string",
- "agreementDate": "string"
}{- "id": "string",
- "externalId": "string",
- "status": "NOT_ACTIVE",
- "lastUpdated": "string",
- "notifyUrl": "string",
- "legalName": "string",
- "dbaName": "string",
- "address": {
- "street": "string",
- "city": "string",
- "postalCode": "string",
- "countryCode": "string"
}, - "phone": "string",
- "websiteUrl": "string",
- "mcc": 0,
- "riskClass": "LOW",
- "taxId": "string",
- "representatives": [
- {
- "name": "string",
- "phone": "string"
}
], - "legalForm": "string",
- "agreementDate": "string",
- "payTypeCategories": "string"
}| firmPublicId required | string Firm id in alphanumeric format, visible in the merchant panel. |
| submerchantId required | string Id returned by PayU upon submerchant registration. |
| Content-Type required | string Example: application/json Content type |
| Authorization required | string Example: Bearer 3e5cac39-7e38-4139-8fd6-30adc06a61bd Auth token |
{- "id": "string",
- "externalId": "string",
- "status": "NOT_ACTIVE",
- "lastUpdated": "string",
- "notifyUrl": "string",
- "legalName": "string",
- "dbaName": "string",
- "address": {
- "street": "string",
- "city": "string",
- "postalCode": "string",
- "countryCode": "string"
}, - "phone": "string",
- "websiteUrl": "string",
- "mcc": 0,
- "riskClass": "LOW",
- "taxId": "string",
- "representatives": [
- {
- "name": "string",
- "phone": "string"
}
], - "legalForm": "string",
- "agreementDate": "string",
- "payTypeCategories": "string"
}