Создание новых заказов WooCommerce для вашего магазина - это потрясающее чувство. Однако необходимость выставлять счета клиентам может отнять много удовольствия от новых продаж, не говоря уже о дополнительном времени, затрачиваемом на создание счетов-фактур для этих заказов, которое только увеличивается по мере увеличения дохода.

Версия плагина: 3.14.1
 
WordPress плагин WooCommerce Freshbooks

Особенности плагина

Перестаньте наказываться за успех: автоматически создавайте свои счета-фактуры или используйте отправку в один клик, чтобы сэкономить ваше драгоценное время. Расширение WooCommerce FreshBooks позволяет автоматически отправлять счета-фактуры в формате PDF клиенту по электронной почте, а также создавать новых клиентов в качестве новых клиентов в FreshBooks! Если вам нужно выставить счет только для некоторых заказов, вы можете сделать это одним щелчком мыши на странице Заказов.

WooCommerce FreshBooks обеспечивает высокую производительность и большую гибкость при синхронизации вашего магазина WooCommerce с FreshBooks. Хотите выставлять счета только по некоторым заказам вручную? Легко. Нужно создавать счета-фактуры для всех заказов? Делайте это автоматически! Улучшите отчетность по FreshBooks, привязав товары FreshBooks к вашим продуктам WooCommerce и синхронизируя платежи между WooCommerce и FreshBooks. Что делает WooCommerce FreshBooks?

  • Легко создавайте новых клиентов в FreshBooks, когда клиенты делают заказы в вашем магазине WooCommerce
  • В качестве альтернативы, выставляйте счета по всем заказам под клиентом по умолчанию
  • Возможность автоматического создания счетов-фактур для всех заказов или создания счетов-фактур вручную
  • Возможность автоматической отправки счетов-фактур по электронной почте или обычной почтой для новых заказов
  • Массовые действия по созданию, отправке или добавлению платежей в счета-фактуры
  • Синхронизируйте номера заказов WooCommerce и номера счетов-фактур FreshBooks
  • Включите доставку и налоги в качестве позиций с соответствующими кодами в счетах-фактурах

Спецификации:

Дата выхода: 12-07-2019
Дата обновления: 02-01-2020
Тип расширения: Платный
Лицензия: GPL
Тематика: Интернет-коммерция Специфические для WooCommerce
Совместимость: W5.x
Включает в себя: Плагин
Языковые пакеты: Английский
Разработчик: WooCommerce Plugins

Рейтинг:
4.4708333333333 1 1 1 1 1 (Оценок: 240)
4.4708333333333 240

Скачивание по подписке!

Вам необходимо авторизоваться на сайте и приобрести клубную подписку!

Поделись с друзьями!

 

Руководство по настройке WooCommerce Freshbooks для связки заказов и счетов FreshBooks

WooCommerce Freshbooks нужен тем магазинам, где заказ в WooCommerce должен быстро превращаться в клиентскую запись и invoice в FreshBooks без ручного копирования данных. Это руководство не повторяет короткое описание плагина, а показывает, как подготовить сайт, подключить FreshBooks Classic, выбрать режим создания счетов, проверить оплату, разобраться с налогами, номерами invoice и типичными ошибками.

Главная особенность продукта в том, что он работает не как универсальный бухгалтерский комбайн, а как мост между двумя системами: WooCommerce хранит заказ, товары, оплату и статусы, а FreshBooks получает клиента, invoice, платежные отметки и товары для отчетности. Поэтому качество настройки зависит не только от самого плагина, но и от того, как в магазине оформлены товары, платежные методы, налоги, номера заказов и роль менеджера.

Обложка руководства WooCommerce Freshbooks с потоком заказов в FreshBooks
Общая логика руководства: заказ WooCommerce передается в FreshBooks как клиент, invoice и отметка оплаты.

Перед установкой важно принять один практический факт: официальная документация WooCommerce отмечает, что продукт больше не доступен на WooCommerce.com и оставлен для существующих пользователей. Поэтому ниже упор сделан на безопасную эксплуатацию уже имеющейся копии, тестирование в копии сайта, аккуратный выбор настроек и понимание ограничений, а не на покупку или активацию расширения.

Какую задачу закрывает интеграция и где она действительно полезна

Плагин решает узкую, но важную задачу: он снимает с администратора магазина ручную работу по созданию счетов в FreshBooks после каждого заказа. Если у магазина несколько заказов в день, ручное создание клиентов, строк invoice, налогов, доставки и отметок оплаты быстро превращается в источник ошибок. Один неверно скопированный адрес, один пропущенный товар или один invoice без платежной отметки могут испортить отчетность и заставить бухгалтера сверять данные вручную.

В типовом сценарии покупатель оформляет заказ в WooCommerce. После этого WooCommerce Freshbooks может создать клиента в FreshBooks или назначить invoice на заранее выбранного клиента, добавить позиции заказа, доставку и налоги, создать invoice как черновик или сразу отправленный документ, а затем связать оплату с invoice. Если покупатель оплачивает invoice через FreshBooks, плагин может отметить этот invoice как оплаченный в WooCommerce, но при этом не меняет статус самого заказа. Это важное разделение: бухгалтерская отметка оплаты и операционный статус заказа остаются разными вещами.

