# Fintech : 금융

:ballot\_box\_with\_check:속성 중 **Key** 이름은 가이드에 나와있는 **Key** 이름을 그대로 사용 해 주세요.\
(임의로 변경시 대시보드에서 데이터 확인이 어렵습니다.  > account\_type, company\_a 등)

## 본인인증

본인인증이 완료되는 시점에 아래 코드를 추가합니다.

{% tabs %}
{% tab title="Java" %}

```java
Map<String, Object> eventMap = new HashMap<>();
eventMap.put("event", "w_authenticate");
DOT.logEvent(eventMap);
```

{% endtab %}

{% tab title="Kotlin" %}

```kotlin
val eventMap = mutableMapOf<String,Any>()
eventMap["event"] = "w_authenticate"
DOT.logEvent(eventMap)
```

{% endtab %}

{% tab title="Swift" %}

```swift
let event = NSMutableDictionary()
event["event"] = "w_authenticate"
DOT.logEvent(event)
```

{% endtab %}

{% tab title="Objective-C" %}

```objectivec
NSMutableDictionary *event = [[NSMutableDictionary alloc] init];
[event setValue:@"w_authenticate" forKey:@"event"];
[DOT logEvent:event];
```

{% endtab %}

{% tab title="Mobile Webview" %}

```javascript
    var event = new Object();
    event["event"] = "w_authenticate";
    DOT.logEvent(event);
```

{% endtab %}

{% tab title="Website" %}

```javascript
    var event = new Object();
    event["event"] = "w_authenticate";
    WDOT.logEvent(event);
```

{% endtab %}

{% tab title="Flutter" %}

```javascript
// .dart 에서 호출 할 때
Map event = {};
event["event"] = "w_authenticate";
DOT.logEvent(event);

// webview 에서 호출 할 때
window.flutter_inappwebview.callHandler("DotFlutterDataBridge",JSON.stringify({
      method : "logEvent",
      data: {
              event : "w_authenticate"
      }
}));
```

{% endtab %}

{% tab title="ReactNative" %}

```javascript
// .js 에서 호출 할 때 
NativeModules.DotReactBridge.logEvent(JSON.stringify({
    event : "w_authenticate"
}));

// webview 에서 호출 할 때
window.ReactNativeWebView.postMessage(JSON.stringify({
 	method:"logEvent",
	data : {
	event : "w_authenticate"
	}  
})); 
```

{% endtab %}

{% tab title="C#" %}

```csharp
Dictionary<string, object> eventDic = new Dictionary<string, object>();
eventDic.Add("event", "w_authenticate");
DOT.logEvent(eventDic);
```

{% endtab %}
{% endtabs %}

## 신용정보 조회

유저가 조회한 신용정보가 출력된 시점에 아래 코드를 추가합니다.

{% tabs %}
{% tab title="Java" %}

```java
Map<String, Object> eventMap = new HashMap<>();
eventMap.put("event", "w_check_credit_info");
DOT.logEvent(eventMap);
```

{% endtab %}

{% tab title="Kotlin" %}

```kotlin
val eventMap = mutableMapOf<String,Any>()
eventMap["event"] = "w_check_credit_info"
DOT.logEvent(eventMap)
```

{% endtab %}

{% tab title="Swift" %}

```swift
let event = NSMutableDictionary()
event["event"] = "w_check_credit_info"
DOT.logEvent(event)
```

{% endtab %}

{% tab title="Objective-C" %}

```objectivec
NSMutableDictionary *event = [[NSMutableDictionary alloc] init];
[event setValue:@"w_check_credit_info" forKey:@"event"];
[DOT logEvent:event];
```

{% endtab %}

{% tab title="Mobile Webview" %}

```javascript
    var event = new Object();
    event["event"] = "w_check_credit_info";
    DOT.logEvent(event);
```

{% endtab %}

{% tab title="Website" %}

```javascript
    var event = new Object();
    event["event"] = "w_check_credit_info";
    WDOT.logEvent(event);
```

{% endtab %}

{% tab title="Flutter" %}

```javascript
// .dart 에서 호출 할 때
Map event = {};
event["event"] = "w_check_credit_info";
DOT.logEvent(event);

// webview 에서 호출 할 때
window.flutter_inappwebview.callHandler("DotFlutterDataBridge",JSON.stringify({
      method : "logEvent",
      data: {
              event : "w_check_credit_info"
            }
}));
```

{% endtab %}

{% tab title="ReactNative" %}

```javascript
// .js 에서 호출 할 때 
NativeModules.DotReactBridge.logEvent(JSON.stringify({
    event : "w_check_credit_info"
}));

// webview 에서 호출 할 때
window.ReactNativeWebView.postMessage(JSON.stringify({
 	method:"logEvent",
	data : {
    	event : "w_check_credit_info"
	}  
})); 
```

{% endtab %}

{% tab title="C#" %}

```csharp
Dictionary<string, object> eventDic = new Dictionary<string, object>();
eventDic.Add("event", "w_check_credit_info");
DOT.logEvent(eventDic);
```

{% endtab %}
{% endtabs %}

## 신청 접수

신청 접수가 완료된 시점에 아래 코드를 추가합니다.

{% tabs %}
{% tab title="Java" %}

```java
Map<String, Object> eventMap = new HashMap<>();
eventMap.put("event", "w_submit_registration");
DOT.logEvent(eventMap);
```

{% endtab %}

{% tab title="Kotlin" %}

```kotlin
val eventMap = mutableMapOf<String,Any>()
eventMap["event"] = "w_submit_registration"
DOT.logEvent(eventMap)
```

{% endtab %}

{% tab title="Swift" %}

```swift
let event = NSMutableDictionary()
event["event"] = "w_submit_registration"
DOT.logEvent(event)
```

{% endtab %}

{% tab title="Objective-C" %}

```objectivec
NSMutableDictionary *event = [[NSMutableDictionary alloc] init];
[event setValue:@"w_submit_registration" forKey:@"event"];
[DOT logEvent:event];
```

{% endtab %}

{% tab title="Mobile Webview" %}

```javascript
    var event = new Object();
    event["event"] = "w_submit_registration";
    DOT.logEvent(event);
```

{% endtab %}

{% tab title="Website" %}

```javascript
    var event = new Object();
    event["event"] = "w_submit_registration";
    WDOT.logEvent(event);
```

{% endtab %}

{% tab title="Flutter" %}

```javascript
// .dart 에서 호출 할 때
Map event = {};
event["event"] = "w_submit_registration";
DOT.logEvent(event);

// webview 에서 호출 할 때
window.flutter_inappwebview.callHandler("DotFlutterDataBridge",JSON.stringify({
      method : "logEvent",
      data: {
              event : "w_submit_registration"
      }
}));

```

{% endtab %}

{% tab title="ReactNative" %}

```javascript
// .js 에서 호출 할 때 
NativeModules.DotReactBridge.logEvent(JSON.stringify({
    event : "w_submit_registration"
}));

// webview 에서 호출 할 때
window.ReactNativeWebView.postMessage(JSON.stringify({
 	method:"logEvent",
	data : {
        event : "w_submit_registration"
	}  
})); 
```

{% endtab %}

{% tab title="C#" %}

```csharp
Dictionary<string, object> eventDic = new Dictionary<string, object>();
eventDic.Add("event", "w_submit_registration");
DOT.logEvent(eventDic);
```

{% endtab %}
{% endtabs %}

## 신청 승인

신청한 접수가 승인 완료된 시점에 아래 코드를 추가합니다.

{% tabs %}
{% tab title="Java" %}

```java
Map<String, Object> eventMap = new HashMap<>();
eventMap.put("event", "w_registration_approved");
DOT.logEvent(eventMap);
```

{% endtab %}

{% tab title="Kotlin" %}

```kotlin
val eventMap = mutableMapOf<String,Any>()
eventMap["event"] = "w_registration_approved"
DOT.logEvent(eventMap)
```

{% endtab %}

{% tab title="Swift" %}

```swift
let event = NSMutableDictionary()
event["event"] = "w_registration_approved"
DOT.logEvent(event)
```

{% endtab %}

{% tab title="Objective-C" %}

```objectivec
NSMutableDictionary *event = [[NSMutableDictionary alloc] init];
[event setValue:@"w_registration_approved" forKey:@"event"];
[DOT logEvent:event];
```

{% endtab %}

{% tab title="Mobile Webview" %}

```javascript
    var event = new Object();
    event["event"] = "w_registration_approved";
    DOT.logEvent(event);
```

{% endtab %}

{% tab title="Website" %}

```javascript
    var event = new Object();
    event["event"] = "w_registration_approved";
    WDOT.logEvent(event);
```

{% endtab %}

{% tab title="Flutter" %}

```javascript
// .dart 에서 호출 할 때
Map event = {};
event["event"] = "w_registration_approved";
DOT.logEvent(event);

// webview 에서 호출 할 때
window.flutter_inappwebview.callHandler("DotFlutterDataBridge",JSON.stringify({
      method : "logEvent",
      data: {
              event : "w_registration_approved"
      }
}));

```

{% endtab %}

{% tab title="ReactNative" %}

```javascript
// .js 에서 호출 할 때 
NativeModules.DotReactBridge.logEvent(JSON.stringify({
    event : "w_registration_approved"
}));

// webview 에서 호출 할 때
window.ReactNativeWebView.postMessage(JSON.stringify({
 	method:"logEvent",
	data : {
    	event : "w_registration_approved"
	}  
})); 
```

{% endtab %}

{% tab title="C#" %}

```csharp
Dictionary<string, object> eventDic = new Dictionary<string, object>();
eventDic.Add("event", "w_registration_approved");
DOT.logEvent(eventDic);
```

{% endtab %}
{% endtabs %}

## 계좌 연동

계좌가 연동 완료된 시점에 아래 코드를 추가합니다.

#### **선택 속성**

<table data-header-hidden><thead><tr><th width="150">Key</th><th width="150">Value 예시</th><th width="150">Type</th><th>설명</th></tr></thead><tbody><tr><td>Key</td><td>Value 예시</td><td>Type</td><td>설명</td></tr><tr><td>account_type</td><td>예금</td><td>string</td><td>연동된 계좌 유형</td></tr><tr><td>company_a</td><td>KB국민은행</td><td>string</td><td>연동된 금융사</td></tr></tbody></table>

{% tabs %}
{% tab title="Java" %}

```java
Map<String, Object> eventMap = new HashMap<>();
eventMap.put("event", "w_link_account");
eventMap.put("account_type", "예금");
eventMap.put("company_a", "KB국민은행");
DOT.logEvent(eventMap);
```

{% endtab %}

{% tab title="Kotlin" %}

```kotlin
val eventMap = mutableMapOf<String,Any>()
eventMap["event"] = "w_link_account"
eventMap["account_type"] = "예금"
eventMap["company_a"] = "KB국민은행"
DOT.logEvent(eventMap)
```

{% endtab %}

{% tab title="Swift" %}

```swift
let event = NSMutableDictionary()
event["event"] = "w_link_account"
event["account_type"] = "예금"
event["company_a"] = "KB국민은행"
DOT.logEvent(event)
```

{% endtab %}

{% tab title="Objective-C" %}

