magefan / module-geoip

magefan/module-geoip

Allows to get country code by IP

magento2-module 2.4.6-2.4.9 Compatible Based on composer requirements only QA: failed

Magento 2 GeoIP Database Extension by Magefan

Total Downloads
Latest Stable Version

made_in_ukraine.jpg

This Magento 2 GeoIP module provides you PHP methods for getting customer country by IP, without any additional plugin for PHP.

It is used for Magento 2 Currency Auto Switcher and Magento 2 Auto Language Switcher by Magefan

🇺🇦 Stand with Ukraine! How can you help?

Requirements

  • Magento Community Edition 2.0.x-2.4.x or Magento Enterprise Edition 2.0.x-2.4.x

Installation Method 1 - Installing via composer

  • Open command line
  • Using command "cd" navigate to your magento2 root directory
  • Run command: composer require magefan/module-geoip
composer require magefan/module-geoip
php bin/magento setup:upgrade
php bin/magento setup:di:compile
php bin/magento setup:static-content:deploy

Installation Method 2 - Installing using archive

  • Install GeoIP2 PHP API (https://github.com/maxmind/GeoIP2-php).
  • Download ZIP Archive
  • Extract files
  • In your Magento 2 root directory create folder app/code/Magefan/GeoIp
  • Copy files and folders from archive to that folder
  • In command line, using "cd", navigate to your Magento 2 root directory
  • Run commands:
php bin/magento setup:upgrade
php bin/magento setup:di:compile
php bin/magento setup:static-content:deploy

How To Use

protected $ipToCountryRepository;

public function __construct(
    \Magefan\GeoIp\Model\IpToCountryRepository $ipToCountryRepository,
    ....//other code
) {
    $this->ipToCountryRepository = $ipToCountryRepository;
    ...//other code
}

public function example() {
    $visitorCountyCode = $this->ipToCountryRepository->getVisitorCountryCode();
    $someCountryCodeByIp = $this->ipToCountryRepository->getCountryCode('104.27.164.57');
    ...//other code
}

Support

If you have any issues, please contact us
then if you still need help, open a bug report in GitHub's
issue tracker.

Need More Features?

Please contact us to get a quote
https://magefan.com/contact

License

The code is licensed under Open Software License ("OSL") v. 3.0.

This product includes GeoLite2 data created by MaxMind, available from
https://www.maxmind.com.

Originally use these databases:

https://www.maxmind.com

http://software77.net/geo-ip/

Magento 2 Extensions by Magefan

Magento 2 Google Extensions

Magento 2 SEO Extensions

Magento 2 Speed Optimization Extensions

Magento 2 Admin Panel Extensions

Magento 2 Blog Extensions

Magento 2 Marketing Automation Extensions

Magento 2 Cart Extensions

Magento 2 Multi-Language Extensions

Developers Tools

Shopify Apps by Magefan

No changelog yet

The vendor hasn't published a changelog. Tagged releases appear in the Versions tab.

Versions
Version Stability QA Status Released
2.3.5 stable Fail 2025-09-29 10:18:26
2.3.4 stable Not tested 2025-09-22 11:08:56
2.3.3 stable Not tested 2025-09-08 08:34:02
2.3.2 stable Not tested 2025-05-08 12:29:25
2.3.1 stable Not tested 2024-05-24 11:08:06
2.3.0 stable Not tested 2024-05-03 08:31:33
2.2.3 stable Not tested 2023-09-06 09:21:48
2.2.2 stable Not tested 2023-03-13 08:24:00
2.2.1 stable Not tested 2023-02-17 07:08:09
2.2.0 stable Not tested 2022-09-05 08:51:05
2.1.8 stable Not tested 2022-09-01 11:54:32
2.1.7 stable Not tested 2020-07-11 10:09:13
2.1.6 stable Not tested 2020-07-11 09:50:45
2.1.5 stable Not tested 2020-06-01 10:24:15
2.1.4 stable Not tested 2020-03-17 07:20:09
2.1.3 stable Not tested 2020-01-31 08:17:44
2.1.2 stable Not tested 2019-09-09 17:08:31
2.1.1 stable Not tested 2019-07-02 18:32:50
2.1.0 stable Not tested 2019-05-24 14:51:02
2.0.6 stable Not tested 2019-01-07 11:23:28
2.0.5 stable Not tested 2018-05-16 12:00:28
2.0.4 stable Not tested 2018-05-11 07:58:43
2.0.3 stable Not tested 2018-04-13 07:32:19
2.0.2 stable Not tested 2018-02-20 19:31:09
2.0.1 stable Not tested 2018-01-29 09:20:42
2.0.0 stable Not tested 2018-01-24 19:44:56

Requires 2

Package Constraint
magefan/module-community >=2.2.17
geoip2/geoip2 ^2.9.0

Suggests 2

Package Reason
magefan/module-auto-currency-switcher Install GeoIP Auto Currency Switcher Extension for Magento 2 (https://magefan.com/magento-2-currency-switcher-auto-currency-by-country). Use coupon code COMPOSER-FAN to get a 10% discount on magefan.com.
magefan/module-auto-language-switcher Install GeoIP Auto Language/Store Switcher Extension for Magento 2 (https://magefan.com/magento-2-auto-language-switcher). Use coupon code COMPOSER-FAN to get a 10% discount on magefan.com.
QA results
Tool Status Findings Summary
PHPCS Fail 1 1 errors (gating threshold: error-severity=10, ruleset: Magento2)
PHPStan Fail 20 20 errors (level 4, ruleset: phpstan + bitexpert/phpstan-magento)
Cpd Pass 0
Security Pass 0

No license declared

This package's composer.json doesn't declare a license, homepage, or authors. Check the source repository for terms of use.

Make it pay

Turn an existing module into recurring revenue.

If you already maintain a Magento 2 module on GitHub or GitLab, listing it on Packagento takes about five minutes. We mirror your tags, handle distribution signing, and route paid licenses through Stripe Connect, so you can keep shipping the way you already do.