Fizen API definition (latest)

Download OpenAPI specification:

Welcome

Fizen sp. z o.o. is a licensed entity with an entry in the AISP register obtained from the Polish Financial Supervision Authority (KNF), enabling the provision of the account information access service (AIS).

The offered FIZEN API solution enables business customers, with the consent of the account owner, to gain access to banking data in a standardised form. To do this, FIZEN API requires the consent of the account owner in the interface of the bank from which the data are to be made available. To perform this operation, FIZEN provides WIDGET FIZEN that can be placed on the page in the form of an iframe.

In addition, Fizen enables access to the technology of the Payment Initiation Service (PIS) for the entities who own a PISP licence using their production certificates.

Getting started

Access to API

Access to FIZEN API is secured with two-step authentication:

  • API KEY and TOKEN – these are confidential values provided by FIZEN that enable identification and connection with the FIZEN API infrastructure. The apiKey and token value are required with each request to the FIZEN API. The value should be placed in the request header as an apiKey and token.

  • IP ADDRESS – is the source of each request to the FIZEN API. Each query should be sent from a server with one public IP ADDRESS. Before starting the production use of FIZEN API, you must provide the IP ADDRESS of the server from which requests will be sent to FIZEN API. In the case of FIZEN API SANDBOX tests, the IP address is not verified.

For full communication with API FIZEN, we will also ask you to provide the url address to which we transfer the following parameters:

  • AIS service - state, userId, bankId, accounts[accountId], dateTime
  • PIS service - state, userId, bankId, paymentStatus, amount, userId, dateTime

Initiation of AIS and PIS process

Initiation of services for AIS and PIS are based on the authorization of the user consent granted in the bank interface for access to the bank account. PIS initiation is based on initiating and authorising domestic payment for the retail account. Access to the service is available from the API or WIDGET level.

Features

FIZEN API, with the account owner's consent, grants access to a variety of account types, including retail, company, and corporate accounts. It offers a comprehensive suite of features, such as domestic payments, future-dated payments, express transactions, bundled services, and recurring payments, all of which are provided for major commercial banks.

  • Poland:

    • PKO BP
    • Pekao SA
    • Santander Bank Polska
    • ING Bank Śląski
    • mBank
    • BNP Paribas Bank Polska S.A.
    • Bank Millennium
    • Alior Bank
    • Velo Bank
    • Credit Agricole
    • Bank Pocztowy
    • Bank Ochrony Środowiska
    • Nest Bank
    • Inteligo
  • Czech Republic:

    • Raiffeisen Czech Republic
    • Uni Credit Czech Republic
    • Komercni Banka
    • CSOB Czech Republic
    • Ceska sporitelna (Ersta)
    • Moneta Money Bank
  • Slovakia:

    • Slovenska Sporitelna
    • Slovakia Tatra Banka
    • Slovakia Raiffaisen
    • CSOB Banka
    • UniCredit
    • Prima Banka
  • Hungary:

    • Raiffeisenbank Hungary
    • Erste Bank Hungary
    • UniCredit Bank Hungary
  • Romania:

    • Raiffeisen Romania
    • Uni Credit Romania
    • Banca Comerciala Romana

FIZEN WIDGET

FIZEN WIDGET enables the complementary service of the end user by enabling the transfer of consent in the banking interface for access to data from the account.

  • It takes care of the user login to the banking interface. Confidential data such as login and password for end-user online banking will never pass through the client's server, thus eliminating the occurrence of security risks.
  • Integration is quick and easy

The process of giving consent by the user in the banking interface using FIZEN WIDGET is as follows:

Environments

FIZEN API Sandbox

Before the production connection, Fizen enables access to the test environment, which is connected to real banking environments in sandbox mode. The environment allows you to fully download the test information about the user's account in order to test our technology. When using FIZEN SANDBOX, access to FIZEN WIDGET and FIZEN API is given.

FIZEN API (sandbox) url address: https://api.sandbox.fizen.com/

To ensure the best possible user experience, we decided to make the following banks available in the test environment:

  • fizenbank (Our test bank implementation.)
  • ing
  • alior
  • mbank

Normal working hours for the sandbox environment are from 8 AM to 6 PM UTC Time. Outside of these hours, the environment enters a napping state. If you decide to interact with it during non-operational hours, the environment will require 2 to 5 minutes to start up after the initial interaction.

Test Data for bank sandboxes is available here

In order to obtain access, apiKey and a token, please contact us at contact@fizen.com

FIZEN API Production

In order to switch and gain access to the production FIZEN API environment, a request should be made by e-mail to contact@fizen.com along with the information about the IP ADDRESS that will be used to communicate with FIZEN API. After obtaining approval, the values of apiKey and a token will be sent to grant the establishment of production communication with the FIZEN API.

IP Addresses

Securing your scripts from potentially suspicious calls is advised. To achieve this, consider implementing IP address filtering for incoming connections.

You should be aware of the IP address ranges associated with Fizen servers:

Sandbox environment

IP: 34.118.93.200

Production environment

IP: 34.116.211.162, 34.118.70.53

State lifetime

The following table defines the lifetimes for the state depending on the type of operation

operation lifetime
AIS 200 days
PIS_DOMESTIC 30 days
PIS_EXPRESS 30 days
PIS_FUTURE executionDate + 30 days
CANCEL_PAYMENT 30 days
PIS_RECURRING endDate + 30 days
PIS_BUNDLE latest executionDate + 30 days

Notifications

Whenever the process of authorizing an account or ordering a transaction is successfully completed, information about it will be sent to a pre-configured endpoints with the help of the POST method.

To ensure correct communication via the POST method, three return addresses need to be configured:

  • Return address for the AIS service - dedicated for successful responses for account information access operations.

  • Return address for the PIS service - dedicated to handling successful responses for payment initialisation.

  • Return address for error handling - common to the AIS and PIS services, used when errors occur.

Each of these addresses should be configured individually to ensure the correct operation of the respective processes.

Once the operation is successful, the following parameters are transferred via POST endpoints:

For AIS Service:

parameter description
state A unique identifier used to maintain the state between the authorization request and the callback. Ensures the integrity of the flow.
userId The unique identifier of the user initiating the AIS request. It helps the system identify and authenticate the specific user accessing account data.
bankId The identifier of the bank selected by the user. Specifies which bank's account information is being accessed.
accounts A list of account identifiers (IBANs or other account numbers) requested by the user for access.

For PIS Service:

parameter description
state A unique identifier used to maintain the state between the authorization request and the callback. Ensures the integrity of the flow.
userId The unique identifier of the user initiating the AIS request. It helps the system identify and authenticate the specific user accessing account data.
bankId The identifier of the bank selected by the user. Specifies which bank's account information is being accessed.
paymentStatus The current status of the payment process. Indicates whether the payment is pending, completed, failed, or in progress.
amount The total amount of the payment to be processed, typically provided in the format of a decimal value with currency.
executionDate (Optional) The date on which the payment is scheduled to be executed. Format: YYYY-MM-DD

The above parameters are necessary to complete the operation under the selected service.

Parameters transfer takes place in the following way:

  • POST method - parameters are sent into the endpoint prepared on the client side. The endpoint has to take the following data structure:

    AIS service:
    
    {
    "state": "ExAmPlEsTaT-5e83-11ed-a320-856ce1faa777",
    "userId": "exampleUserId",
    "bankId": "exampleBankId",
    "accounts": [
      {
        "accountId": "ExampleAccountIIVzdweGpkUS95OTNnOTdxMXZrOEk0QjUwOU1tU2iMA=="
      },
      {
        "accountId": "ExampleAccountIS9INW53c2k0M2g1cHFiN3pSWlRpKVFg0TWl1bFBncQ=="
      }
    ]
    },
    
    PIS service:
    
      {
      "state": "ExAmPlEsTaTece1a4cb6-5e83-11ed-a320-856ce1faa777"
      "userId": "exampleUserId",
      "bankId": "exampleBankId",
      "paymentStatus": "examplePaymentStatus",
      "amount": "0.01",
      }
    

    Possible Payment Statuses:

    Status Description
    Submitted The payment has been successfully submitted and is awaiting execution.
    Scheduled The payment is scheduled for a future date and awaits the specified date.
    Pending The payment is pending further verification or approval before execution.
    InProgress The recurring payment is correctly defined and executed according to the schedule or Bundle payments include at least one transaction with a future date (applies to FIZEN API).
    RECURRING_PLANNED The recurring payment is correctly defined and executed according to the schedule (applies to FIZEN PAY).
    Cancelled The payment has been canceled by the user or the system before execution.
    Rejected The payment has been rejected and will not be executed.
    Done The payment has been successfully executed and recorded in the recipient's account.

Introduction

FizenPay is a payment page hosted by Fizen where users complete all the steps of the payment process: selecting the customer's bank, initializing the payment process, and redirecting to the bank service to allow the user to complete the payment. Payment is initiated through a dedicated endpoint, through this endpoint payment parameters are provided.

Payment Flow

The payment process begins with the generating of a payment link. The user clicks on the link and is redirected to a panel to select the bank from which he wants to make the payment. Image Alt Text

Once the payment is approved at the bank, the user is redirected to a screen with the status of the payment. Finally on the page we are expected to see a green status, which means that the payment was successful. Red x at the end means that payment failed. Once the final status is received, it also sends feedback to the addresses provided earlier.

Getting started

To start working with the payment gateway it is necessary to generate the access keys for this purpose contact us. In the next step it is necessary to create a transaction by executing api endpoint.

Generate Domestic Transaction

This endpoint allows to init payment process via Fizen Pay service. Initiating the payment process, it is necessary to provide some key information about the payment as well as information for subsequent payment processing like userId, callBack address. It is also possible to provide information about the recipient through the body parameters. The important thing is that if you want to specify them, you must specify all three.e.g. recipientName, recipientAddress, recipientAccountNumber

header Parameters
apiKey
required
string
Example: 9693455a2698ff0316f14da3c30a18c97a4d0000

Individual API key assigned by FIZEN enabling connection with FIZEN API

token
required
string
Example: ZzFkMDd4ZTM5MDUxMjI0ZTdmZjhjZTFkZjIxZGZiMWQ0OTZlYzc961==

Individual token assigned by FIZEN enabling connection with FIZEN API

Request Body schema: application/json
required
transferTitle
required
string([a-zA-Z0-9ęóąśłżźćńĘÓĄŚŁŻŹĆŃ\_\-\s\.\,\:\/])...

A unique identifier or reference for the transfer, such as an order number.

amount
required
string\d+\.\d{2}

The amount to be transferred, formatted as a string (e.g., "420.69").

userId
required
string([a-zA-Z0-9\_\-\s\.\:\/]){5,200}

The identifier associated with the user initiating the transfer (e.g., "USER_69420").

callbackSuccess
required
stringhttps\:\/\/.*

The callback URL for a successful transaction.

callbackFailure
required
stringhttps\:\/\/.*

The callback URL for a failed transaction.

recipientName
string([a-zA-Z0-9ęóąśłżźćńĘÓĄŚŁŻŹĆŃ\_\-\s\.\,\:\/])...

The name of the recipient (optional).

recipientAddress
string([a-zA-Z0-9ęóąśłżźćńĘÓĄŚŁŻŹĆŃ\_\-\s\.\,\:\/])...

The address of the recipient (optional).

recipientAccountNumber
string[A-Z]{2}\d{26}

The account number of the recipient (optional).

Responses

Request samples

Content type
application/json
{
  • "transferTitle": "string",
  • "amount": "string",
  • "userId": "string",
  • "callbackSuccess": "string",
  • "callbackFailure": "string",
  • "recipientName": "string",
  • "recipientAddress": "string",
  • "recipientAccountNumber": "string"
}

Response samples

Generate Recurring Transaction

This endpoint allows to init recurring payment process via Fizen Pay service. Initiating the recurring payment process, it is necessary to provide some key information about the payment as well as information for subsequent payment processing like userId, callback address, It is also possible to provide information about the recipient through the body parameters. The important thing is that if you want to specify them, you must specify all three.e.g. recipientName, recipientAddress, recipientAccountNumber.

For corporate accounts, certain banks require additional information.

Corporate Bank Accounts:

  • For PKO Bank corporate accounts, the parameter psuContextIdentifierValue is required. The client must obtain this psuContextIdentifierValue from the PKO online banking platform.
  • For Paribas and Credit Agricole corporate accounts, the parameter nip is required. This represents the company's tax identification number (NIP).
header Parameters
apiKey
required
string
Example: 9693455a2698ff0316f14da3c30a18c97a4d0000

Individual API key assigned by FIZEN enabling connection with FIZEN API

token
required
string
Example: ZzFkMDd4ZTM5MDUxMjI0ZTdmZjhjZTFkZjIxZGZiMWQ0OTZlYzc961==

Individual token assigned by FIZEN enabling connection with FIZEN API

Request Body schema: application/json
required
transferTitle
required
string([a-zA-Z0-9ęóąśłżźćńĘÓĄŚŁŻŹĆŃ\_\-\s\.\,\:\/])...

A unique identifier or reference for the transfer, such as an order number.

amount
required
string\d+\.\d{2}

The amount to be transferred, formatted as a string (e.g., "42.59").

period
required
stringMONTH
Enum: "DAY" "YEAR" "MONTH" "WEEK"

The payment frequency, formatted as an enum ("DAY", "YEAR","MONTH", "WEEK"). mBank is not available for DAY frequency.

startDate
required
string\d+\.\d{2}

A date the recurring payment start, formatted as a string (e.g., "2024-10-10").

endDate
required
string <date-time> \d+\.\d{2}

A date the recurring payment end, formatted as a string (e.g., "2025-10-10").

userId
required
string([a-zA-Z0-9\_\-\s\.\:\/]){5,200}

The identifier associated with the user initiating the transfer (e.g., "USER_69420").

