DunkPay.com - 카페24 암호화폐 결제수단 추가하기

in dunkpay •  7 years ago  (edited)

카페24 쇼핑몰에 암호화폐 결제수단을 추가하는 방법을 소개합니다.

정식으로 암호화폐를 지원하는 모듈이 존재하지 않기 때문에 "계좌이체" 시나리오를 이용합니다.

우선, 카페24 관리자 페이지로 로그인하여 신규쇼핑몰을 생성합니다.

암호화폐용 계좌번호를 추가합니다.
(예제에서는 입금자 2222 / 계좌번호 22222222:2222 / KEB하나은행을 사용하였습니다.)

만약 생성된 쇼핑몰 디자인이 "심플디자인" 이라고하면 HTML 파일 수정이 가능한 "스마트디자인"으로 변경합니다.

"주문서작성" 화면에 암호화폐 결제수단 버튼을 추가합니다.
위치는 "결제하기" 버튼 아래 입니다. (Line 1094)

<img   onclick="goDunkPay('BTC')" src="https://www.dunkpay.com/bitcoin_accepted.png" height="50" width="140" style="padding:10px; cursor:pointer">
<img   onclick="goDunkPay('BCH')" src="https://www.dunkpay.com/bitcoin_cash_accepted.png" height="50" width="140" style="padding:10px; cursor:pointer">
<img   onclick="goDunkPay('ETH')" src="https://www.dunkpay.com/ethereum_accpeted.png" height="50" width="140" style="padding:10px; cursor:pointer">

Screen Shot 2018-04-14 at 1.58.08 PM.png

"공통 레이아웃" 화면으로 이동하여 아래 자바스크립트 소스를 삽입합니다.

<script type="text/javascript" src="https://www.dunkpay.com/dunkpay.js"></script>

그리고, cafe24용으로 작성한 아래 자바스크립트 소스도 삽입합니다.

function goDunkPay(type){    

    var walletAddress = ""
    var totalPrice = EC_ORDER_FORM_ASSIGN_DATA.r_total_price

    var email = document.getElementById("oemail1").value
    var address = document.getElementById("oemail2").value
    var sEmail = null;

    document.getElementById("pname").value= type    
    document.getElementById("bankaccount").value='bank_81:22222222:2222:KEB하나은행:www.hanabank.com' 

    if(type == "BTC")
    {  
      walletAddress = '33genZUggQwiFQzsv11Hb4Cqenc83QkGMh'
    }
    if(type == "BCH")
    {
      walletAddress = '1FYzvYvR1c4qSNDZPSUw22kqaaheLEVpei'
    }
    if(type == "ETH")
    {   
      walletAddress = '0x41C87EDB6AB6C719456EACC992F4C2FE278FF8D4' 
    }

    // 이메일 input 정보가 존재할경우
    if ($("#oemail1").length > 0 && $("#oemail2").length > 0) {
      sEmail = $("#oemail1").val() + '@' + $("#oemail2").val();
    }
    //간단회원 가입인 경우
    if ($("#simple_join_is_check").length > 0  && $("#simple_join_is_check").attr('checked') === true && $("#etc_subparam_email1").length > 0) {
      sEmail = $("#etc_subparam_email1").val();
    }
    if ($("#oemail1").length > 0 && $("#oemail1").val() != undefined) {
      if (FwValidator.Verify.isEmail(sEmail) == false && sEmail != null) {
        $("#oemail1").focus();
        alert('올바른 이메일 형식이 아닙니다. 다시 입력해주세요.');
        return;
      }
    }   
    if ($('input:checkbox[name=chk_purchase_agreement]').length > 0) { // checkbox로 사용 중일 때
      if ($('input:checkbox[name=chk_purchase_agreement]:checked').val() != 'T') {
        $('#chk_purchase_agreement0').focus();
        alert('결제정보 확인 및 구매진행에 동의하셔야 주문이 가능합니다.');
        return;
      }
    }       

    var dunkpay = new Dunkpay('testnet')
    dunkpay.type = type
    dunkpay.address = walletAddress
    dunkpay.itemName = totalPrice + " KRW"
    dunkpay.currency = "KRW" 
    dunkpay.amount = totalPrice
    dunkpay.invoiceMail = "[email protected]"

    dunkpay.shot(function(err,result){
      if(err)
      {
        alert('결제에 실패했습니다. 페이지를 새로 고치고 다시 시도해 주세요.' )
      } 
      alert('결제에 성공했습니다.')  
      document.getElementById("btn_payment").click();      
    })
  }

Screen Shot 2018-04-14 at 2.00.44 PM.png

모든 설정이 완료되었습니다. 이제 결제화면에서 암호화폐 결제버튼을 눌러서 암호화폐 결제를 진행할 수 있습니다.

Screen Shot 2018-04-14 at 1.52.06 PM.png

결제 완료 시, "계좌이체"와 동일한 화면을 볼 수 있지만 입금자에 결제한 화폐수단이 보이게 됩니다.

https://www.dunkpay.com/cafe24.html
이동하시면 "풀소스"를 보실 수 있습니다.

http://shop4.dryudryu.cafe24.com/
이동하시면 실제 적용된 쇼핑몰을 보실 수 있습니다.

감사합니다.

Authors get paid when people like you upvote their post.
If you enjoyed what you read here, create your account today and start earning FREE STEEM!
Sort Order:  

소스에서 walletAddress는 본인소유의 지갑주소로 설정하시면 됩니다.

Coins mentioned in post:

CoinPrice (USD)📉 24h📈 7d
BCHBitcoin Cash744.219$0.96%18.32%
BTCBitcoin7978.970$2.21%16.52%
ETHEthereum499.941$2.36%31.39%
HTMLHTMLCOIN0.000$-7.42%1.37%