Przelewy24 BLIK API

The BLIK API API from Przelewy24 — 4 operation(s) for blik api.

Operations 4

POST /api/v1/paymentMethod/blik/chargeByCode BLIK charge by code #
POST /api/v1/paymentMethod/blik/chargeByAlias BLIK charge by Alias #
GET /api/v1/paymentMethod/blik/getAliasesByEmail/{email} Getting Aliases ByEmail #
GET /api/v1/paymentMethod/blik/getAliasesByEmail/{email}/custom Getting Aliases ByEmail (Custom) #

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/przelewy24-blik-api-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

przelewy24-blik-api-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Przelewy24 BLIK API
  contact:
    name: Przelewy24 Support
    url: https://www.przelewy24.pl/support
  x-refined-note:
  - x-logo differs across the merged source definitions and was not carried
  version: '1.0'
  description: 'Operations tagged BLIK API across 2 of this provider''s published API definitions: openapi-extended.yml, openapi.yml. Each path carries the servers of the definition it was published in.'
servers:
- url: https://sandbox.przelewy24.pl
  description: Sandbox server (uses test data)
- url: https://secure.przelewy24.pl
  description: Production server (uses live data)
tags:
- name: BLIK API
paths:
  /api/v1/paymentMethod/blik/chargeByCode:
    post:
      tags:
      - BLIK API
      summary: BLIK charge by code
      description: Allows to charge blik transaction with T6 code. Returns unique transaction Id.
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/RecurringParams'
      responses:
        '201':
          description: Created
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/BlikChargeByCodeResponse'
        '400':
          description: Invalid input data
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/InvalidInputData'
        '401':
          description: not authorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UnauthorizedResponse'
        '500':
          description: Undefined error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorCodeResponse'
      security:
      - basicAuth: []
      operationId: postApiV1PaymentMethodBlikChargeByCode
      x-operation-id-source: derived
    servers:
    - url: https://sandbox.przelewy24.pl
      description: Sandbox server (uses test data)
    - url: https://secure.przelewy24.pl
      description: Production server (uses live data)
  /api/v1/paymentMethod/blik/chargeByAlias:
    post:
      tags:
      - BLIK API
      summary: BLIK charge by Alias
      description: ChargeByAlias is a one click payment method. It allows to charge customer using a previously obtained alias (**getAliasesByEmail**). Alias obtained must be provided in methodRefId parameter during transaction registration
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/BlikOneClick'
      responses:
        '201':
          description: Created
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/BlikChargeByCodeResponse'
        '400':
          description: Bad request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/InvalidInputData'
        '401':
          description: Not authorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UnauthorizedResponse'
        '409':
          description: AlternativeKeys
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ChargeByAlias409'
        '500':
          description: Undefined error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorCodeResponse'
      security:
      - basicAuth: []
      operationId: postApiV1PaymentMethodBlikChargeByAlias
      x-operation-id-source: derived
    servers:
    - url: https://sandbox.przelewy24.pl
      description: Sandbox server (uses test data)
    - url: https://secure.przelewy24.pl
      description: Production server (uses live data)
  /api/v1/paymentMethod/blik/getAliasesByEmail/{email}:
    get:
      tags:
      - BLIK API
      summary: Getting Aliases ByEmail
      description: 'In order to receive an alias for subsequent payments, call the "getAliasesByEmail" method.


        The method returns a list of aliases (along with the type and status) created for a given email address in the scope of a given merchant.'
      parameters:
      - name: email
        in: path
        description: For aliases registered by email address
        required: true
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Transaction200Blik'
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/InvalidInputData'
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UnauthorizedResponse'
        '404':
          description: Alias not found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TransactionNotFoundResponse'
      security:
      - basicAuth: []
      operationId: getApiV1PaymentMethodBlikGetAliasesByEmailByEmail
      x-operation-id-source: derived
    servers:
    - url: https://sandbox.przelewy24.pl
      description: Sandbox server (uses test data)
    - url: https://secure.przelewy24.pl
      description: Production server (uses live data)
  /api/v1/paymentMethod/blik/getAliasesByEmail/{email}/custom:
    get:
      tags:
      - BLIK API
      summary: Getting Aliases ByEmail (Custom)
      description: 'In order to receive an alias for subsequent payments, call the "getAliasesByEmail" method.


        The method returns a list of aliases (along with the type and status) created for a given email address in the scope of a given merchant.'
      parameters:
      - name: email
        in: path
        description: For Aliases registered with values <b><i><b>"aliasValue"</b></b></i> and <b><i><b>"aliasLabel"</b></b></i>
        required: true
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Transaction200Blik'
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/InvalidInputData'
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UnauthorizedResponse'
        '404':
          description: Alias not found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TransactionNotFoundResponse'
      security:
      - basicAuth: []
      operationId: getApiV1PaymentMethodBlikGetAliasesByEmailByEmailCustom
      x-operation-id-source: derived
    servers:
    - url: https://sandbox.przelewy24.pl
      description: Sandbox server (uses test data)
    - url: https://secure.przelewy24.pl
      description: Production server (uses live data)