callbackSuccess
required
stringhttps\:\/\/.*

The callback URL for a successful transaction.

callbackFailure
required
stringhttps\:\/\/.*

The callback URL for a failed transaction.

recipientName
string([a-zA-Z0-9ęóąśłżźćńĘÓĄŚŁŻŹĆŃ\_\-\s\.\,\:\/])...

The name of the recipient (optional).

recipientAddress
string([a-zA-Z0-9ęóąśłżźćńĘÓĄŚŁŻŹĆŃ\_\-\s\.\,\:\/])...

The address of the recipient (optional).

recipientAccountNumber
string[A-Z]{2}\d{26}

The account number of the recipient (optional).

linkExpirationDays
integer [ 1 .. 7 ]

The number of days the link remains valid, after which the link expires.

psuContextIdentifierValue
string

Required for corporate accounts at PKO Bank. The psuContextIdentifierValue must be obtained from the PKO online banking platform.

nip
string\d{10}

Required for corporate accounts at Paribas and Credit Agricole. The company's tax identification number (NIP).

Responses

Request samples

Content type
application/json
{
  • "transferTitle": "string",
  • "amount": "string",
  • "period": "DAY",
  • "startDate": "string",
  • "endDate": "2019-08-24T14:15:22Z",
  • "userId": "string",
  • "callbackSuccess": "string",
  • "callbackFailure": "string",
  • "recipientName": "string",
  • "recipientAddress": "string",
  • "recipientAccountNumber": "string",
  • "linkExpirationDays": 3,
  • "psuContextIdentifierValue": "PSU-123456789",
  • "nip": "1234567890"
}

Response samples

Generate Express Domestic Transaction

This endpoint allows to init express payment process via Fizen Pay service. Initiating the payment process, it is necessary to provide some key information about the payment as well as information for subsequent payment processing like userId, callBack address. It is also possible to provide information about the recipient through the body parameters. The important thing is that if you want to specify them, you must specify all three.e.g. recipientName, recipientAddress, recipientAccountNumber

header Parameters
apiKey
required
string
Example: 9693455a2698ff0316f14da3c30a18c97a4d0000

Individual API key assigned by FIZEN enabling connection with FIZEN API

token
required
string
Example: ZzFkMDd4ZTM5MDUxMjI0ZTdmZjhjZTFkZjIxZGZiMWQ0OTZlYzc961==

Individual token assigned by FIZEN enabling connection with FIZEN API

Request Body schema: application/json
required
transferTitle
required
string([a-zA-Z0-9ęóąśłżźćńĘÓĄŚŁŻŹĆŃ\_\-\s\.\,\:\/])...

A unique identifier or reference for the transfer, such as an order number.

amount
required
string\d+\.\d{2}

The amount to be transferred, formatted as a string (e.g., "420.69").

userId
required
string([a-zA-Z0-9\_\-\s\.\:\/]){5,200}

The identifier associated with the user initiating the transfer (e.g., "USER_69420").

callbackSuccess
required
stringhttps\:\/\/.*

The callback URL for a successful transaction.

callbackFailure
required
stringhttps\:\/\/.*

The callback URL for a failed transaction.

recipientName
string([a-zA-Z0-9ęóąśłżźćńĘÓĄŚŁŻŹĆŃ\_\-\s\.\,\:\/])...

The name of the recipient (optional).

recipientAddress
string([a-zA-Z0-9ęóąśłżźćńĘÓĄŚŁŻŹĆŃ\_\-\s\.\,\:\/])...

The address of the recipient (optional).

recipientAccountNumber
string[A-Z]{2}\d{26}

The account number of the recipient (optional).

Responses

Request samples

Content type
application/json
{
  • "transferTitle": "string",
  • "amount": "string",
  • "userId": "string",
  • "callbackSuccess": "string",
  • "callbackFailure": "string",
  • "recipientName": "string",
  • "recipientAddress": "string",
  • "recipientAccountNumber": "string"
}

Response samples

Banks List

A list of available banks for AIS and PIS services along with redirecting to the chosen bank interface

Banks List

List of available banks to authorise a consent for Account Information Service (AIS) and Payment Initiation Services (PIS)

header Parameters
apiKey
required
string
Example: 9693455a2698ff0316f14da3c30a18c97a4d0000

Individual API key assigned by FIZEN enabling connection with FIZEN API

token
required
string
Example: ZzFkMDd4ZTM5MDUxMjI0ZTdmZjhjZTFkZjIxZGZiMWQ0OTZlYzc961==

Individual token assigned by FIZEN enabling connection with FIZEN API

operationType
required
string
Enum: "AIS" "PIS_DOMESTIC" "PIS_RECURRING" "PIS_BUNDLE" "PIS_EXPRESS" "PIS_FUTURE"
Example: AIS

Specify service to access.

Responses

Request samples

curl --request GET \
--url 'https://api.sandbox.fizen.com/banks/list' \
--header 'apiKey: 9693455a2698ff0316f14da3c30a18c97a4d0000' \
--header 'token: ZzFkMDd4ZTM5MDUxMjI0ZTdmZjhjZTFkZjIxZGZiMWQ0OTZlYzc961==' \
--header 'operationType: AIS' \

Response samples

Content type
application/json
{}

Account Information Service

FIZEN API for AIS, or Account Information Service, provides individuals with access to information about their payment accounts. With AIS, you can conveniently monitor the real-time status of your finances through various third-party applications. This service empowers users to gain a holistic view of their financial transactions and balances, making it easier to manage their financial affairs and make informed decisions about their money. AIS is a key component of PSD2 (Payment Services Directive 2), promoting financial transparency and enhancing the user's ability to leverage innovative financial tools and services.

Start Linking Process

The process of gaining access to the user's account begins with the generation of redirect URL to the bank's interface, where the user can grant consent for access to their account information. After successfully completing the bank's process the user will be redirected to the specified redirect URL,and a callback with the relevant data will be sent.

State Grouping for Extended Banking Transaction Access

This feature allows grouping of consents (states) so that multiple states within the same group can share tokens, extending the time frame for fetching transactions beyond standard banking limits.

Purpose

  • Many banks impose strict time limits on transaction retrieval using a single consent (state).
  • For example, PKO BP allows only up to 4 hours, after which a new consent is required.
  • This solution will allow fetching transactions for at least 10 hours, which for PKO BP would require three separate consents for the same account.

How It Works

  • States will be grouped by the userId parameter.
  • To belong to the same group, states must have the same userId, bank, or client apiKey.
  • If a userId is not provided, the state will not be assigned to any group.

Implementation Approach

  • The solution should be transparent from the perspective of the API.
  • It may involve new endpoints or extending existing endpoints with optional parameters to support state grouping.

Expected Benefits

Extended transaction retrieval time beyond individual consent limits. ✅ Efficient token sharing across grouped states. ✅ Scalability for future expansion to additional banks.

path Parameters
redirectUri
required
string
Example: https%3A%2F%2redirectUri.com

The address of the page to which the user will be redirected after completing the data sharing authorization process

bankId
required
string
Example: alior

Bank identifier the user will authorize consent for Account Information Service (AIS) and Payment Initiation Services (PIS)

header Parameters
apiKey
required
string
Example: 9693455a2698ff0316f14da3c30a18c97a4d0000

Individual API key assigned by FIZEN enabling connection with FIZEN API

token
required
string
Example: ZzFkMDd4ZTM5MDUxMjI0ZTdmZjhjZTFkZjIxZGZiMWQ0OTZlYzc961==

Individual token assigned by FIZEN enabling connection with FIZEN API

userId
string
Example: 432532453425

The ID of the end user who agreed to provide access to the account information. ID generated on the client's side and passed to API FIZEN.

ip
string
Example: 10.10.54.1

End user IP address

agent
string
Example: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/72.0.3626.96 Safari/537.36

A browser agent that identifies the end user browser and operating system.

limitedScope
required
boolean
Example: true

Value informs whether access to the account will be limited to basic data.

Responses

Callbacks

Request samples

curl --request GET \
--url 'https://api.sandbox.fizen.com/{bankId}/initiate/{redirectUri}' \
--header 'apiKey: 9693455a2698ff0316f14da3c30a18c97a4d0000' \
--header 'token: ZzFkMDd4ZTM5MDUxMjI0ZTdmZjhjZTFkZjIxZGZiMWQ0OTZlYzc961==' \
--header 'userId: 123' \
--header 'ip: 11.11.00.00' \
--header 'agent: My Agent 1.0' \
--header 'limitedScope: true' \

Response samples

Content type
application/json
{}

Callback payload samples

Callback
POST: Account Information Service callback
Content type
application/json
{
  • "state": "44cbcvb6-f6c8-11ee-test-1bedccc3f6d2",
  • "userId": "Fizen",
  • "bankId": "mbank",
  • "accounts": [
    ]
}

Account Details

This endpoint allows obtaining detailed information about the user's account for which they have previously granted consent, including information such as account owner, account number, account currency, available account balance, and account description. The data returned by our system depends on the information provided by each respective bank. As a result, the details of the response may vary between different banks. Users should account for potential differences in available data when integrating with our API.

path Parameters
accountId
required
string
Example: VmhJQ0lKSHBKcEJ4TXByNHE2U3BKMG1SU3JXYStFVXBISDdCQUhLaHJXcz0=

The bank account ID to which the end user has consented to provide access to the account information. One of the values necessary to query information about an account

bankId
required
string
Example: alior

Bank identifier the user will authorize consent for Account Information Service (AIS) and Payment Initiation Services (PIS)

header Parameters
apiKey
required
string
Example: 9693455a2698ff0316f14da3c30a18c97a4d0000

Individual API key assigned by FIZEN enabling connection with FIZEN API

token
required
string
Example: ZzFkMDd4ZTM5MDUxMjI0ZTdmZjhjZTFkZjIxZGZiMWQ0OTZlYzc961==

Individual token assigned by FIZEN enabling connection with FIZEN API

state
required
string
Example: d2b75e70-c735-13ed-9018-4510c14d98bc

The value generated when starting the linking process for the particular bank interface to authorize consent to retrieve the account information (AIS service)

Responses

Request samples

curl --request GET \
--url 'https://api.sandbox.fizen.com/{bankId}/account/{accountId}' \
--header 'apiKey: 9693455a2698ff0316f14da3c30a18c97a4d0000' \
--header 'token: ZzFkMDd4ZTM5MDUxMjI0ZTdmZjhjZTFkZjIxZGZiMWQ0OTZlYzc961==' \
--header 'state: d2b75e70-c135-11ed-9018-4510c14d98vc' \

Response samples

Content type
application/json
{
  • "state": "ODY5MzQ4NWMyNjk4ZmYwMzE2ZjE0ZGEzYzMwYTE4Yzk3YTRkMDY4MV9iYmRjYTc0NC01MDcxLTExZWQtYWY1Zi1hZGVjZDM3MzQyZjRfaW5nX2JiZGNhNzQzLTUwNzEtMTFlZC1hZjVmLTJiMTMzMTA5MjVmZQ==",
  • "userId": 432532453425,
  • "details": {
    }
}

Account Transactions

This endpoint enables access to the transaction history for a specific account number for which consent has been obtained previously. The data returned by our system depends on the information provided by each respective bank. As a result, the details of the response may vary between different banks. Users should account for potential differences in available data when integrating with our API.

If certain transaction types cannot be retrieved due to an issue (e.g., database timeout, temporary service unavailability), the response will still contain the successfully retrieved transactions and will also include a new field:
transactionsStatusesFetchFailures, which lists the transaction types that failed to be fetched.

If all transaction types fail to be retrieved:

  • The transactions list will be empty.
  • The transactionsStatusesFetchFailures field will include all requested transaction types.

Example Scenarios:

  • Only DONE transactions fail for mBank.
  • Two transaction types fail for Pekao.
  • All transaction types fail for Santander.

Exception Handling

There is one exception to this mechanism:
If the request exceeds the operation limit, the system will return an explicit error response without including the transactions list or the transactionsStatusesFetchFailures field.
In this case, the client must retry the request after resolving the issue (e.g., reducing the number of transactions requested).

path Parameters
accountId
required
string
Example: VmhJQ0lKSHBKcEJ4TXByNHE2U3BKMG1SU3JXYStFVXBISDdCQUhLaHJXcz0=

The bank account ID to which the end user has consented to provide access to the account information. One of the values necessary to query information about an account

bankId
required
string
Example: alior

Bank identifier the user will authorize consent for Account Information Service (AIS) and Payment Initiation Services (PIS)

header Parameters
apiKey
required
string
Example: 9693455a2698ff0316f14da3c30a18c97a4d0000

Individual API key assigned by FIZEN enabling connection with FIZEN API

token
required
string
Example: ZzFkMDd4ZTM5MDUxMjI0ZTdmZjhjZTFkZjIxZGZiMWQ0OTZlYzc961==

Individual token assigned by FIZEN enabling connection with FIZEN API

state
required
string
Example: d2b75e70-c735-13ed-9018-4510c14d98bc

The value generated when starting the linking process for the particular bank interface to authorize consent to retrieve the account information (AIS service)

Responses

Request samples

curl --request GET \
--url 'https://api.sandbox.fizen.com/{bankId}/account/{accountId}/transactions' \
--header 'apiKey: 9693455a2698ff0316f14da3c30a18c97a4d0000' \
--header 'token: ZzFkMDd4ZTM5MDUxMjI0ZTdmZjhjZTFkZjIxZGZiMWQ0OTZlYzc961==' \
--header 'state: d2b75e70-c135-11ed-9018-4510c14d98vc' \

Response samples