```objectivec
NSMutableDictionary *event = [[NSMutableDictionary alloc] init];
[event setValue:@"w_link_account" forKey:@"event"];
[event setValue:@"예금" forKey:@"account_type"];
[event setValue:@"KB국민은행" forKey:@"company_a"];
[DOT logEvent:event];
```

{% endtab %}

{% tab title="Mobile Webview" %}

```javascript
    var event = new Object();
    event["event"] = "w_link_account";
    event["account_type"] = "예금";
    event["company_a"] = "KB국민은행";
    DOT.logEvent(event);
```

{% endtab %}

{% tab title="Website" %}

```javascript
    var event = new Object();
    event["event"] = "w_link_account";
    event["account_type"] = "예금";
    event["company_a"] = "KB국민은행";
    WDOT.logEvent(event);
```

{% endtab %}

{% tab title="Flutter" %}

```javascript
// .dart 에서 호출 할 때
Map event = {};
event["event"] = "w_link_account";
event["account_type"] = "예금";
event["company_a"] = "KB국민은행";
DOT.logEvent(event);

// webview 에서 호출 할 때
window.flutter_inappwebview.callHandler("DotFlutterDataBridge",JSON.stringify({
      method : "logEvent",
      data: {
              event : "w_link_account",
              account_type : "예금",
              company_a : "KB국민은행"
      }
}));
```

{% endtab %}

{% tab title="ReactNative" %}

```javascript
// .js 에서 호출 할 때 
NativeModules.DotReactBridge.logEvent(JSON.stringify({
    event : "w_link_account",
    account_type : "예금",
    company_a : "국민은행"
}));

// webview 에서 호출 할 때
window.ReactNativeWebView.postMessage(JSON.stringify({
 	method:"logEvent",
	data : {
	    event : "w_link_account",
	    account_type : "예금",
	    company_a : "국민은행"
	}  
})); 
```

{% endtab %}

{% tab title="C#" %}

```csharp
Dictionary<string, object> eventDic = new Dictionary<string, object>();
eventDic.Add("event", "w_link_account");
eventDic.Add("account_type", "예금");
eventDic.Add("company_a", "KB국민은행");
DOT.logEvent(eventDic);
```

{% endtab %}
{% endtabs %}

## 신규회원 계좌 개설

신규회원이 계좌를 개설한 시점에 아래 코드를 추가합니다.

{% tabs %}
{% tab title="Java" %}

```java
Map<String, Object> eventMap = new HashMap<>();
eventMap.put("event", "w_open_account_complete_new");
DOT.logEvent(eventMap);
```

{% endtab %}

{% tab title="Kotlin" %}

```kotlin
val eventMap = mutableMapOf<String,Any>()
eventMap["event"] = "w_open_account_complete_new"
DOT.logEvent(eventMap)
```

{% endtab %}

{% tab title="Swift" %}

```swift
let event = NSMutableDictionary()
event["event"] = "w_open_account_complete_new"
DOT.logEvent(event)
```

{% endtab %}

{% tab title="Objective-C" %}

```objectivec
NSMutableDictionary *screen = [[NSMutableDictionary alloc] init];
[screen setValue:@"w_open_account_complete_new" forKey:@"event"];
[DOT logScreen:screen];
```

{% endtab %}

{% tab title="Mobile Webview" %}

```javascript
    var event = new Object();
    event["event"] = "w_open_account_complete_new";
    DOT.logEvent(event);
```

{% endtab %}

{% tab title="Website" %}

```javascript
    var event = new Object();
    event["event"] = "w_open_account_complete_new";
    WDOT.logEvent(event);
```

{% endtab %}

{% tab title="Flutter" %}

```javascript
// .dart 에서 호출 할 때
Map event = {};
event["event"] = "w_open_account_complete_new";
DOT.logEvent(event);

// webview 에서 호출 할 때
window.flutter_inappwebview.callHandler("DotFlutterDataBridge",JSON.stringify({
      method : "logEvent",
      data: {
              event : "w_open_account_complete_new"
      }
}));
```

{% endtab %}

{% tab title="ReactNative" %}

```javascript
// .js 에서 호출 할 때 
NativeModules.DotReactBridge.logEvent(JSON.stringify({
    event : "w_open_account_complete_new"
}));

// webview 에서 호출 할 때
window.ReactNativeWebView.postMessage(JSON.stringify({
 	method:"logEvent",
	data : {
   	 event : "w_open_account_complete_new"
	}  
})); 
```

{% endtab %}

{% tab title="C#" %}

```csharp
Dictionary<string, object> eventDic = new Dictionary<string, object>();
eventDic.Add("event", "w_open_account_complete_new");
DOT.logEvent(eventDic);
```

{% endtab %}
{% endtabs %}

## 기존회원 계좌 개설

기존회원이 계좌를 개설한 시점에 아래 코드를 추가합니다.

{% tabs %}
{% tab title="Java" %}

```java
Map<String, Object> eventMap = new HashMap<>();
eventMap.put("event", "w_open_account_complete");
DOT.logEvent(eventMap);
```

{% endtab %}

{% tab title="Kotlin" %}

```kotlin
val eventMap = mutableMapOf<String,Any>()
eventMap["event"] = "w_open_account_complete"
DOT.logEvent(eventMap)
```

{% endtab %}

{% tab title="Swift" %}

```swift
let event = NSMutableDictionary()
event["event"] = "w_open_account_complete"
DOT.logEvent(event)
```

{% endtab %}

{% tab title="Objective-C" %}

```objectivec
NSMutableDictionary *screen = [[NSMutableDictionary alloc] init];
[screen setValue:@"w_open_account_complete" forKey:@"event"];
[DOT logScreen:screen];
```

{% endtab %}

{% tab title="Mobile Webview" %}

```javascript
    var event = new Object();
    event["event"] = "w_open_account_complete";
    DOT.logEvent(event);
```

{% endtab %}

{% tab title="Website" %}

```javascript
    var event = new Object();
    event["event"] = "w_open_account_complete";
    WDOT.logEvent(event);
```

{% endtab %}

{% tab title="Flutter" %}

```javascript
// .dart 에서 호출 할 때
Map event = {};
event["event"] = "w_open_account_complete";
DOT.logEvent(event);

// webview 에서 호출 할 때
window.flutter_inappwebview.callHandler("DotFlutterDataBridge",JSON.stringify({
      method : "logEvent",
      data: {
              event : "w_open_account_complete"
      }
}));
```

{% endtab %}

{% tab title="ReactNative" %}

```javascript
// .js 에서 호출 할 때 
NativeModules.DotReactBridge.logEvent(JSON.stringify({
    event : "w_open_account_complete"
}));

// webview 에서 호출 할 때
window.ReactNativeWebView.postMessage(JSON.stringify({
 	method:"logEvent",
	data : {
    	event : "w_open_account_complete"
	}  
})); 

```

{% endtab %}

{% tab title="C#" %}

```csharp
Dictionary<string, object> eventDic = new Dictionary<string, object>();
eventDic.Add("event", "w_open_account_complete");
DOT.logEvent(eventDic);
```

{% endtab %}
{% endtabs %}

## 송금

송금이 완료된 시점에 아래 코드를 추가합니다.

#### **선택 속성**

<table data-header-hidden><thead><tr><th>Key</th><th width="150">Value 예시</th><th width="150">Type</th><th>설명</th></tr></thead><tbody><tr><td>Key</td><td>Value 예시</td><td>Type</td><td>설명</td></tr><tr><td>transaction_id</td><td>WR9492003</td><td>string</td><td>송금번호</td></tr><tr><td>currency</td><td>KRW</td><td>string</td><td>통화코드</td></tr><tr><td>company_a</td><td>ID04002</td><td>string</td><td>입금받는 금융사 명칭 또는 고유번호</td></tr><tr><td>quantity</td><td>1</td><td>integer</td><td>송금 횟수</td></tr><tr><td>revenue</td><td>215000</td><td>double</td><td>송금액</td></tr></tbody></table>

{% tabs %}
{% tab title="Java" %}

```java
Map<String, Object> purchaseMap = new HashMap<>();
purchaseMap.put("transaction_id", "WR9492003");
purchaseMap.put("currency", "KRW");
Map<String, Object> productMap = new HashMap<>();
productMap.put("company_a", "ID04002");
productMap.put("quantity", 1);
productMap.put("revenue", 215000);
purchaseMap.put("product", productMap);
DOT.logPurchase(purchaseMap);
```

{% endtab %}

{% tab title="Kotlin" %}

```kotlin
val purchaseMap = mutableMapOf<String,Any>()
purchaseMap["transaction_id"] = "WR9492003"
purchaseMap["currency"] = "KRW"
val productMap = mutableMapOf<String,Any>()
productMap["company_a"] = "ID04002"
productMap["evquantityent"] = 1
productMap["revenue"] = 215000
purchaseMap["product"] = productMap
DOT.logPurchase(purchaseMap)
```

{% endtab %}

{% tab title="Swift" %}

```swift
let purchase = NSMutableDictionary()
purchase["transaction_id"] = "WR9492003"
purchase["currency"] = "KRW"
var product : [String: Any] = [:]
product["company_a"] = "ID04002"
product["quantity"] = 1
product["revenue"] = 215000
purchase["product"] = product
DOT.logPurchase(purchase)
```

{% endtab %}

{% tab title="Objective-C" %}

```swift
NSMutableDictionary *purchase = [[NSMutableDictionary alloc] init];
[purchase setValue:@"WR9492003" forKey:@"transaction_id"];
[purchase setValue:@"KRW" forKey:@"currency"];
NSMutableDictionary *product = [[NSMutableDictionary alloc] init];
[product setValue:@"ID04002" forKey:@"company_a"];
[product setValue:[NSNumber numberWithInt:1] forKey:@"quantity"];
[product setValue:[NSNumber numberWithInt:215000] forKey:@"revenue"];
[purchase setValue:product forKey:@"product"];
[DOT logPurchase:purchase];
```

{% endtab %}

{% tab title="Mobile Webview" %}

```javascript
    var purchase = new Object();
    purchase["transaction_id"] = "WR9492003";
    purchase["currency"] = "KRW";
    var product = new Object();
    product["company_a"] = "ID04002";
    product["quantity"] = 1;
    product["revenue"] = 215000;
    purchase["product"] = product;
    DOT.logPurchase(purchase);
```

{% endtab %}

{% tab title="Website" %}

```javascript
    var purchase = new Object();
    purchase["transaction_id"] = "WR9492003";
    purchase["currency"] = "KRW";
    var product = new Object();
    product["company_a"] = "ID04002";
    product["quantity"] = 1;
    product["revenue"] = 215000;
    purchase["product"] = product;
    WDOT.logPurchase(purchase);
```

{% endtab %}

{% tab title="Flutter" %}

