Find an API

Search public APIs with auth details & Postman guides

← All APIs

MATCH API

mastercard · Company

Company No Auth Free & Open API

Helps acquirers identify potentially high-risk merchants before entering to a merchant agreement.

Authentication

No authentication requiredFree to use with no key needed.

Sample Requests

GET Returns information about Merchants, URLs and up to five principal owners, that have been terminated by an acquiring bank from a previous inquiry. The Inquiry History Results resource displays the inquiry with the option to view either; Possible Merchant Matches or Possible Inquiry Matches.

Returns information about Merchants, URLs and up to five principal owners, that have been terminated by an acquiring bank from a previous inquiry. The Inquiry History Results resource displays the inquiry with the option to view either; Possible Merchant Matches or Possible Inquiry Matches.

https://api.apis.guru/v2/specs/mastercard.com/MATCH/1.0.0/fraud/merchant/v3/termination-inquiry/{IRN}?AcquirerId=example&PageLength=1&PageOffset=1

Hover any highlighted part to learn what it does

curl -X GET "https://api.apis.guru/v2/specs/mastercard.com/MATCH/1.0.0/fraud/merchant/v3/termination-inquiry/{IRN}?AcquirerId=example&PageLength=1&PageOffset=1"
import requests
params = {
    "AcquirerId": "example",
    "PageLength": "1",
    "PageOffset": "1"
}
response = requests.get(
    "https://api.apis.guru/v2/specs/mastercard.com/MATCH/1.0.0/fraud/merchant/v3/termination-inquiry/{IRN}",
    params=params,
)
print(response.json())
const url = new URL('https://api.apis.guru/v2/specs/mastercard.com/MATCH/1.0.0/fraud/merchant/v3/termination-inquiry/{IRN}');
url.searchParams.set('AcquirerId', 'example');
url.searchParams.set('PageLength', '1');
url.searchParams.set('PageOffset', '1');

const response = await fetch(url); 
const data = await response.json();
console.log(data);
package main

import (
	"fmt"
	"io"
	"net/http"
	"net/url"
)

func main() {
	baseURL, _ := url.Parse("https://api.apis.guru/v2/specs/mastercard.com/MATCH/1.0.0/fraud/merchant/v3/termination-inquiry/{IRN}")
	q := baseURL.Query()
	q.Set("AcquirerId", "example")
	q.Set("PageLength", "1")
	q.Set("PageOffset", "1")
	baseURL.RawQuery = q.Encode()
	targetURL := baseURL.String()
	req, _ := http.NewRequest("GET", targetURL, nil)

	client := &http.Client{}
	resp, _ := client.Do(req)
	defer resp.Body.Close()
	body, _ := io.ReadAll(resp.Body)
	fmt.Println(string(body))
}
require "net/http"
require "json"

uri = URI("https://api.apis.guru/v2/specs/mastercard.com/MATCH/1.0.0/fraud/merchant/v3/termination-inquiry/{IRN}")
uri.query = URI.encode_www_form({
  "AcquirerId" => "example",
  "PageLength" => "1",
  "PageOffset" => "1"
})

http = Net::HTTP.new(uri.host, uri.port)
http.use_ssl = uri.scheme == "https"

req = Net::HTTP::Get.new(uri)

res = http.request(req)
puts JSON.parse(res.body)
<?php
$url = "https://api.apis.guru/v2/specs/mastercard.com/MATCH/1.0.0/fraud/merchant/v3/termination-inquiry/{IRN}?" . http_build_query([
    "AcquirerId" => "example",
    "PageLength" => "1",
    "PageOffset" => "1"
]);
$opts = ["http" => [
    "method" => "GET",
]];
$ctx = stream_context_create($opts);
$res = file_get_contents($url, false, $ctx);
print_r(json_decode($res, true));
POST Returns information on merchants that have been terminated and merchants that have inquired upon. Provides the acquiring bank with information, such as, if a Merchant or individual has been terminated by another acquirer already, the reason for termination, the history of fraudulent or risky business practices that led to that termination and the inquiry that was made already on the Merchant or individual by own or another acquiring bank (if opted).

Returns information on merchants that have been terminated and merchants which have been inquired upon. MATCH can provide the acquiring bank with information, such as, if a Merchant or individual has been terminated by another acquirer already, the reason for termination, the history of fraudulent o

https://api.apis.guru/v2/specs/mastercard.com/MATCH/1.0.0/fraud/merchant/v3/termination-inquiry?PageLength=1&PageOffset=1

Hover any highlighted part to learn what it does

curl -X POST "https://api.apis.guru/v2/specs/mastercard.com/MATCH/1.0.0/fraud/merchant/v3/termination-inquiry?PageLength=1&PageOffset=1"
import requests
params = {
    "PageLength": "1",
    "PageOffset": "1"
}
response = requests.post(
    "https://api.apis.guru/v2/specs/mastercard.com/MATCH/1.0.0/fraud/merchant/v3/termination-inquiry",
    params=params,
)
print(response.json())
const url = new URL('https://api.apis.guru/v2/specs/mastercard.com/MATCH/1.0.0/fraud/merchant/v3/termination-inquiry');
url.searchParams.set('PageLength', '1');
url.searchParams.set('PageOffset', '1');

const response = await fetch(url, {
  method: 'POST',
}); 
const data = await response.json();
console.log(data);
package main

import (
	"fmt"
	"io"
	"net/http"
	"net/url"
)

