# shipperhq/module-address-autocomplete

> ShipperHQ Address Autocomplete Tool

`composer require shipperhq/module-address-autocomplete`

Canonical URL: https://packagento.com/shipperhq/module-address-autocomplete

## At a glance

- **Vendor**: shipperhq (https://packagento.com/shipperhq.md)
- **Latest version**: 21.1.0 — released 2026-06-18
- **Pricing**: Free
- **Package type**: Magento 2 module
- **Status**: active, accepting new buyers

## Installation

Packagento is licence-gated, so even free packages need a licence on a project before Composer can resolve them.

1. **Sign in or create an account** at https://packagento.com/customer/account/.

2. **Add the package to your account.** Open https://packagento.com/shipperhq/module-address-autocomplete and complete the free checkout. A licence is minted automatically.

3. **Create or pick a project, then activate the licence on it.**
   - Projects represent the Magento installs you deploy to. Manage them at https://packagento.com/projects/.
   - Activate the new licence on the project you'll deploy this package to. Activation is what generates the Composer credentials scoped to that project.

4. **Add the project credentials to your Magento codebase.**

   Grab the project's public + private key from https://packagento.com/projects/ (open the project, then its Credentials tab), and add them to `auth.json`:

   ```json
   {
     "http-basic": {
       "packagento.com": {
         "username": "ppk_live_...",
         "password": "psk_live_..."
       }
     }
   }
   ```

   Add the Packagento Composer repository to `composer.json`:

   ```json
   {
     "repositories": [
       { "type": "composer", "url": "https://packagento.com" }
     ]
   }
   ```

5. **Install and apply.**

   ```bash
   composer require shipperhq/module-address-autocomplete:*
   bin/magento setup:upgrade
   bin/magento setup:di:compile
   bin/magento cache:flush
   ```

## What it does

ShipperHQ Address Autocomplete Tool

## README

The ShipperHQ Address Auto-Complete extension enhances Magento 2 stores by integrating Google's Address Auto-Complete API. This extension simplifies the checkout process by enabling address lookup functionality, improving user experience, and reducing address entry errors.

You do **not** need a ShipperHQ account to use this extension. More information on ShipperHQ capabilities is available at [ShipperHQ](https://shipperhq.com/magento2).

---

### Features

- **Seamless Address Auto-Complete**: Instantly suggest addresses as customers type.
- **Guest & Logged-In Customer Support**:
    - Auto-complete available for guest checkout shipping addresses.
    - Auto-complete for logged-in users adding a new address to their address book.
    - Supports new shipping address entry at checkout.
- **Google API Integration**: Requires a Google API key with access to the *Google Places API Web Service*.

---

### Requirements

- Magento 2.4.4+
    - Compatibility with earlier editions is possible but not maintained
    - Supports both Magento Opensource (Community) and Magento Commerce (Enterprise)

---

### Installation

Install using Composer by running the following commands:

```bash
composer require shipperhq/module-address-autocomplete
composer update
php bin/magento setup:upgrade
```

We recommend installing the ShipperHQ Logging module for enhanced debugging:

```bash
composer require shipperhq/module-logger
composer update
php bin/magento setup:upgrade
```

---

### Configuration

1. Navigate to `Stores > Configuration > Sales > Shipping Settings`.
2. Open the **ShipperHQ Address Auto-Complete** tab and enable the extension.
3. Enter your **Google API Key**. If you do not have one, register and ensure you have enabled the *Google Places API Web Service* on your [Google account](https://developers.google.com/maps/documentation/places/web-service/get-api-key).
4. Save the configuration.
5. Refresh the Magento cache from `System > Cache Management`.

For further setup details, visit [our configuration guide](http://docs.shipperhq.com/configure-shipperhq-address-autocomplete/).

---

### Limitations

- Address auto-complete is **not supported** on any admin forms.
- Address auto-complete is **not available** for billing addresses.

---

### Support

As a free extension, ShipperHQ Address Auto-Complete is provided as-is without support.

---

### Contribution

Any contribution is highly appreciated. The best way to contribute code is to open a [pull request on GitHub](https://help.github.com/articles/using-pull-requests).

---

### License

See license files.

---

### Copyright

Copyright (c) 2015 Zowta LLC ([ShipperHQ](http://www.ShipperHQ.com))

## Changelog

All notable changes to this project will be documented in this file.
This project adheres to Semantic Versioning(http://semver.org/).

### 1.0.0
Initial Release

### 1.0.1
SHQ16-2072 address autocomplete changes

### 1.0.2
SHQ16-2072 address autocomplete changes

### 1.0.3
SHQ16-2112 support for address elements specific to New York, UK and Sweden

### 1.0.4
SHQ16-2150 handle no API key, increase z-index and handle apartment number

### 1.0.5
SHQ16-2150 handle no API key, increase z-index and handle apartment number. Also changed tagged version number

### 20.0.5
SHQ16-2150 handle no API key, increase z-index and handle apartment number. Also changed tagged version number

### 20.0.6
SHQ16-2244 add polyfill for IE 11 issue

### 20.1.0
SHQ16-2328 moved css for autocomplete to less file

### 20.1.1
M2-56 code sniffer changes

### 20.1.2
Updated README with grammar corrections

### 20.1.3
SHQ18-65 - handle Google API authentication errors
### 20.2.1 (2018-07-27)
SHQ18-260 Disable Google Chrome autofill if address lookup is enabled


### 20.3.0 (2018-12-18)
Added a setting to use extended postcodes when available


### 20.3.1 (2020-06-18)
MNB-401 Fix issue with popup rendering for logged in users


### 20.3.2 (2020-12-21)
MNB-532 Fix use long zip option


### 20.3.3 (2021-04-01)
MNB-1058 Fix conditionals and fix issue with whole address printing in street line 1


### 20.4.0 (2021-06-01)
RIV-534 support Enhanced Checkout


### 20.5.0 (2021-11-30)
MNB-1843 User submitted enhancement to refactor add new address UI. MNB-1789 Fix for street address becoming uneditable on Google API error


### 20.5.1 (2022-01-17)
MNB-1966 Fix for Quebec not populating and added CSP whitelist


### 20.6.0 (2022-01-24)
MNB-574 Add support for placing house number after street name


### 20.6.1 (2022-05-24)
MNB-2364 Resolve issue with Montreal not being populated as city


### 20.6.2 (2023-04-13)
SHQ23-326 Fix issue with formatting of US addresses containing an apartment or suite number


### 20.6.3 (2024-06-03)
SHQ23-2640 Remove trailing comma from stress address


### 20.6.4 (2024-09-19)
SHQ23-3384 Add Google domain to connect-src in csp_whitelist.xml


### 20.6.5 (2024-10-21)
SHQ23-3585 Fix issue with apartment numbers being omitted in address book


### 20.6.7 (2025-01-31)
INFRA-893 Added missing build mp step


### 20.6.8 (2025-02-06)
SHQ23-4310 Fix error in customer address book phtml file


### 20.6.9 (2025-08-21)
SHQ23-5374 Fixing copyrights


### 20.6.10 (2025-08-21)
SHQ23-5374 Fix unescaped output in phtml


### 20.6.11 (2025-11-06)
INFRA-1328 - Removed incorrect case-sensitive version of file


### 21.0.0 (2025-12-19)
SHQ23-5984 Migrate to new Google Places API


### 21.0.1 (2026-01-05)
SHQ23-6882 Update CSP whitelist


### 21.0.2 (2026-01-21)
ENG26-182 Fix unescaped output


### 21.0.3 (2026-05-29)
ENG26-26 Update copyrights


### 21.1.0 (2026-06-18)
SHQ23-497 Fix autocomplete to populate the correct UK county/region

## Recent Versions

| Version | Released |
|---|---|
| 21.1.0 | 2026-06-18 |
| 21.0.3 | 2026-05-29 |
| 21.0.2 | 2026-01-21 |
| 21.0.1 | 2026-01-05 |
| 21.0.0 | 2025-12-19 |
| 20.6.11 | 2025-11-06 |
| 20.6.10 | 2025-08-21 |
| 20.6.9 | 2025-08-21 |
| 20.6.8 | 2025-02-06 |
| 20.6.7 | 2025-01-31 |

Showing 10 of 37 versions. Full release history on https://packagento.com/shipperhq/module-address-autocomplete.

## Quality

Latest release (21.1.0) passes the Packagento QA pipeline. Verdicts below are per-cell (Magento line × PHP version) for the matrixed tools, and run-once for the static / security tiers.


### Compatibility

Each Magento line is installed on its supported PHP versions, then the module is built (DI compile + static-content deploy). Cells show passed / failed / untested; staircase gaps render as `–`.

| Magento | PHP 8.2 | PHP 8.3 | PHP 8.4 | PHP 8.5 |
|---|---|---|---|---|
| 2.4.7 | Pass | Pass | – | – |
| 2.4.8 | – | Pass | Pass | – |
| 2.4.9 | – | – | Pass | Pass |


### Code Quality

Advisory checks against the module's source. Never affect the Compatibility verdict — a phpcs finding can't make a module incompatible.

#### Static Analysis

Coding standards (phpcs), mess detection (phpmd), copy-pasted code (cpd), PHP cross-version compatibility, composer.json validity. Each runs once for the whole module.

| Tool | Status | Findings | Summary |
|---|---|---|---|
| PHPCS | Warning | 1 | 1 warning (ruleset: Magento2) |
| PHPMD | Warning | 2 | 2 rule violations (UndefinedVariable:2) |
| Cpd | Pass | 0 |  |
| Composer validate | Info | 1 | valid; 1 advisory note (composer validate --strict) |

#### PHPStan

Type-checks the module against a real Magento install. Re-runs per Magento + PHP version because resolvable symbols differ between releases.

| Magento | PHP 8.2 | PHP 8.3 | PHP 8.4 | PHP 8.5 |
|---|---|---|---|---|
| 2.4.7 | Pass | Pass | – | – |
| 2.4.8 | – | Pass | Pass | – |
| 2.4.9 | – | – | Pass | Pass |


### Tests

Unit and integration suites run per Magento + PHP cell. Test failures speak to the module's behaviour, not its compatibility with a line, so they're reported here separately.

#### Unit Tests

| Magento | PHP 8.2 | PHP 8.3 | PHP 8.4 | PHP 8.5 |
|---|---|---|---|---|
| 2.4.7 | N/A | N/A | – | – |
| 2.4.8 | – | N/A | N/A | – |
| 2.4.9 | – | – | N/A | N/A |

#### Integration Tests

| Magento | PHP 8.2 | PHP 8.3 | PHP 8.4 | PHP 8.5 |
|---|---|---|---|---|
| 2.4.7 | N/A | N/A | – | – |
| 2.4.8 | – | N/A | N/A | – |
| 2.4.9 | – | – | N/A | N/A |


### Security

Dependency-advisory audit (composer audit) plus a source malware scan. A malware detection fails the version outright.

| Tool | Status | Findings | Summary |
|---|---|---|---|
| Composer audit | Pass | 0 |  |
| Malware scan | Pass | 0 |  |

## Licence and pricing

Free. A licence is still minted on checkout and bound to your project for Composer access — no payment step.

Refundable within 14 days of first purchase via https://packagento.com/account/refunds/.

## Install via Claude Code or any MCP client

The Packagento MCP server can run the licence + project + Composer steps above in one tool call:

```
purchase_and_install_packages(
  composer_names=["shipperhq/module-address-autocomplete"],
  project_id="proj_xxx"
)
```

This handles cart, checkout, licence minting, project activation, and writes auth.json credentials. Connect a client with `claude mcp add packagento https://mcp.packagento.com`. Full setup at https://packagento.com/docs/mcp-setup.

## Vendor

shipperhq is a Magento 2 vendor on Packagento. See https://packagento.com/shipperhq.md for their full catalogue.

