Bootpay Javasrcipt Library


Keywords
๊ฒฐ์ œ, payment, ๊ฒฐ์ œ์—ฐ๋™, PG์—ฐ๋™, PG, ๋ถ€ํŠธํŽ˜์ด, bootpay
License
ISC
Install
npm install bootpay-js@3.3.5

Documentation

Bootpay JS

ํ˜„์žฌ ๋ฒ„์ „ API-v1 ์ €์žฅ์†Œ์ž…๋‹ˆ๋‹ค

  • API-v2 (SDK 4.0.0) ๋ฒ„์ „์€ private ์ €์žฅ์†Œ๋กœ ๋ณ€๊ฒฝ๋˜์—ˆ๊ณ , https://www.npmjs.com/package/@bootpay/client-js ๋กœ ๋ณ€๊ฒฝ๋˜์—ˆ์Šต๋‹ˆ๋‹ค.
  • API-v2 (SDK 4.0.0) ๋ฒ„์ „์€ typescript๋กœ ์ž‘์„ฑ๋˜์—ˆ์œผ๋ฉฐ, SSR ๊ธฐ๋ฐ˜ ํ”„๋ ˆ์ž„์›Œํฌ, CDN๋“ฑ ๋ชจ๋‘ ์ง€์›ํ•ฉ๋‹ˆ๋‹ค.
  • ๊ธฐ๋ณธ v1 ๋ฒ„์ „์€ ๊ณ„์†ํ•ด์„œ ์œ ์ง€๋ณด์ˆ˜ํ•  ์˜ˆ์ •์ด๊ณ , ์‹ ๊ทœ ๊ธฐ๋Šฅ์€ v2๋กœ ์ง€์›๋ฉ๋‹ˆ๋‹ค.

Change Log

3.3.6 (Stable)

์˜ค๋ž˜๋œ development-package-dependency ์ •๋ฆฌ

3.3.5

babel-cli > glob-parent ๋ฒ„์ „์œผ๋กœ ์ธํ•œ ๋ณด์•ˆ ์ทจ์•ฝ์  ์ œ๊ฑฐ

3.3.4

์˜ค๋ฅ˜ ๋ฐœ์ƒ์‹œ event ์ „์†ก ๋ฒ„๊ทธ ์ˆ˜์ • ( error event์— Message๊ฐ€ null์ธ ๊ฒฝ์šฐ ์ฒ˜๋ฆฌ ์•ˆ๋จ )

SuperAgent์—์„œ ์ด๋ฒคํŠธ ์ „์†ก์‹œ ์•”ํ˜ธํ™”๋  ๋•Œ ์˜ค๋ฅ˜ ์˜ˆ์™ธ์ฒ˜๋ฆฌ ์ถ”๊ฐ€

3.3.3

๊ฒฐ์ œ ์ฐฝ ์ƒํƒœ ์ •๋ณด ์ „์†ก์‹œ ์˜ค๋ฅ˜๊ฐ€ ๋‚˜๋ฉด ๊ด€๋ จ ์—๋Ÿฌ์ฒ˜๋ฆฌ ๋ฒ„๊ทธ ์ˆ˜์ •

์นด์นด์˜ค ์ •๊ธฐ๊ฒฐ์ œ 0์› ๊ฒฐ์ œ๋กœ ์„ค์ •ํ•˜๋ฉด ๋นŒ๋งํ‚ค๋งŒ ๊ฐ€์ ธ์˜ฌ ์ˆ˜ ์žˆ๋„๋ก ๊ฐœ์„ 

3.3.2

์›”์ปดํŽ˜์ด๋จผ์ธ  ์นด๋“œ์ •๊ธฐ๊ฒฐ์ œ(๋””์ง€ํ„ธ) ๋ฒ„๊ทธ ์ˆ˜์ •

  • ๊ฒฐ์ œ๋ฐฉ๋ฒ• digital_card_rebill ์ถ”๊ฐ€

3.3.1

ํ†ตํ•ฉ๊ฒฐ์ œ 1000์› ๋ฏธ๋งŒ ๊ฒฐ์ œ ํŒ์—… ๋ฒ„๊ทธ ์ˆ˜์ •

  • method blank ์ฒ˜๋ฆฌ ์ถ”๊ฐ€, methods ๋‹ค๊ฒฐ์ œ ์š”์ฒญ์‹œ validation ์ถ”๊ฐ€

3.3.0

popupAsyncRequest ์ถ”๊ฐ€

  • promise ๊ธฐ๋ฐ˜์œผ๋กœ ๋™์ž‘ํ•˜๋Š” ํ•จ์ˆ˜๋ฅผ ์ „๋‹ฌํ•  ๊ฒฝ์šฐ resolveํ•จ์ˆ˜์— request์‹œ ํ•„์š”ํ•œ ๋ฐ์ดํ„ฐ๋ฅผ ์ „๋‹ฌํ•˜๋ฉด ํŒ์—…์ด ๋œจ๋ฉด์„œ ๊ฒฐ์ œ์ฐฝ์ด ์ƒ์„ฑ
  • ios safari์˜ ๊ฒฝ์šฐ scroll๋กœ ์ธํ•ด iFrame์˜ ํ„ฐ์น˜์˜์—ญ์— ๋ฒ„๊ทธ๊ฐ€ ์ƒ๊ธฐ๋Š” ๋ณ€์ˆ˜๋กœ ์ธํ•ด ํ•ด๋‹น ๋ฌธ์ œ๋ฅผ ํŒ์—…์œผ๋กœ ๋Œ€์ฒด
  • popupAsyncRequest๋ฅผ ํ•  ๊ฒฝ์šฐ ์กฐ๊ฑด์„ ์ค˜์„œ ํŒ์—…์ฐฝ์„ ๋„์šธ์ง€ ์•„๋‹ˆ๋ฉด ์ผ๋ฐ˜์ ์ธ iFrame์„ ๋„์šธ์ง€ ์„ ํƒ์ด ๊ฐ€๋Šฅ

๋ชจ๋ฐ”์ผ custom method ์‹คํ–‰ ์ตœ์ ํ™”

  • ๋ชจ๋ฐ”์ผ์—์„œ custom ํ•จ์ˆ˜ ์‹คํ–‰์‹œ ๊ฐ™์€ thread ์—์„œ ๋™์‹œ ์‹คํ–‰๋  ๊ฒฝ์šฐ ๋ฌด์‹œ๋˜๋Š” ํ˜„์ƒ ์ œ๊ฑฐ

