integrations.json 46 KB

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