openapi: 3.1.0
info:
version: 2.1.0
title: PayU GPO Europe REST Authorize Shop API
license:
name: Apache 2.0
url: http://www.apache.org/licenses/LICENSE-2.0.html
x-logo:
url: https://poland.payu.com/wp-content/themes/global-website/assets/src/images/payu-logo.svg
description: '# Overview
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.
## Testing
### Production Environment
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 Environment
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.'
servers:
- url: https://secure.payu.com
description: Production Server
- url: https://secure.snd.payu.com
description: Sandbox Test Server
security:
- Bearer:
- client_credentials
tags:
- name: Shop
description: Shop is the main entity in the management panel. It is the place where you can manage incoming transactions processed by PayU.
paths:
/api/v2_1/shops/{shopId}:
get:
tags:
- Shop
summary: Retrieve Shop Data
operationId: retrieve-shop-data
description: Retrieve your PayU shop balance, id, etc.
parameters:
- name: shopId
in: path
example: a1B2C3x
description: ShopId value generated by PayU assigned to Shop
required: true
content:
application/json:
schema:
type: string
- name: Content-Type
in: header
description: Content type
required: true
schema:
type: string
style: simple
example: application/json
- name: Authorization
in: header
description: Auth token
required: true
schema:
type: string
style: simple
example: Bearer 3e5cac39-7e38-4139-8fd6-30adc06a61bd
responses:
'200':
x-summary: OK
description: ''
content:
application/json:
schema:
type: object
properties:
shopId:
type: string
description: ShopId value generated by PayU assigned to Shop.
example: a1B2C3x
name:
type: string
description: Shop name assigned by Merchant.
example: Test Shop
currencyCode:
type: string
description: ISO 4217 currency code of currency in which Shop balance is kept.
example: PLN
balance:
$ref: '#/components/schemas/balance'
'400':
x-summary: Error
description: ''
content:
application/json:
schema:
type: object
properties:
status:
type: object
properties:
statusCode:
type: string
example: ERROR
redirectUri:
type: string
example: '{payment_summary_redirection_url}'
'401':
x-summary: Unauthorized
description: ''
content:
application/json:
schema:
type: object
properties:
error:
type: string
error_description:
type: string
'404':
x-summary: Not Found
description: ''
content:
application/json:
schema:
type: object
properties:
status:
type: object
properties:
statusCode:
type: string
description: Error type.
severity:
type: string
statusDesc:
type: string
description: Error description.
components:
schemas:
balance:
type: object
description: Section containing Shop balance information.
properties:
currencyCode:
type: string
description: ISO 4217 currency code of currency in which Shop balance is kept.
example: PLN
total:
type: number
description: total balance of funds on Shop
example: 1234567890
available:
type: number
description: value of available funds that are under Merchant disposition, excluding funds locked by PayU system
example: 987654321
securitySchemes:
Bearer:
type: http
scheme: bearer
Basic:
type: http
scheme: basic