Skip to main content

Credit Card OCR API 🔍

Credit Card Information Extraction API​

Version Status New

āļŠāļēāļĄāļēāļĢāļ–āļŠāļāļąāļ”āļ‚āđ‰āļ­āļĄāļđāļĨāļšāļąāļ•āļĢāđ€āļ„āļĢāļ”āļīāļ• (āļŦāļĄāļēāļĒāđ€āļĨāļ‚, āļŠāļ·āđˆāļ­, āļ§āļąāļ™āļŦāļĄāļ”āļ­āļēāļĒāļļ, āļĢāļŦāļąāļŠāļ„āļ§āļēāļĄāļ›āļĨāļ­āļ”āļ āļąāļĒ) āļˆāļēāļāļĢāļđāļ›āļ āļēāļžāļ”āđ‰āļ§āļĒāļ„āļ§āļēāļĄāđāļĄāđˆāļ™āļĒāļģāļŠāļđāļ‡ āđ‚āļ”āļĒāđƒāļŠāđ‰āđ‚āļĄāđ€āļ”āļĨ LLM āļ‚āļąāđ‰āļ™āļŠāļđāļ‡ āđ„āļ”āđ‰āļĢāļąāļšāļāļēāļĢāļ›āļĢāļąāļšāđāļ•āđˆāļ‡āđ€āļžāļ·āđˆāļ­āļ›āļĢāļ°āļŠāļīāļ—āļ˜āļīāļ āļēāļžāđāļĨāļ°āļ„āļ§āļēāļĄāđāļĄāđˆāļ™āļĒāļģāļŠāļđāļ‡āļŠāļļāļ”

Try Demo!​

Example Images (Click to try)

Example 1

Demo key is limited to 10 requests per day per IP
Click here to get your API key

🚀 āļŸāļĩāđ€āļˆāļ­āļĢāđŒâ€‹

  • āļ„āļ§āļēāļĄāđāļĄāđˆāļ™āļĒāļģāļŠāļđāļ‡ - āļ„āļ§āļēāļĄāđāļĄāđˆāļ™āļĒāļģāđƒāļ™āļāļēāļĢāļŠāļāļąāļ”āļ‚āđ‰āļ­āļĄāļđāļĨāļĢāļ§āļĄ 96.43%
  • āļ›āļĢāļ°āļĄāļ§āļĨāļœāļĨāđ€āļĢāđ‡āļ§ - āđ€āļ§āļĨāļēāļ•āļ­āļšāļŠāļ™āļ­āļ‡āđ€āļ‰āļĨāļĩāđˆāļĒāļ•āđˆāļģāļāļ§āđˆāļē 0.8 āļ§āļīāļ™āļēāļ—āļĩ
  • āļĢāļ­āļ‡āļĢāļąāļšāļŦāļĨāļēāļĒāļĢāļđāļ›āđāļšāļšāļ āļēāļž - JPG, JPEG, PNG, BMP, TIFF, WebP, HEIC
  • āļ‚āđ‰āļ­āļĄāļđāļĨāļšāļąāļ•āļĢāļ„āļĢāļšāļ–āđ‰āļ§āļ™ - āļŠāļāļąāļ”āļŦāļĄāļēāļĒāđ€āļĨāļ‚āļšāļąāļ•āļĢ, āļŠāļ·āđˆāļ­, āļ§āļąāļ™āļŦāļĄāļ”āļ­āļēāļĒāļļ, āđāļĨāļ°āļĢāļŦāļąāļŠāļ„āļ§āļēāļĄāļ›āļĨāļ­āļ”āļ āļąāļĒ

📈 āļāļēāļĢāļ—āļ”āļŠāļ­āļšāļ›āļĢāļ°āļŠāļīāļ—āļ˜āļīāļ āļēāļžâ€‹

āđ€āļ§āļĨāļēāđƒāļ™āļāļēāļĢāļ•āļ­āļšāļŠāļ™āļ­āļ‡ API (10 āļ„āļģāļ‚āļ­):

  • āļ­āļąāļ•āļĢāļēāļ„āļ§āļēāļĄāļŠāļģāđ€āļĢāđ‡āļˆ: 100.0%
  • āđ€āļ§āļĨāļēāļ•āđˆāļģāļŠāļļāļ”: 0.794s
  • āđ€āļ§āļĨāļēāļŠāļđāļ‡āļŠāļļāļ”: 0.804s
  • āđ€āļ§āļĨāļēāđ€āļ‰āļĨāļĩāđˆāļĒ: 0.795s

ðŸŽŊ āļ„āļ§āļēāļĄāđāļĄāđˆāļ™āļĒāļģ (21 āļ āļēāļžāļ—āļ”āļŠāļ­āļš)​

  • āđ‚āļ”āļĒāļĢāļ§āļĄ: āļ„āļ§āļēāļĄāđāļĄāđˆāļ™āļĒāļģ 96.43%, CER (āļ­āļąāļ•āļĢāļēāļ„āļ§āļēāļĄāļœāļīāļ”āļžāļĨāļēāļ”āļ‚āļ­āļ‡āļ•āļąāļ§āļ­āļąāļāļĐāļĢ) 2.62%
āļŸāļīāļĨāļ”āđŒāļ„āļ§āļēāļĄāđāļĄāđˆāļ™āļĒāļģCER
āļŦāļĄāļēāļĒāđ€āļĨāļ‚āļšāļąāļ•āļĢ95.24%0.95%
āļŠāļ·āđˆāļ­100%0.0%
āļ§āļąāļ™āļŦāļĄāļ”āļ­āļēāļĒāļļ100%0.0%
āļĢāļŦāļąāļŠāļ„āļ§āļēāļĄāļ›āļĨāļ­āļ”āļ āļąāļĒ90.48%9.52%

