Payment Processing API
Overview
The Payment Processing API allows developers to integrate payment processing functionality into their applications, including creating payments, retrieving payment details, and managing refunds.
Base URL
https://api.paymentprocessing.com/v1Authentication
This API uses API keys for authentication. Include your API key in the Authorization header for each request.
Endpoints
POST /payments
Description: Creates a new payment.
Request Headers:
Content-Type: application/json
Authorization: Bearer <your_api_key>Request Body:
{
"amount": 100.00,
"currency": "USD",
"source": "tok_visa",
"description": "Payment for order #12345"
}Response:
Success (201 Created):
{ "id": "pay_12345", "amount": 100.00, "currency": "USD", "status": "succeeded", "created_at": "2024-06-10T12:00:00Z" }Error (400 Bad Request):
{ "error": "Invalid payment source" }
GET /payments/{id}
Description: Retrieves the details of a specific payment by ID.
Request Headers:
Authorization: Bearer <your_api_key>Request Parameters:
id(path parameter): The unique ID of the payment.
Response:
Success (200 OK):
{ "id": "pay_12345", "amount": 100.00, "currency": "USD", "status": "succeeded", "created_at": "2024-06-10T12:00:00Z" }Error (404 Not Found):
{ "error": "Payment not found" }
POST /refunds
Description: Creates a refund for a specific payment.
Request Headers:
Content-Type: application/json
Authorization: Bearer <your_api_key>Request Body:
{
"payment_id": "pay_12345",
"amount": 50.00
}Response:
Success (201 Created):
{ "id": "refund_67890", "payment_id": "pay_12345", "amount": 50.00, "status": "succeeded", "created_at": "2024-06-10T13:00:00Z" }Error (400 Bad Request):
{ "error": "Invalid refund amount" }
Example Code Snippets
Creating a Payment (Python)
import requests
url = "https://api.paymentprocessing.com/v1/payments"
headers = {
"Content-Type": "application/json",
"Authorization": "Bearer <your_api_key>"
}
data = {
"amount": 100.00,
"currency": "USD",
"source": "tok_visa",
"description": "Payment for order #12345"
}
response = requests.post(url, json=data, headers=headers)
print(response.json())Retrieving a Payment (JavaScript)
const fetch = require('node-fetch');
const url = 'https://api.paymentprocessing.com/v1/payments/pay_12345';
const options = {
method: 'GET',
headers: {
'Authorization': 'Bearer <your_api_key>'
}
};
fetch(url, options)
.then(response => response.json())
.then(data => console.log(data))
.catch(error => console.error('Error:', error));