首页 / 专利库 / 商业 / 电子商务 / 전자상거래 결제를 용이하게 하는 방법 및 시스템

전자상거래 결제를 용이하게 하는 방법 및 시스템

阅读:620发布:2024-01-07

专利汇可以提供전자상거래 결제를 용이하게 하는 방법 및 시스템专利检索,专利查询,专利分析的服务。并且금융거래를용이하기하기위한방법은체크아웃프로세스의용이성및 속도를용이하게하거나증가시키는것을포함한다. 특히, 하나이상의구현은전자상거래애플리케이션과결제중계사이의중개자의역할을하는전자상거래결제퍼실리테이터를포함한다. 전자상거래결제촉진기는사용자에의한몇몇의간단한선택에기반하여전자상거래애플리케이션으로저장된결제정보를제공할수 있다. 이를통해사용자는전자상거래의거래를용이하고안전하게완료할수 있고, 사용자의체크아웃경험을간소화하고구매장벽을줄일수 있다. 게다가, 전자상거래결제촉진자는결제정보를전자상거래애플리케이션의결제중계자에게넘겨줄수 있다. 상술한바 이외에, 본방법은네트워크애플리케이션에의해저장된결제정보를사용하는옵션을사용자에게동적이고지능적으로제공하는것을포함한다.,下面是전자상거래 결제를 용이하게 하는 방법 및 시스템专利的具体信息内容。

  • 사용자 식별을 포함하는 요청을 수신하는 단계;
    네트워크 애플리케이션을 실행하는 하나 이상의 서버 컴퓨팅 장치에 의해, 비-일시적 저장매체에 저장된 사용자에 대한 결제 카드 정보를 참조하는 결제 토큰을 생성하는 단계;
    네트워크 애플리케이션을 실행하는 하나 이상의 서버 컴퓨팅 장치에 의해, 결제 토큰을 상거래 애플리케이션으로 송신하는 단계;
    상거래 애플리케이션으로부터 결제 토큰을 포함하는 요금 요청을 수신하는 단계; 및
    결제 토큰을 수신함에 응답하여, 네트워크 애플리케이션을 실행하는 하나 이상의 서버 컴퓨팅 장치에 의해, 상거래 애플리케이션과 연관된 결제 중계 시스템으로 결제 요금 요청을 송신하는 단계를 포함하며,
    결제 요금 요청은 결제 카드 정보, 요금액 및 상거래 애플리케이션에 대신하여 요금 요청을 제출하는 승인 표시를 포함하는 방법.
  • 제 1 항에 있어서,
    요청을 수신하는 단계는 하나 이상의 결제 필드의 자동-기입을 가능하게 하도록 사용자에 대한 결제 정보를 탐색하는 그래프 API로의 클라이언트-측 호출을 수신하는 단계를 포함하는 방법.
  • 제 2 항에 있어서,
    상거래 애플리케이션이 하나 이상의 결제 필드를 자동-기입할 수 있게 하도록 사용자에 대한 결제 정보를 상거래 애플리케이션으로 송신하는 단계를 더 포함하며, 결제 정보는 결제 카드 라벨, 만료 일자, 이름 및 청구서 발송지를 포함하는 방법.
  • 제 3 항에 있어서,
    사용자에 대한 결제 정보를 상거래 애플리케이션으로 송신하기 전에, 결제 정보를 상거래 애플리케이션으로 제공하도록 사용자로부터 승인을 수신하는 단계를 더 포함하는 방법.
  • 제 1 항 내지 제 4 항 중 어느 한 항에 있어서,
    결제 중계 시스템으로부터 거래 식별자를 수신하는 단계; 및
    거래 식별자를 상거래 애플리케이션으로 송신하는 단계를 더 포함하는 방법.
  • 제 1 항 내지 제 5 항 중 어느 한 항에 있어서,
    변환 함수를 사용자의 식별에 적용하여 네트워크 애플리케이션의 사용자의 사용자 ID와 사용자의 식별을 맵핑하는 단계를 더 포함하는 방법.
  • 제 1 항 내지 제 6 항 중 어느 한 항에 있어서,
    상거래 애플리케이션을 대신하여 요금 요청을 제출하도록 승인의 표시를 송신하는 것은 결제 중계 시스템으로부터 상거래 애플리케이션에 제공되는 개인 키를 사용하여 결제 요금의 적어도 일부를 암호화하는 단계를 포함하는 방법.
  • 제 1 항 내지 제 7 항 중 어느 한 항에 있어서,
    결제 요금 요청을 결제 중계 시스템으로 송신하기 전에 요금 요청이 상거래 애플리케이션과 연관된 서버 컴퓨팅 장치로부터 유래했음을 확인하는 단계를 더 포함하는 방법.
  • 제 1 항 내지 제 8 항 중 어느 한 항에 있어서,
    네트워크 애플리케이션은 소셜 네트워킹 시스템을 포함하는 방법.
  • 상거래 애플리케이션의 적어도 제1 부분을 실행하는 클라이언트 컴퓨팅 장치로부터, 네트워크 애플리케이션을 실행하는 하나 이상의 서버 컴퓨팅 장치로 정보 요청을 송신하는 단계;
    하나 이상의 서버 컴퓨팅 장치로부터, 결제 카드 라벨, 결제 토큰 및 사용자에 대한 결제 정보를 수신하는 단계;
    적어도 하나의 프로세서를 사용하여, 체크아웃 사용자 인터페이스의 결제 필드를 결제 카드 라벨 및 사용자에 대한 결제 정보로 자동-기입하는 단계; 및
    결제 토큰을 포함하는 요금 요청을 하나 이상의 서버 컴퓨팅 장치로 송신하는 단계를 포함하며,
    정보 요청은 사용자 ID(user identification), 사용자에 의한 구매용으로 선택된 주문에 대한 요금액을 포함하는 방법.
  • 제 10 항에 있어서,
    하나 이상의 서버 컴퓨팅 장치로 정보 요청을 송신하는 단계는 네트워크 애플리케이션의 그래프 API로 호출하는 단계를 포함하는 방법.
  • 제 11 항에 있어서,
    결제 토큰을 하나 이상의 서버 컴퓨팅 장치로 송신하는 단계는 상거래 애플리케이션의 적어도 제2 부분을 실행하는 서버 컴퓨팅 장치의 네트워크 인터페이스로부터 네트워크 애플리케이션의 결제 API로 호출하는 단계를 포함하는 방법.
  • 제 10 항 내지 제 12 항 중 어느 한 항에 있어서,
    컴퓨팅 장치의 공유 메모리의 영역으로부터의 상거래 애플리케이션에 의해 사용자 ID에 액세스하는 단계를 더 포함하며,
    사용자 ID는 네트워크 애플리케이션과 상호작용하는 클라이언트 네트워크 애플리케이션에 의해 공유 메모리의 영역에 초기에 저장되었던 방법.
  • 제 10 항 내지 제 13 항 중 어느 한 항에 있어서,
    네트워크 애플리케이션으로부터의 결제 정보가 주문을 완료하는데 사용될 수 있음을 표시하는 선택가능한 체크아웃 옵션(checkout option)을 렌더링하는 단계를 더 포함하는 방법.
  • 네트워크 애플리케이션을 실행하는 하나 이상의 서버 컴퓨팅 장치; 및
    사용자의 하나 이상의 이름, 결제 카드 번호, 결제 카드의 만료 일자, 사용자의 상품 배송지 및 사용자에 대한 청구서 발송지를 각각 포함하는 복수의 사용자에 대한 결제 정보를 가지는 프로필 저장 모듈; 및
    하나 이상의 서버 컴퓨팅 장치에 의해 실행될 때, 시스템이:
    상거래 애플리케이션으로부터 상거래 애플리케이션의 카트 내에서 사용자에 의해 선택되는 하나 이상의 아이템 또는 서비스에 대한 요금액을 포함하는 요청을 식별하고;
    사용자와 연관된 결제 정보를 식별하며;
    사용자와 연관된 결제 카드 번호를 참조하는 결제 토큰을 생성하고;
    결제 토큰, 카드 라벨 및 사용자에 대한 결제 정보를 상거래 애플리케이션으로 송신하며;
    상거래 애플리케이션으로부터 결제 토큰을 수신하면, 상거래 애플리케이션과 연관된 결제 중계 시스템으로 결제 요금 요청을 송신하게 하는 명령어를 포함하는 비-일시적 저장매체를 포함하는 시스템으로서,
    결제 요청은 결제 카드 번호, 요금액 및 상거래 애플리케이션을 대신하여 요금 요청을 제출하는 승인의 표시를 포함하는 시스템.
  • 제 15 항에 있어서,
    상기 명령어는 하나 이상의 서버 컴퓨팅 장치에 의해 실행될 때 시스템이 또한: 사용자가 상거래 애플리케이션의 카트 내 하나 이상의 아이템 또는 서비스의 구매를 완료하지 않았다고 결정하고;
    하나 이상의 아이템 또는 서비스에 관한 세부사항을 포함하는 메시지 및 하나 이상의 아이템 또는 서비스를 구매하는 옵션을 생성하며;
    메시지를 사용자에게 제공하게 하는 시스템.
  • 제 15 항 또는 제 16 항에 있어서,
    네트워크 애플리케이션은 소셜 네트워킹 시스템인 시스템.
  • 제 17 항에 있어서,
    상기 명령어는 하나 이상의 서버 컴퓨팅 장치에 의해 실행될 때 시스템이 소셜 네트워킹 시스템의 뉴스피드로 사용자에게 메시지를 제공하게 하는 시스템.
  • 제 15 항 내지 제 18 항 중 어느 한 항에 있어서,
    상기 명령어는 하나 이상의 서버 컴퓨팅 장치에 의해 실행될 때 시스템이 또한 변환 함수를 사용자의 식별에 적용하여 상거래 애플리케이션으로부터 요청에서 수신된 사용자의 식별을 사용자 ID와 맵핑하게 하는 시스템.
  • 제 15 항 내지 제 19 항 중 어느 한 항에 있어서,
    상기 명령어는 하나 이상의 서버 컴퓨팅 장치에 의해 실행될 때 시스템이 또한 상거래 애플리케이션을 대신하여 요금 요청을 제출하도록 승인의 표시를 제공하기 위해 결제 중계 시스템으로부터 상거래 애플리케이션으로 제공되는 개인 키를 사용하여 결제 요금 요청의 적어도 일부를 암호화하게 하는 시스템.
  • 说明书全文

    전자상거래 결제를 용이하게 하는 방법 및 시스템{METHODS AND SYSTEMS FOR FACILITATING E-COMMERCE PAYMENTS}

    본 발명의 하나 이상의 실시예는 일반적으로 결제의 처리에 관한 것이다. 더 상세하게, 본 발명의 하나 이상의 실시예는 전자상거래 애플리케이션을 사용하여 결제의 용이성을 증가시키는 시스템 및 방법에 관한 것이다.

    상거래 애플리케이션을 통해 사용자는 통신 네트워크를 통한 실세계의 금융 거래를 수행할 수 있다. 상거래 애플리케이션은 웹사이트 및 네이티브 애플리케이션을 포함한다. 상거래 애플리케이션을 통해 사용자는 가상 쇼핑 및 체크아웃 프로세스를 사용하여 상품 및/또는 서비스를 구매할 수 있다. 체크아웃 프로세스는 주문을 완료하도록 결제 정보(가령, 신용카드 또는 직불카드 정보)를 상거래 애플리케이션에 제공하는 것을 포함할 수 있다. 통상, 결제 정보가 제출된 후, 상거래 애플리케이션은 결제 중계기(payment gateway)를 사용하여 결제 승인을 획득하고 안전하게 결제 정보를 결제 프로세서로 전달할 것이다.

    상거래 애플리케이션은 쇼핑 용이성을 향상시키고 사용자가 일반 상점들을 방문하지 않고 구매를 할 수 있게 해주는 반면, 많은 상거래 애플리케이션에서 체크아웃 프로세스는 불편할 수 있다. 예컨대, 상거래 애플리케이션은 통상 사용자에게 상세한 결제 정보를 제공하도록 요구한다. 많은 경우, 사용자는 최대 20개의 정보 필드를 기입해야 할 수 있다. 일반적으로 상거래 체크아웃 프로세스를 사용하는 잠재적인 고객들은 결제 정보를 입력하는데 어려움을 겪거나, 시간을 소모하거나, 체크아웃 프로세서에 의문이 생기거나, 불만을 느낀다. 이런 불만으로 인해 잠재적인 고객은 흔히 그들의 상거래 매매를 포기한다. 상거래 체크아웃 프로세스에서의 불만은 흔히 소형 스크린으로 대량의 정보를 타이핑하기 어려운 모바일 장치를 사용할 때 악화된다.

    체크아웃 프로세스와 연관된 문제를 해소하기 위해, 몇몇의 상거래 애플리케이션은 사용자가 "계정"을 생성하게 하여 사용자가 한번 애플리케이션으로 결제 정보를 제공한 후 나중의 사용을 위해 상거래 애플리케이션에 결제 정보를 저장하도록 해준다. 예컨대, 처음의 구매 중에, 사용자는 사용자와 연관된 "계정"에 저장되는 결제 정보에 따라 사용자 이름 및 패스워드를 제공할 수 있다. 그 상거래 웹사이트로 다시 방문하면, 사용자는 사용자 이름 및 패스워드 조합을 입력하여 그들의 계정에 액세스하고 결제 정보를 재-입력할 필요 없이 추가 구매를 할 수 있다. 이는 체크아웃 프로세스에서 발생하는 복잡함의 일부를 해소하는데 도움을 줄 수 있지만, 이런 시스템에서 상거래 애플리케이션은 "PCI"(Payment Card Industry)를 준수해야 하며, 통상적으로 하나의 웹사이트에서만 유효하다.

    상술한 과제의 관점에서, 몇몇의 상거래 애플리케이션은 PayPal(TM) 및 Google Wallet(TM) 결제 서비스를 포함하나 이에 국한되지 않는 "가상 지갑" 서비스를 제공하는 제3자와 통합한다. 이런 가상 지갑 서비스를 통해 사용자는 하나 이상의 상거래 애플리케이션에서 사용될 수 있는 결제 정보를 저장하는 계정을 생성할 수 있다. 통상, 상거래 애플리케이션은 사용자가 가상 지갑 크리덴셜을 입력하고/하거나 저장된 결제 정보를 리뷰할 수 있는 가상 지갑 서비스의 페이지로 다시 안내되거나 중간-체크아웃(mid-checkout)되게 함으로써 이런 가상 지갑 서비스와 "통합"해야 한다. 가상 지갑 서비스는 금융 네트워크를 사용하여 금융 지불 그 자체를 수행한 후, 상거래 애플리케이션을 제공하는 상점의 계정으로 크레딧(credit)을 발행한다. 가상 지갑 방식은 몇몇의 이점을 제공할 수 있지만, 많은 상거래 애플리케이션은 가상 지갑 서비스와 명확히 통합하거나 가상 지갑 서비스가 그들의 결제 중계기를 통해 매매를 실행하게 하는 것을 원하지 않는다. 추가로, 가상 지갑 서비스를 포함하는 체크아웃 프로세스는 상거래 애플리케이션에서 구매를 시도하는 사용자가 갑자기 완전히 다른 웹사이트로 다시 안내되어 가상 지갑 서비스를 사용하여 매매를 완료할 때 흔히 혼동하거나 혼란스러울 수 있다.

    상술한 바 이외에, 가상 지갑은 통상 상거래 애플리케이션이 모든 가상 카트에서 "가상 지갑으로 구입하기(buy with the virtual wallet)" 버튼을 디스플레이하도록 요구한다. 대부분의 사용자는 가상 지갑에 선-등록되어 있지 않기 때문에, 이는 혼란을 줄 수 있고 비-등록 사용자가 종래의 상거래 구매를 시도할 때 가상 지갑의 "구입하기(buy)" 버튼을 실수로 선택시 카트가 철회될 수 있다. "가상 지갑으로 구입하기" 버튼의 배치를 요구하는 불편함은 종종 스크린 공간이 부족한 모바일 상거래 애플리케이션에서 늘어난다.

    이와 같이, 상거래 체크아웃 및 결제 처리에서는 많은 고려사항이 요구된다.

    본 발명의 제1 실시예에 따른 방법은: 사용자 식별 및 상거래 애플리케이션에서 구매용으로 선택된 하나 이상의 아이템이나 서비스에 대한 요금액을 포함하는 요청을 수신하는 단계; 네트워크 애플리케이션을 실행하는 하나 이상의 서버 컴퓨팅 장치에 의해, 비-일시적 저장매체에 저장된 사용자에 대한 결제 카드 정보를 참조하는 결제 토큰을 생성하는 단계; 네트워크 애플리케이션을 실행하는 하나 이상의 서버 컴퓨팅 장치에 의해, 결제 토큰을 상거래 애플리케이션으로 송신하는 단계; 상거래 애플리케이션으로부터 결제 토큰을 포함하는 요금 요청을 수신하는 단계; 및 결제 토큰을 수신함에 응답하여, 네트워크 애플리케이션을 실행하는 하나 이상의 서버 컴퓨팅 장치에 의해, 상거래 애플리케이션과 연관된 결제 중계 시스템으로 결제 요금 요청을 송신하는 단계를 포함하며, 결제 요금 요청은 결제 카드 정보, 요금액 및 상거래 애플리케이션에 대신하여 요금 요청을 제출하는 승인 표시를 포함한다.

    본 발명의 한 실시예로, 상거래 애플리케이션으로부터 요청을 수신하는 단계는 하나 이상의 결제 필드의 자동-기입을 가능하게 하도록 사용자에 대한 결제 정보를 탐색하는 그래프 API로의 클라이언트-측 호출을 수신하는 단계를 포함한다. 방법은 바람직하기로 상거래 애플리케이션이 하나 이상의 결제 필드를 자동-기입할 수 있게 하도록 사용자에 대한 결제 정보를 상거래 애플리케이션으로 송신하는 단계를 더 포함하며, 결제 정보는 결제 카드 라벨, 만료 일자, 이름 및 청구서 발송지를 포함한다. 특히, 방법은 사용자에 대한 결제 정보를 상거래 애플리케이션으로 송신하기 전에, 결제 정보를 상거래 애플리케이션으로 제공하도록 사용자로부터 승인을 수신하는 단계를 더 포함한다.

    본 발명의 추가의 태양에 따르면, 본 방법은 결제 중계 시스템으로부터 거래 식별자를 수신하는 단계; 및 거래 식별자를 상거래 애플리케이션으로 송신하는 단계를 더 포함한다.

    본 발명의 또 하나의 태양에 따르면, 본 방법은 변환 함수를 사용자의 식별에 적용하여 네트워크 애플리케이션의 사용자의 사용자 ID와 사용자의 식별을 맵핑하는 단계를 더 포함한다.

    본 발명의 추가 실시예로, 상거래 애플리케이션을 대신하여 요금 요청을 제출하도록 승인의 표시를 송신하는 것은 결제 중계 시스템으로부터 상거래 애플리케이션에 제공되는 개인 키를 사용하여 결제 요금의 적어도 일부를 암호화하는 단계를 포함한다.

    본 방법은 추가 실시예로 결제 요금 요청을 결제 중계 시스템으로 송신하기 전에 요금 요청이 상거래 애플리케이션과 연관된 서버 컴퓨팅 장치로부터 유래했음을 확인하는 단계를 포함한다.

    본 발명에 따른 또 다른 실시예에서, 상거래 애플리케이션의 적어도 제1 부분을 실행하는 클라이언트 컴퓨팅 장치로부터, 네트워크 애플리케이션을 실행하는 하나 이상의 서버 컴퓨팅 장치로 정보 요청을 송신하는 단계; 하나 이상의 서버 컴퓨팅 장치로부터, 결제 카드 라벨, 결제 토큰 및 사용자에 대한 결제 정보를 수신하는 단계; 적어도 하나의 프로세서를 사용하여, 체크아웃 사용자 인터페이스의 결제 필드를 결제 카드 라벨 및 사용자에 대한 결제 정보로 자동-기입하는 단계; 및 결제 토큰을 포함하는 요금 요청을 하나 이상의 서버 컴퓨팅 장치로 송신하는 단계를 포함하며, 정보 요청은 사용자 ID(user identification), 사용자에 의한 구매용으로 선택된 주문에 대한 요금액을 포함하는 방법이 제공된다.

    일실시예로, 하나 이상의 서버 컴퓨팅 장치로 정보 요청을 송신하는 단계는 네트워크 애플리케이션의 그래프 API로 호출하는 단계를 포함한다.

    추가의 실시예로, 결제 토큰을 하나 이상의 서버 컴퓨팅 장치로 송신하는 단계는 상거래 애플리케이션의 적어도 제2 부분을 실행하는 서버 컴퓨팅 장치의 네트워크 인터페이스로부터 네트워크 애플리케이션의 결제 API로 호출하는 단계를 포함한다.

    추가의 실시예로, 방법은 컴퓨팅 장치의 공유 메모리의 영역으로부터의 상거래 애플리케이션에 의해 사용자 ID에 액세스하는 단계를 더 포함하며, 사용자 ID는 네트워크 애플리케이션과 상호작용하는 클라이언트 네트워크 애플리케이션에 의해 공유 메모리의 영역에 초기에 저장되었다.

    본 방법은 네트워크 애플리케이션으로부터의 결제 정보가 주문을 완료하는데 사용될 수 있음을 표시하는 선택가능한 체크아웃 옵션(checkout option)을 렌더링하는 단계를 더 포함할 수 있다.

    본 발명의 또 다른 태양에 따르면, 네트워크 애플리케이션을 실행하는 하나 이상의 서버 컴퓨팅 장치; 및 사용자의 하나 이상의 이름, 결제 카드 번호, 결제 카드의 만료 일자, 사용자의 상품 배송지 및 사용자에 대한 청구서 발송지를 각각 포함하는 복수의 사용자에 대한 결제 정보를 가지는 프로필 저장 모듈; 및 하나 이상의 서버 컴퓨팅 장치에 의해 실행될 때, 시스템이: 상거래 애플리케이션으로부터 상거래 애플리케이션의 카트 내에서 사용자에 의해 선택되는 하나 이상의 아이템 또는 서비스에 대한 요금액을 포함하는 요청을 식별하고; 사용자와 연관된 결제 정보를 식별하며; 사용자와 연관된 결제 카드 번호를 참조하는 결제 토큰을 생성하고; 결제 토큰, 카드 라벨 및 사용자에 대한 결제 정보를 상거래 애플리케이션으로 송신하며; 상거래 애플리케이션으로부터 결제 토큰을 수신하면, 상거래 애플리케이션과 연관된 결제 중계 시스템으로 결제 요금 요청을 송신하게 하는 명령어를 포함하는 비-일시적 저장매체를 포함하는 시스템이 제공되며, 결제 요청은 결제 카드 번호, 요금액 및 상거래 애플리케이션을 대신하여 요금 요청을 제출하는 승인의 표시를 포함한다.

    본 시스템의 한 실시예로, 상기 명령어는 하나 이상의 서버 컴퓨팅 장치에 의해 실행될 때 시스템이 또한: 사용자가 상거래 애플리케이션의 카트 내 하나 이상의 아이템 또는 서비스의 구매를 완료하지 않았다고 결정하고; 하나 이상의 아이템 또는 서비스에 관한 세부사항을 포함하는 메시지 및 하나 이상의 아이템 또는 서비스를 구매하는 옵션을 생성하며; 메시지를 사용자에게 제공하게 한다.

    추가의 실시예로, 상기 명령어는 하나 이상의 서버 컴퓨팅 장치에 의해 실행될 때 시스템이 소셜 네트워킹 시스템의 뉴스피드로 사용자에게 메시지를 제공하게 한다.

    또 하나의 실시예로, 상기 명령어는 하나 이상의 서버 컴퓨팅 장치에 의해 실행될 때 시스템이 또한 변환 함수를 사용자의 식별에 적용하여 상거래 애플리케이션으로부터 요청에서 수신된 사용자의 식별을 사용자 ID와 맵핑하게 한다.

    또 다른 실시예로, 상기 명령어는 하나 이상의 서버 컴퓨팅 장치에 의해 실행될 때 시스템이 또한 상거래 애플리케이션을 대신하여 요금 요청을 제출하도록 승인의 표시를 제공하기 위해 결제 중계 시스템으로부터 상거래 애플리케이션으로 제공되는 개인 키를 사용하여 결제 요금 요청의 적어도 일부를 암호화하게 한다.

    바람직하게, 네트워크 애플리케이션은 본 방법이나 시스템의 모든 실시예들에서 소셜 네트워킹 시스템을 포함한다.

    본 발명의 실시예들은 상거래 결제 및 체크아웃 프로세스의 용이성과 효율성을 증가시키기 위한 방법 및 시스템의 해당 분야에서 이점을 제공하고/하거나 하나 이상의 상술한 과제 또는 다른 과제를 해결한다. 특히, 하나 이상의 실시예들은 사용자에 대한 결제 정보를 제공함으로써 체크아웃의 불편 및 그와 관련된 포기된 거래를 줄이는데 도움을 준다. 게다가, 하나 이상의 실시예들은 이런 이점을 제공하면서 상거래 애플리케이션이 결제 중계기와의 기존의 관계를 사용하여 거래를 처리할 수 있게 한다.

    따라서, 하나 이상의 실시예들은 상거래 애플리케이션이 체크아웃 동안 결제 정보를 제공하는 사용자의 부담을 줄이거나 제거하는 개선된 체크아웃 과정(checkout flow)을 제공할 수 있게 해준다. 게다가, 개선된 체크아웃 과정은 용이하게 상거래 애플리케이션과 통합할 수 있고, 사용자가 그들을 용이하고 신속하게 인증하며 다수의 상거래 애플리케이션을 통해 상품 및/또는 서비스를 지불할 수 있게 해준다. 추가로, 하나 이상의 실시예들은 옵션이 구매의 개연성을 증가시킬 가능성이 있을 때 저장된 결제 정보를 사용하는 옵션을 지능적이고 동적으로 제공할 수 있다. 게다가, 저장된 결제 정보를 사용하는 옵션이 구매의 개연성을 증가시키지 않는 경우, 옵션은 제공되지 않을 수 있고; 이로써 그래픽 인터페이스 혼란을 감소시킬 수 있다.

    본 발명의 예시적인 실시예의 추가적인 특징 및 장점은 후술되는 설명에 제시될 수 있고, 부분적으로 설명으로부터 명백할 것, 또는 그러한 예시적인 실시예의 실행에 의해 깨달아질 수 있다. 그러한 실시예의 특징 및 장점은 첨부된 청구항에서 특히 언급된 기구의 수단 및 조합에 의해 실현되고 얻어질 수 있다. 이들 및 다른 특징은 후술되는 설명 및 첨부된 청구항으로부터 더 완전히 분명해질 것이고, 또는 아래에 제시되는 예시적인 실시예의 실행에 의해 인식될 수 있다.

    본 발명의 내용 중에 포함되어 있다.

    본 발명의 상술한 및 다른 장점 및 특징이 얻어질 수 있는 방법을 설명하기 위하여, 간단히 상술한 본 발명의 보다 특정한 설명이 첨부된 도면에 도시된 특정한 실시예를 참조하여 만들어질 것이다. 도면은 치수에 맞게 도시된 것이 아니고, 도면을 통한 설명의 목적을 위하여 유사한 구조의 요소 또는 기능이 일반적으로 유사한 도면 번호에 의해 표시될 수 있음을 유의하여야 한다. 이하의 도면에서, 괄호로 묶인 텍스트 및 대시 처리(예컨대, 큰 대시, 작은 대시, 점-대시, 점)된 경계를 가지는 블록은 본 명세서에서 본 발명의 실시예에 추가적인 특징을 더하는 선택적인 특징 또는 구동을 설명하기 위해 사용된다. 하지만, 이러한 기호는 이들이 유일한 옵션 또는 선택적인 구동인 것 및/또는 실선의 경계를 가지는 블록은 본 발명의 특정 실시예에서 선택적이지 않은 것으로 받아들여지면 안된다. 이들 도면은 본 발명의 일반적인 실시예만을 도시하고 따라서 그 범위를 제한하는 것으로 고려되지 않으며, 본 발명은 동반된 도면을 사용하여 추가적인 구체성 및 상세와 함께 서술되고 설명될 것임을 이해하여야 한다:
    도 1은 본 발명의 하나 이상의 실시예들에 따라 상거래 애플리케이션을 사용하여 구매를 용이하게 하기 위한 시스템의 개략도를 도시한다.
    도 2는 본 발명의 하나 이상의 실시예들에 따라 도 1의 시스템의 상거래 애플리케이션, 네트워크 애플리케이션 및 결제 네트워크의 상세한 개략도를 도시한다.
    도 3a-3b는 본 발명의 하나 이상의 실시예들에 따라 도 2의 상거래 애플리케이션, 네트워크 애플리케이션 및 결제 네트워크 사이의 상호작용을 도시하는 순서 름도를 도시한다.
    도 4는 본 발명의 하나 이상의 실시예들에 따라 네트워크 애플리케이션에 의해 저장된 결제 정보를 사용하는 옵션을 동적으로 제공하는 방법을 도시하는 순서 흐름도를 도시한다.
    도 5a-5g는 본 발명의 하나 이상의 실시예들에 따라 상거래 애플리케이션을 사용하는 금융 거래를 완료하는 사용자 인터페이스를 도시한다.
    도 6은 본 발명의 하나 이상의 실시예들에 따라 이전에 포기된 상거래 애플리케이션의 가상 카트의 구매를 사용자가 완료할 수 있게 하는 구매 메시지의 개략도를 도시한다.
    도 7은 본 발명의 하나 이상의 실시예들에 따라 상거래 애플리케이션에서 금융 거래를 용이하게 하는 방법의 일련의 행동의 흐름도를 도시한다.
    도 8은 본 발명의 하나 이상의 실시예들에 따라 상거래 애플리케이션에서 금융 거래를 용이하게 하는 다른 방법의 일련의 행동의 흐름도를 도시한다.
    도 9는 본 발명의 하나 이상의 실시예들에 따라 네트워크 애플리케이션에 의해 저장된 결제 정보를 사용하는 옵션을 사용자에게 동적이고 지능적으로 제공하는 방법의 일련의 행동의 흐름도를 도시한다.
    도 10은 본 발명의 하나 이상의 실시예들에 따라 네트워크 애플리케이션에 의해 저장된 결제 정보를 사용하는 옵션을 사용자에게 동적이고 지능적으로 제공하는 다른 방법의 일련의 행동의 흐름도를 도시한다.
    도 11은 본 발명의 하나 이상의 실시예들에 따라 예시적인 컴퓨팅 장치의 블록도를 도시한다.
    도 12는 본 발명의 하나 이상의 실시예들에 따라 소셜 네트워킹 시스템의 예시적인 네트워크 환경이다.

    본 발명의 하나 이상의 실시예들은 상거래 결제 및 체크아웃 프로세스의 용이성 및 효율성을 증가시킨다. 특히, 하나 이상의 실시예들은 사용자에 대한 결제 정보를 제공하여 체크아웃의 불편 및 그와 관련된 포기된 거래를 줄이는데 도움을 준다. 게다가, 하나 이상의 실시예들은 이런 이점을 제공하면서 상거래 애플리케이션이 결제 중계기와의 기존의 관계를 사용하여 거래를 처리할 수 있게 한다.

    따라서, 하나 이상의 실시예들은 상거래 애플리케이션이 체크아웃 동안 결제 정보를 제공하는 사용자의 부담을 줄이거나 제거하는 개선된 체크아웃 과정을 제공할 수 있게 해준다. 게다가, 개선된 체크아웃 과정은 용이하게 상거래 애플리케이션과 통합할 수 있고, 사용자가 그들을 용이하고 신속하게 인증하며 다수의 상거래 애플리케이션을 통해 상품 및/또는 서비스를 지불할 수 있게 해준다. 추가로, 하나 이상의 실시예들은 옵션이 구매의 개연성을 증가시킬 가능성이 있을 때 저장된 결제 정보를 사용하는 옵션을 지능적이고 동적으로 제공할 수 있다. 게다가, 저장된 결제 정보를 사용하는 옵션이 구매의 개연성을 증가시키지 않는 경우, 옵션은 제공되지 않을 수 있고, 이로써 그래픽 인터페이스 혼란을 감소시킬 수 있다.

    특히, 본 발명의 하나 이상의 실시예들은 상거래 애플리케이션과 결제 중계기 사이의 중개의 역할을 하는 전자상거래 결제 퍼실리테이터(facilitator)를 포함한다. 전자상거래 결제 퍼실리테이터는 사용자에 의한 몇몇의 간단한 선택에 기반하여 저장된 결제 정보를 상거래 애플리케이션으로 제공할 수 있다. 이를 통해 사용자는 상거래 매매를 용이하고 안전하게 완료할 수 있고, 사용자의 체크아웃 경험을 간소화하고 구매 장벽을 줄여준다. 게다가, 전자상거래 결제 퍼실리테이터는 결제 정보(payment details)를 상거래 애플리케이션의 결제 중계기로 전달할 수 있다. 이를 통해 전자상거래 결제 퍼실리테이터에 의해 제공된 거래는 상거래 애플리케이션의 제공자가 거래하는데 익숙해진 동일한 채널과 네트워크를 사용하여 거래를 축적하고 체결할 수 있다.

    예컨대, 도 1은 본 발명의 한 실시예에 따른 시스템(100)을 도시하는 개략도이다. 시스템(100)의 개요는 도 1과 관련하여 후술될 것이다. 이후, 시스템(100)의 구성요소 및 프로세스의 더 상세한 설명은 나머지 도면들과 관련하여 기술될 것이다.

    도 1에 도시된 바와 같이, 시스템(100)은 사용자(102), 상거래 애플리케이션(104), 전자상거래 결제 퍼실리테이터(106) 및 결제 네트워크(116)를 포함할 수 있다. 상거래 애플리케이션은 상거래 애플리케이션(104)에서 사용자(102)의 체크아웃 경험을 간소화하도록 전자상거래 결제 퍼실리테이터(106)와 상호작용할 수 있다. 금융 거래를 완료하기 위해, 전자상거래 결제 퍼실리테이터(106)는 결제 네트워크(116)를 사용하여 결제를 처리할 목적으로 결제 중계 시스템(108)과 상호작용할 수 있다. 결제 네트워크(116)는 결제 중계 시스템(108), 결제 처리 시스템(110), 카드 네트워크 시스템(112) 및 발행 은행 시스템(114)을 포함할 수 있다. 그러나, 다른 실시예로, 결제 네트워크(116)는 하나 이상의 더 적은 행위를 포함하지만, 본 발명의 대부분의 실시예에서 결제 네트워크(116)는 적어도 결제 중계 시스템(108)을 포함한다. 하기에 더 상세히 설명되는 바와 같이, 시스템의 각 구성요소가 실행할 수 있고/있거나 하나 이상의 컴퓨팅 장치에 의해 구현될 수 있다.

    도 1에 도시된 실시예는 사용자(102)가 상거래 애플리케이션(104)에 액세스하는 것을 포함한다. 하기에 더 상세히 설명되는 바와 같이, 상거래 애플리케이션(104)은 가령 웹 애플리케이션 또는 네이티브 애플리케이션과 같은 네트워크 애플리케이션을 포함할 수 있다. 상거래 애플리케이션(104)은 상품 및/또는 서비스의 판매를 사용자(102)에게 제공할 수 있다. 사용자(102)는 상거래 애플리케이션(104)을 통해 제공되는 하나 이상의 아이템이나 서비스를 선택하여 주문을 시작할 수 있다. 주문을 완료하기 위해, 사용자(102)는 관례상 최대 20개의 다른 결제 필드들, 가령 사용자의 이름, 중간 이름, 성, 결제 카드(신용카드, 직불카드 등) 번호, 결제 카드의 만료 일자(년 및/또는 월), 결제 카드와 연관된 (거리 명, 집 번지, 도시, 주 또는 현, 집 코드, 국가 등을 포함하는) 청구서 발송지(billing address), 결제 카드와 연관된 전화번호 및 (청구서 발송지와 유사한 필드를 포함하는) 하나 이상의 상품 배송지(shipping addresses)를 입력하도록 요구된다.

    전자상거래 결제 퍼실리테이터(106)는 사용자(102)에 대한 결제 정보를 저장할 수 있고, 사용자(102)의 체크아웃 경험을 간소화하도록 정보의 적어도 일부를 상거래 애플리케이션(104)으로 제공할 수 있다. 더 상세하게, 상거래 애플리케이션(104)은 전자상거래 결제 퍼실리테이터(106)에 의해 관리되는 결제 정보를 사용하는 선택가능한 옵션을 디스플레이하거나 제공할 수 있다. 사용자(102)가 선택가능한 옵션을 선택하면, 상거래 애플리케이션은 전자상거래 결제 퍼실리테이터(106)의 도움으로 거래를 완료할 수 있다. 예컨대, 상거래 애플리케이션(104)은 전자상거래 결제 퍼실리테이터(106)로부터 결제 정보를 요청할 수 있다. 요청에 응답하여, 전자상거래 결제 퍼실리테이터(106)는 상거래 애플리케이션(104)으로 결제 정보 및 결제 토큰을 제공할 수 있다.

    상거래 애플리케이션(104)은 결제 정보를 체크아웃 결제 필드로 자동-기입할 수 있다. 상술한 바와 같이, 전자상거래 결제 퍼실리테이터(106)로부터의 결제 정보를 사용하여 결제 필드를 자동-기입하는 것은 사용자에 대한 체크아웃 프로세스의 용이성을 증가시킬 수 있다. 적어도 하나의 실시예로, 전자상거래 결제 퍼실리테이터(106)는 완전한 결제 카드 번호를 상거래 애플리케이션(104)으로 송신하지 않는다. 그 대신, 전자상거래 결제 퍼실리테이터(106)는 카드번호 라벨(즉, 마지막 자릿수를 제외한 결제 카드의 모든 자릿수에 대해 "X") 및 결제 토큰을 송신할 수 있다. 결제 토큰 및 결제 카드 라벨의 사용을 통해 상거래 애플리케이션(104)은 PCI 준수 요구를 피할 수 있다. 게다가, 상거래 애플리케이션(104)이 사용자(102)로부터 전체 결제 카드 번호를 수신하는 것을 방지함으로써, 전자상거래 결제 퍼실리테이터(106)는 사용자(102)가 상거래 애플리케이션으로 결제 카드 번호를 제공할 필요 없이 하나 이상의 결제 카드를 사용하여 임의의 수의 상거래 애플리케이션으로부터 아이템을 구매할 수 있게 하여 보안을 향상시키고 사기 행위를 줄일 수 있다.

    자동-기입된 결제 정보를 검토할 때, 사용자(102)는 주문의 구매를 승인할 수 있다. 상거래 애플리케이션(104)은 결제 토큰과 함께 승인을 전자상거래 결제 퍼실리테이터(106)로 전달할 수 있다. 승인 및 결제 토큰을 수신할 때, 전자상거래 결제 퍼실리테이터(106)는 (통상 통신 네트워크를 통해) 거래로서 (전체 결제 카드 번호를 포함하는) 결제 정보를 결제 중계 시스템(108)으로 전달할 수 있다. 하기에 더 상세히 설명되는 바와 같이, 결제 토큰은 결제 카드 번호와 맵핑할 수 있고, 전자상거래 결제 퍼실리테이터(106)가 결제 카드 번호를 찾고 결제 중계 시스템(108)으로 송신하게 할 수 있다.

    거래가 전자상거래 결제 퍼실리테이터(106)로부터 수신되면, 결제 중계 시스템(108)은 이후 판매자의 매입 은행(acquiring bank)에 의해 사용되는 프로세서(예컨대, 결제 처리 시스템(110))로 거래를 전달한다. 결제 카드의 타입에 기반하여, 결제 처리 시스템(110)은 적절한 카드 네트워크 시스템(112)으로 거래를 전송할 수 있다. 이후, 카드 네트워크 시스템(112)은 결제 카드를 사용자(102)에게 발행한 발행 은행 시스템(114)으로 거래를 전달할 수 있다.

    발행 은행 시스템(114)은 거래를 승인하거나 거절하며, 그 결정을 카드 네트워크 시스템(112)으로 다시 송신한다. 이후, 그 결정은 카드 네트워크 시스템(112)으로부터 매입 은행의 선호되는 결제 처리 시스템(110)으로 다시 전송된다. 이후, 결제 처리 시스템(110)은 그 결정을 결제 중계 시스템(108)으로 다시 전달할 수 있다. 하나 이상의 실시예로, 결제 중계 시스템(108)은 거래 및 결정에 관한 세부사항을 저장한 후 그 결정을 전자상거래 결제 퍼실리테이터(106)로 다시 전달한다.

    또한, 결제 중계 시스템(108)은 지불 업무를 수행할 수 있고, 매입 은행의 선호된 결제 처리 시스템(110)을 통해 캡처된 거래의 일괄된 일별 지불을 매입 은행에 제출하는 것을 포함한다. 이후, 결제 처리 시스템(110)은 일괄된 지불을 매입 은행의 서버(미도시)로 전달하며, 서버는 사용자(102)/상거래 애플리케이션(104) 거래로부터의 기금을 판매자의 계좌로 예치한다. 이후, 매입 은행은 결제 처리 시스템(110)으로 이런 주문의 지불로서 기금에 대한 요청을 송신하고, 결제 처리 시스템(110)은 적절한 카드 네트워크 시스템(112)으로 기금 요청을 전달하며, 이어서 발행 은행 시스템(114)으로 기금 요청을 전달한다. 이후, 발생 은행 시스템(114)은 거래를 사용자(102)의 계좌에 게시하고 기금의 양도를 카드 네트워크 시스템(112)으로 전달한 후, 결제 처리 시스템(110)과 이후 매입 은행으로 전달된다.

    본 명세서의 관점에서 당업자는 전자상거래 결제 퍼실리테이터(106)가 사용자(102) 및 상거래 애플리케이션(104) 모두에게 많은 이점을 제공할 수 있다는 점을 인식할 것이다. 예컨대, 전자상거래 결제 퍼실리테이터(106)는 결제 필드에 자동으로 기입될 정보를 제공함으로써 체크아웃 프로세스 동안 사용자(102)가 다수의 결제 필드를 기입해야 하는 요구를 줄이거나 제거할 수 있다. 이는 사용자(102)에 대한 체크아웃 프로세스의 용이성 및 속도를 크게 증가시킬 수 있다. 사용자(102)에 대한 증가된 용이성은 철회되는 카트를 줄일 수 있고; 따라서, 상거래 애플리케이션(104)에 대한 판매를 증가시킬 수 있다.

    추가로, 전자상거래 결제 퍼실리테이터(106)를 통해 사용자(102)는 전체 결제 카드(신용카드, 직불카드 등) 정보를 임의의 상거래 애플리케이션(104)으로 제공할 필요 없이 저장된 결제 정보를 사용하여 가상의 임의의 상거래 애플리케이션(104)에서 구매할 수 있다. 따라서, 전자상거래 결제 퍼실리테이터(106)는 상거래 애플리케이션(104)을 사용하는 구매의 용이성을 증가시키면서 보안도 또한 향상시킬 수 있다.

    도 2는 본 발명의 한 실시예에 따른 시스템(100a)을 도시하는 개략도를 도시한다. 시스템(100a)은 시스템(100)의 예시적인 일실시예를 도시한다. 특히, 도 2는 상거래 애플리케이션(104a) 및 전자상거래 결제 퍼실리테이터(106a)의 일실시예를 도시한다. 도 2에 도시된 바와 같이, 사용자(102)는 컴퓨팅 장치(202)를 사용하여 상거래 애플리케이션(104a)에 액세스할 수 있다. 상거래 애플리케이션(104a)이 웹 애플리케이션인 실시예에서, 사용자(102)는 웹 브라우저(204) 애플리케이션이나 사용자 상거래 애플리케이션(206)(또한, 이하에서 특수-목적용 클라이언트 애플리케이션이라고도 함)을 사용하여 상거래 애플리케이션(104a)과 상호작용할 수 있고, 따라서 이런 애플리케이션은 상거래 애플리케이션(104a)의 일부로 간주될 수 있거나 그렇지 않을 수 있다.

    상거래 애플리케이션(104a)이 웹 애플리케이션인 이런 실시예에서, 상거래 애플리케이션(104a)의 백엔드(즉, 상거래 애플리케이션(104a)에 대한 데이터 및 로직을 제공하는 애플리케이션 세트)는 웹 애플리케이션 서버(208)(Apache Software Foundation에 의한 Apache HTTP 서버, Microsoft Corporation에 의한 Internet Information Services(IIS), NGINX, Inc.에 의한 nginx, 오픈 소스 ligttpd 웹 서버 및 Google Inc.에 의한 Google Web Server(GWS)를 포함하나 이에 제한되지 않음) 및 선택적으로 관계형 또는 비-관계형 데이터베이스(210)(Oracle Corporation에 의한 MySQL, PostgreSQL Global Development Group에 의한 PostgreSQL, Apache Software Foundation에 의한 Apache Cassandra, Apache Software Foundation에 의한 HBase 및 10gen에 의한 MongoDB)를 포함할 수 있다.

    상거래 애플리케이션(104a)이 네이티브 애플리케이션인 실시예에서, 사용자(102)는 사용자 상거래 애플리케이션(206)을 이용하며, 이는 애플리케이션 서버(212)(예컨대, Java 애플리케이션 서버) 및/또는 별도의 서버 컴퓨팅 장치(214)의 데이터베이스(208)를 이용할 수 있어서 네트워크 애플리케이션으로 간주될 수 있거나, 애플리케이션 서버(212) 또는 데이터베이스(210)을 이용할 수 없어서 "독립형(standalone)" 애플리케이션으로 간주될 수 있다. 따라서, "상거래 애플리케이션"이란 용어의 문맥에 따라, 이 용어는 사용자의 컴퓨팅 장치(202) 및/또는 서버 컴퓨팅 장치(214)에서 실행하는 소프트웨어를 일컬을 수 있다. 특히, 상거래 애플리케이션 소프트웨어의 적어도 제1 부분은 사용자의 컴퓨팅 장치(202)에서 실행할 수 있고 상거래 애플리케이션 소프트웨어의 적어도 제2 부분은 하나 이상의 서버 컴퓨팅 장치(214)의 세트에서 실행할 수 있다.

    상거래 애플리케이션(104a)은 가령 사용자(102)와 같은 사용자들에 대한 결제 정보를 획득하도록 전자상거래 결제 퍼실리테이터(106a)와 상호작용할 수 있다. 추가로, 전자상거래 결제 퍼실리테이터(106a)는 도 1과 관련하여 상술한 바와 같이 거래를 처리하도록 결제 네트워크(116)의 결제 중계 시스템(108)과 상호작용할 수 있다. 설명된 실시예는 하나의 결제 중계 시스템(108) 및 하나의 결제 네트워크(116)를 도시한다. 본 명세서의 관점에서 당업자는 본 발명이 그렇게 제한되지 않으며 전자상거래 결제 퍼실리테이터(106a)가 결제 및 금융 거래를 처리하도록 임의의 수의 다른 결제 중계 시스템과 결제 네트워크와 접속할 수 있음을 인식할 것이다. 예컨대, 전자상거래 결제 퍼실리테이터(106a)는 제1 상거래 애플리케이션(104a)에 대한 제1 결제 중계 시스템(108)과 접속하고, 제2 상거래 애플리케이션에 대한 제2 결제 중계 시스템과 접속할 수 있다.

    도 2에 도시된 실시예의 시스템(100a)은 전자상거래 결제 퍼실리테이터(106a)를 포함하는 네트워크 애플리케이션(218)을 제공하는 하나 이상의 서버 컴퓨팅 장치(216) 세트를 포함한다. 본 발명의 하나 이상의 실시예에서, 네트워크 애플리케이션(218)은 소셜 네트워킹 시스템(220)(가령 FACEBOOK(TM)이나 이에 국한되지 않음)을 포함하지만, 다른 실시예에서, 네트워크 애플리케이션(218)은 이메일 애플리케이션, 검색 엔진 애플리케이션, 은행 애플리케이션 또는 사용자 계정을 이용하는 임의의 수의 다른 애플리케이션 타입을 포함하나 이에 국한되지 않는 다른 타입의 애플리케이션을 포함할 수 있다. 네트워크 애플리케이션(218)이 소셜 네트워킹 시스템(220)을 포함하는 하나 이상의 실시예에서, 네트워크 애플리케이션(218)은 복수의 사용자 및 컨셉을 표현하고 분석하기 위한 소셜 그래프 모듈(222)을 포함할 수 있다. 소셜 그래프 모듈(222)의 노드 저장 모듈(224)은 사용자에 대한 노드, 컨셉에 대한 노드 및 아이템에 대한 노드를 포함하는 노드 정보를 저장할 수 있다. 소셜 그래프 모듈(222)의 에지 저장 모듈(226)은 소셜 네트워킹 시스템(220) 내에서 발생하는 노드 및/또는 행위 사이의 관계를 포함하는 에지 정보를 저장할 수 있다. 소셜 네트워킹 시스템, 소셜 그래프, 에지 및 노드에 관한 추가의 세부사항은 도 12에 대하여 하기에 제시된다.

    네트워크 애플리케이션(218)의 전자상거래 결제 퍼실리테이터(106a)는 네트워크 애플리케이션(218)의 사용자들의 결제 정보에 대한 저장소를 제공하는 프로필 저장 모듈(228)을 포함할 수 있다. 예컨대, 사용자(102)는 사용자가 네트워크 애플리케이션(218)으로 결제 정보를 제공하게 할 수 있는 "계정"을 네트워크 애플리케이션(218)으로 생성할 수 있다. 이후, 네트워크 애플리케이션(218)은 프로필 저장 모듈(228)에 그 결제 정보를 저장할 수 있다. 하나 이상의 실시예에서, 프로필 저장 모듈(228)은 사용자(102)와 관련하여 하나 이상의: 이름, 중간 이름, 성, 결제 카드 번호(예컨대, 신용카드, 직불카드), 결제 카드의 만료 일자(년 및/또는 월), 결제 카드의 카드 보안 코드(예컨대, CVV(Card Verification Value) 또는 CVV2), 신용카드와 연관된 (거리 명, 집 번지, 도시, 주 또는 현, 집 코드, 국가 등을 포함하는) 청구서 발송지, 신용카드와 연관된 전화번호, (청구서 발송지와 동일한 필드를 포함하는) 하나 이상의 상품 배송지를 저장할 수 있다. 결제 카드가 직불카드를 포함하는 경우, 프로필 저장 모듈은 또한 직불카드에 대한 개인식별번호(PIN)를 저장할 수 있다. 네트워크 애플리케이션(218)이 소셜 네트워킹 시스템(220)을 포함하는 실시예에서, 프로필 저장 모듈(228)에 저장된 결제 정보는 사용자(102)를 나타내는 노드 저장 모듈(224)의 노드와 연관될 수 있다.

    설명된 실시예에서, 전자상거래 결제 퍼실리테이터(106a)는 또한 결제 중계 식별 모듈(230)을 포함한다. 상거래 애플리케이션(104a)으로부터 요금 요청을 수신하면, 결제 중계 식별 모듈(230)은 복수의 결제 중계 시스템 중 어느 결제 중계 시스템(108)이 요금 요청을 처리하는데 사용되는지를 결정할 수 있다. 한 실시예로, 결제 중계 식별 모듈(230)은 요금 요청 및 프로필 저장 모듈(228)에 저장된 정보를 이용하여 이런 결정을 할 수 있다.

    예컨대, 본 발명의 한 실시예로, 프로필 저장 모듈(228)은 상거래 애플리케이션(104a) 및 상거래 애플리케이션(104a)을 운영하는 판매자 중 하나 또는 둘 모두에 대해 어느 결제 중계 시스템이 상거래 애플리케이션이나 판매자에 대한 요금 요청을 처리하는데 사용되는지를 표시하는 결제 중계 식별자를 수신 및/또는 저장하도록 더 구성된다. 추가로, 프로필 저장 모듈(228)은 또한 식별된 결제 중계 시스템과 상호작용할 때 어느 계정으로 사용자(102)로부터의 기금이 입금(credited)되는지를 식별하는데 사용되는 애플리케이션 식별자(또는 판매자 식별자 또는 계정 식별자)를 포함할 수 있다. 본 발명의 일부 실시예로, 결제 중계 식별 모듈(230)은 수신된 청구 요청 그 자체 내로부터의 정보에 부분적으로 또는 배타적으로 기반하여 결제 중계 시스템(108)을 식별한다.

    도 2에 도시된 바와 같이, 하나 이상의 실시예로, 전자상거래 결제 퍼실리테이터(106a)는 거래 데이터베이스(232)를 포함할 수 있다. 거래 데이터베이스(232)는 각 사용자 및/또는 각 상거래 애플리케이션에 대해 개시되고/되거나 완료되는 거래의 세부사항을 저장할 수 있다. 따라서, 거래 데이터베이스(232)를 통해 사용자는 전자상거래 결제 퍼실리테이터(106a)의 도움으로 이루어진 모든 구매에 대한 세부사항을 수신할 수 있다. 당업자는 이를 통해 사용자가 네트워크 애플리케이션(218)으로 로그인하고 임의의 다수의 다른 상거래 애플리케이션에 대해 이루어진 구매에 관한 거래 세부사항을 검색할 수 있음을 인식할 것이다. 이는 전자상거래 결제 퍼실리테이터(106a)를 이용하지 않는 사용자가 사용자 이름 및 패스워드를 기억하고 거래 데이터베이스(232)가 제공할 수 있는 정보 및 세부사항을 얻도록 몇몇의 상거래 애플리케이션으로 로그인해야 할 때 상당한 이점을 제공한다.

    거래 데이터베이스(232)는 각 거래에 대해 시도되거나 완료된 날짜, 거래가 완료된 상거래 애플리케이션의 표시, 거래의 금액, 거래의 일부로서 구매된 아이템/서비스(선택적으로 오픈 그래프 상품의 URL), 거래 상태(완료, 배송, 진행중, 환불, 거절 등), 사용자가 거래를 참조하도록 상거래 애플리케이션으로 제공하게 할 수 있는 거래 ID 또는 다른 세부사항들을 제공할 수 있다.

    거래 데이터베이스(232)를 통해 상거래 애플리케이션을 운영하는 사용자 또는 판매자는 상술한 하나 이상의 거래 세부사항을 포함하는 가령 거래 이력과 같은 거래에 관한 세부사항을 검색할 수 있다. 네트워크 애플리케이션(218)이 소셜 네트워크를 포함하는 경우, 거래 데이터베이스(232)는 소셜 그래프로부터 풀링된 상거래 애플리케이션(104a)으로부터 아이템을 구매한 사용자에 대한 추가의 신상 정보(사용자의 지리적 위치, 사용자의 연령, 사용자의 성별 등)를 제공할 수 있다.

    상술한 바 이외에, 전자상거래 결제 퍼실리테이터(106a)는 또한 토큰 생성기(234)를 포함할 수 있다. 토큰 생성기(234)는 전자상거래 결제 퍼실리테이터(106a)가 결제 카드 번호를 송신하는 대신에 상거래 애플리케이션(104a)으로 송신할 수 있는 결제 토큰을 생성할 수 있다. 토큰 생성기(234)는 포인터로서 "토큰(token)"이라고 하는 랜덤 문자열(random string)을 본래의 결제 카드 번호로 반환할 수 있다. 바람직하게, 토큰은 본래의 결제 카드 번호와 알고리즘적 관계를 가지지 않으므로, 결제 카드 번호는 토큰 그 자체에 기반하여 (가령, 단지 복호화 알고리즘을 토큰에 적용하여) 도출될 수 없다. 따라서, 이런 토큰은 카드홀더(cardholder) 데이터로 간주되지 않는데, 이는 랜덤 문자열이 결제 카드 번호의 리스트와 그들에 대응하는 토큰을 포함하는 토큰 생성기(234)와 프로필 저장 모듈(228)의 사용 없이 임의의 본래의 카드홀더 데이터를 추정할 수 없는 것이기 때문이다. 토큰 생성기(234)에 의해 생성된 결제 토큰을 통해 상거래 애플리케이션(104a)은 하기에 설명되는 바와 같이 예컨대 PCI DSS 표준과 같은 규제 표준을 준수할 필요 없이 결제를 처리할 수 있다.

    도 2에 도시된 실시예에서, 전자상거래 결제 퍼실리테이터(106a)는 서비스 조건(TOS) 모듈(235)을 포함한다. TOS 모듈(235)은 요청에서 식별된 사용자(102)가 상거래 애플리케이션(104a)이 상거래 애플리케이션(104a) 내에서 체크아웃을 수행할 목적으로 결제 프로필 저장 모듈(228)에 의해 저장된 결제 정보를 이용할 수 있게 하고자 한다고 네트워크 애플리케이션(218)으로 표시했는지를 결정할 수 있다. 하나 이상의 실시예로, 승인 값(permission value)은 사용자(102)가 사용자의 결제 정보를 이용할 능력을 특정 상거래 애플리케이션(104a)에게 부여했는지를 표시하는 상거래 애플리케이션 식별자와 연관된 부울 값(Boolean value)이다.

    하나 이상의 실시예로, 사용자(102)가 상거래 애플리케이션(104a) 내 체크아웃 과정을 시작하면, 사용자(102)는 사용자(102)으 결제 정보에 액세스하도록 상거래 애플리케이션(104a)에 대한 승인을 구하는 사용자 인터페이스 요소를 제시받는다. 사용자가 긍정적으로 응답하면, 컴퓨팅 장치(102)에서 실행하는 사용자 네트워킹 시스템(236) 및/또는 사용자 네트워킹 애플리케이션 소프트웨어 개발 키트(SDK) 라이브러리(238)의 라이브러리(본 명세서에서 하기에 둘 모두 상세히 기술됨)는 업데이트 승인 메시지를 전자상거래 결제 퍼실리테이터로 전송할 수 있고, TOS 모듈(235)이 그 사용자(102) 및 그에 따라 그 상거래 애플리케이션(104a)에 대한 승인 값을 업데이트하게 할 수 있다. 대안의 실시예로, 사용자(102)에 대한 요금 요청을 상거래 애플리케이션(104a)으로부터 수신시 TOS 모듈(235)은 승인 값을 이용하여 요금 요청을 결제 중계기로 계속 발행해야 하는지를 결정한다. 그러나, 획득시 TOS 모듈(235)은 사용자의 결제 정보를 제공하기 전에 네트워크 애플리케이션이 결제 정보를 상거래 애플리케이션(104a)으로 제공하도록 승인했음을 보장할 수 있다.

    또한, 도 2의 실시예는 사용자 네트워킹 애플리케이션(236)을 포함한다. 네트워크 애플리케이션(218)이 소셜 네트워킹 시스템(220)을 포함하는 실시예에서, 사용자 네트워킹 애플리케이션(236)을 통해 사용자(102)는 소셜 네트워킹 시스템(220)을 이용할 수 있다. 사용자 네트워킹 애플리케이션(236)은 클라이언트 장치에서 실행하는 네이티브 소셜 네트워킹 애플리케이션을 포함할 수 있다. 예컨대, 하나 이상의 실시예에서, 사용자 네트워킹 애플리케이션(236)은 FACEBOOK(TM) 네이티브 애플리케이션을 포함할 수 있다. 대안의 실시예로, 사용자 네트워킹 애플리케이션(236)은 엄격히 소셜 네트워킹 목적이 아닐 수 있다. 사용자 네트워킹 애플리케이션(236)은 사용자(102)가 네트워크 애플리케이션(218)과 상호작용할 수 있게 하는 컴퓨팅 장치(202)에서 실행하는 임의의 네이티브 애플리케이션을 나타낼 수 있다. 하나 이상의 실시예로, 사용자(102)는 사용자 네트워킹 애플리케이션(236)을 이용하여 소셜 네트워킹 시스템(220)으로 로그인하며, 컴퓨팅 장치(202)가 컴퓨팅 장치(202)의 공유 메모리의 일부에 난독화된 사용자 식별자를 저장하게 한다. 이런 난독화된 사용자 식별자는 추후 상거래 애플리케이션(104a)에 의해 이용되어 사용자(102)의 결제 정보가 사용될 수 있는지를 결정할 수 있다. 하나 이상의 실시예로, 사용자 네트워킹 애플리케이션(236)은 또한 네트워크 애플리케이션(218)로부터 체크아웃 과정에서 사용자(102)의 결제 정보를 이용하도록 상거래 애플리케이션(104a)에 대한 승인을 사용자가 허락하거나 취소하는데 이용된다. 추가로, 사용자(102)가 네트워크 애플리케이션(218)이 결제 정보를 이용하도록 허용했고 임의의 이런 결제 정보를 네트워크 애플리케이션(218)으로 제공하지 않았다면, 사용자 네트워킹 애플리케이션(236)은 사용자(102)가 초기에 그 정보를 제공하는데 이용될 수 있다.

    또한, 설명된 실시예는 사용자 네트워킹 애플리케이션 SDK 라이브러리(238)를 포함한다. 사용자 네트워킹 애플리케이션 SDK 라이브러리(238)는 사용자 상거래 애플리케이션(104a)에 대한 루틴 세트를 제공하여 네트워크 애플리케이션(218)과 상호작용하도록 이용한다. 한 실시예로, 상거래 애플리케이션(104a)과 전자상거래 결제 퍼실리테이터(106a) 사이의 모든 상호작용은 사용자 네트워킹 애플리케이션 SDK 라이브러리(238)를 통해 진행된다. 상거래 애플리케이션(104a)의 적어도 일부가 서버 컴퓨팅 장치(214)에서 실행하는 하나 이상의 실시예에서, 서버 컴퓨팅 장치(214)는 동일한 목적을 제공하거나 사용자 네트워킹 애플리케이션 SDK 라이브러리(238)와 함께 작동하는 상거래 네트워크 애플리케이션 SDK 라이브러리(240)를 포함할 수 있다.

    이제 도 3a 및 3b를 참조하면, 전자상거래 결제 퍼실리테이터(106a)의 한 실시예를 도시하는 순서-흐름도는 결제 정보를 상거래 애플리케이션(104a)으로 제공한다. 도 3a-3b의 흐름도는 본 발명의 한 실시예에 따른 상거래 애플리케이션(104a), 전자상거래 결제 퍼실리테이터(106a) 및 결제 중계 시스템(108)의 상호작용을 도시하는 타임라인이 일실시예를 도시한다.

    도시된 바와 같이, 상거래 애플리케이션(104a)은 결제 중계 시스템(108)에 계정을 설정할 수 있다. 대안의 실시예로, 상거래 애플리케이션(104a)과 결제 중계 시스템(108) 사이의 계정/관계는 미리 존재할 수 있다. 어느 시점에 결제 중계 시스템(108)은 판매자 식별자(MID) 및/또는 공개 키와 비밀 키(302)를 상거래 애플리케이션(104a)에 제공할 수 있다. 예컨대, 판매자가 상거래 애플리케이션(104a)을 결제 중계 시스템(108)에 등록할 때, 결제 중계 시스템(108)은 상거래 애플리케이션(104a) 및/또는 판매자에게 MID 및/또는 공개 키/비밀 키를 제공할 수 있다. MID 및/또는 공개 키/비밀 키를 통해 상거래 애플리케이션(104a)은 거래를 처리하고 판매자 또는 상거래 애플리케이션(104a)과 연관된 계정에 기금을 예치하도록 결제 중계 시스템(108)과 상호작용할 수 있다. MID 및/또는 공개 키/비밀 키를 통해 결제 중계 시스템(108)은 상거래 애플리케이션(104a)의 신원 및 임의의 관련 처리 파라미터(즉, 상거래 애플리케이션(104a), 결제 처리 시스템(110), 카드 네트워크 시스템(112) 및 은행 시스템과 연관된 계정)를 확인할 수 있다.

    이후, 상거래 애플리케이션(104a)은 선택된 결제 중계 시스템에 대한 중계 정보(304)를 전자상거래 결제 퍼실리테이터(106a)에 제공한다. 중계 정보(304)는 상거래 애플리케이션(104a)에 의해 발행된 요청을 청구하는데 이용되는 선택된 결제 중계 시스템(108)의 표시 및 청구된 금액이 예치되는 금융 계좌를 표시하는 계정 정보(예컨대, 계정 식별자)를 포함할 수 있다. 상거래 애플리케이션(104a)은 전자상거래 결제 퍼실리테이터(106a)와의 제1 상호작용 동안 선택된 결제 중계 정보(304)를 제공할 수 있다. 대안으로, 상거래 애플리케이션(104a)을 운영하는 판매자는 수동으로 중계 정보(304)를 제공할 수 있다. 예컨대, 판매자는 네트워크 애플리케이션(218)의 웹사이트 또는 네트워크 애플리케이션(218)에 대한 네이티브 애플리케이션을 사용하여 이런 정보를 전자상거래 결제 퍼실리테이터(106a)로 제공할 수 있다.

    추가로, 중계 정보는 MID 및 공개/비밀 키의 표시를 포함할 수 있고, 전자상거래 결제 퍼실리테이터(106a)가 금융 거래를 처리하도록 상거래 애플리케이션(104a)에 대신하여 선택된 결제 중계 시스템(108)에 교신하게 할 수 있다. 하나 이상의 실시예로, 상거래 애플리케이션(104a)은 금액이 네트워크 애플리케이션(218)의 계정으로부터가 아닌 결제 중계 시스템(108)으로부터 직접적으로 그 상거래 애플리케이션(104a)을 운영하는 판매자의 계정으로 입금되도록 하기 위해 상거래 결제 퍼실리테이터(106a)가 상거래 애플리케이션(104a)에 대신하여 요금 청구를 발행할 수 있게 하도록 선호되는 결제 중계 시스템(108)을 구성한다. 대안으로, 상거래 애플리케이션(104a)을 운영하는 판매자는 결제 중계 시스템을 수동으로 구성할 수 있다. 예컨대, 판매자는 결제 중계 시스템(108)의 웹사이트 또는 결제 중계 시스템(108)에 대한 네이티브 애플리케이션을 사용할 수 있다.

    상술한 바 이외에, 전자상거래 결제 퍼실리테이터(106a) 또는 네트워크 애플리케이션(218)은 상거래 애플리케이션(104a)에 앱 액세스 토큰 또는 선약 비밀 코드(pre-agreed secret code)를 제공할 수 있다. 앱 액세스 토큰 또는 선약 비밀 코드를 통해 상거래 애플리케이션(104a)은 API 호출을 할 때 전자상거래 결제 퍼실리테이터(106a) 및/또는 네트워크 애플리케이션(218)에 그 신원 및 진위를 증명할 수 있다. 하나 이상의 실시예로, 전자상거래 결제 퍼실리테이터(106a) 및/또는 네트워크 애플리케이션(218)은 서버-대-서버 호출을 통해 앱 액세스 토큰 또는 선약 비밀을 제공한다.

    306에 도시된 바와 같이, 사용자는 상거래 애플리케이션(104a)을 사용하여 체크아웃 프로세스를 시작할 수 있다. 특히, 사용자는 상거래 애플리케이션(104a)에 의해 제공된 하나 이상의 아이템이나 서비스를 가상 쇼핑 카트에 배치할 수 있다. 하나 이상의 실시예로, 사용자는 그들이 체크아웃하고자 한다고 상거래 애플리케이션(104a)에 표시(예컨대, 체크아웃 버튼이나 다른 옵션을 선택)할 수 있다.

    이 시점에 또는 그 이전에, 상거래 애플리케이션(104a)은 네트워크 애플리케이션(218)에 대한 사용자용 사용자 식별자(308)를 획득하거나, 식별하거나, 발견할 수 있다. 예컨대, 상거래 애플리케이션(104a)은 사용자의 컴퓨팅 장치(202)에 존재하는 사용자의 난독화된(예컨대, 해시된, 암호화된 또는 알고리즘적으로 변환된) 사용자 식별자에 액세스할 수 있다. 이런 사용자 식별자는 네트워크 애플리케이션(218)(예컨대, 소셜 네트워킹 애플리케이션)의 그 사용자에 대한 사용자 프로필/계정을 식별할 수 있다. 본 방법의 하나 이상의 실시예로, 사용자 식별자는 네트워크 애플리케이션(218)에 의해 액세스되거나 보유되는 공유 메모리의 일부로부터 액세스되며, 사용자가 네트워크 애플리케이션(218)에 현재 "로그온"되는 경우에만 존재할 수 있다. 하나 이상의 다른 실시예로, 사용자 식별자는 사용자의 컴퓨팅 장치(202)에서 쿠키(예컨대, HTTP(HyperText Transfer Protocol) 쿠키) 또는 애플리케이션 캐시(예컨대, HTML5(HyperText Markup Language version 5) 애플리케이션 캐시)로부터 액세스된다.

    이런 프로세스는 사용자의 컴퓨팅 장치(202)에서 네트워크 애플리케이션(218)에 대한 적절히 난독화된 사용자 식별자의 존재가 사용자는 네트워크 애플리케이션(218)에 의해 이미 인증되었고 따라서 상거래 애플리케이션(104a)은 이런 사전 인증에 의존할 수 있음을 표시하고 있기 때문에 사용자에 대한 인증의 역할을 할 수 있다. 추가로, 체크아웃 프로세스의 이 시점에서, 상거래 애플리케이션(104a)에 대한 사용자의 세부사항의 보안이나 개인정보 누설은 없고 단지 난독화된 사용자 식별자만을 가진다.

    사용자가 체크아웃 프로세스(306)를 시작하면, 상거래 애플리케이션(104a)은 선택적으로 사용자 ID 및 카트 정보(310)를 전자상거래 결제 퍼실리테이터(106a)로 송신할 수 있다. 본 발명의 하나 이상의 실시예에서, 상거래 애플리케이션(104a)은 체크아웃 스크린을 렌더링하기 전에 사용자 ID 및 카트 정보(310)를 송신할 수 있다. 사용자 ID 및 카트 정보(310)의 송신 이외에, 상거래 애플리케이션(104a)은 또한 네트워크 애플리케이션(218)이 상거래 애플리케이션(104a)의 신원을 확인하게 하는 앱 액세스 토큰 또는 선약 비밀 코드를 송신할 수 있다. 하나 이상의 실시예로, 카트 정보는 상거래 애플리케이션(104a)의 가상 카트에서 아이템/서비스의 총 가격을 포함할 수 있다.

    하나 이상의 구현으로, 카트 정보는 또한 추가로 카트 내 아이템에 대한 상세 정보를 포함할 수 있다. 예컨대, 카트 정보는 카트 아이템의 JSON 인코딩 어레이를 포함할 수 있다. 어레이 내 각 JSON 객체는 하나 이상의 아이템 명, 아이템의 금액, 아이템의 양 및 사용자가 구매하고자 하는 제품의 URL을 포함할 수 있다. 또 하나의 실시예로, 카트 정보는 제품 명, 제품 번호(예컨대, SKUs(Stock-keeping units), 일련 번호, 모델 번호), 제품 가격, 제품량, 주문 날짜, 인보이스 번호 및 관련 세금을 포함할 수 있다. 일실시예로, 카트 내 아이템에 대한 상세 정보는 단계 310에서 제공된다. 추가로 또는 대안으로, 카트 내 아이템에 대한 상세 정보는 (예컨대, 단계 316에서) 전자상거래 결제 퍼실리테이터(106a)로 제공된다.

    상거래 애플리케이션(104a)은 사용자가 네트워크 애플리케이션(218)/전자상거래 결제 퍼실리테이터(106a)를 이용하여 상거래 애플리케이션(104a)의 가상 카트 내 아이템의 구매를 완료할 수 있음을 표시하는 그림 문자(즉, 마크, 아이콘, 그래픽, 텍스트의 일부 등)를 포함하는 체크아웃 옵션(312)을 제공할 수 있다. 체크아웃 옵션은 상거래 애플리케이션(104a)의 체크아웃 사용자 인터페이스에 제시된 버튼, 상거래 애플리케이션(104a)의 체크아웃 사용자 인터페이스상에 나타난 선택가능한 오버레이, 플러그-인, 팝-업 또는 다른 선택가능한 옵션을 포함할 수 있다. 예컨대, 하나 이상의 실시예로, 가령 상거래 애플리케이션(104a)이 웹 애플리케이션을 포함할 때, 아이프레임(iframe)은 웹페이지를 정의하는 코드에 추가될 수 있다. 추가로 또는 대안으로, 상거래 애플리케이션(104a)은 선택가능한 옵션을 렌더링하는 SDK 함수를 호출할 수 있다. 체크아웃 옵션의 일 예는 요소(514)로서 도 5c에 도시된다. 체크아웃 옵션의 다른 예는 요소(602)로서 도 6에 도시된다.

    본 명세서의 관점에서 당업자는 SDK 함수 또는 아이프레임의 사용이 체크아웃 옵션을 렌더링하거나 호출하는 방식의 2개의 예임을 인식할 것이다. 그러나, 본 발명의 실시예들은 SDK 함수 또는 아이프레임의 사용으로 국한되지 않는다. 예컨대, 아이프레임을 사용하는 대신, 대안의 웹-기반 상거래 애플리케이션 실시예에서, 네트워크 애플리케이션(218)/전자상거래 결제 퍼실리테이터(106a)는 결제 정보를 상거래 애플리케이션(104a)으로 전달할 수 있고, 이후 상거래 애플리케이션은 결제 정보를 렌더링할 수 있다.

    더 상세하게, 브라우저(예컨대, 웹 브라우저) 또는 구조화된 문서를 사용하는 다른 애플리케이션 클라이언트의 상황에서 동작하거나 실행하는 플러그-인 소프트웨어 애플리케이션 대신, 본 명세서에 기술된 기능은 플러그-인인 것과는 달리 브라우저 클라이언트 애플리케이션에 직접 통합될 수 있다. 예컨대, 오픈 그래프 프로토콜을 통해 임의의 웹페이지는 소셜 그래프에 통합할 수 잇다. 특정 실시예로, 구조화된 문서 내 기본 메타데이터의 존재를 통해 구조화된 문서 내 객체는 그래프 객체 또는 노드가 될 수 있다. 웹페이지를 그래프 객체로 변환하기 위해, 오픈 그래프 프로토콜 <meta> 태그 및 체크아웃 옵션(314)(및/또는 결제 정보)은 웹페이지에 포함된다. 오픈 그래프 프로토콜은 4개의 특성을 정의한다: 제목(title), 유형(type), 이미지(image), url.

    또 하나의 실시예로, XFBML 또는 HTML5는 체크아웃 옵션(314)(및/또는 결제 정보)을 구현하거나, 렌더링하거나, 호출하는데 사용될 수 있다. XFBML 및 HTML5는 페이지가 자바스크립트 SDK에 호출하도록 요구할 수 있고 코드에 추가될 수 있다. 특정 실시예로, 자바스크립트 SDK를 통해 웹페이지는 결제 정보 및/또는 체크아웃 옵션(314)의 일부 또는 전부에 액세스할 수 있다. 게다가, 상거래 애플리케이션(104a)은 누군가가 체크아웃 옵션(314)을 클릭하거나 선택할 때 상거래 애플리케이션(104a)이 실시간으로 인지하도록 자바스크립트 SDK를 사용하여 이벤트를 청취할 수 있다.

    따라서, 당업자는 체크아웃 옵션(314)(및/또는 결제 정보)이 임의의 수의 방법이나 프로토콜을 사용하여 구현되거나, 렌더링되거나, 호출될 수 있음을 인식할 것이다. 이런 방법 및 프로토콜의 예들은 "Like Button"의 컨텐츠에서 발명의 명칭이 "Social Data Inputs"이고 2011년 5월 26일자로 출원된 미국특허출원 제13/116,945호에 더 상세히 기술된다. 상술한 애플리케이션의 전체 컨텐츠는 본 명세서에 전체로서 참조로 통합된다.

    사용자가 체크아웃 옵션(314)을 선택하면, 요청은 결제 정보(316)에 대한 네트워크 애플리케이션(218)으로 송신될 수 있다. 환언하면, 표시는 사용자가 네트워크 애플리케이션(218)을 사용하여 구매를 완료하도록 선택했음을 전자상거래 결제 퍼실리테이터(106a)로 송신될 수 있다.

    예컨대, 하나 이상의 실시예(가령, 상거래 애플리케이션(104a)이 네이티브 애플리케이션을 포함하는 경우)에서, 상거래 애플리케이션(104a)은 사용자(102)에 대한 결제 정보를 탐색하는 네트워크 애플리케이션(218)의 그래프 API로 호출할 수 있다. 결제 정보를 탐색하는 그래프 API 호출은 상거래 애플리케이션(104a)을 실행하는 클라이언트 장치(202)로부터 유래할 수 있고 단계 308에서 이전에 획득된 사용자 식별자를 포함할 수 있다. 대안으로, 결제 정보를 탐색하는 그래프 API 호출은 상거래 애플리케이션(104a)을 실행하는 서버 컴퓨팅 장치(214)로부터 유래할 수 있다. 또 하나의 실시예로, 사용자 네트워킹 애플리케이션(236)(즉, 모바일 장치에서의 네이티브 SNS 애플리케이션)은 사용자(102)에 대한 결제 정보를 탐색하는 네트워크 애플리케이션(218)으로 호출할 수 있다. 추가로, 그래프 API 호출은 선택적으로 앱 액세스 토큰 또는 선약 비밀 코드를 포함할 수 있다. 하나 이상의 실시예에서, 상거래 애플리케이션(104a)은 그래프 API 호출에서 단계 310과 관련하여 상술한 카트 내 아이템에 대한 상세 정보를 포함할 수 있다.

    대안의 실시예로, (가령 상거래 애플리케이션(104a)이 웹 애플리케이션을 포함하는 경우) 웹 브라우저(204)는 웹 브라우저(204)가 결제 정보를 탐색하는 네트워크 애플리케이션(218)으로 요청을 송신하게 하는 위젯을 실행할 수 있다. 웹 브라우저(204)는 위젯으로부터의 하나 이상의 파라미터를 식별할 수 있고 퍼실리테이터 계약 요청(402)과 함께 하나 이상의 파라미터를 네트워크 애플리케이션(218)으로 송신할 수 있다. 하나 이상의 파라미터는 상거래 애플리케이션(104a)의 식별번호(즉, 앱 액세스 토큰 또는 선약 비밀 코드), 가상 카트 내 아이템/서비스의 금액, 본 명세서에 기술되는 바와 같이 사용자를 인증하는 쿠키를 포함할 수 있다.

    결제 정보(316)에 대한 요청에 응답하여, 네트워크 애플리케이션(218)은 ID를 사용하여 결제 프로필 저장 모듈(224)에 의해 저장된 사용자 노드를 식별하고/하거나 사용자에 대한 노드 저장 모듈(220)에 의해 저장된 사용자 노드를 식별할 수 있다. 사용자 ID가 난독화된 사용자 식별자를 포함할 때, 네트워크 애플리케이션(218)은 변환 함수를 사용하여 사용자 ID를 비-난독화된 사용자 식별자로 변환할 수 있으며, 난독화된 사용자 식별자로의 대칭 키 암호화 함수의 적용, 난독화된 사용자 식별자로의 공개-키(비대칭 키) 암호화 함수의 적용 또는 비-난독화된 사용자 식별자와 맵핑된 난독화된 사용자 식별자의 리스트와 난독화된 사용자 식별자의 비교를 포함하나 이에 국한되지 않는다.

    전자상거래 결제 퍼실리테이터(106a)는 사용자에 대한 임의의 이용가능한 결제 정보를 포함하는 응답(318)을 제공할 수 있다. 결제 정보는 다음과 같이: 성명(예컨대, 이름, 중간 이름, 성), 결제 카드의 만료 일자(년 및/또는 월), 결제 카드와 연관된 (거리 명, 집 번지, 도시, 주 또는 현, 집 코드, 국가 등을 포함하는) 청구서 발송지, 결제 카드와 연관된 전화번호 및 (청구서 발송지와 유사한 필드를 포함하는) 하나 이상의 상품 배송지에 대한 임의의 이용가능한 정보를 포함할 수 있다. 전자상거래 결제 퍼실리테이터(106a)는 사용자에 대한 결제 카드 번호를 상거래 애플리케이션(104a)에 제공하지 않을 것이다. 그 대신, 전자상거래 결제 퍼실리테이터(106a)는 결제 카드 라벨(즉, 마지막 자릿수를 제외한 결제 카드의 모든 자릿수에 대해 "X") 및 토큰 생성기(234)에 의해 생성된 결제 토큰을 제공할 것이다.

    하기에 설명되는 바와 같이 결제 토큰은 결제를 처리하기 전에 전자상거래 결제 퍼실리테이터(106a)에 의해 요구될 수 있다. 결제 토큰은 상거래 애플리케이션(104a), 사용자, 금액 및/또는 카트에 특화되어 있을 수 있다(즉, 특정한 상거래 애플리케이션, 사용자, 금액 및/또는 카트에 대해서만 유효하다). 또 하나의 실시예로, 결제 토큰은 사용자/상거래 애플리케이션 조합에 특화되어 있을 수 있다. 또한, 전자상거래 결제 퍼실리테이터(106a)는 임의의 수의 다른 사용 파라미터를 연관시킬 수 있다. 예컨대, 결제 토큰은 하나의 사용 토큰일 수 있다. 따라서, 한 번 사용되면, 결제 토큰은 무효화될 수 있다. 추가로, 전자상거래 결제 퍼실리테이터(106a)는 결제 토큰이 무효화된 후 결제 토큰에 유효 창(예컨대, 10분, 1시간, 1일)을 할당할 수 있다. 게다가, 전자상거래 결제 퍼실리테이터(106a)는 선택적으로 결제 토큰에 존속시간(time-to-live)을 할당할 수 있다. 전자상거래 결제 퍼실리테이터(106a)는 상세한 카트 정보를 결제 토큰에 결부시킬 수 있다. 이는 결제 토큰이 카트의 구매에 대해서만 유효함을 보장하는데 도움을 줄 수 있다. 추가로, 이를 통해 전자상거래 결제 퍼실리테이터(106a)는 카트의 구매가 완료되는지 여부를 인지할 수 있다.

    사용자가 네트워크 애플리케이션(218)을 사용하여 체크아웃 프로세스를 완료하고자 함을 표시(316)하는 일환으로서 또는 추가 단계로서, 상거래 애플리케이션(104a)은 사용자(102)가 사용자(102)의 결제 정보를 상거래 애플리케이션(104a)으로 제공하도록 네트워크 애플리케이션(218)을 허용했는지의 표시를 탐색하는 TOS API 호출을 전자상거래 결제 퍼실리테이터(106a)에 발행할 수 있다. 전자상거래 결제 퍼실리테이터(106a)는 TOS 모듈(235)에 저장된 그 승인을 점검할 수 있다. 상거래 애플리케이션(104a)이 결제 정보를 액세스할 수 있게 하도록 사용자가 승인을 제공한다면, 전자상거래 결제 퍼실리테이터(106a)는 상술한 바와 같이 결제 정보, 결제 토큰 및 카트 라벨(318)을 제공할 수 있다.

    상거래 애플리케이션(104a)이 결제 정보를 액세스할 수 있게 하도록 사용자가 승인을 제공하지 않는다면, 프로세스는 사용자로부터 승인을 탐색함으로써 계속될 수 있다. 특히, 승인 사용자 인터페이스는 상거래 애플리케이션(104a)이 네트워크 애플리케이션(218)에 의해 저장된 결제 정보에 액세스하도록 허용하는 옵션을 사용자에게 제공할 수 있다. 승인 사용자 인터페이스는 컴퓨팅 장치(202)의 운영 시스템에 의해 또는 사용자 네트워크 애플리케이션(202) 내 사용자 인터페이스 요소를 통해 제공될 수 있다. 사용자가 승인을 허용하면, 전자상거래 결제 퍼실리테이터(106a)는 TOS 모듈(235)로 그 승인을 업데이트할 수 있고 상술한 바와 같이 결제 정보, 결제 토큰 및 카트 라벨(318)을 제공할 수 있다.

    선택적으로, 320에 표시된 바와 같이, 전자상거래 결제 퍼실리테이터(106a)는 카트의 금액에 대한 사용자의 결제 카드에 대한 승인 요청(authorization request)을 결제 중계 시스템(108)으로 송신할 수 있다. 결제 중계 시스템(108)은 결제 카드 승인을 허가하거나 거절할 수 있는 인증 요청을 결제 네트워크(예컨대, 도 1에 도시된 결제 네트워크(116))를 통해 전달할 수 있다. 이후, 결제 중계 시스템(108)은 322에 표시된 바와 같이 결제 카드 승인 응답을 전자상거래 결제 퍼실리테이터(106a)로 전달할 수 있다. 당업자는 선택형 승인 요청이 타임라인에서 미리 또는 추후에 발생할 수 있음을 인식할 것이다. 대안의 구현으로, 전자상거래 결제 퍼실리테이터(106a)는 요금 요청의 송신(328)의 일환으로서 카트의 금액에 대한 사용자의 결제 카드에 대한 승인 요청을 결제 중계 시스템(108)으로 송신할 수 있다. 마찬가지로, 결제 중계 시스템(108)은 이후 결제 요금 요청의 송신(330)의 일환으로서 결제 카드 승인 응답을 전자상거래 결제 퍼실리테이터(106a)로 전달할 수 있다.

    하나 이상의 실시예로, 전자상거래 결제 퍼실리테이터(106a)로부터 결제 정보 및 결제 카드 라벨을 수신하면, 상거래 애플리케이션(104a)은 전자상거래 결제 퍼실리테이터(106a)로부터 수신된 결제 정보로 체크아웃 스크린을 렌더링할 수 있다. 예컨대, 상거래 애플리케이션(104a)은 수신된 임의의 결제 정보로 체크아웃 스크린의 결제 필드를 자동-기입할 수 있다. 본 명세서의 관점에서 당업자는 전자상거래 결제 퍼실리테이터(106a)가 상거래 애플리케이션(104a) 체크아웃 스크린의 각각의 결제 필드에 대한 정보를 가지지 않을 수 있거나 기한이 지난 정보를 포함할 수 있음을 인식할 것이다. 이런 예에서, 사용자는 하나 이상의 결제 필드 내 자동-기입된 정보를 변경할 수 있거나 임의의 공백의 결제 필드에 정보를 추가할 수 있다.

    대안의 실시예(가령, 상거래 애플리케이션(104a)이 웹 애플리케이션을 포함하는 경우)에서, 상술한 위젯을 실행할 때, 웹 브라우저(204)는 프레임(예컨대, 아이프레임)을 생성할 수 이다. 결제 정보(316)에 대한 요청의 응답(318)은 프레임에 포함하기 위한 컨텐츠(즉, 결제 정보 및 카드 라벨)를 포함할 수 있다. 이후, 웹 브라우저(204)는 응답(318)으로 전자상거래 결제 퍼실리테이터(106a)로부터 수신된 정보(그리고 일부의 실시예로 상거래 애플리케이션에 의해 생성된 정보)를 사용하여 (프레임을 구성하거나 포함하는) 체크아웃 스크린을 렌더링하고, 프레임에 디스플레이되는 전자상거래 결제 퍼실리테이터(106a)로부터의 정보와 함께 체크아웃 스크린 및 프레임을 디스플레이한다. 상거래 애플리케이션(104a)의 웹 페이지를 설명하는 마크업 언어 문서에 위젯을 포함함으로써, 전자상거래 결제 퍼실리테이터(106a)로부터의 결제 정보는 웹 페이지와 함께 디스플레이될 수 있다. 이런 실시예에서, 상거래 애플리케이션(104a)은 결제 필드를 자동-기입하지 않고 상거래 애플리케이션(104a)이 프레임을 렌더링할 때 결제 정보를 렌더링한다.

    상거래 애플리케이션(104a)이 결제 필드에 결제 정보로 체크아웃 스크린을 렌더링하면, 사용자는 주문의 구매를 확인(326)할 수 있거나 가능한 한 적게 한 번의 클릭이나 사용자 입력으로 거래를 완료할 수 있다. 예컨대, 전자상거래 결제 퍼실리테이터(106a)가 각각의 필요한 결제 필드에 대한 정보를 제공할 때, 사용자는 거래를 완료하도록 "결제(pay)" 또는 "주문(order)" 버튼 또는 다른 선택가능한 옵션을 선택할 수 있다. 대안의 실시예로, 사용자는 데이터가 공급되지 않았던 하나 이상의 결제 필드를 완료하거나 거래를 완료하도록 추가 동작을 수행해야 할 수 있다.

    사용자가 주문을 확인(326)하면, 상거래 애플리케이션(104a)은 요금 요청(328)을 전자상거래 결제 퍼실리테이터(106a)로 송신할 수 있다. 특히, 상거래 애플리케이션(104a)은 요금 요청을 포함하는 네트워크 애플리케이션(218)의 결제 API를 호출할 수 있다. 요금 요청은 상거래 애플리케이션(104a)으로 사전 제공된 결제 토큰 및 사용자가 거래를 완료하도록 선택한 확인을 포함할 수 있다. 대안으로 또는 추가로, 요금 요청은 카트 정보를 식별하거나 맵핑하는 주문 ID를 포함할 수 있다. 게다가, 요금 요청은 단계 308에 획득된 사용자 ID 및/또는 앱 액세스 토큰 또는 선약 비밀 코드를 포함할 수 있다.

    선택적으로, 요금 요청은 단계 310과 관련하여 상술한 임의의 카트 정보를 더 포함할 수 있다. 예컨대, (상술한 임의의 결제 정보, 난독화된 사용자 식별자, 상거래 애플리케이션 및/또는 네트워크 애플리케이션의 거래 수, 사용자에게 청구된 금액, 상거래 애플리케이션의 식별자 등을 포함하거나 이에 국한되지 않는) 주문의 하나 이상의 세부사항은 요금 요청의 일부로서 전자상거래 결제 퍼실리테이터(106a)로 전송된다. 본 명세서의 관점에서 당업자는 결제 정보가 요금 요청으로 송신될 때 전자상거래 결제 퍼실리테이터(106a)는 사용자가 제공된 결제 정보에 임의의 정보를 업데이트하거나 추가했는지를 결정할 수 있음을 인식할 것이다. 사용자가 임의의 정보를 추가하거나 변경하면, 전자상거래 결제 퍼실리테이터(106a)는 프로필 저장 모듈(228)에 저장된 사용자의 결제 프로필을 업데이트할 수 있다. 하나 이상의 실시예로, 사용자는 전자상거래 결제 퍼실리테이터(106a)가 임의의 추가/변경된 정보를 저장하기 전에 그 결제 프로필을 업데이트하는 승인을 전자상거래 결제 퍼실리테이터(106a)에 제공할 수 있다.

    본 발명의 하나 이상의 구현으로, 전자상거래 결제 퍼실리테이터(106a)는 요금 요청을 포함하는 네트워크 애플리케이션(218)의 결제 API에 대한 호출이 상거래 애플리케이션(104a)을 실행하는 서버 컴퓨팅 장치(214)로부터 유래하고 네트워크 애플리케이션(218)을 실행하는 서버 컴퓨팅 장치(들)(216)로 지향되는 것을 필요로 할 수 있다. 본 명세서의 관점에서 당업자는 서버-대-서버 호출을 요구하는 것이 거래의 보안을 증가시킬 수 있음을 인식할 것이다.

    요금 요청을 수신하면, 전자상거래 결제 퍼실리테이터(106a)는 요금 요청에 수신된 결제 토큰을 사용하여 프로필 저장 모듈(228)로부터 결제 카드 정보를 검색할 수 있다. 이후, 전자상거래 결제 퍼실리테이터(106a)는 상술한 결제 중계 ID 모듈(230)을 사용하여 선택된 결제 중계 시스템을 식별할 수 있다. 대안으로, 요금 요청은 결제 요금 요청이 송신되어야 하는 결제 중계 시스템의 표시를 포함할 수 있다. 이후, 전자상거래 결제 퍼실리테이터(106a)는 결제 요금 요청(330)을 선택된 결제 중계 시스템(108)으로 송신할 수 있다. 결제 요금 요청은 사용자의 전체 결제 카드 번호, 결제 카드의 만료 일자, 사용자의 청구서 발송지/상품 배송지, 상거래 애플리케이션(104a)의 표시(예컨대, MID 또는 다른 식별자) 및 상거래 애플리케이션(104a) 대신에 요금 요청을 제출하는 승인의 표시를 포함할 수 있다. 승인의 표시는 결제 중계 시스템(108)에 의해 상거래 애플리케이션(104a)으로 제공된 개인 키, 비밀 키 또는 다른 식별자, 또는 전자상거래 결제 퍼실리테이터(106a)가 상거래 애플리케이션(104a)(또는 판매자) 대신에 작용하고 있음을 결제 중계 시스템(108)으로 신호를 보내는 다른 표시를 사용하여 요청의 하나 이상의 일부를 인코딩하는 것을 포함할 수 있다.

    결제 중계 시스템(108)은 도 1과 관련하여 상술한 바와 같이 결제 네트워크(116)를 사용하여 결제 요금 요청을 처리할 수 있다. 결제 중계 시스템(108)은 332로 표시된 바와 같이 거래 ID 및 요금 응답을 전자상거래 결제 퍼실리테이터(106a)로 반환할 수 있다. 거래 ID를 통해 결제 중계 시스템(108)은 전자상거래 결제 퍼실리테이터(106a) 또는 상거래 애플리케이션(104a)을 거래에 관한 업데이트(적립됨, 거절됨, 반환 등)를 업데이트할 수 있다. 이후, 전자상거래 결제 퍼실리테이터(106a)는 거래 ID(334)를 상거래 애플리케이션(104a)으로 전달할 수 있다. 거래 ID를 통해 상거래 애플리케이션(104a)은 필요하다면 거래에 관한 결제 중계 시스템(108)에 질의할 수 있다.

    본 명세서의 관점에서 당업자는 결제 요금 요청의 금액이 네트워크 애플리케이션(218)이나 전자상거래 결제 퍼실리테이터(106a)의 계정으로부터가 아닌 결제 네트워크(116)로부터 직접적으로 상거래 애플리케이션(104a)의 계정에 입금될 수 있음을 인식할 것이다. 따라서, 상거래 애플리케이션(104a)의 관점에서, 금융 결과는 사용자가 상거래 애플리케이션(104a)의 사전에 존재한 체크아웃 시스템을 이용하는 체크아웃 프로세스를 완료한 것처럼 보일 수 있다(즉, 기금은 결제 네트워크(116)의 구성요소로부터 동일한 계정으로 예치될 수 있다). 추가로, 상거래 애플리케이션(104a)은 감소한 "철회된" 쇼핑 카트 및 더 유쾌한 사용자의 관점에서 전자상거래 결제 퍼실리테이터에 의해 제공되는 더 신속하고 용이한 승인 및 체크아웃으로부터 이익을 얻을 수 있다.

    도 3a-3b의 도식은 상거래 애플리케이션(104a)이 네트워크 애플리케이션(218)(즉, 전자상거래 결제 퍼실리테이터(106a))을 사용하여 체크아웃하는 옵션을 항상 디스플레이하는 실시예를 도시한다. 그러나, 본 발명은 그렇게 제한되지 않는다. 대안의 실시예로, 전자상거래 결제 퍼실리테이터는 저장된 결제 정보를 사용하는 옵션을 지능적이고 동적으로 제공할 수 있다. 예컨대, 옵션은 옵션이 사용자가 구매 또는 거래를 완료할 가능성을 증가시킬 때 제공될 수 있다. 게다가, 저장된 결제 정보를 사용하는 옵션이 구매의 가능성을 증가시키지 않는 경우, 옵션은 제공되지 않을 수 있다. 본 명세서의 관점에서 당업자는 전자상거래 결제 퍼실리테이터(106a)를 사용하는 동적으로 배치된 옵션이 모바일 상거래 애플리케이션에서 부족할 수 있는 그래프 인터페이스 혼란을 감소시킬 수 있음을 인식할 것이다.

    도 4는 도 3a-3b의 도식과 유사한 순서-흐름도를 도시한다. 도 4의 순서-흐름도는 상거래 애플리케이션(104a)을 사용하여 거래를 완료하도록 전자상거래 결제 퍼실리테이터(106a)를 사용하는 동적 옵션을 제공하는 실시예를 도시한다. 도 4의 순서-흐름도는 도 3a 및 3b와 관련하여 상술한 다수의 단계 및 구성요소를 포함한다. 간략화를 위해, 이런 단계들은 도 4와 관련하여 또다시 상세히 기술되지 않는다. 그러나, 당업자는 도 3a 및 3b와 관련하여 제공된 이런 단계들의 설명이 도 4에 동일하게 적용될 수 있음을 인식할 것이다.

    도 4는 상술한 바와 같이 사용자가 상거래 애플리케이션(104a)에서 체크아웃을 시작(306)할 수 있음을 도시한다. 이후, 상거래 애플리케이션(104a)은 상술한 바와 같이 네트워크 애플리케이션에 대한 사용자 ID(308)를 획득할 수 있다. 당업자는 네트워크 애플리케이션에 대한 사용자 ID를 획득하는 단계가 사용자가 체크아웃을 시작한 후에 발생할 수 있음을 인식할 것이다. 대안으로, 상거래 애플리케이션(104a)은 사용자가 체크아웃 프로세스를 시작하기 전에 네트워크 애플리케이션에 대한 사용자 ID를 획득할 수 있다.

    도시된 바와 같이, 상거래 애플리케이션(104a)은 퍼실리테이터 계약 요청(402)을 네트워크 애플리케이션(218)으로 송신할 수 있다. 예컨대, 상거래 애플리케이션(104a)이 네이티브 애플리케이션을 포함할 때, 퍼실리테이터 계약 요청(facilitator engagement request)은 클라이언트측 또는 서버측 상거래 애플리케이션(104a)으로부터의 API 호출일 수 있다. 퍼실리테이터 계약 요청은 사용자 ID, 상거래 애플리케이션(104a)의 식별번호(즉, 앱 액세스 토큰 또는 선약 비밀 코드) 및 가상 카트 내 아이템/서비스의 금액을 포함할 수 있다.

    대안으로, 상거래 애플리케이션(104a)이 웹 애플리케이션을 포함할 때, 웹 브라우저(204)는 웹 브라우저(204)가 퍼실리테이터 계약 요청(402)을 네트워크 애플리케이션(218)으로 송신하게 하는 위젯을 실행할 수 있다. 웹 브라우저(204)는 위젯으로부터의 하나 이상의 파라미터를 식별할 수 있고 퍼실리테이터 계약 요청(402)과 함께 하나 이상의 파라미터를 네트워크 애플리케이션(218)으로 송신할 수 있다. 하나 이상의 파라미터는 상거래 애플리케이션(104a)의 식별번호(즉, 앱 엑세스 토큰 또는 선약 비밀 코드) 및 가상 카트 내 아이템/서비스의 금액을 포함할 수 있다.

    하나 이상의 실시예로, 퍼실리테이터 계약 요청(API 호출이나 요청이 웹 브라우저로부터 송신되었는지 여부)은 또한 카트 내 아이템에 대한 상세 정보를 포함할 수 있다. 예컨대, 카트 정보는 카트 아이템의 JSON 인코딩 어레이를 포함할 수 있다. 어레이 내 각 JSON 객체는 하나 이상의 아이템 명, 아이템의 금액, 아이템의 수량 및 사용자가 구매하고자 하는 오픈 그래프 제품의 URL을 포함할 수 있다.

    하나 이상의 실시예로, 네트워크 애플리케이션(218)에 대한 퍼실리테이터 계약 요청(402)은 상거래 애플리케이션(104a)에 대한 평균 전환율(가상 카트로 입력된 아이템을 구매한 사용자의 비율)의 표시를 포함할 수 있다. 퍼실리테이터 계약 요청의 일부로서 평균 전환율을 제공함으로써, 상거래 애플리케이션(104a)은 평균 전환율이 현재형임을 보장할 수 있다. 대안으로, 상거래 애플리케이션(104a)은 전자상거래 결제 퍼실리테이터(106a)와 계정을 설정할 때 단계 304에서 전환율을 제공할 수 있다.

    퍼실리테이터 계약 요청을 수신하면, 네트워크 애플리케이션(218)은 단계 404로 표시된 바와 같이 상거래 애플리케이션(104a)이 사용자가 전자상거래 결제 퍼실리테이터(106a)를 사용하여 체크아웃 프로세스를 완료하는 옵션을 제공해야 하는지를 지능적이고 동적으로 결정할 수 있다. 결정시, 네트워크 애플리케이션(218)은 하나 이상의 다음의 인자들 또는 이들의 조합을 사용할 수 있다: (1) 사용자가 네트워크 애플리케이션의 계정을 가지는지 여부, (2) 사용자가 네트워크 애플리케이션으로 현재 로그인되어 있는지 여부, (3) 사용자용으로 이용가능한 결제 정보(상품 배송지, 청구서 발송지 등), (4) 결제 카드가 사용자에 대해 보관되는지 여부, (5) 상거래 애플리케이션(104a)이나 다른 상거래 애플리케이션에 대한 전자상거래 결제 퍼실리테이터 옵션에서 사용자에 대한 전환율, (6) 사용자의 과거 구매, (7) 사용자에 대한 소셜 네트워킹 시스템(220)으로부터의 이용가능한 신상정보(연령, 성별 등), (8) 사용자(102)가 동일한 상거래 애플리케이션(104a)이나 다른 상거래 애플리케이션들을 사용하여 다른 구매에 대해 이전에 전자상거래 결제 퍼� ��리테이터(106a)를 이용했는지 여부를 포함하나 이에 국한되지 않는 네트워크 애플리케이션(218)과 사용자에 대한 활동의 이력, (9) 소셜 네트워킹 시스템(220)에 의해 표시된 사용자의 관심사, (10) 사용자에 대한 위험 점수; 또는 다른 정보나 인자들.

    하나 이상의 실시예로, 사용자가 전자상거래 결제 퍼실리테이터(106a)를 이용하는 옵션을 제공하는지에 대한 결정은 데이터가 이용가능한 상술한 인자들 모두에 기반할 수 있다. 다른 실시예로, 1개, 2개, 3개, 4개, 5개, 6개, 7개, 8개 또는 9개의 인자가 결정(404)을 하는데 사용될 수 있다. 추가로 또는 대안으로, 전자상거래 결제 퍼실리테이터(106a)는 다른 인자들보다 하나 이상의 인자들을 더 가중시킬 수 있다. 인자에 적용된 가중치는 상거래 애플리케이션 특화되거나, 사용자 특화되거나 다른 결정에 기반할 수 있다.

    일실시예로, 네트워크 애플리케이션(218)은 퍼실리테이터 계약 요청(402)과 함께 제공된 사용자 ID를 사용하여 결정되는 바와 같이 사용자가 네트워크 애플리케이션(218)에 계정을 가지는 경우에만 상거래 애플리케이션(104a)이 전자상거래 결제 퍼실리테이터(106a)를 사용하는 옵션을 제공해야 한다고 결정할 수 있다. 예컨대, 상거래 애플리케이션(104a)이 웹 애플리케이션일 때, 네트워크 애플리케이션(218)은 쿠키에 대해 컴퓨팅 장치(220)를 점검할 수 있다. 쿠키에 대해 점검하는 네트워크 애플리케이션(218)에 응답하여, 컴퓨팅 장치(202)는 쿠키 또는 쿠키와 연관된 메시지를 네트워크 애플리케이션(218)으로 송신할 수 있다. 상술한 바와 같이, 하나 이상의 실시예에서, 쿠키의 존재는 컴퓨팅 장치(202)의 사용자(102)가 네트워크 애플리케이션(218)의 사용자인지(예컨대, 사용자가 소셜 네트워킹 시스템(220)에 유효한 계정을 가지는지)를 표시할 수 있다. 컴퓨팅 장치(202)의 사용자(102)가 네트워크 애플리케이션(218)의 사용자라면, 쿠키는 사용자가 네트워크 애플리케이션(218)으로 로그인되는지(예컨대, 사용자가 소셜 네트워킹 시스템(202)에 현재 유효한 세션을 가지는지)를 표시하는 정보를 포함할 수 있다. 따라서, 쿠키에 대한 사용자 장치(202)의 점검을 통해 네트워크 애플리케이션(218)은 사용자 세션을 인증할 수 있다. 다른 실시예로, 네트워크 애플리케이션(218)은 예컨대 사용자가 네트워크 애플리케이션(218)으로 로그인되는지를 결정하지 않고 쿠키의 존재를 점검함으로써 단지 사용자가 네트워크 애플리케이션(218)의 사용자인지를 결정할 수 있다. 본 명세서에서는 사용자 및/또는 사용자 세션을 인증하기 위한 쿠키가 설명되지만, 사용자 또는 세션 식별이나 인증의 임의의 다른 방법(가령, 물리적 토큰을 인식하는 것)이 사용될 수 있다. 당업자는 사용자가 그들이 네트워크 애플리케이션(218)에 계정을 가지지 않는다면 전자상거래 결제 퍼실리테이터(106a)를 사용하여 체크아웃을 완료할 확률이 낮을 수 있음을 인식할 것이다. 따라서, 전자상거래 결제 퍼실리테이터(106a)를 사용하는 버튼이나 다른 선택가능한 옵션을 제공하지 않음으로써, 상거래 애플리케이션(104a)은 사용자 인터페이스 혼란을 줄일 수 있다.

    추가로 또는 대안으로, 네트워크 애플리케이션(218)은 사용자가 현재 네트워크 애플리케이션(218)으로 로그인되어 있는 경우에만 상거래 애플리케이션(104a)이 전자상거래 결제 퍼실리테이터(106a)를 사용하는 옵션을 제공해야 한다고 결정할 수 있다. 네트워크 애플리케이션(218)은 사용자가 퍼실리테이터 계약 요청과 함께 송신되는 사용자 식별자에 기반하여 로그인되는지를 결정할 수 있다. 예컨대, 네트워크 애플리케이션(218)은 사용자 식별자를 사용하여 사용자가 로그인되는지 여부를 표시하는 사용자에 대응하는 소셜 그래프 모듈 내 노드와 맵핑할 수 있다. 따라서, 이런 구현으로, 퍼실리테이터 계약 요청 내 사용자 식별자(즉, 상술한 바와 같이 사용자 ID의 해시)의 존재는 사용자가 현재 네트워크 애플리케이션(218)으로 로그인되어 있다고 표시할 수 있다. 대안으로, 상거래 애플리케이션(104a)은 상술한 바와 같이 사용자가 쿠키를 사용하여 네트워크 애플리케이션(218)으로 로그인되는 경우에만 사용자 식별자를 획득할 수 있다.

    또 하나의 실시예로, 네트워크 애플리케이션(218)은 옵션을 제공하는 것이 사용자가 거래를 완료할 확률을 증가시킬 것이라고 네트워크 애플리케이션(218)이 결정한다면 전자상거래 결제 퍼실리테이터(106a)를 사용하는 옵션을 제공해야 한다고 결정할 수 있다. 특히, 전자상거래 결제 퍼실리테이터(106a)는 상거래 애플리케이션(104a) 및 상술한 하나 이상의 인자들에 기반하여 사용자에 대한 예측된 전환율을 결정할 수 있다. 예측된 전환율이 상거래 애플리케이션(104a)에 의해 제공된 평균 전환율보다 더 크다면, 네트워크 애플리케이션(218)은 상거래 애플리케이션(104a)이 옵션을 제공해야 한다고 결정할 수 있다. 예측된 전환율이 상거래 애플리케이션(104a)에 의해 제공된 평균 전환율 미만이라면, 네트워크 애플리케이션(218)은 상거래 애플리케이션(104a)이 옵션을 제공하지 않아야 한다고 결정할 수 있다.

    예컨대, 상거래 애플리케이션(104a)에 의해 제공된 평균 전환율은 아이템이나 서비스를 카트에 추가한 후 아이템이나 서비스의 구매를 완료한 상거래 애플리케이션(104a)의 사용자들의 비율에 해당하는 0과 100 사이의 정소를 포함할 수 있다. 예측된 전환율은 사용자가 임의의 상거래 애플리케이션을 사용하여 네트워크 애플리케이션(218)을 사용하는 옵션을 제시받을 때 체크아웃을 완료한 횟수의 비율; 네트워크 애플리케이션(218)의 사용자들이 임의의 상거래 애플리케이션을 사용하여 전자상거래 결제 퍼실리테이터(106a)를 사용하는 옵션을 제시받을 때 체크아웃을 완료한 횟수의 비율; 네트워크 애플리케이션(218)의 사용자들이 상거래 애플리케이션(104a)을 사용하여 전자상거래 결제 퍼실리테이터(106a)을 사용하는 옵션을 제시받을 때 체크아웃을 완료한 횟수의 비율; 사용자와 공통되는 유사한 연령, 성별 또는 다른 신상정보의 사용자들이 전자상거래 결제 퍼실리테이터(106a)를 사용하는 옵션을 제시받을 때 체크아웃을 완료한 횟수의 비율; 유사한 금액의 결제 정보를 가진 사용자들이 전자상거래 결제 퍼실리테이터(106a)를 사용하는 옵션을 제시받을 때 체크아웃을 완료한 횟수의 비율; 보관된 결제 카드를 가진 사용자들이 전자상거래 결제 퍼실리테이터(106a)를 사용하는 옵션을 제시받을 때 체크아웃을 완료한 횟수의 비율, 상술한 비율의 조합 또는 다른 발견적 방법(heuristic)을 사용하여 계산된 또 다른 비율과 동일할 수 있다. 당업자는 전자상거래 결제 퍼실리테이터(106a)가 예측된 전환율을 결정하도록 소셜 그래프 모듈(222), 거래 데이터베이스(232) 및/또는 프로필 저장 모듈(228) 내 정보를 레버리지할 수 있음을 인식할 것이다.

    추가로, 전자상거래 결제 퍼실리테이터(106a)를 사용하는 옵션을 제공하는 것이 사용자가 거래를 완료할 확률을 증가시킬 것인지(218)에 대한 결정은 결정 모델(decision model)의 적용에 기반할 수 있으며, 이때 결정 모델은 기계 학습 알고리즘에 의해 생성된다. 따라서, 본 발명의 한 실시예에서, 전자상거래 결제 퍼실리테이터(106a)는 네트워크 애플리케이션(218)의 다른 사용자들에 의한 전자상거래 결제 퍼실리테이터(106a)의 실제 사용을 분석함으로써 결정 모델을 생성하도록 구성된 기계 학습 알고리즘을 포함한다. 예컨대, 기계 학습 알고리즘은 다른 전자상거래 결제 퍼실리테이터(106a) 사용에 기반하여 특정 연령 범위 내 특정 성별의 사용자들을 결정할 수 있고, 특정 타입의 스토어에서의 쇼핑은 상거래 애플리케이션(104a)을 사용하여 주문하면서 네트워크 애플리케이션(218)에 의해 저장된 결제 정보를 이용할 가능성이 매우 높다. 물론, 이런 지표는 단지 설명적인 것이다; 실제 기계 학습 알고리즘은 결정 모델을 생성하도록 사용자 및/또는 주문 상황(하루 중 시간, 상거래 애플리케이션(104a)의 타입 등)을 설명하는 표식의 다른 조합을 계속하여 결정할 수 있다. 한 실시예로, 결정 모델은 분류기이다.

    상술한 바와 같이, 전자상거래 결제 퍼실리테이터(106a)를 사용하는 옵션을 제공하는 것이 사용자가 거래를 완료할 확률을 증가시킬 것인지(218)에 대한 결정시 인자들 중 하나는 사용자에 대한 위험 점수(risk score)이다. 위험 점수는 사용자(102)가 주문을 완료하지 않거나, 무효의 결제 정보를 제공하거나, 아이템을 반품하고자 하거나, 다른 바람직하지 못한 행위를 수행할 위험이 얼마나 많을 수 있는지에 대한 예측을 포함할 수 있다. 한 실시예로, 위험 점수는 0과 100 사이의 정수이며, 다른 실시예에서 위험 점수는 'A'와 'F' 사이의 문자이지만, 다른 실시예에서 다른 스케일이 이용된다. 전자상거래 결제 퍼실리테이터(106a)는 예측된 전환율과 관련하여 상술한 바와 유사하게 기계 학습 알고리즘에 의해 생성된 결정 모델을 사용하여 위험 점수를 계산할 수 있다.

    위험 점수는 결제 카드와 연관된 위험 데이터 및 사용자와 연관된 위험 데이터에 기반할 수 있다. 예컨대, 결제 카드 위험 인자는 카드가 새로운 것인지, 카드가 과거에 성공적으로 사용되었는지, 사용자가 카드를 자주 추가하고 제거하는지, 카드에 많은 지불 거절(charge backs)이 있는지 등을 포함할 수 있다. 사용자 위험 인자는 사용자가 네트워크 애플리케이션(218)에 계정을 가졌던 시간의 길이, 사용자가 얼마나 활발히 네트워크 애플리케이션(218)을 사용하고 있는지, (네트워크 애플리케이션(218)이 소셜 네트워킹 시스템(220)을 포함하는 한 실시예에서) 사용자의 친구를 설명하는 친구와 메타데이터의 수, 가령 다른 사용자들이 사용자 생일 축하하고자 하는지, 사용자가 다른 사용자들로부터 메시지를 송신하고 수신하는지, 사용자의 사진의 수, 사용자와 연관된 사용자 또는 장치의 지리적 위치 등을 포함할 수 있다.

    당업자는 소셜 그래프 모듈(222)과 연관된 정보를 통해 위험 점수가 잠재적인 사기에 대한 귀중한 통찰력을 제공하거나 도용을 식별할 수 있음을 인식할 것이다. 예컨대, 위험 점수는 사용자가 단기간 동안 다수의 구매를 하고자 했고, 쇼핑 패턴을 과감하게 변경시켰으며, (소셜 네트워킹 시스템과의 체크-인에 기반하여) 현재 위치와 (IP 주소에 기반하여) 다른 위치에 상거래 애플리케이션에 액세스하고 있다면 증가할 수 있다.

    하나 이상의 실시예로, 전자상거래 결제 퍼실리테이터(106a)는 위험 점수가 임계치를 초과하다면 전자상거래 결제 퍼실리테이터(106a)를 사용하는 옵션을 제공하도록 결정할 수 있다. 임계치는 거래의 금액에 기반할 수 있다. 예컨대, 거래가 제1 금전적 가치라면, 전자상거래 결제 퍼실리테이터(106a)가 옵션을 제공하지 않도록 결정할 위험 임계치는 제1 값일 수 있다. 거래가 제1 금전적 가치보다 더 큰 제2 금전적 가치라면, 전자상거래 결제 퍼실리테이터(106a)가 옵션을 제공하지 않도록 결정할 위험 임계치는 제1 값보다 더 작은 제2 값일 수 있다. 또 하나의 실시예로, 전자상거래 결제 퍼실리테이터(106a)는 위험 점수를 상거래 애플리케이션(104a)으로 반환할 수 있고 상거래 애플리케이션(104a)이 사용자가 거래를 완료할 수 있게 할지에 대해 결정하게 해줄 수 있다.

    도 4의 단계 406에 도시된 바와 같이, 전자상거래 결제 퍼실리테이터(106a)는 계약 응답을 상거래 애플리케이션(104a)에 제공할 수 있다. 계약 응답은 상거래 애플리케이션(104a)이 상거래 애플리케이션(104a)을 사용하여 거래를 완료하는 옵션을 사용자에게 제공해야 하는지를 표시할 수 있다. 예컨대, 전자상거래 결제 퍼실리테이터(106a)는 결제 정보를 제공하는 것이 상거래 애플리케이션(104a)으로부터 하나 이상의 아이템이나 서비스의 구매를 사용자가 완료할 확률을 증가시킬 가능성이 있다면 긍정적인 계약 응답을 송신할 수 있다. 반면에, 전자상거래 결제 퍼실리테이터(106a)는 결제 정보를 제공하는 것이 상거래 애플리케이션(104a)으로부터 하나 이상의 아이템이나 서비스의 구매를 사용자가 완료할 확률을 증가시킬 가능성이 없다면 부정적인 계약 응답을 송신할 수 있다. 한 실시예로, 계약 응답은 전자상거래 결제 퍼실리테이터(106a)를 사용하는 옵션이 제공되어야 하는지 여부를 표시하는 부울 값(즉, 참 또는 거짓)을 포함한다. 추가로 또는 대안으로, 계약 응답은 위험 점수를 포함할 수 있다.

    계약 응답에 기반하여, 상거래 애플리케이션(104a)은 도 3a와 관련하여 상술한 바와 같이 체크아웃 옵션(312)을 제공하거나, 사용자가 모든 결제 정보를 입력하게 하는 디폴트 체크아웃 옵션을 제공하거나, 위험 점수에 기반하여 거래가 너무 위험성이 높기 때문에 체크아웃 요청을 거절할 수 있다. 전자상거래 결제 퍼실리테이터(106a)를 사용하는 체크아웃 옵션이 제공된다면, 도 4의 타임라인 과정은 도 3a의 단계 314에서 계속될 수 있다.

    또 하나의 실시예로, 저장된 결제 정보를 사용하는 옵션을 지능적이고 동적으로 제공하는 것은 도 3a 및 3b와 관련하여 상술한 바 이외에 다른 결제 방법/기반구조와 관련하여 사용될 수 있다. 특히, 하나 이상의 실시예로, 전자상거래 결제 퍼실리테이터(106a)는 결제 중계 시스템의 역할을 하고 사용자에 대한 결제 정보를 결제 처리 시스템으로 직접 전달할 수 있다. 이런 구현에서, 거래 금액은 네트워크 애플리케이션(218) 또는 전자상거래 결제 퍼실리테이터(106a)로부터 직접적으로 상거래 애플리케이션(104a)의 계정에 입금될 수 있다.

    상술한 설명의 관점에서, 당업자는 전자상거래 결제 퍼실리테이터(106a)가 종래의 상거래 애플리케이션 결제 프로세스 및 체크아웃 프로세스를 통해 다수의 이점을 제공할 수 있음을 인식할 것이다. 상술한 바와 같이, 전자상거래 결제 퍼실리테이터(106a)는 상거래 애플리케이션(104a)에 자동-기입될 수 있는 결제 정보를 제공함으로써 체크아웃 프로세스의 용이성 및 속도를 증가시킬 수 있다. 도 5a-5g는 전자상거래 결제 퍼실리테이터(106a)를 이용하는 상거래 애플리케이션(104a) 체크아웃 프로세스의 사용자 인터페이스를 도시한다.

    특히, 도 5a-5g의 사용자 인터페이스는 모바일 장치(500)에 의해 제시될 수 있다. 모바일 장치(500)는 모바일 전화 장치이다. 그러나, 추가의 예 또는 대안의 예에서, 가령 모바일 전화 장치, 휴대용 장치, 랩톱 컴퓨터, 개인용 정보 단말 장치 및/또는 임의의 다른 적절한 장치이지만 이에 국한되지 않는 또 다른 모바일 장치 또는 비-모바일 장치가 도 5a-5g의 사용자 인터페이스를 제시할 수 있다. 모바일 장치(500)는 사용자 인터페이스가 제시될 수 있고/있거나 사용자 입력이 수신 및/또는 삭제될 수 있는 터치 스크린(502)을 포함하고/하거나 연관될 수 있다. 추가로 또는 대안으로, 모바일 장치(500)는 임의의 다른 적절한 입력 장치(예컨대, 키패드, 하나 이상의 입력 버튼 등)를 포함할 수 있다. 일부의 예에서, 사용자는 하나 이상의 터치 동작을 제공, 인터페이스와 상호작용 및/또는 결제 정보를 제공하도록 터치 스크린(502)을 이용할 수 있다.

    도 5a는 사용자가 구매하도록 하나 이상의 상품이나 서비스를 선택할 수 있게 하는 상거래 애플리케이션(104a)의 사용자 인터페이스(504)를 도시한다. 특히, 도 5a는 사용자가 구매할 사과 1파운드를 선택할 수 있음을 도시한다. 사용자가 선택가능한 옵션(506)(예컨대, "쇼핑 카트에 추가하기(Add to shopping cart)" 버튼)을 선택하면, 제2 사용자 인터페이스(508)는 도 5b에 의해 도시된 바와 같이 디스플레이될 수 있다. 제2의 또는 가상의 카트 사용자 인터페이스(508)는 사용자가 구매하고자 하는 상품 및/또는 서비스를 목록화한 가상 쇼핑 카트의 관점을 제공할 수 있다. 이 예에서, 제2 사용자 인터페이스(508)에 도시된 바와 같이, 가상 쇼핑 카트는 총 $7.17의 사과 1파운드, 세금 및 발송 제경비를 포함한다.

    제2 사용자 인터페이스(508)는 "체크 아웃(Check Out)"하도록(예컨대, 카트 내 아이템의 구매를 완료하도록) 사용자에 의해 동작되는 사용자 선택가능한 요소(예컨대, 버튼(510))를 포함한다. 사용자가 버튼(510)을 선택하면, 상거래 애플리케이션(104a)은 도 3a와 관련하여 상술한 바와 같이 사용자 ID 및 카트 정보를 전자상거래 결제 퍼실리테이터(106a)로 송신할 수 있다.

    대안으로, 사용자가 체크아웃 버튼(510)을 선택하면, 상거래 애플리케이션(104a)은 도 4와 관련하여 상술한 바와 같이 퍼실리테이터 계약 요청(402)을 송신할 수 있다. 대답으로서, 전자상거래 결제 퍼실리테이터(106a)는 가상 카트의 체크아웃을 완료하도록 전자상거래 결제 퍼실리테이터(106a)에 의해 저장된 정보를 사용하는 옵션(404)을 제공하는지를 결정할 수 있다. 이런 특정 실시예로, 전자상거래 결제 퍼실리테이터(106a)는 (상거래 애플리케이션(104a)이 옵션을 제공해야 한다고 표시하는) 긍정적이거나 (상거래 애플리케이션(104a)이 옵션을 제공하지 않아야 한다고 표시하는) 부정적인 계약 응답(406)을 제공한다.

    계약 응답(406)에 응답하여, 상거래 애플리케이션(104a)은 도 5c에 도시된 바와 같이 체크아웃 사용자 인터페이스(512)를 렌더링할 수 있다. 체크아웃 사용자 인터페이스(512)는 결제 정보가 사용자에 대해 입력되어야 하는 복수의 결제 필드(513)를 포함할 수 있다. 또한, 체크아웃 사용자 인터페이스(512)는 사용자가 네트워크 애플리케이션(218)과 연관된 전자상거래 결제 퍼실리테이터(106a)를 이용하여 상거래 애플리케이션(104a)의 가상 카트 내 아이템의 구매를 완료할 수 있다고 표시하는 그림문자(즉, 마크, 아이콘, 그래픽, 텍스트의 일부 등)를 포함하는 선택가능한 체크아웃 옵션(514)을 포함할 수 있다. 도시된 실시예에서, 그림문자는 FACEBOOK(TM) 아이콘을 포함한다.

    도 5c에 도시된 바와 같이, 적어도 하나의 실시예에서, 선택가능한 체크아웃 옵션(514)은 체크아웃 사용자 인터페이스(512)의 일부를 커버하는 선택가능한 오버레이를 포함할 수 있다. 상거래 애플리케이션(104a)은 오버레이 선택가능한 체크아웃 옵션(514)을 렌더링하는 SDK 함수를 호출할 수 있다. 본 명세서의 관점에서 당업자는 오버레이 선택가능한 체크아웃 옵션(514)이 다수의 이점을 제공할 수 있음을 인식할 것이다. 예컨대, 오버레이 선택가능한 체크아웃 옵션(514)은 체크아웃 사용자 인터페이스(512)에서 애니메이션화할 수 있다. 이는 오버레이 선택가능한 체크아웃 옵션(514)이 상거래 애플리케이션(104a)과 분리되거나, 오버레이 선택가능한 체크아웃 옵션(514)을 더 눈에 띄게 하거나, 오버레이 선택가능한 체크아웃 옵션(514)의 선택 속도를 증가시키도록 도와주는 알림을 사용자에게 제공할 수 있다. 대안의 실시예로, 선택가능한 체크아웃 옵션(514)은 오버레이 대신에 플러그-인, 팝-업, 내장된 버튼 또는 다른 선택가능한 옵션을 포함할 수 있다.

    도 5c는 취소를 포함할 수 있거나, ("x"로 도 5c에 도시된) 선택가능한 옵션(516)을 최소화할 수 있다. 사용자가 네트워크 애플리케이션(218)으로 체크아웃 프로세스를 완료하지 않는 것을 선호하는 경우, 사용자는 취소를 선택하거나 선택가능한 옵션(516)을 최소화할 수 있다. 취소를 선택하거나 선택가능한 옵션(516)을 최소화하면, 오버레이 선택가능한 체크아웃 옵션(514)은 도 5d에 도시된 바와 같이 선택가능한 아이콘이나 다른 요소(518)로 최소화할 수 있다. 특히, 도 5d는 선택가능한 아이콘(518)이 연필 아이콘을 포함할 수 있음을 도시한다. 사용자가 선택가능한 아이콘(518)을 선택하면, 도 5c에 도시된 바와 같이, 선택가능한 체크아웃 옵션(514)은 다시 나타나거나, 최소화하거나, 오픈할 수 있다. 사용자가 선택가능한 체크아웃 옵션(514)을 선택하면, 상거래 애플리케이션(104a)은 도 3b와 관련하여 상술한 바와 같이 체크아웃 옵션(316)의 선택의 표시를 제공할 수 있다.

    계약 응답(406)이 부정적이라면, 상거래 애플리케이션(104a)은 네트워크 애플리케이션(218)으로부터의 정보를 사용하여 주문을 완료하는 선택가능한 체크아웃 옵션(514) 없이 체크아웃 사용자 인터페이스(512)를 제공할 수 있다. 이런 실시예에서, 사용자는 주문의 구매를 수동으로 완료하도록 정보를 결제 필드(513)로 입력해야 할 수 있다.

    이 시점에서, 사용자가 네트워크 애플리케이션(218)/전자상거래 결제 퍼실리테이터(106a)로부터 결제 정보를 수신하는 승인을 상거래 애플리케이션(104a)에게 사전에 제공하지 않았다면, 승인 사용자 인터페이스(520)는 도 5e에 의해 도시된 바와 같이 사용자에게 제시되어, 상거래 애플리케이션(104a)과 결제 정보를 공유하도록 사용자로부터의 승인을 획득할 수 있다. 도 5e에 도시된 바와 같이, 승인 사용자 인터페이스(520)는 네트워크 애플리케이션(218)의 인터페이스(이 경우 FACEBOOK(TM))일 수 있다. 따라서, 애플리케이션 전환(switch)은 승인 사용자 인터페이스(520)를 제시하기 위해 발생할 수 있다. 대안의 구현으로, 승인 사용자 인터페이스(520)는 애플리케이션 전환이 필요하지 않도록 상거래 애플리케이션(104a)의 인터페이스, 팝-업 또는 오버레이를 포함할 수 있다. 상거래 애플리케이션(104a)이 웹-기반 애플리케이션을 포함하는 또 하나의 구현으로, 승인 사용자 인터페이스는 플러그-인, 아이프레임, 팝-업 또는 다른 인터페이스를 포함할 수 있다. 예컨대, 아이프레임은 상거래 애플리케이션(104a)에서 사용자가 상거래 애플리케이션(104a)과 그들의 결제 정보를 공유하도록 프롬프트하는데 사용될 수 있다. 아이프레임을 통해, 사용자 네트워킹 애플리케이션(236)(즉, 모바일 장치에서의 네이티브 SNS 애플리케이션)은 승인 UI(520)를 제시할 수 있다. 사용자가 상거래 애플리케이션(104a)과 결제 정보를 공유하는 승인을 부여하면, 사용자 네트워킹 애플리케이션(236)은 결제 정보를 페치(fetch)하는 네트워크 애플리케이션(218)을 호출할 수 있고, 이후 결제 정보는 자동-기입되거나 상거래 애플리케이션(104a)의 체크아웃 UI에 입력된다. 또 다른 실시예로, 사용자 네트워킹 애플리케이션(236) 대신에 상거래 애플리케이션(104a)은 결제 정보를 요청하도록 네트워크 애플리케이션(218)을 호출할 수 있다.

    다시 도 5e를 참조하면, 승인 사용자 인터페이스(520)는 사용자의 결제 정보를 상거래 애플리케이션(104a)에 제공하도록 네트워크 애플리케이션(218)에 승인을 부여하는 선택가능한 옵션(522)을 제공할 수 있다. 승인 사용자 인터페이스(520)는 사용자가 사용자의 결제 정보로의 상거래 애플리케이션(104a) 액세스를 거절하도록 선택할 수 있는 선택가능한 옵션(524)을 더 포함할 수 있다.

    사용자가 상거래 애플리케이션(104a)에 사용자의 결제 정보를 제공하도록 네트워크 애플리케이션(218)에 승인을 부여하는 선택가능한 옵션(522)을 선택하면, 전자상거래 결제 퍼실리테이터(106a)는 (상술한 그래프 API 호출을 통해) 결제 정보, 결제 토큰 및 카드 라벨을 상거래 애플리케이션(104a)으로 제공할 수 있다. 상거래 애플리케이션(104a)은 도 5f 및 5g에 도시된 바와 같이 전자상거래 결제 퍼실리테이터(106a)로부터 수신된 사용자의 결제 정보로 자동-기입되는 체크아웃 사용자 인터페이스(526)를 디스플레이할 수 있다. 당업자는 제2 애플리케이션 전환이 체크아웃 사용자 인터페이스(526)를 디스플레이하기 위해 사용자가 선택가능한 옵션(522)을 선택한 후 네트워크 애플리케이션(218)으로부터 다시 상거래 애플리케이션(104a)으로 발생할 수 있음을 인식할 것이다. 사용자가 상거래 애플리케이션(104a)을 사용자의 결제 정보에 제공하도록 네트워크 애플리케이션(218)에 대한 승인을 이전에 제공했다면, 곧바로 사용자는 선택가능한 체크아웃 옵션(514)을 선택한다.

    체크아웃 사용자 인터페이스(526)는 결제 카드 라벨(528)을 포함하는 사용자의 결제 정보로 자동-기입된 결제 필드(513)를 포함할 수 있다. 체크아웃 사용자 인터페이스(526)는 결제 카트 선택기(527)를 더 포함할 수 있다. 이를 통해 사용자는 전자상거래 결제 퍼실리테이터(106a)에 의해 사용자에 대해 저장된 복수의 결제 카드 중에서 결제 카드를 선택할 수 있다. 체크아웃 사용자 인터페이스(526)는 선택가능한 결제 옵션(530)을 더 포함할 수 있다. 사용자가 주문의 구매를 확인하기 위해 선택가능한 결제 옵션(530)을 선택할 때, 상거래 애플리케이션(104a)은 상술한 바와 같이 요금 요청을 전자상거래 결제 퍼실리테이터(106a)로 송신할 수 있다.

    도 5g는 체크아웃 사용자 인터페이스(526)가 네트워크 애플리케이션(218)(이 경우 FACEBOOK(TM))에 결제 정보를 저장하는 옵션을 포함할 수 있음을 더 도시한다. 이는 사용자가 체크아웃 사용자 인터페이스(526)에서 추가/변경하는 임의의 업데이트 또는 결제 정보를 저장하도록 네트워크 애플리케이션(218)에 대한 승인을 제공할 수 있다. 예컨대, 하나 이상의 구현으로, 전자상거래 결제 퍼실리테이터(106a)는 사용자에 대한 이름 및 주소 정보만을 가질 수 있다. 따라서, 심지어 전자상거래 결제 퍼실리테이터(106a)에 의해 제공된 결제 정보로 결제 필드(513)를 자동-기입한 후에도, 사용자는 여전히 결제 카드에 대한 정보를 입력해야 할 것이다. 결제 정보(532)를 저장하는 옵션이 선택될 때, 사용자에 의해 체크아웃 사용자 인터페이스(526)로 입력된 결제 카드 정보는 네트워크 애플리케이션의 사용자의 프로필에 저장될 것이다. 이를 통해 전자상거래 결제 퍼실리테이터(106a)는 상거래 애플리케이션(104a) 또는 다른 상거래 애플리케이션을 사용하여 추후 구매에 대한 이런 결제 카드 정보를 제공할 수 있다.

    본 명세서의 관점에서 당업자는 전자상거래 결제 퍼실리테이터(106a)가 상거래 애플리케이션(104a)으로부터 구매를 하는 용이성을 크게 증가시킬 수 있음을 인식할 것이다. 체크아웃 프로세스의 속도 및 용이성을 증가시킴으로써 전자상거래 결제 퍼실리테이터(106a)는 구매를 증가시키고 철회된 카트를 감소시키는데 도와줄 수 있다. 또한, 본 발명의 하나 이상의 실시예는 철회된 카트를 다시 캡처하는 것을 더 제공한다. 특히, 사용자는 흔히 시간의 부족, 네트워크 연결의 손실 또는 다른 이유로 인해 카트 내 아이템의 구매를 완료할 수 없을 수 있다. 하나 이상의 실시예는 나중에 철회된 카트 내 아이템을 구매할 기회를 사용자에게 제공할 수 있다. 이는 사용자가 카트에 아이템/서비스를 재입력해야 하는 번거로움을 막아줄 수 있고, 사용자에 대한 리마인더(reminder)의 역할을 제공할 수 있으며, 판매자가 철회된 카트를 다시 캡처할 수 있게 해줄 수 있다.

    더 상세하게, 전자상거래 결제 퍼실리테이터(106a)가 상거래 애플리케이션(104a)으로부터 상세한 카트 정보를 수신할 때(예컨대, 단계 316을 참조), 전자상거래 결제 퍼실리테이터(106a)는 미-완료된 거래로서 상세 정보를 거래 데이터베이스(232)에 저장할 수 있다. 사용자가 거래를 완료하면, 전자상거래 결제 퍼실리테이터(106a)는 거래 데이터베이스에서 거래를 완료로 표시할 수 있다. 거래가 완료되지 않는다면(즉, 전자상거래 결제 퍼실리테이터(106a)가 적용가능한 결제 토큰을 가진 요금 요청을 수신하지 않는다면 또는 결제 카드가 거절되면), 네트워크 애플리케이션(218)은 카트 내 아이템의 구매를 완료하는 또 다른 기회를 사용자에게 제공할 수 있다.

    특히, 네트워크 애플리케이션(218)이 소셜 네트워크를 포함할 때, 네트워크 애플리케이션(218)은 구매 메시지를 사용자에게 송신할 수 있다. 예컨대, 도 6은 사용자에 대한 뉴스피드에 포함된 예시적인 구매 메시지(600)를 도시한다. 대안의 구현으로, 네트워크 애플리케이션(218)은 네트워크 애플리케이션(218)에서 가능한 텍스트 메시지, 이메일 또는 다른 통신 형태를 통해 구매 메시지(600)를 사용자에게 송신할 수 있다. 구매 메시지(600)를 완료하는 것은 철회되었던 카트 내 아이템의 세부사항(아이템의 명, 아이템의 가격 등)를 포함할 수 있다. 구매 메시지(600)는 상거래 애플리케이션(104a)의 표시 및 카트의 구매가 시도되었던 시간을 더 포함할 수 있다. 구매 메시지(600)는 사용자가 철회된 거래를 완료할 수 있게 하는 선택가능한 구입 옵션(가령, 도 6에 도시된 구입 버튼(602))을 더 포함할 수 있다.

    더 상세하게, 사용자가 선택가능한 구입 옵션(602)을 선택하면, 사용자가 카트 내 아이템의 구매를 완료할 수 있는 가상 카트 사용자 인터페이스(508)(도 5b를 참조)로 사용자를 안내하는 심층 링크(deep link)가 활성화될 수 있다. 이런 구현으로, 상거래 애플리케이션(104a)은 카트가 유효한 시간 길이의 표시를 전자상거래 결제 퍼실리테이터(106a)에 제공할 수 있다. 이런 정보는 상술한 그래프 API 호출에 포함될 수 있다.

    대안으로, 선택가능한 구입 옵션(602)의 선택을 통해 사용자는 상거래 애플리케이션(104a)으로 재인도될 필요 없이 네트워크 애플리케이션(218)으로부터 직접적으로 아이템의 구매를 완료할 수 있다. 이런 실시예로, 네트워크 애플리케이션(218)은 사용자에 대한 저장된 결제 정보를 사용하여 거래를 완료할 수 있다. 네트워크 애플리케이션(218)은 사용자에 의해 사전 철회된 거래를 완료하는 옵션을 사용자에게 제공할 수 있다.

    추가로 또는 대안으로, 네트워크 애플리케이션(218)은 철회되거나 완료된 카트 내 아이템을 사용자의 프로필과 연관시킬 수 있다. 이후, 이런 정보는 상거래 애플리케이션의 판매자 또는 유사한 판매자들에 의해 제공된 유사한 상품이나 서비스에 대한 타겟팅된 광고를 사용자에게 제시하는데 사용될 수 있다.

    도 1 내지 6, 해당하는 텍스트 및 예들은 상거래 애플리케이션의 구매를 용이하게 하는 다수의 다른 시스템 및 장치를 제공한다. 상술한 바 이외에, 본 발명의 실시예들은 또한 특정 결과를 달성하는 방법 내 행위들 및 단게들을 포함하는 흐름도의 관점에서 기술될 수 있다. 예컨대, 도 7 내지 10은 본 발명의 하나 이상의 실시예에 따라 예시적인 방법의 흐름도를 도시한다.

    도 7은 전자상거래 결제 퍼실리테이터(106a) 또는 네트워크 애플리케이션(218)의 관점에서 상거래 애플리케이션에서의 구매를 용이하게 하는 하나의 예시적인 방법(700)의 흐름도를 도시한다. 이 방법(700)은 상거래 애플리케이션으로부터 요청을 수신하는 행위 702를 포함할 수 있다. 특히, 행위 702는 상거래 애플리케이션(104a)으로부터 요청(316)을 수신하는 것을 포함할 수 있다. 요청(316)은 상거래 애플리케이션(104a)으로부터 구매를 위해 선택된 하나 이상의 아이템이나 서비스에 대한 금액 및 사용자의 사용자 식별번호를 포함할 수 있다. 하나 이상의 실시예로, 요청(316)을 수신하는 것은 하나 이상의 결제 필드(513)의 자동-기입을 가능하게 하도록 사용자에 대한 결제 정보를 탐색하는 클라이언트-측 그래프 API 요청(즉, 컴퓨팅 장치(202)나 장치(500)로부터의 API 호출)을 수신하는 것을 포함할 수 있다.

    또한, 이 방법(700)은 결제 토큰을 생성하는 행위 704를 포함할 수 있다. 특히, 행위 704는 비-일시적 저장 매체에 저장된 사용자에 대한 결제 카드 세부사항을 참조하는 결제 토큰을 생성하는 것을 포함할 수 있다. 더 상세하게, 서버 컴퓨팅 장치(들)(216)의 토큰 생성기(234)는 전자상거래 결제 퍼실리테이터(106a)의 프로필 저장 모듈(228)에 저장된 하나 이상의 결제 카드 번호를 참조하도록 결제 토큰을 생성할 수 있다.

    당업자는 방법(700)이 네트워크 애플리케이션(218)의 사용자의 사용자 ID와 사용자의 식별을 맵핑하는 것을 더 포함할 수 있음을 인식할 것이다. 이를 통해 전자상거래 결제 퍼실리테이터(106a)는 프로필 저장 모듈(228)에 저장된 사용자의 프로필을 식별할 수 있다. 하나 이상의 실시예로, 사용자의 식별을 맵핑하는 것은 사용자(102)의 식별에 변환 함수를 적용하는 것을 포함한다.

    도 7은 방법(700)이 결제 토큰을 상거래 애플리케이션으로 송신하는 행위 706를 포함할 수 있음을 더 도시한다. 더 상세하게, 행위 706은 클라이언트-측 그래프 API 요청에 대한 응답(318)에 응답하여 서버 컴퓨팅 장치(들)(216)가 결제 토큰을 상거래 애플리케이션(104a)으로 송신하는 것을 포함할 수 있다. 결제 토큰의 송신 이외에, 응답(318)은 사용자(102)에 대한 결제 정보 및 결제 카드 라벨(528)을 더 포함할 수 있다.

    방법(700)은 결제 토큰을 포함하는 요금 요청을 수신하는 행위 708을 추가로 포함할 수 있다. 특히, 행위 708은 상거래 애플리케이션(104a)으로부터의 결제 토큰을 포함하는 요금 요청(328)을 수신하는 것을 포함할 수 있다. 예컨대, 행위 708은 서버 컴퓨팅 장치(214)로부터 서버-측 결제 API 요청을 수신하는 것을 포함할 수 있다. 더 상세하게, 행위 708은 그 요금 요청(328)이 상거래 애플리케이션(104a)과 연관된 서버 컴퓨팅 장치(214)로부터 유래했음을 확인하는 것을 선택적으로 포함할 수 있다.

    상술한 바 이외에, 방법(700)은 결제 요금 요청을 결제 중계 시스템으로 송신하는 행위 710을 포함할 수 있다. 상세하게, 단계 710은 네트워크 애플리케이션(218)을 실행하는 서버 컴퓨팅 장치(들)(216)에 의해 상거래 애플리케이션(104a)과 연관된 결제 중계 시스템(108)으로 결제 요금 요청(330)을 송신하는 것을 포함할 수 있다. 결제 요금 요청(330)은 결제 카드 정보(즉, 번호 및 만료 일자), 요금액 및 상거래 애플리케이션(104a)을 대신하여 요금 요청을 제출하는 승인의 표시를 포함할 수 있다. 승인의 표시는 결제 중계 시스템(108)으로부터 상거래 애플리케이션(104a)으로 제공된 개인 키를 사용하여 결제 요금(330) 요청의 적어도 일부를 암호화하는 것을 포함할 수 있거나, 전자상거래 결제 퍼실리테이터(106a)가 상거래 애플리케이션(104a)을 대신하여 작용하고 있음을 표시하는 다른 방법들 중 하나를 포함할 수 있다.

    이제 도 8를 참조하면, 상거래 애플리케이션의 관점에서 상거래 애플리케이션에서의 구매를 용이하게 하는 하나의 예시적인 방법(800)의 흐름도가 도시된다. 도시된 바와 같이, 방법(800)은 사용자 식별번호 및 주문의 요금액을 포함하는 정보 요청을 송신하는 행위 802를 포함할 수 있다. 예컨대, 행위 802는 정보 요청(310 또는 316)을 서버 컴퓨팅 장치(들)(216)로 송신하는 것을 포함할 수 있다. 요청은 상거래 애플리케이션(104a)의 적어도 제1 일부를 실행하는 클라이언트-컴퓨팅 장치(202)로부터 송신될 수 있다. 요청(310/316)은 상거래 애플리케이션(104a)을 사용하여 사용자에 의한 구매를 위해 선택된 주문의 요금액 및 사용자의 사용자 식별번호를 포함할 수 있다. 하나 이상의 실시예로, 행위 802는 네트워크 애플리케이션(218)의 그래프 API로의 호출을 포함할 수 있다.

    방법(800)은 결제 카드 라벨, 결제 토큰 및 결제 정보를 수신하는 행위 804를 더 포함할 수 있다. 상세하게, 행위 804는 서버 컴퓨팅 장치(들)(216)가 결제 카드 라벨, 결제 토큰 및 결제 정보(318)를 상거래 애플리케이션(104a)으로 송신하는 것을 포함할 수 있다. 이후, 방법(800)은 결제 필드를 결제 카드 라벨과 결제 정보로 자동-기입하는 행위 806을 포함할 수 있다. 예컨대, 상거래 애플리케이션(104a)은 체크아웃 사용자 인터페이스(512)의 결제 필드(513)를 결제 카드 라벨(528)과 임의의 추가 결제 정보로 자동-기입할 수 있다.

    도 8에 의해 도시된 바와 같이, 방법(800)은 결제 토큰을 포함하는 요금 요청을 송신하는 행위 808을 포함할 수 있다. 더 상세하게, 행위 808은 요금 요청(328)을 서버 컴퓨팅 장치(들)로 송신하는 것을 포함할 수 있다. 예컨대, 행위 808은 서버 컴퓨팅 장치(214)가 네트워크 애플리케이션(218)의 결제 API로 호출하는 것을 포함할 수 있다.

    이제 도 9를 참조하면, 네트워크 애플리케이션을 사용하여 전자상거래 결제 퍼실리테이터(106a) 또는 네트워크 애플리케이션(218)의 관점에서 결제 거래를 도와주는 옵션을 지능적이고 동적으로 제공하는 방법(900)이 도시된다. 방법(900)은 사용자의 표시를 포함하는 계약 요청을 수신하는 행위 902를 포함할 수 있다. 특히, 행위 902는 상거래 애플리케이션(104a)으로부터 구매에 대한 하나 이상의 아이템이나 서비스를 선택한 사용자의 표시를 포함하는 계약 요청(406)을 상거래 애플리케이션(104a)으로부터 수신하는 것을 포함할 수 있다. 예컨대, 행위 902는 네트워크 애플리케이션(218)의 그래프 API로의 계약 호출(406)을 수신하는 것을 포함할 수 있다.

    방법(900)은 결제 정보를 제공하는 것이 구매의 확률을 증가시킬 것인지를 결정하는 행위 904를 더 포함할 수 있다. 더 상세하게, 행위 904는 결제 정보를 제공하는 것이 사용자가 상거래 애플리케이션(104a)으로부터 하나 이상의 아이템이나 서비스의 구매를 완료할 확률을 증가시킬 것인지를 결정(404)하는 것을 포함할 수 있다. 예컨대, 행위 904는 결제 옵션(404)을 제공하는지를 결정하는 도 4와 관련하여 상술한 임의의 방법을 포함할 수 있다. 예컨대, 행위 904는 예측된 전환율을 결정하고 예측된 전환율이 상거래 애플리케이션(104a)의 평균 전환율보다 더 큰지를 결정하는 것을 포함할 수 있다. 추가로 또는 대안으로, 행위 904는 결제 정보가 사용자(102)에 대해 이용가능한지를 결정하는 것을 포함할 수 있다.

    또한, 방법(900)은 계약 응답(406)을 제공하는 행위 906을 포함할 수 있다. 행위 906은 긍정적인 계약 응답을 제공하는 단계 906a 또는 부정적인 계약 응답을 제공하는 단계 906b를 포함할 수 있다. 단계 906a는 결제 정보를 제공하는 것이 사용자(102)가 상거래 애플리케이션(104a)으로부터 하나 이상의 아이템이나 서비스의 구매를 완료할 확률을 증가시킬 것이라면 긍정적인 계약 응답(406)을 제공하는 것을 포함할 수 있다. 반면에, 단계 906b는 결제 정보를 제공하는 것이 사용자(102)가 상거래 애플리케이션(104a)으로부터 하나 이상의 아이템이나 서비스의 구매를 완료할 확률을 증가시키지 않을 것이라면 부정적인 계약 응답(406)을 제공하는 것을 포함할 수 있다.

    도 10은 네트워크 애플리케이션을 사용하여 상거래 애플리케이션(104a)의 관점에서 결제 거래에 도움을 주는 옵션을 지능적이고 동적으로 제공하는 방법(1000)을 도시한다. 도시된 바와 같이, 방법(1000)은 사용자 식별을 포함하는 계약 요청을 송신하는 행위 1002를 포함할 수 있다. 더 상세하게, 행위 1002는 상거래 애플리케이션(104a)의 적어도 제1 부분을 실행하는 클라이언트 컴퓨팅 장치(202)로부터 네트워크 애플리케이션(218)을 실행하는 서버 컴퓨팅 장치(들)(216)에게 계약 요청(502)을 송신하는 것을 포함할 수 있다. 예컨대, 행위 1002는 계약 호출(406)을 네트워크 애플리케이션(218)의 그래프 API로 송신하는 것을 포함할 수 있다.

    방법(1000)은 사용자 체크아웃 인터페이스를 제공하는 행위 1004를 더 포함할 수 있다. 행위 1004는 단계 1004a 또는 단계 1004b를 포함할 수 있다. 단계 1004a는 네트워크 애플리케이션으로부터 정보를 사용하여 주문을 완료하는 옵션을 제공하는 것을 포함할 수 있다. 특히, 단계 1004a는 사용자가 네트워크 애플리케이션(218)/전자상거래 결제 퍼실리테이터(106a)를 이용하여 상거래 애플리케이션(104a)의 가상 카트 내 아이템의 구매를 완료할 수 있다고 표시하는 선택가능한 체크아웃 옵션(514)을 렌더링하는 것을 포함할 수 있다. 예컨대, 상거래 애플리케이션(104a)은 상술한 바와 같이 선택가능한 체크아웃 옵션(514)을 렌더링하는 SDK 함수를 호출할 수 있다.

    반면에, 단계 1004b는 네트워크 애플리케이션으로부터 결제 정보를 사용하여 주문을 완료하는 옵션 없이 사용자 체크아웃 인터페이스를 제공하는 것을 포함할 수 있다. 특히, 상거래 애플리케이션(104a)은 결제 필드(513)를 포함하는 체크아웃 사용자 인터페이스(512)를 렌더링할 수 있다. 상거래 애플리케이션(104a)은 선택가능한 체크아웃 옵션(514)을 렌더링하거나 제공하지 않고 체크아웃 사용자 인터페이스(512)를 렌더링할 수 있다.

    또한, 방법(1000)은 옵션의 선택시 네트워크 애플리케이션으로부터의 결제 정보로 결제 필드를 자동-기입하는 행위 1006을 포함할 수 있다. 특히, 행위 1006은 네트워크 애플리케이션(218)으로부터 수신된 결제 정보를 사용자 체크아웃 인터페이스(512)의 결제 필드(513)에 입력하는 것을 포함할 수 있다. 결제 정보는 이름, 청구서 발송지 및 결제 카드 라벨(528)을 포함할 수 있다. 결제 정보는 상거래 애플리케이션(104a)으로부터 송신된 결제 API 호출에 응답하여 네트워크 애플리케이션(218)으로부터 수신될 수 있다.

    본 발명의 실시예들은 보다 자세히 후술되는 바와 같은 컴퓨터 하드웨어, 예컨대 하나 이상의 프로세서와 시스템 메모리를 포함하는 특수 목적 또는 일반 목적 컴퓨터를 포함하거나 이용할 수 있다. 본 발명의 범위 내의 실시예들은 또한 컴퓨터 실행가능한 명령어 및/또는 데이터 구조를 실행하거나 저장하기 위한 물리적 및 다른 컴퓨터 판독가능한 매체를 포함한다. 특정한, 본 명세서에 서술되는 하나 이상의 프로세스는 적어도 부분적으로 컴퓨터 판독가능한 비-일시적 저장매체에 포함되고 하나 이상의 컴퓨팅 장치(예컨대, 본 명세서에 서술되는 임의의 매체 컨텐츠 접근 장치)에 의해 실행가능한 명령어로서 구현될 수 있다. 일반적으로, 프로세서(예컨대, 마이크로프로세서)는 컴퓨터 판독가능한 비-일시적 저장매체(예컨대, 메모리, 기타 등등)으로부터 명령어를 수신하고, 그들 명령어를 실행하고, 그럼으로써 본 명세서에 서술되는 하나 이상의 프로세스를 포함하는 하나 이상의 프로세스를 수행한다.

    컴퓨터 판독가능한 매체는 일반 목적 또는 특수 목적용 컴퓨터 시스템에 의해 접근될 수 있는 임의의 사용가능한 미디어일 수 있다. 컴퓨터-실행가능한 명령어를 저장하는 컴퓨터 판독가능한 매체는 비-일시적 컴퓨터 판독가능한 저장 매체(장치)이다. 컴퓨터-실행가능한 명령어를 수행하는 컴퓨터 판독가능한 매체는 전송 매체이다. 그러므로, 예로서 제한 없이, 본 발명의 실시예는 적어도 두 개의 분리된 상이한 종류의 컴퓨터 판독가능한 매체를 포함할 수 있다: 비-일시적 컴퓨터 판독가능한 저장 매체(장치) 및 전송 매체.

    비-일시적 컴퓨터 판독가능한 저장 매체(장치)는 RAM, ROM, EEPROM, CD-ROM, 고체 상태 드라이브("SSD")(예컨대, RAM에 기반한), 플래시 메모리, 상변화 메모리("PCM"), 다른 타입의 메모리, 다른 광학 디스크 저장소, 자기 디스크 저장소 또는 다른 자기적 저장 장치 또는 소정의 프로그램 코드 수단을 컴퓨터 실행가능한 명령어 또는 데이터 구조의 형태로 저장할 수 있고 일반 목적 또는 특수 목적용 컴퓨터에 의해 접근가능한 다른 매체를 포함한다.

    "네트워크"는 컴퓨터 시스템 및/또는 모듈 및/또는 다른 전자적 장치 간의 전자적 데이터의 전송을 가능하게 하는 하나 이상의 데이터 링크로 정의된다. 정보가 네트워크 또는 다른 통신 연결(유선, 무선, 또는 유선이나 무선의 조합)을 거쳐 컴퓨터로 전송되거나 제공되면, 컴퓨터는 적절하게 연결을 전송 매체로서 볼 수 있다. 전송 매체는 소정의 프로그램 코드 수단을 컴퓨터 실행가능한 명령어 또는 데이터 구조의 형태로 옮기고 일반 목적 또는 특수 목적용 컴퓨터에 의해 접근가능한 네트워크 및/또는 데이터 링크를 포함할 수 있다. 상기의 조합 또한 컴퓨터 판독가능한 매체의 범위에 포함되어야 한다.

    나아가, 다양한 컴퓨터 시스템 구성요소에 이르러, 컴퓨터 실행가능한 명령어 또는 데이터 구조의 형태의 프로그램 코드 수단은 자동으로 전송 매체에서 비-일시적 컴퓨터 판독가능한 저장 매체(장치)로 전송될 수 있다(또는 그 반대). 예를 들어, 네트워크 또는 데이터 링크를 거쳐 수신된 컴퓨터 실행가능한 명령어 또는 데이터 구조는 네트워크 인터페이스 모듈(예컨대, "NIC") 내의 RAM에 버퍼링될 수 있고 최종적으로 컴퓨터 시스템 RAM 및/또는 컴퓨터 시스템에서 덜 휘발적인 컴퓨터 저장 매체(장치)로 전송될 수 있다. 그러므로, 비-일시적 컴퓨터 판독가능한 저장 매체(장치)는 전송 매체 또한(또는 주로) 이용하는 컴퓨터 시스템 구성요소에 포함될 수 있음이 이해될 것이다.

    컴퓨터 실행가능한 명령어는 예컨대 프로세서에 의해 실행될 때, 일반 목적 컴퓨터, 특수 목적 컴퓨터 또는 특수 목적 프로세싱 장치가 특정한 기능 또는 기능의 그룹을 수행하게 하는 명령어 및 데이터를 포함한다. 일부 실시예에서, 컴퓨터 실행가능한 명령어는 일반 목적용 컴퓨터에서 실행되어 일반 목적용 컴퓨터를 본 발명의 요소를 구현하는 특수 목적용 컴퓨터로 바꿀 수 있다. 컴퓨터 실행가능한 명령어는, 예컨대 이진수, 어셈블리 언어와 같은 중간 형태 명령어 또는 소스 코드일 수 있다. 주제가 구조적 특징 및/또는 방법론적 행위 특유의 언어로 서술됐지만, 첨부된 청구항에 정의된 주제는 상술한 특징 또는 행위에 반드시 제한되지 않는다는 것이 이해될 것이다. 오히려, 서술된 특징 및 행위는 청구항을 구현하는 예시적인 형태로서 개시된 것이다.

    통상의 기술자는 본 발명이 개인용 컴퓨터, 데스크탑 컴퓨터, 랩탑 컴퓨터, 메시지 프로세서, 휴대용 장치, 멀티 프로세서 시스템, 마이크로프로세서 기반 또는 프로그램 가능한 소비자 전자 기기, 네트워크 PC, 미니 컴퓨터, 메인프레임 컴퓨터, 모바일 전화, PDA, 태블릿, 페이저, 라우터, 스위치 등등의 많은 타입의 컴퓨터 시스템 구성을 가지는 네트워크 컴퓨팅 환경에서 실현됨을 이해할 것이다. 본 발명은 또한 네트워크를 통해 연결된(유선 데이터 링크, 무선 데이터 링크 또한 유선과 무선 데이터 링크의 조합에 의하여) 로컬 및 원격 컴퓨터 시스템 양자가 작업을 수행하는 분산형 시스템 환경에서 실현될 수 있다. 분산형 시스템 환경에서, 프로그램 모듈은 로컬 및 원격 메모리 저장 장치 양자에 저장될 수 있다.

    본 발명의 실시예는 또한 클라우드 컴퓨팅 환경으로 구현될 수 있다. 본 서술 및 이어지는 청구항에서, "클라우드 컴퓨팅"은 구성가능한 컴퓨팅 자원의 공유된 풀에 주문형 네트워크 접근을 가능하게 하는 모델로 정의된다. 예를 들어, 클라우드 컴퓨팅은 유비쿼터스와 구성가능한 컴퓨팅 장원의 공유된 풀에 편리한 주문형 네트워크 접근을 제안하는 마켓플레이스에 채용될 수 있다. 구성가능한 컴퓨팅 가원의 공유된 풀은 신속하게 가상화를 통해 제공되고 낮은 관리 노력 또는 서비스 제공자 상호작용으로 방출될 수 있고, 그 후 따라 조정될 수 있다.

    클라우드 컴퓨팅 모델은 예컨대, 주문형 셀프 서비스, 넓은 네트워크 접근, 자원 풀링, 신속한 탄력성, 계산된 서비스, 기타 등등과 같은 다양한 특징으로 이루어질 수 있다. 클라우드 컴퓨팅 모델은 또한 다양한 서비스 모델, 예컨대 서비스로서의 소프트웨어(Software as a Service, "SaaS"), 서비스로서의 플랫폼(Platform as a Service, "PaaS") 및 서비스로서의 인프라구조(Infrastructure as a Service, "IaaS")를 낼 수 있다. 클라우드 컴퓨팅 모델은 또한 개인형 클라우드, 커뮤니티 클라우드, 공공 클라우드, 하이브리드 클라우드, 기타 등등과 같은 상이한 배치 모델을 사용하여 배치될 수 있다. 본 서술 및 청구항에서, "클라우드 컴퓨팅 환경"은 클라우드 컴퓨팅이 채용되는 환경이다.

    도 11은, 블록도의 형태로, 상술한 하나 이상의 프로세스를 수행하도록 구성될 수 있는 예시적인 컴퓨팅 장치(1100)를 도시한다. 당업자는 컴퓨팅 장치(202), 서버 컴퓨팅 장치(215), 서버 컴퓨팅 장치(216) 및 모바일 장치(500)가 데이터-컴퓨팅 장치(1100)의 구현을 각각 포함할 수 있음을 이해할 것이다. 도 11에 도시된 바와 같이, 컴퓨팅 장치는 프로세서(1102), 메모리(1104), 저장 장치(1106) I/O 인터페이스(1108) 및 통신 인터페이스(1110)를 포함할 수 있다. 예시적인 컴퓨팅 장치(1100)이 도 11에 도시되나, 도 11에 도시된 구성요소는 제한하는 의도가 아니다. 추가적인 또는 대안적인 구성요소가 다른 실시예에서 사용될 수 있다. 나아가, 특정 실시예에서, 컴퓨팅 장치(1100)는 도 11에 도시된 것보다 적은 구성요소를 포함할 수 있다. 도 11에 도시된 컴퓨팅 장치(1100)의 구성요소는 이제 보다 자세히 서술될 것이다.

    특정 실시예로, 프로세서(들)(1102)는 가령 컴퓨터 프로그램을 구성하는 명령어와 같은 명령어를 실행하기 위한 하드웨어를 포함한다. 예로서 제한 없이, 명령어를 실행하기 위해, 프로세서(들)(1102)는 내부 레지스터, 내부 캐시, 메모리(1104) 또는 저장 장치(1106)로부터 명령어를 검색(또는 페치(fetch))할 수 있고; 명령어를 디코딩하고 실행할 수 있다. 특정 실시예로, 프로세서(들)(1102)는 데이터용, 명령어용 또는 주소용 하나 이상의 내부 캐시를 포함할 수 있다. 예로서 제한 없이, 프로세서(들)(1102)는 하나 이상의 명령어 캐시들, 하나 이상의 데이터 캐시들 및 하나 이상의 변환 색인 버퍼(translation lookaside buffers, TLBs)를 포함할 수 있다. 명령어 캐시에 저장된 명령어들은 메모리(1104)나 저장소(1106) 내 명령어들의 사본일 수 있다.

    컴퓨팅 장치(1100)는 프로세서(들)(1102)에 연결된 메모리(1104)를 포함한다. 메모리(1104)는 데이터, 메타데이터, 프로세서(들)에 의한 실행을 위한 프로그램을 저장하기 위해 사용될 수 있다. 메모리(1104)는 하나 이상의 휘발성 및 비휘발성 메모리, 예컨대 랜덤 액세스 메모리("RAM")상태 디스크("SSD"), 플래시, 상변화 메모리("PCM") 또는 다른 타입의 데이터 저장소를 포함할 수 있다. 메모리(1104)는 내부 또는 분산형 메모리일 수 있다.

    컴퓨팅 장치(1100)는 데이터 또는 명령어를 저장하기 위한 저장소를 포함하는 저장 장치(1106)를 포함한다. 예로서 제한 없이, 저장 장치(1106)는 상술한 비-일시적 저장 매체를 포함할 수 있다. 저장 장치(1106)는 하드 디스크 드라이브(HDD), 플로피 디스크 드라이브, 플래시 메모리, 광디스크, 자기-광학 디스크, 자기 테이프 또는 범용 직렬 버스(USB) 드라이브 또는 이들의 2 이상의 조합을 포함할 수 있다. 적절한 경우, 저장 장치(1106)는 착탈식 또는 비-착탈식(또는 고정) 매체를 포함할 수 있다. 저장 장치(1106)는 컴퓨팅 장치(1100)의 내부 또는 외부에 있을 수 있다. 특정 실시예로, 저장 장치(1106)는 비휘발성, 고체-상태(solid-state) 메모리이다. 특정 실시예로, 저장 장치(1106)는 읽기 전용 메모리(ROM)을 포함한다. 적절한 경우, 이런 ROM은 마스크-프로그램화된 ROM, 프로그램가능 ROM(PROM), 소거가능 PROM(EPROM), 전기적 소거가능 PROM(EEPROM), 전기적 변경가능 ROM(EAROM), 플래시 메모리 또는 이들의 2 이상의 조합일 수 있다.

    컴퓨팅 장치(1100)는 또한 사용자가 입력을 제공하고, 출력을 수신하고, 다르게 컴퓨팅 장치(1100)과 데이터를 주고받을 수 있게 하는 하나 이상의 입력 또는 출력("I/O") 디바이스/인터페이스(1108)를 포함할 수 있다. 이들 I/O 장치/인터페이스(1108)는 마우스, 키패드 또는 키보드, 터치 스크린, 카메라, 광학식 스캐너, 네트워크 인터페이스, 모뎀, 기타 알려진 I/O 장치 또는 이러한 I/O 장치/인터페이스(1108)의 조합을 포함할 수 있다. 터치 스크린은 스타일러스 또는 손가락으로 활성화될 수 있다.

    I/O 장치/인터페이스(1108)는 그래픽 엔진, 디스플레이(예컨대, 디스플레이 스크린), 하나 이상의 출력 드라이버(예컨대, 디스플레이 드라이버), 하나 이상의 오디오 스피커 및 하나 이상의 오디오 드라이버를 포함하나 이에 제한되지는 않는, 사용자에게 출력을 표시하는 하나 이상의 장치를 포함할 수 있다. 특정 실시예에서, 장치/인터페이스(1108)는 사용자에게 표시하기 위하여 디스플레이에 그래픽 데이터를 제공하도록 구성된다. 그래픽 데이터는 하나 이상의 그래픽 사용자 인터페이스 및/또는 특정 구현을 제공하는 다른 그래픽 컨텐츠를 표시할 수 있다.

    컴퓨팅 장치(1100)는 통신 인터페이스(1110)를 더 포함할 수 있다. 통신 인터페이스(1110)는 하드웨어, 소프트웨어 또는 양자를 포함할 수 있다. 통신 인터페이스(1110)는 컴퓨팅 장치와 하나 이상의 다른 컴퓨팅 장치(1100)나 하나 이상의 네트워크 사이의 통신(가령, 예컨대 패킷-기반 통신)을 위한 하나 이상의 인터페이스를 제공할 수 있다. 예로서 제한 없이, 통신 인터페이스(1110)는 이더넷이나 다른 유선-기반 네트워크로 통신하기 위한 네트워크 인터페이스 제어장치(NIC)나 네트워크 어댑터 또는 가령 WI-FI와 같이 무선 네트워크로 통신하기 위한 무선 NIC(WNIC)나 무선 어댑터를 포함할 수 있다.

    본 명세서는 임의의 적절한 네트워크 및 임의의 적절한 통신 인터페이스(1110)를 고려한다. 예로서 제한 없이, 컴퓨팅 장치(1100)는 애드 혹 네트워크(ad hoc network), 개인 영역 네트워크(PAN), 근거리 네트워크(LAN), 광역 네트워크(WAN), 대도시 네트워크(MAN), 인터넷의 하나 이상의 부분 또는 2 이상의 이런 네트워크들의 조합으로 통신할 수 있다. 하나 이상의 이런 네트워크의 하나 이상의 부분은 유선 또는 무선일 수 있다. 예로서, 컴퓨팅 장치(1100)는 무선 PAN(WPAN)(가령, 예컨대 BLUETOOTH WPAN), WI-FI 네트워크, WI-MAX 네트워크, 셀룰러 전화 네트워크(가령, 예컨대 GSM(Global System for Mobile Communication) 네트워크), 다른 적절한 무선 네트워크 또는 그 조합으로 통신할 수 있다. 적절한 경우, 컴퓨팅 장치(1100)는 임의의 이들 네트워크에 대한 임의의 적절한 통신 인터페이스(1110)를 포함할 수 있다.

    컴퓨팅 장치(1100)는 버스(1112)를 더 포함할 수 있다. 버스(1112)는 컴퓨팅 장치(1100)의 구성요소를 서로 연결하는 하드웨어, 소프트웨어 또는 이들 모두를 포함할 수 있다. 예로서 제한 없이, 버스(1112)는 AGP(Accelerated Graphics Port)이나 다른 그래픽 버스, EISA(Enhanced Industry Standard Architecture) 버스, FSB(front-side bus), HT(HYPERTRANSPORT) 인터커넥트, ISA(Industry Standard Architecture) 버스, INFINIBAND 인터커넥트, LPC(low-pin-count) 버스, 메모리 버스, MCA(Micro Channel Architecture) 버스, PCI(Peripheral Component Interconnect) 버스, PCIe(PCI-Express) 버스, SATA(serial advanced technology attachment) 버스, VLB(Video Electronics Standard Association local) 버스, 다른 적절한 버스 또는 그 조합을 포함할 수 있다.

    상술한 바와 같이, 네트워크 애플리케이션(218)은 소셜 네트워킹 시스템을 포함할 수 있다. 소셜 네트워킹 시스템은 사용자들(가령, 개인들 또는 단체들)이 소셜 네트워킹 시스템 및 서로와 상호작용할 수 있게 해줄 수 있다. 소셜 네트워킹 시스템은 사용자로부터의 입력으로 사용자와 연관된 사용자 프로필을 생성하고 소셜 네트워킹 시스템에 저장할 수 있다. 사용자 프로필은 사용자의 인구학적 정보, 통신-채널 정보 및 개인 관심사에 대한 정보를 포함할 수 있다. 또한, 소셜 네트워킹 시스템은 사용자로부터의 입력으로 소셜 네트워킹 시스템의 다른 사용자들과의 사용자의 관계에 대한 기록을 생성하고 저장할 수 있을 뿐만 아니라 서비스(예컨대, 담벼락 게시물, 사진-공유, 이벤트 조직, 메시징, 게임 또는 광고)를 제공하여 사용자들 사이의 소셜 상호작용을 용이하게 할 수 있다.

    소셜 네트워킹 시스템은 사용자의 기록 및 사용자 간의 관계를 복수의 노드 및 노드를 연결하는 복수의 에지를 포함하는 소셜 그래프에 저장할 수 있다. 노드는 복수의 사용자 노드와 복수의 컨셉 노드를 포함할 수 있다. 소셜 그래프의 사용자 노드는 소셜 네트워킹 시스템의 사용자에 대응할 수 있다. 사용자는 개인(인간 사용자), 엔티티(예컨대, 기업, 비즈니스 또는 제3자 애플리케이션) 또는 그룹(예컨대, 개인 또는 엔티티의)일 수 있다. 사용자에 대응하는 사용자 노드는 사용자에 의해 제공된 정보와 소셜 네트워킹 시스템을 포함하는 다양한 시스템에 의해 수집된 정보를 포함할 수 있다.

    예를 들어, 사용자는 그 또는 그녀의 이름, 프로필 사진, 거주하는 도시, 연락처 정보, 출생일, 성별, 혼인 여부, 가족 상황, 고용, 교육 배경, 선호, 관심사 및 사용자 노드에 포함될 다른 인구통계학적 정보를 제공할 수 있다. 소셜 그래프의 각 사용자 노드는 대응하는 웹 페이지(일반적으로 프로필 페이지로 알려진다)를 가질 수 있다. 사용자 이름을 포함하는 요청에 응답하여, 소셜 네트워킹 시스템은 사용자 이름에 대응하는 사용자 노드에 접근할 수 있고, 이름, 프로필 사진 및 사용자와 연관된 다른 정보를 포함하는 프로필 페이지를 구성할 수 있다. 제1 사용자의 프로필 페이지는 제1 사용자에 의한 하나 이상의 사생활 설정과 제1 사용자 및 제2 사용자 간의 관계에 기반하여 제1 사용자의 정보 전체 또는 일부가 제2 사용자에게 디스플레이될 수 있다.

    컨셉 노드는 소셜 네트워킹 시스템의 컨셉에 대응할 수 있다. 예를 들어, 컨셉은 실제 세계의 엔티티, 가령 영화, 노래, 스포츠 팀, 연예인, 그룹, 레스토랑 또는 장소나 위치를 나타낼 수 있다. 컨셉에 대응하는 컨셉 노드의 관리 사용자는 컨셉의 정보를 제공함으로써(예컨대, 온라인 폼을 채움으로써) 컨셉 노드를 생성 또는 업데이트하여, 소셜 네트워킹 시스템이 정보를 컨셉 노드와 연관시키고도록 할 수 있다. 예로서 제한 없이, 컨셉과 연관된 정보는 이름 또는 제목, 하나 이상의 이미지(예컨대, 책의 표지 이미지), 웹 사이트(예컨대, URL 주소) 또는 연락처 정보(예컨대, 전화번호, 이메일 주소)를 포함할 수 있다. 소셜 그래프의 각 컨셉 노드는 웹 페이지에 대응할 수 있다. 예를 들어, 이름을 포함한 요청에 응답하여, 소셜 네트워킹 시스템은 이름에 대응하는 컨셉 노드에 접근하고, 이름 및 컨셉과 연관된 다른 정보를 포함하는 웹 페이지를 구성할 수 있다.

    노드 쌍을 연결하는 에지는 노드 쌍 사이의 관계를 표현할 수 있다. 예를 들어, 두 사용자 노드 간의 에지는 두 사용자 간의 친구 사이를 표시할 수 있다, 다른 예로서, 소셜 네트워킹 시스템은 웹 페이지에 하나 이상의 선택가능한 버튼(예컨대, "좋아요", 체크인")을 포함하는 컨셉 노드(예컨대, 레스토랑, 연예인)의 웹 페이지(또는 구조화된 문서)를 구성할 수 있다. 사용자는 사용자의 클라이언트 장치에 의해 호스팅되는 웹 브라우저를 사용하여 페이지에 접근하고 선택가능한 버튼을 선택하여, 클라이언트 장치가 소셜 네트워킹 시스템으로 사용자의 사용자 노드 및 컨셉의 컨셉 노드 간의, 사용자와 컨셉 사이의 관계(예컨대, 사용자가 레스토랑에 체크인하거나, 사용자가 연예인을 "좋아요"하는)를 나타내는 에지를 생성하는 요청을 전송하게 할 수 있다.

    예로서, 사용자는 그 또는 그녀의 거주 도시를 제공(또는 변경)하여, 소셜 네트워킹 시스템이 사용자에 대응하는 사용자 노드 및 사용자가 그 또는 그녀의 거주 도시로 공표한 도시에 대응하는 컨셉 노드 간의 에지를 생성하도록 할 수 있다. 나아가, 임의의 두 노드 간의 이격도는 한 노드에서 다른 노드로 소셜 그래프를 순회하는데 필요한 홉(hops)의 최소수로 정의된다. 두 노드 간의 이격도는 소셜 그래프의 두 노드에 의해 표시되는 사용자 또는 컨셉 간의 관련성의 척도로 간주될 수 있다. 예를 들어, 에지로 직접 연결되는 사용자 노드(예컨대, 1도 노드)를 가지고 있는 두 사용자는 "연결된 사용자" 또는 "친구"로 서술될 수 있다. 유사하게, 다른 사용자 노드 만을 통하여 연결된 사용자 노드(예컨대, 2도 노드)를 가지고 있는 두 사용자는 "친구의 친구"로 서술될 수 있다.

    소셜 네트워킹 시스템은 다양한 애플리케이션, 예컨대 사진 공유, 온라인 일정과 이벤트, 게임, 인스턴트 메시지 및 광고를 지원할 수 있다. 예를 들어, 소셜 네트워킹 시스템은 미디어 공유 기능도 포함할 수 있다. 또한, 소셜 네트워킹 시스템은 사용자가 사진 및 다른 멀티미디어 파일을 사용자의 프로필 페이지(일반적으로 "담벼락 게시" 또는 "타임라인 게시"로 알려짐) 또는 사진 앨범에 게시할 수 있게 할 수 있는데, 양자 모두 사용자의 설정된 사생활 설정에 따라 소셜 네트워킹 시스템의 다른 사용자가 접근가능할 수 있다. 소셜 네트워킹 시스템은 또한 사용자가 이벤트를 설정하도록 할 수 있다. 예를 들어, 제1 사용자는 이벤트의 시간과 날짜, 이벤트의 장소 및 이벤트에 초대되는 다른 사용자를 포함하는 속성으로 이벤트를 설정할 수 있다. 초대된 사용자는 이벤트 초대를 수신하고 응답할 수 있다(초대를 수락하거나 거절함으로써). 나아가, 소셜 네트워킹 시스템은 사용자가 개인적인 일정을 유지할 수 있도록 한다. 이벤트와 유사하게, 일정 항목은 시간, 날짜, 장소 및 다른 사용자의 식별을 포함할 수 있다.

    도 12는 소셜 네트워킹 시스템의 네트워크 환경의 예시를 도시한다. 특정 실시예에서, 소셜 네트워킹 시스템(1200)은 하나 이상의 데이터 스토어를 포함할 수 있다. 특정 실시예에서, 소셜 네트워킹 시스템(1200)은 전술한 바와 같은 사용자 노드, 컨셉 노드 및 노드 간의 에지를 포함하는 소셜 그래프를 저장할 수 있다. 각 사용자 노드는 사용자와 연관되거나 설명하는 정보에 대응하는 하나 이상의 데이터 객체를 포함할 수 있다. 각 컨셉 노드는 컨셉과 연관된 정보에 대응하는 하나 이상의 데이터 객체를 포함할 수 있다. 한 쌍의 노드 간의 각 에지는 한 쌍의 노드에 대응하는 사용자들 간(또는 사용자와 컨셉 간, 또는 컨셉들 간)의 관계에 연관된 정보에 대응하는 하나 이상의 데이터 객체를 포함할 수 있다.

    특정 실시예에서, 소셜 네트워킹 시스템(1200)은 소셜 네트워킹 시스템의 구동을 겨냥한 기능을 호스팅하는 하나 이상의 컴퓨팅 장치(예컨대, 서버)를 포함할 수 있다. 소셜 네트워킹 시스템(1200)의 사용자는 클라이언트 장치(1206)와 같은 클라이언트 장치를 사용하여 소셜 네트워킹 시스템(1200)에 접근할 수 있다. 특정 실시예에서, 클라이언트 장치(1206)는 네트워크(1204)를 통하여 소셜 네트워킹 시스템(1202)과 상호작용할 수 있다.

    클라이언트 장치(1206)는 데스크톱 컴퓨터, 랩톱 컴퓨터, 태블릿 컴퓨터, 개인용 정보 단말기(PDA), 차량 내장 또는 외장 내비게이션 시스템, 스마트폰 또는 다른 셀룰러 또는 모바일 전화, 또는 모바일 게임 장치, 다른 모바일 장치, 또는 다른 적절한 컴퓨팅 장치일 수 있다. 클라이언트 장치(1206)는 하나 이상의 클라이언트 애플리케이션, 예컨대 웹 브라우저(예컨대, Microsoft Windows Internet Explorer, Mozilla Firefox, Apple Safari, Google Chrome, Opera, 기타 등등) 또는 네이티브 또는 특수 목적 클라이언트 애플리케이션(예컨대, iPhone이나 iPad를 위한 Facebook, Android를 위한 Facebook, 기타 등등)을 실행하여 네트워크(1204)를 통해 컨텐츠에 접근하고 열람할 수 있다.

    네트워크(1204)는 클라이언트 장치(1206)가 거쳐서 소셜 네트워킹 시스템(1200)에 접근할 수 있는 네트워크 또는 네트워크의 컬렉션(예컨대 인터넷, 기업 인트라넷, 가상 사설망(VPN), 근거리 통신망(LAN), 무선 근거리 통신망(WLAN), 셀룰러 네트워크, 광역 통신망(WAN), 도시권 통신망(MAN) 또는 이러한 네트워크의 둘 이상의 조합)을 나타낼 수 있다.

    이들 방법, 시스템 및 사용자 인터페이스가 공적으로 이용가능한 정보뿐만 아니라 소셜 네트워킹 시스템의 사용자에 의해 제공되는 정보를 사용하지만, 이러한 정보의 모든 사용은 명시적으로 연관된 사용자의 모든 사생활 설정과 소셜 네트워킹 시스템 전체의 사생활 정책 하에 있는 것이다.

    이상의 명세에서, 본 발명은 특정한 예시적인 실시예를 참조하여 서술되었다. 본 발명의 다양한 실시예와 측면은 본 명세서에 서술된 상세를 참조하여 서술되고, 첨부되는 도면은 다양한 실시예를 도시한다. 상기 설명과 도면은 본 발명을 설명하는 것이고 본 발명을 제한하는 것으로 해석되지 않는다. 많은 특정한 상세가 본 발명의 다양한 실시예의 철저한 이해를 제공하기 위하여 서술된다.

    본 발명은 그 사상 또는 본질적인 특징에서 벗어남 없이 다른 특정한 형태로 구체화될 수 있다. 서술된 실시예는 모든 점에 있어서 설명적일 뿐이고 제한적이지 않은 것으로 간주되어야 한다. 예를 들어, 본 명세서에 서술된 방법은 적거나 많은 단계/행위로 수행될 수 있고 또는 단계/행위는 상이한 순서로 수행될 수 있다. 나아가, 본 명세서에 서술된 단계/행위는 반복되거나 서로 병행하여 또는 동일하거나 유사한 단계/행위의 다른 인스턴스와 병행하여 수행될 수 있다. 그러므로, 본 발명의 범위는 상기 설명이 아니라 첨부된 청구항에 의하여 표시된다. 청구항과 균등한 의미와 범위 내에서 유래하는 모든 변화는 그 범위 내에 포함된다.

    본 방법의 모든 실시예 및 특징은 시스템 청구항에 동일하게 청구될 수 있고 그 역도 또한 동일하다. 본 명세서에 기술되거나 도시된 임의의 실시예 및 특징은 별도의 청구항에 및/또는 본 명세서에 기술되거나 도시된 임의의 실시예나 특징 또는 첨부된 청구항들의 임의의 특징과의 임의의 조합에 청구될 수 있다. 청구될 수 있는 주제는 첨부된 청구항들에서 제시되는 특징들의 조합뿐 아니라 청구항들 내 특징들의 임의의 다른 조합들을 포함하며, 청구항들에 언급된 각 특징은 청구항이나 상세한 설명 내 임의의 다른 특징이나 다른 특징들의 조합과 결합될 수 있다.

    高效检索全球专利

    专利汇是专利免费检索,专利查询,专利分析-国家发明专利查询检索分析平台,是提供专利分析,专利查询,专利检索等数据服务功能的知识产权数据服务商。

    我们的产品包含105个国家的1.26亿组数据,免费查、免费专利分析。

    申请试用

    分析报告

    专利汇分析报告产品可以对行业情报数据进行梳理分析,涉及维度包括行业专利基本状况分析、地域分析、技术分析、发明人分析、申请人分析、专利权人分析、失效分析、核心专利分析、法律分析、研发重点分析、企业专利处境分析、技术处境分析、专利寿命分析、企业定位分析、引证分析等超过60个分析角度,系统通过AI智能系统对图表进行解读,只需1分钟,一键生成行业专利分析报告。

    申请试用

    QQ群二维码
    意见反馈