Content type
application/json
{
  • "state": "ODY5MzQ4NWMyNjk4ZmYwMzE2ZjE0ZGEzYzMwYTE4Yzk3YTRkMDY4MV9iYmRjYTc0NC01MDcxLTExZWQtYWY1Zi1hZGVjZDM3MzQyZjRfaW5nX2JiZGNhNzQzLTUwNzEtMTFlZC1hZjVmLTJiMTMzMTA5MjVmZQ==",
  • "userId": 432532453425,
  • "transactions": [
    ],
  • "transactionsStatusesFetchFailures": [
    ]
}

KYC

This service provides a transparent way to access the user's identity by leveraging the granted consent for account access. It provides a field containing crucial information, such as the user's name and address, for precise user identification.

path Parameters
accountId
required
string
Example: VmhJQ0lKSHBKcEJ4TXByNHE2U3BKMG1SU3JXYStFVXBISDdCQUhLaHJXcz0=

The bank account ID to which the end user has consented to provide access to the account information. One of the values necessary to query information about an account

bankId
required
string
Example: alior

Bank identifier the user will authorize consent for Account Information Service (AIS) and Payment Initiation Services (PIS)

header Parameters
apiKey
required
string
Example: 9693455a2698ff0316f14da3c30a18c97a4d0000

Individual API key assigned by FIZEN enabling connection with FIZEN API

token
required
string
Example: ZzFkMDd4ZTM5MDUxMjI0ZTdmZjhjZTFkZjIxZGZiMWQ0OTZlYzc961==

Individual token assigned by FIZEN enabling connection with FIZEN API

state
required
string
Example: d2b75e70-c735-13ed-9018-4510c14d98bc

The value generated when starting the linking process for the particular bank interface to authorize consent to retrieve the account information (AIS service)

Responses

Request samples

curl --request GET \
--url 'https://api.sandbox.fizen.com/{bankId}/kyc/{accountId}' \
--header 'apiKey: 9693455a2698ff0316f14da3c30a18c97a4d0000' \
--header 'token: ZzFkMDd4ZTM5MDUxMjI0ZTdmZjhjZTFkZjIxZGZiMWQ0OTZlYzc961==' \
--header 'state: d2b75e70-c135-11ed-9018-4510c14d98vc' \

Response samples

Content type
application/json
{
  • "state": "ODY5MzQ4NWMyNjk4ZmYwMzE2ZjE0ZGEzYzMwYTE4Yzk3YTRkMDY4MV9iYmRjYTc0NC01MDcxLTExZWQtYWY1Zi1hZGVjZDM3MzQyZjRfaW5nX2JiZGNhNzQzLTUwNzEtMTFlZC1hZjVmLTJiMTMzMTA5MjVmZQ==",
  • "userId": 432532453425,
  • "nameAddress": "Agata Nowak ul. Astrów 12/1 40-748 Katowice"
}

Domestic Payment

FIZEN's Domestic Payment Services are responsible for processing domestic payments.

In this context, a domestic payment refers to a financial transaction in which funds are transferred from one bank account to another within the same country or a specific geographical region, typically using the local currency. These payments serve various purposes, including bill payments, transferring money to family and friends, making purchases, and settling financial obligations within the same country or region. It's important to distinguish domestic payments from international payments, which involve the transfer of funds between bank accounts located in different countries, often requiring currency conversion and compliance with international banking regulations.

It's important to highlight that payments initiated and approved by users through their banking service cannot be canceled. This guarantees the successful delivery of payments, ensuring that once a user authorizes a transaction, it will be executed as scheduled. This assurance contributes to the reliability and trustworthiness of the domestic payment service, giving users peace of mind regarding the arrival of their funds at the intended destination.

Start Payment Process

The payment initialization endpoint serves as a crucial access point for initiating domestic payment processes. In response to this endpoint, a redirect URL is generated, directing the user to the bank's authorization page.

On the bank's page, the user has the opportunity to verify the accuracy of the payment details required for the transfer and to confirm the payment. Once the payment is approved by the user, they will be redirected to the previously defined page, and the transaction data will be transmitted via a callback.

When making a payment, you have the option to perform a split payment.

The split payment mechanism is a payment system in which the amount of VAT, which is separated from the gross amount due to the seller, is transferred to a separate bank account, called a VAT account, to which the seller has limited access.

To successfully initiate a split payment, you must provide all four parameters:
spInvoiceNumber, spTaxIdentificationNumber, spTaxAmount, spDescription.

If at least one of these parameters is provided but others are missing, the split payment request will be rejected.

Split payment for retail transactions is available for specific banks because payments from sole proprietorship accounts are processed through this banking endpoint. The list of supported banks includes: mBank, BNP Paribas, NEST, Alior, Credit Agricole, Velo.

path Parameters
bankId
required
string
Example: alior

Bank identifier the user will authorize consent for Account Information Service (AIS) and Payment Initiation Services (PIS)

redirectUri
required
string
Example: https://redirect-url.com

The address of the page to which the user will be redirected after completing the data sharing authorization process

header Parameters
apiKey
required
string
Example: 9693455a2698ff0316f14da3c30a18c97a4d0000

Individual API key assigned by FIZEN enabling connection with FIZEN API

token
required
string
Example: ZzFkMDd4ZTM5MDUxMjI0ZTdmZjhjZTFkZjIxZGZiMWQ0OTZlYzc961==

Individual token assigned by FIZEN enabling connection with FIZEN API

amount
required
string
Example: 0.99
recipientAccountNumber
string

Recipient Account Number in IBAN format. Value required if Recipient Account Number is not set up by Fizen config

recipientNameAddress
string
Example: Jan Kowalski ul. Zbiorcza 2 m45 90-300 Lodz

Recipient Name & Address. Value required if Recipient Name Address is not set up by Fizen config. To handle Polish characters, URL encoding is necessary.

spInvoiceNumber
string
Example: INV001/2023/24

Payment Invoice Number (Required for split payment mechanism)

spTaxIdentificationNumber
string
Example: 3788796687

Tax Identification Number (NIP) (Required for split payment mechanism)

spTaxAmount
string
Example: 460

Amount of VAT tax (Required for split payment mechanism)

spDescription
string
Example: VAT for January services

A brief description of the payment (Required for split payment mechanism)

senderAccountNumber
string

Sender Account Number in IBAN format. Value required if Sender Account Number is not set up by Fizen config

userId
string
Example: 432532453425

The ID of the end user who agreed to provide access to the account information. ID generated on the client's side and passed to API FIZEN

title
string
Example: FV/1234/22

A transfer title. The title generated on the client's side and passed to API FIZEN. Transfer title length 5-80 signs ([a-zA-Z0-9\_\-\s\.\:/]). To handle Polish characters, URL encoding is necessary.

ip
string
Example: 10.10.54.1

End user IP address

agent
string
Example: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/72.0.3626.96 Safari/537.36

A browser agent that identifies the end user browser and operating system

Responses

Callbacks

Request samples

curl --request GET \
--url 'https://api.sandbox.fizen.com/{bankId}/payment/initiate/{redirectUri}' \
--header 'apiKey: 9693455a2698ff0316f14da3c30a18c97a4d0000' \
--header 'token: ZzFkMDd4ZTM5MDUxMjI0ZTdmZjhjZTFkZjIxZGZiMWQ0OTZlYzc961==' \
--header 'amount: 0.99' \
--header 'recipientAccountNumber: PL12345678901234567890123456' \
--header 'recipientNameAddress: Jan Kowalski ul. Zbiorcza 2 m45 90-300 Lodz' \
--header 'userId: 123' \
--header 'title: FV/1234/22' \
--header 'ip: 11.11.00.00' \
--header 'agent: My Agent 1.0' \
--header 'spInvoiceNumber: INV001/2023/24' \
--header 'spTaxIdentificationNumber: 7242354073' \
--header 'spTaxAmount: 23.00' \
--header 'spDescription: VAT for January services'

Response samples

Content type
application/json
{}

Callback payload samples

Callback
POST: Payment Information Service callback
Content type
application/json
{
  • "state": "44cbcvb6-f6c8-11ee-test-1bedccc3f6d2",
  • "userId": "Fizen",
  • "bankId": "mbank",
  • "paymentStatus": "SUBMITTED",
  • "amount": 0.99,
  • "senderAccount": "PL49102028922276300500000000"
}

Payment status

The "Get Payment Status" endpoint allows customers to check the status of their payments. When this endpoint is called, the system returns the current status of a specific payment, enabling users to track the progress and history of their transactions.

This functionality provides users with real-time access to the status of their payments, offering transparency and visibility into their financial transactions. However, the returned payment statuses may vary depending on the bank, and the timing of status updates can also differ based on the bank's processing schedule.

header Parameters
apiKey
required
string
Example: 9693455a2698ff0316f14da3c30a18c97a4d0000

Individual API key assigned by FIZEN enabling connection with FIZEN API

token
required
string
Example: ZzFkMDd4ZTM5MDUxMjI0ZTdmZjhjZTFkZjIxZGZiMWQ0OTZlYzc961==

Individual token assigned by FIZEN enabling connection with FIZEN API

state
required
string
Example: ODY5MzQ4NWMyNjk4ZmYwMzE2ZjE0ZGEzYzMwYTE4Yzk3YTRkMDY4MV80M2E3

The value generated when starting the linking process for the particular bank interface to authorize consent to initiate payment

Responses

Request samples

curl --request GET \
--url 'https://api.sandbox.fizen.com/payment' \
--header 'apiKey: 9693455a2698ff0316f14da3c30a18c97a4d0000' \
--header 'token: ZzFkMDd4ZTM5MDUxMjI0ZTdmZjhjZTFkZjIxZGZiMWQ0OTZlYzc961==' \
--header 'state: d2b75e70-c135-11ed-9018-4510c14d98vc' \

Response samples

Content type
application/json
{
  • "userId": 432532453425,
  • "bankId": "alior",
  • "paymentStatus": "DONE",
  • "amount": 0.99,
  • "senderAccount": "PL44160084586221235245815289"
}

Future Date Payment

FIZEN's Future Date Domestic Payment Services are responsible for processing domestic payments with a future date. This specialized service operates in a manner similar to standard domestic payments but introduces the ability to schedule payments for specific dates in the future. It allows users to proactively set up payments in advance, ensuring that financial commitments are met precisely when needed. Future date domestic payments offer a valuable solution for planning and managing financial transactions within the same country or specific geographical region, granting users greater flexibility and control over their payment schedules. It's important to emphasize that this service remains distinct from international payments, focusing solely on domestic transactions and eliminating the complexities associated with cross-border transfers and currency conversion.

It's important to emphasize that this service allows for the cancellation of scheduled payments until the transfer is executed, providing users with complete control over their finances. This feature ensures that users have the flexibility to modify or cancel future date domestic payments as needed, offering peace of mind and adaptability in managing their financial commitments.

Additionally, it's worth noting that this service also provides users with the option to lock funds in their account, in which case the cancellation of a transfer may not be possible.

Start Payment Process

The "Initiate Future Date Payment" endpoint serves as a crucial access point for initiating future-dated payment processes. Upon calling this endpoint, a redirect URL is generated in response, directing the user to the bank's authorization page.

On the bank's page, users have the opportunity to verify the accuracy of the payment details required for the future-dated transfer and to confirm the payment. Once the payment is approved by the user, they will be redirected to the previously defined page, and the transaction data will be transmitted via a callback.

path Parameters
redirectUri
required
string
Example: https%3A%2F%2redirectUri.com

A main url address the user will be redirected to once authorization is done

bankId
required
string
Example: alior

Bank identifier the user will authorize consent for Account Information Service (AIS) and Payment Initiation Services (PIS)

header Parameters
apiKey
required
string
Example: 9693455a2698ff0316f14da3c30a18c97a4d0000

Individual API key assigned by FIZEN enabling connection with FIZEN API

token
required
string
Example: ZzFkMDd4ZTM5MDUxMjI0ZTdmZjhjZTFkZjIxZGZiMWQ0OTZlYzc961==

Individual token assigned by FIZEN enabling connection with FIZEN API

amount
required
string
Example: 0.99
executionDate
required
string <date-time>
Example: 2025-02-10

Payment execution date

recipientAccountNumber
string

Recipient Account Number in IBAN format. Value required if Recipient Account Number is not set up by Fizen config. To handle Polish characters, URL encoding is necessary.

recipientNameAddress
string
Example: Jan Kowalski ul. Zbiorcza 2 m45 90-300 Lodz

Recipient Name & Address. Value required if Recipient Name Address is not set up by Fizen config. To handle Polish characters, URL encoding is necessary.

userId
string
Example: 432532453425

The ID of the end user who agreed to provide access to the account information. ID generated on the client's side and passed to API FIZEN

title
string
Example: FV/1234/22

A transfer title. The title generated on the client's side and passed to API FIZEN. Transfer title length 5-80 signs ([a-zA-Z0-9\_\-\s\.\:/])

ip
string
Example: 10.10.54.1

End user IP address

agent
string
Example: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/72.0.3626.96 Safari/537.36

A browser agent that identifies the end user browser and operating system

Responses

Callbacks

Request samples

curl --request GET \
--url 'https://api.sandbox.fizen.com/{bankId}/payment/future/initiate/{redirectUri}' \
--header 'apiKey: 9693455a2698ff0316f14da3c30a18c97a4d0000' \
--header 'token: ZzFkMDd4ZTM5MDUxMjI0ZTdmZjhjZTFkZjIxZGZiMWQ0OTZlYzc961==' \
--header 'amount: 0.99' \
--header 'executionDate: 2024-08-16' \
--header 'recipientAccountNumber: PL12345678901234567890123456' \
--header 'recipientNameAddress: Jan Kowalski ul. Zbiorcza 2 m45 90-300 Lodz' \ 
--header 'userId: 123' \
--header 'title: FV/1234/22' \
--header 'ip: 11.11.00.00' \
--header 'agent: My Agent 1.0' \

Response samples

Content type
application/json
{}

Callback payload samples

