자산 이전 내역의 상태를 요청받은 상태로 변경합니다.

📘

PUT

/v1/vasp/transfer/status

이 API 는 자산을 전송하는 VASP 에 의해서 다음의 경우에 호출됩니다.

  • 블록체인 상에서 자산 이전 트랜잭션이 진행 중 실패한 경우 이를 상대 VASP 에 알려줘야 합니다.
  • 자산을 전송하는 VASP 가 자산 이전 요청에 대해서 verified 응답을 받았으나 내부 판단에 의해 실제 블록체인 상에서 자산 이전을 실행하지 않고 프로세스를 종료할 경우 이를 상대 VASP 에 알려줘야 합니다.

API 동작 명세

  1. 요청의 transferId 에 해당하는 자산 이전 내역을 찾아서, status 를 업데이트 합니다.
  2. canceled 는 이전 statusdenied 또는 완전히 종료되지 않은 상태를 취소하고 종료로 변경할 수 있습니다.
  3. 만약, 이미 종료된 자산 이전 내역의 상태를 변경하려고 한다면 ILLEGAL_STATEFLOW 에러를 반환합니다.
  4. 자산 이전 내역의 상태가 canceled 인 경우에 다시 canceled 로 변경하는 것을 허용합니다.

Request

이름필수 여부타입
transferId필수string
status필수string
reasonType옵션string

transferId: '자산 이전 허가 요청' 에 부여한 UUID 입니다. 해당하는 트랜잭션에 대한 자산 반영 결과를 알립니다.


status: 가상 자산이 사용자 계정에 반영되었는지에 대한 상태를 나타냅니다.

-canceled: 블록체인 트랜잭션을 보내지 않고 취소한 상태 혹은 보냈는데 취소한 상태입니다. (영구히 취소된 경우)


reasonType: statuscanceled 일 때 이유를 보여줍니다. (reasonType 은 주소 조회와 자산 이전 요청 API 와 같습니다. 불필요한 항목이 포함돼 있을 수 있으니 사용하지 않으시면 됩니다.)

-NOT_FOUND_ADDRESS: 가상 자산 주소를 찾을 수 없는 경우입니다.

-NOT_SUPPORTED_SYMBOL: 거래할 수 없는 화폐 심볼입니다.

-NOT_KYC_USER: 소유자가 KYC 인증을 진행하지 않은 경우입니다.

-SANCTION_LIST: 가상 자산 주소 또는 소유자가 수취 VASP 의 제재 대상입니다.

-LACK_OF_INFORMATION: 자산 이전을 결정하는데 필요한 정보가 없을 경우입니다.

-UNKNOWN: 그 밖에 다른 이유입니다.


{
  "transferId": "b09c8d00-8da9-11ec-b909-0242ac120002",
  "status": "canceled",
  "reasonType": "LACK_OF_INFORMATION"
}

Response

이름필수 여부타입
transferId필수string
result필수string
reasonType옵션string

transferId: 모든 API 에서 자산 이전 트랜잭션을 구별하기 위한 고유 값입니다. (검증 결과에 CODE 가 생성)


result: 요청에 대한 처리 결과입니다.

-normal: 요청을 정상적으로 처리하여, 전달받은 자산 이전 내역의 상태를 종료로 변경한 경우입니다. 이미 종료한 자산 이전 내역에 대해서 다시 종료를 요청하는 것을 허용합니다.

-error: 상태 변경이 불가능한 경우입니다.


reasonType: result 값이 error 인 경우 상세 이유를 구분하는 값입니다.

-UNKNOWN_TRANSFER_ID: Transfer ID 를 찾을 수 없는 경우입니다.

-ILLEGAL_STATEFLOW: 허용되지 않는 상태 흐름입니다. 현재 상태에서 업데이트 하려는 상태로 변경이 허용되지 않는 경우입니다.

-UNKNOWN: 기타 오류입니다. VerifyVASP 는 reasonType 을 반환하지 않기 때문에 여기에 해당합니다.

{
  "transferId": "b09c8d00-8da9-11ec-b909-0242ac120002",
  "result": "error",
  "reasonType": "ILLEGAL_STATEFLOW"
}