```javascript
// .dart 에서 호출 할 때 
Map purchase = {};
purchase["transaction_id"] = "WR9492003";
purchase["currency"] = "KRW";
Map product = {};
product["company_a"] = "ID04002";
product["quantity"] = 1;
product["revenue"] = 215000;
purchase["product"] = product;
DOT.logPurchase(purchase);



// webview 에서 호출 할 때
var purchase = new Object();
purchase["transaction_id"] =  "WR9492003";
purchase["currency"] =  "KRW";

var productArray = new Array();
for( var inx = 0; inx < purchaselist[송금목록].length; inx++){
var purchaseProduct = purchaselist[inx]; 
var product = new Object();
product["company_a"] = "ID04002";
product["quantity"] = 1;
product["revenue"] = 215000;
productArray.push(product); 

purchase["product"] = productArray;

window.flutter_inappwebview.callHandler("DotFlutterDataBridge",JSON.stringify({
      method : "logPurchase",
      data: purchase
}));
```

{% endtab %}

{% tab title="ReactNative" %}

```javascript
// .js 에서 호출 할 때 
NativeModules.DotReactBridge.logPurchase(JSON.stringify({
    transaction_id : "WR9492003",
    currency : "KRW",
    product : {
    company_a : "ID04002",
    currency_value_a : 300000,
    quantity : 1,
    revenue : 215000
    }
})); 

// webview 에서 호출 할 때
window.ReactNativeWebView.postMessage(JSON.stringify({
 	method:"logPurchase",
	data : {
	    transaction_id : "WR9492003",
	    currency : "KRW",
	    product : {
		    company_a : "ID04002",
		    currency_value_a : 300000,
		    quantity : 1,
		    revenue : 215000
        	}
	}  
})); 
```

{% endtab %}

{% tab title="C#" %}

```csharp
Dictionary<string, object> purchase = new Dictionary<string, object>();
purchase.Add("transaction_id", "WR9492003");
purchase.Add("currency", "KRW");
Dictionary<string, object> product = new Dictionary<string, object>();
product.Add("company_a", "ID04002");
product.Add("quantity", 1);
product.Add("revenue", 215000);
List<Dictionary<string, object>> productList = new List<Dictionary<string, object>>();
productList.Add(product);
purchase.Add("product", productList);
DOT.logPurchase(purchase);
```

{% endtab %}
{% endtabs %}

## 환전

환전이 완료된 시점에 아래 코드를 추가합니다.

#### **선택 속성**

<table data-header-hidden><thead><tr><th width="172.7142857142857">Key</th><th width="150">Value 예시</th><th width="150">Type</th><th>설명</th></tr></thead><tbody><tr><td>Key</td><td>Value 예시</td><td>Type</td><td>설명</td></tr><tr><td>transaction_id</td><td>EX47949398</td><td>string</td><td>송금번호</td></tr><tr><td>currency_a</td><td>KRW</td><td>string</td><td>기준통화코드</td></tr><tr><td>currency_value_a</td><td>300000</td><td>float</td><td>환전 대상 금액</td></tr><tr><td>currency_b</td><td>HKD</td><td>string</td><td>환전 받은 통화코드</td></tr><tr><td>currency_value_b</td><td>2106.54</td><td>float</td><td>환전 받은 금액</td></tr><tr><td>quantity</td><td>1</td><td>integer</td><td>환전 횟수</td></tr><tr><td>revenue</td><td>2106.54</td><td>double</td><td>매출로써 측정하고자 하는 금액</td></tr></tbody></table>

{% tabs %}
{% tab title="Java" %}

```java
Map<String, Object> purchaseMap = new HashMap<>();
purchaseMap.put("transaction_id", "EX47949398");
Map<String, Object> productMap = new HashMap<>();
productMap.put("currency_a", "KRW");
productMap.put("currency_value_a", 300000);
productMap.put("currency_b", "HKD");
productMap.put("currency_value_b", 2106.54);
productMap.put("quantity", 1);
productMap.put("revenue", 2106.54);
purchaseMap.put("product", productMap);
DOT.logPurchase(purchaseMap);
```

{% endtab %}

{% tab title="Kotlin" %}

```kotlin
val purchaseMap = mutableMapOf<String,Any>()
purchaseMap["transaction_id"] = "EX47949398"
purchaseMap["currency"] = "KRW"
val productMap = mutableMapOf<String,Any>()
productMap["currency_a"] = "KRW"
productMap["currency_value_a"] = 300000
productMap["currency_b"] = "HKD"
productMap["currency_value_b"] = 2106.54
productMap["quantity"] = 1
productMap["revenue"] = 2106.54
purchaseMap["product"] = productMap
DOT.logPurchase(purchaseMap)
```

{% endtab %}

{% tab title="Swift" %}

```swift
let purchase = NSMutableDictionary()
purchase["transaction_id"] = "EX47949398"
var product : [String: Any] = [:]
product["currency_a"] = "KRW"
product["currency_value_a"] = 300000
product["currency_b"] = "HKD"
product["currency_value_b"] = 2106.54
product["quantity"] = 1
product["revenue"] = 2106.54
purchase["product"] = product
DOT.logPurchase(purchase)
```

{% endtab %}

{% tab title="Objective-C" %}

```objectivec
NSMutableDictionary *purchase = [[NSMutableDictionary alloc] init];
[purchase setValue:@"EX47949398" forKey:@"transaction_id"];
NSMutableDictionary *product = [[NSMutableDictionary alloc] init];
[product setValue:@"KRW" forKey:@"currency_a"];
[product setValue:[NSNumber numberWithInt:300000] forKey:@"currency_value_a"];
[product setValue:@"HKD" forKey:@"currency_b"];
[product setValue:[NSNumber numberWithInt:2106.54]forKey:@"currency_value_b"];
[product setValue:[NSNumber numberWithInt:1] forKey:@"quantity"];
[product setValue:[NSNumber numberWithInt:2106.54] forKey:@"revenue"];
[purchase setValue:product forKey:@"product"];
[DOT logPurchase:purchase];
```

{% endtab %}

{% tab title="Mobile Webview" %}

```javascript
    var purchase = new Object();
    purchase["transaction_id"] = "EX47949398";
    var product = new Object();
    product["currency_a"] = "KRW";
    product["currency_value_a"] = 300000;
    product["currency_b"] = "HKD";
    product["currency_value_b"] = 2106.54;
    product["quantity"] = 1;
    product["revenue"] = 2106.54;
    purchase["product"] = product;
    DOT.logPurchase(purchase);
```

{% endtab %}

{% tab title="Website" %}

```javascript
    var purchase = new Object();
    purchase["transaction_id"] = "EX47949398";
    var product = new Object();
    product["currency_a"] = "KRW";
    product["currency_value_a"] = 300000;
    product["currency_b"] = "HKD";
    product["currency_value_b"] = 2106.54;
    product["quantity"] = 1;
    product["revenue"] = 2106.54;
    purchase["product"] = product;
    WDOT.logPurchase(purchase);
```

{% endtab %}

{% tab title="Flutter" %}

```javascript
// .dart 에서 호출 할 때 
Map purchase = {};
purchase["transaction_id"] = "EX47949398";
Map product = {};
product["currency_a"] = "KRW";
product["currency_value_a"] = 300000;
product["currency_b"] = "HKD";
product["currency_value_b"] = 2106.54;
product["quantity"] = 1;
product["revenue"] = 2106.54;
purchase["product"] = product;
DOT.logPurchase(purchase);



// webview 에서 호출 할 때
var purchase = new Object();
purchase["transaction_id"] =  "EX47949398";

var productArray = new Array();
for( var inx = 0; inx < purchaselist[환전목록].length; inx++){
var purchaseProduct = purchaselist[inx]; 
var product = new Object();
product["currency_a"] = "KRW";
product["currency_value_a"] = 300000;
product["currency_b"] = "HKD";
product["currency_value_b"] = 2106.54;
product["quantity"] = 1;
product["revenue"] = 2106.54;
productArray.push(product); 

purchase["product"] = productArray;

window.flutter_inappwebview.callHandler("DotFlutterDataBridge",JSON.stringify({
      method : "logPurchase",
      data: purchase
}));
```

{% endtab %}

{% tab title="ReactNative" %}

```javascript
// .js 에서 호출 할 때 
NativeModules.DotReactBridge.logPurchase(JSON.stringify({
    transaction_id : "EX47949398",
    product : {
    currency_a : "KRW",
    currency_value_a : 300000,
    currency_b : "HKD",
    currency_value_b : 2106.54,
    quantity : 1,
    revenue : 2106.54
    }
}));

// webview 에서 호출 할 때
window.ReactNativeWebView.postMessage(JSON.stringify({
 	method:"logPurchase",
	data : {
	    transaction_id : "EX47949398",
	    product : {
		    currency_a : "KRW",
		    currency_value_a : 300000,
		    currency_b : "HKD",
		    currency_value_b : 2106.54,
		    quantity : 1,
		    revenue : 2106.54
        	}
	}  
})); 
```

{% endtab %}

{% tab title="C#" %}

```csharp
Dictionary<string, object> purchase = new Dictionary<string, object>();
purchase.Add("transaction_id", "EX47949398");
Dictionary<string, object> product = new Dictionary<string, object>();
product.Add("currency_a", "KRW");
product.Add("currency_value_a", 300000);
product.Add("currency_b", "HKD");
product.Add("currency_value_b", 2106.54);
product.Add("quantity", 1);
product.Add("revenue", 2106.54);
List<Dictionary<string, object>> productList = new List<Dictionary<string, object>>();
productList.Add(product);
purchase.Add("product", productList);
DOT.logPurchase(purchase);
```

{% endtab %}
{% endtabs %}

## 보험 가입

보험 가입이 완료된 시점에 아래 코드를 추가합니다.

#### **선택 속성**

<table data-header-hidden><thead><tr><th>Key</th><th width="150">Value 예시</th><th width="150">Type</th><th>설명</th></tr></thead><tbody><tr><td>Key</td><td>Value 예시</td><td>Type</td><td>설명</td></tr><tr><td>transaction_id</td><td>SF49484900</td><td>string</td><td>주문번호</td></tr><tr><td>currency</td><td>KRW</td><td>string</td><td>결제 통화코드</td></tr><tr><td>insurance_id</td><td>PP030401_001</td><td>string</td><td>보험상품코드</td></tr><tr><td>insurance_name</td><td>다이렉트 건강보험</td><td>string</td><td>보험 명칭</td></tr><tr><td>insurance_subtype_a</td><td>갱신형</td><td>string</td><td>상품 속성 a</td></tr><tr><td>insurance_subtype_b</td><td>특약1</td><td>string</td><td>상품 속성 b</td></tr><tr><td>g16</td><td>90</td><td>float</td><td>만기연령</td></tr><tr><td>quantity</td><td>1</td><td>integer</td><td>구매한 보험 개수</td></tr><tr><td>revenue</td><td>123000</td><td>double</td><td>매출로써 측정하고자 하는 금액</td></tr></tbody></table>

{% tabs %}
{% tab title="Java" %}

```java
Map<String, Object> purchaseMap = new HashMap<>();
purchaseMap.put("transaction_id", "SF49484900");
purchaseMap.put("currency", "KRW");
Map<String, Object> productMap = new HashMap<>();
productMap.put("insurance_id", "PP030401_001");
productMap.put("insurance_name", "다이렉트 건강보험");
productMap.put("insurance_subtype_a", "갱신형");
productMap.put("insurance_subtype_b", "특약1");
productMap.put("g16", 90);
productMap.put("quantity", 1);
productMap.put("revenue", 123000);
purchaseMap.put("product", productMap);
DOT.logPurchase(purchaseMap);
```