ํŒ์—…์œผ๋กœ ํ†ตํ•ฉ๊ฒฐ์ œ์ฐฝ ์ง„ํ–‰

  • ํŒ์—…์œผ๋กœ ํ†ตํ•ฉ์ฐฝ์ด ๊ฐ€๋Šฅํ•˜๋„๋ก ์ˆ˜์ •

3.2.6

๋ฒ„๊ทธ ์ˆ˜์ •

  • ๊ฒฐ์ œ ์‹œ์ž‘ ์ค‘ ๊ธˆ์•ก์œผ๋กœ ์ธํ•œ ์˜ค๋ฅ˜๊ฐ€ ๋ฐœ์ƒ๋˜์—ˆ์„ ๋•Œ ๋‹ค์‹œ ๊ฒฐ์ œ์ฐฝ์ด ๋œจ์ง€ ์•Š๋Š” ๋ฒ„๊ทธ ์ˆ˜์ •

3.2.5

๊ธฐ๋Šฅ ์ถ”๊ฐ€

  • ๊ฐ€์ƒ๊ณ„์ขŒ ํŒ์—…์œผ๋กœ ๋„์› ์„ ๊ฒฝ์šฐ iFrame์ฐฝ์œผ๋กœ ๊ฐ€์ƒ๊ณ„์ขŒ ์ž…๊ธˆ ๊ฒฐ๊ณผ๋ฅผ ๋ณผ ์ˆ˜ ์žˆ๋„๋ก ๊ธฐ๋Šฅ ์ถ”๊ฐ€

3.2.4

๊ธฐ๋Šฅ ์ถ”๊ฐ€

  • ํŒ์—…์œผ๋กœ ๊ฒฐ์ œ์ฐฝ ์ง„ํ–‰์‹œ ๋ถ€๋ชจ์ฐฝ์—์„œ ๊ฒฐ์ œ์ฐฝ ๋‹ซ๊ธฐ ๋ฒ„ํŠผ ํ™œ์„ฑํ™”๊ธฐ๋Šฅ ์ถ”๊ฐ€
  • ํŒ์—… ๊ด€๋ จ ์ด๋ฒคํŠธ ๋ฒ„๊ทธ ์ˆ˜์ •
  • ๋‹จ์ผ ๊ฒฐ์ œ Lock ์ถ”๊ฐ€

3.2.3

๊ธฐ๋Šฅ ๋ณ€๊ฒฝ

  • ๋ชจ๋ฐ”์ผ ์‚ฌํŒŒ๋ฆฌ์—์„œ ํŒ์—… ๊ฒฐ์ œ์ฐฝ์„ ๋„์šธ ๊ฒฝ์šฐ ๋™์˜์ฐฝ์ด ๋‚˜์™”์ง€๋งŒ ๋ชจ๋“  ๋ธŒ๋ผ์šฐ์ € ๋ชจ๋“  OS์— ๋Œ€ํ•ด ๋™์˜์ฐฝ์ด ๋œจ๋„๋ก ๋ณ€๊ฒฝ ( window.opener ๊ด€๋ จ ๋ฒ„๊ทธ ํšŒํ”ผ )
  • quick_popup ๊ธฐ๋Šฅ ์ถ”๊ฐ€ ( ๊ฒฐ์ œํ•˜๊ธฐ ๋ฒ„ํŠผ์„ ๋ˆ„๋ฅธ ํ›„ ํŒ์—…์ด ๋œจ๊ธฐ ๊นŒ์ง€ ajax(ํŒŒํญ&ํฌ๋กฌ)๋‚˜ 300ms์ด์ƒ ์ง€์—ฐ(์‚ฌํŒŒ๋ฆฌ) ์—†์ด ํŒ์—… ์ฐจ๋‹จ ์—†์ด ๋ฐ”๋กœ ๊ฒฐ์ œ์ฐฝ์„ ํŒ์—…์œผ๋กœ ๋„์šฐ๊ธฐ ์›ํ• ๋•Œ ์“ฐ๋Š” ๊ธฐ๋Šฅ )

3.2.2

์ƒˆ๋กœ์šด ๊ธฐ๋Šฅ

  • Easy Card ๊ธฐ๋Šฅ ์ถ”๊ฐ€ ( ๋ถ€ํŠธํŽ˜์ด์—์„œ ์ œ๊ณตํ•˜๋Š” ๊ฐ„ํŽธ๊ฒฐ์ œ์นด๋“œ ๊ธฐ๋Šฅ ์ถ”๊ฐ€ )

3.2.1

๋ฒ„๊ทธ ์ˆ˜์ •

  • ๊ฒฐ์ œ ์™„๋ฃŒ ํ›„ ์ผ๋ถ€ ์ƒํ’ˆ๋ช…์˜ ์กฐ๊ฑด์—์„œ ํŒ์—… ์ฐฝ์—์„œ ๋ชป๋Œ์•„์˜ค๋Š” ๋ฒ„๊ทธ ์ˆ˜์ •
  • UserToken ์ •๋ณด๋ฅผ ๋ณด๋‚ด๋Š” Params ์ถ”๊ฐ€ ( ๊ฐ„ํŽธ๊ฒฐ์ œ์šฉ )
  • ๊ฒฐ์ œ ํŒ์—… spec์ด undefined์ผ ๊ฒฝ์šฐ ๊ฒฐ์ œ ์ง„ํ–‰ ๋ถˆ๊ฐ€ ๋ฒ„๊ทธ ์ˆ˜์ •

3.2.0

์ƒˆ๋กœ์šด ๊ธฐ๋Šฅ

  • ๋„ค์ด๋ฒ„ํŽ˜์ด ํŒ์—… ์œ ๋„ ๋ฒ„ํŠผ์ด ๋„ค์ด๋ฒ„ํŽ˜์ด ์ƒ‰์ƒ์œผ๋กœ ํ†ต์ผ ๋˜์—ˆ์Šต๋‹ˆ๋‹ค.
  • ํŒ์—…์„ ๋„์šฐ๊ธฐ ์ „ about:blank๋กœ ๋ง‰ํ˜”๋Š”์ง€ ํ™•์ธํ•˜๊ณ  ์•ˆ๋ง‰ํ˜”์œผ๋ฉด ๋ฐ”๋กœ ๋„์šฐ๊ณ  ๋ง‰ํ˜”์œผ๋ฉด ํŒ์—…์ฐฝ์œผ๋กœ ์œ ๋„ํ•˜๋Š” ๋ฒ„ํŠผ์„ ๋ณด์—ฌ์ฃผ๋Š” ๋กœ์ง์ด ์ถ”๊ฐ€๋˜์—ˆ์Šต๋‹ˆ๋‹ค.

