Authorize.net API

payments authorize-net

Authorize.net API

Visa-owned payment gateway for online merchants with recurring billing and fraud detection.

Quick Facts

FieldValue
ProviderAuthorize.net
CategoryPayment APIs
Websitehttps://authorize.net
AuthenticationAPI Login ID + Tx Key
Pricing Modeltransaction-fee
Free TierNo, pay per transaction
Rate Limit100 req/min (varies by plan)

Overview

Authorize.net API is a payment apis provided by Authorize.net. Visa-owned payment gateway for online merchants with recurring billing and fraud detection. This API is designed to help developers integrate payments capabilities into their applications with minimal setup and maximum reliability.

The API supports API Login ID + Tx Key authentication, ensuring secure access to all endpoints. With a transaction-fee pricing model, Authorize.net offers flexible options for projects of any size, from prototypes to enterprise deployments.

Authorize.net maintains comprehensive documentation, SDKs for popular programming languages, and active community support. The API is built on REST principles, returning JSON responses with standard HTTP status codes, making it straightforward to integrate into existing workflows.

Authentication

This API uses API Login ID + Tx Key authentication. Include your API Login ID and Transaction Key in the request for authentication.

Always store your credentials securely using environment variables or a secrets manager. Never commit API keys to version control or expose them in client-side code.

Code Samples

Python

import requests
import os

API_KEY = os.environ.get("API_KEY", "YOUR_API_KEY")
BASE_URL = "https://api.authorize.net"

headers = {
    "Authorization": f"Bearer {API_KEY}",
    "Content-Type": "application/json"
}

response = requests.get(f"{BASE_URL}/v1/resources", headers=headers)
print(response.status_code)
print(response.json())

JavaScript

const API_KEY = process.env.API_KEY || 'YOUR_API_KEY';
const BASE_URL = 'https://api.authorize.net';

const response = await fetch(`${BASE_URL}/v1/resources`, {
  headers: {
    'Authorization': `Bearer ${API_KEY}`,
    'Content-Type': 'application/json'
  }
});
const data = await response.json();
console.log(data);

cURL

curl -H "Authorization: Bearer $API_KEY" \
     -H "Content-Type: application/json" \
     https://api.authorize.net/v1/resources

Go

package main

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

func main() {
    apiKey := os.Getenv("API_KEY")
    if apiKey == "" {
        apiKey = "YOUR_API_KEY"
    }
    req, _ := http.NewRequest("GET", "https://api.authorize.net/v1/resources", nil)
    req.Header.Set("Authorization", "Bearer " + apiKey)
    req.Header.Set("Content-Type", "application/json")
    resp, _ := http.DefaultClient.Do(req)
    defer resp.Body.Close()
    body, _ := io.ReadAll(resp.Body)
    fmt.Println(string(body))
}

Pricing

The pricing model is transaction-fee. You pay a percentage and/or fixed fee per transaction. No monthly minimums. Visit the provider’s pricing page at https://authorize.net for current rates and detailed pricing information.

Use Cases

  • Integration: Connect Authorize.net services to your application for seamless payments functionality.
  • Automation: Automate payments workflows and reduce manual operations.
  • Scaling: Handle growing payments demands with Authorize.net’s robust infrastructure.

Further Reading

Other languages