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