거래창 띄우기

마지막 업데이트: 2022년 2월 27일 | 0개 댓글
  • 네이버 블로그 공유하기
  • 네이버 밴드에 공유하기
  • 페이스북 공유하기
  • 트위터 공유하기
  • 카카오스토리 공유하기
잘 작동합니다.

거래창 띄우기

This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.

  • Open with Desktop
  • View raw
  • Copy raw contents Copy raw contents

Copy raw contents

Copy raw contents

PG사별 일반결제 연동 가이드

아임포트 결제 연동 매뉴얼의 준비하기 가이드에 따라 아임포트 계정을 생성하고, 다음 PG사 별 일반결제 연동 가이드를 참고하여 각 PG사 테스트 계정으로 테스트 결제를 해 볼수 있습니다.

ℹ️ 국내 전자결제 서비스의 단계별 흐름은 한국결제의 특징을 참고하세요.

다음 PG사별 가이드는 각 PG사에 거래창 띄우기 해당하는 내용만 포함합니다. PG 공통 설정 및 샘플코드 등 연동 방법은 아래 내용을 참고하세요.

1. PC/모바일 웹에서 PG 연동하기

각 PG사별로 결제창을 호출하고 결제 프로세스가 완료되면 결제정보 수신 등 처리 로직이 다음과 같이 callback 또는 리디렉션으로 실행됩니다. 결제창이 팝업창으로 열리는 경우, 팝업 차단 또는 사용자 확인창을 회피하기 위해 IMP.request_pay(param, callbak) 호출은 onClick 과 같이 사용자 액션에 대한 핸들러에서 처리되어야 합니다.

ℹ️ 자세한 거래창 띄우기 내용은 일반결제 연동하기를 참고하세요.

ℹ️ 아임포트를 사용하는 개발자가 오픈소스로 제공하는 언어별 REST API 클라이언트 모듈을 활용하면 보다 쉽게 아임포트 REST API를 호출할 수 있습니다.

  • Callback 방식으로 결제창을 호출하는 샘플코드 client-side
  • Ajax POST 방식으로 전달된 결제정보를 추출하여 후처리 하는 의사코드 server-side
  • 리디렉션 방식으로 결제창을 호출하는 샘플코드 client-side
  • Redirect URL의 쿼리 스트링으로 전달 된 결제정보를 추출하여 후처리 하는 의사코드 server-side

2. 모바일 앱 WebView에서 PG 연동하기

ℹ️ 아임포트에서 제공하는 모바일 네이티브 SDK를 사용하면 Android/iOS 네이티브 앱에서 편리하게 결제 연동을 할 수 있습니다.

PC/모바일 웹 연동의 리디렉션 방식과 동일하게 앱내 WebView에서 각 PG사의 결제창을 호출하고 결제 승인 후처리를 합니다.

iOS의 경우, 결제 승인 후 가맹점 앱으로 복귀하기 위해 IMP.request_pay(param, callback) 함수의 param.app_scheme 파라미터에 가맹점 앱의 scheme값을 지정해야 합니다.

app_scheme 은 다음의 두가지 형식을 지원합니다.

  • iamporttest : URL scheme 값만 지정. 아임포트에서는 iamporttest:// 로 호출됩니다.
  • iamporttest://path?query : 앱을 통해 전달받을 파라메터를 함께 지정. 지정한 값으로 호출됩니다.

결제 수단별 인증은 다음과 같이 앱간 이동을 위한 설정 및 로직을 구성해야 합니다.

  1. 가맹점 앱 -> 외부 앱으로 이동
  2. 외부 앱 -> 가맹점 앱으로 이동

가맹점 앱의 WebView에서 PG사별 앱 호출 및 미설치 체크 로직을 구현합니다.

WebViewClient 클래스의 shouldOverrideUrlLoading 메소드를 다음과 같이 재정의하여 구현합니다.