๋ฒ„๊ทธ ์ˆ˜์ •

  • ํŽ˜์ด์•ฑ ๋„ค์ด๋ฒ„ํŽ˜์ด IE11์—์„œ ๊ฒฐ์ œ ์™„๋ฃŒ ์ฒ˜๋ฆฌ ์•ˆ๋˜๋Š” ๋ฒ„๊ทธ ์ˆ˜์ •๋˜์—ˆ์Šต๋‹ˆ๋‹ค.

๋ฏธํ•ด๊ฒฐ ์ด์Šˆ

  • ํŽ˜์ด์•ฑ ๋„ค์ด๋ฒ„ํŽ˜์ด๋Š” ๋„ค์ด๋ฒ„ ๋ณด์•ˆ์ •์ฑ…์œผ๋กœ ์ธํ•ด ํŒ์—…์œผ๋กœ ์ง„ํ–‰๋ฉ๋‹ˆ๋‹ค. PC ์‚ฌํŒŒ๋ฆฌ์˜ ๊ฒฝ์šฐ ์‚ฌํŒŒ๋ฆฌ ๋ฒ„๊ทธ๋กœ ์ธํ•ด ํŒ์—… ์•ˆ์—์„œ ๋‹ค๋ฅธ ํŒ์—…์„ ๋„์šธ ๋•Œ ๋„ค์ด๋ฒ„ํŽ˜์ด์ชฝ์—์„œ ํŒ์—… (์ด๋ฏธ ์ฐจ๋‹จํ•ด์ œ๊ฐ€ ๋˜์—ˆ์œผ๋‚˜) ์ฐจ๋‹จํ•ด์ œ๋ฅผ ํ•ด๋‹ฌ๋ผ๋Š” ๋ฌธ์ œ๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค. ํ˜„์žฌ๋Š” ๋„ค์ด๋ฒ„ํŽ˜์ด๊ฐ€ PC ์‚ฌํŒŒ๋ฆฌ์—์„œ๋Š” ์ง„ํ–‰์ด ๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

3.1.1

์ƒˆ๋กœ์šด ๊ธฐ๋Šฅ

  • delivery_price ( ๋ฐฐ์†ก๋น„ ) ๋ฅผ ์ถ”๊ฐ€๋กœ ๋ฐ›์Šต๋‹ˆ๋‹ค.

๋ณ€๊ฒฝ๋œ ์ 

  • ๋‹ค๋‚  ๋ณธ์ธ์ธ์ฆ ๊ด€๋ จ ์ƒˆ๋กœ์šด ์•”ํ˜ธํ™” ๋ฐฉ์‹์œผ๋กœ ์‚ฌ์šฉ๋ฉ๋‹ˆ๋‹ค. ( ๊ธฐ์กด 3.1.0 ์ดํ•˜ ์‚ฌ์šฉ์ž๋ถ„๋“ค์€ unique๊ฐ’์ด ๋‹ฌ๋ผ์งˆ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์œ ์˜ํ•ด์ฃผ์‹œ๊ธฐ ๋ฐ”๋ž๋‹ˆ๋‹ค. )

3.1.0

๋ณ€๊ฒฝ๋œ ์ 

  • Progress ์• ๋‹ˆ๋ฉ”์ด์…˜ ๋ณ€๊ฒฝ
  • ๊ฒฐ์ œ์ฐฝ Size Stylesheet ๋ณ€๊ฒฝ

3.0.8

์ƒˆ๋กœ์šด ๊ธฐ๋Šฅ

  • ๊ฒฐ์ œ๋งํฌ ์ƒ์„ฑ ํ›„ ๊ฒฐ์ œ์ฐฝ์„ ๋„์šฐ๋Š” ๊ธฐ๋Šฅ ์ถ”๊ฐ€ ( ๊ฒฐ์ œ ์š”์ฒญ REST API๋Š” ๊ณต๊ฐœ ์˜ˆ์ • )

3.0.7

๊ธฐ๋Šฅ๋ณ€๊ฒฝ

  • ํŒ์—… ๊ฒฐ์ œ์‹œ ํŒ์—… Instance ์ฒดํฌ interval 3000ms -> 1000ms๋กœ ๋ณ€๊ฒฝ
  • extra popup option ( ๊ฐ•์ œ์ ์œผ๋กœ ํŒ์—…์„ ๋„์›Œ์„œ ๊ฒฐ์ œํ•˜๋Š” ๊ธฐ๋Šฅ ) ๊ธฐ๋Šฅ ์ถ”๊ฐ€ ( ์ผ๋ถ€ PG๋งŒ ์‚ฌ์šฉ ๊ฐ€๋Šฅ )

3.0.6

๋ฒ„๊ทธ ์ˆ˜์ •

  • close ํ•จ์ˆ˜ ์‹คํ–‰ ์‹œ ์ต๋ช…ํ•จ์ˆ˜๊ฐ€ ๊ฐ„ํ—์ ์œผ๋กœ ๋ชจ๋‘ ์‹คํ–‰๋˜๋Š” ๋ฒ„๊ทธ ์ˆ˜์ • ( ajax ์ดํ›„ ์‹คํ–‰๋˜๋Š” ๊ฒฝ์šฐ )

3.0.5

์ƒˆ๋กœ์šด ๊ธฐ๋Šฅ

  • Stage ์„œ๋ฒ„ ์ถ”๊ฐ€
  • JS Version ๊ธฐ๋ก ๋ฒ„๊ทธ ์ˆ˜์ •

3.0.4

๊ธฐ๋Šฅ ๋ณ€๊ฒฝ

  • Angular Universal ์ปดํŒŒ์ผ์‹œ localStorage ์—๋Ÿฌ ์ˆ˜์ •
  • ์•ˆ๋“œ๋กœ์ด๋“œ (9.0 ํŒŒ์ด) ํŒ์—… ์ •์ฑ… ๋ณ€๊ฒฝ์œผ๋กœ ์šฐํšŒ์ฝ”๋“œ ์ถ”๊ฐ€

3.0.3

๊ธฐ๋Šฅ ๋ณ€๊ฒฝ

  • ๋ถ€ํŠธํŽ˜์ด ๊ด€๋ จ ์ด๋ฒคํŠธ๋ฅผ ํ˜ธ์ถœ์‹œ Bindingํ•˜๋„๋ก ๋ณ€๊ฒฝ

3.0.2