{% endtab %}

{% tab title="Kotlin" %}

```kotlin
val purchaseMap = mutableMapOf<String,Any>()
purchaseMap["transaction_id"] = "SF49484900"
purchaseMap["currency"] = "KRW"
val productMap = mutableMapOf<String,Any>()
productMap["insurance_id"] = "PP030401_001"
productMap["insurance_name"] = "다이렉트 건강보험"
productMap["insurance_subtype_a"] = "갱신형"
productMap["insurance_subtype_b"] = "특약1"
productMap["g16"] = 90
productMap["quantity"] = 1
productMap["revenue"] = 123000
purchaseMap["product"] = productMap
DOT.logPurchase(purchaseMap)
```

{% endtab %}

{% tab title="Swift" %}

```swift
let purchase = NSMutableDictionary()
purchase["transaction_id"] = "SF49484900"
purchase["currency"] = "KRW"
var product : [String: Any] = [:]
product["insurance_id"] = "PP030401_001"
product["insurance_name"] = "다이렉트 건강보험"
product["insurance_subtype_a"] = "갱신형"
product["insurance_subtype_b"] = "특약1"
product["g16"] = 90
product["quantity"] = 1
product["revenue"] = 123000
purchase["product"] = product
DOT.logPurchase(purchase)
```

{% endtab %}

{% tab title="Objective-C" %}

```objectivec
NSMutableDictionary *purchase = [[NSMutableDictionary alloc] init];
[purchase setValue:@"SF49484900" forKey:@"transaction_id"];
[purchase setValue:@"KRW" forKey:@"currency"];
NSMutableDictionary *product = [[NSMutableDictionary alloc] init];
[product setValue:@"PP030401_001" forKey:@"insurance_id"];
[product setValue:@"다이렉트 건강보험" forKey:@"insurance_name"];
[product setValue:@"갱신형" forKey:@"insurance_subtype_a"];
[product setValue:@"특약1" forKey:@"insurance_subtype_b"];
[product setValue:[NSNumber numberWithInt:90] forKey:@"g16"];
[product setValue:[NSNumber numberWithInt:1] forKey:@"quantity"];
[product setValue:[NSNumber numberWithInt:123000] forKey:@"revenue"];
[purchase setValue:product forKey:@"product"];
[DOT logPurchase:purchase];
```

{% endtab %}

{% tab title="Mobile Webview" %}

```javascript
    var purchase = new Object();
    purchase["transaction_id"] = "SF49484900";
    purchase["currency"] = "KRW";
    var product = new Object();
    product["insurance_id"] = "PP030401_001";
    product["insurance_name"] = "다이렉트 건강보험";
    product["insurance_subtype_a"] = "갱신형";
    product["insurance_subtype_b"] = "특약1";
    product["g16"] = 90;
    product["quantity"] = 1;
    product["revenue"] = 123000;
    purchase["product"] = product;
    DOT.logPurchase(purchase);
```

{% endtab %}

{% tab title="Website" %}

```javascript
    var purchase = new Object();
    purchase["transaction_id"] = "SF49484900";
    purchase["currency"] = "KRW";
    var product = new Object();
    product["insurance_id"] = "PP030401_001";
    product["insurance_name"] = "다이렉트 건강보험";
    product["insurance_subtype_a"] = "갱신형";
    product["insurance_subtype_b"] = "특약1";
    product["g16"] = 90;
    product["quantity"] = 1;
    product["revenue"] = 123000;
    purchase["product"] = product;
    WDOT.logPurchase(purchase);
```

{% endtab %}

{% tab title="Flutter" %}

```javascript
// .dart 에서 호출 할 때 
Map purchase = {};
purchase["transaction_id"] = "SF49484900";
purchase["currency"] = "KRW";
Map product = {};
product["insurance_id"] = "PP030401_001";
product["insurance_name"] = "다이렉트 건강보험";
product["insurance_subtype_a"] = "갱신형";
product["insurance_subtype_b"] = "특약1";
product["g16"] = 90;
product["quantity"] = 1;
product["revenue"] = 123000;
purchase["product"] = product;
DOT.logPurchase(purchase);



// webview 에서 호출 할 때
var purchase = new Object();
purchase["transaction_id"] =  "SF49484900";
purchase["currency"] = "KRW";

var productArray = new Array();
for( var inx = 0; inx < purchaselist[보험목록].length; inx++){
var purchaseProduct = purchaselist[inx]; 
var product = new Object();
product["insurance_id"] = "PP030401_001";
product["insurance_name"] = "다이렉트 건강보험";
product["insurance_subtype_a"] = "갱신형";
product["insurance_subtype_b"] = "특약1";
product["g16"] = 90;
product["quantity"] = 1;
product["revenue"] = 123000;
productArray.push(product); 

purchase["product"] = productArray;

window.flutter_inappwebview.callHandler("DotFlutterDataBridge",JSON.stringify({
      method : "logPurchase",
      data: purchase
}));
```

{% endtab %}

{% tab title="ReactNative" %}

```javascript
// .js 에서 호출 할 때 
NativeModules.DotReactBridge.logPurchase(JSON.stringify({
    transaction_id : "SF49484900",
    currency : "KRW",
    product : {
    insurance_id : "PP030401_001",
    insurance_name : "다이렉트 건강보험",
    insurance_subtype_a : "갱신형",
    insurance_subtype_b : "특약1",
    g16 : 90,
    quantity : 1,
    revenue : 123000
    }
})); 

// webview 에서 호출 할 때
window.ReactNativeWebView.postMessage(JSON.stringify({
 	method:"logPurchase",
	data : {
	    transaction_id : "SF49484900",
	    currency : "KRW",
	    product : {
		    insurance_id : "PP030401_001",
		    insurance_name : "다이렉트 건강보험",
		    insurance_subtype_a : "갱신형",
		    insurance_subtype_b : "특약1",
		    g16 : 90,
		    quantity : 1,
		    revenue : 123000
        	}
	}  
})); 
```

{% endtab %}

{% tab title="C#" %}

```csharp
Dictionary<string, object> purchase = new Dictionary<string, object>();
purchase.Add("transaction_id", "SF49484900");
purchase.Add("currency", "KRW");
Dictionary<string, object> product = new Dictionary<string, object>();
product.Add("insurance_id", "PP030401_001");
product.Add("insurance_name", "다이렉트 건강보험");
product.Add("insurance_subtype_a", "갱신형");
product.Add("insurance_subtype_b", "특약1");
product.Add("g16", 90);
product.Add("quantity", 1);
product.Add("revenue", 123000);
List<Dictionary<string, object>> productList = new List<Dictionary<string, object>>();
productList.Add(product);
purchase.Add("product", productList);
DOT.logPurchase(purchase);
```

{% endtab %}
{% endtabs %}

## 투자

상품에 대한 투자가 완료된 시점에 아래 코드를 추가합니다.

#### **선택 속성**

<table data-header-hidden><thead><tr><th>Key</th><th>Value 예시</th><th width="150">Type</th><th>설명</th></tr></thead><tbody><tr><td>Key</td><td>Value 예시</td><td>Type</td><td>설명</td></tr><tr><td>transaction_id</td><td>IV7878930</td><td>string</td><td>주문번호</td></tr><tr><td>currency</td><td>KRW</td><td>string</td><td>결제 통화코드</td></tr><tr><td>investment_id</td><td>20-LN-4501</td><td>string</td><td>투자상품코드</td></tr><tr><td>investment_name</td><td>제4178차 근린생활시설 신축사업 사업자대출 리파이낸싱</td><td>string</td><td>상품 명칭</td></tr><tr><td>g15</td><td>13</td><td>float</td><td>수익률</td></tr><tr><td>quantity</td><td>1</td><td>integer</td><td>투자한 상품 개수</td></tr><tr><td>revenue</td><td>60000</td><td>double</td><td>매출로써 측정하고자 하는 금액</td></tr></tbody></table>

{% tabs %}
{% tab title="Java" %}

```java
Map<String, Object> purchaseMap = new HashMap<>();
purchaseMap.put("transaction_id", "IV7878930");
purchaseMap.put("currency", "KRW");
Map<String, Object> productMap = new HashMap<>();
productMap.put("investment_id", "20-LN-4501");
productMap.put("investment_name", "제4178차 근린생활시설 신축사업 사업자대출 리파이낸싱");
productMap.put("g15", 13);
productMap.put("quantity", 1);
productMap.put("revenue", 60000);
purchaseMap.put("product", productMap);
DOT.logPurchase(purchaseMap);
```

{% endtab %}

{% tab title="Kotlin" %}

```kotlin
val purchaseMap = mutableMapOf<String,Any>()
purchaseMap["transaction_id"] = "IV7878930"
purchaseMap["currency"] = "KRW"
val productMap = mutableMapOf<String,Any>()
productMap["investment_id"] = "20-LN-4501"
productMap["investment_name"] = "제4178차 근린생활시설 신축사업 사업자대출 리파이낸싱"
productMap["g15"] = 13
productMap["quantity"] = 1
productMap["revenue"] = 60000
purchaseMap["product"] = productMap
DOT.logPurchase(purchaseMap)
```

{% endtab %}

{% tab title="Swift" %}

```swift
let purchase = NSMutableDictionary()
purchase["transaction_id"] = "IV7878930"
purchase["currency"] = "KRW"
var product : [String: Any] = [:]
product["investment_id"] = "20-LN-4501"
product["investment_name"] = "제4178차  근린생활시설 신축사업 사업자대출 리파이낸싱"
product["g15"] = 13
product["quantity"] = 1
product["revenue"] = 60000
purchase["product"] = product
DOT.logPurchase(purchase)
```

{% endtab %}

{% tab title="Objective-C" %}

```objectivec
NSMutableDictionary *purchase = [[NSMutableDictionary alloc] init];
[purchase setValue:@"IV7878930" forKey:@"transaction_id"];
[purchase setValue:@"KRW" forKey:@"currency"];
NSMutableDictionary *product = [[NSMutableDictionary alloc] init];
[product setValue:@"20-LN-4501" forKey:@"investment_id"];
[product setValue:@"제4178차 근린생활시설 신축사업 사업자대출 리파이낸싱" forKey:@"investment_name"];
[product setValue:[NSNumber numberWithInt:13] forKey:@"g15"];
[product setValue:[NSNumber numberWithInt:1] forKey:@"quantity"];
[product setValue:[NSNumber numberWithInt:60000] forKey:@"revenue"];
[purchase setValue:product forKey:@"product"];
[DOT logPurchase:purchase];
```

{% endtab %}

{% tab title="Mobile Webview" %}

```javascript
    var purchase = new Object();
    purchase["transaction_id"] = "IV7878930";
    purchase["currency"] = "KRW";
    var product = new Object();
    product["investment_id"] = "20-LN-4501";
    product["investment_name"] = "제4178차  근린생활시설 신축사업 사업자대출 리파이낸싱";
    product["g15"] = 13;
    product["quantity"] = 1;
    product["revenue"] = 60000;
    purchase["product"] = product;
    DOT.logPurchase(purchase);
```

{% endtab %}

{% tab title="Website" %}