iOS 보안 정책상 외부 호출될 URL scheme을 info.plist 파일의 LSApplicationQueriesSchemes 에 추가해야 외부 앱으로 이동할 수 있습니다.

대표 외부 앱의 URL Scheme 펼쳐보기

거래창 띄우기
URL Scheme App
ansimclick 삼성카드-온라인결제
ansimclickipcollect 삼성카드-온라인결제
ansimclickscard 삼성카드-온라인결제
chaipayment 차이앱
citicardappkr 씨티카드-공인인증 앱
citimobileapp 씨티카드-간편결제
citispay 씨티카드-앱카드
cloudpay 하나카드-앱카드
com.wooricard.wcard 우리WON페이
hanamopmoasign 하나카드-공인인증 앱
hanawalletmembers 하나카드-하나멤버스 월렛
hdcardappcardansimclick 현대카드-앱카드
hyundaicardappcardid 현대카드
ispmobile ISP모바일
itms-apps 앱스토어
kakaotalk 카카오페이
kb-acp 국민카드-앱카드
kb-auth 국민
kftc-bankpay 뱅크페이 계좌이체
lguthepay-xpay 페이나우
liivbank 국민 Liiv M(리브모바일)
lmslpay 롯데 L.pay 앱
lotteappcard 롯데카드-앱카드
lottesmartpay 롯데카드-모바일결제
lpayapp (구)롯데 L.pay 앱
mpocket.online.ansimclick 삼성카드-앱카드
newsmartpib 우리WON뱅킹
nhallonepayansimclick 농협-올원페이
nhappcardansimclick 농협-앱카드
nonghyupcardansimclick 농협카드-공인인증 앱
payco 페이코
samsungpay 삼성카드-삼성페이
scardcertiapp 삼성카드-공인인증서
shinhan-sr-ansimclick 신한카드-앱카드
smhyundaiansimclick 현대카드-공인인증 앱
smshinhanansimclick 신한카드-공인인증 앱
supertoss 토스
vguardstart 삼성카드-백신
wooripay 우리카드-앱카드

또한, url 변경 과정에서 앱 url 을 감지했을 때, 웹뷰내 페이지 전환을 하지 않고 앱스킴을 실행시키려면 아래 코드를 구현하셔야 합니다.

외부 앱에서 결제가 완료되면 가맹점 앱에서 정의한 URL scheme을 호출하여 가맹점 앱으로 다시 돌아올 수 있습니다.

안드로이드는 Activity가 종료되면 Activity Stack(Task)에서 이전 Activity로 자동으로 이동하는 특성이 있어서 가맹점 앱의 URL scheme 정의 및 별도 처리가 필요하지 않습니다.

무통장입금 결제수단 서비스 제공 정책 변경 안내

무통장입금은 통장이나 카드 없이 계좌번호로 입금을 진행하여 거래를 진행하는 결제수단입니다. 구매자의 주문접수 거래창 띄우기 내용을 바탕으로 판매자는 물건을 보내고, 구매자는 판매자의 계좌로 현금을 송금하는 결제방식으로 아임웹 서비스의 모든 요금제에서 제공되고 있습니다.

최근 아임웹을 이용하여 불분명한 사업자가 공동구매를 유도하며 '무통장입금'으로만 거래를 진행하였으나, 실제 상품을 발송하지 않는 피해사례가 발생하고 있습니다.

아임웹에서는 판매자분들의 쇼핑몰 및 사이트 운영에 대한 자율성과 운영방침을 존중하오나, 불특정 다수의 피해자가 계속해서 발생하고 있습니다. 피해 방지 및 최소화를 위해 부득이하게 서비스 제공 정책이 변경되는 점 양해 바랍니다.

무통장입금 단독 제공시 거래가 제한됩니다.

  • 적용일: 2021년 5월 1일부터
  • 적용대상: 아임웹 전체 사이트
  • 기능위치: 환경설정 > 전자결제(PG) 거래창 띄우기 설정 > 공통 결제 설정 > 무통장입금