Callback
POST: Payment Information Service callback
Content type
application/json
{
  • "state": "44cbcvb6-f6c8-11ee-test-1bedccc3f6d2",
  • "userId": "Fizen",
  • "bankId": "mbank",
  • "paymentStatus": "SUBMITTED",
  • "amount": 0.99,
  • "senderAccount": "PL49102028922276300500000000"
}

Future Payment Status

The "Get Future Date Payment Status" endpoint enables customers to check the status of their future-dated payments. Upon calling this endpoint, the system retrieves and returns the current status of a specific future-dated payment. The returned payment statuses may vary depending on the bank, and the timing of status updates can also differ based on the bank's processing schedule. This feature empowers users to monitor the status of their future-dated transactions in real-time.

header Parameters
apiKey
required
string
Example: 9693455a2698ff0316f14da3c30a18c97a4d0000

Individual API key assigned by FIZEN enabling connection with FIZEN API

token
required
string
Example: ZzFkMDd4ZTM5MDUxMjI0ZTdmZjhjZTFkZjIxZGZiMWQ0OTZlYzc961==

Individual token assigned by FIZEN enabling connection with FIZEN API

state
required
string
Example: ODY5MzQ4NWMyNjk4ZmYwMzE2ZjE0ZGEzYzMwYTE4Yzk3YTRkMDY4MV80M2E3

The value generated when starting the linking process for the particular bank interface to authorize consent to initiate payment

Responses

Request samples

curl --request GET \
--url 'https://api.sandbox.fizen.com/payment' \
--header 'apiKey: 9693455a2698ff0316f14da3c30a18c97a4d0000' \
--header 'token: ZzFkMDd4ZTM5MDUxMjI0ZTdmZjhjZTFkZjIxZGZiMWQ0OTZlYzc961==' \
--header 'state: d2b75e70-c135-11ed-9018-4510c14d98vc' \

Response samples

Content type
application/json
{
  • "userId": 432532453425,
  • "bankId": "alior",
  • "paymentStatus": "DONE",
  • "amount": 0.99,
  • "senderAccount": "PL44160084586221235245815289"
}

Start Cancel Payment Process

The "Cancel Future Date Payment" endpoint allows users to cancel future-dated payments. Similar to the "Cancel Recurring Payment" process, this functionality generates a redirect URL in response, directing the user to the bank's authorization page.

On the bank's page, users have the opportunity to verify the accuracy of the cancel payment request details required for the transfer cancellation and to confirm the operation. Once the cancel payment request is approved by the user, they will be seamlessly redirected to the previously defined page, and the cancellation status data will be transmitted via a callback.

path Parameters
redirectUri
required
string
Example: https%3A%2F%2redirectUri.com

A main url address the user will be redirected to once authorization is done

bankId
required
string
Example: alior

Bank identifier the user will authorize consent for Account Information Service (AIS) and Payment Initiation Services (PIS)

header Parameters
apiKey
required
string
Example: 9693455a2698ff0316f14da3c30a18c97a4d0000

Individual API key assigned by FIZEN enabling connection with FIZEN API

token
required
string
Example: ZzFkMDd4ZTM5MDUxMjI0ZTdmZjhjZTFkZjIxZGZiMWQ0OTZlYzc961==

Individual token assigned by FIZEN enabling connection with FIZEN API

state
required
string
Example: ODY5MzQ4NWMyNjk4ZmYwMzE2ZjE0ZGEzYzMwYTE4Yzk3YTRkMDY4MV80M2E3

The value generated when starting the linking process for the particular bank interface to authorize consent to initiate payment

recipientAccountNumber
string

Recipient Account Number in IBAN format. Value required if Recipient Account Number is not set up by Fizen config

recipientNameAddress
string
Example: Jan Kowalski ul. Zbiorcza 2 m45 90-300 Lodz

Recipient Name & Address. Value required if Recipient Name Address is not set up by Fizen config

userId
string
Example: 432532453425

The ID of the end user who agreed to provide access to the account information. ID generated on the client's side and passed to API FIZEN

title
string
Example: FV/1234/22

A transfer title. The title generated on the client's side and passed to API FIZEN. Transfer title length 5-80 signs ([a-zA-Z0-9\_\-\s\.\:/])

ip
string
Example: 10.10.54.1

End user IP address

agent
string
Example: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/72.0.3626.96 Safari/537.36

A browser agent that identifies the end user browser and operating system

Responses

Callbacks

Request samples

curl --request GET \
--url 'https://api.sandbox.fizen.com/{bankId}/payment/cancel/initiate/{redirectUri}' \
--header 'apiKey: 9693455a2698ff0316f14da3c30a18c97a4d0000' \
--header 'token: ZzFkMDd4ZTM5MDUxMjI0ZTdmZjhjZTFkZjIxZGZiMWQ0OTZlYzc961==' \
--header 'state: ExAmPlEsTaTece1a4cb6-5e83-11ed-a320-856ce1faa777' \
--header 'ip: 11.11.00.00' \
--header 'agent: My Agent 1.0' \

Response samples

Content type
application/json
{}

Callback payload samples

Callback
POST: Payment Information Service callback
Content type
application/json
{
  • "state": "44cbcvb6-f6c8-11ee-test-1bedccc3f6d2",
  • "userId": "Fizen",
  • "bankId": "mbank",
  • "paymentStatus": "SUBMITTED",
  • "amount": 0.99,
  • "senderAccount": "PL49102028922276300500000000"
}

Express Payment

FIZEN's Express Domestic Payment Services are responsible for processing domestic payments with immediate delivery time. This specialized service operates similarly to standard domestic payments but with the added advantage of near-instantaneous transaction execution. Users can initiate and receive payments promptly, ensuring that funds are deposited directly into the recipient's account without delay, facilitating swift and efficient financial transactions.

Start payment process

The 'Express Payment Initialization' endpoint serves as a vital entry point for initiating express payment processes. Similar to the standard payment initialization endpoint, this endpoint generates a redirect URL in response, directing the user to the bank's authorization page.

On the bank's page, users have the opportunity to verify the accuracy of the payment details required for the transfer and confirm the payment swiftly. Once the user approves the payment, they will be seamlessly redirected to the previously defined page, and the transaction data will be transmitted via a callback.

path Parameters
bankId
required
string
Example: alior

Bank identifier the user will authorize consent for Account Information Service (AIS) and Payment Initiation Services (PIS)

redirectUri
required
string
Example: https://redirect-url.com

The address of the page to which the user will be redirected after completing the data sharing authorization process

header Parameters
apiKey
required
string
Example: 9693455a2698ff0316f14da3c30a18c97a4d0000

Individual API key assigned by FIZEN enabling connection with FIZEN API

token
required
string
Example: ZzFkMDd4ZTM5MDUxMjI0ZTdmZjhjZTFkZjIxZGZiMWQ0OTZlYzc961==

Individual token assigned by FIZEN enabling connection with FIZEN API

amount
required
string
Example: 0.99
recipientAccountNumber
string

Recipient Account Number in IBAN format. Value required if Recipient Account Number is not set up by Fizen config

recipientNameAddress
string
Example: Jan Kowalski ul. Zbiorcza 2 m45 90-300 Lodz

Recipient Name & Address. Value required if Recipient Name Address is not set up by Fizen config

userId
string
Example: 432532453425

The ID of the end user who agreed to provide access to the account information. ID generated on the client's side and passed to API FIZEN

title
string
Example: FV/1234/22

A transfer title. The title generated on the client's side and passed to API FIZEN. Transfer title length 5-80 signs ([a-zA-Z0-9\_\-\s\.\:/])

ip
string
Example: 10.10.54.1

End user IP address

agent
string
Example: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/72.0.3626.96 Safari/537.36

A browser agent that identifies the end user browser and operating system

Responses

Callbacks

Request samples

curl --request GET \
--url 'https://api.sandbox.fizen.com/{bankId}/payment/express/initiate/{redirectUri}' \
--header 'apiKey: 9693455a2698ff0316f14da3c30a18c97a4d0000' \
--header 'token: ZzFkMDd4ZTM5MDUxMjI0ZTdmZjhjZTFkZjIxZGZiMWQ0OTZlYzc961==' \
--header 'amount: 0.99' \
--header 'recipientAccountNumber: PL12345678901234567890123456' \
--header 'recipientNameAddress: Jan Kowalski ul. Zbiorcza 2 m45 90-300 Lodz' \
--header 'userId: 123' \
--header 'title: FV/1234/22' \
--header 'ip: 11.11.00.00' \
--header 'agent: My Agent 1.0' \

Response samples

Content type
application/json
{}

Callback payload samples

Callback
POST: Payment Information Service callback
Content type
application/json
{
  • "state": "44cbcvb6-f6c8-11ee-test-1bedccc3f6d2",
  • "userId": "Fizen",
  • "bankId": "mbank",
  • "paymentStatus": "SUBMITTED",
  • "amount": 0.99,
  • "senderAccount": "PL49102028922276300500000000"
}

Express Payment Status

The "Get Express Payment Status" endpoint allows customers to check the status of their express payments. Upon calling this endpoint, the system retrieves and returns the current status of a specific express payment. This feature empowers users to monitor the progress and history of their express transactions in real-time. The returned payment statuses may vary depending on the bank, and the timing of status updates can also differ based on the bank's processing schedule.

header Parameters
apiKey
required
string
Example: 9693455a2698ff0316f14da3c30a18c97a4d0000

Individual API key assigned by FIZEN enabling connection with FIZEN API

token
required
string
Example: ZzFkMDd4ZTM5MDUxMjI0ZTdmZjhjZTFkZjIxZGZiMWQ0OTZlYzc961==

Individual token assigned by FIZEN enabling connection with FIZEN API

state
required
string
Example: ODY5MzQ4NWMyNjk4ZmYwMzE2ZjE0ZGEzYzMwYTE4Yzk3YTRkMDY4MV80M2E3

The value generated when starting the linking process for the particular bank interface to authorize consent to initiate payment

Responses

Request samples

curl --request GET \
--url 'https://api.sandbox.fizen.com/payment' \
--header 'apiKey: 9693455a2698ff0316f14da3c30a18c97a4d0000' \
--header 'token: ZzFkMDd4ZTM5MDUxMjI0ZTdmZjhjZTFkZjIxZGZiMWQ0OTZlYzc961==' \
--header 'state: d2b75e70-c135-11ed-9018-4510c14d98vc' \
--header 'ip: 11.11.00.00' \
--header 'agent: My Agent 1.0' \

Response samples

Content type
application/json
{
  • "userId": 432532453425,
  • "bankId": "alior",
  • "paymentStatus": "DONE",
  • "amount": 0.99,
  • "senderAccount": "PL44160084586221235245815289"
}

Recurring Payment

FIZEN's Recurring Payment Services are responsible for processing payments on a recurring basis. This specialized service functions similarly to standard payments but offers the added convenience of automated, scheduled payments that occur at regular intervals, such as monthly or weekly.

Users can set up recurring payments to meet their financial commitments without manual intervention, ensuring that payments are made consistently and on time. This feature provides users with the flexibility to establish and manage recurring financial transactions, streamlining their financial obligations. It's worth noting that, like other payment which nas future execution date, recurring payments can also be canceled until the scheduled payment date, giving users full control over their recurring financial transactions and allowing for adjustments as needed.

Start Payment Process

The "Initiate Recurring Payment" endpoint streamlines the initiation of recurring payment processes. Upon calling this endpoint, a redirect URL is generated in response, directing the user to the bank's authorization page.

On the bank's page, users have the opportunity to verify the accuracy of the payment details required for the recurring transfer and to confirm the payment. Once the payment is approved by the user, they will be redirected to the previously defined page, and the transaction data will be transmitted via a callback.

path Parameters
redirectUri
required
string
Example: https%3A%2F%2redirectUri.com

A main url address the user will be redirected to once authorization is done

bankId
required
string
Example: alior

Bank identifier the user will authorize consent for Account Information Service (AIS) and Payment Initiation Services (PIS)

header Parameters
apiKey
required
string
Example: 9693455a2698ff0316f14da3c30a18c97a4d0000

Individual API key assigned by FIZEN enabling connection with FIZEN API

token
required
string
Example: ZzFkMDd4ZTM5MDUxMjI0ZTdmZjhjZTFkZjIxZGZiMWQ0OTZlYzc961==

Individual token assigned by FIZEN enabling connection with FIZEN API

amount
required
string
Example: 0.99
recipientAccountNumber
string
Example: PL12345678901234567890123456

Recipient Account Number in IBAN format. Value required if Recipient Account Number is not set up by Fizen config

recipientNameAddress
string
Example: Jan Kowalski ul. Zbiorcza 2 m45 90-300 Lodz

Recipient Name & Address. Value required if Recipient Name Address is not set up by Fizen config

period
required
string
Enum: "WEEK" "MONTH" "YEAR"
Example: WEEK

payment frequency

startDate
required
string <date-time>
Example: 2024-02-10

Recurring payment start date

endDate
required
string <date-time>
Example: 2025-02-10

Recurring payment end date

userId
string
Example: 432532453425

The ID of the end user who agreed to provide access to the account information. ID generated on the client's side and passed to API FIZEN

title
string
Example: FV/1234/22

A recurring payment title. The title generated on the client's side and passed to API FIZEN. Transfer title length 5-80 signs ([a-zA-Z0-9\_\-\s\.\:/])

ip
string
Example: 10.10.54.1

End user IP address

agent
string
Example: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/72.0.3626.96 Safari/537.36

A browser agent that identifies the end user browser and operating system

Responses

Callbacks

Request samples

