Перейти к содержанию

whmcs.php

Модуль интеграции с WHMCS для управления клиентами, счетами, кредитом, отменами заказов и биллинговыми данными серверов.

Методы API

Метод Действие Описание
add_contact добавление контакта Добавляет нового дополнительного контакта для клиента или создает случайного контактного пользователя.
apply_credit применение кредита к инвойсу Применяет доступный баланс (кредит) клиента для оплаты выбранного счета (invoice). Если счет после оплаты переходит в статус 'Paid', автоматически очищаются связанные теги о перерасходе трафика.
create_addfunds создание инвойса на пополнение баланса Создает инвойс в WHMCS для пополнения баланса клиента (Add Funds). Поддерживает создание обычного инвойса или инвойса с автоматическим включением подписки.
delete_cancellation_request удаление запроса на отмену Удаляет активный запрос на отмену услуги для конкретного сервера, позволяя восстановить статус заказа или сгенерировать новый инвойс.
delete_contact удаление контакта Удаляет дополнительный контакт, привязанный к клиенту в WHMCS.
download_invoice скачивание инвойса Возвращает PDF-файл инвойса в формате base64. Позволяет просматривать инвойс (inline) или скачивать его как файл (attachment).
generate_due_invoice генерация счета на оплату Генерирует следующий счет для сервера в WHMCS, учитывая текущий цикл оплаты и наличие активных аддонов.
get_billing_data получение биллинговых данных сервера Возвращает детальную информацию о биллинге конкретного сервера, включая данные клиента, статус EU B2C и информацию о возвратах (если применимо).
get_cancellation_requests получение запросов на отмену Возвращает список активных запросов на отмену услуг для конкретного сервера или пользователя с учетом фильтрации по датам, типу и статусу оплаты.
get_client получение информации о клиенте Возвращает подробную информацию о клиенте из WHMCS, включая данные профиля, группы и внутренние данные системы.
get_clientgroups получение групп Возвращает список доступных клиентских групп из WHMCS для указанной локации.
get_contacts получение контактов Возвращает список дополнительных контактов для указанного клиента или проверяет права доступа к ним.
get_invoice получение данных счета Возвращает детальную информацию о счете из WHMCS, включая данные клиента и статус оплаты.
get_invoices получение списка инвойсов клиента Возвращает список всех инвойсов, связанных с аккаунтом пользователя в WHMCS для указанной локации.
get_related_invoices получение связанных инвойсов Возвращает список инвойсов, связанных с конкретным сервером или аккаунтом в WHMCS.
getcredits получение кредитов Возвращает информацию о доступных кредитах на балансе аккаунта в WHMCS.
getpaymentgw получение платежных шлюзов Возвращает список доступных методов оплаты для конкретного инвойса с обработанными ссылками на оплату.
mass_pay массовая оплата инвойсов Позволяет произвести массовую оплату нескольких инвойсов одновременно для клиента. Требуется минимум 2 инвойса.
request_cancellation запрос на отмену заказа/сервера Инициирует процесс отмены заказа или сервиса в WHMCS. Проверяет наличие активных лицензий, статус оплаты инвойсов и возможность автоматического возврата средств (включая правила EU B2C). При наличии задолженностей по трафику может учитывать списания.
request_subscription_cancellation запрос на отмену подписки Создает запрос в JIRA на отмену банковской подписки для сервера. Проверяет наличие активных подписок и статус оплаты.
reset_password сброс пароля Инициирует процесс сброса пароля. Если токен не предоставлен, отправляет ссылку на email. Если токен валиден, позволяет установить новый пароль или запросить 2FA код.
transactions получение транзакций клиента Возвращает список финансовых транзакций пользователя из WHMCS. Если данные не найдены, возвращает пустой массив.
update_client обновление данных клиента Обновляет профиль клиента в WHMCS, включая персональные данные (имя, email), контактную информацию и кастомные поля (custom fields). Поддерживает обновление юридических данных для компаний.
update_contact обновление контакта клиента Обновляет данные контактного лица (имя, фамилия, email, телефон) в системе WHMCS. Если обновляется email, может потребоваться повторная верификация.

whmcs/add_contact

Добавляет нового дополнительного контакта для клиента или создает случайного контактного пользователя.

