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