openapi: 3.1.0 info: version: 2.1.0 title: PayU GPO Europe REST Authorize Payment-Methods 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: Payment-Methods x-displayName: Payment Methods description: 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. paths: /api/v2_1/paymethods: get: tags: - Payment-Methods summary: Retrieve All Available Payment Methods. security: - Bearer: - client_credentials - trusted_merchant operationId: retrieve-payment-methods parameters: - name: lang in: query example: lang: pl description: Language code, ISO-639-1 compliant, determins language of description in name field required: false schema: type: string examples: lang: summary: lang parameter value example value: lang: pl - name: features in: query description: Determine the availability and parameters of specific features. required: false schema: type: string examples: features: summary: features parameter value example value: features: clickToPay - 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 description: Section containing payment methods available for the buyer. properties: blikTokens: $ref: '#/components/schemas/blikTokens' cardTokens: $ref: '#/components/schemas/cardTokens' payByLinks: $ref: '#/components/schemas/payByLinks' status: type: object properties: statusCode: type: string enum: - SUCCESS '401': x-summary: Unauthorized description: '' content: application/json: schema: $ref: '#/components/schemas/401' components: schemas: '401': type: object properties: status: type: object properties: statusCode: type: string description: Error type. code: type: string description: Identification code of specific error. codeLiteral: type: string description: Cause of the error. statusDesc: type: string description: Error description. visaFeature: type: object description: Click to Pay feature. title: visa properties: status: Enum: - ENABLED - DISABLED type: string description: Status of the Click to Pay feature for Visa. example: ENABLED dpaId: type: string description: Merchant ID in Visa Click to Pay. example: jI8iGo86 acquirerBIN: type: string description: Acquirer Bank Identification Number for Click to Pay transactions. example: 123456 acquirerMerchantId: type: string description: Acquirer Merchant ID for Click to Pay transactions. example: MARCH01 cardTokens: type: array description: Section containing saved card tokens items: type: object properties: value: type: string example: TOKC_XATB7DF8ACXYTVQIPLWTVPFRKQE brandImageUrl: type: string example: https://static.payu.com/images/mobile/visa.png preferred: type: boolean example: true status: type: string enum: - NEW - ACTIVE - EXPIRED example: ACTIVE cardExpirationYear: type: integer example: 2026 cardExpirationMonth: type: integer example: 7 cardNumberMasked: type: string example: 411111******1111 cardScheme: type: string example: VS cardBrand: type: string example: VISA blikTokens: type: array description: Section containing saved BLIK tokens items: type: object properties: value: type: string description: BLIK token value. type: type: string enum: - UID - PAYID description: Type of the token. Either UID for normal transactions or PAYID for recurring payments. brandImageUrl: type: string example: https://static.payu.com/images/mobile/logos/pbl_blik.png bankApplicationReferences: type: array description: Array containing objects about available installments options. items: type: object properties: key: type: string description: Unique key for assignment of particular banking application to a token. The value of this field is inserted in the order in payMethod.blikData.appKey field. example: 11111 label: type: string description: The value of the label for assigning a particular banking application to a token. A list of values for these fields is presented to the customer for selection when paying with the UID token. example: BLIK label recurring: type: object description: Contains information about the recurring payment. properties: aliasLabel: type: string description: BLIK recurring payment title. type: type: string description: Type of the recurring payment. enum: - O initializationDate: type: string description: Date of the first transaction in the recurring payment cycle without the customer confirmation. example: '2026-10-01T00:00:00+02:00' format: yyyy-MM-dd'T'HH:mm:ssXXX expirationDate: type: string description: Expiration date of the PAYID token. Maximum date is 10 years from the creation date of the token. If the value is not provided, token will be valid indifinitely. example: '2026-10-01T00:00:00+02:00' format: yyyy-MM-dd'T'HH:mm:ssXXX clickToPayFeature: type: object description: Click to Pay feature. title: clickToPay properties: brandImageUrl: type: string description: URL of the Click to Pay brand image. example: https://static.payu.com/images/mobile/logos/pbl_cpt_on.png mastercard: $ref: '#/components/schemas/mastercardFeature' visa: $ref: '#/components/schemas/visaFeature' mastercardFeature: type: object description: Click to Pay Mastercard feature. title: mastercard properties: status: enum: - ENABLED - DISABLED type: string description: Status of the Click to Pay feature for Mastercard. example: ENABLED dpaId: type: string description: Merchant ID in Mastercard Click to Pay. example: jI8iGo86 payByLinks: type: array description: Section containing available PayByLink payment methods items: type: object properties: value: type: string example: sgb description: payType value. You can find available values here. brandImageUrl: type: string example: https://static.payu.com/images/mobile/logos/pbl_sgb_off.png description: Link to logo graphic on PayU server. name: type: string example: SGB Bank description: Name of payType set by PayU status: type: string enum: - ENABLED - DISABLED - TEMPORARY_DISABLED example: DISABLED minAmount: type: number example: 50 maxAmount: type: number example: 99999999 features: type: object description: List of features available. properties: clickToPay: $ref: '#/components/schemas/clickToPayFeature' securitySchemes: Bearer: type: http scheme: bearer Basic: type: http scheme: basic