Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

  • 채널에서 정해진 환불 규정에 따라 진행된 환불 정보를 포함하여 요청합니다.

  • 고유한 채널 코드와 유효한 API Key를 Request Header에 정해진 형식으로 입력해야만 호출 가능합니다.

3) Status

  • 환불, 취소에서 발생할 수 있는 대부분의 경우의 수를 정의합니다.

  • 다양한 채널에서 발생할 수 있는 상태에 대해 대응이 가능 합니다.

  • 아래 케이스 API 적용은 빠른 시일 내에 구현 예정 입니다.

...

Status

...

Description

...

New

...

새로 주문이 생성되었습니다.

...

Pending Request

...

파트너가 AX 서비스를 통해 주문을 확인하였지만, 아직 주문을 확정하지 않고 대기하였습니다.

...

Channel Pending Sync

...

AX가 채널에 주문을 확인하였지만 주문을 확정하지 않고 대기 요청을 보냈습니다.

...

Pending

...

채널에 보낸 대기 요청이 적용되었다는 것을 확인했습니다.

...

Confirm Request

...

파트너가 AX 서비스를 통해 주문을 확정하였습니다. 하지만 아직 채널에 적용하지 않았습니다. (채널은 New)

...

Channel Confirm Sync

...

AX가 채널에 주문을 확정 요청했습니다.

...

AX Confirmed

...

채널에 주문의 확정이 적용되었으며 그것을 AX에서 확인하였습니다.

...

Reject Request

...

파트너가 AX 서비스를 통해 주문을 거절했습니다.

...

Channel Reject Sync

...

AX가 거절된 주문을 채널에 반영했습니다.

...

AX Rejected

...

AX가 채널에서 주문이 거절되었다는 것을 최종으로 확인했습니다.

...

Partner Cancel Request

...

파트너가 주문을 확정했지만, 이후 사정으로 주문을 취소하였습니다.

...

Channel Partner Cancel Sync

...

AX가 파트너가 취소한 주문을 채널에 반영했습니다.

...

AX Cancel

...

AX가 채널에서 주문이 취소되었다는 것을 최종으로 확인했습니다.

...

Traveler Cancel Request Before Confirm

...

주문이 확정 되기 전에 여행자가 주문을 취소한 경우입니다.

...

Traveler Cancel Partner Confirm

...

여행자가 취소한 주문을 파트너가 확인했습니다.

...

Channel Cancel Confirm Sync

...

취소된 주문을 파트너가 확인했다는 것을 채널에 적용했습니다.

...

Traveler Canceled Before Confirm

...

취소된 주문을 파트너가 확인했다는 것이 채널에 적용되었다는 것을 확인했습니다.

...

Traveler Cancel Request After Confirm

...

주문이 확정된 후에 여행자가 주문을 취소한 경우입니다.

...

Traveler Canceled After Confirm

...

주문이 확정된 후에 취소한 주문을 파트너가 확인했습니다.

...

Traveler Cancel Request with Confirm Conflict

...

주문을 파트너가 확정 요청을 했지만, 채널에 반영하기 전에 여행자가 취소한 경우입니다.

...

Traveler Cancel Request With Long Time Lag

...

파트너가 확정 요청한 시각과 여행자가 취소한 시각의 시간차가 긴 경우입니다.

...

Traveler Cancel Partner Confirm With Long Time Lag

...

파트너가 Long Time Lag에 따라 시간차가 발생한 경우를 확인했습니다.

...

Channel Cancel Confirm Sync With Long Time Lag

...

Long Time Lag의 경우일 때, 채널에 주문이 취소되었다는 것을 적용합니다.

...

Traveler Canceled With Long Time Lag

...

파트너는 주문을 확정했지만 Long Time Lag로 인해 여행자가 주문을 취소했습니다.

...

Traveler Cancel Request With Short Time Lag

...

파트너가 확정 요청한 시각과 여행자가 취소한 시각의 시간차가 짧은 경우입니다.

...

Traveler Cancel Partner Confirm With Short Time Lag

...

파트너가 Short Time Lag에 따라 시간차가 발생한 경우를 확인했습니다.

...

Channel Cancel Confirm Sync With Short Time Lag

...

Short Time Lag의 경우일 때, 채널에 주문이 취소되었다는 것을 적용합니다.

...

Traveler Canceled With Short Time Lag

...

파트너는 주문을 확정했지만 Short Time Lag 로 인해 여행자가 주문을 취소했습니다.

...