Главная польза WooCommerce Freshbooks - не в красивом invoice, а в уменьшении ручной сверки между магазином и бухгалтерским сервисом. Если магазин использует FreshBooks как основной инструмент для счетов и учета оплат, такая связка помогает быстро видеть, какие заказы уже попали в FreshBooks, какие остались черновиками и где нужно вмешательство менеджера.

Когда плагин подходит

Интеграция хорошо вписывается в магазины, где FreshBooks уже используется командой, а WooCommerce остается публичной витриной и точкой оформления заказа. Особенно полезны такие случаи:

  • Магазин продает услуги, цифровые продукты, консультации, подписки или товары, по которым клиенту нужен PDF invoice.
  • Команда хочет создавать invoice автоматически, но отправлять часть счетов вручную после проверки заказа.
  • Бухгалтерия работает в FreshBooks и не хочет переносить клиентов, товары, доставку и налоги из WooCommerce вручную.
  • Нужно связать товары WooCommerce с items в FreshBooks, чтобы отчеты по продажам были более понятными.
  • Нужна простая отметка платежей между WooCommerce и FreshBooks без полной двусторонней синхронизации склада или банковской сверки.

Когда лучше не начинать с этой интеграции

Плагин может быть не лучшим выбором, если вы только выбираете бухгалтерскую систему и не зависите от FreshBooks Classic. Официальная документация прямо указывает требование FreshBooks Classic, а современная FreshBooks API использует другой подход к авторизации. Для нового магазина это означает риск: часть интерфейсов, документации и API-поведения может отличаться от скриншотов в старой документации.

Также стоит осторожно подходить к установке, если магазин уже работает на сложной архитектуре с High-Performance Order Storage, несколькими платежными шлюзами, подписками, бронированиями, отдельным плагином номеров заказов и кастомными статусами. Сам по себе такой набор не запрещает интеграцию, но требует тестового стенда и проверки каждого потока: новый заказ, продление подписки, ручной заказ, возврат, неоплаченный заказ, заказ с несколькими налогами и заказ с длинным номером.

Если вы не используете FreshBooks Classic или не можете подтвердить доступ к API URL и Authentication Token, не настраивайте интеграцию на рабочем магазине. Сначала проверьте совместимость аккаунта FreshBooks и только потом подключайте WooCommerce.

Что проверить перед установкой на WordPress и WooCommerce

Подготовка важнее самой загрузки ZIP-файла. WooCommerce Freshbooks касается заказов, платежей, клиентских данных и invoice, поэтому ошибка в настройках может проявиться не сразу. Например, заказ появится в WooCommerce, но invoice не создастся из-за неверного API token; или invoice создастся, но номер окажется слишком длинным; или taxes попадут отдельными строками, и бухгалтерия будет ждать другой формат.

Проверка FreshBooks Classic

Первый вопрос - какой именно FreshBooks у вас в аккаунте. Официальная документация плагина говорит о FreshBooks Classic. Если интерфейс FreshBooks отличается от скриншотов в документации WooCommerce, лучше уточнить у поддержки FreshBooks, можно ли использовать нужный режим API для вашей учетной записи. В статье не стоит полагаться на догадку по внешнему виду интерфейса: решает наличие API URL и Authentication Token в разделе FreshBooks API.

Для уже работающей команды полезно назначить одного ответственного за FreshBooks. Он должен проверить, что в аккаунте есть доступ к клиентам, invoices, items, payments и настройкам языка. Если в FreshBooks действуют роли и ограничения, пользователь с недостаточными правами может видеть интерфейс, но не иметь возможности выполнять нужные операции через API.

Проверка заказов, налогов и платежных методов

До установки выпишите, какие платежные методы реально используются в магазине: карты, PayPal, банковский перевод, оплата при получении, ручная оплата по invoice. В настройках плагина каждому методу нужно сопоставить payment type в FreshBooks. Если оставить это на потом, отчеты по платежам будут хуже читаться, а бухгалтеру придется вручную понимать, чем был оплачен конкретный invoice.

Налоги требуют отдельного внимания. Документация WooCommerce FreshBooks объясняет, что плагин добавляет налоги и доставку как отдельные line items. Это не случайная особенность, а компромисс из-за различий между налоговой моделью WooCommerce и FreshBooks. В WooCommerce может быть больше налоговых ставок, а FreshBooks ограничивает налоги на строку invoice. Поэтому перед запуском нужно показать бухгалтеру тестовый invoice и согласовать, приемлем ли такой формат.

Проверка технической среды

Плагин лучше включать не на рабочем сайте сразу, а на staging-копии. Минимальный технический чек-лист выглядит так:

  • Есть актуальная резервная копия файлов и базы данных, которую реально можно восстановить.
  • На копии сайта установлен тот же набор платежных методов, налоговых ставок, подписок и плагинов номеров заказов, что и на рабочем магазине.
  • В WooCommerce понятны стандартные статусы заказов: Pending payment, Processing, Completed, On hold, Failed, Refunded.
  • У администратора есть доступ к WooCommerce > Status > Logs и право включать debug mode в настройках FreshBooks только на время диагностики.
  • Проверен путь установки ZIP-плагина через Plugins > Add New > Upload Plugin.

