방금 가상 동전 (소모품)을 구매할 수있는 IAP 앱을 만들었습니다. 그리고 백엔드는 Ruby on Rails입니다. 나는 지금 전체적인 해결책에 대해 우려하고있다.IAP 백엔드 베스트 프랙티스
나의 현재 IAP 과정은 다음과 같이 설명합니다
- 1 단계 - 아이폰 OS 클라이언트는 우리의 백엔드에 요청을 전송 및 제품 ID를 얻을.
- 2 단계 - 클라이언트는 1 단계에서 ID를 저장 키트를 통해 제품 목록을 검색
- 3 단계 - 마감 트랜잭션 클라이언트가 접수 토큰을 보낼 때 -
- 4 단계 사용자는 구매 버튼으로 클릭하고 클라이언트 키트를 저장하기 위해 지불 요청을 보냅니다 우리의 백엔드에
- 는 5 단계 - 서버는 유효한 검증의 확인 먼저 영수증을 확인
- 6 단계 - 서버가 영수증을 확인하고 교환 (DB에서 충전 계정)
- STEP 처리하는 앱 스토어를 호출 7 - 고객이 응답을 받고 계정 잔액을 표시합니다.
저는 전자 상거래/지불 솔루션을 사용하기 전에 IAP가 다른 방법을 사용합니다. 일반적으로 지불 게이트웨이는 확인을 위해 영수증 서버를 서버로 보냅니다. 그리고 우리는 항상 모든 트랜잭션이 안정적이고 유지 보수가 가능하도록하는 메시지 대기열 정렬 솔루션을 제공합니다.
내 질문은 :
IAP 영수증을 확인하는 가장 좋은 방법은 무엇입니까? 서버에서 검증을 방해하지 않으려면 어떻게해야합니까? (예 : 사용자가 돈을 지출하고 클라이언트에서 트랜잭션을 완료하지만 서버에서 수신 확인을 할 때 실패 함 IAP 복원 트랜잭션 지원 없음)
Apple IAP가 가장 적합한 클라이언트 솔루션입니다. 특히 제 경우에는 사용자가 지불 한 후에 즉시 동전을 받기를 원합니다. 거래가 처리 중이며 곧 계좌가 완결 될 것이라고 말하지는 않습니다. 모바일 장치에서 반응 형 UX를 우선적으로 사용하려면 우선 순위를 지정해야합니다. 서버에서 여전히 메시지 대기열을 사용하고 있습니까?
감사합니다.
좋은 링크, Alex, 정말 내 질문에 대답하지 않지만 – chagel