PayU Payment-Methods API

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.

OpenAPI Specification

payu-payment-methods-api-openapi.yml Raw ↑
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 <a href="/europe/docs/">PayU documentation</a>. 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 <a href="https://registration-merch-prod.snd.payu.com/boarding/#/registerSandbox/" target="_blank">create your own account</a> 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 <a href="https://status.snd.payu.com/" target="_blank">Status page</a>.


    **Testing Card Payments**


    In order to test card payments on sandbox, please use credentials displayed on the <a href="/europe/docs/testing/sandbox/" target="_blank">Sandbox</a> 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 <code>name</code> 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: <code>payType</code> value. You can find available values <b><a href="/europe/docs/get-started/introduction/#paymethods" target="_blank">here</a></b>.
          brandImageUrl:
            type: string
            example: https://static.payu.com/images/mobile/logos/pbl_sgb_off.png
            description: Link to <code><payType</code> logo graphic on PayU server.
          name:
            type: string
            example: SGB Bank
            description: Name of <code>payType</code> 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