Если магазин использует HPOS, не делайте вывод только по тому, что заказ создается в интерфейсе. Проверьте, видит ли интеграция order actions, bulk actions, invoice status filter и обновление invoice после изменения заказа. Старые интеграции иногда зависят от того, как они получают данные заказа, поэтому тест должен покрывать именно те действия, которые описаны в руководстве.

Установка и первый запуск без риска для заказов

Установка расширения выглядит привычно для WordPress, но из-за финансовых данных ее нельзя воспринимать как обычное включение визуального плагина. Ваша цель на первом запуске - не сразу отправлять invoices клиентам, а убедиться, что сайт подключился к FreshBooks, видит нужные настройки и может создать тестовый invoice в контролируемом режиме.

Загрузка ZIP и активация

  1. Откройте админ-панель WordPress и перейдите в Plugins > Add New > Upload Plugin.
  2. Выберите ZIP-файл расширения и нажмите Install Now.
  3. После установки нажмите Activate.
  4. Перейдите в WooCommerce > Settings > FreshBooks.

Если после активации вкладка FreshBooks не появилась, не продолжайте тестовые заказы. Сначала проверьте, что WooCommerce активен, ZIP-файл не содержит лишний верхний каталог, а в журнале WordPress нет фатальной ошибки. Для коммерческих расширений также бывает важно, чтобы в архиве лежала именно папка плагина, а не документация или вложенный архив.

Первое подключение к FreshBooks

В настройках нужно заполнить API URL и Authentication Token. В документации WooCommerce указано, что эти данные берутся в FreshBooks через My Account > FreshBooks API. Не публикуйте этот token в задачах, чатах, скриншотах или заметках. Он нужен только сайту, который должен создавать invoices.

После сохранения настроек проверьте, что плагин подтягивает FreshBooks data и показывает доступные элементы там, где это ожидается: clients для Default Client, languages, payment types и items для связки с товарами. Если списки пустые, это не всегда означает ошибку интерфейса. Возможны неверный API URL, неверный token, отсутствие нужных данных в FreshBooks или несовместимый тип аккаунта.

Безопасный стартовый режим

Для первого теста лучше выбрать консервативную схему: создавать invoice автоматически, но не отправлять его клиенту, пока команда не проверит формат. Если плагин позволяет отключить Automatically Send Invoices, оставьте invoices в состоянии draft. Так заказ уже попадет в FreshBooks, но клиент не получит неожиданный документ до проверки налогов, доставки, языка, номера и платежного типа.

Не включайте массовую отправку invoices до первого полного тестового заказа. Особенно это касается магазина с реальными клиентами, где старые неоплаченные или ручные заказы могут попасть в bulk action. Сначала создайте один новый заказ в копии сайта, затем один ручной invoice для старого заказа, и только после этого думайте о пакетной обработке.

Карта настроек FreshBooks после установки

Настройки WooCommerce Freshbooks лучше проходить не сверху вниз механически, а по влиянию на рабочий сценарий. Одни параметры отвечают за подключение, другие - за то, кому будет принадлежать invoice, третьи - за отправку, номера, оплату и видимость invoice для покупателя. Ошибка в одном поле может не сломать интеграцию полностью, но изменит бухгалтерскую логику.

Карта настроек WooCommerce Freshbooks после установки
Схема показывает, какие настройки влияют на подключение, клиентов, invoices, оплату и проверку результата.

Подключение и отладка

API URL и Authentication Token - базовые поля. Их нельзя заполнять приблизительно, копировать из чужой инструкции или хранить в открытом документе. Если token изменился в FreshBooks, сайт перестанет создавать invoices, пока вы не обновите значение в настройках.

Debug Mode нужен только для диагностики. Документация WooCommerce говорит, что debug messages очищаются от sensitive information перед отображением, но лучшая практика остается прежней: включайте отладку временно, воспроизведите проблему, сохраните лог для поддержки, затем выключите режим. Долго включенный debug может добавлять шум в журналы и усложнять поиск реальной ошибки.

Клиенты и язык invoice

Default Client определяет, будут ли invoices попадать на одного общего клиента, например условный WooCommerce Shop, или для каждого покупателя будет создаваться отдельный client в FreshBooks. Оба подхода допустимы, но решают разные задачи.

Один общий клиент удобен, если бухгалтерия хочет видеть продажи магазина как поток заказов, а не вести каждого покупателя как отдельную клиентскую запись. Отдельные клиенты лучше подходят для B2B, услуг, повторных заказов, подписок и ситуации, где важна история отношений с конкретным заказчиком. Если сомневаетесь, протестируйте оба варианта на staging и покажите результат бухгалтеру.

Default Language влияет на язык invoices. Обычно лучше оставить язык сайта, если он совпадает с аудиторией магазина. Если магазин международный, проверьте, как FreshBooks обрабатывает язык клиента и какие языки доступны в вашем аккаунте. Не обещайте клиентам локализованный invoice, пока не увидите фактический PDF.

Отправка invoices и видимость в кабинете покупателя

Send Invoices By позволяет выбрать отправку по email или через Snail Mail, если такой способ доступен и в FreshBooks достаточно соответствующих ресурсов. Для большинства интернет-магазинов email будет понятнее и быстрее. Физическая отправка имеет смысл только там, где она заранее согласована с бизнес-процессом.

