IP Library Granted Patent US 11,144,966
Granted Patent B1
US 11,144,966 · App. 14/316,981 · Granted Oct 12, 2021

Merchant booking availability engine

Inventors: Gaston L'Huillier (San Francisco, CA); Francisco Jose Larrain (Palo Alto, CA); Ricardo Andres Zilleruelo (Mountain View, CA)
Assignee: Groupon, Inc.
G06Q30/0272G06Q30/0235
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 11,144,966
App. No.
14/316,981
Granted
Oct 12, 2021
Kind
B1
Abstract

A method, apparatus, and computer program product are disclosed for associating time slots with a promotion and for scheduling time slots for redemption of the promotion based on merchant availability. The method includes receiving details, from a merchant, of a promotion for a good or service, and presenting, by a merchant interface, a set of proposed time slots for redeeming the promotion and a predicted booking limit for each proposed time slot. The method further includes receiving, from the merchant, selection of one or more time slots from the set of proposed time slots. Optionally, the method may include presenting, by the merchant interface, a commission schedule for the set of proposed time slots, wherein receiving the selection of time slots for use with the promotion is based on the commission schedule. A corresponding apparatus and computer program product are also provided.

Claims (54)

1. A method of scheduling a time slot for redeeming a promotion by a promotional server of a promotion and marketing service in communication with an external merchant server associated with the merchant, the method comprising:

receiving, by a communications module of a promotional server of a promotion and marketing service from a merchant, details of a promotion for a good or service;

identifying, by a booking optimization module of the promotional server, a set of proposed time slots for redeeming the promotion;

querying, by the booking optimization module, a promotion system database of the promotional server to retrieve promotional historical data associated with the promotion and marketing service;

calculating, by the booking optimization module using an iterative reinforcement learning technique and based on an empirical cumulative density function, a hidden demand for each proposed time slot of the set of proposed time slots based at least in part on the promotional historical data retrieved from the promotion system database of the promotional server, wherein merchant availability data stored at an external merchant server and associated with each of the set of time slots is inaccessible to the promotional server such that the hidden demand for a particular time slot comprises prediction of an unknown reserved number of external bookings for the particular time slot that have been placed from sources outside the promotion and marketing service;

determining, by the booking optimization module using the iterative reinforcement learning technique, an optimal booking limit for each proposed time slot of the set of proposed time slots based on the calculated hidden demand;

setting, by the booking optimization module, a value of a predicted booking limit for each proposed time slot of the set of proposed time slots to a value of the optimal booking limit for the corresponding time slot;

storing, by the booking optimization module, the predicted booking limit for each proposed time slot of the set of proposed time slots;

transmitting, by a communications module of the promotional server to a merchant device for display by a merchant interface of the merchant device, the set of proposed time slots for redeeming the promotion and the stored predicted booking limit for each proposed time slot of the set of proposed time slots; and

receiving, by the communications module from the merchant device, selection of one or more time slots from the set of proposed time slots, the one or more time slots comprising time slots at which redemption of the promotion is enabled.

2. The method of claim 1 , wherein, for each proposed time slot, determining the optimal booking limit is further based on a booking capacity of the time slot.

3. The method of claim 1 , further comprising:

transmitting, by a communications module of the promotional server to a merchant device for display by the merchant interface, a commission schedule for the set of proposed time slots, the commission schedule including commissions due to the promotion and marketing service for enabling redemption of the promotion at each proposed time slot,

wherein receiving the selection of the one or more time slots for use with the promotion is based on the commission schedule.

4. The method of claim 3 , wherein the commission schedule includes commissions for the promotion and marketing service for redeeming the promotion at each proposed time slot.

5. The method of claim 3 , wherein the commissions are based on a predicted demand of each proposed time slot.

6. The method of claim 5 , wherein the commission for each proposed time slot is further based on whether the proposed time slot will be allocated based on consumer membership status.

