Bulk Translate
Translate OpenCart catalog content with HuntBee Framework AI providers or Google Cloud Translation using a safe queue-based workflow.
Start with Fill missing only. It is the safest way to build translations without replacing content you already edited manually.
Before you start
- Your OpenCart store must have at least two enabled languages.
- For AI Translation, configure and enable a supported provider in HuntBee Framework → AI Settings. The current supported Framework providers are OpenAI, Claude and Gemini.
- For Google Translation, enter a Google Cloud Translation API key in Bulk Translate Settings and use the Test button.
- Choose one source language and one or more target languages.
Dashboard
The Dashboard shows the configured Source Language, Target Languages, Translation Engine and current queue status. The Translation Coverage section compares source-language fields with each enabled target language so you can quickly see where translations are missing.
Translate tab
Use this tab for normal catalog content. Choose an entity type, select the items, choose source/target languages, choose the fields, then choose an engine and content mode.
Supported catalog areas
- Products
- Categories
- Information pages
- Articles
- Topics
Supported fields
The exact fields depend on the entity. Product jobs can include Name, Description, Meta Title, Meta Description, Meta Keywords and Tags. Categories, information pages, articles and topics use the matching OpenCart language fields available for that entity.
Catalog Terms
Reusable catalog terminology can also be translated using the same queue and safety rules. Current term types include Attribute Groups, Attributes, Options, Option Values, Filter Groups and Filters.
Translation engine
| Engine | When to use it | Setup |
|---|---|---|
| AI Translation | Useful when you want a language model to preserve context/tone across catalog text. | Choose and enable OpenAI, Claude or Gemini in HuntBee Framework AI Settings. Bulk Translate uses the Framework default AI provider. |
| Google Translation | Useful for direct machine translation through Google Cloud Translation. | Enter your Google Translation API key in Bulk Translate and test the connection. |
Existing Content mode
| Mode | What happens | Recommendation |
|---|---|---|
| Fill missing only | Only source fields that contain text and whose target field is empty are translated. | Recommended. Use this for normal translation work and all automatic translation. |
| Overwrite selected fields | Existing target content in the selected fields can be replaced with the new translation. | Use only when you intentionally want to replace current translations. Completed overwrite jobs may offer Restore. |
Queue and processing
Click Translate Selected to add jobs to the queue. Process Next Batch is useful for an immediate manual test. When Background Processing is enabled, Admin Tools Suite registers its shared worker to process small batches automatically.
A job that encounters a temporary problem can be retried automatically up to the component's safe retry limit. Jobs that finally fail appear in Activity with the error and a Retry action.
Activity tab
Activity shows each translation job, source and target languages, requested fields, engine and status.
- Retry is available for failed jobs.
- Remove is available for pending or failed jobs.
- Restore is available for eligible completed overwrite jobs and restores only when the current target still matches what that job wrote.
Settings
| Setting | What it means | Recommended starting point |
|---|---|---|
| Source Language | Content is translated from this enabled OpenCart language. | Choose the language in which your catalog is most complete. |
| Automatic Target Languages | Languages that receive automatic missing translations when automation is enabled. | Select only languages you actively maintain. |
| Default Engine | AI Translation or Google Translation used by automatic jobs. | Choose the provider you have already tested manually. |
| Google API Key | Credential used only for Google Translation. | Leave empty if you use AI Translation. Test the key before large jobs. |
| Automatic Entities | Product, Category, Information, Article and/or Topic changes that may queue missing translations. | Start with Products only, then add other entity types after you are comfortable. |
| Background Processing | Allows the shared Admin Tools worker to process queued jobs in small batches. | Keep Off while testing; turn On after manual translations look correct. |
Automatic translation
When Background Processing is enabled and an entity type is selected for automation, adding or editing that OpenCart content can queue translation jobs to your configured target languages.
Safe beginner setup
- Enable a second OpenCart language.
- Set the language with your best catalog content as Source Language.
- Choose one target language.
- Configure either Framework AI or Google Translation and test it.
- Leave Background Processing Off.
- Translate one or two products using Fill missing only.
- Review the storefront/admin content in the target language.
- Only then enable background processing or automatic entities.
Logs
The Logs tab is for troubleshooting translation processing. It records translation outcomes and safe error information. Use Refresh Log to inspect recent activity and Clear Log when you no longer need old diagnostics.
Troubleshooting
| Problem | What to check |
|---|---|
| Bulk Translate says it requires two languages | Enable at least two languages in OpenCart → Localisation → Languages. |
| AI Translation is not ready | Open HuntBee Framework → AI Settings, configure one supported provider, enable it and make it the default provider. |
| Google Translation fails | Check the API key, Google Cloud API access/billing and use the built-in Test function. |
| Nothing was translated | Check whether the source field actually contains text and, in Fill missing only mode, whether the target field is already filled. |
| A job is Failed | Read the Activity error, correct the provider/language/content issue, then use Retry. |
| Restore is refused | The translated content was changed after the job. This protection prevents an old translation job from overwriting newer edits. |