Display Link in Recent Orders добавляет покупателю действие View Invoice в списке заказов. Это удобно, если клиентам часто нужен PDF invoice после покупки. Но перед включением проверьте, что invoice действительно создается, доступен правильному клиенту и не открывает лишние данные. Для B2B-магазина ссылка может снизить количество обращений в поддержку; для магазина с разовыми покупками она полезна только при понятной политике документов.

Автоматическое создание и отправка

Automatically Create Invoices определяет, будет ли invoice создаваться при новом заказе. Если выключить параметр, invoices придется создавать вручную из заказа или через bulk actions. Такой режим удобен для нестандартных заказов, предзаказов, товаров с ручным согласованием и случаев, когда менеджер сначала проверяет состав заказа.

Automatically Send Invoices решает, останется invoice черновиком или уйдет клиенту. Для нового внедрения безопаснее начинать с draft. После того как команда проверит несколько заказов, можно включить автоматическую отправку для простых оплаченных заказов. Если в магазине много заказов с ручным подтверждением или офлайн-оплатой, отправку лучше оставить ручной.

Payment Type Settings

Сопоставление payment methods из WooCommerce с payment types FreshBooks стоит сделать сразу. В противном случае invoice может быть создан корректно, но финансовая аналитика окажется менее понятной. Для каждого метода задайте, как он должен выглядеть в FreshBooks. Например, оплата картой, PayPal и банковский перевод обычно должны различаться, потому что дальнейшая сверка проходит по разным источникам.

После сохранения сделайте тестовые заказы разными методами оплаты. Убедитесь, что payment type в FreshBooks совпадает с ожиданиями бухгалтерии. Если один платежный шлюз использует несколько внутренних сценариев, например авторизация и последующий capture, проверьте не только успешную оплату, но и заказ в ожидании подтверждения.

Номера invoices, префиксы и связь с номерами заказов

Нумерация invoice кажется мелкой настройкой, пока интеграция не упирается в ограничение длины. WooCommerce Freshbooks может использовать номер заказа WooCommerce как номер invoice в FreshBooks и добавлять prefix. Официальная документация предупреждает, что сумма prefix и order number не должна превышать 10 символов, когда номер отправляется в FreshBooks. Это одно из самых практичных мест, где администратор может заранее избежать ошибки.

Когда использовать номер заказа как номер invoice

Одинаковый номер удобен для поддержки и бухгалтерии: менеджер видит order в WooCommerce, открывает FreshBooks и быстро находит соответствующий invoice. Это особенно полезно, если заказы обрабатываются вручную, а клиент пишет в поддержку с номером из письма WooCommerce.

Но у такого удобства есть цена. Если магазин использует длинные номера, префиксы, суффиксы, годовые коды или отдельный плагин красивой нумерации, номер может стать слишком длинным для FreshBooks. В таком случае лучше разрешить FreshBooks генерировать invoice numbers самостоятельно, а связь с WooCommerce искать через ссылки, заметки заказа и FreshBooks order actions.

Как проверить риск ошибки заранее

Возьмите самый длинный реальный номер заказа из магазина и добавьте планируемый FreshBooks prefix. Затем посчитайте длину итоговой строки. Если она приближается к лимиту, не ждите, пока ошибка возникнет на рабочем заказе. Уберите prefix, сократите формат номера заказа или выключите использование order number как invoice number.

Типичный симптом выглядит так:

Invalid value for field 'number'. Exceeded maximum length of 10 for field 'number'.

Это не ошибка платежного метода и не проблема клиента. Причина именно в номере invoice, который отправляется в FreshBooks. Исправление обычно сводится к сокращению prefix или отключению передачи order number в invoice number. После изменения повторите создание invoice для тестового заказа и проверьте, появился ли документ в FreshBooks.

Не обрезайте номера заказов вручную в базе данных. Если текущий формат слишком длинный, меняйте настройку нумерации или режим создания invoice, а не исторические данные магазина.

Связка товаров WooCommerce с items в FreshBooks

Одна из продуктовых возможностей WooCommerce Freshbooks - связать WooCommerce products с FreshBooks items. Это не обязательный шаг для простой отправки invoice, но он полезен для отчетности. Когда товар привязан к item, покупка такого товара в WooCommerce записывается в FreshBooks как продажа конкретного item, а не просто как произвольная строка invoice.

Что дает привязка item

Без привязки FreshBooks все равно может получить line item из заказа, но аналитика будет менее устойчивой. Название товара в WooCommerce может меняться, менеджеры могут добавлять вариации, а в FreshBooks бухгалтерия часто хочет видеть согласованный список услуг или товаров. Привязка помогает привести эти два мира к одному справочнику.

Официальная документация указывает, что FreshBooks item выбирается в карточке товара WooCommerce, в области Product Data, на вкладке General. После сохранения покупка этого товара будет записываться как продажа выбранного FreshBooks item. Для магазина с небольшим числом услуг это понятная и быстрая настройка; для большого каталога ее лучше вводить постепенно.

Какие товары проверять отдельно

Документация плагина говорит о поддержке simple, variable, subscription и bookable products через WooCommerce Bookings. На практике это означает, что тестировать нужно не только простой товар. Если в магазине есть вариации, подписки и бронирования, создайте по одному тестовому заказу каждого типа и проверьте, как item появляется в FreshBooks.