7. The method of claim 1 , wherein the method further comprises updating the promotional system database by incorporating updated internal promotional historical data comprising an updated demand pattern to facilitate the determination of the predicted optimal booking limit in real-time.

8. An apparatus for scheduling a time slot for redeeming a promotion by a promotional server of a promotion and marketing service in communication with an external merchant server associated with the merchant comprising a processor and a memory, the memory storing computer program code that, when executed by the processor, causes the apparatus to:

receive, by a communications module of the apparatus from a merchant, details of a promotion for a good or service;

identify, by a booking optimization module of the apparatus, a set of proposed time slots for redeeming the promotion;

query, by the booking optimization module, a promotion system database of the apparatus to retrieve promotional historical data associated with the promotion and marketing service;

calculate, by the booking optimization module using an iterative reinforcement learning technique and based on an empirical cumulative density function, a hidden demand for each proposed time slot of the set of proposed time slots based at least in part on the promotional historical data retrieved from the promotion system database of the promotional server, wherein merchant availability data stored at an external merchant server and associated with each of the set of time slots is inaccessible to the promotional server such that the hidden demand for a particular time slot comprises prediction of an unknown reserved number of external bookings for the particular time slot that have been placed from sources outside a promotion and marketing service;

determine, by the booking optimization module using the iterative reinforcement learning technique, an optimal booking limit for each proposed time slot of the set of proposed time slots based on the calculated hidden demand;

set, by the booking optimization module, a value of a predicted booking limit for each proposed time slot of the set of proposed time slots to a value of the optimal booking limit for the corresponding time slot;

store, by the booking optimization module, the predicted booking limit for each proposed time slot of the set of proposed time slots;

transmit, by a communications module of the promotional server to a merchant device for display by a merchant interface of the merchant device, the set of proposed time slots for redeeming the promotion and the stored predicted booking limit for each proposed time slot of the set of proposed time slots; and

receive, by the communications module from the merchant device, selection of one or more time slots from the set of proposed time slots, the one or more time slots comprising time slots at which redemption of the promotion is enabled.

9. The apparatus of claim 8 , wherein, for each proposed time slot, determining the optimal booking limit is further based on a booking capacity of the time slot.

10. The apparatus of claim 8 , wherein the computer program code, when executed by the processor, further causes the apparatus to:

transmit, by a communications module of the promotional server to a merchant device for display by the merchant interface, a commission schedule for the set of proposed time slots, the commission schedule including commissions due to a promotion and marketing service for enabling redemption of the promotion at each proposed time slot,

wherein receiving the selection of the one or more time slots for use with the promotion is based on the commission schedule.

11. The apparatus of claim 10 , wherein the commission schedule includes commissions for the promotion and marketing service for redeeming the promotion at each proposed time slot.

12. The apparatus of claim 10 , wherein the commissions are based on a predicted demand of each proposed time slot.

13. The apparatus of claim 12 , wherein the commission for each proposed time slot is further based on whether the proposed time slot will be allocated based on consumer membership status.

14. The apparatus of claim 8 , wherein the computer program code, when executed by the processor, causes the apparatus to update the promotional system database by incorporating updated internal promotional historical data comprising an updated demand pattern to facilitate the determination of the predicted optimal booking limit in real-time.

15. A computer program product for scheduling a time slot for redeeming a promotion by a promotional server of a promotion and marketing service in communication with an external merchant server associated with the merchant comprising a non-transitory computer-readable storage medium storing computer program code that, when executed by a processor of an apparatus, causes the apparatus to:

receive, by a communications module of the apparatus from a merchant, details of a promotion for a good or service;

identify, by a booking optimization module of the apparatus, a set of proposed time slots for redeeming the promotion;

query, by the booking optimization module, a promotion system database of the apparatus to retrieve promotional historical data associated with the promotion and marketing service;