HTTP-метод: POST

Параметры:

Параметр Обязательный Тип Описание
type integer Тип операции (0 - создание случайного контакта)
profile_data[firstname] string Имя контакта
profile_data[lastname] string Фамилия контакта
profile_data[email] string Email контакта (должен быть уникальным)
profile_data[password1] string Пароль контакта 1
profile_data[password2] string Пароль контакта 2 (подтверждение)
profile_data[phonenumber] string Номер телефона контакта
token string API-токен аутентификации

Пример запроса

curl -s "https://invapi.hostkey.ru/whmcs.php" -X POST \
--data "type=0" \
--data "profile_data[firstname]=John" \
--data "profile_data[lastname]=Doe" \
--data "profile_data[email]=john.doe@example.com" \
--data "profile_data[password1]=Secret123!" \
--data "profile_data[password2]=Secret123!" \
--data "token=YOUR_API_TOKEN"
Пример успешного ответа
{
"result": "OK",
"contactid": 12345,
"clientid": 12345,
"firstname": "John",
"lastname": "Doe",
"email": "john.doe@example.com"
}
Примеры ошибок

``` { "code": -1, "message": "fill_required_fields" }

```

whmcs/apply_credit

Применяет доступный баланс (кредит) клиента для оплаты выбранного счета (invoice). Если счет после оплаты переходит в статус 'Paid', автоматически очищаются связанные теги о перерасходе трафика.

HTTP-метод: POST

Параметры:

Параметр Обязательный Тип Описание
action string Идентификатор метода: apply_credit
token string Токен авторизации
invoice_id integer ID инвойса для оплаты
amount number Сумма кредита для применения к счету

Пример запроса

curl -s "https://invapi.hostkey.ru/whmcs.php" -X POST \
--data "action=apply_credit" \
--data "token=HOSTKEY_TOKEN" \
--data "invoice_id=12345" \
--data "amount=100.50"
Пример успешного ответа
{
"result": "success",
"invoiceid": 12345
}
Примеры ошибок

``` { "code": -1, "message": "invalid invoice id 123 at location COM" }

```

whmcs/create_addfunds

Создает инвойс в WHMCS для пополнения баланса клиента (Add Funds). Поддерживает создание обычного инвойса или инвойса с автоматическим включением подписки.

HTTP-метод: POST

Параметры:

Параметр Обязательный Тип Описание
action string Идентификатор метода: create_addfunds
amount number Сумма пополнения
description string Описание платежа
subscribe boolean Включить автоматическое продление (подписку) при оплате инвойса на 1 единицу валюты
token string API-токен аутентификации

Пример запроса

curl -s "https://invapi.hostkey.ru/whmcs.php" -X POST \
--data "action=create_addfunds" \
--data "amount=50.0" \
--data "token=YOUR_API_TOKEN"
Пример успешного ответа
{
"result": "OK",
"action": "create_addfunds",
"invoice": {
"id": 12345,
"amount": 50.0,
"currency": "USD",
"status": "Unpaid"
},
"message": "Invoice 12345 created"
}
Примеры ошибок

``` { "code": -1, "message": "minimal payment amount is 10.0" }

```

whmcs/delete_cancellation_request

Удаляет активный запрос на отмену услуги для конкретного сервера, позволяя восстановить статус заказа или сгенерировать новый инвойс.

HTTP-метод: POST

Параметры:

Параметр Обязательный Тип Описание
action string Идентификатор метода: delete_cancellation_request
id int ID сервера (relid)
token string Токен авторизации

Пример запроса

curl -s "https://invapi.hostkey.ru/whmcs.php" -X POST \
--data "action=delete_cancellation_request" \
--data "id=VALUE" \
--data "token=HOSTKEY_TOKEN"
Пример успешного ответа
{
"result": "OK",
"action": "delete_cancellation_request",
"id": 123,
"message": "Cancellation request removed"
}
Примеры ошибок

``` { "code": -1, "message": "Server $id doesn't have a relid data" }

```

whmcs/delete_contact

Удаляет дополнительный контакт, привязанный к клиенту в WHMCS.

HTTP-метод: POST

Параметры:

Параметр Обязательный Тип Описание
action string Идентификатор метода: delete_contact
contact_id int ID контакта для удаления
token string API-токен аутентификации