Traveler Cancel Request with Reject Conflict

...

파트너가 주문을 거절하였는데, 여행자가 주문을 취소한 경우입니다.

...

Traveler Cancel Partner Confirm With Reject Conflict

...

파트너가 거절한 주문이 취소되었다는 것을 확인했습니다.

...

Channel Cancel Confirm Sync

...

채널에 거절되었다는 것을 확인했습니다.

...

Traveler Canceled with Reject Conflict

...

파트너가 거절했지만, 여행자가 주문을 취소해서 취소 처리되었습니다.

4) Action

  • Status 변경하는 주체와 Action 에 대해 정의 합니다.

  • 정의된 모든 Status 들의 변경에 대응 합니다.

  • 아래 케이스 API 적용은 빠른 시일 내에 구현 예정 입니다.

...

Action

...

Subject

...

Input

...

Output

...

Description

...

Reject Request

...

Partner

...

Pending

...

Reject Request

...

파트너가 주문을 AX 서비스를 통해 거절합니다

...

Reflect Channel Reject

...

AX

...

Reject Request

...

Channel Reject Sync

...

AX가 거절된 주문을 채널에 적용합니다.

...

Reflect AX Reject

...

AX

...

Channel Reject Sync

...

AX Rejected

...

채널에 주문이 거절되었다는 것을 AX가 확인합니다.

...

Partner Cancel Request

...

Partner

...

AX Confirmed

...

Partner Cancel Request

...

확정된 주문을 파트너가 AX 서비스를 통해 취소 요청합니다.

...

Reflect Channel Partner Cancel

...

AX

...

Partner Cancel Request

...

Channel Partner Cancel Sync

...

AX가 파트너가 취소 요청한 주문을 채널에 적용합니다.

...

Reflect AX Partner Cancel

...

AX

...

Channel Partner Cancel Sync

...

AX Cancel

...

채널에 주문이 취소되었다는 것을 AX가 확인합니다.

...

Traveler Cancel Before Confirm

...

Channel

...

 

...

Traveler Cancel Request Before Confirm

...

주문이 확정되기 전에 여행자가 주문을 취소합니다

...

Partner Cancel Confirm

...

Partner

...

Traveler Cancel Request Before Confirm

...

Channel Cancel Request Confirm needed

...

주문이 취소된 것을 파트너가 확인했습니다.

...

Reflect Channel Confirm canceled

...

AX

...

Channel Cancel Request Confirm needed

...

Partner Confirm Cancel Request

...

취소된 것을 채널에 반영 요청했습니다

...

Reflect Cancel Status on AX

...

AX

...

Partner Confirm Cancel Request

...

Channel Cancel Confirm Sync

...

채널에서 반영되었다는 것을 확인했습니다

...

Traveler Cancel After Confirm

...

Channel

...

AX Confirmed

...

Traveler Cancel Request After Confirm

...

주문이 확정된 후에 여행자가 취소했습니다.

...

Partner Cancel Confirm

...

Partner

...

Traveler Cancel Request After Confirm

...

Traveler Canceled After Confirm

...

여행자가 주문을 취소한 것을 파트너가 확인했습니다.

...

Traveler Cancel With Confirm Conflict

...

Channel

...

Confirm Request

...

Traveler Cancel Request with Confirm Conflict

...

파트너의 확정 요청을 적용하기 전에 여행자가 주문을 취소했습니다.

...

Long Time Lag

...

AX

...

Traveler Cancel Request with Confirm Conflict

...

Traveler Cancel Request With Long Time Lag

...

확정 발생 시각과 취소 발생 시각 간의 차이가 큽니다.

...

Partner Cancel Confirm

...

Partner

...

Traveler Cancel Request With Long Time Lag

...

Traveler Cancel Partner Confirm With Long Time Lag

...

파트너가 Long Time Lag상태를 확인했습니다.

...

Reflect Channel Confirm canceled

...

AX

...

Traveler Cancel Partner Confirm With Long Time Lag

...

Channel Cancel Confirm Sync With Long Time Lag

...

채널에 확정된 주문이 취소된 것을 확인하였습니다.

...

Reflect Cancel Status on AX

...

AX

...

Channel Cancel Confirm Sync With Long Time Lag

...

Traveler Canceled With Long Time Lag

...

취소가 된 것을 확인하여 AX에 적용합니다.

...

Short Time Lag

...

AX

...

Traveler Cancel Request with Confirm Conflict

...

Traveler Cancel Request With Short Time Lag

...

