### Get Corporate Settings Response Sample Source: https://api.monobank.ua/docs/corporate.html Example JSON response for retrieving corporate settings. Includes public key, company name, permission, logo, and webhook URL. ```json { * "pubkey": "LS0tLS1CRUdJTiBQVUJMSUMgS0VZLS0tLS0\KTUZZd0VBWUhLb1pJemow...", * "name": "Компанія", * "permission": "psf", * "logo": "iVBORw0KGgoAAAANSUhEUgAAAUAAAACECAYAAADhnvK8AAAapElEQVR42...", * "webhook": "https://example.com/mono/corp/webhook/maybesomegibberishuniquestringbutnotnecessarily" } ``` -------------------------------- ### Get Client Information Source: https://api.monobank.ua/docs/corporate.html Retrieves information about the client and a list of their accounts. Requires authentication headers. ```APIDOC ## Get Client Information ### Description Retrieves information about the client and a list of their accounts. ### Method GET ### Endpoint /personal/client-info ### Headers - **X-Key-Id** (string, required) - Service key ID. - **X-Time** (string, required) - Current time in seconds (UTC). - **X-Request-Id** (string, required) - Request ID. - **X-Sign** (string, required) - Signature generated from X-Time, X-Request-Id, and URL. ### Responses - **200**: Statement list - **400**: Invalid request parameters - **401**: Request is unauthorized yet - **403**: Forbidden - **404**: Data is not exist - **429**: Too many requests ### Response Example (200) ```json { "clientId": "3MSaMMtczs", "name": "Мазепа Іван", "webHookUrl": "https://mysomesite.copm/some_random_data_for_security", "permissions": "psf", "accounts": [ { "id": "kKGVoZuHWzqVoZuH", "sendId": "uHWzqVoZuH", "balance": 10000000, "creditLimit": 10000000, "type": "black", "currencyCode": 980, "cashbackType": "UAH", "maskedPan": [ "537541******1234" ], "iban": "UA733220010000026201234567890" } ] } ``` ``` -------------------------------- ### Get Client Information Source: https://api.monobank.ua/docs/index.html Retrieves information about the client, including their accounts and jars. This function is limited to one call every 60 seconds. ```json { "clientId": "3MSaMMtczs", "name": "Мазепа Іван", "webHookUrl": "https://example.com/some_random_data_for_security", "permissions": "psfj", "accounts": [ { "id": "kKGVoZuHWzqVoZuH", "sendId": "uHWzqVoZuH", "balance": 10000000, "creditLimit": 10000000, "type": "black", "currencyCode": 980, "cashbackType": "UAH", "maskedPan": [ "537541******1234" ], "iban": "UA733220010000026201234567890" } ], "jars": [ { "id": "kKGVoZuHWzqVoZuH", "sendId": "uHWzqVoZuH", "title": "На тепловізор", "description": "На тепловізор", "currencyCode": 980, "balance": 1000000, "goal": 10000000 } ], "managedClients": [ { "clientId": "kKGVoZuHWzqVoZuH", "tin": 1234567890, "name": "Шевченко Роман Петрович", "accounts": [ { "id": "kKGVoZuHWzqVoZuH", "balance": 10000000, "creditLimit": 10000000, "type": "fop", "currencyCode": 980, "iban": "UA733220010000026201234567890" } ] } ] } ``` -------------------------------- ### Initiate Client Personal Data Access Request Source: https://api.monobank.ua/docs/corporate.html Example JSON response for initiating a request to access client personal data. Includes a token request ID and an accept URL for user authorization. ```json { * "tokenRequestId": "uLkwh3NzFAfEkj7urj5C7AU_", * "acceptUrl": "https://mbnk.app/auth/uLkwh3NzFAfEkj7urj5C7AU_" } ``` -------------------------------- ### Get Client Information Endpoint Source: https://api.monobank.ua/docs/corporate.html Endpoint for retrieving client information and their accounts. Requires specific headers for authentication. ```http GET /personal/client-info https://api.monobank.ua/personal/client-info ``` -------------------------------- ### Get Bank Public Key Source: https://api.monobank.ua/docs/index.html Retrieves the bank's public key, its identifier, and the server time. ```APIDOC ## GET /bank/sync ### Description Get the bank's public key, its identifier, and the server time. ### Method GET ### Endpoint https://api.monobank.ua/bank/sync ### Response #### Success Response (200) - **serverKeyId** (string) - The identifier for the server's public key. - **serverPubKey** (string) - The server's public key. - **serverTimeMsec** (integer) - The server time in milliseconds. ### Response Example ```json { "serverKeyId": "2626ff34473bb66260b930af946fa9641a06bcd4", "serverPubKey": "BNDZP+AGoRC+ER1plDSUCHOw2/aBNIocmD2gS/v34/b0iQ1HBo+oS3/f402e3OXA5uCxakSjuxGMP6X0XP9VIUk=", "serverTimeMsec": 1755509467397 } ``` ``` -------------------------------- ### Set Up Webhook URL Source: https://api.monobank.ua/docs/index.html Sets the user's webhook URL for receiving event notifications. A GET request to the provided URL is made for validation, and POST requests with event data will be sent if validation succeeds. If the user's service does not respond within 5 seconds, retries will occur at 60 and 600-second intervals. ```json { "webHookUrl": "https://example.com/some_random_data_for_security" } ``` -------------------------------- ### Get Company Information Source: https://api.monobank.ua/docs/corporate.html Retrieves information about the corporate client's company. ```APIDOC ## GET /personal/corp/settings ### Description Retrieves information about the corporate client's company. ### Method GET ### Endpoint https://api.monobank.ua/personal/corp/settings ### Header Parameters - **X-Key-Id** (string) - Required - ID of the service key. - **X-Request-Id** (string) - Required - Request ID. - **X-Time** (string) - Required - Current time in seconds (UTC). - **X-Sign** (string) - Required - Sign (X-Time | URL). ### Responses #### Success Response (200) - **pubkey** (string) - Public key of the company. - **name** (string) - Company name. - **permission** (string) - Company permission level. - **logo** (string) - Company logo in base64 format. - **webhook** (string) - URL for webhook notifications. #### Error Responses - **400** - Invalid request parameters - **403** - Forbidden - **429** - Too many requests ### Response Example (200) { "pubkey": "LS0tLS1CRUdJTiBQVUJMSUMgS0VZLS0tLS0\nTUZZd0VBWUhLb1pJemow...", "name": "Компанія", "permission": "psf", "logo": "iVBORw0KGgoAAAANSUhEUgAAAUAAAACECAYAAADhnvK8AAAapElEQVR42...", "webhook": "https://example.com/mono/corp/webhook/maybesomegibberishuniquestringbutnotnecessarily" } ``` -------------------------------- ### Set Webhook Request Source: https://api.monobank.ua/docs/corporate.html Configure a webhook to receive real-time payment updates. The webhook URL will receive POST requests with transaction data. A test POST request is sent to validate the URL upon setup. ```json { "webHookUrl": "https://example.com/mono/corp/webhook/maybesomegibberishuniquestringbutnotnecessarily" } ``` -------------------------------- ### Get Signature Status Source: https://api.monobank.ua/docs/corporate.html Retrieves the signing status for a given request ID. ```APIDOC ## GET /personal/signature/status ### Description Retrieves the signing status for a given request ID. ### Method GET ### Endpoint https://api.monobank.ua/personal/signature/status?requestId={requestId} ### Headers - **X-Key-Id** (string) - Required - Service key ID. - **X-Time** (string) - Required - Current time in seconds (UTC). - **X-Sign** (string) - Required - Signature calculated from X-Time and URL. ### Parameters #### Query Parameters - **requestId** (string) - Required - Identifier for the signature request. ### Response #### Success Response (200) - **documents** (Array of objects) - List of documents and their signing status. - **status** (string) - Signing status of the document (e.g., 'signed'). - **name** (string) - Document name. - **hash** (string) - Document hash. - **type** (string) - Document type. - **link** (string) - URL to the document. - **signers** (Array of objects) - List of signers for the document. - **name** (string) - Signer's name. - **tin** (string) - Signer's TIN. - **certSerial** (string) - Certificate serial number. - **signature** (string) - Signature data. - **date** (string) - Signature date. - **edrpou** (string) - Signer's EDRPOU. - **company** (string) - Signer's company. - **post** (string) - Signer's post. #### Response Example ```json { "documents": [ { "status": "signed", "name": "Договір на поставку товарів", "hash": "A421FD4D4AB19BE76EC02A0F84AC2379822943FE85EB6ED7F22B30F73CB9CAF9", "type": "pdf", "link": "https://example.com/agreement.pdf", "signers": [ { "name": "Шевченко Роман Петрович", "tin": "1234567890", "certSerial": "382367105294AF970400000058B38300BAE33C02", "signature": "MIIJQwIBADANBgkqhkiG9w0BAQEFAASCCS0wggkpAgEAAoICAQD...", "date": "2025-01-21T18:15:00.000Z", "edrpou": "12345678", "company": "ТОВ \"Сорока\"", "post": "Директор" } ] } ] } ``` ``` -------------------------------- ### Get Currency Exchange Rates Source: https://api.monobank.ua/docs/corporate.html Retrieves a list of currency exchange rates. Information is cached and updated at most once every 5 minutes. ```json [ { "currencyCodeA": 840, "currencyCodeB": 980, "date": 1552392228, "rateSell": 27, "rateBuy": 27.2, "rateCross": 27.1 } ] ``` -------------------------------- ### Get Authorization Status Response Source: https://api.monobank.ua/docs/corporate.html A successful response for the authorization status request will indicate the status and a key ID. ```json { "status": "Approved", "keyId": "string" } ``` -------------------------------- ### Get Client Info Source: https://api.monobank.ua/docs/index.html Retrieves information about the client, including their accounts and associated banks. This function is limited to a maximum of one call every 60 seconds. ```APIDOC ## Get Client Info ### Description Retrieves information about the client and a list of their accounts and banks. Usage is limited to once every 60 seconds. ### Method GET ### Endpoint /personal/client-info ### Headers - **X-Token** (string) - Required - Token for personal API access. ### Responses #### Success Response (200) Returns client information including accounts, jars, and managed clients. ### Response Example ```json { "clientId": "3MSaMMtczs", "name": "Мазепа Іван", "webHookUrl": "https://example.com/some_random_data_for_security", "permissions": "psfj", "accounts": [ { "id": "kKGVoZuHWzqVoZuH", "sendId": "uHWzqVoZuH", "balance": 10000000, "creditLimit": 10000000, "type": "black", "currencyCode": 980, "cashbackType": "UAH", "maskedPan": [ "537541******1234" ], "iban": "UA733220010000026201234567890" } ], "jars": [ { "id": "kKGVoZuHWzqVoZuH", "sendId": "uHWzqVoZuH", "title": "На тепловізор", "description": "На тепловізор", "currencyCode": 980, "balance": 1000000, "goal": 10000000 } ], "managedClients": [ { "clientId": "kKGVoZuHWzqVoZuH", "tin": 1234567890, "name": "Шевченко Роман Петрович", "accounts": [ { "id": "kKGVoZuHWzqVoZuH", "balance": 10000000, "creditLimit": 10000000, "type": "fop", "currencyCode": 980, "iban": "UA733220010000026201234567890" } ] } ] } ``` ``` -------------------------------- ### Get Bank Public Key Source: https://api.monobank.ua/docs/index.html Retrieves the bank's public key, its identifier, and the server time. This is used for secure communication with the API. ```json { "serverKeyId": "2626ff34473bb66260b930af946fa9641a06bcd4", "serverPubKey": "BNDZP+AGoRC+ER1plDSUCHOw2/aBNIocmD2gS/v34/b0iQ1HBo+oS3/f402e3OXA5uCxakSjuxGMP6X0XP9VIUk=", "serverTimeMsec": 1755509467397 } ``` -------------------------------- ### Get Currency Exchange Rates Source: https://api.monobank.ua/docs/index.html Retrieves a basic list of Monobank's currency exchange rates. The information is cached and updated no more frequently than once every 5 minutes. ```APIDOC ## GET /bank/currency ### Description Get a basic list of Monobank's currency exchange rates. Information is cached and updated no more than once every 5 minutes. ### Method GET ### Endpoint https://api.monobank.ua/bank/currency ### Response #### Success Response (200) - **currencyCodeA** (integer) - The code of the first currency. - **currencyCodeB** (integer) - The code of the second currency. - **date** (integer) - The date of the rate in Unix timestamp format. - **rateSell** (number) - The selling rate. - **rateBuy** (number) - The buying rate. - **rateCross** (number) - The cross rate. ### Response Example ```json [ { "currencyCodeA": 840, "currencyCodeB": 980, "date": 1552392228, "rateSell": 27, "rateBuy": 27.2, "rateCross": 27.1 } ] ``` ``` -------------------------------- ### Get Currency Exchange Rates Source: https://api.monobank.ua/docs/index.html Retrieves a list of Monobank's currency exchange rates. Information is cached and updated at most once every 5 minutes. ```json [ { "currencyCodeA": 840, "currencyCodeB": 980, "date": 1552392228, "rateSell": 27, "rateBuy": 27.2, "rateCross": 27.1 } ] ``` -------------------------------- ### Get Statement Source: https://api.monobank.ua/docs/index.html Retrieves a statement for a specified account within a given time range. The maximum period for retrieval is 31 days plus 1 hour, and calls are limited to once every 60 seconds. ```APIDOC ## Get Statement ### Description Retrieves a statement for a specified time range ({from} to {to}) in seconds (Unix time). The maximum period for which a statement can be retrieved is 31 days + 1 hour (2,682,000 seconds). Usage is limited to once every 60 seconds. ### Method GET ### Endpoint /personal/statement/{account}/{from}/{to} ### Path Parameters - **account** (string) - Required - The identifier of the account or bank from the Statement list, or 0 for the default account. - **from** (string) - Required - The start time of the statement in Unix time. Example: 1546304461 - **to** (string) - Optional - The end time of the statement in Unix time. If absent, the current time will be used. Example: 1546306461 ### Headers - **X-Token** (string) - Required - Token for personal API access. ### Responses #### Success Response (200) Returns a list of statement items. ### Response Example ```json [ { "id": "ZuHWzqkKGVo=", "time": 1554466347, "description": "Покупка щастя", "mcc": 7997, "originalMcc": 7997, "hold": false, "amount": -95000, "operationAmount": -95000, "currencyCode": 980, "commissionRate": 0, "cashbackAmount": 19000, "balance": 10050000, "comment": "За каву", "receiptId": "XXXX-XXXX-XXXX-XXXX", "invoiceId": "2103.в.27", "counterEdrpou": "3096889974", "counterIban": "UA898999980000355639201001404", "counterName": "ТОВАРИСТВО З ОБМЕЖЕНОЮ ВІДПОВІДАЛЬНІСТЮ «ВОРОНА»" } ] ``` ``` -------------------------------- ### Set Webhook URL Source: https://api.monobank.ua/docs/index.html Sets the user's webhook URL for receiving event notifications. A GET request is sent to the URL for validation, and subsequent events are sent via POST requests. ```APIDOC ## Set Webhook URL ### Description Sets the user's webhook URL. A GET request is sent to the provided URL for validation. If successful, POST requests with events will be sent to this address. Events are sent in the format `{type: "StatementItem", data:{account: "...", statementItem:{#StatementItem}}}`. If the user's service does not respond within 5 seconds, the system will retry after 60 and 600 seconds. If the third attempt fails, the function will be disabled. The server's response must strictly contain an HTTP status code of 200. ### Method POST ### Endpoint /personal/webhook ### Headers - **X-Token** (string) - Required - Token for personal API access. ### Request Body - **webHookUrl** (string) - Required - The URL to receive webhook notifications. ### Request Example ```json { "webHookUrl": "https://example.com/some_random_data_for_security" } ``` ### Responses #### Success Response (200) Indicates that the webhook URL has been set successfully. ``` -------------------------------- ### Get Authorization Status Request Source: https://api.monobank.ua/docs/corporate.html Send a POST request to retrieve the status of a company's authorization request. Ensure to include the required headers and a valid PEM public key in the request body. ```json { "pubkey": "LS0tLS1CRUdJTiBQVUJMSUMgS0VZLS0tLS0KTUZZd0VBWUhLb1pJemow..." } ``` -------------------------------- ### Get Personal Statement Source: https://api.monobank.ua/docs/corporate.html Retrieve a bank statement for a specified account and time range. Ensure all required path and header parameters are correctly provided. The time range is limited to 31 days plus one hour. ```http GET https://api.monobank.ua/personal/statement/{account}/{from}/{to} ``` -------------------------------- ### Get Transaction Statement Source: https://api.monobank.ua/docs/index.html Retrieves a statement of transactions for a given account within a specified time range. The maximum period for which a statement can be retrieved is 31 days plus 1 hour (2682000 seconds). This function is limited to one call every 60 seconds. ```json [ { "id": "ZuHWzqkKGVo=", "time": 1554466347, "description": "Покупка щастя", "mcc": 7997, "originalMcc": 7997, "hold": false, "amount": -95000, "operationAmount": -95000, "currencyCode": 980, "commissionRate": 0, "cashbackAmount": 19000, "balance": 10050000, "comment": "За каву", "receiptId": "XXXX-XXXX-XXXX-XXXX", "invoiceId": "2103.в.27", "counterEdrpou": "3096889974", "counterIban": "UA898999980000355639201001404", "counterName": "ТОВАРИСТВО З ОБМЕЖЕНОЮ ВІДПОВІДАЛЬНІСТЮ «ВОРОНА»" } ] ``` -------------------------------- ### Statement Response Sample Source: https://api.monobank.ua/docs/corporate.html This is a sample JSON response for a successful statement retrieval (200 OK). It includes transaction details such as ID, time, description, amounts, currency, and counterparty information. ```json [ { "id": "ZuHWzqkKGVo=", "time": 1554466347, "description": "Покупка щастя", "mcc": 7997, "originalMcc": 7997, "hold": false, "amount": -95000, "operationAmount": -95000, "currencyCode": 980, "commissionRate": 0, "cashbackAmount": 19000, "balance": 10050000, "comment": "За каву", "receiptId": "XXXX-XXXX-XXXX-XXXX", "counterEdrpou": "3096889974", "counterIban": "UA898999980000355639201001404", "counterName": "ТОВАРИСТВО З ОБМЕЖЕНОЮ ВІДПОВІДАЛЬНІСТЮ «ВОРОНА»" } ] ``` -------------------------------- ### Initiate Client Data Access Request Source: https://api.monobank.ua/docs/corporate.html Creates a request for access to client personal data, which requires client consent. ```APIDOC ## POST /personal/auth/request ### Description Creates a request for access to client personal data. This process requires client consent and is only available to authorized companies. ### Method POST ### Endpoint https://api.monobank.ua/personal/auth/request ### Header Parameters - **X-Key-Id** (string) - Required - ID of the service key. - **X-Time** (string) - Required - Current time in seconds (UTC). - **X-Sign** (string) - Required - Sign (X-Time | URL). - **X-Callback** (string) - Required - Callback URL that will be invoked by the service after the client confirms granting access (GET request with X-Request-Id header). ### Responses #### Success Response (200) - **tokenRequestId** (string) - The unique ID for the token request. - **acceptUrl** (string) - The URL where the client can accept or deny the access request. #### Error Responses - **400** - Invalid request parameters - **403** - Forbidden - **429** - Too many requests ### Response Example (200) { "tokenRequestId": "uLkwh3NzFAfEkj7urj5C7AU_", "acceptUrl": "https://mbnk.app/auth/uLkwh3NzFAfEkj7urj5C7AU_" } ``` -------------------------------- ### Set Webhook Response Source: https://api.monobank.ua/docs/corporate.html A successful response indicates that the webhook has been successfully set up or removed. ```json { } ``` -------------------------------- ### Retrieve Client Information and Accounts Source: https://api.monobank.ua/docs/corporate.html Obtain client details and a list of their accounts. This endpoint requires specific headers for authentication and request identification. ```json { "clientId": "3MSaMMtczs", "name": "Мазепа Іван", "webHookUrl": "https://mysomesite.copm/some_random_data_for_security", "permissions": "psf", "accounts": [ { "id": "kKGVoZuHWzqVoZuH", "sendId": "uHWzqVoZuH", "balance": 10000000, "creditLimit": 10000000, "type": "black", "currencyCode": 980, "cashbackType": "UAH", "maskedPan": [ "537541******1234" ], "iban": "UA733220010000026201234567890" } ] } ``` -------------------------------- ### Verify Access to Client Data Source: https://api.monobank.ua/docs/corporate.html Use this endpoint to check the status of a request for access to client data. Ensure all required headers are included. ```http GET /personal/auth/request https://api.monobank.ua/personal/auth/request ``` -------------------------------- ### Create Signature Request Source: https://api.monobank.ua/docs/corporate.html Creates a new request for signing documents with monoКЕП. The request is valid for 3 days and provides a deeplink for the mobile application. ```APIDOC ## POST /personal/signature/create ### Description Creates a new request for signing documents with monoКЕП. The request is valid for 3 days and provides a deeplink for the mobile application. ### Method POST ### Endpoint https://api.monobank.ua/personal/signature/create ### Headers - **X-Key-Id** (string) - Required - Service key ID. - **X-Time** (string) - Required - Current time in seconds (UTC). - **X-Sign** (string) - Required - Signature calculated from X-Time and URL. ### Parameters #### Request Body - **documents** (Array of objects) - Required - List of documents for signing. Max 10 items. - **name** (string) - Document name. - **hash** (string) - Document hash. - **type** (string) - Document type (e.g., 'pdf'). - **link** (string) - URL to the document. - **oneSigner** (boolean) - Optional - If true, only one signer can sign. Defaults to true. - **callbackUrl** (string) - Optional - URL to notify about the signing status. ### Request Example ```json { "documents": [ { "name": "Договір на поставку товарів", "hash": "A421FD4D4AB19BE76EC02A0F84AC2379822943FE85EB6ED7F22B30F73CB9CAF9", "type": "pdf", "link": "https://example.com/agreement.pdf" } ], "oneSigner": true, "callbackUrl": "https://example.com/some_random_data_for_security" } ``` ### Response #### Success Response (200) - **requestId** (string) - Identifier for the signature request. - **deeplink** (string) - Deeplink to open the request in the mobile application. #### Response Example ```json { "requestId": "sGtN4FnxYORZQU5Me1HbYhQ", "deeplink": "https://mbnk.app/sign/sGtN4FnxYORZQU5Me1HbYhQ" } ``` ``` -------------------------------- ### Create Document Signing Request Source: https://api.monobank.ua/docs/corporate.html Use this endpoint to create a request for signing documents. The request includes document details, signer information, and a callback URL. A deeplink will be provided in the response for mobile app integration. ```json { "documents": [ { "name": "Договір на поставку товарів", "hash": "A421FD4D4AB19BE76EC02A0F84AC2379822943FE85EB6ED7F22B30F73CB9CAF9", "type": "pdf", "link": "https://example.com/agreement.pdf" } ], "oneSigner": true, "callbackUrl": "https://example.com/some_random_data_for_security" } ``` -------------------------------- ### Company Registration Response (Success) Source: https://api.monobank.ua/docs/corporate.html A successful response to a company registration request. The 'status' field indicates the current state of the application. ```json { "status": "New" } ``` -------------------------------- ### Статус заявки Source: https://api.monobank.ua/docs/corporate.html Отримання статусу заявки на авторизацію компанії банком. Includes header parameters for authentication and a JSON request body with a public key. ```APIDOC ## POST /personal/auth/registration/status ### Description Отримання статусу заявки на авторизацію компанії банком. ### Method POST ### Endpoint https://api.monobank.ua/personal/auth/registration/status ### Parameters #### Header Parameters - **X-Time** (string) - Required - Поточний час у секундах (UTC) - **X-Sign** (string) - Required - Sign (X-Time | URL) #### Request Body - **pubkey** (string) - Required - Файл PEM із відкритим ключом secp256k1 у форматі base64 ### Request Example Content type: application/json ```json { "pubkey": "LS0tLS1CRUdJTiBQVUJMSUMgS0VZLS0tLS0KTUZZd0VBWUhLb1pJemow..." } ``` ### Response #### Success Response (200) Статус заявки на авторизацію компанії #### Response Example Content type: application/json ```json { "status": "Approved", "keyId": "string" } ``` #### Error Responses - **400** - Invalid request parameters - **403** - Forbidden - **429** - Too many requests ``` -------------------------------- ### Check Access Source: https://api.monobank.ua/docs/corporate.html Checks the status of a request for access to client data. Requires specific headers for authentication and request identification. ```APIDOC ## Check Access ### Description Checks the status of a request for access to client data. ### Method GET ### Endpoint /personal/auth/request ### Headers - **X-Key-Id** (string, required) - Service key ID. - **X-Time** (string, required) - Current time in seconds (UTC). - **X-Request-Id** (string, required) - Request ID. - **X-Sign** (string, required) - Signature generated from X-Time, X-Request-Id, and URL. ### Responses - **200**: Access granted - **400**: Invalid request parameters - **401**: Request is unauthorized yet - **403**: Forbidden - **404**: Request is not exist - **429**: Too many requests ``` -------------------------------- ### Create Authorization Request Source: https://api.monobank.ua/docs/corporate.html Allows authorized companies to create a request for authorization to access client personal data. Requires providing service information and a public key. ```APIDOC ## POST /personal/auth/registration ### Description Creates an authorization request for a company to access client personal data. This involves submitting service details and a public key. ### Method POST ### Endpoint https://api.monobank.ua/personal/auth/registration ### Headers - **X-Time** (string) - Required - Current time in seconds (UTC) - **X-Sign** (string) - Required - Sign (X-Time | URL) ### Request Body - **pubkey** (string) - Required - PEM file with the secp256k1 public key in base64 format - **name** (string) - Required - Company name - **description** (string) - Required - Description of company services and API usage purpose - **contactPerson** (string) - Required - Contact person - **phone** (string) - Required - Contact person's phone number - **email** (string) - Required - Contact person's email - **logo** (string) - Required - File with the company logo image in base64 format ### Request Example ```json { "pubkey": "LS0tLS1CRUdJTiBQVUJMSUMgS0VZLS0tLS0\nTUZZd0VBWUhLb1pJemow...", "name": "ТОВ \"Ворона\"", "description": "Ми робимо найрозумніший PFM з усіх можливих і нам потрібен доступ до виписка користувача, щоб створювати красиву статистику", "contactPerson": "Роман Шевченко", "phone": "380671234567", "email": "etс@example.com", "logo": "iVBORw0KGgoAAAANSUhEUgAAAUAAAACECAYAAADhnvK8AAAapElEQVR42..." } ``` ### Responses #### Success Response (200) - **status** (string) - Indicates the status of the request, e.g., "New" #### Response Example ```json { "status": "New" } ``` #### Error Responses - **400** - Invalid request parameters - **403** - Forbidden - **429** - Too many requests ``` -------------------------------- ### Встановлення вебхуку Source: https://api.monobank.ua/docs/corporate.html Встановлення вебхуку для отримання оновлень щодо платежів клієнтів. Requires header parameters for authentication and a JSON request body with the webhook URL. ```APIDOC ## POST /personal/corp/webhook ### Description Встановлення вебхуку для отримання оновлень щодо платежів клієнтів. ### Method POST ### Endpoint https://api.monobank.ua/personal/corp/webhook ### Parameters #### Header Parameters - **X-Key-Id** (string) - Required - ID ключа сервісу - **X-Request-Id** (string) - Required - Request id - **X-Time** (string) - Required - Поточний час у секундах (UTC) - **X-Sign** (string) - Required - Sign (X-Time | URL) #### Request Body - **webHookUrl** (string) - Required - Адреса для CallBack (POST) – на цю адресу буде надіслано дані по транзакціям. Під час виклику апі буде виконано тестовий POST-запит за цією адресою. Якщо на нього не буде відповіді 200 ОК, виклик апі завершиться помилкою. ### Request Example Content type: application/json ```json { "webHookUrl": "https://example.com/mono/corp/webhook/maybesomegibberishuniquestringbutnotnecessarily" } ``` ### Response #### Success Response (200) Вебхук успішно встановлено або видалено #### Response Example Content type: application/json ```json { } ``` #### Error Responses - **400** - Invalid request parameters - **403** - Forbidden - **429** - Too many requests ``` -------------------------------- ### Company Registration Request Payload Source: https://api.monobank.ua/docs/corporate.html This JSON payload is used to register a company for API access. Ensure all required fields like pubkey, name, description, contact details, and logo are correctly formatted. ```json { "pubkey": "LS0tLS1CRUdJTiBQVUJMSUMgS0VZLS0tLS0\KTUZZd0VBWUhLb1pJemow...", "name": "ТОВ \"Ворона\"", "description": "Ми робимо найрозумніший PFM з усіх можливих і нам потрібен доступ до виписка користувача, щоб створювати красиву статистику", "contactPerson": "Роман Шевченко", "phone": "380671234567", "email": "etс@example.com", "logo": "iVBORw0KGgoAAAANSUhEUgAAAUAAAACECAYAAADhnvK8AAAapElEQVR42..." } ``` -------------------------------- ### Document Signing Request Response Source: https://api.monobank.ua/docs/corporate.html Response upon successful creation of a document signing request. It contains a unique requestId and a deeplink to open the request in the mobile application. ```json { "requestId": "sGtN4FnxYORZQU5Me1HbYhQ", "deeplink": "https://mbnk.app/sign/sGtN4FnxYORZQU5Me1HbYhQ" } ``` -------------------------------- ### Document Signing Status Response Source: https://api.monobank.ua/docs/corporate.html Response detailing the status of documents within a signing request. It includes the status of each document, signer information, and signature details if available. ```json { "documents": [ { "status": "signed", "name": "Договір на поставку товарів", "hash": "A421FD4D4AB19BE76EC02A0F84AC2379822943FE85EB6ED7F22B30F73CB9CAF9", "type": "pdf", "link": "https://example.com/agreement.pdf", "signers": [ { "name": "Шевченко Роман Петрович", "tin": "1234567890", "certSerial": "382367105294AF970400000058B38300BAE33C02", "signature": "MIIJQwIBADANBgkqhkiG9w0BAQEFAASCCS0wggkpAgEAAoICAQD...", "date": "2025-01-21T18:15:00.000Z", "edrpou": "12345678", "company": "ТОВ \"Сорока\"", "post": "Директор" } ] } ] } ``` -------------------------------- ### Cancel Signature Request Source: https://api.monobank.ua/docs/corporate.html Cancels an existing signature request using its request ID. ```APIDOC ## DELETE /personal/signature/cancel ### Description Cancels an existing signature request using its request ID. ### Method DELETE ### Endpoint https://api.monobank.ua/personal/signature/cancel?requestId={requestId} ### Headers - **X-Key-Id** (string) - Required - Service key ID. - **X-Time** (string) - Required - Current time in seconds (UTC). - **X-Sign** (string) - Required - Signature calculated from X-Time and URL. ### Parameters #### Query Parameters - **requestId** (string) - Required - Identifier for the signature request. ### Response #### Success Response (200) An empty JSON object indicates successful cancellation. #### Response Example ```json { } ``` ``` === COMPLETE CONTENT === This response contains all available snippets from this library. No additional content exists. Do not make further requests.