Пример запроса

curl -s "https://invapi.hostkey.ru/whmcs.php" -X POST \
--data "action=delete_contact" \
--data "contact_id=VALUE" \
--data "token=HOSTKEY_TOKEN"
Пример успешного ответа
{
"result": "OK",
"action": "delete_contact",
"clientid": 12345
}
Примеры ошибок

``` { "code": -1, "message": "verification failed, subcontact not found" }

```

whmcs/download_invoice

Возвращает PDF-файл инвойса в формате base64. Позволяет просматривать инвойс (inline) или скачивать его как файл (attachment).

HTTP-метод: POST|GET

Параметры:

Параметр Обязательный Тип Описание
action string Идентификатор метода: download_invoice
token string Токен авторизации
invoice_id int ID инвойса
proforma_invoice int Флаг использования проформы-инвойса (0 или 1)
viewpdf int Режим отображения: 1 — открыть в браузере (inline), 0 — скачать файл (attachment)

Пример запроса

curl -s "https://invapi.hostkey.ru/whmcs.php" -X POST \
--data "action=download_invoice" \
--data "token=HOSTKEY_TOKEN" \
--data "invoice_id=VALUE"
Пример успешного ответа
{
"result": "success",
"message": "base64_encoded_pdf_data"
}
Примеры ошибок

``` { "code": -1, "message": "Ошибка получения данных инвойса или отсутствие прав доступа" }

```

whmcs/generate_due_invoice

Генерирует следующий счет для сервера в WHMCS, учитывая текущий цикл оплаты и наличие активных аддонов.

HTTP-метод: POST

Параметры:

Параметр Обязательный Тип Описание
action string Идентификатор метода: generate_due_invoice
id int ID сервера (equipment ID)
token string API-токен аутентификации

Пример запроса

curl -s "https://invapi.hostkey.ru/whmcs.php" -X POST \
--data "action=generate_due_invoice" \
--data "id=VALUE" \
--data "token=HOSTKEY_TOKEN"
Пример успешного ответа
{
"result": "OK",
"invoices": [
{
"id": 105,
"amount": 49.99,
"currency": "USD",
"status": "Unpaid"
}
]
}
Примеры ошибок

``` { "next_invoice_blocked_by_upgrade": { "code": -1, "message": "next_invoice_blocked_by_upgrade" }, "next_invoice_blocked_by_due_date": { "code": -1, "message": "next_invoice_blocked_by_due_date" }, "next_invoice_unpaid_exists": { "code": -1, "message": "next_invoice_unpaid_exists" } }

```

whmcs/get_billing_data

Возвращает детальную информацию о биллинге конкретного сервера, включая данные клиента, статус EU B2C и информацию о возвратах (если применимо).

HTTP-метод: POST

Параметры:

Параметр Обязательный Тип Описание
action string Идентификатор метода: get_billing_data
id int ID сервера
token string Токен авторизации

Пример запроса

curl -s "https://invapi.hostkey.ru/whmcs.php" -X POST \
--data "action=get_billing_data" \
--data "id=VALUE" \
--data "token=HOSTKEY_TOKEN"
Пример успешного ответа
{
"result": "OK",
"customer_name": "John Doe",
"eu_b2c": 1,
"eu_withdrawal": 0,
"eu_withdrawal_licenses": [
{
"name": "License Name",
"amount": 10.5,
"currency": "EUR"
}
]
}
Примеры ошибок

``` { "code": -3, "message": "whmcs_server_exceded_traffic" }

```

whmcs/get_cancellation_requests

Возвращает список активных запросов на отмену услуг для конкретного сервера или пользователя с учетом фильтрации по датам, типу и статусу оплаты.

HTTP-метод: POST

Параметры:

Параметр Обязательный Тип Описание
action string Идентификатор метода: get_cancellation_requests
id int ID сервера для получения запросов по конкретному ресурсу. Если не указан, поиск идет по пользователю.
period_from string Дата начала периода (формат YYYY-MM-DD)
period_to string Дата окончания периода (формат YYYY-MM-DD)
cancellation_type string Фильтр по типу отмены
billing_status string Фильтр по статусу оплаты (например, Paid, Unpaid)
token string API-токен аутентификации

