```mermaid sequenceDiagram participant User participant Controller participant Service participant Repository participant Gateway User->>Controller: 결제 요청 Controller->>Service: 결제 처리 요청 Service->>Repository: 트랜잭션 시작 alt 정상 흐름 Repository-->>Service: 트랜잭션 ID 반환 Service->>Gateway: 결제 요청 Gateway-->>Service: 결제 성공 Service->>Repository: 트랜잭션 커밋 Repository-->>Service: 커밋 성공 else 외부 실패 Gateway-->>Service: 결제 실패 Service->>Repository: 트랜잭션 롤백 Repository-->>Service: 롤백 성공 else DB 실패 Service->>Repository: 트랜잭션 롤백 Repository-->>Service: 롤백 실패 end Service-->>Controller: 결제 결과 반환 Controller-->>User: 결제 결과 응답 ```