# Get state transitions by payment ID (v2) Gets the state transitions for a payment by ID. Endpoint: GET /v2/payments/{paymentId}/states Version: 2025.11 Security: Bearer ## Path parameters: - `paymentId` (string, required) Unique identifier of the payment for which you want to get state transition information. Example: "7ea3399c-1234-5678-8d8f-d320ea406630" ## Response 200 fields (application/json): - `stateTransitions` (array, required) - `stateTransitions.updatedFrom` (string, required) Enum: "INITIATED", "VALIDATING", "TRANSFERRING", "COMPLETED", "FAILED", "QUOTED", "RETURNED" - `stateTransitions.updatedTo` (string, required) Enum: "INITIATED", "VALIDATING", "TRANSFERRING", "COMPLETED", "FAILED", "QUOTED", "RETURNED" - `stateTransitions.updatedAt` (string, required) The timestamp when the payment state was updated. Example: "2024-08-13T20:15:50.990995Z" ## Response 400 fields (application/json): - `errors` (object, required) - `errors.code` (string, required) A unique identifier for the error Example: "SYS_003" - `errors.type` (string, required) A high-level categorization of the error, indicating the type of issue that occurred Example: "SYSTEM_ERROR" - `errors.title` (string, required) A brief, user-friendly description of the error Example: "Internal Server Error" - `errors.description` (string, required) A more detailed explanation of the error, potentially including information about what caused the error and the next steps Example: "The payout category value must be one of BANK, EWALLET, CASH_PICKUP, or ATM." - `errors.timestamp` (string, required) Example: "2024-11-21T14:15:22Z" - `status` (string, required) Error Response Status Example: 400 ## Response 404 fields (application/json): - `errors` (object, required) - `errors.code` (string, required) A unique identifier for the error Example: "SYS_003" - `errors.type` (string, required) A high-level categorization of the error, indicating the type of issue that occurred Example: "SYSTEM_ERROR" - `errors.title` (string, required) A brief, user-friendly description of the error Example: "Internal Server Error" - `errors.description` (string, required) A more detailed explanation of the error, potentially including information about what caused the error and the next steps Example: "The payout category value must be one of BANK, EWALLET, CASH_PICKUP, or ATM." - `errors.timestamp` (string, required) Example: "2024-11-21T14:15:22Z" - `status` (string, required) Error Response Status Example: 400 ## Response 500 fields (application/json): - `errors` (object, required) - `errors.code` (string, required) A unique identifier for the error Example: "SYS_003" - `errors.type` (string, required) A high-level categorization of the error, indicating the type of issue that occurred Example: "SYSTEM_ERROR" - `errors.title` (string, required) A brief, user-friendly description of the error Example: "Internal Server Error" - `errors.description` (string, required) A more detailed explanation of the error, potentially including information about what caused the error and the next steps Example: "The payout category value must be one of BANK, EWALLET, CASH_PICKUP, or ATM." - `errors.timestamp` (string, required) Example: "2024-11-21T14:15:22Z" - `status` (string, required) Error Response Status Example: 400