Пример запроса

curl -s "https://invapi.hostkey.ru/whmcs.php" -X POST \
--data "action=get_cancellation_requests" \
--data "token=HOSTKEY_TOKEN"
Пример успешного ответа
{
"result": "OK",
"message": [
{
"relid": 123,
"date": "2023-10-27 10:00:00",
"reason": "User requested cancellation",
"type": "End of Billing Period"
}
]
}
Примеры ошибок

``` { "code": -1, "message": "Invalid billing location whmcs_ru" }

```

whmcs/get_client

Возвращает подробную информацию о клиенте из WHMCS, включая данные профиля, группы и внутренние данные системы.

HTTP-метод: POST|GET

Параметры:

Параметр Обязательный Тип Описание
action string Идентификатор метода: get_client
token string Токен авторизации
full boolean Возвращать полные данные (true) или только основные (false)
email string Email клиента для поиска
id integer ID клиента (account_id)

Пример запроса

curl -s "https://invapi.hostkey.ru/whmcs.php" -X POST \
--data "action=get_client" \
--data "token=HOSTKEY_TOKEN" \
--data "id=123"
Пример успешного ответа
{
"result": "OK|success",
"client": {
"id": 123,
"email": "user@example.com",
"firstname": "John",
"lastname": "Doe",
"fullname": "John Doe",
"status": "Active",
"currency_code": "USD",
"groupid": 1,
"countrycode": "US",
"city": "New York",
"state": "NY",
"postcode": "10001",
"address1": "123 Main St",
"address2": "Apt 4B",
"phonenumber": "+1234567890",
"companyname": "John Corp",
"corporate": 0,
"ip": "1.2.3.4",
"billing_location": "whmcs",
"groupdata": {
"id": 1,
"groupname": "Standard Users"
},
"internal": {
"id": 123,
"email": "user@example.com",
"corporate": 0,
"active_since": "2023-01-15"
}
}
}
Примеры ошибок

``` { "code": -1, "message": "Request failed for client@location: error_message" }

```

whmcs/get_clientgroups

Возвращает список доступных клиентских групп из WHMCS для указанной локации.

HTTP-метод: POST

Параметры:

Параметр Обязательный Тип Описание
action string Идентификатор метода: get_clientgroups
token string Токен авторизации
location string Локация биллинга (WHMCS location)

Пример запроса

curl -s "https://invapi.hostkey.ru/whmcs.php" -X POST \
--data "action=get_clientgroups" \
--data "token=HOSTKEY_TOKEN"
Пример успешного ответа
{
"result": "OK",
"action": "get_clientgroups",
"data": {
"groups": [
{
"id": 1,
"groupname": "Retail Customers"
},
{
"id": 2,
"groupname": "Resellers"
}
]
}
}
Примеры ошибок

``` { "code": -1, "message": "Invalid request or billing location not found" }

```

whmcs/get_contacts

Возвращает список дополнительных контактов для указанного клиента или проверяет права доступа к ним.

HTTP-метод: POST

Параметры:

Параметр Обязательный Тип Описание
action string Идентификатор метода: get_contacts
token string Токен авторизации
email string Email для поиска конкретного контакта (используется при проверке прав под-аккаунта)

Пример запроса

curl -s "https://invapi.hostkey.ru/whmcs.php" -X POST \
--data "action=get_contacts" \
--data "token=HOSTKEY_TOKEN"
Пример успешного ответа
{
"result": "OK",
"module": "whmcs",
"action": "get_contacts",
"permission_contacts_granted": true,
"contacts": [
{
"id": 123,
"email": "user@example.com",
"firstname": "John",
"lastname": "Doe",
"permissions": "contacts"
}
]
}
Примеры ошибок

``` { "code": -1, "message": "fail to get contacts list" }

```

whmcs/get_invoice

Возвращает детальную информацию о счете из WHMCS, включая данные клиента и статус оплаты.

HTTP-метод: POST

Параметры:

Параметр Обязательный Тип Описание
action string Идентификатор метода: get_invoice
invoice_id int ID счета
token string Токен авторизации
load_client_data int Загрузить данные клиента (1 - да)

Пример запроса