์ƒˆ๋กœ์šด๊ธฐ๋Šฅ

  • ๋„ค์ด๋ฒ„ํŽ˜์ด ์ฃผ๋ฌธํ˜• ๊ฒฐ์ œ ์ •๋ณด ์ถ”๊ฐ€ params
  • third party API ์˜ต์…˜ ๊ธฐ๋Šฅ ์ถ”๊ฐ€

3.0.1

๋ณตํ•ฉ๊ธฐ๋Šฅ

  • use_order_id: 1 ๊ณผ ๊ฐ™์€ 1, 0์˜ ๊ฐ’์„ ์ง๊ด€์ ์œผ๋กœ true, false๋„ ํ•จ๊ป˜ ํ—ˆ์šฉ

์ƒˆ๋กœ์šด ๊ธฐ๋Šฅ

  • ๋„ค์ด๋ฒ„ํŽ˜์ด ์ฃผ๋ฌธํ˜• ์š”์ฒญ ์ถ”๊ฐ€
  • ํŽ˜์ด์•ฑ ๊ฒฐ์ œ ์™„๋ฃŒ ํ›„ ์ฐฝ ๋‹ซ๊ธฐ ์˜ต์…˜ ์ถ”๊ฐ€
  • ๊ฒฐ์ œ ์™„๋ฃŒ ํ›„ ์™„๋ฃŒ ๋ฒ„ํŠผ ๋…ธ์ถœ ์ถ”๊ฐ€

3.0.0

์ƒˆ๋กœ์šด ๊ธฐ๋Šฅ

  • ์•ž์œผ๋กœ ์ƒˆ๋กœ ์ œ๊ณต๋  ๊ฒฐ์ œ ๋ฐฉ์‹(๊ธฐ์กด PG ๊ฒฐ์ œ ์ด์™ธ์˜)์— ๋Œ€ํ•œ ์—…๋ฐ์ดํŠธ ์ด๋ฃจ์–ด์กŒ์Šต๋‹ˆ๋‹ค.
  • REST API๋กœ ๊ฒฐ์ œ ์Šน์ธ์ด ๊ฐ€๋Šฅํ•ฉ๋‹ˆ๋‹ค. ์ข€ ๋” ์ •๋ฐ€ํ•œ ๊ฒฐ์ œ ๊ฒ€์ฆ์ด ๊ฐ€๋Šฅํ•ด์กŒ์Šต๋‹ˆ๋‹ค. ( Docs์—์„œ ์‚ฌ์šฉ๋ฒ•์„ ์—…๋ฐ์ดํŠธ ์ค‘ )
  • ์ผ๋ถ€ PG์—์„œ iFrame์ด ์•ˆ๋˜๋Š” ๋ฌธ์ œ๊ฐ€ ์žˆ์–ด์„œ Mobile Safari๋ฅผ ๋Œ€์‘ํ•˜๊ธฐ ์œ„ํ•ด POPUP ๊ฒฐ์ œ์ฐฝ ๋กœ์ง์ด ์ถ”๊ฐ€ ๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ์ผ๋ถ€ PG์‚ฌ์˜ ๊ฒฐ์ œ ์ˆ˜๋‹จ์€ POPUP์œผ๋กœ ๋™์ผํ•œ ๋กœ์ง์œผ๋กœ ๊ฒฐ์ œ๊ฐ€ ์ง„ํ–‰๋ฉ๋‹ˆ๋‹ค.

๋ฒ„๊ทธ ์ˆ˜์ •๋‚ด์—ญ

  • ํŒ์—… ๊ฒฐ์ œ ์ผ ๊ฒฝ์šฐ iOS Safari๋Š” ์‚ฌ์šฉ์ž์˜ ๊ฐœ์ž…์ด ํ•„์š”ํ•œ Direct Interactive ๋ฒ„ํŠผ ์ถ”๊ฐ€ ( ๋ฒ„ํŠผ์ด ์—†์œผ๋ฉด ํŒ์—… ์ฐจ๋‹จ ๋˜์–ด ์žˆ๋Š” ๊ฒฝ์šฐ ํŒ์—…์ด ๋œจ์ง€ ์•Š์Œ )
  • ๊ฒฐ์ œ์ฐฝ CSS ์ˆ˜์ • ( ๋ฒ„ํŠผ ์ƒ‰์ƒ์„ ๋ถ€ํŠธํŽ˜์ด ๋ฉ”์ธ ์ปฌ๋Ÿฌ๋กœ ํ†ต์ผ )
  • iOS ์ธ์•ฑ์—์„œ iFrame์œผ๋กœ ๊ฒฐ์ œ์ฐฝ์„ ๋„์šธ ๊ฒฝ์šฐ ํƒญ ์œ„์น˜๊ฐ€ ์˜ฌ๋ฐ”๋ฅด์ง€ ์•Š๋Š” ๋ฌธ์ œ ์ˆ˜์ • ( Bug Fixed )
  • Progress Position ๋ชจ๋ฐ”์ผ ์ผ ๊ฒฝ์šฐ ์•ฝ๊ฐ„ ์œ„๋กœ ์ˆ˜์ •
  • Popup ๊ฒฐ์ œ ์‹œ์ž‘ Trigger ์š”์ฒญ์‹œ POST -> GET ๋ฐฉ์‹์œผ๋กœ ๋ณ€๊ฒฝ ( ์•„์ดํฐ ์ธ์•ฑ ๋Œ€์‘ )
  • ํƒ€ Framework์—์„œ postMessage ์‚ฌ์šฉ์‹œ json parsing ์—๋Ÿฌ ์•ˆ๋‚˜๋„๋ก Filter ์ถ”๊ฐ€
  • iFrame iOS์—์„œ Scroll ๋ฒ„๊ทธ ์ˆ˜์ • ( ์ผ๋ถ€ PG์—์„œ ์Šคํฌ๋กค์ด ์ž์—ฐ์Šค๋Ÿฝ๊ฒŒ ๋‚ด๋ ค๊ฐ€์ง€ ์•Š๋Š” ๋ฌธ์ œ ํ•ด๊ฒฐ )

2.1.1

  • ๊ฐ€๋งน์ ์—์„œ order_id๋ฅผ PK๋กœ PG์‚ฌ๋กœ ์ „์†ก๊ธฐ๋Šฅ ( KCP๋งŒ ๊ฐ€๋Šฅ - ์ฐจํ›„ ๋‹ค๋ฅธ ๊ฐ€๋งน์ ๋„ ์—…๋ฐ์ดํŠธ ์˜ˆ์ • - use_order_id: 1๋กœ ์„ค์ •ํ•˜๋ฉด ์‚ฌ์šฉ ๊ฐ€๋Šฅ )