Особенно внимательно смотрите на названия вариаций, количество, цену, скидки и налоговые строки. Если invoice нужен не только клиенту, но и бухгалтерской аналитике, нельзя ограничиться проверкой статуса "создался". Нужно открыть PDF или экран invoice и убедиться, что содержание понятно человеку, который не видел исходный заказ в WooCommerce.

Синхронизация заказов, invoices и платежей в реальном процессе

Рабочая логика интеграции строится вокруг заказов. Новый order может создавать invoice, invoice может быть draft или sent, payment может применяться автоматически, а заказ может иметь ссылку на FreshBooks. Понимание этих состояний помогает не путать бухгалтерские отметки с операционным исполнением заказа.

Схема синхронизации заказа WooCommerce и invoice FreshBooks
Визуальная схема разделяет создание клиента, invoice, отправку, оплату и статус заказа.

Draft или Sent

Если invoice создается как Draft, он остается внутри FreshBooks до ручной отправки. Это удобно для команды, которая хочет проверить заказ перед отправкой документа. Если invoice создается как Sent, клиент получает invoice быстрее, но ошибки в налогах, доставке, email или языке становятся заметны клиенту сразу.

Для нового внедрения разумно начать с draft. После того как несколько заказов прошли без проблем, можно решить, какие категории заказов можно отправлять автоматически. Если плагин не дает тонких условий по категориям, выбирайте общий режим по самому рискованному сценарию. Лучше один лишний ручной шаг, чем автоматическая отправка неправильного invoice.

Ручные actions в заказе

Для заказов без invoice в order screen появляется действие вроде Create & Send Invoice. Для draft invoice доступны действия отправки и обновления. Это полезно в трех ситуациях: старые заказы до установки плагина, заказы с ручной проверкой и исправление после изменения состава заказа.

Если менеджер изменил order details после создания invoice, он должен отправить изменения обратно в FreshBooks. Иначе WooCommerce и FreshBooks будут показывать разные суммы или строки. Внутри команды лучше закрепить правило: любые правки line items, доставки, скидки или адреса после invoice требуют повторной проверки invoice в FreshBooks.

Bulk actions и фильтр по статусу invoice

Bulk actions помогают обработать несколько заказов, но именно здесь легко ошибиться. Не выбирайте сразу весь список заказов. Сначала отфильтруйте orders по нужному признаку: нет invoice, invoice draft, invoice sent или другой доступный статус. Затем выберите небольшую группу и проверьте результат.

Фильтр по invoice status полезен для ежедневной работы. Менеджер может увидеть, какие заказы уже переданы в FreshBooks, какие ждут отправки, а какие требуют ручного вмешательства. Такой фильтр особенно важен, если automatic creation выключено и invoices создаются по мере готовности заказа.

Налоги, доставка и ограничения FreshBooks

Налоговая часть - самый важный индивидуальный раздел для этой интеграции, потому что именно здесь ожидания часто расходятся с реальностью. WooCommerce и FreshBooks по-разному работают с tax rates. WooCommerce может хранить несколько налоговых ставок и применять их к разным товарам, зонам, классам налогов и доставке. FreshBooks в документации плагина описан как система, где на line item возможно ограниченное число налогов. Поэтому плагин передает taxes и shipping как отдельные line items.

Почему налоги становятся отдельными строками

Это решение выглядит непривычно, если бухгалтерия ожидает, что налог будет прикреплен к каждой товарной строке. Но документация объясняет причину: если попытаться передать налоговую сумму как tax total для ставки, FreshBooks может пересчитать налог как процент от самой налоговой строки. В результате сумма станет неверной. Чтобы поддержать большинство магазинов с несколькими налоговыми ставками, плагин добавляет taxes отдельными строками invoice.

Перед запуском обязательно согласуйте с бухгалтерией формат tax line items. Если отчетность строится на налогах внутри каждой товарной строки, WooCommerce Freshbooks может не закрыть этот сценарий так, как ожидается. В таком случае лучше рассмотреть альтернативную интеграцию, middleware или ручной процесс для заказов со сложной налоговой структурой.

Как тестировать налоги

Сделайте минимум три тестовых заказа:

  1. Заказ без налога и без доставки, чтобы увидеть базовую структуру invoice.
  2. Заказ с одним tax rate и shipping line, чтобы проверить простую налоговую схему.
  3. Заказ с несколькими tax rates или разными tax classes, если такие правила есть в магазине.

После каждого теста откройте invoice в FreshBooks, сравните subtotal, tax lines, shipping line и total с заказом WooCommerce. Разница даже в несколько копеек важна: она означает, что налоговая модель или округление требуют дополнительной проверки.

Доставка как line item

Shipping cost также добавляется в invoice как отдельная строка. Для большинства магазинов это удобно: клиент видит стоимость доставки отдельно от товара, а бухгалтерия может отличить товарную выручку от доставки. Но если магазин использует сложные shipping packages, частичную отгрузку или сторонний fulfillment, проверьте, не теряются ли нужные детали. WooCommerce Freshbooks не заменяет систему логистики и не должен отвечать за все складские события.