curl -s "https://invapi.hostkey.ru/whmcs.php" -X POST \
--data "action=get_invoice" \
--data "invoice_id=VALUE" \
--data "token=HOSTKEY_TOKEN"
Пример успешного ответа
{
"result": "OK",
"status": "success",
"billing": "whmcs_ru",
"items": {
"item": [
{
"relid": 123,
"inv_id": 456,
"type": "Hosting"
}
]
},
"currencycode": "USD",
"userid": 12345,
"customer": {
"client": {
"firstname": "John",
"lastname": "Doe"
}
}
}
Примеры ошибок

``` { "code": -1, "message": "invalid invoice id 0 at whmcs_ru" }

```

whmcs/get_invoices

Возвращает список всех инвойсов, связанных с аккаунтом пользователя в WHMCS для указанной локации.

HTTP-метод: POST

Параметры:

Параметр Обязательный Тип Описание
action string Идентификатор метода: get_invoices
token string Токен авторизации
clientid integer ID клиента

Пример запроса

curl -s "https://invapi.hostkey.ru/whmcs" -X POST \
--data "action=get_invoices" \
--data "token=HOSTKEY_TOKEN" \
--data "clientid=45"
Пример успешного ответа
{
"result": "OK",
"totalresults": 2,
"numreturned": 2,
"invoices": {
"invoice": [
{
"id": 105,
"userid": 45,
"status": "Paid",
"date": "2023-10-01",
"total": 29.99,
"currency_code": "USD"
},
{
"id": 106,
"userid": 45,
"status": "Unpaid",
"date": "2023-11-01",
"total": 29.99,
"currency_code": "USD"
}
]
}
}
Примеры ошибок

``` { "result": "-1", "message": "Invalid client id" }

```

Возвращает список инвойсов, связанных с конкретным сервером или аккаунтом в WHMCS.

HTTP-метод: POST|GET

Параметры:

Параметр Обязательный Тип Описание
action string Идентификатор метода: get_related_invoices
account_id int ID аккаунта для поиска инвойсов
location string Локация биллинга (WHMCS location)
token string API-токен аутентификации

Пример запроса

curl -s "https://invapi.hostkey.ru/whmcs.php" -X POST \
--data "action=get_related_invoices" \
--data "token=HOSTKEY_TOKEN"
Пример успешного ответа
{
"result": "OK",
"invoices": [
{
"invoiceid": 12345,
"userid": 678,
"status": "Paid",
"total": 50.0,
"currency_code": "USD"
}
]
}
Примеры ошибок

``` { "result": -1, "error": "server $id are not linked to the billing" }

```

whmcs/getcredits

Возвращает информацию о доступных кредитах на балансе аккаунта в WHMCS.

HTTP-метод: POST

Параметры:

Параметр Обязательный Тип Описание
action string Идентификатор метода: getcredits
token string Токен авторизации

Пример запроса

curl -s "https://invapi.hostkey.ru/whmcs.php" -X POST \
--data "action=getcredits" \
--data "token=HOSTKEY_TOKEN"
Пример успешного ответа
{
"result": "OK",
"action": "getcredits",
"message": 150.5
}
Примеры ошибок

``` { "code": -1, "message": "failed to retrive account history at whmcs_ru, please contact support - error_message" }

```

whmcs/getpaymentgw

Возвращает список доступных методов оплаты для конкретного инвойса с обработанными ссылками на оплату.

HTTP-метод: POST

Параметры:

Параметр Обязательный Тип Описание
action string Действие метода
token string Токен авторизации
invoice_id int ID инвойса

Пример запроса

curl -s "https://invapi.hostkey.ru/whmcs.php" -X POST \
--data "action=getpaymentgw" \
--data "token=YOUR_TOKEN" \
--data "invoice_id=123"
Пример успешного ответа
{
"result": "OK",
"methods": {
"stripe": {
"call": "https://billing.hostkey.com/modules/gateways/stripe/pay.php?id=123"
},
"paypalcheckout": {
"call": "<input type=\"submit\" class=\"btn btn-xl btn-block btn-outline-dark rounded btn-sm\" value=\"Pay Now\" />"
}
}
}
Примеры ошибок

``` { "code": -1, "message": "failed to retrive payment gw list: error message" }

```

whmcs/mass_pay

