Invoice
Формирует счета на оплату в формате HTML.
При вызове операции указывают общие счета и суммы к оплате. Операция возвращает URL счета на оплату. Получить счет может пользователь, от лица которого вызван метод (пользователю необходимо авторизоваться на Яндексе).
Рекомендации и ограничения
Рекомендуется формировать счета на оплату как можно меньшим количеством вызовов операции AccountManagement.Invoice
в сутки. Данная рекомендация нацелена на повышение производительности API Яндекс Директа. С точки зрения производительности, лучше сформировать несколько счетов на оплату за одну операцию, чем использовать несколько операций для формирования каждого счета отдельно.
Входные данные
Ниже показана структура входных данных в формате JSON.
Внимание
В запрос необходимо включать параметры finance_token
и operation_num
. Об особенностях формирования токена см. раздел Работа с общим счетом.
{
"method": "AccountManagement",
"finance_token": (string),
"operation_num": (int),
"param": {
/* AccountManagementRequest */
"Action": (string),
"Payments": [
{ /* Payment */
"AccountID": (int),
"Amount": (float),
"Currency": (string)
}
...
]
}
}
Ниже приведено описание параметров.
Параметр |
Описание |
Требуется |
Объект AccountManagementRequest |
||
|
Выполняемая операция: Invoice. |
Да |
|
Массив объектов |
Да |
Объект Payment |
||
|
Идентификатор общего счета, который требуется пополнить. |
Да |
|
Сумма выставляемого счета в валюте, указанной в параметре Перед выставлением счета указанная сумма округляется по математическим правилам с точностью до второго знака после запятой (для всех валют, в том числе тенге). Минимальное допустимое значение можно получить с помощью метода Dictionaries.get API версии 5, указав в запросе имя справочника |
Да |
|
Валюта, в которой указана сумма. Возможные значения: RUB, CHF, EUR, KZT, TRY, UAH, USD, BYN. Значение должно совпадать с валютой общего счета, в противном случае возвращается ошибка с кодом 245. |
Да |
Результирующие данные
Ниже показана структура результирующих данных в формате JSON.
Внимание
Ошибка при формировании одного из счетов на оплату не влечет отмену всей операции и не влияет на успешность формирования остальных счетов.
{
"data": {
/* AccountManagementResponse */
"ActionsResult": [
{ /* AccountActionResult */
"URL": (string),
"Errors": [
{ /* Error */
"FaultCode": (int),
"FaultString": (string),
"FaultDetail": (string)
}
...
]
}
...
]
}
}
Ниже приведено описание параметров.
Параметр |
Описание |
Объект AccountManagementResponse |
|
|
Массив объектов
Элементы массива следуют в том же порядке, что и объекты входного массива |
Объект AccountActionResult |
|
|
URL счета на оплату. |
|
Массив объектов |
Объект Error |
|
|
Код ошибки. |
|
Текст сообщения об ошибке. |
|
Подробное описание причины ошибки. |
Примеры входных данных
Python
{
'Action': 'Invoice',
'Payments': [
{
'AccountID': 3193244,
'Amount': 5000.0,
'Currency': 'RUB'
}
]
}
PHP
array(
'Action' => 'Invoice',
'Payments' => array(
array(
'AccountID' => 3193244,
'Amount' => 5000.0,
'Currency' ='RUB'
)
)
)
Perl
{
'Action' => 'Invoice',
'Payments' => [
{
'AccountID' => 3193244,
'Amount' => 5000.0,
'Currency' ='RUB'
}
]
}