결제수단으로 '무통장입금'만 단독 제공하는 경우 월 쇼핑 거래액이 200만원 을 초과하면 무통장입금 결제수단 제공이 중단됩니다.

  • 5월 1일부터 매일 월 거래액 산정 후 무통장입금 거래제한이 이루어집니다. 거래액 초과 후 거래제한까지 30일간의 유예기간을 거치며, 30일이 지나면 무통장입금 거래가 불가합니다.
    (예시 : 5월 1일 ~ 5월 13일까지 무통장입금 거래액이 200만원을 넘겼을 경우 5월 13일로부터 30일이 지난 6월 12일까지 다른 결제수단을 추가하지 않는 경우 무통장입금 결제수단 제공이 제한됩니다.)
  • 취소/환불 여부와 관계없이 주문이 완료된 모든 거래액을 합산하여 계산합니다.
  • 거래창 띄우기
  • 쇼핑 거래액만 해당되며, 예약 거래액은 포함하지 않습니다.
  • 거래제한이 되면 신규 무통장입금 거래가 불가능하지만, 기존 주문의 주문상태 변경은 정상적으로 가능합니다.

PG 연동을 통해 결제수단을 추가로 제공해주세요.

PG연동을 통해 결제수단을 추가 제공할 경우에만 거래액 제한 없이 상품 거래가 가능합니다.

  • '무통장입금' 외에 결제수단을 추가로 제공하거나, 운영하고 있는 화폐가 원화(KRW)가 아닌 경우에는 거래제한 대상에서 제외됩니다.
  • 신용카드, 가상계좌, 실시간계좌이체, 휴대폰결제, 카카오페이, PAYCO 등 국내PG 결제수단을 함께 제공해주세요.
  • (22.07.06 추가) 네이버페이, 카카오페이 구매 가맹점이면서 pay구매 버튼이 노출되는 경우 무통장입금 거래제한 대상에서 제외됩니다.

무통장입금 거래액 제한은 피해 방지 및 최소화를 위해 우선적으로 시행하는 조치사항으로, 추후 판매자와 구매자간의 공정한 거래와 소비자 보호가 이루어질 수 있도록 다방면의 노력을 진행하겠습니다.

SBS 뉴스

두 달 전 서울 서초구의 한 아파트가 3.3㎡당 1억 원에 거래됐다는 소문이 돌았고, 집값 이상 과열의 대표 사례로 지목됐는데요, 이런 거래는 애초에 없었던 것으로 국토부가 사실상 결론을 내렸습니다.

지난 8월 59㎡ 소형이 무려 24억 5천만 원에 팔렸다는 소문이 났던 서울 서초구의 아파트입니다.

사실이라면 3.3㎡당 가격이 1억 원이 넘습니다. 이 소문은 일대 집값 과열 흐름 속에 언론에도 보도됐습니다.

그런데 SBS 취재결과 50일이 다 돼가는 현재까지 해당 아파트 매매의 실거래가 신고는 없는 것으로 확인됐습니다.

현행법상 주택 계약 후 60일 이내에 실거래가 신고를 해야 하는데 대부분의 거래가 30일 안에 이뤄지며, 50일을 넘기는 경우는 극히 드뭅니다.

현장 실태조사까지 벌였던 국토교통부는 문제의 거래창 띄우기 거래는 실체가 없는 허위정보인 것으로 사실상 결론 내렸습니다.

[김복환/국토교통부 토지정책과장 : 신고가 안 됐기 때문에 계약이 성립이 됐는지 여부를 확인할 수가 없습니다. 거래가 없었다고 봐야 될 가능성이 굉장히 높죠.]

해당 지역에서 10년 넘게 공인중개업소를 운영한 A 씨는 전형적인 시세 띄우기라고 폭로했습니다.