Позволяет произвести массовую оплату нескольких инвойсов одновременно для клиента. Требуется минимум 2 инвойса.

HTTP-метод: POST

Параметры:

Параметр Обязательный Тип Описание
action string Идентификатор метода: mass_pay
invoices[] array Массив ID инвойсов для оплаты. Минимум 2 значения.
token string API-токен аутентификации

Пример запроса

curl -s "https://invapi.hostkey.ru/whmcs.php" -X POST \
--data "action=mass_pay" \
--data "invoices[]=12345" \
--data "invoices[]=67890" \
--data "token=HOSTKEY_TOKEN"
Пример успешного ответа
{
"result": "OK",
"invoiceid": 12345
}
Примеры ошибок

``` { "code": -1, "message": "mass_pay_requires_2_invoices" }

```

whmcs/request_cancellation

Инициирует процесс отмены заказа или сервиса в WHMCS. Проверяет наличие активных лицензий, статус оплаты инвойсов и возможность автоматического возврата средств (включая правила EU B2C). При наличии задолженностей по трафику может учитывать списания.

HTTP-метод: POST

Параметры:

Параметр Обязательный Тип Описание
action string Идентификатор метода: request_cancellation
id int ID сервера для отмены
cancellation_type int Тип отмены (1 - немедленная)
cancellation_reason string Причина отмены заказа
token string Токен авторизации
billing string Место биллинга (location)
clientid int ID клиента
email string Email пользователя
refund float Сумма возврата
currency string Валюта возврата
service_price float Цена сервиса
refund_message string Полное сообщение о возврате
refund_message_short string Краткое сообщение о возврате
last_invoice int ID последней инвойс-позиции (item)
prev_invoice_id int ID предыдущего инвойса
relid int ID аккаунта в WHMCS (service_relid)
tax float Сумма налога
vat_extra boolean Флаг наличия VAT extra
rec_before_tax float Сумма до налогов
d_deploy_time string Дата деплоя (deploy_date)
d_bill_time string Текущее время запроса
d_reccuring float Рекуррентный платеж (rec)
d_period string Billing cycle
cbp_adjusted string Сообщение о корректировке CBP

Пример запроса

curl -s "https://invapi.hostkey.ru/whmcs.php" -X POST \
--data "action=request_cancellation" \
--data "id=123" \
--data "token=YOUR_TOKEN" \
--data "billing=location_name" \
--data "clientid=456" \
--data "email=user@example.com" \
--data "last_invoice=789" \
--data "relid=1011"
Пример успешного ответа
{
"result": "OK"
}
Примеры ошибок

``` { "code": -3, "message": "whmcs_server_exceded_traffic" }

```

whmcs/request_subscription_cancellation

Создает запрос в JIRA на отмену банковской подписки для сервера. Проверяет наличие активных подписок и статус оплаты.

HTTP-метод: POST

Параметры:

Параметр Обязательный Тип Описание
action string Идентификатор метода: request_subscription_cancellation
id int ID сервера
cancellation_type string Тип отмены (например, 1)
cancellation_reason string Причина отмены
token string API-токен аутентификации

Пример запроса

curl -s "https://invapi.hostkey.ru/whmcs.php" -X POST \
--data "action=request_subscription_cancellation" \
--data "id=VALUE" \
--data "token=HOSTKEY_TOKEN"
Пример успешного ответа
{
"result": "OK",
"action": "request_subscription_cancellation",
"data": {
"ticket": "JIRA-12345"
}
}
Примеры ошибок

``` { "code": -1, "message": "sub_cancel_no_active_subscription" }

```

whmcs/reset_password

Инициирует процесс сброса пароля. Если токен не предоставлен, отправляет ссылку на email. Если токен валиден, позволяет установить новый пароль или запросить 2FA код.

HTTP-метод: POST

Параметры:

Параметр Обязательный Тип Описание
action string Идентификатор метода: reset_password
token string Auth token for API authorization
email string Email пользователя для сброса пароля
reset_token string Токен для восстановления доступа (используется при повторном запросе)
pass string Новый пароль пользователя
code string Код двухфакторной аутентификации (2FA)

Пример запроса

