Bank 131 API

website·Indexed 34 days ago

https://developer.131.ru

API for internet platforms offering online services, including payouts from settlement, escrow, and collateral accounts, recurring payments, money transfers, and fiscalization for self-employed individuals. The documentation covers authentication, request signatures, idempotency, and integration via a PHP SDK.

Tokens
113.6K
Snippets
430
Records
642
Agent score
70%

What's inside Bank 131

  1. Overview of Settlement Account features

    The Bank 131 Settlement Account API allows developers to manage payouts and monitor account status. Key features include:

    • Payouts: Support for bank cards (via card number, widget, or token), Russian bank accounts (via account number, widget, or token), and phone numbers via FPS.
    • Balance Information: Retrieve the current settlement account balance using the account_balance method.
    • Account Statements: Request transaction statements for specific days using the report/account_statement method.
  2. Overview of the Bank 131 Merchant Dashboard

    The Bank 131 Dashboard is a centralized platform for merchants to track transactions and perform sales analytics. It provides real-time visibility into business financial flows, allowing users to view detailed transaction statuses (successes and failures) and resolve issues without needing to request manual statements from a manager.
  3. Overview of Bank 131 API capabilities

    Bank 131 provides an API for internet platforms to manage payments, payouts, and settlements between individuals and companies. Supported operations include:

    • Accepting payments from individuals via bank cards (including delayed capture and recurring payments).
    • Sending payouts to various recipients.
    • Paying VAT (Google tax) for foreign companies providing electronic services to users in Russia.

    Constraints:

    • Only fiat currencies are supported; cryptocurrency is not supported.
    • Payouts to foreign bank cards are not supported.
    • Bulk transactions are not supported; each request processes a single transaction to a single recipient.
    • There are no ready-made plugins for CMS platforms like WordPress, 1C-Bitrix, or OpenCart.
  4. Overview of Bank 131 Money Transfer Features

    Money transfers in Bank 131 are processed via 'multisessions', which group multiple transactions: a write-off (debiting the sender) and a payout (crediting the recipient).

    Key Constraints & Requirements:

    • Eligibility: Only available for individuals aged 18 years or older.
    • Identity: Recipient data must exactly match the passport they will use to receive funds.
    • Rate Validity: Exchange rates are reserved for a maximum of 5 minutes after a multisession is started.
    • Terminology:
      • Payment partner: Entity accepting, transferring, and paying out funds.
      • Sender: Individual transferring funds.
      • Recipient: Individual receiving funds (can be the same person as the sender for refunds/self-transfers).
      • Payment: The transaction where funds are accepted from the sender.
      • Payout: The transaction where funds are paid to the recipient.
  5. Overview of Bank 131 Escrow Account features

    The Escrow Account API allows for the automation of operations involving beneficiaries' funds. Key features include:

    • Beneficiary Identification: Verify individual beneficiaries before initiating payouts.
    • Payout Options: Support for payouts to bank cards (via card number, widget, or token), Russian bank accounts (via account number, widget, or token), and via phone number using FPS.
    • Balance Monitoring: Check escrow account balances using the account_balance method.
    • Reporting: Request daily transaction statements using the report/account_statement method.
    • Top-up Notifications: Receive instant alerts for account top-ups by enabling the nominal_topup webhook.
  6. Understand the balance object in Bank 131 API

    The balance object provides details about an account's current balance. The current_balance field represents the balance in minor currency units (ruble decimal format). This means the value is multiplied by 100; for example, a balance of 100 rubles is represented as 10000. The value is always positive or zero.
    {
      "current_balance": "10000"
    }
  7. Fetch detailed unread notifications from the Federal Tax Service

    To retrieve detailed information about unread notifications for self-employed individuals from the Federal Tax Service, follow a two-step asynchronous process:

    1. Call the npd/notifications/read endpoint to initiate the request and obtain a request_id.
    2. Periodically poll the npd/request/status endpoint using that request_id. If the status is pending, continue polling. When the status is ok, the response will contain the detailed notification information in the info array.
    # Step 1: Initiate request
    curl -X POST https://demo.bank131.ru/api/v1/npd/notifications/read \
      -H 'Content-Type: application/json' \
      -H 'X-PARTNER-PROJECT: your_project_name' \
      -H 'X-PARTNER-SIGN: signature' \
      -d '{
        "tax_reference_list": ["123456789012"],
        "get_read": false,
        "get_archived": false
      }'
    
    # Step 2: Poll for status using request_id from Step 1
    curl -X POST https://demo.bank131.ru/api/v1/npd/request/status \
      -H 'Content-Type: application/json' \
      -H 'X-PARTNER-PROJECT: your_project_name' \
      -H 'X-PARTNER-SIGN: signature' \
      -d '{
        "request_id": "07adcced-8eb8-49c6-82ce-c3ded0b5bda6"
      }'
  8. Understand the Bank 131 Refund object structure

    The refunds object provides detailed information about a refund transaction. It includes the unique identifier, the current processing status, amount details, and timestamps for creation and completion. It also indicates if the refund was part of a chargeback and provides associated transaction information.
    {
      "id": "string",             // Mandatory: Unique refund identifier
      "status": "string",         // Mandatory: Refund status (in_progress, accepted, declined, error)
      "amount_details": {},         // Mandatory: Object containing refund amount details
      "created_at": "string",     // Mandatory: Creation date
      "finished_at": "string",     // Optional: Completion date
      "is_chargeback": boolean,     // Optional: True if the refund is made within a chargeback
      "transaction_info": {}
    } // Optional: Object containing transaction details
  9. Monitor fund movements using the Transaction Registry

    The Transaction Registry in the Bank 131 Dashboard provides a complete history of fund movements, including payments, payouts, and refunds. It allows users to monitor financial flows and analyze transaction statuses (successful or unsuccessful) without contacting a manager.
  10. Process AFT (Account Funding Transaction) payments

    An AFT payment is used to top up an account or wallet from a bank card. To enable AFT payments, you must contact a Bank 131 manager. The processing workflow for AFT payments is identical to regular bank card payments. Note that issuing banks may charge commissions, and credit card payments may not have a grace period.
  11. Define counterparty details using the counter_party object

    The counter_party object is used to provide details about a counterparty in the Bank 131 API. It includes identification numbers, the legal name, and banking coordinates.
    {
      "counter_party": {
        "name": "string",           // Mandatory: Counterparty's name
        "account_number": "string", // Mandatory: Counterparty's account number
        "bank_code": "string",      // Mandatory: Counterparty's bank BIK
        "inn": "string",            // Optional: Counterparty's INN
        "kpp": "string"             // Optional: Counterparty's KPP
      }
    }
  12. Understand the Bank 131 API session object

    A session is a container for all operations performed within a single payment session. All payment operations (such as payouts, payments, and refunds) must be performed within a session. A single session can contain multiple operations of the same or different types.