curl --request GET \
--url 'https://api.sandbox.fizen.com/{bankId}/payment/recurring/initiate/{redirectUri}' \
--header 'apiKey: 9693455a2698ff0316f14da3c30a18c97a4d0000' \
--header 'token: ZzFkMDd4ZTM5MDUxMjI0ZTdmZjhjZTFkZjIxZGZiMWQ0OTZlYzc961==' \
--header 'amount: 0.99' \
--header 'recipientAccountNumber: PL12345678901234567890123456' \  
--header 'recipientNameAddress: Jan Kowalski ul. Zbiorcza 2 m45 90-300 Lodz' \ 
--header 'period: WEEK' \
--header 'starteDate: 2024-02-10' \
--header 'endDate: 2025-02-10' \
--header 'userId: 123' \
--header 'title: FV/1234/22' \
--header 'ip: 11.11.00.00' \
--header 'agent: My Agent 1.0' \

Response samples

Content type
application/json
{}

Callback payload samples

Callback
POST: Payment Information Service callback
Content type
application/json
{
  • "state": "44cbcvb6-f6c8-11ee-test-1bedccc3f6d2",
  • "userId": "Fizen",
  • "bankId": "mbank",
  • "paymentStatus": "SUBMITTED",
  • "amount": 0.99,
  • "senderAccount": "PL49102028922276300500000000"
}

Recurring Payment Status

The "Get Recurring Payment Status" endpoint empowers users to inquire about the status of their recurring payments. Upon utilization of this endpoint, the system promptly retrieves and furnishes the current status of a specified recurring payment. The returned payment statuses may vary depending on the bank, and the timing of status updates can also differ based on the bank's processing schedule. This functionality provides users with real-time insights into the status of their recurring transactions.

header Parameters
apiKey
required
string
Example: 9693455a2698ff0316f14da3c30a18c97a4d0000

Individual API key assigned by FIZEN enabling connection with FIZEN API

token
required
string
Example: ZzFkMDd4ZTM5MDUxMjI0ZTdmZjhjZTFkZjIxZGZiMWQ0OTZlYzc961==

Individual token assigned by FIZEN enabling connection with FIZEN API

state
required
string
Example: ODY5MzQ4NWMyNjk4ZmYwMzE2ZjE0ZGEzYzMwYTE4Yzk3YTRkMDY4MV80M2E3

The value generated when starting the linking process for the particular bank interface to authorize consent to initiate payment

Responses

Request samples

curl --request GET \
--url 'https://api.sandbox.fizen.com/payment/recurring' \
--header 'apiKey: 9693455a2698ff0316f14da3c30a18c97a4d0000' \
--header 'token: ZzFkMDd4ZTM5MDUxMjI0ZTdmZjhjZTFkZjIxZGZiMWQ0OTZlYzc961==' \
--header 'state: d2b75e70-c135-11ed-9018-4510c14d98vc' \
--header 'ip: 11.11.00.00' \
--header 'agent: My Agent 1.0' \

Response samples

Content type
application/json
{
  • "userId": 432532453425,
  • "bankId": "alior",
  • "paymentStatus": "DONE",
  • "amount": 0.99,
  • "senderAccount": "PL44160084586221235245815289"
}

Start Cancel Payment Process

The "Cancel Recurring Payment" endpoint allows users to cancel recurring payments. Upon calling this endpoint, a redirect URL is generated in response, directing the user to the bank's authorization page.

On the bank's page, users have the opportunity to verify the accuracy of the cancel payment request details required for the transfer cancellation and to confirm the operation. Once the cancel payment request is approved by the user, they will be redirected to the previously defined page, and the cancellation status data will be transmitted via a callback.

path Parameters
redirectUri
required
string
Example: https%3A%2F%2redirectUri.com

A main url address the user will be redirected to once authorization is done

bankId
required
string
Example: alior

Bank identifier the user will authorize consent for Account Information Service (AIS) and Payment Initiation Services (PIS)

header Parameters
apiKey
required
string
Example: 9693455a2698ff0316f14da3c30a18c97a4d0000

Individual API key assigned by FIZEN enabling connection with FIZEN API

token
required
string
Example: ZzFkMDd4ZTM5MDUxMjI0ZTdmZjhjZTFkZjIxZGZiMWQ0OTZlYzc961==

Individual token assigned by FIZEN enabling connection with FIZEN API

amount
required
string
Example: 0.99
recipientAccountNumber
string
Example: PL12345678901234567890123456

Recipient Account Number in IBAN format. Value required if Recipient Account Number is not set up by Fizen config

recipientNameAddress
string
Example: Jan Kowalski ul. Zbiorcza 2 m45 90-300 Lodz

Recipient Name & Address. Value required if Recipient Name Address is not set up by Fizen config

period
required
string
Enum: "WEEK" "MONTH" "YEAR"
Example: WEEK

payment frequency

startDate
required
string
Example: 2024-02-10

Recurring payment start date

endDate
required
string <date-time>
Example: 2025-02-10

Recurring payment end date

userId
string
Example: 432532453425

The ID of the end user who agreed to provide access to the account information. ID generated on the client's side and passed to API FIZEN

title
string
Example: FV/1234/22

A recurring payment title. The title generated on the client's side and passed to API FIZEN. Transfer title length 5-80 signs ([a-zA-Z0-9\_\-\s\.\:/])

ip
string
Example: 10.10.54.1

End user IP address

agent
string
Example: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/72.0.3626.96 Safari/537.36

A browser agent that identifies the end user browser and operating system

Responses

Callbacks

Request samples

curl --request GET \
--url 'https://api.sandbox.fizen.com/{bankId}/payment/recurring/cancel/initiate/{redirectUri}' \
--header 'apiKey: 9693455a2698ff0316f14da3c30a18c97a4d0000' \
--header 'token: ZzFkMDd4ZTM5MDUxMjI0ZTdmZjhjZTFkZjIxZGZiMWQ0OTZlYzc961==' \
--header 'state: ExAmPlEsTaTece1a4cb6-5e83-11ed-a320-856ce1faa777' \
--header 'ip: 11.11.00.00' \
--header 'agent: My Agent 1.0' \

Response samples

Content type
application/json
{}

Callback payload samples

Callback
POST: Payment Information Service callback
Content type
application/json
{
  • "state": "44cbcvb6-f6c8-11ee-test-1bedccc3f6d2",
  • "userId": "Fizen",
  • "bankId": "mbank",
  • "paymentStatus": "SUBMITTED",
  • "amount": 0.99,
  • "senderAccount": "PL49102028922276300500000000"
}

Bundle Payment

FIZEN's Bundle Payment Services are responsible for processing bundled payments. This specialized service operates similarly to standard payments but offers the added convenience of grouping multiple payments into a single, comprehensive transaction. Users can combine various payments into a bundle, streamlining their financial transactions and simplifying the management of multiple financial commitments. This feature allows for more efficient and organized payment processing.

Start Payment Process

Returns a redirect url that directs to the bank’s authorization page

path Parameters
redirectUri
required
string
Example: https%3A%2F%2redirectUri.com

A main url address the user will be redirected to once authorization is done

bankId
required
string
Example: alior

Bank identifier the user will authorize consent for Account Information Service (AIS) and Payment Initiation Services (PIS)

header Parameters
apiKey
required
string
Example: 9693455a2698ff0316f14da3c30a18c97a4d0000

Individual API key assigned by FIZEN enabling connection with FIZEN API

token
required
string
Example: ZzFkMDd4ZTM5MDUxMjI0ZTdmZjhjZTFkZjIxZGZiMWQ0OTZlYzc961==

Individual token assigned by FIZEN enabling connection with FIZEN API

userId
string
Example: 432532453425

The ID of the end user who agreed to provide access to the account information. ID generated on the client's side and passed to API FIZEN

ip
string
Example: 10.10.54.1

End user IP address

agent
string
Example: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/72.0.3626.96 Safari/537.36

A browser agent that identifies the end user browser and operating system

Request Body schema: application/json
Array
Array of objects

List of payment instructions

Responses

Callbacks

Request samples

Content type
application/json
[
  • {
    }
]

Response samples

Content type
application/json
[
  • {
    }
]

Callback payload samples

Callback
POST: Bundle Payment Information Service callback
Content type
application/json
{
  • "state": "44cbcvb6-f6c8-11ee-test-1bedccc3f6d2",
  • "userId": "Fizen",
  • "bankId": "mbank",
  • "bundleStatus": "IN PROGRESS",
  • "amount": 0.99,
  • "payments": [
    ]
}

Bundle Payment Status

Return Bundle payment status

header Parameters
apiKey
required
string
Example: 9693455a2698ff0316f14da3c30a18c97a4d0000

Individual API key assigned by FIZEN enabling connection with FIZEN API

token
required
string
Example: ZzFkMDd4ZTM5MDUxMjI0ZTdmZjhjZTFkZjIxZGZiMWQ0OTZlYzc961==

Individual token assigned by FIZEN enabling connection with FIZEN API

state
required
string
Example: ODY5MzQ4NWMyNjk4ZmYwMzE2ZjE0ZGEzYzMwYTE4Yzk3YTRkMDY4MV80M2E3

The value generated when starting the linking process for the particular bank interface to authorize consent to initiate payment

Responses

Request samples

curl --request GET \
--url 'https://api.sandbox.fizen.com/payment/bundle' \
--header 'apiKey: 9693455a2698ff0316f14da3c30a18c97a4d0000' \
--header 'token: ZzFkMDd4ZTM5MDUxMjI0ZTdmZjhjZTFkZjIxZGZiMWQ0OTZlYzc961==' \
--header 'state: d2b75e70-c135-11ed-9018-4510c14d98vc' \

Response samples

Content type
application/json
{
  • "userId": "Fizen",
  • "bankId": "mbank",
  • "bundleStatus": "IN PROGRESS",
  • "amount": 0.99,
  • "payments": [
    ]
}

Sepa Payment

FIZEN's SEPA Retail Payment Service enables individual customers to seamlessly initiate and manage international payments within the Single Euro Payments Area (SEPA). This service is tailored for personal transactions, allowing individuals to transfer funds across European countries with the same ease as domestic payments.

SEPA retail payments ensure fast, secure, and standardized cross-border transfers in EUR, eliminating the complexity of traditional international wire transfers. By following SEPA standards, users can conduct international transactions as efficiently as domestic ones, ensuring compliance with European banking regulations.

Key Features:

  • SEPA Credit Transfer (SCT) for Individuals: Retail SEPA payments follow the SCT scheme, allowing personal international transfers with minimal fees.
  • Cross-Border Transactions in EUR: The transferred amount must be specified in EUR, regardless of the sender's local currency.
  • Bank-Dependent Processing Times: The completion time of SEPA retail payments depends on the recipient's bank and the standard cut-off times set by SEPA regulations.
  • Mandatory Recipient Country Code: Each SEPA transaction requires the ISO country code of the recipient’s bank to ensure accurate processing.
  • Low-Cost International Transfers: SEPA retail transactions are typically cheaper than traditional SWIFT payments, making them ideal for individuals.
  • EU-Wide Standardization: Ensures uniform rules across all SEPA member states, allowing users to make seamless transactions.

The SEPA Retail Payment Service provides a convenient, cost-effective, and reliable way for individuals to transfer money across European borders, ensuring smooth and predictable financial transactions. With transparent processing and standardized banking practices, users can confidently send funds internationally without unexpected fees or delays.

SEPA Payment Initiation

FIZEN's SEPA Retail Payment Service enables individual customers to seamlessly initiate and manage international payments within the Single Euro Payments Area (SEPA). This service is tailored for personal transactions, allowing individuals to transfer funds across European countries with the same ease as domestic payments.

The SEPA Retail Payment Service provides a convenient, cost-effective, and reliable way for individuals to transfer money across European borders, ensuring smooth and predictable financial transactions. With transparent processing and standardized banking practices, users can confidently send funds internationally without unexpected fees or delays.

path Parameters
bankId
required
string
Example: alior

Bank identifier for authorization of SEPA payment

redirectUri
required
string
Example: https://redirect-url.com

Redirect URL where the user will be sent after authorization

header Parameters
apiKey
required
string
Example: 9693455a2698ff0316f14da3c30a18c97a4d0000

Individual API key assigned by FIZEN enabling connection with FIZEN API

token
required
string
Example: ZzFkMDd4ZTM5MDUxMjI0ZTdmZjhjZTFkZjIxZGZiMWQ0OTZlYzc961==

Individual token assigned by FIZEN enabling connection with FIZEN API

amount
required
string
Example: 1000.00

Payment amount in EUR (format: d+.d{2})

currency
required
string
Value: "EUR"
Example: EUR

Currency for SEPA payments (always EUR)

recipientAccountNumber
required
string
Example: DE89370400440532013000

Recipient's IBAN (International Bank Account Number)

recipientNameAddress
required
string
Example: John Doe, 123 Berlin Street, 10117 Berlin

Recipient's full name and address

reference
string
Example: Invoice 2025-001

Payment reference (e.g., invoice number)

senderAccountNumber
string
Example: FR7630006000011234567890189

Sender's IBAN, required if not pre-configured in Fizen

userId
string
Example: 432532453425

Unique user identifier, generated on the client's side

title
string
Example: SEPA Payment Invoice 1234/24

Transfer title (5-80 characters). For mBank, the use of ":" is not allowed

ip
string
Example: 10.10.54.1

End user IP address

agent
string
Example: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/72.0.3626.96 Safari/537.36

Browser agent identifying the end user's browser and OS

Responses

Callbacks

Request samples

curl --request POST \
--url 'https://api.sandbox.fizen.com/mbank/payment/sepa/initiate' \
--header 'apiKey: 9693455a2698ff0316f14da3c30a18c97a4d0000' \
--header 'token: ZzFkMDd4ZTM5MDUxMjI0ZTdmZjhjZTFkZjIxZGZiMWQ0OTZlYzc961==' \
--header 'Content-Type: application/json' \
--data '{
  "amount": "1000.00",
  "currency": "EUR",
  "recipientName": "John Doe",
  "recipientIban": "DE89370400440532013000",
  "recipientCountry": "DE",
  "reference": "Invoice 2025-001"
}'