func main() {
	baseURL, _ := url.Parse("https://api.apis.guru/v2/specs/mastercard.com/MATCH/1.0.0/fraud/merchant/v3/termination-inquiry")
	q := baseURL.Query()
	q.Set("PageLength", "1")
	q.Set("PageOffset", "1")
	baseURL.RawQuery = q.Encode()
	targetURL := baseURL.String()
	req, _ := http.NewRequest("POST", targetURL, nil)

	client := &http.Client{}
	resp, _ := client.Do(req)
	defer resp.Body.Close()
	body, _ := io.ReadAll(resp.Body)
	fmt.Println(string(body))
}
require "net/http"
require "json"

uri = URI("https://api.apis.guru/v2/specs/mastercard.com/MATCH/1.0.0/fraud/merchant/v3/termination-inquiry")
uri.query = URI.encode_www_form({
  "PageLength" => "1",
  "PageOffset" => "1"
})

http = Net::HTTP.new(uri.host, uri.port)
http.use_ssl = uri.scheme == "https"

req = Net::HTTP::Post.new(uri)

res = http.request(req)
puts JSON.parse(res.body)
<?php
$url = "https://api.apis.guru/v2/specs/mastercard.com/MATCH/1.0.0/fraud/merchant/v3/termination-inquiry?" . http_build_query([
    "PageLength" => "1",
    "PageOffset" => "1"
]);
$opts = ["http" => [
    "method" => "POST",
]];
$ctx = stream_context_create($opts);
$res = file_get_contents($url, false, $ctx);
print_r(json_decode($res, true));
POST Returns detailed information about Merchants, URLs and up to five principal owners, that have been terminated by an acquiring bank after the inquiry was made. This MATCH resource assists acquirer's ability to consider the merchants terminated after the inquiry was made. If an initial inquiry does not result in a possible match, it is still possible that the merchant listing could appear sometime in the next 360 days. This may occur when another acquirer enters the merchant into the MATCH database. The system will automatically continue to search the MATCH system for 360 days. To view these notifications, acquirers must use the Retroactive Inquiry Summary service. This resource can be used to obtain detailed information, such as, if a Merchant or individual has been terminated by another acquirer after an inquiry was made, the reason for termination, and the history of fraudulent or risky business practices that led to that termination.

Returns detailed information about Merchants, URLs and up to five principal owners, that have been terminated by an acquiring bank after the inquiry was made. This MATCH resource assists acquirer's ability to consider the merchants terminated after the inquiry was made. If an initial inquiry does n

https://api.apis.guru/v2/specs/mastercard.com/MATCH/1.0.0/fraud/merchant/v3/retro/retro-inquiry-details?AcquirerId=example

Hover any highlighted part to learn what it does

curl -X POST "https://api.apis.guru/v2/specs/mastercard.com/MATCH/1.0.0/fraud/merchant/v3/retro/retro-inquiry-details?AcquirerId=example"
import requests
params = {
    "AcquirerId": "example"
}
response = requests.post(
    "https://api.apis.guru/v2/specs/mastercard.com/MATCH/1.0.0/fraud/merchant/v3/retro/retro-inquiry-details",
    params=params,
)
print(response.json())
const url = new URL('https://api.apis.guru/v2/specs/mastercard.com/MATCH/1.0.0/fraud/merchant/v3/retro/retro-inquiry-details');
url.searchParams.set('AcquirerId', 'example');

const response = await fetch(url, {
  method: 'POST',
}); 
const data = await response.json();
console.log(data);
package main

import (
	"fmt"
	"io"
	"net/http"
	"net/url"
)

func main() {
	baseURL, _ := url.Parse("https://api.apis.guru/v2/specs/mastercard.com/MATCH/1.0.0/fraud/merchant/v3/retro/retro-inquiry-details")
	q := baseURL.Query()
	q.Set("AcquirerId", "example")
	baseURL.RawQuery = q.Encode()
	targetURL := baseURL.String()
	req, _ := http.NewRequest("POST", targetURL, nil)

	client := &http.Client{}
	resp, _ := client.Do(req)
	defer resp.Body.Close()
	body, _ := io.ReadAll(resp.Body)
	fmt.Println(string(body))
}
require "net/http"
require "json"

uri = URI("https://api.apis.guru/v2/specs/mastercard.com/MATCH/1.0.0/fraud/merchant/v3/retro/retro-inquiry-details")
uri.query = URI.encode_www_form({
  "AcquirerId" => "example"
})

http = Net::HTTP.new(uri.host, uri.port)
http.use_ssl = uri.scheme == "https"

req = Net::HTTP::Post.new(uri)

res = http.request(req)
puts JSON.parse(res.body)
<?php
$url = "https://api.apis.guru/v2/specs/mastercard.com/MATCH/1.0.0/fraud/merchant/v3/retro/retro-inquiry-details?" . http_build_query([
    "AcquirerId" => "example"
]);
$opts = ["http" => [
    "method" => "POST",
]];
$ctx = stream_context_create($opts);
$res = file_get_contents($url, false, $ctx);
print_r(json_decode($res, true));

Postman Setup Guide

Get Postman ↗
  1. See official documentation for authentication and setup.

What can you build with MATCH API?

MATCH API is a Company API. Developers commonly use company APIs for:

  • enriching CRM records with company firmographics
  • building lead-generation and prospecting tools
  • verifying business identity and registration details
  • monitoring competitors and market intelligence
  • powering B2B data enrichment pipelines

No authentication required. This API is open — no signup or key needed. Ideal for quick prototypes and public-facing features. MATCH API is free to use, making it a low-risk choice to experiment with.

New to APIs? Read our beginner's guide

Open documentation ↗