확정 발생 시각과 취소 발생 시각 간의 차이가 짧습니다.

...

Partner Cancel Confirm

...

Partner

...

Traveler Cancel Request With Short Time Lag

...

Traveler Cancel Partner Confirm With Short Time Lag

...

파트너가 Short Time Lag상태를 확인했습니다.

...

Reflect Channel Confirm canceled

...

AX

...

Traveler Cancel Partner Confirm With Short Time Lag

...

Channel Cancel Confirm Sync With Short Time Lag

...

채널에 주문 취소를 반영했습니다.

...

Reflect Cancel Status on AX

...

AX

...

Channel Cancel Confirm Sync With Short Time Lag

...

Traveler Canceled With Short Time Lag

...

주문 취소가 채널에 반영되었다는 것을 확인했습니다.

...

Traveler Cancel With Reject Request

...

Channel

...

Reject Request

...

Traveler Cancel Request with Reject Conflict

...

파트너가 거절 요청한 상품을 채널에 적용하기 전에 여행자가 취소했습니다.

...

Partner Cancel Confirm

...

Partner

...

Traveler Cancel Request with Reject Conflict

...

Traveler Cancel Partner Confirm With Reject Conflict

...

파트너가 주문 취소된 걸 확인했습니다.

...

Reflect Channel Confirm canceled

...

AX

...

Traveler Cancel Partner Confirm With Reject Conflict

...

Channel Cancel Confirm Sync

...

주문 취소된걸 확인했다는 것을 채널에 적용합니다.

...

Reflect Cancel Status on AX

...

AX

...

Channel Cancel Confirm Sync

...

Traveler Canceled with Reject Conflict

...

채널에 적용된 것을 확인했습니다.

...

Request Refund to PG from Channel

...

Channel

...

Waiting Channel to PG for Refund

...

PG Requested from Channel for Refund

...

채널이 PG사에 환불을 요청합니다.

...

PG Start Refund

...

PG

...

PG Requested from Channel for Refund

...

PG Start Refund

...

PG사에서 요청받은 환불을 시작했습니다.

...

PG Complete Refund

...

PG

...

PG Start Refund

...

PG Complete Refund

...

PG사에서 요청받은 환불을 완료했습니다.

...

Apply Refund to Channel from PG

...

Channel

...

PG Complete Refund

...

Channel Refund Complete

...

채널이 PG사에 환불이 완료되었다는 것을 확인했습니다.

2. API Spec

1) Request

Endpoint

product environment: https://prod.ax-cloud.com/v1/channel/orders/ticket/{ax_order_code}/tickets/{ticket_code}/refunds}

Method

POST

Description

채널에서 특정 주문의 환불이 진행된 건에 대해 AX Cloud와 동기화합니다.

Content-Type

application/json

Headers > Authorization

Token {api_key}

Headers > Channel

Code {channel_code}

2) Body Parameter

Name

Required

Type

Description

price

O

String

  • 구매자에게 환불해준 가격

canceled_datetime

O

Datetime

  • 취소가 발생한 날짜

refunded_datetime

O

Datetime

  • 환불이 완료된 날짜

policy

O

Object

  • 채널의 환불 규정

  • 예시

    • {"0%": "Use date 1일 전부터는 환불 불가",
      "50%": "Use date 3일 전",
      "100%": “Use date 7일 전"}

...

Expand
titleStatus Code : 403 Cause: 유효하지 않은 API Key 혹은 Channel Code
Code Block
{'messagedetail': '이 작업을 수행할 권한(permission)이 없습니다.'}
Expand
titleStatus Code : 404 Cause: 유효하지 않은 order_code, ticket_code
Code Block
{'messagedetail': '찾을 수 없습니다.'}

3. Request Example

...

Code Block
curl -X 'PATCH' \
  'https://prod.ax-cloud.com/v1/channel/orders/ticket/b9872ed4-12c5-4fb5-ae18-4f39b11ee912/tickets/915c1218-f41c-492b-bb0b-96177ff4d2ee/refunds' \
  -H 'accept: application/json' \
  -H 'Content-Type: application/json' \
  -H "Authorization: Token api_key_secret" \
  -d '{ \
  "price": "5000",
  "canceled_datetime": "2021-01-20 21:13:13",
  "refunded_datetime": "2021-01-20 23:24:29",
  "policy": {"0%": "Use date 1일 전부터는 환불 불가", "50%": "Use date 3일 전",  "100%": “Use date 7일 전"}
}'

...