Практический пример: тестовый заказ и invoice без отправки клиенту

Ниже сценарий, который стоит пройти перед включением интеграции на рабочем сайте. Он показывает не только установку, но и контроль результата: что должно появиться в WooCommerce, что должно появиться в FreshBooks и где чаще всего видно ошибку.

Цель

Нужно настроить WooCommerce Freshbooks так, чтобы новый оплаченный заказ создал draft invoice в FreshBooks, привязал заказ к клиенту или default client, применил платежный тип, сохранил налоговые и shipping строки, но не отправил invoice покупателю до ручной проверки.

Подготовка

  • На staging-сайте активны WooCommerce и WooCommerce Freshbooks.
  • В FreshBooks Classic доступны API URL и Authentication Token.
  • Создан один тестовый товар, а если нужно - связанный FreshBooks item.
  • В WooCommerce включен безопасный способ тестовой оплаты или ручной заказ, который не списывает реальные деньги.
  • В настройках FreshBooks выбран draft-режим без автоматической отправки клиенту.

Шаги настройки и теста

  1. Перейдите в WooCommerce > Settings > FreshBooks и сохраните API URL с Authentication Token.
  2. Выберите Default Client или оставьте None, если хотите создать отдельного FreshBooks client для покупателя.
  3. Отключите автоматическую отправку invoice и оставьте создание invoice включенным, если это доступно в вашей версии.
  4. Настройте Payment Type Settings для тестового платежного метода.
  5. Создайте тестовый заказ с товаром, доставкой и налогом.
  6. Откройте заказ в WooCommerce и проверьте order notes, FreshBooks order actions и ссылку на invoice.
  7. Откройте FreshBooks и найдите invoice по клиенту, номеру или ссылке из заказа.

Проверка результата

Ожидаемый результат - в FreshBooks создан invoice в состоянии draft, в WooCommerce заказ содержит информацию о связи с invoice, суммы совпадают, payment type соответствует способу оплаты, taxes и shipping отражены отдельными строками, а клиент не получил invoice раньше проверки. Если включена ссылка View Invoice в кабинете покупателя, проверьте ее на тестовом пользователе, а не только в админ-панели.

Пример проверки invoice после тестового заказа WooCommerce
Пример результата: заказ, draft invoice, строки налога и доставки, а также контрольная сверка суммы.

Нюанс, который часто пропускают

Оплата invoice и статус заказа - разные вещи. Документация плагина отдельно уточняет, что действия FreshBooks не меняют order status, потому что магазин может иметь разные рабочие процессы. Поэтому не считайте ошибкой то, что invoice оплачен, а order status не стал Completed. Для WooCommerce Processing часто означает, что платеж получен, но заказ еще требует выполнения. Перевод в Completed должен соответствовать вашему fulfillment-процессу.

Как проверять результат после запуска

После успешного теста нужна регулярная проверка. Интеграции с бухгалтерскими сервисами редко ломаются громко. Чаще они тихо перестают создавать часть документов, теряют payment type, не обновляют invoice после изменения заказа или создают расхождение в налогах. Поэтому администратору нужен короткий контрольный маршрут.

Ежедневная проверка менеджера

Менеджер магазина может проверять интеграцию через orders list. Отфильтруйте заказы по invoice status, посмотрите, нет ли новых заказов без invoice, и откройте несколько свежих order notes. Если invoice status filter показывает неожиданные пропуски, проверьте, были ли эти заказы созданы до установки плагина, были ли они ручными, оплаченными, отмененными или с нестандартным статусом.

Если используется automatic sending, каждый день полезно сверять случайный invoice: клиент, email, line items, shipping, taxes, total и payment type. Такая выборочная проверка быстрее, чем ручное создание всех invoices, но хорошо ловит изменения после обновления WooCommerce, платежного шлюза или налоговой настройки.

Проверка после обновлений

После обновления WordPress, WooCommerce, платежного метода, плагина подписок или системы нумерации заказов повторите один тестовый заказ. Особенно это важно для старых расширений, которые зависят от order screen и order actions. Если в магазине включен HPOS или менялся режим хранения заказов, проверьте не только создание invoice, но и bulk actions, фильтр invoice status, ручное обновление invoice и ссылку из заказа в FreshBooks.

Что не считать успешной проверкой

Недостаточно увидеть, что "invoice появился". Для качественной проверки нужны четыре совпадения:

  • Сумма invoice совпадает с total заказа WooCommerce.
  • Клиент или default client выбран согласно вашей учетной политике.
  • Payment type соответствует платежному методу заказа.
  • Налоги и доставка выглядят так, как согласовано с бухгалтерией.

Если совпадает только сумма, но tax lines не устраивают бухгалтерию, интеграция еще не готова к рабочему запуску. Если все строки верны, но invoice отправляется слишком рано, нужно менять режим отправки. Если invoice корректен, но order status вызывает путаницу, нужно обучить менеджеров различать FreshBooks payment и WooCommerce fulfillment status.

Частые ошибки WooCommerce Freshbooks и понятная диагностика

Диагностику лучше вести от симптома к причине. Не включайте debug mode просто "на всякий случай" и не меняйте несколько настроек одновременно. Сначала поймите, где именно обрыв: подключение к FreshBooks, создание клиента, создание invoice, отправка, применение payment, отображение ссылки или обновление после изменения заказа.