ðŸ“Ą āļˆāļļāļ”āļŠāļīāđ‰āļ™āļŠāļļāļ” API​

ðŸ”đ āļāļēāļĢāļŠāļāļąāļ”āļ‚āđ‰āļ­āļĄāļđāļĨāļšāļąāļ•āļĢāđ€āļ„āļĢāļ”āļīāļ•​

POST /extract/credit-card
Content-Type: multipart/form-data

Params:

  • card_image: Image file containing credit card (JPG, PNG, etc.)

Example:

curl -X POST "https://api.iapp.co.th/v1/image/extract/credit-card" \
-H "apikey: YOUR_API_KEY" \
-F "card_image=@/path/to/credit-card.jpg"

Response:

{
"card_number": "4111 1111 1111 1111",
"name": "JOHN DOE",
"expiry_date": "12/25",
"security_code": "123"
}

ðŸ”đ Health Check​

GET /health

Example:

curl -X GET "https://api.iapp.co.th/v1/image/health" \
-H "apikey: YOUR_API_KEY"

Response:

{
"status": "healthy",
"model_loaded": true,
"version": "1.0"
}

🐍 Python Code Example​

import requests

def extract_credit_card_info(image_path, api_key, api_url="https://api.iapp.co.th/v1/image"):
"""
Extract credit card information from an image

Args:
image_path (str): Path to the credit card image
api_key (str): Your API key
api_url (str): Base URL of the API

Returns:
dict: Extracted credit card information
"""
headers = {
"apikey": api_key
}

files = {
"card_image": open(image_path, "rb")
}

response = requests.post(
f"{api_url}/extract/credit-card",
headers=headers,
files=files
)

response.raise_for_status() # Raise exception for HTTP errors
return response.json()

# Example usage:
# result = extract_credit_card_info("card.jpg", api_key="YOUR_API_KEY")
# print(f"Card Number: {result['card_number']}")
# print(f"Name: {result['name']}")
# print(f"Expiry Date: {result['expiry_date']}")
# print(f"Security Code: {result['security_code']}")

⚠ïļ āļ‚āđ‰āļ­āļœāļīāļ”āļžāļĨāļēāļ”​

āļĢāļŦāļąāļŠāļ„āļģāļ­āļ˜āļīāļšāļēāļĒ
400āļ„āļģāļ‚āļ­āđ„āļĄāđˆāļ–āļđāļāļ•āđ‰āļ­āļ‡ (āļĢāļđāļ›āđāļšāļšāļ āļēāļžāđ„āļĄāđˆāļĢāļ­āļ‡āļĢāļąāļšāļŦāļĢāļ·āļ­āđ„āļŸāļĨāđŒāđ€āļŠāļĩāļĒ)
401āļĢāļŦāļąāļŠ API āļŦāļēāļĒāđ„āļ›āļŦāļĢāļ·āļ­āđ„āļĄāđˆāļ–āļđāļāļ•āđ‰āļ­āļ‡
415āļĢāļđāļ›āđāļšāļšāļŠāļ·āđˆāļ­āļ—āļĩāđˆāđ„āļĄāđˆāļĢāļ­āļ‡āļĢāļąāļš
422āđ„āļĄāđˆāļŠāļēāļĄāļēāļĢāļ–āļŠāļāļąāļ”āļ‚āđ‰āļ­āļĄāļđāļĨāđ„āļ”āđ‰ (āļ„āļļāļ“āļ āļēāļžāļ āļēāļžāđ„āļĄāđˆāļ”āļĩ)
429āđ€āļāļīāļ™āļ‚āļĩāļ”āļˆāļģāļāļąāļ”āļāļēāļĢāļĢāđ‰āļ­āļ‡āļ‚āļ­
500āļ‚āđ‰āļ­āļœāļīāļ”āļžāļĨāļēāļ”āļ‚āļ­āļ‡āđ€āļ‹āļīāļĢāđŒāļŸāđ€āļ§āļ­āļĢāđŒāļ āļēāļĒāđƒāļ™

✅ Summary​

  • 🔍 āļŠāļāļąāļ”āļ‚āđ‰āļ­āļĄāļđāļĨāļšāļąāļ•āļĢāđ€āļ„āļĢāļ”āļīāļ•āđ„āļ”āđ‰āļ­āļĒāđˆāļēāļ‡āđāļĄāđˆāļ™āļĒāļģ
  • 🚀 āļ›āļĢāļ°āļĄāļ§āļĨāļœāļĨāđ„āļ”āđ‰āđ€āļĢāđ‡āļ§āđƒāļ™āđ€āļ§āļĨāļēāđ„āļĄāđˆāđ€āļāļīāļ™ 0.8 āļ§āļīāļ™āļēāļ—āļĩ
  • ðŸŽŊ āļ„āļ§āļēāļĄāđāļĄāđˆāļ™āļĒāļģāļŠāļđāļ‡āđƒāļ™āđāļ•āđˆāļĨāļ°āļŸāļīāļĨāļ”āđŒ (96.43% āđ‚āļ”āļĒāļĢāļ§āļĄ)
  • ðŸ“ļ āļĢāļ­āļ‡āļĢāļąāļšāļŦāļĨāļēāļĒāļĢāļđāļ›āđāļšāļšāļ āļēāļž
  • 🔒 API āļ—āļĩāđˆāļ›āļĨāļ­āļ”āļ āļąāļĒāļžāļĢāđ‰āļ­āļĄāļāļēāļĢāļ•āļĢāļ§āļˆāļŠāļ­āļšāļŠāļīāļ—āļ˜āļīāđŒ