Skip to main content

Validate Travel Address

Validate the format and integrity of a Travel Address before processing transactions.

Endpoint

POST https://api.trpcontinuum.com/trp/validate-travel-address

Authentication

Requires API key and secret key authentication.

Headers

HeaderTypeRequiredDescription
x-api-keystringYesYour API key for authentication
x-secret-keystringYesYour secret key for authentication

Request Body

FieldTypeRequiredDescription
travelAddressstringYesTravel address to validate

Example Request

{
"travelAddress": "{{travelAddress}}"
}

Response

Success (200 OK)

{
"success": true,
"data": {
"isValid": true
},
"message": "Travel address is valid"
}

Success - Invalid Address (200 OK)

{
"success": true,
"data": {
"isValid": false
},
"message": "Travel address is invalid"
}

Error (400 Bad Request)

{
"success": false,
"error": "Invalid request data",
"code": "VALIDATION_ERROR",
"details": {
"travelAddress": "Travel address is required"
}
}

Error (401 Unauthorized)

{
"success": false,
"error": "Authentication required",
"code": "AUTH_REQUIRED"
}

Error (500 Internal Server Error)

{
"success": false,
"error": "Validation service temporarily unavailable",
"code": "VALIDATION_SERVICE_ERROR"
}

Validation Checks

The API performs comprehensive validation including:

CheckDescription
formatValidValidates bech32 format and prefix
checksumValidVerifies embedded checksum
vaspExistsConfirms beneficiary VASP exists
vaspActiveEnsures VASP is active and compliant
currencySupportedValidates currency support
networkSupportedValidates network support
notExpiredChecks expiration status
notUsedConfirms address hasn't been used
withinUsageLimitValidates usage count limits

Error Codes

CodeDescription
INVALID_FORMATTravel address format is incorrect
CHECKSUM_FAILEDChecksum validation failed
VASP_NOT_FOUNDBeneficiary VASP does not exist
VASP_INACTIVEBeneficiary VASP is not active
CURRENCY_MISMATCHCurrency doesn't match expected value
NETWORK_MISMATCHNetwork doesn't match expected value
ADDRESS_EXPIREDTravel address has expired
ADDRESS_USEDAddress has already been used
USAGE_LIMIT_EXCEEDEDAddress usage limit exceeded

Usage Examples

Basic Validation

curl -X POST "{{baseUrl}}/trp/validate-travel-address" \
-H "x-api-key: {your-api-key}" \
-H "x-secret-key: {your-secret-key}" \
-H "Content-Type: application/json" \
-d '{
"travelAddress": "{{travelAddress}}"
}'

Best Practices

  1. Pre-transaction Validation: Always validate before initiating transactions
  2. Real-time Checks: Validate addresses just before processing
  3. Error Handling: Implement comprehensive error handling for all validation scenarios
  4. Caching: Cache valid addresses temporarily to reduce API calls
  5. User Feedback: Provide clear error messages to users for invalid addresses