일부 중개인들이 부동산 포털 사이트에 비싼 값에 팔렸다며 거래 완료로 올린 뒤 이후 다시 삭제한다는 겁니다.

[A 씨/서초구 공인중개사 : 거기가 1억 원이라면 여기도 재건축하면 1억 원 이상은 무조건 가는 것 아닙니까? (라는 식이죠.) 고가에 거래되면 주변 단지들도 따라가죠. 그러면 매매시키기가 좋겠죠. 매수자를 부추기기는…(더 좋고요.)]

거래창 띄우기

자동화에 관련된 소스를 가끔 개발하면서 스스로 부족하다고 느꼈던 부분이 바로 GUI 의 부재였습니다. 이번에 프로젝트에 참여하면서 GUI 관련된 개발이 필요했는데, 개발언어도 파이썬이었던터라 이 기회에 간단한 python gui 구성법을 익히고자 PyQt 공부를 해보게되었습니다. 이 글에서는 단순히 기본 창에서 이벤트가 주어지면 다른 창을 띄우는 기능을 구현해보고자합니다.

Pyqt가 설치된 환경이라면, 가상환경 cmd 에 designer 를 입력하는 것으로 qt designer를 실행할 수 있습니다. qt 거래창 띄우기 designer를 이용하면 파이썬 소스를 일일히 써가며 ui를 구성해야하는 번거로움에서 벗어날 수 있습니다.

두 개의 ui를 구성하고, 각각 저장합니다.

먼저 하단의 코드는 초기에 보일 start.py 입니다.

login 버튼을 클릭하면 showmain 함수가 실행되도록 ui에서 설정해주었으니, showmain 함수도 만들어줍니다.

다음은 main.py 입니다. 상단 start.py 에서 import 했던 mainWindow 클래스가 존재합니다.

잘 작동합니다.

이를 이용해 특정 환경에서 로그인 성공, 실패를 판단하고 로그인 이후 메인화면으로 이동하도록 구현이 가능할 것입니다.

showmain 함수를 구성하는 부분에서 self.w = mainWindow() 로 생성하지 않고 w = mainWindow() 로 생성하자 login 버튼을 눌렀을 때 mainWindow 가 떴다가 바로 종료되는 문제가 있었습니다. self 에 익숙해지는게 필요할 것 같습니다.

거래창 띄우기

Console 창은 Unity에서 생성되는 오류, 경고, 기타 메시지를 표시합니다.

콘솔 창을 열려면 Unity 메인 메뉴에서 Window > General > Console을 선택합니.

A.거래창 띄우기 콘솔(Console) 창 메뉴에는 로그 파일을 열고, 리스트에 표시되는 각 메시지의 양을 제어하고, 스택 추적 옵션을 설정하기 위한 옵션들이 있습니다.

B. 콘솔 툴바에는 메시지 표시 방식을 제어하고 메시지를 검색 및 필터링하기 위한 옵션이 있습니다.

C. 콘솔 리스트는 기록된 각 메시지에 대한 항목을 표시합니다.

상세 영역에 전체 텍스트를 표시할 메시지를 선택하십시오. 여기에서 표시할 각 메시지의 줄 수를 선택할 수 있습니다.

자세한 내용은 아래의 줄 수 조절을 참조하십시오.

D. 상세 영역에는 선택한 메시지의 전체 텍스트가 표시됩니다.

스택 추적이 활성화된 경우에는 코드 파일의 특정 라인에 대한 참조가 클릭 가능한 링크로 여기에 표시됩니다.

콘솔 툴바 옵션

콘솔 창의 툴바에는 메시지 표시 방식을 제어하고 메시지를 검색 및 필터링하기 위한 옵션이 있습니다.

이 옵션은 실행 중인 특정 시점에서 재생을 멈추고 씬을 검사하고 싶을 때 유용합니다.

이 옵션을 비활성화하면 로깅이 일시 중단되지만, 콘솔은 타겟 빌드에 계속 연결된 상태를 유지합니다.