```javascript
    var purchase = new Object();
    purchase["transaction_id"] = "IV7878930";
    purchase["currency"] = "KRW";
    var product = new Object();
    product["investment_id"] = "20-LN-4501";
    product["investment_name"] = "제4178차  근린생활시설 신축사업 사업자대출 리파이낸싱";
    product["g15"] = 13;
    product["quantity"] = 1;
    product["revenue"] = 60000;
    purchase["product"] = product;
    WDOT.logPurchase(purchase);
```

{% endtab %}

{% tab title="Flutter" %}

```javascript
// .dart 에서 호출 할 때 
Map purchase = {};
purchase["transaction_id"] = "IV7878930";
purchase["currency"] = "KRW";
Map product = {};
product["investment_id"] = "20-LN-4501";
product["investment_name"] = "제4178차  근린생활시설 신축사업 사업자대출 리파이낸싱";
product["g15"] = 13;
product["quantity"] = 1;
product["revenue"] = 60000;
purchase["product"] = product;
DOT.logPurchase(purchase);



// webview 에서 호출 할 때
var purchase = new Object();
purchase["transaction_id"] = "IV7878930";
purchase["currency"] = "KRW";

var productArray = new Array();
for( var inx = 0; inx < purchaselist[보험목록].length; inx++){
var purchaseProduct = purchaselist[inx]; 
var product = new Object();
product["investment_id"] = "20-LN-4501";
product["investment_name"] = "제4178차  근린생활시설 신축사업 사업자대출 리파이낸싱";
product["g15"] = 13;
product["quantity"] = 1;
product["revenue"] = 60000;
productArray.push(product); 

purchase["product"] = productArray;

window.flutter_inappwebview.callHandler("DotFlutterDataBridge",JSON.stringify({
      method : "logPurchase",
      data: purchase
}));
```

{% endtab %}

{% tab title="ReactNative" %}

```javascript
// .js 에서 호출 할 때 
NativeModules.DotReactBridge.logPurchase(JSON.stringify({
    transaction_id : "IV7878930",
    currency : "KRW",
    product : {
    investment_id : "20-LN-4501",
    investment_name : "제4178차  근린생활시설 신축사업 사업자대출 리파이낸싱",
    g15 : 13,
    quantity : 1,
    revenue : 60000
    }
}));

// webview 에서 호출 할 때
window.ReactNativeWebView.postMessage(JSON.stringify({
 	method:"logPurchase",
	data : {
	    transaction_id : "IV7878930",
	    currency : "KRW",
	    product : {
		    investment_id : "20-LN-4501",
		    investment_name : "제4178차  근린생활시설 신축사업 사업자대출 리파이낸싱",
		    g15 : 13,
		    quantity : 1,
		    revenue : 60000
        	}
	}  
})); 
```

{% endtab %}

{% tab title="C#" %}

```csharp
Dictionary<string, object> purchase = new Dictionary<string, object>();
purchase.Add("transaction_id", "IV7878930");
purchase.Add("currency", "KRW");
Dictionary<string, object> product = new Dictionary<string, object>();
product.Add("investment_id", "20-LN-4501");
product.Add("investment_name", "제4178차  근린생활시설 신축사업 사업자대출 리파이낸싱");
product.Add("g15", 13);
product.Add("quantity", 1);
product.Add("revenue", 60000);
List<Dictionary<string, object>> productList = new List<Dictionary<string, object>>();
productList.Add(product);
purchase.Add("product", productList);
DOT.logPurchase(purchase);
```

{% endtab %}
{% endtabs %}

## 대출 신청서 작성

유저가 대출 신청서 작성을 시작하는 시점에 아래 코드를 추가합니다.

#### **선택 속성**

<table data-header-hidden><thead><tr><th>Key</th><th>Value 예시</th><th width="150">Type</th><th>설명</th></tr></thead><tbody><tr><td>Key</td><td>Value 예시</td><td>Type</td><td>설명</td></tr><tr><td>loan_id</td><td>L39848</td><td>string</td><td>대출상품코드</td></tr><tr><td>loan_name</td><td>쉽고 빠른 신용대출</td><td>string</td><td>대출상품명칭</td></tr><tr><td>loan_type</td><td>신용대출</td><td>string</td><td>상품 유형</td></tr></tbody></table>

{% tabs %}
{% tab title="Java" %}

```java
Map<String, Object> eventMap = new HashMap<>();
eventMap.put("event", "w_fill_application");
Map<String, Object> productMap = new HashMap<>();
productMap.put("loan_id", "L39848");
productMap.put("loan_name", "쉽고 빠른 신용대출");
productMap.put("loan_type", "신용대출");
eventMap.put("product", productMap);
DOT.logEvent(eventMap);
```

{% endtab %}

{% tab title="Kotlin" %}

```kotlin
val eventMap = mutableMapOf<String,Any>()
eventMap["event"] = "w_fill_application"
val productMap = mutableMapOf<String,Any>()
productMap["loan_id"] = "L39848"
productMap["loan_name"] = "쉽고 빠른 신용대출"
productMap["loan_type"] = "신용대출"
eventMap["product"] = productMap
DOT.logEvent(eventMap)
```

{% endtab %}

{% tab title="Swift" %}

```swift
let event = NSMutableDictionary()
event["event"] = "w_fill_application"
var product : [String: Any] = [:]
product["loan_id"] = "L39848"
product["loan_name"] = "쉽고 빠른 신용대출"
product["loan_type"] = "신용대출"
event["product"] = product
DOT.logEvent(event)
```

{% endtab %}

{% tab title="Objective-C" %}

```objectivec
NSMutableDictionary *event = [[NSMutableDictionary alloc] init];
[event setValue:@"w_fill_application" forKey:@"event"];
NSMutableDictionary *product = [[NSMutableDictionary alloc] init];
[product setValue:@"L39848" forKey:@"loan_id"];
[product setValue:@"쉽고 빠른 신용대출" forKey:@"loan_name"];
[product setValue:@"신용대출" forKey:@"loan_type"];
[event setValue:@product forKey:@"product"]
[DOT logEvent:event];
```

{% endtab %}

{% tab title="Mobile Webview" %}

```javascript
    var event = new Object();
    event["event"] = "w_fill_application";
    var product = new Object();
    product["loan_id"] = "L39848";
    product["loan_name"] = "쉽고 빠른 신용대출";
    product["loan_type"] = "신용대출";
    event["product"] = product;
    DOT.logEvent(event);
```

{% endtab %}

{% tab title="Website" %}

```javascript
    var event = new Object();
    event["event"] = "w_fill_application";
    var product = new Object();
    product["loan_id"] = "L39848";
    product["loan_name"] = "쉽고 빠른 신용대출";
    product["loan_type"] = "신용대출";
    event["product"] = product;
    WDOT.logEvent(event);
```

{% endtab %}

{% tab title="Flutter" %}

```javascript
// .dart 에서 호출 할 때
Map event = {};
event["event"] = "w_fill_application";
Map product = {};
product["loan_id"] = "L39848";
product["loan_name"] = "쉽고 빠른 신용대출";
product["loan_type"] = "신용대출";
event["product"] = product;
DOT.logEvent(event);

// webview 에서 호출 할 때
var event = new Object();
event["event"] = "w_fill_application";
var product =new Object();
product["loan_id"] = "L39848";
product["loan_name"] = "쉽고 빠른 신용대출";
product["loan_type"] = "신용대출";

event["product"]  = product;

window.flutter_inappwebview.callHandler("DotFlutterDataBridge",JSON.stringify({
      method : "logEvent",
      data: event
}));
```

{% endtab %}

{% tab title="ReactNative" %}

```javascript
// .js 에서 호출 할 때 
NativeModules.DotReactBridge.logEvent(JSON.stringify({
    event : "w_fill_application",
    product : {
    loan_id : "L39848",
    loan_name : "쉽고 빠른 신용대출",
    loan_type : "신용대출"
    }
})); 	

// webview 에서 호출 할 때
window.ReactNativeWebView.postMessage(JSON.stringify({
 	method:"logEvent",
	data : {
	    event : "w_fill_application",
	    product : {
		    loan_id : "L39848",
		    loan_name : "쉽고 빠른 신용대출",
		    loan_type : "신용대출"
	    }
	}  
})); 
```

{% endtab %}

{% tab title="C#" %}

```csharp
Dictionary<string, object> eventDic = new Dictionary<string, object>();
eventDic.Add("event", "w_fill_application");
Dictionary<string, object> product = new Dictionary<string, object>();
product.Add("loan_id", "L39848");
product.Add("loan_name", "쉽고 빠른 신용대출");
product.Add("loan_type", "신용대출");
List<Dictionary<string, object>> productList = new List<Dictionary<string, object>>();
productList.Add(product);
eventDic.Add("product", productList);
DOT.logEvent(eventDic);
```

{% endtab %}
{% endtabs %}

## 대출 신청

대출을 신청하는 시점에 아래 코드를 추가합니다.

#### **선택 속성**

<table data-header-hidden><thead><tr><th>Key</th><th>Value 예시</th><th width="150">Type</th><th>설명</th></tr></thead><tbody><tr><td>Key</td><td>Value 예시</td><td>Type</td><td>설명</td></tr><tr><td>loan_id</td><td>L39848</td><td>string</td><td>대출상품코드</td></tr><tr><td>loan_name</td><td>쉽고 빠른 신용대출</td><td>string</td><td>대출상품명칭</td></tr><tr><td>loan_type</td><td>신용대출</td><td>string</td><td>상품 유형</td></tr><tr><td>currency</td><td>KRW</td><td>string</td><td>결제 통화코드</td></tr><tr><td>g12</td><td>4000000</td><td>float</td><td>대출 신청금액</td></tr><tr><td>g14</td><td>3.125</td><td>float</td><td>대출 이자율</td></tr></tbody></table>

{% tabs %}
{% tab title="Java" %}

```java
Map<String, Object> eventMap = new HashMap<>();
eventMap.put("event", "w_submit_loan");
eventMap.put("currency", "KRW");
eventMap.put("g12", 4000000);
eventMap.put("g14", 3.125);
Map<String, Object> productMap = new HashMap<>();
productMap.put("loan_id", "L39848");
productMap.put("loan_name", "쉽고 빠른 신용대출");
productMap.put("loan_type", "신용대출");
eventMap.put("product", productMap);
DOT.logEvent(eventMap);
```

{% endtab %}

{% tab title="Kotlin" %}

```kotlin
val eventMap = mutableMapOf<String,Any>()
eventMap["event"] = "w_submit_loan"
eventMap["currency"] = "KRW"
eventMap["g12"] = 4000000
eventMap["g14"] = 3.125
val productMap = mutableMapOf<String,Any>()
productMap["loan_id"] = "L39848"
productMap["loan_name"] = "쉽고 빠른 신용대출"
productMap["loan_type"] = "신용대출"
eventMap["product"] = productMap
DOT.logEvent(eventMap)
```

{% endtab %}

{% tab title="Swift" %}

```swift
let event = NSMutableDictionary()
event["event"] = "w_submit_loan"
event["currency"] = "KRW"
event["g12"] = 4000000
event["g14"] = 3.125
var product : [String: Any] = [:]
product["loan_id"] = "L39848"
product["loan_name"] = "쉽고 빠른 신용대출"
product["loan_type"] = "신용대출"
event["product"] = product
DOT.logEvent(event)
```