2.1.0

  • IE์—์„œ transactionConfirm ํ•จ์ˆ˜๊ฐ€ ๋‘๋ฒˆ ํ˜ธ์ถœ๋˜๋Š” ๋ฌธ์ œ๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค. ConfirmLock์„ ํ†ตํ•ด ํ•œ๋ฒˆ๋งŒ ํ˜ธ์ถœ๋˜๋„๋ก ์ˆ˜์ •ํ•˜์˜€์Šต๋‹ˆ๋‹ค. ( Bug Fixed )
  • escrow ๊ฒฐ์ œ ์—ฌ๋ถ€๋ฅผ ์„ ํƒํ•˜๋Š” ๋ถ€๋ถ„์ด extra์—์„œ ๋ณด๋‚ผ ์ˆ˜ ์žˆ๋„๋ก ์—…๋ฐ์ดํŠธ ๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ( ๊ธฐ๋Šฅ์ถ”๊ฐ€ )
  • ์ผ๋ถ€ ๋ชจ๋ฐ”์ผ ์นด๋“œ ๊ฒฐ์ œ์—์„œ iFrame์—์„œ ์•ฑ์นด๋“œ ๋ฐ ISP๊ฐ€ ํ˜ธ์ถœ์•ˆ๋˜๋Š” ๋ฌธ์ œ๊ฐ€ ์žˆ์–ด์„œ Form ๋ฐฉ์‹ ๊ฒฐ์ œ๋ฅผ ํ•  ์ˆ˜ ์žˆ๋„๋ก ๋ณ€๊ฒฝ์ด ๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ์š”์ฒญ์‹œ ๊ฒฐ์ œ ๋ฆฌํ„ด ๊ฒฐ๊ณผ๋ฅผ ๋ฐ›์„ return_url params๋ฅผ ๋ณด๋‚ด์„œ ์Šน์ธ ์ „ ๋ฐ์ดํ„ฐ๋ฅผ ๋ฐ›์„ URL์„ ์„ค์ •ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ( ๊ธฐ๋Šฅ์ถ”๊ฐ€ )
  • ํ†ต๊ณ„ ๋ฐ์ดํ„ฐ๋ฅผ ๊ฒฐ์ œ ํŠน์ • ์ด๋ฒคํŠธ์— ๋ณด๋‚ด์ง€ ์•Š๋Š” ๋ฒ„๊ทธ๋ฅผ ์ˆ˜์ •ํ•˜์˜€์Šต๋‹ˆ๋‹ค. ( Bug Fixed )

2.0.20

  • ๊ฒฐ์ œ๋ฅผ ํŒ์—…์œผ๋กœ ๋„์›Œ์„œ ์š”์ฒญํ•  ๋•Œ ํŒ์—…๊ณผ ํŒ์—… Opener์˜ ๋„๋ฉ”์ธ์ด ์„œ๋กœ ๋‹ค๋ฅธ ๊ฒฝ์šฐ ๊ฒฐ์ œ UUID์™€ ์ ‘์† UUID๋ฅผ ๋™๊ธฐํ™”ํ•˜๋Š” ํ•จ์ˆ˜ ์ถ”๊ฐ€ ( IE์—์„œ๋Š” Cross Site postMessage ์ •์ฑ… ๋•Œ๋ฌธ์— ํ•ด๋‹น ๊ธฐ๋Šฅ์ด ์ž‘๋™ํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. )

๋ถ€ํŠธํŽ˜์ด ๊ฒฐ์ œ ์š”์ฒญ JS SDK

์ฝ”๋“œ ํ•œ์ค„๋กœ ๊ตฌํ˜„ํ•˜๋Š” Bootpay JS ๋ชจ๋“ˆ์ž…๋‹ˆ๋‹ค. ๊ฐœ๋ฐœ ์–ธ์–ด๋Š” coffeescript๋กœ ๋˜์–ด ์žˆ์œผ๋ฉฐ, jQuery ์˜์กด์„ฑ์ด ์žˆ๋Š” 1.x.x๋ฒ„์ „์€ Private Git ์ €์žฅ์†Œ๋กœ ๊ด€๋ฆฌ์ค‘์ด๋ฉฐ, jQuery์˜์กด์„ฑ์ด ์—†๋Š” 2.x.x๋Š” GitHub์— ์˜คํ”ˆ์†Œ์Šค๋กœ ๊ฐœ๋ฐœ๋˜์—ˆ์Šต๋‹ˆ๋‹ค. 2.x.x๋Š” Webpack์œผ๋กœ ์ปดํŒŒ์ผ ๋˜๋ฉฐ, webpack-dev-server๋ฅผ ํ†ตํ•ด ํ…Œ์ŠคํŠธ ์„œ๋ฒ„๋กœ ๊ฒฐ์ œ๋ฅผ ํ…Œ์ŠคํŠธ ํ•  ์ˆ˜๋„ ์žˆ์Šต๋‹ˆ๋‹ค.

NPM URL

NPM์œผ๋กœ ๋‹ค์šด ๋ฐ›์„ ์ˆ˜ ์žˆ๋Š” ๊ฒฝ๋กœ๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค. https://www.npmjs.com/package/bootpay-js

์—ฐ๋™ ๋ฐฉ๋ฒ•

1. CDN์œผ๋กœ Javascript ํ˜ธ์ถœํ•˜๊ธฐ

<script src="https://cdn.bootpay.co.kr/js/bootpay-3.2.3.min.js" type="application/javascript"></script>

2. npm์œผ๋กœ ์„ค์น˜ํ•˜๊ธฐ

npm install bootpay-js

์„ค์น˜ ํ•œ ํ›„์—

var BootPay = require('bootpay-js');

ํ˜•ํƒœ๋กœ ์‚ฌ์šฉ์ด ๊ฐ€๋Šฅํ•ฉ๋‹ˆ๋‹ค.

3. Webpack Package ์‚ฌ์šฉ

{
  "dependencies": {
    //...
    "bootpay-js": "^3.3.2"
    //...
  }
}
import BootPay from 'bootpay-js'

4. Require JS ์‚ฌ์šฉ

<script type="text/javascript">
    //jQuery ์ˆ˜์ • ๋ฒ„์ „์„ ๋กœ๋“œํ•œ๋‹ค.
    require(["https://cdn.bootpay.co.kr/js/bootpay-3.3.2.min.js"], function(BootPay) {
        BootPay.request({
            // anyThing Data
        });
    });
</script>

