integrations.json 41 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561
  1. {
  2. "catalog": {
  3. "title": "Интеграции",
  4. "description": "Подключите сервисы, которыми ваша мастерская уже пользуется. Каждая интеграция настраивается один раз и работает в фоновом режиме.",
  5. "all": "Все",
  6. "empty": "В этой категории пока нет интеграций.",
  7. "notConnected": "Не подключено",
  8. "connect": "Подключить",
  9. "manage": "Управлять",
  10. "connectedTitle": "Подключено",
  11. "connectedDescription": "Сервисы, настроенные в этой мастерской. Откройте сервис, чтобы проверить статус, изменить настройки или отключить его.",
  12. "noneConnected": "Пока ничего не подключено. Выберите сервис ниже, чтобы начать.",
  13. "availableTitle": "Доступно",
  14. "availableDescription": "Сервисы, которые можно добавить. Каждый настраивается один раз и работает в фоне.",
  15. "allConnected": "Все доступные сервисы подключены.",
  16. "searchPlaceholder": "Поиск интеграций",
  17. "noMatches": "Ничего не найдено по запросу «{query}»."
  18. },
  19. "categories": {
  20. "calendar": "Календарь",
  21. "conferencing": "Видеозвонки",
  22. "accounting": "Бухгалтерия",
  23. "messaging": "Сообщения",
  24. "payments": "Платежи",
  25. "automation": "Автоматизация",
  26. "storage": "Файлы",
  27. "registry": "Реестр транспортных средств",
  28. "other": "Другое",
  29. "ai": "ИИ"
  30. },
  31. "capabilities": {
  32. "calendar": {
  33. "push": "Заказ-наряды в календарь",
  34. "pull": "Занятое время из календаря",
  35. "conference": "Ссылки на видеозвонки"
  36. },
  37. "sms": {
  38. "send": "Text messages out",
  39. "receive": "Replies back in"
  40. },
  41. "whatsapp": {
  42. "send": "WhatsApp messages out",
  43. "receive": "Replies back in"
  44. },
  45. "telegram": {
  46. "send": "Telegram messages out",
  47. "receive": "Replies back in"
  48. },
  49. "email": {
  50. "send": "Email out"
  51. },
  52. "vehicle": {
  53. "lookup": "Поиск по номеру и VIN",
  54. "inspection": "Сроки техосмотра",
  55. "safety": "Отзывные кампании и жалобы владельцев"
  56. },
  57. "ai": {
  58. "chat": "Тексты и сводки"
  59. },
  60. "payments": {
  61. "checkout": "Оплата по ссылке на счёт"
  62. },
  63. "accounting": {
  64. "invoices": "Счета в бухгалтерию",
  65. "customers": "Клиенты в бухгалтерию",
  66. "payments": "Платежи в обе стороны"
  67. }
  68. },
  69. "statuses": {
  70. "active": "Подключено",
  71. "error": "Требует внимания",
  72. "pending": "Идёт настройка",
  73. "disconnected": "Отключено"
  74. },
  75. "connection": {
  76. "back": "Все интеграции",
  77. "account": "Подключённый аккаунт",
  78. "lastHealth": "Последняя проверка",
  79. "lastSync": "Последняя синхронизация",
  80. "lastError": "Последний запуск завершился ошибкой",
  81. "connected": "{name} подключено.",
  82. "connectedShort": "Подключено",
  83. "connectWith": "Подключить {name}",
  84. "connect": "Подключить",
  85. "reconnect": "Переподключить",
  86. "disconnect": "Отключить",
  87. "disconnectTitle": "Отключить {name}?",
  88. "disconnectDescription": "Torqvoice забудет аккаунт и прекратит синхронизацию. События, уже созданные в календаре, останутся на месте.",
  89. "removeSetup": "Удалить",
  90. "removeSetupTitle": "Удалить {name}?",
  91. "removeSetupDescription": "Пока ничего не подключено. Torqvoice забудет введённые данные, и {name} вернётся в список доступных сервисов.",
  92. "removeSetupDone": "{name} удалён",
  93. "removeSetupHint": "Не будете продолжать? Удалите, и сервис вернётся в список ниже.",
  94. "disconnected": "Отключено",
  95. "test": "Проверить подключение",
  96. "testPassed": "Подключение работает",
  97. "syncNow": "Синхронизировать сейчас",
  98. "syncQueued": "Синхронизация поставлена в очередь и запустится в течение минуты",
  99. "pullNow": "Получить платежи сейчас",
  100. "pullQueued": "Получение платежей поставлено в очередь и запустится в течение минуты",
  101. "backfill": "Отправить запланированные заказ-наряды",
  102. "backfillQueued": "Запланированные заказ-наряды за последнюю неделю и позже поставлены в очередь",
  103. "backfillInvoices": "Отправить выставленные счета",
  104. "backfillInvoicesQueuedCount": "В очередь поставлено {count, plural, one {# выставленный счёт} few {# выставленных счёта} many {# выставленных счетов} other {# выставленного счёта}}",
  105. "backfillInvoicesNone": "Нет выставленных счетов для отправки. Передаются только отправленные, опубликованные или оплаченные счета, начиная с даты начала, если она задана.",
  106. "retryQueued": "Задача снова поставлена в очередь",
  107. "settingsTitle": "Настройки",
  108. "settingsDescription": "Что синхронизировать и куда. Изменения применяются при следующей синхронизации.",
  109. "settingsSaved": "Настройки сохранены",
  110. "save": "Сохранить",
  111. "loading": "Загрузка...",
  112. "choose": "Выберите...",
  113. "search": "Поиск...",
  114. "noMatch": "Ничего не найдено",
  115. "leaveEmpty": "Оставить пустым",
  116. "noLimit": "Без ограничения",
  117. "planLocked": "Интеграции не входят в ваш тариф.",
  118. "ownAppTitle": "Эта установка использует ваше собственное приложение у провайдера",
  119. "redirectUri": "URI перенаправления для регистрации у провайдера:",
  120. "sendTestEmail": "Send test email",
  121. "testEmailSent": "Test email sent to {email}",
  122. "testEmailHint": "A test email goes to your own address through this vendor, which proves the from address and the sending rules a key check cannot.",
  123. "inboundUrl": "Inbound webhook URL",
  124. "inboundHintSecret": "Paste this URL into the vendor's inbound message settings. It carries a secret that identifies your workshop, so keep it private.",
  125. "inboundHintMeta": "Paste this URL as the callback URL in your Meta app, with the verify token you entered above, and subscribe to messages.",
  126. "inboundHintStripe": "Добавьте этот URL в панели Stripe в разделе Developers, Webhooks с подпиской на checkout.session.completed. Затем вставьте секрет подписи, который покажет Stripe, в поле секрета вебхука здесь, чтобы уведомления можно было проверять.",
  127. "inboundHintVipps": "Укажите этот URL как callback-URL в портале Vipps MobilePay. Vipps также требует опубликованных условий продажи, они задаются в разделе Настройки, Оплата.",
  128. "inboundHintPaypal": "Добавьте этот URL в панели разработчика PayPal в разделе Webhooks с подпиской на PAYMENT.CAPTURE.COMPLETED.",
  129. "copy": "Copy",
  130. "copied": "Copied",
  131. "updateKeys": "Update keys",
  132. "updateKeysHint": "The last check failed. Enter the keys again to try once more.",
  133. "inspectionSync": {
  134. "title": "Синхронизация техосмотров",
  135. "vehicles": "{count} автомобилей с номером в этой мастерской",
  136. "dueNow": "{count} будут проверены при следующем запуске",
  137. "withDate": "{count} уже имеют дату техосмотра",
  138. "lastPass": "Последний полный проход {date}",
  139. "never": "Полного прохода ещё не было",
  140. "inProgress": "Проход выполняется",
  141. "off": "Включите настройку и сохраните; до этого проход ничего не проверяет.",
  142. "syncNowHelp": "«Синхронизировать сейчас» запускает проход немедленно, не дожидаясь ежечасного. Он проверяет по 25 автомобилей и продолжает сам, пока не обработает все ожидающие."
  143. },
  144. "supersedes": "Подключение {next} отключит {current}. Одновременно работает только один, поэтому {current} перестанет использоваться, как только заработает {next}."
  145. },
  146. "activity": {
  147. "title": "Активность",
  148. "description": "Последние задачи и записи журнала для этого подключения.",
  149. "retry": "Повторить",
  150. "jobStatus": {
  151. "queued": "В очереди",
  152. "running": "Выполняется",
  153. "done": "Готово",
  154. "failed": "Ошибка",
  155. "dead": "Прекращено"
  156. }
  157. },
  158. "errors": {
  159. "generic": "Что-то пошло не так",
  160. "demo": "В демо-режиме интеграции подключить нельзя.",
  161. "forbidden": "Подключать интеграции может только администратор.",
  162. "unknown": "Неизвестная интеграция.",
  163. "plan": "Эта интеграция не входит в ваш тариф.",
  164. "no-client": "Для этого провайдера не настроены данные приложения.",
  165. "denied": "Вы отменили вход у провайдера.",
  166. "vendor": "Провайдер вернул ошибку. Попробуйте ещё раз.",
  167. "invalid": "Ответ провайдера был неполным. Попробуйте ещё раз.",
  168. "state": "Срок этого входа истёк, или он относится к другой сессии. Начните заново.",
  169. "exchange": "Провайдер отклонил вход. Проверьте данные приложения и попробуйте ещё раз.",
  170. "identify": "Подключено, но не удалось прочитать данные аккаунта. Попробуйте переподключиться."
  171. },
  172. "meeting": {
  173. "join": "Присоединиться к видеозвонку",
  174. "google-meet": "Google Meet",
  175. "teams": "Microsoft Teams",
  176. "zoom": "Zoom"
  177. },
  178. "calendar": {
  179. "external": "Из подключённых календарей",
  180. "busy": "Занято"
  181. },
  182. "connectors": {
  183. "google-calendar": {
  184. "description": "Добавляйте запланированные заказ-наряды в Google Calendar, прикрепляйте ссылку Google Meet и видите занятое время календаря в Torqvoice.",
  185. "tenantHelp": "Создайте OAuth-клиент в Google Cloud Console (APIs & Services → Credentials), включите Google Calendar API, добавьте указанный ниже URI перенаправления и вставьте сюда идентификатор клиента и секрет.",
  186. "fields": {
  187. "clientId": "Идентификатор клиента",
  188. "clientSecret": "Секрет клиента"
  189. },
  190. "settings": {
  191. "calendarId": "Календарь",
  192. "pushEnabled": "Добавлять запланированные заказ-наряды в этот календарь",
  193. "includeCustomer": "Включать имя и телефон клиента в событие",
  194. "addConference": "Добавлять ссылку Google Meet к каждому событию",
  195. "addConferenceHelp": "Ссылка отображается в заказ-наряде, чтобы вы могли поделиться ею с клиентом.",
  196. "pullEnabled": "Показывать занятое время этого календаря в календаре Torqvoice",
  197. "pullEnabledHelp": "Только чтение. Обновляется каждые 15 минут: неделя назад и два месяца вперёд."
  198. }
  199. },
  200. "microsoft-365": {
  201. "description": "Добавляйте запланированные заказ-наряды в календарь Outlook, прикрепляйте ссылку Microsoft Teams и видите занятое время календаря в Torqvoice.",
  202. "tenantHelp": "Зарегистрируйте приложение в Microsoft Entra (App registrations), разрешите личные и рабочие аккаунты, добавьте указанный ниже URI перенаправления как платформу Web, создайте секрет клиента и вставьте сюда оба значения.",
  203. "fields": {
  204. "clientId": "Идентификатор приложения (клиента)",
  205. "clientSecret": "Секрет клиента"
  206. },
  207. "settings": {
  208. "calendarId": "Календарь",
  209. "pushEnabled": "Добавлять запланированные заказ-наряды в этот календарь",
  210. "includeCustomer": "Включать имя и телефон клиента в событие",
  211. "addConference": "Добавлять ссылку Microsoft Teams к каждому событию",
  212. "addConferenceHelp": "Ссылка отображается в заказ-наряде, чтобы вы могли поделиться ею с клиентом.",
  213. "pullEnabled": "Показывать занятое время этого календаря в календаре Torqvoice",
  214. "pullEnabledHelp": "Только чтение. Обновляется каждые 15 минут: неделя назад и два месяца вперёд."
  215. }
  216. },
  217. "zoom": {
  218. "description": "Добавьте встречу Zoom к запланированному заказ-наряду и держите ссылку на нём: для удалённой диагностики или разбора результатов с клиентом.",
  219. "tenantHelp": "В Zoom App Marketplace создайте приложение General (user-managed), добавьте указанный ниже redirect URI, добавьте scope meeting:write:meeting, meeting:update:meeting, meeting:delete:meeting, meeting:read:meeting и user:read:user, затем вставьте сюда client ID и секрет.",
  220. "fields": {
  221. "clientId": "Client ID",
  222. "clientSecret": "Секрет клиента"
  223. },
  224. "settings": {
  225. "autoCreate": "Автоматически создавать встречу Zoom для каждого запланированного заказ-наряда",
  226. "autoCreateHelp": "Выкл.: вы сами добавляете видеозвонок к заказ-наряду на его странице. Вкл.: каждый заказ-наряд с временем начала получает встречу, которая переносится при изменении расписания и удаляется при отмене. В любом случае клиент получает ссылку, только когда вы её отправите.",
  227. "includeCustomer": "Указывать имя клиента в теме встречи",
  228. "joinBeforeHost": "Разрешить клиенту входить раньше вас",
  229. "waitingRoom": "Использовать зал ожидания"
  230. }
  231. },
  232. "twilio-sms": {
  233. "description": "Send and receive text messages through a Twilio number. Reminders, ready-for-pickup messages and the replies that come back.",
  234. "fields": {
  235. "accountSid": "Account SID",
  236. "authToken": "Auth token"
  237. },
  238. "settings": {
  239. "phoneNumber": "Send from this number"
  240. }
  241. },
  242. "vonage-sms": {
  243. "description": "Send and receive text messages through a Vonage number.",
  244. "fields": {
  245. "apiKey": "API key",
  246. "apiSecret": "API secret"
  247. },
  248. "settings": {
  249. "phoneNumber": "Send from this number"
  250. }
  251. },
  252. "telnyx-sms": {
  253. "description": "Send and receive text messages through a Telnyx number.",
  254. "fields": {
  255. "apiKey": "API key"
  256. },
  257. "settings": {
  258. "phoneNumber": "Send from this number"
  259. }
  260. },
  261. "whatsapp-meta": {
  262. "description": "Message customers on WhatsApp through Meta directly. Photos of what you found, and the conversation that follows.",
  263. "fields": {
  264. "phoneNumberId": "Phone number ID",
  265. "accessToken": "Access token",
  266. "verifyToken": "Webhook verify token",
  267. "appSecret": "App secret",
  268. "apiVersion": "Graph API version"
  269. },
  270. "settings": {
  271. "enabled": "Send messages on this channel",
  272. "phoneNumber": "Send from this number",
  273. "templateName": "Template for reopening a conversation",
  274. "templateLanguage": "Template language",
  275. "templateVariables": "Template values, in order",
  276. "mediaTemplateName": "Template for a message with a photo",
  277. "mediaTemplateLanguage": "Photo template language",
  278. "mediaTemplateVariables": "Photo template values, in order"
  279. }
  280. },
  281. "whatsapp-twilio": {
  282. "description": "Message customers on WhatsApp through a Twilio number, if Twilio is who sold you one.",
  283. "fields": {
  284. "accountSid": "Account SID",
  285. "authToken": "Auth token",
  286. "messagingServiceSid": "Messaging service SID"
  287. },
  288. "settings": {
  289. "enabled": "Send messages on this channel",
  290. "phoneNumber": "Send from this number",
  291. "templateName": "Template for reopening a conversation",
  292. "templateLanguage": "Template language",
  293. "templateVariables": "Template values, in order",
  294. "mediaTemplateName": "Template for a message with a photo",
  295. "mediaTemplateLanguage": "Photo template language",
  296. "mediaTemplateVariables": "Photo template values, in order"
  297. }
  298. },
  299. "telegram": {
  300. "description": "A Telegram bot that reaches customers who use it, and brings their replies into the inbox.",
  301. "fields": {
  302. "botToken": "Bot token"
  303. },
  304. "settings": {
  305. "enabled": "Send messages on this channel",
  306. "botUsername": "Bot username"
  307. }
  308. },
  309. "smtp": {
  310. "description": "Send invoices and reminders through your own mail server, rather than the platform mail.",
  311. "fields": {
  312. "host": "Server",
  313. "port": "Port",
  314. "user": "Username",
  315. "pass": "Password"
  316. },
  317. "settings": {
  318. "fromEmail": "Send from this address",
  319. "fromName": "Name shown as the sender",
  320. "secure": "Connect over TLS from the start",
  321. "requireTls": "Require the server to upgrade to TLS",
  322. "rejectUnauthorized": "Reject a certificate that does not check out"
  323. }
  324. },
  325. "resend": {
  326. "description": "Send invoices and reminders through Resend.",
  327. "fields": {
  328. "apiKey": "API key"
  329. },
  330. "settings": {
  331. "fromEmail": "Send from this address",
  332. "fromName": "Name shown as the sender"
  333. }
  334. },
  335. "postmark": {
  336. "description": "Send invoices and reminders through Postmark.",
  337. "fields": {
  338. "apiKey": "Server token"
  339. },
  340. "settings": {
  341. "fromEmail": "Send from this address",
  342. "fromName": "Name shown as the sender"
  343. }
  344. },
  345. "mailgun": {
  346. "description": "Send invoices and reminders through Mailgun.",
  347. "fields": {
  348. "apiKey": "API key",
  349. "domain": "Sending domain"
  350. },
  351. "settings": {
  352. "fromEmail": "Send from this address",
  353. "fromName": "Name shown as the sender",
  354. "region": "Region the domain is in"
  355. }
  356. },
  357. "sendgrid": {
  358. "description": "Send invoices and reminders through SendGrid.",
  359. "fields": {
  360. "apiKey": "API key"
  361. },
  362. "settings": {
  363. "fromEmail": "Send from this address",
  364. "fromName": "Name shown as the sender"
  365. }
  366. },
  367. "amazon-ses": {
  368. "description": "Send invoices and reminders through Amazon SES.",
  369. "fields": {
  370. "accessKeyId": "Access key ID",
  371. "secretAccessKey": "Secret access key",
  372. "region": "Region"
  373. },
  374. "settings": {
  375. "fromEmail": "Send from this address",
  376. "fromName": "Name shown as the sender"
  377. }
  378. },
  379. "vegvesen": {
  380. "description": "Заполните данные автомобиля по норвежскому номеру или VIN: марка, модель, год, топливо, коробка передач, двигатель, цвет, размеры шин и дата следующего EU-kontroll, напрямую из реестра Statens vegvesen. Данные о владельце не передаются.",
  381. "fields": {
  382. "apiKey": "API-ключ",
  383. "apiKeyHelp": "Бесплатно. Закажите ключ на vegvesen.no в разделе «API for tekniske kjøretøyopplysninger»: войдите через BankID, представьте мастерскую, и ключ будет выдан сразу. Он допускает 50 000 запросов в день."
  384. },
  385. "settings": {
  386. "syncInspections": "Обновлять сроки техосмотра для всех автомобилей этой мастерской",
  387. "syncInspectionsHelp": "Раз в час автомобили, которые давно не проверялись, ищутся по номеру, и сохраняется дата следующего EU-kontroll. Отправляются только автомобили этой мастерской. Автомобиль проверяется ежемесячно, а когда до срока меньше двух месяцев, еженедельно."
  388. }
  389. },
  390. "openapi-automotive": {
  391. "description": "Заполните данные автомобиля по французскому, итальянскому, испанскому, португальскому или британскому номеру: марка, модель, год, VIN, топливо, объём двигателя и другое из регистрационных данных страны через Openapi.com. Каждый запрос списывается со счёта Openapi самой мастерской. Данные о владельце не передаются.",
  392. "fields": {
  393. "token": "API-токен",
  394. "tokenHelp": "Создайте аккаунт на console.openapi.com, пополните кошелёк и в разделе Automotive создайте токен для производственной среды. Каждый успешный запрос стоит несколько десятков центов; запрос без результата бесплатен."
  395. },
  396. "settings": {
  397. "country": "Страна",
  398. "countryHelp": "Реестр, в котором искать. Французские и итальянские номера выглядят одинаково, поэтому страну нельзя определить по номеру.",
  399. "bikes": "Искать также мотоциклы",
  400. "bikesHelp": "Если номер не принадлежит автомобилю, запрашивается и реестр мотоциклов. Запрос по автомобилю без результата бесплатен, поэтому дополнительных расходов нет, если мотоцикл не найден. Недоступно для Португалии."
  401. }
  402. },
  403. "rdw": {
  404. "description": "Заполните данные автомобиля по нидерландскому номеру: марка, модель, год, топливо, объём двигателя, цвет, массы и дата следующего APK, напрямую из открытого реестра транспортных средств RDW. Бесплатно, ключ не нужен. Данные о владельце и VIN не публикуются.",
  405. "fields": {
  406. "appToken": "Токен приложения (необязательно)",
  407. "appTokenHelp": "Открытые данные RDW работают без ключа, но анонимные запросы делят ограниченную квоту. Для синхронизации техосмотров создайте бесплатный аккаунт на opendata.rdw.nl, откройте настройки разработчика в профиле и создайте токен приложения."
  408. },
  409. "settings": {
  410. "syncInspections": "Обновлять даты APK для всех автомобилей этой мастерской",
  411. "syncInspectionsHelp": "Раз в час автомобили, которые давно не проверялись, ищутся по номеру, и сохраняется дата следующего APK. Отправляются только автомобили этой мастерской. Автомобиль проверяется ежемесячно, а когда до срока меньше двух месяцев, еженедельно."
  412. }
  413. },
  414. "regcheck": {
  415. "description": "Заполните данные автомобиля по номеру в Австралии, Новой Зеландии, США, Ирландии, Норвегии, Швеции, Дании, Финляндии, Эстонии, Чехии, Словакии, Венгрии или Хорватии: марка, модель, год, VIN, топливо и объём двигателя, если страна их публикует, через RegCheck. Каждый успешный запрос списывает один кредит со счёта RegCheck самой мастерской. Данные о владельце не передаются.",
  416. "fields": {
  417. "username": "Имя пользователя RegCheck",
  418. "usernameHelp": "Зарегистрируйтесь на regcheck.org.uk; аккаунт включает 10 бесплатных запросов, остальные покупаются блоками по 100 в панели. Здесь нужно только имя пользователя, никогда пароль. Ненайденный номер ничего не стоит."
  419. },
  420. "settings": {
  421. "country": "Страна",
  422. "countryHelp": "Реестр, в котором искать. У каждой страны своя служба, поэтому подключение ищет в одной.",
  423. "auState": "Штат или территория",
  424. "auStateHelp": "Австралия регистрирует автомобили по штатам, и реестру нужно указать, в каком искать. Выберите тот, где зарегистрировано большинство автомобилей ваших клиентов.",
  425. "usState": "Штат",
  426. "usStateHelp": "Двухбуквенный код штата, в котором зарегистрированы автомобили, например CA или TX. Американские реестры запрашиваются по штатам."
  427. }
  428. },
  429. "openai": {
  430. "description": "Описания работ, сводки по истории, распознавание документов и ассистент — отвечает ваш собственный аккаунт OpenAI. Каждый запрос оплачивается с этого аккаунта, модель выбираете вы.",
  431. "fields": {
  432. "apiKey": "API-ключ",
  433. "apiKeyHelp": "Создайте его на platform.openai.com в разделе API keys. На аккаунте нужен баланс; OpenAI списывает плату за каждый запрос."
  434. },
  435. "settings": {
  436. "model": "Модель",
  437. "modelHelp": "Какая модель отвечает. Список берётся из вашего аккаунта, новые сверху. Модели поменьше дешевле за запрос и справляются с большинством текстов мастерской."
  438. }
  439. },
  440. "anthropic": {
  441. "description": "Описания работ, сводки по истории, распознавание документов и ассистент — отвечает Claude в вашем собственном аккаунте Anthropic. Каждый запрос оплачивается с этого аккаунта, модель выбираете вы.",
  442. "fields": {
  443. "apiKey": "API-ключ",
  444. "apiKeyHelp": "Создайте его на console.anthropic.com в разделе API keys. На аккаунте нужен баланс; Anthropic списывает плату за каждый запрос."
  445. },
  446. "settings": {
  447. "model": "Модель",
  448. "modelHelp": "Какая модель отвечает. Список берётся из вашего аккаунта, новые сверху. Модели поменьше дешевле за запрос и справляются с большинством текстов мастерской."
  449. }
  450. },
  451. "stripe": {
  452. "description": "Оплата картой по ссылке на счёт на ваш собственный аккаунт Stripe. Клиент платит, Stripe сообщает Torqvoice, и счёт сам отмечается оплаченным.",
  453. "fields": {
  454. "secretKey": "Секретный ключ",
  455. "secretKeyHelp": "Из панели Stripe в разделе Developers, API keys. Тестовые ключи ничего реального не проводят, поэтому сначала попробуйте платёж на них, а затем переключитесь на боевые ключи.",
  456. "publishableKey": "Публикуемый ключ",
  457. "webhookSecret": "Секрет подписи вебхука",
  458. "webhookSecretHelp": "Stripe показывает его, когда вы добавляете URL уведомлений с этой страницы как вебхук. С ним каждое уведомление проверяется перед записью платежа."
  459. },
  460. "settings": {
  461. "enabled": "Предлагать в ссылках на счета",
  462. "enabledHelp": "Выключите, чтобы на время убрать кнопку оплаты с общих счетов, не отключая интеграцию. Уже начатые платежи всё равно записываются."
  463. }
  464. },
  465. "vipps": {
  466. "description": "Vipps MobilePay по ссылке на счёт. Клиент платит в приложении, которое у него уже есть, и счёт сам отмечается оплаченным.",
  467. "fields": {
  468. "clientId": "Client ID",
  469. "clientSecret": "Client secret",
  470. "subscriptionKey": "Ключ подписки",
  471. "subscriptionKeyHelp": "Ocp-Apim-Subscription-Key из портала Vipps MobilePay, в API-ключах торговой единицы.",
  472. "merchantSerialNumber": "Серийный номер продавца"
  473. },
  474. "settings": {
  475. "enabled": "Предлагать в ссылках на счета",
  476. "enabledHelp": "Выключите, чтобы на время убрать кнопку оплаты с общих счетов, не отключая интеграцию. Уже начатые платежи всё равно записываются.",
  477. "testMode": "Тестовый режим",
  478. "testModeHelp": "Использовать тестовую среду Vipps с тестовыми ключами. Оставьте включённым, пока не пройдёт полный платёж, затем выключите и введите боевые ключи."
  479. }
  480. },
  481. "paypal": {
  482. "description": "Оплата через PayPal по ссылке на счёт через ваше собственное приложение PayPal. Клиент платит аккаунтом PayPal или картой, и счёт сам отмечается оплаченным.",
  483. "fields": {
  484. "clientId": "Client ID",
  485. "clientSecret": "Client secret"
  486. },
  487. "settings": {
  488. "enabled": "Предлагать в ссылках на счета",
  489. "enabledHelp": "Выключите, чтобы на время убрать кнопку оплаты с общих счетов, не отключая интеграцию. Уже начатые платежи всё равно записываются.",
  490. "sandbox": "Режим песочницы",
  491. "sandboxHelp": "Использовать песочницу PayPal с ключами приложения песочницы. Оставьте включённым, пока не пройдёт полный платёж, затем выключите и введите ключи боевого приложения."
  492. }
  493. },
  494. "quickbooks": {
  495. "description": "Отправляйте выставленные счета, их клиентов и платежи в QuickBooks Online и получайте обратно платежи, записанные там.",
  496. "tenantHelp": "Создайте приложение на портале Intuit Developer. Скопируйте client id и secret из Keys and credentials, а URI перенаправления ниже введите в Settings, Redirect URIs. Ключи разработки работают с sandbox-компаниями, production-ключи с настоящими.",
  497. "fields": {
  498. "clientId": "Идентификатор клиента",
  499. "clientSecret": "Секрет клиента"
  500. },
  501. "settings": {
  502. "pushInvoices": "Отправлять выставленные счета в QuickBooks",
  503. "pushOnComplete": "Также отправлять счета, когда заказ отмечен как выполненный",
  504. "pushOnCompleteHelp": "Без этого счёт уходит, когда он отправлен, передан по ссылке или оплачен. С этим выполненный заказ уходит сразу и обновляется при изменениях.",
  505. "startDate": "Только счета с датой не раньше",
  506. "startDateHelp": "Оставьте пустым, чтобы отправлять все выставленные счета. Укажите дату перехода бухгалтерии на QuickBooks, чтобы старые счета не вводились дважды.",
  507. "includeVehicle": "Указывать автомобиль в счёте",
  508. "includeVehicleHelp": "Текстовая строка над позициями с годом, маркой, моделью, номером и пробегом, чтобы бухгалтерия знала, о какой машине речь.",
  509. "laborItemId": "Товар для строк работ",
  510. "laborItemIdHelp": "Оставьте пустым, и в первый раз под вашим счётом доходов будет создан товар с именем Labour.",
  511. "partsItemId": "Товар для строк запчастей",
  512. "partsItemIdHelp": "Оставьте пустым, и в первый раз под вашим счётом доходов будет создан товар с именем Parts.",
  513. "taxAmounts": "Суммы налога",
  514. "taxAmountsHelp": "Как в счёте передаёт налог ровно таким, каким он указан в счёте клиента, поэтому обе системы сходятся до копейки. Рассчитывает QuickBooks позволяет QuickBooks применить ставку налогового кода, а в США адрес клиента; журнал сообщает о расхождении итогов.",
  515. "taxAmountsBilled": "Как в счёте Torqvoice",
  516. "taxAmountsQuickbooks": "Рассчитывает QuickBooks",
  517. "taxCodeId": "Налоговый код для облагаемых счетов",
  518. "taxCodeIdHelp": "QuickBooks учитывает налог по налоговому коду. Torqvoice подбирает код со ставкой каждого счёта; этот используется, когда подходящего нет. Компания в США использует TAX, если не выбрать другой код.",
  519. "zeroTaxCodeId": "Налоговый код для счетов без налога",
  520. "zeroTaxCodeIdHelp": "Используется, когда в счёте нет налога или клиент освобождён от него. Компания в США использует NON, если не выбрать другой код.",
  521. "pushPayments": "Записывать платежи в QuickBooks",
  522. "depositAccountId": "Зачислять платежи на",
  523. "depositAccountIdHelp": "Оставьте пустым, чтобы использовать Undeposited Funds.",
  524. "manualPaidAsPayment": "Записывать платёж, когда счёт отмечен оплаченным вручную",
  525. "manualPaidAsPaymentHelp": "Счёт, отмеченный в Torqvoice как оплаченный без записи платежа, получает в QuickBooks один платёж на сумму, которая там ещё числится к оплате. Выключено: он остаётся там открытым, пока не будет записан платёж.",
  526. "pullPayments": "Забирать платежи, записанные в QuickBooks",
  527. "pullPaymentsHelp": "Каждые 30 минут. Платёж, полученный в QuickBooks по счёту из Torqvoice, записывается здесь на счёт."
  528. }
  529. },
  530. "nhtsa": {
  531. "description": "Заполните автомобиль по VIN и смотрите отзывные кампании, жалобы владельцев и рейтинги краш-тестов для каждого модельного года от американского ведомства безопасности. Бесплатно, без ключа.",
  532. "fields": {},
  533. "settings": {
  534. "refreshFleet": "Поддерживать актуальные данные об отзывах и жалобах для каждого автомобиля этой мастерской",
  535. "refreshFleetHelp": "Раз в день модели, не обновлявшиеся за последнюю неделю, запрашиваются заново, чтобы страница автомобиля никогда не ждала, а новая отзывная кампания появлялась в течение недели. Отправляются только марка, модель и год."
  536. }
  537. }
  538. },
  539. "jobKinds": {
  540. "calendar": {
  541. "push": "Заказы в календарь",
  542. "pull": "Занятое время из календаря"
  543. },
  544. "conference": {
  545. "sync": "Ссылки на видеозвонки"
  546. },
  547. "inspection": {
  548. "refresh": "Обновление сроков техосмотра"
  549. },
  550. "accounting": {
  551. "invoice": "Счёт в бухгалтерию",
  552. "payment": "Платёж в бухгалтерию",
  553. "customer": "Клиент в бухгалтерию",
  554. "pull": "Платежи из бухгалтерии"
  555. },
  556. "safety": {
  557. "refresh": "Обновление данных об отзывных кампаниях",
  558. "vehicle": "Проверка отзывных кампаний для нового автомобиля"
  559. }
  560. }
  561. }