{% endtab %}

{% tab title="Objective-C" %}

```objectivec
NSMutableDictionary *event = [[NSMutableDictionary alloc] init];
[event setValue:@"w_submit_loan" forKey:@"event"];
[event setValue:@"KRW" forKey:@"currency"];
[event setValue:[NSNumber numberWithInt:4000000] forKey:@"g12"];
[event setValue:[NSNumber numberWithInt:3.125] forKey:@"g14"];
NSMutableDictionary *product = [[NSMutableDictionary alloc] init];
[product setValue:@"L39848" forKey:@"loan_id"];
[product setValue:@"쉽고 빠른 신용대출" forKey:@"loan_name"];
[product setValue:@"신용대출" forKey:@"loan_type"];
[event setValue:@product forKey:@"product"]
[DOT logEvent:event];
```

{% endtab %}

{% tab title="Mobile Webview" %}

```javascript
    var event = new Object();
    event["event"] = "w_submit_loan";
    event["currency"] = "KRW";
    event["g12"] = 4000000;
    event["g14"] = 3.125;
    var product = new Object();
    product["loan_id"] = "L39848";
    product["loan_name"] = "쉽고 빠른 신용대출";
    product["loan_type"] = "신용대출";
    event["product"] = product;
    DOT.logEvent(event);
```

{% endtab %}

{% tab title="Website" %}

```javascript
    var event = new Object();
    event["event"] = "w_submit_loan";
    event["currency"] = "KRW";
    event["g12"] = 4000000;
    event["g14"] = 3.125;
    var product = new Object();
    product["loan_id"] = "L39848";
    product["loan_name"] = "쉽고 빠른 신용대출";
    product["loan_type"] = "신용대출";
    event["product"] = product;
    WDOT.logEvent(event);
```

{% endtab %}

{% tab title="Flutter" %}

```javascript
// .dart 에서 호출 할 때
Map event = {};
event["event"] = "w_submit_loan";
event["currency"] = "KRW";
event["g12"] = 4000000;
event["g14"] = 3.125;
Map product = {};
product["loan_id"] = "L39848";
product["loan_name"] = "쉽고 빠른 신용대출";
product["loan_type"] = "신용대출";
event["product"] = product;
DOT.logEvent(event);

// webview 에서 호출 할 때
var event = new Object();
event["event"] = "w_submit_loan";
event["currency"] = "KRW";
event["g12"] = 4000000;
event["g14"] = 3.125;
var product =new Object();
product["loan_id"] = "L39848";
product["loan_name"] = "쉽고 빠른 신용대출";
product["loan_type"] = "신용대출";

event["product"]  = product;

window.flutter_inappwebview.callHandler("DotFlutterDataBridge",JSON.stringify({
      method : "logEvent",
      data: event
}));

```

{% endtab %}

{% tab title="ReactNative" %}

```javascript
// .js 에서 호출 할 때 
NativeModules.DotReactBridge.logEvent(JSON.stringify({
	    event : "w_submit_loan",
	    currency : "KRW",
	    g12 : 4000000,
	    g14 : 3.125,
	    product : {
	    loan_id : "L39848",
	    loan_name : "쉽고 빠른 신용대출",
	    loan_type : "신용대출"
    }
})); 

// webview 에서 호출 할 때
window.ReactNativeWebView.postMessage(JSON.stringify({
 	method:"logEvent",
	data : {
	    event : "w_submit_loan",
	    currency : "KRW",
	    g12 : 4000000,
	    g14 : 3.125,
	    product : {
		    loan_id : "L39848",
		    loan_name : "쉽고 빠른 신용대출",
		    loan_type : "신용대출"
	    }
	}  
})); 
```

{% endtab %}

{% tab title="C#" %}

```csharp
Dictionary<string, object> eventDic = new Dictionary<string, object>();
eventDic.Add("event", "w_submit_loan");
eventDic.Add("currency", "KRW");
eventDic.Add("g12", 4000000);
eventDic.Add("g14", 3.125);
Dictionary<string, object> product = new Dictionary<string, object>();
product.Add("loan_id", "L39848");
product.Add("loan_name", "쉽고 빠른 신용대출");
product.Add("loan_type", "신용대출");
List<Dictionary<string, object>> productList = new List<Dictionary<string, object>>();
productList.Add(product);
eventDic.Add("product", productList);
DOT.logEvent(eventDic);
```

{% endtab %}
{% endtabs %}

## 대출 승인

대출이 승인된 시점에 아래 코드를 추가합니다.

#### **선택 속성**

<table data-header-hidden><thead><tr><th>Key</th><th>Value 예시</th><th width="150">Type</th><th>설명</th></tr></thead><tbody><tr><td>Key</td><td>Value 예시</td><td>Type</td><td>설명</td></tr><tr><td>transaction_id</td><td>L4788839</td><td>string</td><td>주문번호</td></tr><tr><td>currency</td><td>KRW</td><td>string</td><td>결제 통화코드</td></tr><tr><td>g14</td><td>3.125</td><td>float</td><td>대출 이자율</td></tr><tr><td>loan_id</td><td>L39848</td><td>string</td><td>대출상품코드</td></tr><tr><td>loan_name</td><td>쉽고 빠른 신용대출</td><td>string</td><td>대출상품명칭</td></tr><tr><td>loan_type</td><td>신용대출</td><td>string</td><td>상품 유형</td></tr><tr><td>quantity</td><td>1</td><td>integer</td><td>대출 승인 횟수</td></tr><tr><td>revenue</td><td>4000000</td><td>double</td><td>대출 승인금액</td></tr></tbody></table>

{% tabs %}
{% tab title="Java" %}

```java
Map<String, Object> purchaseMap = new HashMap<>();
purchaseMap.put("transaction_id", "L4788839");
purchaseMap.put("currency", "KRW");
purchaseMap.put("g14", 3.125);
Map<String, Object> productMap = new HashMap<>();
productMap.put("loan_id", "L39848");
productMap.put("loan_name", "쉽고 빠른 신용대출");
productMap.put("loan_type", "신용대출");
productMap.put("quantity", 1);
productMap.put("revenue", 4000000);
purchaseMap.put("product", productMap);
DOT.logPurchase(purchaseMap);
```

{% endtab %}

{% tab title="Kotlin" %}

```kotlin
val purchaseMap = mutableMapOf<String,Any>()
purchaseMap["transaction_id"] = "L4788839"
purchaseMap["currency"] = "KRW"
purchaseMap["g14"] = 3.125
val productMap = mutableMapOf<String,Any>()
productMap["loan_id"] = "L39848"
productMap["loan_name"] = "쉽고 빠른 신용대출"
productMap["loan_type"] = "신용대출"
productMap["quantity"] = 1
productMap["revenue"] = 4000000
purchaseMap["product"] = productMap
DOT.logPurchase(purchaseMap)
```

{% endtab %}

{% tab title="Swift" %}

```swift
let purchase = NSMutableDictionary()
purchase["transaction_id"] = "L4788839"
purchase["currency"] = "KRW"
purchase["g14"] = 3.125
var product : [String: Any] = [:]
product["loan_id"] = "L39848"
product["loan_name"] = "쉽고 빠른 신용대출"
product["loan_type"] = "신용대출"
product["quantity"] = 1
product["revenue"] = 4000000
purchase["product"] = product
DOT.logPurchase(purchase)
```

{% endtab %}

{% tab title="Objective-C" %}

```objectivec
NSMutableDictionary *purchase = [[NSMutableDictionary alloc] init];
[event setValue:@"L4788839" forKey:@"transaction_id"];
[event setValue:@"KRW" forKey:@"currency"];
[event setValue:[NSNumber numberWithInt:3.125] forKey:@"g14"];
NSMutableDictionary *product = [[NSMutableDictionary alloc] init];
[product setValue:@"L39848" forKey:@"loan_id"];
[product setValue:@"쉽고 빠른 신용대출" forKey:@"loan_name"];
[product setValue:@"신용대출" forKey:@"loan_type"];
[product setValue:[NSNumber numberWithInt:1] forKey:@"quantity"];
[product setValue:[NSNumber numberWithInt:4000000] forKey:@"revenue"];
[purchase setValue:@product forKey:@"product"]
[DOT logPurchase:purchase];
```

{% endtab %}

{% tab title="Mobile Webview" %}

```javascript
    var purchase = new Object();
    purchase["transaction_id"] = "L4788839";
    purchase["currency"] = "KRW";
    purchase["g14"] = 3.125;
    var product = new Object();
    product["loan_id"] = "L39848";
    product["loan_name"] = "쉽고 빠른 신용대출";
    product["loan_type"] = "신용대출";
    product["quantity"] = 1;
    product["revenue"] = 4000000;
    purchase["product"] = product;
    DOT.logPurchase(purchase);
```

{% endtab %}

{% tab title="Website" %}

```javascript
    var purchase = new Object();
    purchase["transaction_id"] = "L4788839";
    purchase["currency"] = "KRW";
    purchase["g14"] = 3.125;
    var product = new Object();
    product["loan_id"] = "L39848";
    product["loan_name"] = "쉽고 빠른 신용대출";
    product["loan_type"] = "신용대출";
    product["quantity"] = 1;
    product["revenue"] = 4000000;
    purchase["product"] = product;
    WDOT.logPurchase(purchase);
```

{% endtab %}

{% tab title="Flutter" %}

```javascript
// .dart 에서 호출 할 때 
Map purchase = {};
purchase["transaction_id"] = "L4788839";
purchase["currency"] = "KRW";
purchase["g14"] = 3.125;
Map product = {};
product["loan_id"] = "L39848";
product["loan_name"] = "쉽고 빠른 신용대출";
product["loan_type"] = "신용대출";
product["quantity"] = 1;
product["revenue"] = 4000000;
purchase["product"] = product;
DOT.logPurchase(purchase);


// webview 에서 호출 할 때
var purchase = new Object();
purchase["transaction_id"] = "L4788839";
purchase["currency"] = "KRW";
purchase["g14"] = 3.125;

var productArray = new Array();
for( var inx = 0; inx < purchaselist[대출목록].length; inx++){
var purchaseProduct = purchaselist[inx]; 
var product = new Object();
product["loan_id"] = "L39848";
product["loan_name"] = "쉽고 빠른 신용대출";
product["loan_type"] = "신용대출";
product["quantity"] = 1;
product["revenue"] = 4000000;
productArray.push(product); 

purchase["product"] = productArray;

window.flutter_inappwebview.callHandler("DotFlutterDataBridge",JSON.stringify({
      method : "logPurchase",
      data: purchase
}));
```

{% endtab %}

{% tab title="ReactNative" %}

```javascript
// .js 에서 호출 할 때 
NativeModules.DotReactBridge.logPurchase(JSON.stringify({
    transaction_id : "L4788839",
    currency : "KRW",
    g14 : 3.125,
    product : {
    loan_id : "L39848",
    loan_name : "쉽고 빠른 신용대출",
    loan_type : "신용대출",
    quantity : 1,
    revenue : 4000000
    }
}));

// webview 에서 호출 할 때
window.ReactNativeWebView.postMessage(JSON.stringify({
 	method:"logPurchase",
	data : {
	    transaction_id : "L4788839",
	    currency : "KRW",
	    g14 : 3.125,
	    product : {
		    loan_id : "L39848",
		    loan_name : "쉽고 빠른 신용대출",
		    loan_type : "신용대출",
		    quantity : 1,
		    revenue : 4000000
        	}
	}  
})); 
```

