모바일 상거래가 빠르게 성장하고 디지털 결제가 확산되고 있는 지금과 같은 시기에는 결제 게이트웨이를 모든 이커머스 애플리케이션에 통합하는 것이 특히 중요합니다. 현재 많은 앱은 사용자가 앱 내에서 거래를 하고 상품이나 서비스를 구매할 수 있도록 결제 게이트웨이 기능을 갖추고 있어야 합니다. 많은 앱이 결제 게이트웨이를 사용하고 있지만, 안드로이드 앱에서 결제 게이트웨이를 통합하는 것은 어려운 일입니다. 이 과정을 간소화하기 위해 PayU는 결제 옵션을 앱에 빠르게 통합하고 모든 결제 수단을 처리할 수 있는 서비스를 제공합니다. 이 문서에서는 결제 게이트웨이를 Android 앱에 통합하는 방법을 살펴봅니다: www.deekpay.com

모바일 상거래가 빠르게 성장하고 디지털 결제가 확산되고 있는 지금과 같은 시기에는 결제 게이트웨이를 모든 이커머스 애플리케이션에 통합하는 것이 특히 중요합니다. 현재 많은 앱은 사용자가 앱 내에서 거래를 하고 상품이나 서비스를 구매할 수 있도록 결제 게이트웨이 기능을 갖추고 있어야 합니다. 많은 앱이 결제 게이트웨이를 사용하고 있지만, 안드로이드 앱에서 결제 게이트웨이를 통합하는 것은 어려운 일입니다. 이 과정을 간소화하기 위해 PayU는 결제 옵션을 앱에 빠르게 통합하고 모든 결제 수단을 처리할 수 있는 서비스를 제공합니다. 이 문서에서는 결제 게이트웨이를 Android 앱에 통합하는 방법을 살펴봅니다.

PayU 소개

PayU는 인도에서 가장 인기있는 결제 게이트웨이 중 하나이며 중소기업 및 대기업에서 온라인으로 상품을 판매하고 신속하게 대금을 수금하는 데 널리 사용됩니다.PayU India는 대기업은 물론 중소기업/SME에 결제 게이트웨이 서비스를 제공합니다.PayU의 안드로이드 SDK는 비교적 사용하기 쉬우며 이 글의 다음 부분에서 더 자세히 설명하겠습니다.

Android 통합

다음 블로그 콘텐츠를 진행하기 전에 다음을 설치 및 구성했는지 확인하세요:

- Java 개발 키트 버전 1.6 이상

- Android SDK

- Git 클라이언트

- 이클립스 / 안드로이드 스튜디오

- PayU 결제 게이트웨이의 전제 조건(키, 솔트)

PayU의 SDK는 다음 두 가지 유형의 솔루션을 만드는 데 사용할 수 있습니다:

매끄럽지 않은 통합: 직접 UI를 디자인하고 싶지 않은 경우 이 모듈을 사용할 수 있습니다.

2. 원활한 통합: 이 경우 신용카드 번호 및 CVV와 같은 금융 데이터를 캡처하기 위해 자체 사용자 인터페이스를 만들어야 합니다.

SDK에 내장된 UI를 사용한 끊김 없는 통합

필요한 모든 매개변수 가져오기

PaymentParams 객체를 생성하고 기본 설정 방법을 사용하여 수신된 모든 파라미터를 그 안에 넣은 다음 paymentHash의 해시 값을 설정합니다.

"`java

결제 매개변수 mPaymentParams = 새로운 결제 매개변수();

mPaymentParams.setKey("gtKFFx");

mPaymentParams.setAmount("15.0");

mPaymentParams.setProductInfo("Tshirt");

mPaymentParams.setFirstName("Guru");

mPaymentParams.setEmail("[email protected]");

mPaymentParams.setTxnId("0123479543689");

mPaymentParams.setSurl("https://payu.herokuapp.com/success");

mPaymentParams.setFurl("https://payu.herokuapp.com/failure");

mPaymentParams.setUdf1("udf1l");

mPaymentParams.setUdf2("udf2");

mPaymentParams.setUdf3("udf3");

mPaymentParams.setUdf4("udf4");

mPaymentParams.setUdf5("udf5");

mPaymentParams.setHash("결제 해시");

“`

udf1-5를 사용하지 않는 경우에는 설정할 필요가 없습니다. 이메일과 이름을 사용하지 않으려면 비워 두어도 됩니다.

상점 사용자 카드 기능을 사용하려면 사용자 자격 증명을 제공해야 합니다:

"`java

mPaymentParams.setUserCredentials("귀하의 키:사용자 아이디");

“`

오퍼의 경우 사용하세요:

"`java

mPaymentParams.setOfferKey("your_offer_key");

“`

다른 결제 기본 매개변수(예: 전화 등)는 다음을 사용합니다:

"`java

mPaymentParams.setPhone("귀하의 번호");

“`

자체 서버를 사용하여 올바른 해시 값을 얻습니다. PayuHashes 객체를 생성하고 주어진 기본 설정 방법을 사용하여 관련 해시 값을 설정합니다.

"`java

mPaymentParams.setHash(payuHashes.getPaymentHash());

“`

PayUBaseActivity를 타겟팅하는 새 인텐트를 생성하고 다음 단계를 완료합니다.

"`java

intent.putExtra(PayuConstants.ENV, PayuConstants.PRODUCTION_ENV);

intent.putExtra(PayuConstants.PAYMENT_DEFAULT_PARAMS, mPaymentParams);

intent.putExtra(PayuConstants.PAYU_HASHES, payuHashes);

“`

원클릭 결제를 사용하려면:

"`java

// 해시를 저장하는 옵션으로 모바일을 사용하여 원클릭 결제를 활성화합니다.