또한 이 옵션을 비활성화하면 이 드롭다운 메뉴의 나머지 옵션을 숨깁니다.

콘솔 출력 검색 및 필터링

콘솔 검색창에서 특정 키워드에 대한 콘솔 메시지를 검색할 수 있습니다. 검색어를 입력하면 콘솔이 메시지를 필터링하여 일치하는 텍스트가 포함된 결과만 표시합니다. 콘솔은 메시지 텍스트의 첫 번째 매치가 메시지의 가시 범위 내에 있을 때 이를 강조하여 표시합니다(아래의 줄 수 조절 참조). 동일한 메시지의 후속 매치는 강조 표시되지 않습니다.

검색어

검색어 ’애니메이션’을 사용하여 검색하면 각 메시지의 첫 번째 매치(파란색)가 강조 표시되지만 후속 매치(빨간색)는 그렇지 않음

숫자, 특수 문자 등을 비롯하여 콘솔 메시지에 표시되는 모든 것을 검색할 수 있습니다. 예를 들어 메시지에 포함된 키워드가 아니라 메시지가 기록된 시간을 검색하고 싶을 때도 있습니다.

검색은 검색창에 입력된 검색어와 정확히 일치하는 매치를 찾습니다. 한 번에 두 개의 다른 검색어를 검색하거나 일반 검색 엔진 연산자를 사용할 수 없습니다.

또한 타입별로 콘솔 메시지를 필터링할 수도 있습니다. 검색창 옆에 있는 거래창 띄우기 버튼을 클릭하여 토글하십시오.

버튼 메시지 타입
메시지
경고
오류

줄 수 조절

각 콘솔 항목의 최대 줄 수는 10줄입니다.

리스트에 표시되는 각 항목의 줄 수를 제어하려면 Console 메뉴 버튼을 클릭한 후 Log Entry > [X] Lines를 선택하십시오. 여기서 [X]는 각 항목에 대해 표시할 줄 수입니다.

로그 항목 줄 수

로그 항목 줄 수

줄 수가 많으면 각 항목당 더 많은 텍스트를 표시하지만, 한 번에 표시되는 항목 수가 줄어듭니다.

줄 수는 콘솔 검색 기능에는 영향을 주지 않습니다. 콘솔 검색 기능은 항상 전체 메시지 텍스트를 검색합니다. 일치하는 텍스트가 숨겨진 줄에 있으면 해당 메시지를 결과로 반환하지만 일치하는 텍스트를 노출하거나 강조 표시하기 위해 확장하지는 않습니다. 전체 메시지 텍스트는 상세 영역에서 볼 수 있으며, 일치하는 텍스트는 상세 영역에서 강조 표시되지 않습니다.

스택 추적 로깅

Unity에서 메시지를 콘솔이나 로그 파일로 출력할 때 상세한 스택 추적 정보를 포함할 수 있습니다. 이 옵션은 예를 들어, 오류 메시지가 명확하지 않을 때 유용합니다. 스택 추적을 통해 오류가 발생한 출처를 확인할 수 있습니다.

관리되는 스택 추적 vs. 관리되지 않는 스택 추적

콘솔은 관리되는 코드와 관리되지 않는 코드에 대한 스택 추적 정보를 제공할 수 있습니다.

관리되는 코드는 Unity에서 실행 중인 C# 스크립트를 의미합니다. 여기에는 Unity와 함께 제공되는 스크립트, 개발자가 작성하는 커스텀 스크립트, 에셋 스토어 플러그인이 들어 있는 타사 스크립트, 엔진에서 실행되는 기타 C# 스크립트 타입이 포함됩니다.

일부 경우 관리되는 코드에 액세스하고, 디버깅 작업을 위해 수정할 수 있습니다. 관리되는 스크립트가 관리되는 .dll로 컴파일되는 등의 다른 경우에는 관리되는 스택 거래창 띄우기 추적 정보는 볼 수 있지만, 원본 소스 파일에 대한 액세스 권한이 없으면 관리되는 코드를 수정할 수 없습니다.