Диагностическая карта ошибок WooCommerce Freshbooks
Карта диагностики помогает отделить ошибку API, длинный номер invoice, налоговые расхождения и путаницу статусов.

Invoice не создается после заказа

Симптом

Заказ появился в WooCommerce, но в FreshBooks нет нового invoice и в заказе нет понятной ссылки на FreshBooks.

Что проверить

Проверьте API URL, Authentication Token, тип аккаунта FreshBooks, режим Automatically Create Invoices и order notes. Если настройки недавно менялись, сохраните их еще раз и сделайте новый тестовый заказ. Старый заказ не всегда автоматически обработается после исправления подключения.

Как исправить

Исправьте credentials, убедитесь, что FreshBooks Classic доступен, затем создайте invoice вручную из order actions или через bulk action для небольшой группы заказов. Если ошибка повторяется, включите Debug Mode только на время воспроизведения и приложите лог к обращению в поддержку.

Ошибка про длину поля number

Симптом

В order note или уведомлении видна ошибка Invalid value for field 'number' с упоминанием превышения максимальной длины.

Что проверить

Посчитайте длину invoice prefix и номера заказа. Если используется Sequential Order Numbers Pro или похожий плагин, проверьте реальный формат номера, включая prefix, suffix и динамические части.

Как исправить

Сократите FreshBooks prefix, упростите номер заказа или отключите использование order number as invoice number. После этого повторите создание invoice. Не изменяйте уже созданные номера заказов в базе.

Invoice создан, но клиент не тот

Симптом

Все invoices попадают на одного клиента, хотя вы ожидали отдельного client для каждого покупателя, или наоборот.

Что проверить

Откройте Default Client. Если выбран конкретный клиент, все invoices будут assigned to that client. Если выбрано None, плагин должен создавать клиента для покупателя.

Как исправить

Выберите нужную стратегию и сделайте новый тестовый заказ. Для уже созданных invoices исправление может потребовать ручной работы в FreshBooks, поэтому важно определить стратегию до массовой обработки.

Оплата есть, но order status не меняется

Симптом

FreshBooks invoice отмечен как paid, но заказ WooCommerce остается Processing или в другом статусе.

Что проверить

Это может быть нормальным поведением. Документация плагина указывает, что FreshBooks actions не меняют order status, чтобы не вмешиваться в разные сценарии управления заказами. Проверьте только, применился ли payment к invoice и видна ли отметка в WooCommerce.

Как исправить

Не пытайтесь автоматом переводить все оплаченные invoices в Completed, если в магазине есть физическая доставка, ручная выдача или смешанные товары. Настройте отдельный процесс fulfillment или используйте специализированный инструмент статусов только после теста.

Суммы в WooCommerce и FreshBooks не совпадают

Симптом

Subtotal, tax, shipping или total в invoice отличаются от заказа.

Что проверить

Проверьте налоговые ставки, округление, скидки, shipping line и то, как FreshBooks показывает taxes. Помните, что плагин передает taxes отдельными line items из-за ограничений модели FreshBooks.

Как исправить

Повторите тест на простом заказе без скидок и сложных tax rates. Если простой заказ совпадает, добавляйте усложнения по одному. Если не совпадает даже простой заказ, не включайте автоматическую отправку invoices и обращайтесь к поддержке с debug log.

Производительность, безопасность и работа с данными клиентов

WooCommerce Freshbooks передает клиентские и финансовые данные между сайтом и внешним сервисом. Поэтому вопрос не только в удобстве, но и в дисциплине доступа. У администратора не должно быть привычки пересылать API token в чат, оставлять debug log в публичной задаче или давать лишним пользователям права на настройки WooCommerce.

Минимизация доступа

Доступ к настройкам FreshBooks в WooCommerce должен быть только у администратора или ответственного менеджера. Пользователь с ролью shop manager может управлять заказами, но не обязательно должен видеть API credentials. Если команда большая, разделите роли: кто обрабатывает orders, кто отвечает за FreshBooks, кто меняет настройки интеграции.

Логи и персональные данные

Логи нужны для диагностики, но они могут содержать контекст заказов. Даже если плагин очищает sensitive information в debug messages, не стоит пересылать полные журналы без проверки. Перед отправкой в поддержку удалите лишние персональные данные, оставив технический контекст: время ошибки, order number, действие, сообщение об ошибке и шаги воспроизведения.

Нагрузка на магазин

Интеграция с FreshBooks добавляет внешние API-вызовы при создании или обновлении invoice. На маленьком магазине это обычно незаметно, но на магазине с большим потоком заказов важно понимать, когда создаются invoices: сразу при заказе, вручную или пакетно. Если в пиковые часы checkout должен быть максимально быстрым, протестируйте, не добавляет ли интеграция задержку на критическом пути.

Если есть сомнение, начинайте с ручного или draft-процесса и переводите автоматизацию на рабочий поток постепенно. Так проще увидеть реальные задержки, ошибки API и спорные заказы без массового воздействия на клиентов.

Где WooCommerce Freshbooks уступает современным интеграциям