intent.putExtra(PayuConstants.STORE_ONE_CLICK_HASH, PayuConstants.STORE_ONE_CLICK_HASH_MOBILE);

“`

또는:

"`java

// 해시를 저장하는 옵션으로 판매자 서버를 사용하여 원클릭 결제 활성화

intent.putExtra(PayuConstants.STORE_ONE_CLICK_HASH, PayuConstants.STORE_ONE_CLICK_HASH_SERVER);

“`

또는:

"`java

// 원클릭 결제 비활성화

intent.putExtra(PayuConstants.STORE_ONE_CLICK_HASH, PayuConstants.STORE_ONE_CLICK_HASH_NONE);

“`

캠페인을 시작하고 나머지는 PayU SDK에 맡기세요.

"`java

startActivity(intent);

“`

자체 UI를 사용한 원활한 통합

원활한 통합의 예로 신용카드와 인터넷 뱅킹 거래만 고려할 것입니다. 이 방법은 원클릭 결제 카드, 상점 카드, 현금 카드 및 PayU 결제를 연결하는 데 사용할 수 있습니다.

원활한 신용/직불 카드 결제 통합

비심리스 스타일에서와 같이 기본 설정 방법을 사용하여 모든 수신 매개변수를 채우고 해시를 paymentHash로 설정하는 PaymentParams 객체를 생성합니다.

"`java

mPaymentParams.setCardNumber(카드 번호);

mPaymentParams.setCardName(카드 이름);

mPaymentParams.setNameOnCard(카드 이름);

mPaymentParams.setExpiryMonth(expiryMonth); // MM

mPaymentParams.setExpiryYear(expiryYear); // YYYYY

mPaymentParams.setCvv(cvv);

“`

원클릭 결제를 사용하려면:

"`java

// 원클릭 결제 해시 저장, 패스 1

mPaymentParams.setEnableOneClickPayment(1);

“`

또는:

"`java

// 그렇지 않으면 0을 전달하거나 메서드를 전혀 호출하지 않습니다.

mPaymentParams.setEnableOneClickPayment(0);

“`

위의 PostData 유형을 사용하여 PaymentPostParams 객체를 만듭니다. 환경(테스트 또는 프로덕션)을 설정하고 인텐트를 생성한 다음 PaymentsActivity 활동을 시작합니다.

"`java

포스트데이터 postData = 새로운 PaymentPostParams(mPaymentParams, PayuConstants.CC).getPaymentPostParams();

if (postData.getCode() == PayuErrors.NO_ERROR) {

// 웹뷰 시작

페이유컨피그 페이유컨피그 = 새로운 페이유컨피그();

페이유컨설트.설정환경(페이유컨설트.프로덕션_환경);

payuConfig.setData(postData.getResult());

인텐트 인텐트 = 새 인텐트(this, PaymentsActivity.class);

intent.putExtra(PayuConstants.PAYU_CONFIG, payuConfig);

startActivityForResult(intent, PayuConstants.PAYU_REQUEST_CODE);

} else {

// 오류가 발생했습니다.

Toast.makeText(this, postData.getResult(), Toast.LENGTH_LONG).show();

}

“`

원활한 인터넷 뱅킹 통합

비심리스 스타일에서와 같이 기본 설정 방법을 사용하여 수신된 모든 파라미터를 채우고 해시를 paymentHash로 설정합니다. 스피너/목록을 사용하여 선택한 은행의 은행 코드(문자열)를 이전에 정의된 mPaymentParams에 추가합니다. 보기 어댑터를 사용합니다.

"`java

mPaymentParams.setBankCode(은행코드);

“`

PostData 유형의 PaymentPostParams 객체를 생성하여 PaymentsActivity를 시작합니다.

"`java

포스트데이터 postData = 새로운 PaymentPostParams(mPaymentParams, PayuConstants.NB).getPaymentPostParams();

if (postData.getCode() == PayuErrors.NO_ERROR){

// 웹뷰 시작

페이유컨피그 페이유컨피그 = 새로운 페이유컨피그();

페이유컨설트.설정환경(페이유컨설트.프로덕션_환경);

payuConfig.setData(postData.getResult());

인텐트 인텐트 = 새 인텐트(this, PaymentsActivity.class);

intent.putExtra(PayuConstants.PAYU_CONFIG, payuConfig);

startActivityForResult(intent, PayuConstants.PAYU_REQUEST_CODE);

} else {

// 오류가 발생했습니다.

Toast.makeText(this, postData.getResult(), Toast.LENGTH_LONG).show();

}

“`

PayU는 전체 거래 프로세스를 이해할 수 있도록 테스트 판매자 계정 및 테스트 신용 카드 세부 정보를 포함하여 통합 프로세스를 시작할 수 있는 테스트 구성을 제공합니다. 그런 다음 SDK 코드를 애플리케이션에 통합해야 합니다. 테스트가 완료되면 실제 거래를 위해 애플리케이션을 PayU 프로덕션 서버로 가리킬 준비가 된 것입니다.

테스트 바우처

더 많은 로깅을 사용하려면 테스트 키와 솔트(테스트 서버용)를 사용하세요. 다음 테스트 계정을 사용합니다(테스트 목적으로만 사용):

- 키: ktKFFx

- 소금: bDwWELix

테스트 카드 정보:

- 카드 소유자 이름: Shefali Singh

- 카드 번호: 2355 6756 9902 6654

- CVV: 098

- 만료일: 11/2023

수출

테스트 자격 증명을 사용하고 있으므로 결제할 수 없습니다. PayU 대시보드에서 앱을 활성화하고 새 키를 생성해야 결제가 적용될 수 있습니다.

이것이 PayU 안드로이드 앱 통합에 대한 입문서입니다. 통합에 행운을 빕니다!