IP Library Granted Patent US 9,003,078
Granted Patent B2
US 9,003,078 · App. 13/846,746 · Granted Apr 7, 2015

Merchant managed subscriptions at a merchant server

Inventors: John P. Browne (Larkspur, CA); James C. McIntyre (San Francisco, CA); Marcin L. Pawlowski (Dublin, CA)
Assignee: Boku, Inc.
G06Q20/145G06Q20/4012G06Q20/32
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 9,003,078
App. No.
13/846,746
Granted
Apr 7, 2015
Kind
B2
Abstract

A system and method is described for managing subscriptions between a consumer mobile phone, merchant server, billing server and carrier server. A charge-info method is used for the merchant server to retrieve charge elements from the billing server for constructing a user interface for the consumer mobile phone. An opt-in method is used to confirm a consumer's opt-in for a subscription. A remind-charge method is used to remind the consumer of an upcoming charge on the subscription. A charge method allows the merchant server to charge a user account on a carrier server via the billing server. A cancel method is used for the consumer to cancel the subscription.

Claims (127)

1. A method of managing subscriptions with a merchant server comprising:

a) executing an opt-in method with the merchant server, including:

receiving a msisdn from a consumer device at the merchant server;

transmitting a first opt-in request from the merchant server to a billing server, including the msisdn and a subscription-id;

receiving a PIN code from the consumer device;

transmitting a second opt-in request from the merchant server to the billing server, including the PIN code; and

receiving a response from the billing server at the merchant server indicating whether the PIN code is verified or invalid, an opt-in being recorded as active against the subscription-id if the PIN code is verified; and

b) executing a charge method with the merchant server including;

transmitting a charge API call from the merchant server to the billing server if the opt-in is active but not if the opt-in is inactive, the charge API call including an amount and an identifier for the billing server to determine an opt-in status corresponding to the identifier; and

receiving a charge result callback notification from the billing server at the merchant server indicating whether a user account at a carrier server has been charged by the billing server.

2. The method of claim 1 , wherein the msisdn has a plurality of subscription-id's, each having a separate opt-in parameter that is set in a selectable manner to active or inactive.

3. The method of claim 1 , wherein the first opt-in request includes a consumer-id being a merchant provided unique consumer identifier, a country being a country code in ISO 3166-1-alpha-2 standard, an item-description being the exact quantity and name of the item(s) being purchased, a merchant-id being a billing server assigned merchant identifier value, a msisdn being a subscriber mobile phone number in international MSISDN format, a subscription-id being a merchant assigned unique identifier for the consumer subscription and a subscription-terms being a JavaScript Object Notification (JSON) structure.

4. The method of claim 3 , wherein the second opt-in request includes a consumer-id being a merchant provided unique consumer identifier, a country being a country code in ISO 3166-1-alpha-2 standard, an item-description being the exact quantity and name of the item(s) being purchased, a merchant-id being a billing server assigned merchant identifier value, a msisdn being a subscriber mobile phone number in international MSISDN format, a subscription-id being a merchant assigned unique identifier for the consumer subscription and a subscription-terms being a JavaScript Object Notification (JSON) structure.

5. The method of claim 1 , wherein the charge API call includes a consumer-id being a JSON structure containing optional charge elements such as zip or rrn, a consumer-ip-address being an originating IP address of the consumer, a country being a country code in ISO 3166-1-alpha-2 standard, currency being an ISO 4217 3 letter currency code, an end-merchant-id being a billing server assigned merchant identifier for an end merchant submitting transactions via a reseller, an item-description being a product disclosure describing the quantity and type of item being purchased, a merchant-id being a billing server assigned merchant identifier value, a msisdn being a Subscriber mobile phone number in international MSISDN format, a request-id being a unique merchant assigned request ID, a subscription-frequency being a frequency of subscription renewal, a subscription-id being a merchant assigned unique identifier for the consumer subscription, a service-id being a merchant offering identifier and total-amount being a total amount charged including tax.

6. The method of claim 1 , wherein the charge result callback notification includes a consumer-auth-required being a billing server assigned charge identifier, a result-code being the result code for this request and a result-message being a human readable description of the result.

7. The method of claim 1 , further comprising:

c) executing a charge-info method with the merchant server before the opt-in method, including:

transmitting a charge-info request from the merchant server to the billing server;

receiving charge elements from the billing server at the merchant server in response to the charge-info request;

transmitting a user interface from the merchant server to a consumer device, the user interface having fields based on the charge elements; and

receiving, at the merchant server, data entered into the fields at the consumer device, the data received being included in the first opt-in request.

8. The method of claim 7 , wherein the charge-info request includes a merchant-id being a billing server assigned merchant identifier value.

9. The method of claim 8 , wherein the charge elements include a country and network.

10. The method of claim 1 , further comprising:

c) executing a remind-charge method with the merchant server after the opt-in method and before the charge method, including:

transmitting a remind-charge from the merchant server to the billing server.

