Skip to end of metadata
Go to start of metadata

You are viewing an old version of this content. View the current version.

Compare with Current View Version History

« Previous Version 9 Next »


1. Request Refund

1) Purpose

  • 채널에서 발생한 환불에 대해 AX Cloud 에 요청합니다.

  • 미리 정해진 환불 규정에 따라 요청할 수 있습니다.

2) Detail

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

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

3) Status

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

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

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

Status

Description

1

New

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

2

Pending Request

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

3

Channel Pending Sync

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

4

Pending

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

5

Confirm Request

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

6

Channel Confirm Sync

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

7

AX Confirmed

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

8

Reject Request

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

9

Channel Reject Sync

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

10

AX Rejected

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

11

Partner Cancel Request

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

12

Channel Partner Cancel Sync

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

13

AX Cancel

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

14

Traveler Cancel Request Before Confirm

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

15

Traveler Cancel Partner Confirm

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

16

Channel Cancel Confirm Sync

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

17

Traveler Canceled Before Confirm

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

18

Traveler Cancel Request After Confirm

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

19

Traveler Canceled After Confirm

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

20

Traveler Cancel Request with Confirm Conflict

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

21

Traveler Cancel Request With Long Time Lag

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

22

Traveler Cancel Partner Confirm With Long Time Lag

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

23

Channel Cancel Confirm Sync With Long Time Lag

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

24

Traveler Canceled With Long Time Lag

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

25

Traveler Cancel Request With Short Time Lag

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

26

Traveler Cancel Partner Confirm With Short Time Lag

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

27

Channel Cancel Confirm Sync With Short Time Lag

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

28

Traveler Canceled With Short Time Lag

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

29

Traveler Cancel Request with Reject Conflict

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

30

Traveler Cancel Partner Confirm With Reject Conflict

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

31

Channel Cancel Confirm Sync

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

32

Traveler Canceled with Reject Conflict

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

4) Action

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

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

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

Action

Subject

Input

Output

Description

1

Reject Request

Partner

Pending

Reject Request

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

2

Reflect Channel Reject

AX

Reject Request

Channel Reject Sync

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

3

Reflect AX Reject

AX

Channel Reject Sync

AX Rejected

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

4

Partner Cancel Request

Partner

AX Confirmed

Partner Cancel Request

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

5

Reflect Channel Partner Cancel

AX

Partner Cancel Request

Channel Partner Cancel Sync

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

6

Reflect AX Partner Cancel

AX

Channel Partner Cancel Sync

AX Cancel

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

7

Traveler Cancel Before Confirm

Channel

 

Traveler Cancel Request Before Confirm

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

8

Partner Cancel Confirm

Partner

Traveler Cancel Request Before Confirm

Channel Cancel Request Confirm needed

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

9

Reflect Channel Confirm canceled

AX

Channel Cancel Request Confirm needed

Partner Confirm Cancel Request

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

10

Reflect Cancel Status on AX

AX

Partner Confirm Cancel Request

Channel Cancel Confirm Sync

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

11

Traveler Cancel After Confirm

Channel

AX Confirmed

Traveler Cancel Request After Confirm

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

12

Partner Cancel Confirm

Partner

Traveler Cancel Request After Confirm

Traveler Canceled After Confirm

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

13

Traveler Cancel With Confirm Conflict

Channel

Confirm Request

Traveler Cancel Request with Confirm Conflict

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

14

Long Time Lag

AX

Traveler Cancel Request with Confirm Conflict

Traveler Cancel Request With Long Time Lag

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

15

Partner Cancel Confirm

Partner

Traveler Cancel Request With Long Time Lag

Traveler Cancel Partner Confirm With Long Time Lag

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

16

Reflect Channel Confirm canceled

AX

Traveler Cancel Partner Confirm With Long Time Lag

Channel Cancel Confirm Sync With Long Time Lag

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

17

Reflect Cancel Status on AX

AX

Channel Cancel Confirm Sync With Long Time Lag

Traveler Canceled With Long Time Lag

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

18

Short Time Lag

AX

Traveler Cancel Request with Confirm Conflict

Traveler Cancel Request With Short Time Lag

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

19

Partner Cancel Confirm

Partner

Traveler Cancel Request With Short Time Lag

Traveler Cancel Partner Confirm With Short Time Lag

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

20

Reflect Channel Confirm canceled

AX

Traveler Cancel Partner Confirm With Short Time Lag

Channel Cancel Confirm Sync With Short Time Lag

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

21

Reflect Cancel Status on AX

AX

Channel Cancel Confirm Sync With Short Time Lag

Traveler Canceled With Short Time Lag

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

22

Traveler Cancel With Reject Request

Channel

Reject Request

Traveler Cancel Request with Reject Conflict

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

23

Partner Cancel Confirm

Partner

Traveler Cancel Request with Reject Conflict

Traveler Cancel Partner Confirm With Reject Conflict

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

24

Reflect Channel Confirm canceled

AX

Traveler Cancel Partner Confirm With Reject Conflict

Channel Cancel Confirm Sync

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

25

Reflect Cancel Status on AX

AX

Channel Cancel Confirm Sync

Traveler Canceled with Reject Conflict

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

26

Request Refund to PG from Channel

Channel

Waiting Channel to PG for Refund

PG Requested from Channel for Refund

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

27

PG Start Refund

PG

PG Requested from Channel for Refund

PG Start Refund

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

28

PG Complete Refund

PG

PG Start Refund

PG Complete Refund

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

29

Apply Refund to Channel from PG

Channel

PG Complete Refund

Channel Refund Complete

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

2. API Spec

1) Request

Endpoint

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일 전"}

3) Response

Name

Type

Description

status_code

Integer

정상 처리 시 200

 Status Code : 200 Response:
 

4) Error Spec

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

3. Request Example

1) CURL

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' \
  -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일 전"}
}'

 

 

  • No labels