Base URL: /v1/payment-ops
Authentication
All endpoints require authentication using a Bearer token in the Authorization header:
Authorization: Bearer <your_token>
Types
PaymentRailResponse
interface PaymentRailResponse {
externalId: string;
bankName: string;
fedNowEnabled: boolean;
rtpEnabled: boolean;
achEnabled: boolean;
wireEnabled: boolean;
limits: {
fedNow?: { daily: number; transaction: number };
rtp?: { daily: number; transaction: number };
ach?: { daily: number; transaction: number };
wire?: { daily: number; transaction: number };
};
windows: {
fedNow?: string;
rtp?: string;
ach?: string;
wire?: string;
};
}
Endpoints
Get Rail Eligibility
Retrieves payment rail eligibility information for a specific routing number.
GET /eligibility/{routingNumber}
Parameters
Name
Type
In
Required
Description
9-digit bank routing number
Response
// 200 OK
{
"externalId": "chase123",
"bankName": "JP Morgan Chase",
"fedNowEnabled": true,
"rtpEnabled": true,
"achEnabled": true,
"wireEnabled": true,
"limits": {
"fedNow": {
"daily": 500000,
"transaction": 100000
},
// ... other rail limits
},
"windows": {
"fedNow": "24/7",
"rtp": "24/7",
"ach": "Mon-Fri 8:00-17:00 EST"
}
}
// 404 Not Found
{
"error": "Bank not found"
}
Get Rail Limits
Retrieves transaction limits for a specific routing number.
GET /limits/{routingNumber}
Parameters
Name
Type
In
Required
Description
9-digit bank routing number
Response
// 200 OK
{
"bankName": "JP Morgan Chase",
"limits": {
"fedNow": {
"daily": 500000,
"transaction": 100000
},
// ... other rail limits
}
}
// 404 Not Found
{
"error": "Bank not found"
}
Get Fallback Options
Retrieves fallback payment rail options when preferred rail is unavailable.
GET /fallback/{routingNumber}
Parameters
Name
Type
In
Required
Description
9-digit bank routing number
Desired rail (default: 'fedNowEnabled')
Response
// 200 OK
{
"fallbackRails": ["RTP", "ACH", "Wire"]
}
// 404 Not Found
{
"error": "Bank not found"
}
Get Directory Status
Retrieves the current status of the FedNow directory.
Response
// 200 OK
{
"totalFedNowBanks": 2487
}
Sync FedNow Directory
Manually triggers a sync of the FedNow directory.
Response
// 200 OK
{
"message": "Sync completed successfully"
}
Error Responses
All endpoints can return the following errors:
// 401 Unauthorized
{
"error": "Authentication required"
}
// 403 Forbidden
{
"error": "Invalid or expired token"
}
// 500 Internal Server Error
{
"error": "Internal server error"
}
Rate Limits
100 requests per minute per API key
Rate limit headers included in response:
Example Usage
JavaScript/TypeScript
const getEligibility = async (routingNumber: string) => {
const response = await fetch(
`/v1/payment-ops/eligibility/${routingNumber}`,
{
headers: {
'Authorization': `Bearer ${apiKey}`,
'Content-Type': 'application/json'
}
}
);
if (!response.ok) {
throw new Error(`HTTP error! status: ${response.status}`);
}
return await response.json();
};
cURL
# Get rail eligibility
curl -X GET "https://api.tokensource.com/v1/payment-ops/eligibility/021000021" \
-H "Authorization: Bearer YOUR_API_KEY"
# Get fallback options
curl -X GET "https://api.tokensource.com/v1/payment-ops/fallback/021000021?rail=fedNowEnabled" \
-H "Authorization: Bearer YOUR_API_KEY"
Last updated