11. The method of claim 10 , wherein the remind-charge request includes a consumer-id being a merchant provided unique consumer identifier, a country being a country code in ISO 3166-1-alpha-2 standard, an item-description being the exact quantity and name of the item(s) being purchased, a merchant-id being a billing server assigned merchant identifier value, a msisdn being a subscriber mobile phone number in international MSISDN format, renewal-date being a start date of next subscription cycle, a service-id being a merchant offering identifier, a subscription-id being a merchant assigned unique identifier for the consumer subscription, and a subscription-terms being a JSON structure.

12. The method of claim 1 , further comprising:

c) executing a cancel method at the merchant server, including:

transmitting a view of a user interface from the merchant server to a consumer device, the view allowing for selection to cancel the subscription;

receiving a call to cancel the subscription via the interface from the consumer device at the merchant server; and

making a cancel-opt-in API call from the merchant server to the billing server to update the opt-in to inactive.

13. A non-transitory computer-readable medium having stored thereon a set of instructions which, when executed by a processor of a computer performs a method of managing subscriptions with a merchant server comprising:

a) executing an opt-in method with the merchant server, including:

receiving a msisdn from a consumer device at the merchant server;

transmitting a first opt-in request from the merchant server to a billing server, including the msisdn and a subscription-id;

receiving a PIN code from the consumer device;

transmitting a second opt-in request from the merchant server to the billing server, including the PIN code; and

receiving a response from the billing server at the merchant server indicating whether the PIN code is verified or invalid, an opt-in being recorded as active against the subscription-id if the PIN code is verified; and

b) executing a charge method with the merchant server including;

transmitting a charge API call from the merchant server to the billing server if the opt-in is active but not if the opt-in is inactive, the charge API call including an amount and an identifier for the billing server to determine an opt-in status corresponding to the identifier; and

receiving a charge result callback notification from the billing server at the merchant server indicating whether a user account at a carrier server has been charged by the billing server.

14. A merchant server comprising:

a processor;

a computer-readable medium connected to the processor; and

a set of instructions on the computer-readable medium and executable by the processor, including:

a user interface transmitted to a consumer device with a msisdn field for entry of a msisdn and receivable by the processor and transmitted to a billing server in a first opt-in request with a subscription-id, and a PIN code field for entry of a PIN code and receivable by the processor and transmitted to the billing server in a second opt-in request, the processor receiving a response from the billing server at the merchant server indicating whether the PIN code is verified or invalid, an opt-in being recorded as active against the subscription-id if the PIN code is verified; and

a recurring billing management module executing a charge method including:

transmitting a charge API call from the merchant server to the billing server if the opt-in is active but not if the opt-in is inactive, the charge API call including an amount and an identifier for the billing server to determine an opt-in status corresponding to the identifier; and

receiving a charge result call back notification from the billing server at the merchant server indicating whether a user account at a carrier server has been charged by the billing server.

15. A method of managing subscriptions with a merchant server comprising:

a) executing a charge-info method with the merchant server, including:

transmitting a charge-info request from the merchant server to a billing server;

receiving charge elements from the billing server at the merchant server in response to the charge-info request;

transmitting a user interface from the merchant server to a consumer device, the user interface having fields based on the charge elements; and

receiving, at the merchant server, data entered into the fields at the consumer device, the data received being included in the first opt-in request;

b) executing an opt-in method with the merchant server after the charge-info method, including:

receiving a msisdn from a consumer device at the merchant server;

transmitting a first opt-in request from the merchant server to the billing server, including the msisdn;

receiving a PIN code from the consumer device;

transmitting a second opt-in request from the merchant server to the billing server, including the PIN code; and

receiving a response from the billing server at the merchant server indicating whether the PIN code is verified or invalid; and

c) executing a charge method with the merchant server including;

transmitting a charge API call from the merchant server to the billing server if the PIN code is verified but not if the PIN code is invalid, the charge API call including an amount and an identifier for the billing server to determine an opt-in status corresponding to the identifier; and

receiving a charge result callback notification from the billing server at the merchant server indicating whether a user account at a carrier server has been charged by the billing server.

16. A non-transitory computer-readable medium having stored thereon a set of instructions which, when executed by a processor of a computer performs a method of managing subscriptions with a merchant server comprising:

a) executing a charge-info method with the merchant server, including:

transmitting a charge-info request from the merchant server to a billing server;

receiving charge elements from the billing server at the merchant server in response to the charge-info request;

transmitting a user interface from the merchant server to a consumer device, the user interface having fields based on the charge elements; and

receiving, at the merchant server, data entered into the fields at the consumer device, the data received being included in the first opt-in request;

b) executing an opt-in method with the merchant server after the charge-info method, including:

receiving a msisdn from a consumer device at the merchant server;

transmitting a first opt-in request from the merchant server to the billing server, including the msisdn;

receiving a PIN code from the consumer device;

transmitting a second opt-in request from the merchant server to the billing server, including the PIN code; and

receiving a response from the billing server at the merchant server indicating whether the PIN code is verified or invalid; and

c) executing a charge method with the merchant server including;