components:
  schemas:
    BlikAlias200:
      properties:
        value:
          type: string
          description: alias value
        type:
          type: string
          description: alias type
        status:
          type: string
          description: alias status
        expirationDate:
          type: string
          description: alias expiration date
    Transaction200Blik:
      properties:
        data:
          description: Array of objects related to the BLIK alias
          items:
            $ref: '#/components/schemas/BlikAlias200'
        responseCode:
          type: integer
          default: 0
    InvalidInputData:
      properties:
        error:
          type: string
          default: Invalid input data
          example: Invalid input data
        code:
          type: number
          default: 400
          example: 400
    BlikOneClick:
      type: object
      required:
      - token
      - type
      discriminator:
        propertyName: type
        mapping:
          alias: '#/components/schemas/Alias'
          alternativeKey: '#/components/schemas/Alternativekey'
      properties:
        token:
          type: string
          description: Token obtained during transaction registration request via <b><a href="#tag/Transaction-service-API/paths/~1api~1v1~1transaction~1register/post">transaction/register</a></b>. <br> <br> <b><font color = "#DB2053">IMPORTANT!:</font></b><br> In order to correctly charge the payer using the blikChargeByAlias method the <b>PSU</b> object must be sent in the <b>additional</b> object in the <b><a href="#tag/Transaction-service-API/paths/~1api~1v1~1transaction~1register/post">transaction/register</a></b> request.
        type:
          type: string
        aliasValue:
          type: string
          description: <b> Warning! If you send the parameter it will result in overwriting the current value. </b> <br/> Unique alias of the user which can be used to charge client's next transactions
        aliasLabel:
          type: string
          description: <b> Warning! If you send the parameter it will result in overwriting the current value. </b> <br/> Alias label displayed in the app
        recurring:
          description: null
          $ref: '#/components/schemas/RecurringParamsIn'
    RecurringParams:
      type: object
      properties:
        token:
          type: string
          description: Token obtained during transaction registration request via <b><a href="#tag/Transaction-service-API/paths/~1api~1v1~1transaction~1register/post">transaction/register</a></b>. <br> <br> <b><font color = "#DB2053">IMPORTANT!:</font></b><br> In order to correctly charge the payer using the blikChargeByCode method the <b>PSU</b> object must be sent in the <b>additional</b> object in the <b><a href="#tag/Transaction-service-API/paths/~1api~1v1~1transaction~1register/post">transaction/register</a></b> request.
        blikCode:
          type: string
          description: 6-digit, one-time BLIK code generated in the app
        aliasValue:
          type: string
          description: Unique alias of the user which can be used to charge client's next transactions. <br><br><b><font color = "#DB2053">IMPORTANT!:</font></b> Parameter <b>required</b> if a `recurring` object was sent in the request.
        aliasLabel:
          type: string
          description: Alias label displayed in the app. <br><br><b><font color = "#DB2053">IMPORTANT!:</font></b> Parameter <b>required</b> if a `recurring` object was sent in the request.
          minLength: 5
          maxLength: 35
        recurring:
          type: object
          $ref: '#/components/schemas/RecurringParamsIn'
      required:
      - token
      - blikCode
    alternativeKeysItem:
      properties:
        label:
          type: string
        alias:
          type: string
    RecurringParamsIn:
      description: 'An object containing information on BLIK recurring payment.

        <div id="note">  The recurring payment functionality is not enabled by default. Contact the Technical Service Department via <a href="https://www.przelewy24.pl/en/help-center/api-technical-support/is-your-question-not-answered"><b>contact form</b></a>, in order to launch the service.  </div>

        '
      type: object
      discriminator:
        propertyName: type
        mapping:
          O: '#/components/schemas/RecurringParametersO'
          M: '#/components/schemas/RecurringParametersM'
          A: '#/components/schemas/RecurringParametersA'
      properties:
        type:
          type: string
          name: type
          enum:
          - M
          - A
          - O
          description: 'The type of recurring payment; allowed values: A, O, M'
          in: formData
          default: M
        expirationDate:
          type: string
          description: 'Allowed format: YYYY-MM-DD hh:mm:ss'
        frequency:
          type: string
          description: 'Frequency of the recurrency; value must fulfill regex: [1-9][0-9]{0,2}[DWMY])'
        totalLimitAmount:
          type: integer
          description: Maximum total amount that will be charged through the process
        limitAmount:
          type: integer
          description: Maximum amount that will be charged in a single payment
        totalLimitCount:
          type: integer
          description: Number of payments that will be issued in the whole process
        minimumTime:
          type: boolean
          description: Parametr to control min flag
          default: true
        availableBanks:
          description: Parameter to control the verification of whether the bank supports recursion. If set to false, it is not checked if the bank supports recursion.
          default: true
          type: boolean
    TransactionNotFoundResponse:
      properties:
        error:
          type: string
          default: Transaction not found
          example: Transaction not found
        responseCode:
          type: number
          default: 0
          example: 0
    BlikChargeByCodeResponse:
      properties:
        data:
          properties:
            orderId:
              type: integer
              format: int64
            message:
              type: string
          type: object
        responseCode:
          type: number
          default: 0
    ChargeByAlias409:
      properties:
        error:
          type: object
          properties:
            message:
              type: string
            alternativeKeys:
              type: array
              items:
                $ref: '#/components/schemas/alternativeKeysItem'
        code:
          type: integer
          example: 51
    ErrorCodeResponse:
      properties:
        error:
          type: string
          example: Undefined error
          default: Undefined error
        code:
          type: integer
          example: 500
          default: 500
      type: object
    UnauthorizedResponse:
      properties:
        error:
          type: string
          default: Incorrect authentication
          example: Incorrect authentication
        code:
          type: number
          default: 401
          example: 401
    BlikOneClick_2:
      type: object
      required:
      - token
      - type
      discriminator:
        propertyName: type
        mapping:
          alias: '#/components/schemas/Alias'
          alternativeKey: '#/components/schemas/Alternativekey'
      properties:
        token:
          type: string
          description: Token obtained during transaction registration request via <b><a href="#tag/Transaction-service-API/paths/~1api~1v1~1transaction~1register/post">transaction/register</a></b>. <br> <br> <b><font color = "#DB2053">IMPORTANT!:</font></b><br> In order to correctly charge the payer using the blikChargeByAlias method the <b>PSU</b> object must be sent in the <b>additional</b> object in the <b><a href="#tag/Transaction-service-API/paths/~1api~1v1~1transaction~1register/post">transaction/register</a></b> request.
        type:
          type: string
        aliasValue:
          type: string
          description: <b> Warning! If you send the parameter it will result in overwriting the current value. </b> <br/> Unique alias of the user which can be used to charge client's next transactions. <br><br><b><font color = "#DB2053">IMPORTANT!:</font></b> Parameter <b>required</b> if a `recurring` object was sent in the request.
        aliasLabel:
          type: string
          description: <b> Warning! If you send the parameter it will result in overwriting the current value. </b> <br/> Alias label displayed in the app. <br><br><b><font color = "#DB2053">IMPORTANT!:</font></b> Parameter <b>required</b> if a `recurring` object was sent in the request.
        recurring:
          description: null
          $ref: '#/components/schemas/RecurringParamsIn_2'
    RecurringParamsIn_2:
      description: 'An object containing information on BLIK recurring payment.

        <div id="note">  The recurring payment functionality is not enabled by default. Contact the Technical Service Department via <a href="https://www.przelewy24.pl/en/help-center/api-technical-support/is-your-question-not-answered"><b>contact form</b></a>, in order to launch the service.  </div>

        '
      type: object
      discriminator:
        propertyName: type
        mapping:
          O: '#/components/schemas/RecurringParametersO'
          M: '#/components/schemas/RecurringParametersM'
          A: '#/components/schemas/RecurringParametersA'
      properties:
        type:
          type: string
          name: type
          enum:
          - M
          - A
          - O
          description: 'The type of recurring payment; allowed values: A, O, M'
          in: formData
          default: M
        expirationDate:
          type: string
          description: 'Allowed format: YYYY-MM-DD hh:mm:ss'
        frequency:
          type: string
          description: 'Frequency of the recurrency; value must fulfill regex: [1-9][0-9]{0,2}[DWMY])'
        totalLimitAmount:
          type: integer
          description: Maximum total amount that will be charged through the process
        limitAmount:
          type: integer
          description: Maximum amount that will be charged in a single payment
        totalLimitCount:
          type: integer
          description: Number of payments that will be issued in the whole process
        minimumTime:
          type: boolean
          description: Parametr to control min flag
          default: true
        availableBanks:
          description: parameter to control the verification of whether the bank supports recursion. If set to false, it is not checked if the bank supports recursion.
          default: true
          type: boolean
  securitySchemes:
    basicAuth:
      description: This is the default authentication method. User and secretId are available in P24 panel:<br/>- "User" it's the same value as posId,<br/>- secretId it's the samevalue as key for reports (API key).
      type: http
      scheme: basic
x-refined-from:
- openapi-extended.yml
- openapi.yml
x-tagGroups:
- name: Methods available in API
  tags:
  - Ekspres P24 API
- name: Sign parameter
  tags:
  - Calculation of sign parameter
- name: Transfer
  tags:
  - Notifications on transfer status
  - Table of transfer statuses
  - Transfer scenarios