curl -s "https://invapi.hostkey.ru/whmcs.php" -X POST \
--data "action=reset_password" \
--data "token=HOSTKEY_TOKEN" \
--data "email=VALUE"
Пример успешного ответа
{
"result": "OK",
"message": "Password reset link was sent to the registred email.",
"2fa": 1,
"code": "string"
}
Примеры ошибок

``` { "code": -1, "message": "Invalid password reset token, please try again." }

```

whmcs/transactions

Возвращает список финансовых транзакций пользователя из WHMCS. Если данные не найдены, возвращает пустой массив.

HTTP-метод: POST

Параметры:

Параметр Обязательный Тип Описание
action string Идентификатор метода: transactions
transaction_id string ID конкретной транзакции для фильтрации
invoice_id int ID инвойса для фильтрации
token string API-токен аутентификации

Пример запроса

curl -s "https://invapi.hostkey.ru/whmcs.php" -X POST \
--data "action=transactions" \
--data "token=HOSTKEY_TOKEN"
Пример успешного ответа
{
"result": "OK",
"action": "transactions",
"transactions": [
{
"id": 12345,
"amount": 50.0,
"date": "2024-05-20T10:30:00Z",
"description": "Payment for invoice #12345",
"status": "Completed"
}
]
}
Примеры ошибок

``` { "code": -1, "message": "failed to retrive transactions - error_details" }

```

whmcs/update_client

Обновляет профиль клиента в WHMCS, включая персональные данные (имя, email), контактную информацию и кастомные поля (custom fields). Поддерживает обновление юридических данных для компаний.

HTTP-метод: POST

Параметры:

Параметр Обязательный Тип Описание
action string Идентификатор метода: update_client
token string Токен авторизации
profile_data[client_id] integer ID клиента в WHMCS
profile_data[location] string Локация биллинга (например, whmcs_ru)
profile_data[billing_email] string Новый адрес электронной почты клиента
profile_data[billing_firstname] string Имя в биллинге
profile_data[billing_lastname] string Фамилия в биллинге
profile_data[co_customertype] string Тип клиента (Individual/Company)
profile_data[ips] string Список IP-адресов для ACL через запятую или пробел
profile_data[co_smsnum] string Номер телефона (проходит верификацию)
profile_data[tg_username] string Username в Telegram (@username)
profile_data[form_id] string ID формы (personal_data, account_owner, address)

Пример запроса

curl -s "https://invapi.hostkey.ru/whmcs.php" -X POST \
--data "action=update_client" \
--data "token=HOSTKEY_TOKEN" \
--data "profile_data[client_id]=12345" \
--data "profile_data[location]=whmcs_ru" \
--data "profile_data[billing_email]=user@example.com"
Пример успешного ответа
{
"result": "OK",
"clientid": 12345,
"location": "whmcs_ru",
"billing_email": "user@example.com",
"customfields": {},
"taxexempt": false,
"twofaenabled": 0
}
Примеры ошибок

``` { "code": -1, "message": "invalid profile data: billing_firstname can't be empty" }

```

whmcs/update_contact

Обновляет данные контактного лица (имя, фамилия, email, телефон) в системе WHMCS. Если обновляется email, может потребоваться повторная верификация.

HTTP-метод: POST

Параметры:

Параметр Обязательный Тип Описание
contact_id int ID контакта для обновления
email string Email контактного лица
firstname string Имя контакта
lastname string Фамилия контакта
phonenumber string Номер телефона (автоматически транслируется)
password1 string Новый пароль для контакта
password2 string Подтверждение пароля
token string API-токен аутентификации

Пример запроса

curl -s "https://invapi.hostkey.ru/whmcs.php" -X POST \
--data "contact_id=123" \
--data "email=user@example.com" \
--data "firstname=Ivan" \
--data "lastname=Ivanov" \
--data "token=YOUR_API_TOKEN"
Пример успешного ответа
{
"result": "OK",
"affiliateemails": [],
"contact_id": 123,
"domainemails": [],
"email_preferences": {
"general": "all"
},
"invoiceemails": "all",
"permissions": "contacts",
"productemails": "all"
}
Примеры ошибок

``` { "code": -1, "message": "fill_required_fields" }

```

question_mark
Я могу вам чем-то помочь?
question_mark
ИИ Помощник ×