transmitting a charge API call from the merchant server to the billing server if the PIN code is verified but not if the PIN code is invalid, the charge API call including an amount and an identifier for the billing server to determine an opt-in status corresponding to the identifier; and

receiving a charge result callback notification from the billing server at the merchant server indicating whether a user account at a carrier server has been charged by the billing server.

17. A merchant server comprising:

a processor;

a computer-readable medium connected to the processor; and

a set of instructions on the computer-readable medium and executable by the processor, including:

a charge info module executing a charge-info method including:

transmitting a charge-info request from the merchant server to a billing server;

receiving charge elements from the billing server at the merchant server in response to the charge-info request;

transmitting a user interface from the merchant server to a consumer device, the user interface having fields based on the charge elements; and

receiving, at the merchant server, data entered into the fields at the consumer device, the data received being included in the first opt-in request;

a user interface transmitted to a consumer device with a msisdn field for entry of a msisdn and receivable by the processor and transmitted to the billing server in a first opt-in request after the charge-info method and a PIN code field for entry of a PIN code and receivable by the processor and transmitted to the billing server in a second opt-in request; and

a recurring billing management module executing a charge method including:

transmitting a charge API call from the merchant server to the billing server if the PIN code is verified but not if the PIN code is invalid, the charge API call including an amount and an identifier for the billing server to determine an opt-in status corresponding to the identifier; and

receiving a charge result call back notification from the billing server at the merchant server indicating whether a user account at a carrier server has been charged by the billing server.

18. A method of managing subscriptions with a merchant server comprising:

a) executing an opt-in method with the merchant server, including:

receiving a msisdn from a consumer device at the merchant server;

transmitting a first opt-in request from the merchant server to a billing server, including the msisdn;

receiving a PIN code from the consumer device;

transmitting a second opt-in request from the merchant server to the billing server, including the PIN code; and

receiving a response from the billing server at the merchant server indicating whether the PIN code is verified or invalid;

b) executing a charge method with the merchant server including;

transmitting a charge API call from the merchant server to the billing server if the PIN code is verified but not if the PIN code is invalid, the charge API call including an amount and an identifier for the billing server to determine an opt-in status corresponding to the identifier; and

receiving a charge result callback notification from the billing server at the merchant server indicating whether a user account at a carrier server has been charged by the billing server; and

c) executing a remind-charge method with the merchant server after the opt-in method and before the charge method, including:

transmitting a remind-charge from the merchant server to the billing server.

19. A non-transitory computer-readable medium having stored thereon a set of instructions which, when executed by a processor of a computer performs a method of managing subscriptions with a merchant server comprising:

a) executing an opt-in method with the merchant server, including:

receiving a msisdn from a consumer device at the merchant server;

transmitting a first opt-in request from the merchant server to a billing server, including the msisdn;

receiving a PIN code from the consumer device;

transmitting a second opt-in request from the merchant server to the billing server, including the PIN code; and

receiving a response from the billing server at the merchant server indicating whether the PIN code is verified or invalid;

b) executing a charge method with the merchant server including;

transmitting a charge API call from the merchant server to the billing server if the PIN code is verified but not if the PIN code is invalid, the charge API call including an amount and an identifier for the billing server to determine an opt-in status corresponding to the identifier; and

receiving a charge result callback notification from the billing server at the merchant server indicating whether a user account at a carrier server has been charged by the billing server; and

c) executing a remind-charge method with the merchant server after the opt-in method and before the charge method, including:

transmitting a remind-charge from the merchant server to the billing server.

20. A merchant server comprising:

a processor;

a computer-readable medium connected to the processor; and

a set of instructions on the computer-readable medium and executable by the processor, including:

a user interface transmitted to a consumer device with a msisdn field for entry of a msisdn and receivable by the processor and transmitted to a billing server in a first opt-in request and a PIN code field for entry of a PIN code and receivable by the processor and transmitted to the billing server in a second opt-in request;

a recurring billing management module executing a charge method including:

transmitting a charge API call from the merchant server to the billing server if the PIN code is verified but not if the PIN code is invalid, the charge API call including an amount and an identifier for the billing server to determine an opt-in status corresponding to the identifier; and

receiving a charge result call back notification from the billing server at the merchant server indicating whether a user account at a carrier server has been charged by the billing server;

a remind charge module executing a remind-charge method with the merchant server after the opt-in method and before the charge method, including:

transmitting a remind-charge from the merchant server to the billing server.

Assignments (3)
CHANGE OF ADDRESS Recorded Nov 29, 2021
From: BOKU, INC.
To: BOKU, INC.
Reel/Frame 058257/0283 →
SECURITY INTEREST Recorded Jun 17, 2020
From: BOKU, INC.
To: CITIBANK, N.A.
Reel/Frame 052962/0236 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 18, 2013
From: BROWNE, JOHN P.; MCINTYRE, JAMES C.; PAWLOWSKI, MARCIN L.
To: BOKU, INC.
Reel/Frame 030036/0521 →
Continuity (1)
Related Publication 20140279456A1 · Sep 18, 2014