{% endtab %}

{% tab title="C#" %}

```csharp
Dictionary<string, object> purchase = new Dictionary<string, object>();
purchase.Add("transaction_id", "L4788839");
purchase.Add("currency", "KRW");
purchase.Add("g14", 3.125);
Dictionary<string, object> product = new Dictionary<string, object>();
product.Add("loan_id", "L39848");
product.Add("loan_name", "쉽고 빠른 신용대출");
product.Add("loan_type", "신용대출");
product.Add("quantity", 1);
product.Add("revenue", 4000000);
List<Dictionary<string, object>> productList = new List<Dictionary<string, object>>();
productList.Add(product);
purchase.Add("product", productList);
DOT.logPurchase(purchase);
```

{% endtab %}
{% endtabs %}

## 대출 거절

대출이 거절된 시점에 아래 코드를 추가합니다.

#### **선택 속성**

<table data-header-hidden><thead><tr><th>Key</th><th>Value 예시</th><th width="150">Type</th><th>설명</th></tr></thead><tbody><tr><td>Key</td><td>Value 예시</td><td>Type</td><td>설명</td></tr><tr><td>loan_id</td><td>L39848</td><td>string</td><td>대출상품코드</td></tr><tr><td>loan_name</td><td>쉽고 빠른 신용대출</td><td>string</td><td>대출상품명칭</td></tr><tr><td>loan_type</td><td>신용대출</td><td>string</td><td>상품 유형</td></tr></tbody></table>

{% tabs %}
{% tab title="Java" %}

```java
Map<String, Object> eventMap = new HashMap<>();
eventMap.put("event", "w_loan_rejected");
Map<String, Object> productMap = new HashMap<>();
productMap.put("loan_id", "L39848");
productMap.put("loan_name", "쉽고 빠른 신용대출");
productMap.put("loan_type", "신용대출");
eventMap.put("product", productMap);
DOT.logEvent(eventMap);
```

{% endtab %}

{% tab title="Kotlin" %}

```kotlin
val eventMap = mutableMapOf<String,Any>()
eventMap["event"] = "w_loan_rejected"
val productMap = mutableMapOf<String,Any>()
productMap["loan_id"] = "L39848"
productMap["loan_name"] = "쉽고 빠른 신용대출"
productMap["loan_type"] = "신용대출"
eventMap["product"] = productMap
DOT.logEvent(eventMap)
```

{% endtab %}

{% tab title="Swift" %}

```swift
let event = NSMutableDictionary()
event["event"] = "w_loan_rejected"
var product : [String: Any] = [:]
product["loan_id"] = "L39848"
product["loan_name"] = "쉽고 빠른 신용대출"
product["loan_type"] = "신용대출"
event["product"] = product
DOT.logEvent(event)
```

{% endtab %}

{% tab title="Objective-C" %}

```objectivec
NSMutableDictionary *event = [[NSMutableDictionary alloc] init];
[event setValue:@"w_loan_rejected" forKey:@"event"];
NSMutableDictionary *product = [[NSMutableDictionary alloc] init];
[product setValue:@"L39848" forKey:@"loan_id"];
[product setValue:@"쉽고 빠른 신용대출" forKey:@"loan_name"];
[product setValue:@"신용대출" forKey:@"loan_type"];
[event setValue:@product forKey:@"product"]
[DOT logEvent:event];
```

{% endtab %}

{% tab title="Mobile Webview" %}

```javascript
    var event = new Object();
    event["event"] = "w_loan_rejected";
    var product = new Object();
    product["loan_id"] = "L39848";
    product["loan_name"] = "쉽고 빠른 신용대출";
    product["loan_type"] = "신용대출";
    event["product"] = product;
    DOT.logEvent(event);
```

{% endtab %}

{% tab title="Website" %}

```javascript
    var event = new Object();
    event["event"] = "w_loan_rejected";
    var product = new Object();
    product["loan_id"] = "L39848";
    product["loan_name"] = "쉽고 빠른 신용대출";
    product["loan_type"] = "신용대출";
    event["product"] = product;
    WDOT.logEvent(event);
```

{% endtab %}

{% tab title="Flutter" %}

```javascript
// .dart 에서 호출 할 때
Map event = {};
event["event"] = "w_loan_rejected";
Map product = {};
product["loan_id"] = "L39848";
product["loan_name"] = "쉽고 빠른 신용대출";
product["loan_type"] = "신용대출";
event["product"] = product;
DOT.logEvent(event);

// webview 에서 호출 할 때
var event = new Object();
event["event"] = "w_loan_rejected";
var product =new Object();
product["loan_id"] = "L39848";
product["loan_name"] = "쉽고 빠른 신용대출";
product["loan_type"] = "신용대출";

event["product"]  = product;

window.flutter_inappwebview.callHandler("DotFlutterDataBridge",JSON.stringify({
      method : "logEvent",
      data: event
}));
```

{% endtab %}

{% tab title="ReactNative" %}

```javascript
NativeModules.DotReactBridge.logEvent(JSON.stringify({
    event : "w_loan_rejected",
    product : {
    loan_id : "L39848",
    loan_name : "쉽고 빠른 신용대출",
    loan_type : "신용대출"
    }
})); 

// webview 에서 호출 할 때
window.ReactNativeWebView.postMessage(JSON.stringify({
 	method:"logEvent",
	data : {
	    event : "w_loan_rejected",
	    product : {
		    loan_id : "L39848",
		    loan_name : "쉽고 빠른 신용대출",
		    loan_type : "신용대출"
	    }
	}  
})); 
```

{% endtab %}

{% tab title="C#" %}

```csharp
Dictionary<string, object> eventDic = new Dictionary<string, object>();
eventDic.Add("event", "w_loan_rejected");
Dictionary<string, object> product = new Dictionary<string, object>();
product.Add("loan_id", "L39848");
product.Add("loan_name", "쉽고 빠른 신용대출");
product.Add("loan_type", "신용대출");
List<Dictionary<string, object>> productList = new List<Dictionary<string, object>>();
productList.Add(product);
eventDic.Add("product", productList);
DOT.logEvent(eventDic);
```

{% endtab %}
{% endtabs %}

## 대출 상환

대출이 상환된 시점에 아래 코드를 추가합니다.

#### **선택 속성**

<table data-header-hidden><thead><tr><th>Key</th><th>Value 예시</th><th width="150">Type</th><th>설명</th></tr></thead><tbody><tr><td>Key</td><td>Value 예시</td><td>Type</td><td>설명</td></tr><tr><td>loan_id</td><td>L39848</td><td>string</td><td>대출상품코드</td></tr><tr><td>loan_name</td><td>쉽고 빠른 신용대출</td><td>string</td><td>대출상품명칭</td></tr><tr><td>loan_type</td><td>신용대출</td><td>string</td><td>상품 유형</td></tr><tr><td>repayment_id</td><td>RP829</td><td>string</td><td>상환코드</td></tr><tr><td>g13</td><td>500000</td><td>float</td><td>상환 금액</td></tr></tbody></table>

{% tabs %}
{% tab title="Java" %}

```java
Map<String, Object> eventMap = new HashMap<>();
eventMap.put("event", "w_repayment");
eventMap.put("repayment_id", "RP829");
eventMap.put("g13", 500000);
Map<String, Object> productMap = new HashMap<>();
productMap.put("loan_id", "L39848");
productMap.put("loan_name", "쉽고 빠른 신용대출");
productMap.put("loan_type", "신용대출");
eventMap.put("product", productMap);
DOT.logEvent(eventMap);
```

{% endtab %}

{% tab title="Kotlin" %}

```kotlin
val eventMap = mutableMapOf<String,Any>()
eventMap["event"] = "w_repayment"
eventMap["repayment_id"] = "RP829"
eventMap["g13"] = 500000
val productMap = mutableMapOf<String,Any>()
productMap["loan_id"] = "L39848"
productMap["loan_name"] = "쉽고 빠른 신용대출"
productMap["loan_type"] = "신용대출"
eventMap["product"] = productMap
DOT.logEvent(eventMap)
```

{% endtab %}

{% tab title="Swift" %}

```swift
let event = NSMutableDictionary()
event["event"] = "w_repayment"
event["repayment_id"] = "RP829"
event["g13"] = 500000
var product : [String: Any] = [:]
product["loan_id"] = "L39848"
product["loan_name"] = "쉽고 빠른 신용대출"
product["loan_type"] = "신용대출"
event["product"] = product
DOT.logEvent(event)
```

{% endtab %}

{% tab title="Objective-C" %}

```objectivec
NSMutableDictionary *event = [[NSMutableDictionary alloc] init];
[event setValue:@"w_repayment" forKey:@"event"];
[event setValue:@"RP829" forKey:@"repayment_id"];
[event setValue:[NSNumber numberWithInt:500000] forKey:@"g13"];
NSMutableDictionary *product = [[NSMutableDictionary alloc] init];
[product setValue:@"L39848" forKey:@"loan_id"];
[product setValue:@"쉽고 빠른 신용대출" forKey:@"loan_name"];
[product setValue:@"신용대출" forKey:@"loan_type"];
[event setValue:@product forKey:@"product"]
[DOT logEvent:event];
```

{% endtab %}

{% tab title="Mobile Webview" %}

```javascript
    var event = new Object();
    event["event"] = "w_repayment";
    event["repayment_id"] = "RP829";
    event["g13"] = 500000;
    var product = new Object();
    product["loan_id"] = "L39848";
    product["loan_name"] = "쉽고 빠른 신용대출";
    product["loan_type"] = "신용대출";
    event["product"] = product;
    DOT.logEvent(event);
```

{% endtab %}

{% tab title="Website" %}

```javascript
    var event = new Object();
    event["event"] = "w_repayment";
    event["repayment_id"] = "RP829";
    event["g13"] = 500000;
    var product = new Object();
    product["loan_id"] = "L39848";
    product["loan_name"] = "쉽고 빠른 신용대출";
    product["loan_type"] = "신용대출";
    event["product"] = product;
    WDOT.logEvent(event);
```

{% endtab %}

{% tab title="Flutter" %}

```javascript
// .dart 에서 호출 할 때
Map event = {};
event["event"] = "w_repayment";
event["repayment_id"] = "RP829";
event["g13"] = 500000;
Map product = {};
product["loan_id"] = "L39848";
product["loan_name"] = "쉽고 빠른 신용대출";
product["loan_type"] = "신용대출";
event["product"] = product;
DOT.logEvent(event);

// webview 에서 호출 할 때
var event = new Object();
event["event"] = "w_repayment";
event["repayment_id"] = "RP829";
event["g13"] = 500000;
var product =new Object();
product["loan_id"] = "L39848";
product["loan_name"] = "쉽고 빠른 신용대출";
product["loan_type"] = "신용대출";

event["product"]  = product;

window.flutter_inappwebview.callHandler("DotFlutterDataBridge",JSON.stringify({
      method : "logEvent",
      data: event
}));
```