Response samples

Content type
application/json
{}

Callback payload samples

Callback
POST: Payment Information Service callback
Content type
application/json
{
  • "state": "44cbcvb6-f6c8-11ee-test-1bedccc3f6d2",
  • "userId": "Fizen",
  • "bankId": "mbank",
  • "paymentStatus": "SUBMITTED",
  • "amount": 0.99,
  • "senderAccount": "PL49102028922276300500000000"
}

SEPA Payment Status

The "Get SEPA Payment Status" endpoint allows business account holders to seamlessly check the status of their SEPA payments within the Single Euro Payments Area (SEPA). When this endpoint is invoked, the system promptly returns the current status of a specific SEPA payment, enabling business users to track their international transactions efficiently.

Key Features:

  • Real-Time Tracking: Businesses receive up-to-date payment statuses, ensuring they remain informed about their transactions.
  • Cross-Border SEPA Monitoring: Unlike domestic payments, SEPA transactions involve additional processing layers and may experience variations in update frequency based on the involved banks.

The returned SEPA payment statuses may vary depending on the recipient's bank and country, and the timing of updates may differ due to international banking regulations and cut-off times.

header Parameters
apiKey
required
string
Example: 9693455a2698ff0316f14da3c30a18c97a4d0000

Individual API key assigned by FIZEN enabling connection with FIZEN API

token
required
string
Example: ZzFkMDd4ZTM5MDUxMjI0ZTdmZjhjZTFkZjIxZGZiMWQ0OTZlYzc961==

Individual token assigned by FIZEN enabling connection with FIZEN API

state
required
string
Example: ODY5MzQ4NWMyNjk4ZmYwMzE2ZjE0ZGEzYzMwYTE4Yzk3YTRkMDY4MV80M2E3

The value generated when starting the linking process for the particular bank interface to authorize consent to initiate payment

Responses

Request samples

curl --request GET \
--url 'https://api.sandbox.fizen.com/mbank/payment/sepa/status' \
--header 'apiKey: 9693455a2698ff0316f14da3c30a18c97a4d0000' \
--header 'token: ZzFkMDd4ZTM5MDUxMjI0ZTdmZjhjZTFkZjIxZGZiMWQ0OTZlYzc961==' \
--header 'state: d2b75e70-c135-11ed-9018-4510c14d98vc' \

Response samples

Content type
application/json
{}

Account Information Service

FIZEN API for AIS, or Account Information Service, specifically caters to businesses, providing them with seamless access to information about their corporate payment accounts. This service enables businesses to effortlessly monitor the real-time status of their finances through various third-party applications.

AIS empowers corporate users to gain a comprehensive view of their financial transactions and balances, simplifying the management of their financial affairs and facilitating well-informed decision-making about their company's funds. This heightened level of accessibility proves particularly valuable for businesses, offering streamlined monitoring of multiple accounts and supporting efficient financial planning.

It's crucial to recognize that AIS serves as a vital component of PSD2 (Payment Services Directive 2), contributing to financial transparency within the corporate sector. By embracing AIS, businesses enhance their ability to leverage cutting-edge financial tools and services, fostering innovation and competitiveness in the financial landscape.

Start Linking Process

The process of gaining access to the user's account begins with the generation of redirect URL to the bank's interface, where the user can grant consent for access to their account information. After successfully completing the bank's process the user will be redirected to the specified redirect URL,and a callback with the relevant data will be sent. Endpoint dedicated for company bank accounts.

For corporate accounts, certain banks require additional information.

Corporate Bank Accounts:

  • For PKO Bank corporate accounts, the parameter psuContextIdentifierValue is required. The client must obtain this psuContextIdentifierValue from the PKO online banking platform.
  • For Paribas and Credit Agricole corporate accounts, the parameter nip is required. This represents the company's tax identification number (NIP).

State Grouping for Extended Banking Transaction Access

This feature allows grouping of consents (states) so that multiple states within the same group can share tokens, extending the time frame for fetching transactions beyond standard banking limits.

Purpose

  • Many banks impose strict time limits on transaction retrieval using a single consent (state).
  • For example, PKO BP allows only up to 4 hours, after which a new consent is required.
  • This solution will allow fetching transactions for at least 10 hours, which for PKO BP would require three separate consents for the same account.

How It Works

  • States will be grouped by the userId parameter.
  • To belong to the same group, states must have the same userId, bank, or client apiKey.
  • If a userId is not provided, the state will not be assigned to any group.

Implementation Approach

  • The solution should be transparent from the perspective of the API.
  • It may involve new endpoints or extending existing endpoints with optional parameters to support state grouping.

Expected Benefits

Extended transaction retrieval time beyond individual consent limits. ✅ Efficient token sharing across grouped states. ✅ Scalability for future expansion to additional banks.

path Parameters
redirectUri
required
string
Example: https%3A%2F%2redirectUri.com

The address of the page to which the user will be redirected after completing the data sharing authorization process

bankId
required
string
Example: alior

Bank identifier the user will authorize consent for Account Information Service (AIS) and Payment Initiation Services (PIS)

header Parameters
apiKey
required
string
Example: 9693455a2698ff0316f14da3c30a18c97a4d0000

Individual API key assigned by FIZEN enabling connection with FIZEN API

token
required
string
Example: ZzFkMDd4ZTM5MDUxMjI0ZTdmZjhjZTFkZjIxZGZiMWQ0OTZlYzc961==

Individual token assigned by FIZEN enabling connection with FIZEN API

userId
string
Example: 432532453425

The ID of the end user who agreed to provide access to the account information. ID generated on the client's side and passed to API FIZEN.

ip
string
Example: 10.10.54.1

End user IP address

agent
string
Example: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/72.0.3626.96 Safari/537.36

A browser agent that identifies the end user browser and operating system.

limitedScope
required
boolean
Example: true

Value informs whether access to the account will be limited to basic data.

psuContextIdentifierValue
string
Example: PSU-123456789

Required for corporate accounts at PKO Bank. The psuContextIdentifierValue must be obtained from the PKO online banking platform.

nip
string
Example: 1234567890

Required for corporate accounts at Paribas and Credit Agricole. The company's tax identification number (NIP).

Responses

Callbacks

Request samples

curl --request GET \
--url 'https://api.sandbox.fizen.com/{bankId}-company/initiate/{redirectUri}' \
--header 'apiKey: 9693455a2698ff0316f14da3c30a18c97a4d0000' \
--header 'token: ZzFkMDd4ZTM5MDUxMjI0ZTdmZjhjZTFkZjIxZGZiMWQ0OTZlYzc961==' \
--header 'userId: 123' \
--header 'ip: 11.11.00.00' \
--header 'agent: My Agent 1.0' \
--header 'limitedScope: true' \

Response samples

Content type
application/json
{}

Callback payload samples

Callback
POST: Account Information Service callback
Content type
application/json
{
  • "state": "44cbcvb6-f6c8-11ee-test-1bedccc3f6d2",
  • "userId": "Fizen",
  • "bankId": "mbank",
  • "accounts": [
    ]
}

Account Details

This endpoint allows obtaining detailed information about the user's account for which they have previously granted consent, including information such as account owner, account number, account currency, available account balance, and account description. The data returned by our system depends on the information provided by each respective bank. As a result, the details of the response may vary between different banks. Users should account for potential differences in available data when integrating with our API. Endpoint dedicated for company bank accounts. For corporate accounts, certain banks require additional information. Corporate Bank Accounts: - For PKO Bank corporate accounts, the parameter psuContextIdentifierValue is required. The client must obtain this psuContextIdentifierValue from the PKO online banking platform. - For Paribas and Credit Agricole corporate accounts, the parameter nip is required. This represents the company's tax identification number (NIP).

path Parameters
accountId
required
string
Example: VmhJQ0lKSHBKcEJ4TXByNHE2U3BKMG1SU3JXYStFVXBISDdCQUhLaHJXcz0=

The bank account ID to which the end user has consented to provide access to the account information. One of the values necessary to query information about an account

bankId
required
string
Example: alior

Bank identifier the user will authorize consent for Account Information Service (AIS) and Payment Initiation Services (PIS)

psuContextIdentifierValue
any
Example: PSU-123456789

Required for corporate accounts at PKO Bank. The psuContextIdentifierValue must be obtained from the PKO online banking platform.

nip
any
Example: 1234567890

Required for corporate accounts at Paribas and Credit Agricole. The company's tax identification number (NIP).

header Parameters
apiKey
required
string
Example: 9693455a2698ff0316f14da3c30a18c97a4d0000

Individual API key assigned by FIZEN enabling connection with FIZEN API

token
required
string
Example: ZzFkMDd4ZTM5MDUxMjI0ZTdmZjhjZTFkZjIxZGZiMWQ0OTZlYzc961==

Individual token assigned by FIZEN enabling connection with FIZEN API

state
required
string
Example: d2b75e70-c735-13ed-9018-4510c14d98bc

The value generated when starting the linking process for the particular bank interface to authorize consent to retrieve the account information (AIS service)

Responses

Request samples

curl --request GET \
--url 'https://api.sandbox.fizen.com/{bankId}-company/account/{accountId}' \
--header 'apiKey: 9693455a2698ff0316f14da3c30a18c97a4d0000' \
--header 'token: ZzFkMDd4ZTM5MDUxMjI0ZTdmZjhjZTFkZjIxZGZiMWQ0OTZlYzc961==' \
--header 'state: d2b75e70-c135-11ed-9018-4510c14d98vc' \

Response samples

Content type
application/json
{
  • "state": "ODY5MzQ4NWMyNjk4ZmYwMzE2ZjE0ZGEzYzMwYTE4Yzk3YTRkMDY4MV9iYmRjYTc0NC01MDcxLTExZWQtYWY1Zi1hZGVjZDM3MzQyZjRfaW5nX2JiZGNhNzQzLTUwNzEtMTFlZC1hZjVmLTJiMTMzMTA5MjVmZQ==",
  • "userId": 432532453425,
  • "details": {
    }
}

Account Transactions

This endpoint enables access to the transaction history for a specific account number for which consent has been obtained previously. The data returned by our system depends on the information provided by each respective bank. As a result, the details of the response may vary between different banks.

If certain transaction types cannot be retrieved due to an issue (e.g., database timeout, temporary service unavailability), the response will still contain the successfully retrieved transactions and will also include a new field:
transactionsStatusesFetchFailures, which lists the transaction types that failed to be fetched.

If all transaction types fail to be retrieved:

  • The transactions list will be empty.
  • The transactionsStatusesFetchFailures field will include all requested transaction types.

Example Scenarios:

  • Only DONE transactions fail for mBank.
  • Two transaction types fail for Pekao.
  • All transaction types fail for Santander.

Exception Handling

There is one exception to this mechanism:
If the request exceeds the operation limit, the system will return an explicit error response without including the transactions list or the transactionsStatusesFetchFailures field.
In this case, the client must retry the request after resolving the issue (e.g., reducing the number of transactions requested).

Users should account for potential differences in available data when integrating with our API. Endpoint dedicated for company bank accounts.

path Parameters
accountId
required
string
Example: VmhJQ0lKSHBKcEJ4TXByNHE2U3BKMG1SU3JXYStFVXBISDdCQUhLaHJXcz0=

The bank account ID to which the end user has consented to provide access to the account information. One of the values necessary to query information about an account

bankId
required
string
Example: alior

Bank identifier the user will authorize consent for Account Information Service (AIS) and Payment Initiation Services (PIS)

header Parameters
apiKey
required
string
Example: 9693455a2698ff0316f14da3c30a18c97a4d0000

Individual API key assigned by FIZEN enabling connection with FIZEN API

token
required
string
Example: ZzFkMDd4ZTM5MDUxMjI0ZTdmZjhjZTFkZjIxZGZiMWQ0OTZlYzc961==

Individual token assigned by FIZEN enabling connection with FIZEN API

state
required
string
Example: d2b75e70-c735-13ed-9018-4510c14d98bc

The value generated when starting the linking process for the particular bank interface to authorize consent to retrieve the account information (AIS service)

Responses

Request samples

curl --request GET \
--url 'https://api.sandbox.fizen.com/{bankId}-company/account/{accountId}/transactions' \
--header 'apiKey: 9693455a2698ff0316f14da3c30a18c97a4d0000' \
--header 'token: ZzFkMDd4ZTM5MDUxMjI0ZTdmZjhjZTFkZjIxZGZiMWQ0OTZlYzc961==' \
--header 'state: d2b75e70-c135-11ed-9018-4510c14d98vc' \

Response samples

Content type
application/json
{
  • "state": "ODY5MzQ4NWMyNjk4ZmYwMzE2ZjE0ZGEzYzMwYTE4Yzk3YTRkMDY4MV9iYmRjYTc0NC01MDcxLTExZWQtYWY1Zi1hZGVjZDM3MzQyZjRfaW5nX2JiZGNhNzQzLTUwNzEtMTFlZC1hZjVmLTJiMTMzMTA5MjVmZQ==",
  • "userId": 432532453425,
  • "transactions": [
    ],
  • "transactionsStatusesFetchFailures": [
    ]
}

KYC

This service provides a transparent way to access the user's identity by leveraging the granted consent for account access. It provides a field containing crucial information, such as the user's name and address, for precise user identification. Endpoint dedicated for company bank accounts.

path Parameters
accountId
required
string
Example: VmhJQ0lKSHBKcEJ4TXByNHE2U3BKMG1SU3JXYStFVXBISDdCQUhLaHJXcz0=

The bank account ID to which the end user has consented to provide access to the account information. One of the values necessary to query information about an account

bankId
required
string
Example: alior

Bank identifier the user will authorize consent for Account Information Service (AIS) and Payment Initiation Services (PIS)

header Parameters
apiKey
required
string
Example: 9693455a2698ff0316f14da3c30a18c97a4d0000