관리되지 않는 코드는 네이티브 Unity 엔진 코드, 컴퓨터에서 직접 실행되는 네이티브 플러그인의 코드, 또는 타겟 빌드 플랫폼에 있는 코드입니다.

관리되지 않는 코드는 대개 C 또는 C++ 코드에서 컴파일됩니다. 네이티브 바이너리의 원본 소스 코드가 없으면 액세스할 수 없습니다.

대개의 경우 관리되는 스택 추적만 C# 코드 디버그에 사용합니다. 하지만 전체 스택 추적이 유용한 경우도 있습니다.

예를 들어 관리되지 않는 스택 추적을 이용하면 오류의 원인이 코드에 있는지 엔진에 있는지 쉽게 거래창 띄우기 확인할 수 있습니다. 또한 오류가 맨 처음 발생한 엔진 영역을 식별하는 데도 도움이 됩니다. 관리되는 스택 추적 정보를 이용할 수 없거나 오류 메시지의 설명이 부족할 때 특히 유용합니다.

참고: 스택 추적, 특히 전체 스택 추적을 확인하는 작업은 리소스를 많이 소모합니다. 디버깅 목적으로만 이 옵션을 사용하십시오.

스택 추적 타입 설정

스택 추적에 포함할 디테일 양을 지정하려면 Console 메뉴 버튼을 클릭한 후 메뉴에서 Stack Trace Logging > [MESSAGE TYPE]을 선택하십시오. 여기서 [MESSAGE TYPE]은 스택 추적 정보를 포함하고 싶은 메시지의 타입입니다. 그러고 나서 다음 옵션 중 하나를 선택하십시오.

None: Unity가 스택 추적 정보를 출력하지 않습니다.

ScriptOnly: Unity가 관리되는 코드에 대한 스택 추적 정보를 출력합니다.

Full: Unity가 관리되는 코드와 관리되지 않는 코드 모두 에 대한 스택 추적 정보를 출력합니다.

스크립팅 API를 통해 스택 추적 로깅을 제어할 수도 거래창 띄우기 있습니다. 자세한 내용은 Application.SetStackTraceLogType에 대한 API 레퍼런스 문서를 참조하십시오.

스택 추적 출력에서 소스 파일 열기

메시지를 선택하고 콘솔 창 하단의 상세 영역에서 전체 텍스트를 볼 때 코드 파일의 특정 줄에 대한 스택 추적 참조가 클릭 가능한 링크로 변합니다. 링크를 클릭하면 참조된 줄의 IDE에 있는 파일을 엽니다.

콘솔에서 로그 파일 열기

콘솔 창 메뉴에서 로그 파일을 열 수 있습니다. Open Player Log 또는 Open Editor Log를 선택하십시오.

사용되지 않는 API 경고 및 자동 업데이트

Unity는 코드에서 사용되지 않는 API 호출이 사용되면 경고를 표시합니다. 예를 들어 이전에 Unity에는 거래창 띄우기 MonoBehaviour 및 다른 클래스에서 일반 컴포넌트 타입에 액세스하기 위한 “단축키”가 있었습니다. 따라서 다음과 같은 코드를 사용하여 오브젝트의 리지드바디에 액세스할 수 있었습니다.

이 단축키는 더 이상 지원되지 않으므로 다음과 같은 코드를 사용해야 합니다.

콘솔이 사용되지 않는 API 호출을 감지하면 Unity는 그에 대한 거래창 띄우기 경고 메시지를 표시합니다. 이 메시지를 두 번 클릭하면 Unity는 더 이상 지원되지 않는 API 호출을 자동으로 추천 API 호출로 업그레이드하려고 시도합니다.


0 개 댓글

답장을 남겨주세요