{% endtab %}

{% tab title="ReactNative" %}

```javascript
// .js 에서 호출 할 때 
NativeModules.DotReactBridge.logEvent(JSON.stringify({
    event : "w_repayment",
    repayment_id : "RP829",
    g13 : 500000,
    product : {
    loan_id : "L39848",
    loan_name : "쉽고 빠른 신용대출",
    loan_type : "신용대출"
    }
}));

// webview 에서 호출 할 때
window.ReactNativeWebView.postMessage(JSON.stringify({
 	method:"logEvent",
	data : {
	    event : "w_repayment",
	    repayment_id : "RP829",
	    g13 : 500000,
	    product : {
		    loan_id : "L39848",
		    loan_name : "쉽고 빠른 신용대출",
		    loan_type : "신용대출"
	    }
	}  
})); 
```

{% endtab %}

{% tab title="C#" %}

```csharp
Dictionary<string, object> eventDic = new Dictionary<string, object>();
eventDic.Add("event", "w_repayment");
eventDic.Add("repayment_id", "RP829");
eventDic.Add("g13", 500000);
Dictionary<string, object> product = new Dictionary<string, object>();
product.Add("loan_id", "L39848");
product.Add("loan_name", "쉽고 빠른 신용대출");
product.Add("loan_type", "신용대출");
List<Dictionary<string, object>> productList = new List<Dictionary<string, object>>();
productList.Add(product);
eventDic.Add("product", productList);
DOT.logEvent(eventDic);
```

{% endtab %}
{% endtabs %}

## 대출 최종상환 완료

대출의 최종상환이 완료된 시점에 아래 코드를 추가합니다.

#### **선택 속성**

<table data-header-hidden><thead><tr><th>Key</th><th>Value 예시</th><th width="150">Type</th><th>설명</th></tr></thead><tbody><tr><td>Key</td><td>Value 예시</td><td>Type</td><td>설명</td></tr><tr><td>loan_id</td><td>L39848</td><td>string</td><td>대출상품코드</td></tr><tr><td>loan_name</td><td>쉽고 빠른 신용대출</td><td>string</td><td>대출상품명칭</td></tr><tr><td>loan_type</td><td>신용대출</td><td>string</td><td>상품 유형</td></tr><tr><td>repayment_id</td><td>RP829</td><td>string</td><td>상환코드</td></tr><tr><td>g13</td><td>500000</td><td>float</td><td>상환 금액</td></tr></tbody></table>

{% tabs %}
{% tab title="Java" %}

```java
Map<String, Object> eventMap = new HashMap<>();
eventMap.put("event", "w_finish_repayment");
eventMap.put("repayment_id", "RP829");
eventMap.put("g13", 500000);
Map<String, Object> productMap = new HashMap<>();
productMap.put("loan_id", "L39848");
productMap.put("loan_name", "쉽고 빠른 신용대출");
productMap.put("loan_type", "신용대출");
eventMap.put("product", productMap);
DOT.logEvent(eventMap);
```

{% endtab %}

{% tab title="Kotlin" %}

```kotlin
val eventMap = mutableMapOf<String,Any>()
eventMap["event"] = "w_finish_repayment"
eventMap["repayment_id"] = "RP829"
eventMap["g13"] = 500000
val productMap = mutableMapOf<String,Any>()
productMap["loan_id"] = "L39848"
productMap["loan_name"] = "쉽고 빠른 신용대출"
productMap["loan_type"] = "신용대출"
eventMap["product"] = productMap
DOT.logEvent(eventMap)
```

{% endtab %}

{% tab title="Swift" %}

```swift
let event = NSMutableDictionary()
event["event"] = "w_finish_repayment"
event["repayment_id"] = "RP829"
event["g13"] = 500000
var product : [String: Any] = [:]
product["loan_id"] = "L39848"
product["loan_name"] = "쉽고 빠른 신용대출"
product["loan_type"] = "신용대출"
event["product"] = product
DOT.logEvent(event)e
```

{% endtab %}

{% tab title="Objective-C" %}

```objectivec
NSMutableDictionary *event = [[NSMutableDictionary alloc] init];
[event setValue:@"w_finish_repayment" forKey:@"event"];
[event setValue:@"RP829" forKey:@"repayment_id"];
[event setValue:[NSNumber numberWithInt:500000] forKey:@"g13"];
NSMutableDictionary *product = [[NSMutableDictionary alloc] init];
[product setValue:@"L39848" forKey:@"loan_id"];
[product setValue:@"쉽고 빠른 신용대출" forKey:@"loan_name"];
[product setValue:@"신용대출" forKey:@"loan_type"];
[event setValue:@product forKey:@"product"]
[DOT logEvent:event];
```

{% endtab %}

{% tab title="Mobile Webview" %}

```javascript
    var event = new Object();
    event["event"] = "w_finish_repayment";
    event["repayment_id"] = "RP829";
    event["g13"] = 500000;
    var product = new Object();
    product["loan_id"] = "L39848";
    product["loan_name"] = "쉽고 빠른 신용대출";
    product["loan_type"] = "신용대출";
    event["product"] = product;
    DOT.logEvent(event);
```

{% endtab %}

{% tab title="Website" %}

```javascript
    var event = new Object();
    event["event"] = "w_finish_repayment";
    event["repayment_id"] = "RP829";
    event["g13"] = 500000;
    var product = new Object();
    product["loan_id"] = "L39848";
    product["loan_name"] = "쉽고 빠른 신용대출";
    product["loan_type"] = "신용대출";
    event["product"] = product;
    WDOT.logEvent(event);
```

{% endtab %}

{% tab title="Flutter" %}

```javascript
// .dart 에서 호출 할 때
Map event = {};
event["event"] = "w_finish_repayment";
event["repayment_id"] = "RP829";
event["g13"] = 500000;
Map product = {};
product["loan_id"] = "L39848";
product["loan_name"] = "쉽고 빠른 신용대출";
product["loan_type"] = "신용대출";
event["product"] = product;
DOT.logEvent(event);

// webview 에서 호출 할 때
var event = new Object();
event["event"] = "w_finish_repayment";
event["repayment_id"] = "RP829";
event["g13"] = 500000;
var product =new Object();
product["loan_id"] = "L39848";
product["loan_name"] = "쉽고 빠른 신용대출";
product["loan_type"] = "신용대출";

event["product"]  = product;

window.flutter_inappwebview.callHandler("DotFlutterDataBridge",JSON.stringify({
      method : "logEvent",
      data: event
}));
```

{% endtab %}

{% tab title="ReactNative" %}

```javascript
// .js 에서 호출 할 때 
NativeModules.DotReactBridge.logEvent(JSON.stringify({
    event : "w_finish_repayment",
    repayment_id : "RP829",
    g13 : 500000,
    product : {
    loan_id : "L39848",
    loan_name : "쉽고 빠른 신용대출",
    loan_type : "신용대출"
    }
}));

// webview 에서 호출 할 때
window.ReactNativeWebView.postMessage(JSON.stringify({
 	method:"logEvent",
	data : {
	    event : "w_finish_repayment",
	    repayment_id : "RP829",
	    g13 : 500000,
	    product : {
		    loan_id : "L39848",
		    loan_name : "쉽고 빠른 신용대출",
		    loan_type : "신용대출"
	    }
	}  
})); 
```

{% endtab %}

{% tab title="C#" %}

```csharp
Dictionary<string, object> eventDic = new Dictionary<string, object>();
eventDic.Add("event", "w_finish_repayment");
eventDic.Add("repayment_id", "RP829");
eventDic.Add("g13", 500000);
Dictionary<string, object> product = new Dictionary<string, object>();
product.Add("loan_id", "L39848");
product.Add("loan_name", "쉽고 빠른 신용대출");
product.Add("loan_type", "신용대출");
List<Dictionary<string, object>> productList = new List<Dictionary<string, object>>();
productList.Add(product);
eventDic.Add("product", productList);
DOT.logEvent(eventDic);
```

{% endtab %}
{% endtabs %}

## 회원 탈퇴

회원 탈퇴가 완료된 시점에 아래 코드를 추가합니다.

<table data-header-hidden><thead><tr><th>Key</th><th>Value 예시</th><th width="150">Type</th><th>설명</th></tr></thead><tbody><tr><td>Key</td><td>Value 예시</td><td>Type</td><td>설명</td></tr><tr><td>signoutTp</td><td>미이용</td><td>string</td><td>탈퇴사유</td></tr></tbody></table>

{% tabs %}
{% tab title="Java" %}

```java
Map<String, Object> eventMap = new HashMap<>();
eventMap.put("event", "w_signout_complete");
eventMap.put("signoutTp", "미이용");
DOT.logEvent(eventMap);
```

{% endtab %}

{% tab title="Kotlin" %}

```kotlin
 val eventMap = mutableMapOf<String,Any>()
 eventMap["event"] = "w_signout_complete"
 eventMap["signupTp"] = "email"
 DOT.logEvent(eventMap)
```

{% endtab %}

{% tab title="Swift" %}

```swift
let event = NSMutableDictionary()
event["event"] = "w_signout_complete"
event["signupTp"] = "email"
DOT.logEvent(event)
```

{% endtab %}

{% tab title="Objective-C" %}

```objectivec
NSMutableDictionary *event = [[NSMutableDictionary alloc] init];
[event setValue:@"w_signout_complete" forKey:@"event"];
[event setValue:@"email" forKey:@"signupTp"];
[DOT logEvent:event];
```

{% endtab %}

{% tab title="Mobile Webview" %}

```javascript
    var event = new Object();
    event["event"] = "w_signout_complete";
    event["signupTp"] = "email";
    DOT.logEvent(event);
```

{% endtab %}

{% tab title="Website" %}

```javascript
    var event = new Object();
    event["event"] = "w_signout_complete";
    event["signupTp"] = "email";
    WDOT.logEvent(event);
```

{% endtab %}

{% tab title="Flutter" %}

```javascript
// .dart 에서 호출 할 때 
Map signUp = {}; 
signUp["event"] = "w_signout_complete";
signUp["signupTp"] = "email";  
DOT.logEvent(signUp); 

// webview 에서 호출 할 때
window.flutter_inappwebview.callHandler("DotFlutterDataBridge",JSON.stringify({
      method : "logEvent",
      data: {
              event : "w_signout_complete",
              signupTp : "email"
      }
}));
```

{% endtab %}

{% tab title="ReactNative" %}

```javascript
// .js 에서 호출 할 때 
NativeModules.DotReactBridge.logEvent(JSON.stringify({
	event : "w_signout_complete",
	signupTp : "email"
}));


// webview 에서 호출 할 때
window.ReactNativeWebView.postMessage(JSON.stringify({
 	method:"logEvent",
	data : {
		event : "w_signout_complete",
		signupTp : "email"
	}  
})); 
```

{% endtab %}

{% tab title="C#" %}

```csharp
Dictionary<string, object> eventDic= new Dictionary<string, object>();
eventDic.Add("event", "w_signout_complete");
eventDic.Add("signupTp", "email");
DOT.logEvent(eventDic);
```

{% endtab %}
{% endtabs %}


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://document.wisetracker.co.kr/v2-developer/in-app-event/event-list/fintech.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