Сильная сторона этого плагина - прямой понятный мост для существующих пользователей FreshBooks Classic. Слабая сторона - его возраст, статус недоступности на WooCommerce.com и ограниченность сценария. Он не превращает WooCommerce и FreshBooks в единую учетную систему, не решает все задачи сверки, не заменяет складской учет и не покрывает сложные multi-channel процессы.

Не полноценная двусторонняя бухгалтерская синхронизация

Плагин работает вокруг invoices, clients, items и payments. Если вам нужна глубокая двусторонняя синхронизация products, inventory, bank fees, payouts, refunds, accounting accounts и reconciliation, смотрите более современные решения или middleware. Особенно это важно для магазинов, которые продают через несколько каналов и хотят видеть финальную сверку по платежным провайдерам.

Зависимость от FreshBooks Classic

FreshBooks развивал современную API-модель с OAuth2, а документация WooCommerce FreshBooks говорит о Classic account и API token. Это не делает плагин бесполезным для существующего магазина, но делает его спорным выбором для нового проекта. Если бизнес только начинает автоматизировать accounting workflow, лучше сравнить доступные варианты до того, как процессы будут завязаны на retired extension.

Ограничения налоговой модели

Передача taxes как отдельных line items может быть нормальной для одних магазинов и неприемлемой для других. Это нельзя исправить простой CSS-правкой, сниппетом или настройкой темы, потому что причина находится в различиях данных WooCommerce и FreshBooks. Если налоговая структура сложная, решение должен подтвердить бухгалтер, а не только администратор сайта.

Ответы на вопросы, которые возникают после первой настройки

Можно ли использовать WooCommerce Freshbooks с новым FreshBooks, а не FreshBooks Classic?

Официальная документация плагина указывает требование FreshBooks Classic и советует обращаться в FreshBooks, если интерфейс нового аккаунта отличается от скриншотов. Поэтому не стоит уверенно подключать новый аккаунт без проверки. Если в аккаунте нет нужного API URL и Authentication Token, интеграция может не работать так, как описано.

Нужно ли включать автоматическую отправку invoices сразу?

Нет. Для первого запуска безопаснее создавать draft invoices, проверять их в FreshBooks и только потом решать, можно ли отправлять документы автоматически. Это особенно важно для заказов с налогами, доставкой, скидками, подписками и длинными номерами.

Почему paid invoice не переводит заказ в Completed?

Плагин не меняет order status через FreshBooks actions, потому что WooCommerce order status отвечает не только за оплату, но и за fulfillment. Для физического товара Processing может быть нормальным состоянием после оплаты, пока заказ не отправлен или не выполнен.

Как связать товары WooCommerce с FreshBooks items?

В карточке товара откройте Product Data и вкладку General. Если FreshBooks data подтянулась корректно, там будет настройка FreshBooks item. Выберите соответствующий item и сохраните товар. После покупки продажи будут лучше отражаться в FreshBooks item reporting.

Что делать со старыми заказами, которые были до установки плагина?

Для старых orders можно использовать ручные действия из order screen или bulk actions, если они доступны в вашей версии. Не обрабатывайте сразу все старые заказы. Выберите небольшую группу, проверьте invoices и только потом продолжайте.

Почему налоги в invoice отображаются отдельными строками?

Это связано с различиями налоговых моделей WooCommerce и FreshBooks. Документация плагина объясняет, что taxes и shipping передаются как line items, потому что FreshBooks иначе может пересчитать налоговую сумму неправильно или не поддержать нужное количество ставок на строку.

Можно ли решить ошибку длинного номера invoice сниппетом?

Обычно не нужно. Безопаснее сократить prefix, изменить формат номера заказа или отключить использование WooCommerce order number как FreshBooks invoice number. Сниппеты для финансовой нумерации лучше не применять без разработчика и тестового стенда.

Есть ли смысл включать debug mode постоянно?

Нет. Debug mode нужен для воспроизведения проблемы и подготовки лога. После диагностики его стоит выключить. Постоянная отладка создает лишний шум и может усложнить работу с журналами.

Когда WooCommerce Freshbooks будет удачным выбором

WooCommerce Freshbooks стоит использовать, если у вас уже есть рабочая копия плагина, магазин действительно опирается на FreshBooks Classic, а главная задача - быстро создавать invoices из заказов WooCommerce и уменьшить ручной перенос данных. В такой ситуации продукт остается полезным, но требует аккуратного внедрения: staging, draft invoices, проверка taxes, настройка payment types, контроль длины invoice number и обучение менеджеров разнице между payment и order status.

Если вы только выбираете бухгалтерскую интеграцию для нового магазина, сначала сравните текущие варианты и проверьте, нужен ли именно FreshBooks Classic. Retired status продукта и зависимость от старой модели API делают его решением для осознанной эксплуатации, а не универсальной рекомендацией для любого нового WooCommerce-проекта.

Когда тестовый заказ проходит без расхождений, invoice понятен бухгалтерии, taxes и shipping выглядят ожидаемо, а команда понимает ручные действия в order screen, можно загрузить архив с WooCommerce Freshbooks и переходить к аккуратной проверке на копии сайта. Рабочий магазин подключайте только после того, как вы сможете повторить весь маршрут от заказа до invoice без ручных исправлений.

Автор: Редакция JoomFox.org

Вы не зарегистрированы, чтобы оставлять комментарии.