---
metadata:
  - name: generator
    content: Diplodoc Platform v5.52.0
alternate:
  - https://yandex.com/dev/direct/doc/dg-v4/en/live/AccountManagement_Deposit.md
  - https://yandex.com/dev/direct/doc/dg-v4/ru/live/AccountManagement_Deposit.md
  - href: ru/live/AccountManagement_Deposit.md
    type: text/markdown
    title: Markdown version
  - href: ../llms.txt
    type: text/markdown
    title: llms.txt
---
> **Documentation Index:** Fetch the complete configuration index at https://yandex.com/dev/direct/doc/dg-v4/ru/llms.txt

# Deposit

Пополняет общие счета из кредитного лимита рекламного агентства или из овердрафта рекламодателя.
Операция позволяет рекламным агентствам и прямым рекламодателям пополнять баланс с отсрочкой платежа.

## Рекомендации и ограничения

Прямой рекламодатель может пополнить общий счет только при наличии хотя бы одной кампании, прошедшей модерацию.

Рекомендуется пополнять общие счета как можно меньшим количеством вызовов операции `AccountManagement.Deposit` в сутки. Данная рекомендация нацелена на повышение производительности API Яндекс Директа. С точки зрения производительности лучше пополнить несколько счетов за одну операцию, чем использовать несколько операций для пополнения каждого счета отдельно.

## Входные данные

Ниже показана структура входных данных в формате JSON.


{% note alert %}

В запрос необходимо включать параметры `finance_token` и `operation_num`.

{% endnote %}


```javascript
{
   "method": "AccountManagement",
   "finance_token": (string),
   "operation_num": (int),
   "param": {
      /* AccountManagementRequest */
      "Action": (string),
      "Payments": [
         {  /* Payment */
            "AccountID": (int),
            "Amount": (float),
            "Origin": (string),
            "Contract": (string),
            "Currency": (string)
         }
         ...
      ]
   }
}
```

Ниже приведено описание параметров.


#|
||
**Параметр**
|
**Описание**
|
**Требуется**
||

||
**Объект AccountManagementRequest**
||
||
`Action`
|
Выполняемая операция: Deposit.
|
Да
||
||
`Payments`
|
Массив объектов `Payment` (не более 50). Каждый объект содержит идентификатор общего счета и сумму оплаты.
|
Да
||

||
**Объект Payment**
||
||
`AccountID`
|
Идентификатор общего счета, который требуется пополнить.
|
Да
||
||
`Amount`
|
Сумма пополнения в валюте, указанной в параметре `Currency`. Значение в реальной валюте следует указывать с учетом НДС клиента.

Указанная сумма округляется по математическим правилам с точностью до второго знака после запятой (для всех валют, в том числе тенге).

Минимальное допустимое значение можно получить с помощью метода [Dictionaries](https://yandex.ru/dev/direct/doc/ref-v5/dictionaries/dictionaries.md).[get](https://yandex.ru/dev/direct/doc/ref-v5/dictionaries/get.md) API версии 5, указав в запросе имя справочника `Currencies`.
|
Да
||
||
`Origin`
|
Метод пополнения: Overdraft — оплата за счет овердрафта.
|
Для оплаты из овердрафта
||
||
`Contract`
|
Номер договора, по которому предоставлен кредит.
|
Для оплаты из кредитного лимита
||
||
`Currency`
|
Валюта, в которой указана сумма.

Возможные значения: RUB, CHF, EUR, KZT, TRY, UAH, USD, BYN. Значение должно совпадать с валютой общего счета, в противном случае возвращается ошибка с кодом [245](https://yandex.com/dev/direct/doc/dg-v4/ru/reference/ErrorCodes.md#BadCurrency).
|
Да
||
|#

## Результирующие данные


{% note alert %}

Ошибка при пополнении одного из счетов не влечет отмену всей операции и не влияет на успешность пополнения остальных счетов.

{% endnote %}


Ниже показана структура результирующих данных в формате JSON.

```javascript
{
   "data": {
      /* AccountManagementResponse */
      "ActionsResult": [
         {  /* AccountActionResult */
            "AccountID": (int),
            "Errors": [
               {  /* Error */
                  "FaultCode": (int),
                  "FaultString": (string),
                  "FaultDetail": (string)
               }
               ...
            ]
         }
         ...
      ]
   }
}
```

Ниже приведено описание параметров.


#|
||
**Параметр**
|
**Описание**
||

||
**Объект AccountManagementResponse**
||
||
`ActionsResult`
|
Массив объектов `AccountActionResult`. Каждый объект соответствует элементу входного массива `Payments` и содержит:

- в случае успешного пополнения общего счета — идентификатор общего счета;
- в случае ошибки — массив `Errors`.

Элементы массива следуют в том же порядке, что и объекты входного массива `Payments`.
||

||
**Объект AccountActionResult**
||
||
`AccountID`
|
Идентификатор общего счета.
||
||
`Errors`
|
Массив объектов `Error` — ошибок, возникших при пополнении счета.
||

||
**Объект Error**
||
||
`FaultCode`
|
Код ошибки.
||
||
`FaultString`
|
Текст сообщения об ошибке.
||
||
`FaultDetail`
|
Подробное описание причины ошибки.
||
|#

## Примеры входных данных

# Python

```python
{
   'Action': 'Deposit',
   'Payments': [
      {
         'AccountID': 3193244,
         'Amount': 5000.0,
         'Origin': 'Overdraft',
         'Currency': 'RUB'
      },
      {
         'AccountID': 3193279,
         'Amount': 1200.0,
         'Contract': '23452345/67',
         'Currency': 'USD'
      }
   ]
}
```

# PHP

```php
array(
   'Action' => 'Deposit',
   'Payments' => array(
      array(
         'AccountID' => 3193244,
         'Amount' => 5000.0,
         'Origin' => 'Overdraft',
         'Currency' ='RUB'
      ),
      array(
         'AccountID' => 3193279,
         'Amount' => 1200.0,
         'Contract' => '23452345/67',
         'Currency' ='USD'
      )
   )
)
```

# Perl

```perl
{
   'Action' => 'Deposit',
   'Payments' => [
      {
         'AccountID' => 3193244,
         'Amount' => 5000.0,
         'Contract' => 'Overdraft',
         'Currency' ='RUB'
      },
      {
         'AccountID' => 3193279,
         'Amount' => 1200.0,
         'Contract' => '23452345/67',
         'Currency' ='RUB'
      }
   ]
}
```