Individual API key assigned by FIZEN enabling connection with FIZEN API

token
required
string
Example: ZzFkMDd4ZTM5MDUxMjI0ZTdmZjhjZTFkZjIxZGZiMWQ0OTZlYzc961==

Individual token assigned by FIZEN enabling connection with FIZEN API

state
required
string
Example: d2b75e70-c735-13ed-9018-4510c14d98bc

The value generated when starting the linking process for the particular bank interface to authorize consent to retrieve the account information (AIS service)

Responses

Request samples

curl --request GET \
--url 'https://api.sandbox.fizen.com/{bankId}-company/kyc/{accountId}' \
--header 'apiKey: 9693455a2698ff0316f14da3c30a18c97a4d0000' \
--header 'token: ZzFkMDd4ZTM5MDUxMjI0ZTdmZjhjZTFkZjIxZGZiMWQ0OTZlYzc961==' \
--header 'state: d2b75e70-c135-11ed-9018-4510c14d98vc' \

Response samples

Content type
application/json
{
  • "state": "ODY5MzQ4NWMyNjk4ZmYwMzE2ZjE0ZGEzYzMwYTE4Yzk3YTRkMDY4MV9iYmRjYTc0NC01MDcxLTExZWQtYWY1Zi1hZGVjZDM3MzQyZjRfaW5nX2JiZGNhNzQzLTUwNzEtMTFlZC1hZjVmLTJiMTMzMTA5MjVmZQ==",
  • "userId": 432532453425,
  • "nameAddress": "Agata Nowak ul. Astrów 12/1 40-748 Katowice"
}

Domestic Payment

FIZEN's Domestic Payment Services play a crucial role in the seamless processing of payments within a specific country or geographical region.

In this context, a domestic payment involves the transfer of funds from one bank account to another within the same country, typically utilizing the local currency. These payments serve a myriad of business purposes, including settling invoices, facilitating business-to-business transactions, managing payroll, and handling other financial obligations within the same country or region.

In the corporate context, domestic payments play a vital role in ensuring the smooth flow of financial operations. This includes timely payment of suppliers and service providers, enabling seamless transactions between business entities, and maintaining financial stability within the local business environment.

It's crucial to recognize that domestic payments for business accounts are integral to maintaining strong financial relationships and supporting the overall financial health of the company. This functionality is especially beneficial for businesses engaged in various sectors, contributing to the efficient management of financial resources and fostering a robust financial infrastructure.

Payments initiated and approved by users through their banking service hold an irrevocable status. This means that once a user authorizes a transaction, it will be executed as scheduled, and cancellations are not permitted. This commitment ensures the successful delivery of payments, contributing to the reliability and trustworthiness of the domestic payment service. Users can have confidence that their funds will reach the intended destination securely and on time, reinforcing the dependability of the overall payment process.

Start Payment Process

The payment initialization endpoint is a pivotal access point for businesses looking to initiate domestic payment processes seamlessly. In response to this endpoint, a redirect URL is generated, guiding the business user to the bank's authorization page.

On the bank's authorization page, the business user gains the opportunity to meticulously verify the accuracy of the payment details necessary for the transfer and subsequently confirm the payment. Once the user approves the payment, they are redirected to the previously defined page, and the transaction data is transmitted seamlessly via a callback.

This process ensures that businesses can securely and efficiently initiate and verify domestic payments, maintaining a robust and reliable payment initiation workflow for their corporate accounts.

When making a payment, you have the option to perform a split payment.

The split payment mechanism is a payment system in which the amount of VAT, which is separated from the gross amount due to the seller, is transferred to a separate bank account, called a VAT account, to which the seller has limited access.

To successfully initiate a split payment, you must provide all four parameters:
spInvoiceNumber, spTaxIdentificationNumber, spTaxAmount, spDescription.

If at least one of these parameters is provided but others are missing, the split payment request will be rejected.

For corporate accounts, certain banks require additional information.

Corporate Bank Accounts:

  • For PKO Bank corporate accounts, the parameter psuContextIdentifierValue is required. The client must obtain this psuContextIdentifierValue from the PKO online banking platform.
  • For Paribas and Credit Agricole corporate accounts, the parameter nip is required. This represents the company's tax identification number (NIP).
path Parameters
bankId
required
string
Example: alior

Bank identifier the user will authorize consent for Account Information Service (AIS) and Payment Initiation Services (PIS)

redirectUri
required
string
Example: https://redirect-url.com

The address of the page to which the user will be redirected after completing the data sharing authorization process

header Parameters
apiKey
required
string
Example: 9693455a2698ff0316f14da3c30a18c97a4d0000

Individual API key assigned by FIZEN enabling connection with FIZEN API

token
required
string
Example: ZzFkMDd4ZTM5MDUxMjI0ZTdmZjhjZTFkZjIxZGZiMWQ0OTZlYzc961==

Individual token assigned by FIZEN enabling connection with FIZEN API

amount
required
string
Example: 0.99
recipientAccountNumber
string

Recipient Account Number in IBAN format. Value required if Recipient Account Number is not set up by Fizen config

recipientNameAddress
string
Example: Jan Kowalski ul. Zbiorcza 2 m45 90-300 Lodz

Recipient Name & Address. Value required if Recipient Name Address is not set up by Fizen config. To handle Polish characters, URL encoding is necessary.

spInvoiceNumber
string
Example: INV001/2023/24

Payment Invoice Number (Required for split payment mechanism)

spTaxIdentificationNumber
string
Example: 3788796687

Tax Identification Number (NIP) (Required for split payment mechanism)

spTaxAmount
string
Example: 460

Amount of VAT tax (Required for split payment mechanism)

spDescription
string
Example: VAT for January services

A brief description of the payment (Required for split payment mechanism)

senderAccountNumber
string

Sender Account Number in IBAN format. Value required if Sender Account Number is not set up by Fizen config

userId
string
Example: 432532453425

The ID of the end user who agreed to provide access to the account information. ID generated on the client's side and passed to API FIZEN

title
string
Example: FV/1234/22

A transfer title. The title generated on the client's side and passed to API FIZEN. Transfer title length 5-80 signs ([a-zA-Z0-9\_\-\s\.\:/]). To handle Polish characters, URL encoding is necessary. For mBank, the use of the ":" character in the title is not allowed.

ip
string
Example: 10.10.54.1

End user IP address

agent
string
Example: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/72.0.3626.96 Safari/537.36

A browser agent that identifies the end user browser and operating system

psuContextIdentifierValue
string
Example: PSU-123456789

Required for corporate accounts at PKO Bank. The psuContextIdentifierValue must be obtained from the PKO online banking platform.

nip
string
Example: 1234567890

Required for corporate accounts at Paribas and Credit Agricole. The company's tax identification number (NIP).

Responses

Callbacks

Request samples

curl --request GET \
--url 'https://api.sandbox.fizen.com/{bankId}-company/payment/initiate/{redirectUri}' \
--header 'apiKey: 9693455a2698ff0316f14da3c30a18c97a4d0000' \
--header 'token: ZzFkMDd4ZTM5MDUxMjI0ZTdmZjhjZTFkZjIxZGZiMWQ0OTZlYzc961==' \
--header 'amount: 0.99' \
--header 'recipientAccountNumber: PL12345678901234567890123456' \
--header 'recipientNameAddress: Jan Kowalski ul. Zbiorcza 2 m45 90-300 Lodz' \
--header 'userId: 123' \
--header 'title: FV/1234/22' \
--header 'ip: 11.11.00.00' \
--header 'agent: My Agent 1.0' \
--header 'spInvoiceNumber: INV001/2023/24' \
--header 'spTaxIdentificationNumber: 7242354073' \
--header 'spTaxAmount: 23.00' \
--header 'spDescription: VAT for January services'

Response samples

Content type
application/json
{}

Callback payload samples

Callback
POST: Payment Information Service callback
Content type
application/json
{
  • "state": "44cbcvb6-f6c8-11ee-test-1bedccc3f6d2",
  • "userId": "Fizen",
  • "bankId": "mbank",
  • "paymentStatus": "SUBMITTED",
  • "amount": 0.99,
  • "senderAccount": "PL49102028922276300500000000"
}

Payment status

The "Get Payment Status" endpoint empowers business account holders to seamlessly check the status of their payments. When this endpoint is invoked, the system promptly returns the current status of a specific payment, allowing business users to meticulously track the progress and history of their transactions.

This specialized functionality offers business account holders real-time access to the status of their payments, providing a level of transparency and visibility critical for managing financial transactions efficiently. By leveraging this endpoint, businesses can ensure that they stay well-informed about the payment lifecycle, facilitating effective financial monitoring and decision-making within the context of their corporate accounts.

The returned payment statuses may vary depending on the bank, and the timing of status updates can also differ based on the bank's processing schedule.

header Parameters
apiKey
required
string
Example: 9693455a2698ff0316f14da3c30a18c97a4d0000

Individual API key assigned by FIZEN enabling connection with FIZEN API

token
required
string
Example: ZzFkMDd4ZTM5MDUxMjI0ZTdmZjhjZTFkZjIxZGZiMWQ0OTZlYzc961==

Individual token assigned by FIZEN enabling connection with FIZEN API

state
required
string
Example: ODY5MzQ4NWMyNjk4ZmYwMzE2ZjE0ZGEzYzMwYTE4Yzk3YTRkMDY4MV80M2E3

The value generated when starting the linking process for the particular bank interface to authorize consent to initiate payment

Responses

Request samples

curl --request GET \
--url 'https://api.sandbox.fizen.com/payment' \
--header 'apiKey: 9693455a2698ff0316f14da3c30a18c97a4d0000' \
--header 'token: ZzFkMDd4ZTM5MDUxMjI0ZTdmZjhjZTFkZjIxZGZiMWQ0OTZlYzc961==' \
--header 'state: d2b75e70-c135-11ed-9018-4510c14d98vc' \

Response samples

Content type
application/json
{
  • "userId": 432532453425,
  • "bankId": "alior",
  • "paymentStatus": "DONE",
  • "amount": 0.99,
  • "senderAccount": "PL44160084586221235245815289"
}

Recurring Payment

FIZEN's Recurring Payment Services specialize in processing payments on a recurring basis, catering to both individual and business needs. This dedicated service operates similarly to standard payments but offers the added convenience of automated, scheduled payments that occur at regular intervals, such as monthly or weekly.

Businesses, in particular, benefit from the capability to establish recurring payments, allowing them to meet ongoing financial commitments without manual intervention. This ensures that payments are made consistently and punctually, contributing to the smooth operation of financial processes.

This feature provides users, including businesses with corporate accounts, the flexibility to set up and manage recurring financial transactions, streamlining their financial obligations efficiently. Recurring payments can be canceled until the scheduled payment date. This flexibility gives users, especially businesses, full control over their recurring financial transactions, allowing for adjustments as needed. This adaptability is crucial for businesses managing recurring expenses associated with their corporate accounts.

Start Payment Process

The "Initiate Recurring Payment" endpoint streamlines the initiation of recurring payment processes.Endpoint dedicated for company bank accounts. Upon calling this endpoint, a redirect URL is generated in response, directing the user to the bank's authorization page.

On the bank's page, users have the opportunity to verify the accuracy of the payment details required for the recurring transfer and to confirm the payment. Once the payment is approved by the user, they will be redirected to the previously defined page, and the transaction data will be transmitted via a callback.

For corporate accounts, certain banks require additional information.

Corporate Bank Accounts:

  • For PKO Bank corporate accounts, the parameter psuContextIdentifierValue is required. The client must obtain this psuContextIdentifierValue from the PKO online banking platform.
  • For Paribas and Credit Agricole corporate accounts, the parameter nip is required. This represents the company's tax identification number (NIP).
path Parameters
redirectUri
required
string
Example: https%3A%2F%2redirectUri.com

A main url address the user will be redirected to once authorization is done

bankId
required
string
Example: alior

Bank identifier the user will authorize consent for Account Information Service (AIS) and Payment Initiation Services (PIS)

header Parameters
apiKey
required
string
Example: 9693455a2698ff0316f14da3c30a18c97a4d0000

Individual API key assigned by FIZEN enabling connection with FIZEN API

token
required
string
Example: ZzFkMDd4ZTM5MDUxMjI0ZTdmZjhjZTFkZjIxZGZiMWQ0OTZlYzc961==

Individual token assigned by FIZEN enabling connection with FIZEN API

amount
required
string
Example: 0.99
recipientAccountNumber
string
Example: PL12345678901234567890123456

Recipient Account Number in IBAN format. Value required if Recipient Account Number is not set up by Fizen config

recipientNameAddress
string
Example: Jan Kowalski ul. Zbiorcza 2 m45 90-300 Lodz

Recipient Name & Address. Value required if Recipient Name Address is not set up by Fizen config

period
required
string
Enum: "WEEK" "MONTH" "YEAR"
Example: WEEK

payment frequency

startDate
required
string <date-time>
Example: 2024-02-10

Recurring payment start date

endDate
required
string <date-time>
Example: 2025-02-10

Recurring payment end date

userId
string
Example: 432532453425

The ID of the end user who agreed to provide access to the account information. ID generated on the client's side and passed to API FIZEN

title
string
Example: FV/1234/22

A recurring payment title. The title generated on the client's side and passed to API FIZEN. Transfer title length 5-80 signs ([a-zA-Z0-9\_\-\s\.\:/])

ip
string
Example: 10.10.54.1

End user IP address

agent
string
Example: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/72.0.3626.96 Safari/537.36

A browser agent that identifies the end user browser and operating system

psuContextIdentifierValue
string
Example: PSU-123456789

Required for corporate accounts at PKO Bank. The psuContextIdentifierValue must be obtained from the PKO online banking platform.

nip
string
Example: 1234567890

Required for corporate accounts at Paribas and Credit Agricole. The company's tax identification number (NIP).