๋ถ€ํŠธํŽ˜์ด๋กœ ๊ฒฐ์ œ ์—ฐ๋™ํ•˜๊ธฐ ์ „์—

  • Bootpay Admin (https://admin.bootpay.co.kr) ๋กœ ๊ฐ„ ํ›„ ๋จผ์ € ํšŒ์›๊ฐ€์ž…์„ ํ•ด์ฃผ์„ธ์š”.
  • Bootpay Docs (https://docs.bootpay.co.kr) ๋กœ ๊ฐ€์…”์„œ ์—ฐ๋™์ „ ํ•„์š”ํ•œ ์ค€๋น„๋ฅผ ํ•ด์ฃผ์„ธ์š”.

๋ถ€ํŠธํŽ˜์ด JS ๊ฒฐ์ œ์ฐฝ ๋„์šฐ๊ธฐ

BootPay.request({
        price: 3000, // ๊ฒฐ์ œํ•  ๊ธˆ์•ก
        application_id: '(๋ถ€ํŠธํŽ˜์ด ๊ด€๋ฆฌ์ž์—์„œ Web์šฉ Application ID ์ž…๋ ฅํ•ด์ฃผ์„ธ์š”.)',
        name: '(ํŒ๋งคํ•  ์•„์ดํ…œ์ด๋ฆ„)', // ์•„์ดํ…œ ์ด๋ฆ„,
        phone: '(๊ตฌ๋งค์ž ์ „ํ™”๋ฒˆํ˜ธ ex) 01000000000)',
        order_id: '(์ด ๊ฒฐ์ œ๋ฅผ ์‹๋ณ„ํ•  ์ˆ˜ ์žˆ๋Š” ๊ณ ์œ  ์ฃผ๋ฌธ ๋ฒˆํ˜ธ)',
        pg: '(๊ฒฐ์ œ์ฐฝ์„ ๋„์šฐ๋ ค๋Š” PG ํšŒ์‚ฌ๋ช… ex) kcp, danal)',
        method: '(๊ฒฐ์ œ์ˆ˜๋‹จ ์ •๋ณด ex) card, phone, vbank, bank)',
        show_agree_window: 0, // ๊ฒฐ์ œ ๋™์˜์ฐฝ ๋„์šฐ๊ธฐ ์—ฌ๋ถ€ 1 - ๋„์›€, 0 - ๋„์šฐ์ง€ ์•Š์Œ
        items: [ // ๊ฒฐ์ œํ•˜๋ ค๋Š” ๋ชจ๋“  ์•„์ดํ…œ ์ •๋ณด ( ํ†ต๊ณ„ ๋ฐ์ดํ„ฐ๋กœ ์“ฐ์ด๋ฏ€๋กœ ์ž…๋ ฅํ•ด์ฃผ์‹œ๋ฉด ์ข‹์Šต๋‹ˆ๋‹ค. ์ž…๋ ฅํ•˜์ง€ ์•Š์•„๋„ ๊ฒฐ์ œ๋Š” ๊ฐ€๋Šฅํ•ฉ๋‹ˆ๋‹ค.)
            {
                item_name: '(ํŒ๋งค๋œ ์•„์ดํ…œ ๋ช…)',
                qty: 1, // ํŒ๋งคํ•œ ์•„์ดํ…œ์˜ ์ˆ˜๋Ÿ‰
                unique: '(์•„์ดํ…œ์„ ์‹๋ณ„ํ•  ์ˆ˜ ์žˆ๋Š” unique key)', 
                price: 3000 // ์•„์ดํ…œ ํ•˜๋‚˜์˜ ๋‹จ๊ฐ€
            }
        ],
        user_info: { // ๊ตฌ๋งคํ•œ ๊ณ ๊ฐ์ •๋ณด ( ํ†ต๊ณ„ ํ˜น์€ PG์‚ฌ์—์„œ ์š”๊ตฌํ•˜๋Š” ๊ณ ๊ฐ ์ •๋ณด )
            email: '(์ด๋ฉ”์ผ)',
            phone: '(๊ณ ๊ฐ์˜ ํœด๋Œ€ํฐ ์ •๋ณด)',                        
            username: '๊ตฌ๋งค์ž์„ฑํ•จ',
            addr: '(๊ณ ๊ฐ์˜ ๊ฑฐ์ฃผ์ง€์—ญ)'
        }
    }).error(function (data) { 
        // ๊ฒฐ์ œ๊ฐ€ ์‹คํŒจํ–ˆ์„ ๋•Œ ํ˜ธ์ถœ๋˜๋Š” ํ•จ์ˆ˜์ž…๋‹ˆ๋‹ค.
        var msg = "๊ฒฐ์ œ ์—๋Ÿฌ์ž…๋‹ˆ๋‹ค.: " + JSON.stringify(data);
        alert(msg);
        console.log(data);
    }).cancel(function (data) {
        // ๊ฒฐ์ œ์ฐฝ์—์„œ ๊ฒฐ์ œ ์ง„ํ–‰์„ ํ•˜๋‹ค๊ฐ€ ์ทจ์†Œ๋ฒ„ํŠผ์„ ๋ˆŒ๋ €์„๋•Œ ํ˜ธ์ถœ๋˜๋Š” ํ•จ์ˆ˜์ž…๋‹ˆ๋‹ค.
        var msg = "๊ฒฐ์ œ ์ทจ์†Œ์ž…๋‹ˆ๋‹ค.: " + JSON.stringify(data);
        alert(msg);
        console.log(data);
    }).confirm(function (data) {
        // ๊ฒฐ์ œ๊ฐ€ ์ง„ํ–‰๋˜๊ณ  ๋‚˜์„œ ์Šน์ธ ์ด์ „์— ํ˜ธ์ถœ๋˜๋Š” ํ•จ์ˆ˜์ž…๋‹ˆ๋‹ค.
        // ์ผ๋ถ€ ๊ฒฐ์ œ๋Š” ์ด ํ•จ์ˆ˜๊ฐ€ ํ˜ธ์ถœ๋˜์ง€ ์•Š์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ex) ๊ฐ€์ƒ๊ณ„์ขŒ ๋ฐ ์นด๋“œ ์ˆ˜๊ธฐ๊ฒฐ์ œ๋Š” ํ˜ธ์ถœ๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.        
        // ๋งŒ์•ฝ ์ด ํ•จ์ˆ˜๋ฅผ ์ •์˜ํ•˜์ง€ ์•Š์œผ๋ฉด ๋ฐ”๋กœ ๊ฒฐ์ œ ์Šน์ธ์ด ์ผ์–ด๋‚ฉ๋‹ˆ๋‹ค.
        if (confirm('๊ฒฐ์ œ๋ฅผ ์ •๋ง ์Šน์ธํ• ๊นŒ์š”?')) {
            console.log("do confirm data: " + JSON.stringify(data));
            // ์ด ํ•จ์ˆ˜๋ฅผ ๋ฐ˜๋“œ์‹œ ์‹คํ–‰ํ•ด์•ผ ๊ฒฐ์ œ๊ฐ€ ์™„์ „ํžˆ ๋๋‚ฉ๋‹ˆ๋‹ค.
            // ๋ถ€ํŠธํŽ˜์ด๋กœ ์„œ๋ฒ„๋กœ ๊ฒฐ์ œ๋ฅผ ์Šน์ธํ•จ์„ ๋ณด๋‚ด๋Š” ํ•จ์ˆ˜์ž…๋‹ˆ๋‹ค.
            this.transactionConfirm(data);
        } else {
            var msg = "๊ฒฐ์ œ๊ฐ€ ์Šน์ธ๊ฑฐ์ ˆ๋˜์—ˆ์Šต๋‹ˆ๋‹ค.: " + JSON.stringify(data);
            alert(msg);
            console.log(data);
        }
    }).done(function (data) {
        // ๊ฒฐ์ œ๊ฐ€ ๋ชจ๋‘ ์™„๋ฃŒ๋˜์—ˆ์„ ๋•Œ ํ˜ธ์ถœ๋˜๋Š” ํ•จ์ˆ˜์ž…๋‹ˆ๋‹ค.
        alert("๊ฒฐ์ œ๊ฐ€ ์™„๋ฃŒ๋˜์—ˆ์Šต๋‹ˆ๋‹ค.");
        console.log(data);
    }).ready(function (data) {
        // ๊ฐ€์ƒ๊ณ„์ขŒ ๋ฒˆํ˜ธ๊ฐ€ ์ฒด๋ฒˆ(๋ฐœ๊ธ‰) ๋˜์—ˆ์„ ๋•Œ ํ˜ธ์ถœ๋˜๋Š” ํ•จ์ˆ˜์ž…๋‹ˆ๋‹ค.
        console.log(data);
    });

๊ฐ ๊ฒฐ์ œ ์ˆ˜๋‹จ๋ณ„ ๊ฒฐ์ œ ์ง„ํ–‰ ์ˆœ์„œ

์นด๋“œ(card), ํœด๋Œ€ํฐ ์†Œ์•ก๊ฒฐ์ œ (phone), ๊ณ„์ขŒ์ด์ฒด (bank), ๊ฐ„ํŽธ๊ฒฐ์ œ (์นด์นด์˜ค ํ˜น์€ ํŽ˜์ด์ฝ”)

๋Œ€๋ถ€๋ถ„์˜ ๊ฒฐ์ œ๋Š” ์ง„ํ–‰ ์ˆœ์„œ๊ฐ€ ๋™์ผํ•ฉ๋‹ˆ๋‹ค.

<๊ฒฐ์ œ ์š”์ฒญ> -> <๊ฒฐ์ œ์ฐฝ์ด ๋„์›Œ์ง> -> <confirm  ํ•จ์ˆ˜ ์‹คํ–‰ ํ˜น์€ ๋ฐ”๋กœ ๊ฒฐ์ œ ์Šน์ธ> -> < ๋ถ€ํŠธํŽ˜์ด ์„œ๋ฒ„์—์„œ ๊ฒฐ์ œ ์Šน์ธ >

๊ฐ€์ƒ๊ณ„์ขŒ(vbank)

๊ฐ€์ƒ๊ณ„์ขŒ๋Š” ๊ณ„์ขŒ๋ฒˆํ˜ธ ๋ฐœ๊ธ‰ ์ดํ›„ ์ž…๊ธˆ ๋˜์–ด์•ผ ๊ฒฐ์ œ๊ฐ€ ์™„์ „ํžˆ ๋๋‚˜๋Š” ํŠน์ˆ˜ํ•œ ๊ฒฐ์ œ ๋ฐฉ๋ฒ•์ž…๋‹ˆ๋‹ค.

<๊ฒฐ์ œ ์š”์ฒญ> -> <๊ฒฐ์ œ์ฐฝ์ด ๋„์›Œ์ง> -> < ready ํ•จ์ˆ˜ ํ˜ธ์ถœ ๋ฐ ๊ฐ€์ƒ๊ณ„์ขŒ ๋ฐœ๊ธ‰ > -> < ์ž…๊ธˆ ํ›„ ๋ถ€ํŠธํŽ˜์ด ์„œ๋ฒ„๋กœ ๊ฒฐ์ œ ์ •๋ณด๊ฐ€ ์˜ด > -> < ๋ถ€ํŠธํŽ˜์ด ๊ด€๋ฆฌ์ž์—์„œ ์„ค์ •ํ•œ FeedbackURL๋กœ ๊ฐ€๋งน์  ์„œ๋ฒ„๋กœ ๊ฒฐ์ œ ๋ฐ์ดํ„ฐ ์ „์†ก >

๋ถ€ํŠธํŽ˜์ด ํ†ต๊ณ„ ์ด์šฉํ•˜๊ธฐ

๋ถ€ํŠธํŽ˜์ด๋กœ ๋ฐ์ดํ„ฐ๋ฅผ ๋ณด๋‚ด์ฃผ์‹œ๋ฉด 1์‹œ๊ฐ„ ๋‹จ์œ„, 1์ผ ๋‹จ์œ„, 1์ฃผ์ผ ๋‹จ์œ„, 1๋‹ฌ ๋‹จ์œ„์˜ ๋ฐ์ดํ„ฐ๋ฅผ ๋ถ„์„ํ•˜์—ฌ ์ ‘์† ํ†ต๊ณ„ ๋ฐ ๊ฒฐ์ œ ํ†ต๊ณ„๋ฅผ ๋ณด์‹ค ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ž์„ธํ•œ ํ†ต๊ณ„ ๋‚ด์šฉ์€ https://admin.bootpay.co.kr ๋กœ ๊ฐ€์…”์„œ ํ…Œ์ŠคํŠธ ๊ณ„์ •์œผ๋กœ ๋กœ๊ทธ์ธ ํ›„ ํ™•์ธํ•˜์‹ค ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

ํŠน์ • ํŽ˜์ด์ง€ ์ ‘๊ทผ์‹œ ํ†ต๊ณ„ ๋ฐ์ดํ„ฐ ์ „๋‹ฌ

ํ†ต๊ณ„๋ฅผ ์ง‘๊ณ„ํ•˜๊ธธ ์›ํ•˜๋Š” ํŽ˜์ด์ง€์— ์ ‘๊ทผํ–ˆ์„ ๋•Œ ๋ถ€ํŠธํŽ˜์ด๋กœ ๋ฐ์ดํ„ฐ๋ฅผ ๋ณด๋‚ด ํ†ต๊ณ„๋ฅผ ๋‚ผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ํŠน์ • ์•„์ดํ…œ์„ ํŒ๋งคํ•˜๋Š” ํŽ˜์ด์ง€์— ๋Œ€ํ•œ ๋ถ„์„ ๋ฐ ์–ด๋–ค Referer๋ฅผ ํ†ตํ•ด ํŽ˜์ด์ง€๋ฅผ ์ง„์ž…ํ–ˆ๋Š”์ง€ ์—ฌ๋ถ€๋ฅผ ํ†ต๊ณ„ ๋ฐ์ดํ„ฐ๋กœ ๋ฝ‘์•„๋‚ด ์ค๋‹ˆ๋‹ค.

// DocumentContentLoaded ์ด๋ฒคํŠธ ํ˜ธ์ถœ ํ›„์—  ํŽ˜์ด์ง€ ์ •๋ณด๋ฅผ ์ „์†กํ•˜๋Š” ๊ฒƒ์„ ์ถ”์ฒœํ•ฉ๋‹ˆ๋‹ค.
document.addEventListener('DOMContentLoaded', function () {
    // ๋ถ€ํŠธํŽ˜์ด๋กœ ํŽ˜์ด์ง€ ์ •๋ณด๋ฅผ ์ „์†กํ•˜๋Š” ํ•จ์ˆ˜์ž…๋‹ˆ๋‹ค.
    // ์ด ํ•จ์ˆ˜๋ฅผ ํ˜ธ์ถœํ•˜์ง€ ์•Š์œผ๋ฉด ํŽ˜์ด์ง€์— ๋Œ€ํ•œ ์ •๋ณด๋ฅผ ์ˆ˜์ง‘ํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.
    BootPay.startTrace({
        // ํ˜„์žฌ ํŽ˜์ด์ง€์—์„œ ํŒ๋งคํ•˜๋Š” ์•„์ดํ…œ ์ •๋ณด ( ์ƒํ’ˆ์ด ์—ฌ๋Ÿฌ๊ฐœ์ผ ์ˆ˜ ์žˆ์œผ๋ฏ€๋กœ Array๋กœ ๋ณด๋‚ด์ฃผ์„ธ์š”. )
        items: [
            {
                item_name: '( ์•„์ดํ…œ ๋ช… )',
                item_img: '( ์ด๋ฏธ์ง€ URL ๊ฒฝ๋กœ )',
                unique: '( ์•„์ดํ…œ ๊ณ ์œ  ํ‚ค )',
                cat1: '( ์นดํ…Œ๊ณ ๋ฆฌ ์ƒ์œ„ 1 )',
                cat2: '( ์นดํ…Œ๊ณ ๋ฆฌ ์ค‘์œ„ 2 )',
                cat3: '( ์นดํ…Œ๊ณ ๋ฆฌ ํ•˜์œ„ 3 )'
            },
            {
                item_name: '( ์•„์ดํ…œ ๋ช… )',
                item_img: '( ์ด๋ฏธ์ง€ URL ๊ฒฝ๋กœ )',
                unique: '( ์•„์ดํ…œ ๊ณ ์œ  ํ‚ค )',
                cat1: '( ์นดํ…Œ๊ณ ๋ฆฌ ์ƒ์œ„ 1 )',
                cat2: '( ์นดํ…Œ๊ณ ๋ฆฌ ์ค‘์œ„ 2 )',
                cat3: '( ์นดํ…Œ๊ณ ๋ฆฌ ํ•˜์œ„ 3 )'
            }
        ]
    });
});

๋กœ๊ทธ์ธํ•œ ํšŒ์› ์ •๋ณด ์ „๋‹ฌ

์–ด๋–ค ์‚ฌ์šฉ์ž๊ฐ€ ๋กœ๊ทธ์ธ์„ ํ–ˆ๋Š”์ง€ ๋กœ๊ทธ์ธ ํ•œ ํ›„ ์–ด๋–ค ์•„์ดํ…œ์„ ๊ตฌ๋งคํ–ˆ๋Š”์ง€ ์ถ”์ ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๊ทธ๋Ÿฌ๊ธฐ ์œ„ํ•ด์„œ๋Š” ๋กœ๊ทธ์ธ ํ•œ ์ •๋ณด๋ฅผ ๋ถ€ํŠธํŽ˜์ด๋กœ ์ „์†กํ•˜์—ฌ ๋ฐ์ดํ„ฐ ๋ถ„์„์„ ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ( ์ •๋ณด๋Š” ํ†ต๊ณ„์šฉ์œผ๋กœ๋งŒ ์“ฐ์ด๊ณ  60์ผ ํ›„ ๋ชจ๋‘ ํ๊ธฐ ๋ฉ๋‹ˆ๋‹ค. )

// ๋กœ๊ทธ์ธ ํ•œ ์ดํ›„ ํ˜ธ์ถœ๋˜๋Š” ํ•จ์ˆ˜
// ๋กœ๊ทธ์ธ ์ •๋ณด๋ฅผ ๋ถ€ํŠธํŽ˜์ด๋กœ ์ „์†ก
function LoginAfterCallFunction() {
    // ๋กœ๊ทธ์ธ ์ •๋ณด๋ฅผ ๋ณด๋‚ด๊ณ  ๋ถ€ํŠธํŽ˜์ด์—์„œ ๋กœ๊ทธ์ธ ์„ธ์…˜์„ ๋ฐ›์•„ ๋ฐ์ดํ„ฐ๋ฅผ ์ถ”์ ํ•œ๋‹ค.
    BootPay.startLoginSession({
        id: '(ํšŒ์› ์•„์ด๋””)',
        username: '(ํšŒ์› ์ด๋ฆ„)',
        birth: '(ํšŒ์› ์ƒ๋…„์›”์ผ)',
        phone: '(ํšŒ์› ์ „ํ™”๋ฒˆํ˜ธ)',
        email: '(ํšŒ์› ์ด๋ฉ”์ผ)',
        gender: '(ํšŒ์› ์„ฑ๋ณ„ 1 - ๋‚จ์ž, 0 - ์—ฌ์ž)',
        area: '(ํšŒ์› ๊ฑฐ์ฃผ ์ง€์—ญ)'
    });
}