calculate, by the booking optimization module using an iterative reinforcement learning technique and based on an empirical cumulative density function, a hidden demand for each proposed time slot of the set of proposed time slots based at least in part on the promotional historical data retrieved from the promotion system database of the promotional server, merchant availability data stored at an external merchant server and associated with each of the set of time slots is inaccessible to the promotional server such that the hidden demand for a particular time slot comprises a prediction of an unknown reserved number of external bookings for the particular time slot that have been placed from sources outside a promotion and marketing service;

determine, by the booking optimization module using the iterative reinforcement learning technique, an optimal booking limit for each proposed time slot of the set of proposed time slots based on the calculated hidden demand;

set, by the booking optimization module, a value of a predicted booking limit for each proposed time slot of the set of proposed time slots to a value of the optimal booking limit for the corresponding time slot;

store, by the booking optimization module, the predicted booking limit for each proposed time slot of the set of proposed time slots;

transmit, by a communications module of the promotional server to a merchant device for display by a merchant interface of the merchant device, the set of proposed time slots for redeeming the promotion and the stored predicted booking limit for each proposed time slot of the set of proposed time slots; and

receive, by the communications module from the merchant device, selection of one or more time slots from the set of proposed time slots, the one or more time slots comprising time slots at which redemption of the promotion is enabled.

16. The computer program product of claim 15 , wherein, for each proposed time slot, determining the optimal booking limit is further based on a booking capacity of the time slot.

17. The computer program product of claim 15 , wherein the computer program code, when executed by the apparatus, further causes the apparatus to:

transmit, by a communications module of the promotional server to a merchant device for display by the merchant interface, a commission schedule for the set of proposed time slots, the commission schedule including commissions due to a promotion and marketing service for enabling redemption of the promotion at each proposed time slot,

wherein receiving the selection of the one or more time slots for use with the promotion is based on the commission schedule.

18. The computer program product of claim 17 , wherein the commission schedule includes commissions for the promotion and marketing service for redeeming the promotion at each proposed time slot.

19. The computer program product of claim 17 , wherein the commissions are based on a predicted demand of each proposed time slot.

20. The computer program product of claim 19 , wherein the commission for each proposed time slot is further based on whether the proposed time slot will be allocated based on consumer membership status.

21. The computer program product of claim 15 , wherein the computer program code, when executed by the processor, further causes the apparatus to update the promotional system database by incorporating updated internal promotional historical data comprising an updated demand pattern to facilitate the determination of the predicted optimal booking limit in real-time.

Assignments (6)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 12, 2024
From: GROUPON, INC.
To: BYTEDANCE INC.
Reel/Frame 068833/0811 →
RELEASE OF SECURITY INTEREST Recorded Feb 26, 2024
From: JPMORGAN CHASE BANK, N.A.
To: GROUPON, INC.; LIVINGSOCIAL, LLC (F/K/A LIVINGSOCIAL, INC.)
Reel/Frame 066676/0001 →
TERMINATION AND RELEASE OF SECURITY INTEREST IN INTELLECTUAL PROPERTY RIGHTS Recorded Feb 26, 2024
From: JPMORGAN CHASE BANK, N.A.
To: GROUPON, INC.; LIVINGSOCIAL, LLC (F/K/A LIVINGSOCIAL, INC.)
Reel/Frame 066676/0251 →
SECURITY INTEREST Recorded Jul 23, 2020
From: GROUPON, INC.; LIVINGSOCIAL, LLC
To: JPMORGAN CHASE BANK, N.A.
Reel/Frame 053294/0495 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 20, 2016
From: L'HUILLIER, GASTON; LARRAIN, FRANCISCO JOSE; ZILLERUELO, RICARDO ANDRES
To: GROUPON, INC.
Reel/Frame 040078/0115 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 6, 2014
From: L'HUILLIER, GASTON; LARRAIN, FRANCISCO; ZILLERUELO, RICARDO
To: GROUPON, INC.
Reel/Frame 033478/0468 →