Responses

Callbacks

Request samples

curl --request GET \
--url 'https://api.sandbox.fizen.com/{bankId}-company/payment/recurring/initiate/{redirectUri}' \
--header 'apiKey: 9693455a2698ff0316f14da3c30a18c97a4d0000' \
--header 'token: ZzFkMDd4ZTM5MDUxMjI0ZTdmZjhjZTFkZjIxZGZiMWQ0OTZlYzc961==' \
--header 'amount: 0.99' \
--header 'recipientAccountNumber: PL12345678901234567890123456' \  
--header 'recipientNameAddress: Jan Kowalski ul. Zbiorcza 2 m45 90-300 Lodz' \ 
--header 'period: WEEK' \
--header 'starteDate: 2024-02-10' \
--header 'endDate: 2025-02-10' \
--header 'userId: 123' \
--header 'title: FV/1234/22' \
--header 'ip: 11.11.00.00' \
--header 'agent: My Agent 1.0' \

Response samples

Content type
application/json
{}

Callback payload samples

Callback
POST: Payment Information Service callback
Content type
application/json
{
  • "state": "44cbcvb6-f6c8-11ee-test-1bedccc3f6d2",
  • "userId": "Fizen",
  • "bankId": "mbank",
  • "paymentStatus": "SUBMITTED",
  • "amount": 0.99,
  • "senderAccount": "PL49102028922276300500000000"
}

Recurring Payment Status

The "Get Recurring Payment Status" endpoint empowers business users to efficiently inquire about the status of their recurring payments. Upon utilizing this endpoint, the system promptly retrieves and furnishes the current status of a specified recurring payment, providing business users with real-time insights into the status of their recurring transactions. The returned payment statuses may vary depending on the bank, and the timing of status updates can also differ based on the bank's processing schedule. This functionality is particularly valuable for companies managing recurring financial commitments, allowing them to stay informed and in control of their ongoing transactions. The seamless access to real-time recurring payment status enhances financial transparency and supports effective decision-making within the corporate context.

header Parameters
apiKey
required
string
Example: 9693455a2698ff0316f14da3c30a18c97a4d0000

Individual API key assigned by FIZEN enabling connection with FIZEN API

token
required
string
Example: ZzFkMDd4ZTM5MDUxMjI0ZTdmZjhjZTFkZjIxZGZiMWQ0OTZlYzc961==

Individual token assigned by FIZEN enabling connection with FIZEN API

state
required
string
Example: ODY5MzQ4NWMyNjk4ZmYwMzE2ZjE0ZGEzYzMwYTE4Yzk3YTRkMDY4MV80M2E3

The value generated when starting the linking process for the particular bank interface to authorize consent to initiate payment

Responses

Request samples

curl --request GET \
--url 'https://api.sandbox.fizen.com/payment/recurring' \
--header 'apiKey: 9693455a2698ff0316f14da3c30a18c97a4d0000' \
--header 'token: ZzFkMDd4ZTM5MDUxMjI0ZTdmZjhjZTFkZjIxZGZiMWQ0OTZlYzc961==' \
--header 'state: d2b75e70-c135-11ed-9018-4510c14d98vc' \
--header 'ip: 11.11.00.00' \
--header 'agent: My Agent 1.0' \

Response samples

Content type
application/json
{
  • "userId": 432532453425,
  • "bankId": "alior",
  • "paymentStatus": "DONE",
  • "amount": 0.99,
  • "senderAccount": "PL44160084586221235245815289"
}

Start Cancel Payment Process

The "Cancel Recurring Payment" endpoint allows users to cancel recurring payments. Upon calling this endpoint, a redirect URL is generated in response, directing the user to the bank's authorization page.

On the bank's page, users have the opportunity to verify the accuracy of the cancel payment request details required for the transfer cancellation and to confirm the operation. Once the cancel payment request is approved by the user, they will be redirected to the previously defined page, and the cancellation status data will be transmitted via a callback.

path Parameters
redirectUri
required
string
Example: https%3A%2F%2redirectUri.com

A main url address the user will be redirected to once authorization is done

bankId
required
string
Example: alior

Bank identifier the user will authorize consent for Account Information Service (AIS) and Payment Initiation Services (PIS)

header Parameters
apiKey
required
string
Example: 9693455a2698ff0316f14da3c30a18c97a4d0000

Individual API key assigned by FIZEN enabling connection with FIZEN API

token
required
string
Example: ZzFkMDd4ZTM5MDUxMjI0ZTdmZjhjZTFkZjIxZGZiMWQ0OTZlYzc961==

Individual token assigned by FIZEN enabling connection with FIZEN API

amount
required
string
Example: 0.99
recipientAccountNumber
string
Example: PL12345678901234567890123456

Recipient Account Number in IBAN format. Value required if Recipient Account Number is not set up by Fizen config

recipientNameAddress
string
Example: Jan Kowalski ul. Zbiorcza 2 m45 90-300 Lodz

Recipient Name & Address. Value required if Recipient Name Address is not set up by Fizen config

period
required
string
Enum: "WEEK" "MONTH" "YEAR"
Example: WEEK

payment frequency

startDate
required
string
Example: 2024-02-10

Recurring payment start date

endDate
required
string <date-time>
Example: 2025-02-10

Recurring payment end date

userId
string
Example: 432532453425

The ID of the end user who agreed to provide access to the account information. ID generated on the client's side and passed to API FIZEN

title
string
Example: FV/1234/22

A recurring payment title. The title generated on the client's side and passed to API FIZEN. Transfer title length 5-80 signs ([a-zA-Z0-9\_\-\s\.\:/]). For mBank, the use of the ":" character in the title is not allowed.

ip
string
Example: 10.10.54.1

End user IP address

agent
string
Example: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/72.0.3626.96 Safari/537.36

A browser agent that identifies the end user browser and operating system

Responses

Callbacks

Request samples

curl --request GET \
--url 'https://api.sandbox.fizen.com/{bankId}-company/payment/recurring/cancel/initiate/{redirectUri}' \
--header 'apiKey: 9693455a2698ff0316f14da3c30a18c97a4d0000' \
--header 'token: ZzFkMDd4ZTM5MDUxMjI0ZTdmZjhjZTFkZjIxZGZiMWQ0OTZlYzc961==' \
--header 'state: ExAmPlEsTaTece1a4cb6-5e83-11ed-a320-856ce1faa777' \
--header 'ip: 11.11.00.00' \
--header 'agent: My Agent 1.0' \

Response samples

Content type
application/json
{}

Callback payload samples

Callback
POST: Payment Information Service callback
Content type
application/json
{
  • "state": "44cbcvb6-f6c8-11ee-test-1bedccc3f6d2",
  • "userId": "Fizen",
  • "bankId": "mbank",
  • "paymentStatus": "SUBMITTED",
  • "amount": 0.99,
  • "senderAccount": "PL49102028922276300500000000"
}

Sepa Payment

FIZEN's SEPA Payment Service enables business account holders to initiate and manage international payments within the Single Euro Payments Area (SEPA). This service operates similarly to domestic payments but is specifically designed for cross-border transactions in EUR, ensuring seamless processing across European financial institutions.

When this service is used, payments are processed according to SEPA standards, allowing businesses to execute international transactions as efficiently as domestic ones. This eliminates the need for traditional international wire transfers and ensures compliance with SEPA regulations.

Key Features:

  • SEPA Standardized Processing: Payments are executed using the SEPA Credit Transfer (SCT) scheme, ensuring compliance with European banking standards.
  • Cross-Border Transactions in EUR: Unlike domestic payments, SEPA transactions require the amount to be specified in EUR, regardless of the sender's local currency.
  • Bank-Dependent Processing Times: The completion time of SEPA payments depends on the recipient's bank and the standard cut-off times set by SEPA regulations.
  • Mandatory Recipient Country Code: Every SEPA transaction requires the ISO country code of the recipient’s bank, ensuring accurate routing.

The SEPA payment service provides businesses with a reliable and standardized method to process payments across European borders while maintaining real-time visibility over transaction statuses. By leveraging this service, businesses can optimize international financial operations with enhanced efficiency and transparency.

SEPA Payment Initiation

The "SEPA Payment Initiation" endpoint enables business account holders to seamlessly initiate SEPA payments within the Single Euro Payments Area (SEPA). This endpoint functions similarly to domestic payments but is specifically designed for cross-border transactions in EUR.

When this endpoint is invoked, the system processes the payment request and returns a confirmation of the initiation, allowing business users to track the progress of their SEPA transactions efficiently.

This functionality ensures that businesses can securely execute SEPA transactions while maintaining real-time transparency over payment processing, helping them optimize international financial operations.

For corporate accounts, certain banks require additional information.

Corporate Bank Accounts:

  • For PKO Bank corporate accounts, the parameter psuContextIdentifierValue is required. The client must obtain this psuContextIdentifierValue from the PKO online banking platform.
  • For Paribas and Credit Agricole corporate accounts, the parameter nip is required. This represents the company's tax identification number (NIP).
path Parameters
bankId
required
string
Example: alior

Bank identifier for authorization of SEPA payment

redirectUri
required
string
Example: https://redirect-url.com

Redirect URL where the user will be sent after authorization

header Parameters
apiKey
required
string
Example: 9693455a2698ff0316f14da3c30a18c97a4d0000

Individual API key assigned by FIZEN enabling connection with FIZEN API

token
required
string
Example: ZzFkMDd4ZTM5MDUxMjI0ZTdmZjhjZTFkZjIxZGZiMWQ0OTZlYzc961==

Individual token assigned by FIZEN enabling connection with FIZEN API

amount
required
string
Example: 1000.00

Payment amount in EUR (format: d+.d{2})

currency
required
string
Value: "EUR"
Example: EUR

Currency for SEPA payments (always EUR)

recipientAccountNumber
required
string
Example: DE89370400440532013000

Recipient's IBAN (International Bank Account Number)

recipientNameAddress
required
string
Example: John Doe, 123 Berlin Street, 10117 Berlin

Recipient's full name and address

reference
string
Example: Invoice 2025-001

Payment reference (e.g., invoice number)

senderAccountNumber
string
Example: FR7630006000011234567890189

Sender's IBAN, required if not pre-configured in Fizen

userId
string
Example: 432532453425

Unique user identifier, generated on the client's side

title
string
Example: SEPA Payment Invoice 1234/24

Transfer title (5-80 characters). For mBank, the use of ":" is not allowed

ip
string
Example: 10.10.54.1

End user IP address

agent
string
Example: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/72.0.3626.96 Safari/537.36

Browser agent identifying the end user's browser and OS

psuContextIdentifierValue
string
Example: PSU-123456789

Required for corporate accounts at PKO Bank. The psuContextIdentifierValue must be obtained from the PKO online banking platform.

nip
string
Example: 1234567890

Required for corporate accounts at Paribas and Credit Agricole. The company's tax identification number (NIP).

Responses

Callbacks

Request samples

curl --request POST \
--url 'https://api.sandbox.fizen.com/mbank/payment/sepa/initiate' \
--header 'apiKey: 9693455a2698ff0316f14da3c30a18c97a4d0000' \
--header 'token: ZzFkMDd4ZTM5MDUxMjI0ZTdmZjhjZTFkZjIxZGZiMWQ0OTZlYzc961==' \
--header 'Content-Type: application/json' \
--data '{
  "amount": "1000.00",
  "currency": "EUR",
  "recipientName": "John Doe",
  "recipientIban": "DE89370400440532013000",
  "recipientCountry": "DE",
  "reference": "Invoice 2025-001"
}'

Response samples

Content type
application/json
{}

Callback payload samples

Callback
POST: Payment Information Service callback
Content type
application/json
{
  • "state": "44cbcvb6-f6c8-11ee-test-1bedccc3f6d2",
  • "userId": "Fizen",
  • "bankId": "mbank",
  • "paymentStatus": "SUBMITTED",
  • "amount": 0.99,
  • "senderAccount": "PL49102028922276300500000000"
}

SEPA Payment Status

The "Get SEPA Payment Status" endpoint allows business account holders to seamlessly check the status of their SEPA payments within the Single Euro Payments Area (SEPA). When this endpoint is invoked, the system promptly returns the current status of a specific SEPA payment, enabling business users to track their international transactions efficiently.

Key Features:

  • Real-Time Tracking: Businesses receive up-to-date payment statuses, ensuring they remain informed about their transactions.
  • Cross-Border SEPA Monitoring: Unlike domestic payments, SEPA transactions involve additional processing layers and may experience variations in update frequency based on the involved banks.

The returned SEPA payment statuses may vary depending on the recipient's bank and country, and the timing of updates may differ due to international banking regulations and cut-off times.

header Parameters
apiKey
required
string
Example: 9693455a2698ff0316f14da3c30a18c97a4d0000

Individual API key assigned by FIZEN enabling connection with FIZEN API

token
required
string
Example: ZzFkMDd4ZTM5MDUxMjI0ZTdmZjhjZTFkZjIxZGZiMWQ0OTZlYzc961==

Individual token assigned by FIZEN enabling connection with FIZEN API

state
required
string
Example: ODY5MzQ4NWMyNjk4ZmYwMzE2ZjE0ZGEzYzMwYTE4Yzk3YTRkMDY4MV80M2E3

The value generated when starting the linking process for the particular bank interface to authorize consent to initiate payment

Responses

Request samples

curl --request GET \
--url 'https://api.sandbox.fizen.com/mbank/payment/sepa/status' \
--header 'apiKey: 9693455a2698ff0316f14da3c30a18c97a4d0000' \
--header 'token: ZzFkMDd4ZTM5MDUxMjI0ZTdmZjhjZTFkZjIxZGZiMWQ0OTZlYzc961==' \
--header 'state: d2b75e70-c135-11ed-9018-4510c14d98vc' \

Response samples

Content type
application/json
{}