WO2021112703A1 - Systems and methods for refueling vehicles - Google Patents

Systems and methods for refueling vehicles Download PDF

Info

Publication number
WO2021112703A1
WO2021112703A1 PCT/RU2019/000878 RU2019000878W WO2021112703A1 WO 2021112703 A1 WO2021112703 A1 WO 2021112703A1 RU 2019000878 W RU2019000878 W RU 2019000878W WO 2021112703 A1 WO2021112703 A1 WO 2021112703A1
Authority
WO
WIPO (PCT)
Prior art keywords
fuel
request
management system
user
predetermined amount
Prior art date
Application number
PCT/RU2019/000878
Other languages
French (fr)
Inventor
Gevork Mushegovich SARKISYAN
Original Assignee
4Fuel Corp.
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 4Fuel Corp. filed Critical 4Fuel Corp.
Priority to PCT/RU2019/000878 priority Critical patent/WO2021112703A1/en
Publication of WO2021112703A1 publication Critical patent/WO2021112703A1/en

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/02Marketing; Price estimation or determination; Fundraising
    • G06Q30/0283Price estimation or determination
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/06Buying, selling or leasing transactions
    • G06Q30/0601Electronic shopping [e-shopping]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/06Buying, selling or leasing transactions
    • G06Q30/0601Electronic shopping [e-shopping]
    • G06Q30/0611Request for offers or quotes

Definitions

  • the present disclosure relates generally to refueling vehicles including systems and methods for prepaying for fuel to refuel vehicles at a subsequent point in time.
  • this disclosure is directed to a system for refueling a vehicle.
  • the system may include a fueling management system maintaining a database including data corresponding to current fuel prices for each of a plurality of filling stations.
  • the system may include a communications interface communicably coupling the fueling management system to a device corresponding to a user and to a fuel provider system corresponding to each of the plurality of filling stations.
  • the fueling management system may be configured to receive, via the communications interface from the device, a request to reserve a predetermined amount of fuel at a current price for refueling a vehicle at a subsequent date.
  • the fueling management system may be configured to generate a fuel reservation corresponding to the request and associated with the user.
  • the fuel reservation may include the predetermined amount of fuel and the current price.
  • the fueling management system may be configured to store the fuel reservation in the database in association with a user identifier for the user.
  • this disclosure is directed to a method for refueling a vehicle.
  • the method may include maintaining, by a fueling management system, a database including data corresponding to current fuel prices for each of plurality of filling stations.
  • the method may include receiving, by the fueling management system via a communications interface from a device corresponding to a user, a request to reserve a predetermined amount of fuel at a current price for refueling a vehicle at a subsequent date.
  • the method may include generating a fuel reservation corresponding to the request and associated with the user.
  • the fuel reservation may include the predetermined amount of fuel and the current price.
  • the method may include storing the fuel reservation in the database in association with a user identifier for the user.
  • FIG. 1 is a block diagram of a system for refueling vehicles, according to an illustrative embodiment.
  • FIG. 2A - FIG. 2B are block diagrams of a fueling management system of the system of FIG. 1, according to illustrative embodiments.
  • FIG. 3 is a process for refueling a vehicle, according to an illustrative embodiment.
  • FIG. 4 is a process for refueling a vehicle, according to another illustrative embodiment.
  • FIG. 5 is a process for purchasing fuel, according to an illustrative embodiment.
  • FIG. 6 is a process of refueling a vehicle, according to another illustrative embodiment.
  • FIG. 7 is a process for updating filling station data, according to an illustrative embodiment.
  • FIG. 8 is a process for locating filling stations, according to an illustrative embodiment.
  • FIG. 9A - FIG. 9G show example user interfaces for generating a refuel request, according to an illustrative embodiment.
  • FIG. 10 is a flowchart showing a method of reserving fuel, according to an illustrative embodiment.
  • FIG. 11 is a flowchart showing a method of redeeming reserved fuel, according to an illustrative embodiment.
  • a fueling management system may maintain a database including data corresponding to current fuel prices for filling stations.
  • a communications interface may communicably couple the fueling management system to a device corresponding to a user and to a fuel provider system corresponding to the filling stations.
  • the fueling management system may be configured to receive, via the communications interface from the device, a request to reserve a predetermined amount of fuel at a current price for refueling a vehicle at a subsequent date.
  • the fueling management system may be configured to generate a fuel reservation corresponding to the request and associated with the user.
  • the fuel reservation may include the predetermined amount of fuel and the current price.
  • the fueling management system may be configured to store the fuel reservation in the database in association with a user identifier for the user.
  • the systems and methods described herein may have many benefits over systems and methods for refueling vehicles. For instance, the systems and methods described herein may provide insulation to users from fluctuations in fuel prices by storing fuel reservations associated with the users. Users may subsequently redeem a portion of the predetermined amount of fuel at a later date and at the price specified in the fuel reservation.
  • the systems and methods described herein may provide a business means for purchasing fuel in bulk for a plurality of drivers, thus lessening burdens on accounting for individual purchases. Rather, the systems and methods described herein may update the amount of fuel reserved by a user as fuel is redeemed at subsequent dates.
  • Various other benefits are described in greater detail below.
  • the system 2 may include a payment system 4, a fueling management system 6 (also referred to herein as a fueling management server), a user set 8 including a plurality of users 10, and a fuel provider system 14.
  • the fueling management system 6 may be configured to receive a request to reserve a predetermined amount of fuel at a current price for refueling a vehicle at a subsequent date.
  • the fueling management system 6 may receive the request from a device corresponding to a user 10 of the user set 8.
  • the fueling management system 6 may be configured to generate a fuel reservation corresponding to the request and associated with the user.
  • the fuel reservation may include the predetermined amount of fuel and the current price.
  • the fueling management system 6 may be configured to store the fuel reservation in a database 60 in association with a user identifier for the user. The fueling management system 6 is described in greater detail below with reference to FIG. 2A - FIG. 2B.
  • the payment system 4, fueling management system 6, user set 8, and fuel provider system 14 may be communicably coupled via a network 12.
  • the payment system 4 may be connected via connection 22 to the network 12
  • the fueling management system 6 may be connected via connection 24 to the network 12
  • the user set 8 may be connected via connection 26 to the network 12
  • the fuel provider system 14 may be connected via connection 28 to the network 12.
  • the connections 22, 24, 26, 28 may be hypertext transfer protocol (HTTP) connections (as shown in FIG. 2A), websockets or other types of web or server addresses (as shown in FIG. 2B), or other types of network connections.
  • the network 12 may facilitate communication between the respective systems, as described in greater detail below. [0022] Referring to FIG. 1 and FIG. 2 A - FIG.
  • the fuel provider system 14 may include a fuel provider backend 16 and a filling station set 18 including a plurality of filing stations 20.
  • the fuel provider backend 16 may be a backend server hosting, maintaining, or otherwise including data corresponding to a plurality of filling stations 20.
  • the fuel provider backend 16 may exchange information with the fueling management system 6 via a fuel provider adapter 38.
  • the fuel provider adapter 38 may be, for instance, an application programming interface (API) which facilitates communication between the fuel provider backend 16 and the fueling management system 6.
  • API application programming interface
  • the fueling management system 6 may request data from the fuel provider backend 16 (e.g., at various intervals, or the fuel provider backend 16 may automatically provide such data at various intervals).
  • the fuel provider backend 16 may include data corresponding to a location of the filling stations 20, fuel prices for the filling stations 20, fuel amount, number of pumps, and so forth. Such data may be provided by various computing devices (e.g., automatically or manually) corresponding to the filling stations 20 to the fuel provider backend 16 for updating the data corresponding to the filling stations 20 in the filling station set 18.
  • the fuel provider backend 16 may be configured to update the filling station set 18 to include new filling stations 20 (as such filling stations 20 enroll with the fuel provider backend 16), remove filling stations 20 (as such filling stations 20 un-enroll with the fuel provider backend 16), etc, Hence, the fuel provider backend 16 may be configured to maintain an up-to-date filling station set 18 including data corresponding to the filling stations 20.
  • the payment system 4 may be associated with a financial institution.
  • the financial institution system 6 may include a payment service 40 which facilitates communication between various components of the system 2 and the payment system 4.
  • the payment system 4 may be or include server for a financial institution hosting various bank account information.
  • the payment service 40 may be similar in some respects to the fuel provider adapter 38.
  • the payment system 4 may be associated with financial institutions corresponding to the users 10 in the user set 8.
  • the payment service 40 may be configured to receive data from the payment system 4 corresponding to financial accounts of users 10 in the user set 8. For instance, the payment service 40 may be configured to verify availability of sufficient funds in financial accounts of users 10, initiate transactions corresponding to financial accounts of users 10, and so forth.
  • the payment service 40 may facilitate communications between the payment system 4 corresponding to the financial institutions and the fueling management system 6.
  • the users 10 of the user set 8 may communicate with the fueling management system 6 via a respective device.
  • the system 2 may include an application on a mobile device (e.g., a mobile app 30), a website including a web interface 32, etc.
  • a user 10 may operate their device (e.g., a mobile device, personal computer, etc.) to communicate with the fueling management system 6.
  • the mobile app 30 and/or web interface 32 may generate HTTP requests or queries, websocket requests or queries, etc. for the fueling management system 6.
  • the fueling management system 6 may include a notification service 42 configured to generate notifications for transmitting to the users 10 (e.g., SMS notifications via an SMS gateway 34, email notifications via an email sender 36, etc.).
  • the fueling management system 6 may include a message queue 44.
  • the message queue 44 may be or include a queue of incoming messages (e.g., from the payment system 4, the devices corresponding to the users 10, from the fuel provider backend 16, etc.), a queue of outgoing- messages (e.g., from the fueling management system 6 to the payment system 4, to the devices corresponding to the users 10, to the fuel provider backend 16, etc.), and so forth.
  • the message queue 44 may facilitate transmission of various messages, communications, requests, prompts, or other data between the various services of the fueling management system 6, as described in greater detail below.
  • the fueling management system 6 may include a plurality of other services and APIs.
  • the fueling management system 6 may include an API fa9ade 46 (which facilitates communication between the users 10 and the fueling management system 6), a fueling service 48, a fuel storage service 50, a user service 52, a product service 54, order service 56, Memcache 58, various databases 60, and a gas station service 62.
  • API fa9ade 46 which facilitates communication between the users 10 and the fueling management system 6
  • a fueling service 48 which facilitates communication between the users 10 and the fueling management system 6
  • a fueling service 48 which facilitates communication between the users 10 and the fueling management system 6
  • a fueling service 48 which facilitates communication between the users 10 and the fueling management system 6
  • a fuel storage service 50 which facilitates communication between the users 10 and the fueling management system 6
  • a user service 52 which provides a fuel storage service 50
  • product service 54 a product service 54
  • order service 56 Mem
  • a user 10 may generate a request for the fueling management system 6 (e.g., step 301).
  • the user 10 may generate the request via their mobile device or other device (e.g., via the mobile app 30 or web interface 32) for the fueling management system 6.
  • the user 10 may generate the request at the filling station 20 (e.g., at a pump located at the filling station 20).
  • the filling station 20 may be configured to route the request from the user 10 via the fuel provider backend 16 to the fueling management system 6.
  • the fueling management system 6 may be configured to receive the request via the API fa?ade 46 from the user 10.
  • the request may specify a user identifier corresponding to the user 10, may specify a filling station 20 (e.g., a pump at the filling station 20, a fuel type such as diesel, ethanol, regular unleaded, midgrade unleaded, premium unleaded, etc., a volume of fuel, etc.).
  • a filling station 20 e.g., a pump at the filling station 20, a fuel type such as diesel, ethanol, regular unleaded, midgrade unleaded, premium unleaded, etc., a volume of fuel, etc.
  • the API fa9ade 46 may be configured to route the request to the fueling service 48 to create a fueling prompt (step 302).
  • the fueling prompt may include information included in the request.
  • the fueling prompt may specify a user identifier corresponding to the user and/or may specify a filling station 20 (e.g., a pump at the filling station 20, a fuel type such as diesel, ethanol, regular unleaded, midgrade unleaded, premium unleaded, etc., a volume of fuel, etc.).
  • the fueling service 48 may be configured to create a fuel reservation using the fueling prompt (step 303).
  • the fuel reservation may reserve the volume of fuel specified in the request (e.g., from step 301).
  • the fueling service 48 may be configured to transmit a prompt to the fuel storage service 50 (e.g., to determine the whether the filling station 20 is capable of satisfying the request).
  • the fueling service 48 may be configured to determine a fuel provider (step 304).
  • the fueling service 48 may be configured to determine the fuel provider from the request (e.g., from step 301).
  • the fueling service 48 may be configured to parse the request received at step 301 to determine the fuel provider.
  • the fueling service 48 may be configured to permit commencement of fueling (e.g., step 305) by creating an order via the fuel provider adapter 38 with the fuel provider backend 16 (e.g., step 306-step 307).
  • the fuel provider adapter 38 may be configured to confirm the order was created (e.g., at step 308) with the fueling service 48.
  • the fueling service 48 may be configured to push an alert to a user device, for example, the device on which the user generated the request (at step 301).
  • the fueling management system 6 may be configured to loop between step 310 and step 311 until the fueling is complete).
  • the order may be in “fueling” status while the user fills the fuel tank of the vehicle.
  • the order may be in a “completed” status once the user completes filling the fuel tank of the vehicle.
  • the fueling service 48 may periodically prompt the fuel provider backend 16 (e.g., via the fuel provider adapter 38) for the order status.
  • the fueling service 48 may be configured to create a transaction (step 316).
  • the fueling service 48 may be configured to create the transaction by prompting the fuel storage service 50 for an amount of fuel consumed as part of the order.
  • the fuel storage service 50 may be configured to provide the amount of fuel consumed to the fueling service 48 for creating the transaction (e.g., step 317).
  • the fueling service 48 may be configured to release the reservation created with the fuel storage service 50 at step 303.
  • the fuel storage service 50 may be configured to release the reservation (e.g., step 319), after which fueling is completed.
  • FIG. 4 depicted is a process 400 for refueling a vehicle, according to an illustrative embodiment.
  • the process 400 shown in FIG. 4 may be similar in some respects to the process 300 shown in FIG. 3.
  • the user pays for refueling the vehicle at the filling station 20.
  • the fueling service 48 may be configured to hold money as payment for the refueling (step 403).
  • the fueling service 48 may be configured to hold money as payment by sending a hold request to the payment service 40.
  • the payment service 40 may be configured to route the hold request to the payment system 4 for transmission to the financial institution corresponding to the user.
  • a computing device e.g., a server
  • the financial institution may be configured to confirm sufficient funds available for the hold. Where the computing device confirms sufficient funds available, the computing device may be configured to generate a prompt which indicates a successful hold (step 405).
  • the payment service 40 may be configured to cause the financial institution to deposit money 415 into an account corresponding to the filling station 20.
  • the payment service 40 may be configured to transmit a deposit money request to the payment system 4 for routing to the computing device at the financial institution of the user who generated the request.
  • the deposit money request may include financial institution information corresponding to a financial institution for the filling station 20.
  • the deposit money request may be configured to prompt, trigger, or otherwise cause the computing device at the financial institution of the user to deposit or otherwise transfer money to an account for the financial institution for the filling station 20.
  • the payment service 40 may be configured to receive a successfully deposited confirmation at step 420 (e.g., from the computing device for the financial institution for the user, from the financial institution for the filling station 20, etc.).
  • the fueling service 48 may be configured to confirm that payment is completed at step 421.
  • a user since the user is purchasing fuel at the filling station 20 rather than requesting a reservation of a predetermined amount of fuel, the user may be subject to a current price of fuel at the filling station 20. According to the implementations and embodiments described herein, a user can insulate themselves from fluctuations of fuel prices by reserving a predetermined amount of fuel in advance of refueling their vehicle, as described in greater detail below.
  • FIG. 5 depicted is a process 500 for purchasing fuel, according to an illustrative embodiment.
  • the process 500 shown in FIG. 5 may provide a user with the ability to pre-purchase fuel in advance of refilling their vehicle.
  • the user may be insulated from price fluctuations of fuel, and may be permitted to purchase fuel in bulk for subsequent consumption.
  • a user may generate a request to reserve a predetermined amount of fuel (step 501 ).
  • the user may operate their device to generate the request.
  • the request may include a user identifier corresponding to the user (e.g., a pin, username, etc.).
  • the request may include product information (such as type of fuel requested).
  • the device may be configured to transmit the request via the API fa9ade 46 to the order service 56 (step 502).
  • the order service 56 may be configured to determine product information corresponding to the request (step 503).
  • the order service 56 may be configured to parse the request to determine the product information included therein.
  • the order service 56 may be configured to prompt the product service 54 for product information for the products included in the request.
  • the product service 54 may be configured to respond with the corresponding product information, such as quantities available for reservation, prices, etc. (step 504).
  • the order service 505 may be configured to check, verify, or otherwise confirm the product information received from the product service 54 (e.g., step 505).
  • the order service 56 may be configured to check the product information against various idempotency rules (step 506).
  • the order service 505 may be configured to complete the order (step 507) using the product information from the product service 54.
  • the user may be prompted to provide payment information to pay for the reserved fuel (step 510).
  • the user may be prompted to pay for the full amount of reserved fuel, pay for a portion of the reserved fuel, pay a holding fee, etc.
  • the device may be configured to render a form on the mobile app 30 or web interface 32 in which the user may provide payment information (step 511).
  • the payment information may include, for instance, a user identifier, order identifier, payment method, financial information for the user, etc.
  • the user may fill out the form on their device to provide the corresponding payment information.
  • the device may be configured to transmit the payment information via the API fa9ade 46 to the payment service 40.
  • the payment service 40 may be configured to generate a prompt to transmit (e.g., via the payment service 40) to the payment system 4 to initiate a transaction to confirm payment for the order.
  • the payment system 4 may confirm payment for the order (step 512).
  • the payment service 40 may be configured to generate an execute order prompt for the order service 56.
  • the order service 56 may be configured to cause the user interface of the mobile app 30 or web interface 32 to show the order was paid and confirm execution of the order (step 514).
  • the order service 56 may be configured to maintain a database 60 including user identifiers and corresponding reserved fuel amounts at a price specified in a respective order.
  • the database 60 may include a ledger including a user identifier corresponding to a user, a fuel amount from an order made by the user, and a fuel price corresponding to the reserved fuel amount.
  • the order service 56 may be configured to update the database 60 to reflect the additional orders for fuel reserves for the user.
  • the database 60 may include an up-to-date listing of available fuel associated with a user identifier for a user.
  • process 600 may be performed following process 500 (FIG. 5) (e.g., following a user generating and successfully executing an order for fuel).
  • FIG. 9 A - FIG. 9G show example user interfaces for generating a refuel request.
  • the user may generate the refuel request on their mobile device via the mobile app 30.
  • the refuel request may specify a filling station 20 (e.g., selected on the user interface shown in FIG. 9 A).
  • the user may request refueling at a previously-reserved price (e.g., in the example shown in FIG. 9B, for $2.50/gal).
  • the refuel request may include a payment method (e.g., via credit card, via an application on the mobile device, such as APPLE PAY, etc.).
  • the user interface may display the volume of gas which is available (e.g., that was reserved by the user via process 500) under the previously-reserved price.
  • the user interface may display the current price and the previously-reserved price. Where the current price is lower than the previously-reserved price, the user may, in some embodiments, opt to purchase fuel at the current price (e.g., using the process 400 depicted in FIG. 4 and described in greater detail above).
  • the user may select a volume of fuel and a pump (e.g., as shown in FIG. 9C).
  • the user may select the filling station 20, pump, fuel type, volume, etc. on a mobile device (e.g., via the mobile app 30).
  • the mobile device may be configured to transmit the request via the API facade 46 to the fueling service 48 (step 602).
  • the fueling service 48 may be configured to check limits and available money (step 603).
  • the fueling service 48 may be configured to parse the refuel request received from the mobile device to determine a user identifier corresponding to the refuel request, a volume of fuel, fuel type, etc.
  • the fueling service 48 may be configured to perform a look-up function using the user identifier in the database 60 to identify the reserved fuel amount.
  • the fueling service 48 may be configured to allow fueling where the requested volume is less than or equal to the reserved fuel amount (step 604).
  • the fueling service 48 may be configured to reserve an amount of money corresponding to the volume of fuel requested. In some embodiments, the fueling service 48 may be configured to prompt for additional funding where the requested volume is greater than the reserved fuel amount.
  • the fueling service 48 may be configured to generate a notification at the mobile app 30 for the user (e.g., similar to the user interface shown in FIG. 9E) to indicate that the user can commence refueling their vehicle (step 609).
  • the mobile app 30 may be configured to render a user interface (e.g., similar to the user interface shown in FIG. 9F) showing that refilling is in progress as the user pumps fuel into their vehicle.
  • the fueling management system 6 may be configured to release the reservation and withdraw money from the financial institution account (step 618).
  • the fueling management system 6 may be configured to release the reservation by reducing the amount of reserved fuel by the volume of fuel requested as part of the order (e.g., the amount of fuel consumed to fill the vehicle of the user).
  • the fueling management system 6 may be configured to withdraw money from the financial institution account associated with the user by generating a prompt via the payment service 40 for the payment system 4.
  • the prompt may trigger funds to be transferred from the financial institution of the user to the financial institution corresponding to the filling station 20.
  • the fueling management system 6 may trigger rendering (e.g., by the mobile app 30) a notification indicating filling is complete.
  • the mobile app 30 may render a user interface similar to the user interface shown in FIG. 9G.
  • the fueling management system 6 may be configured to update the database 60 to include filling station data.
  • FIG. 7 depicts a process 700 for updating filling station data.
  • the gas station service 62 may be configured to generate an update prompt (step 701).
  • the gas station service 62 may be configured to generate the update prompt every N seconds (e.g., every 2 seconds, 5 seconds, 10 seconds, 20 seconds, 30 seconds, 60 seconds, etc.).
  • the gas station service 62 may be configured to transmit the prompt via the fuel provider adapter 38 to the fuel provider backend 16 (step 702).
  • the prompt may request a list of filling station 20 (also referred to herein as gas station) identifiers. Each filling station identifier may correspond to a filling station 20 in the filling station set 18.
  • the fuel provider adapter 38 may be configured to request data for each filling station identifier received from the fuel provider backend 16 (step 704).
  • the fuel provider backend 16 may be configured to respond with a list or number of pumps, current fuel prices, fuel types for each pump, pump statuses (e.g., active, disabled, etc.), and so forth (step 705).
  • the fuel provider adapter 38 may be configured to iteratively loop between step 704 and step 705 to accumulate data for each filling station identifier (step 706). Once the fuel provider adapter 38 accumulates data for each filling station 20 in the filling station set 18, the fuel provider adapter 38 may be configured to generate, assemble, construct, or otherwise build a dataset to provide to the gas station service 62 (step 707).
  • the dataset may include new filling stations 20 added to the filling station set 18, updated data corresponding to each of the filling stations 20, and so forth.
  • the gas station service 62 may be configured to update the database 60 with the dataset received from the fuel provider adapter 38.
  • the fueling management system 6 may have up-to-date information corresponding to the filling stations 20.
  • FIG. 8 shows a process 800 for locating filling stations 20 in the filling station set 18.
  • the process 800 may include steps similar to those described above with reference to FIG. 7.
  • the database 60 may include up-to-date information corresponding to filling stations 20 in the filling station set 18.
  • the user may generate a search request (e.g., via the mobile app 30 or web interface 32) (step 806).
  • the search request may include fuel type, coordinates of the user (or where the user plans on refueling), or other types of filters (such as filling station 20 type or brand, price filters, etc.).
  • the device on which the user generates the search request may transmit the search request via the API fa?ade 46 to the gas station service 62 (step 807).
  • the gas station service 62 may be configured to return a list of filling stations 20 via the API fa9ade 46 (step 808) to the device (e.g., step 809).
  • the list of filling stations 20 may be less than the full filling station set 18.
  • the gas station service 62 may be configured to perform a look-up function in the database 60 using the filters from the search request to identify a subset of filling stations 20 to include in the list of filling stations 20 to provide to the user.
  • the subset of filling stations 20 may include filling stations 20 which are nearest to the coordinates provided in the search request, filling stations 20 having the requested fuel type, having a fuel price less than or equal to the fuel price set as a filter in the search request, and so forth.
  • the user may select, on a user interface of the device similar to the user interface shown in FIG. 9A, a filling station 20 from the list of filling stations 20 provided by the gas station service 62 to the device (step 810).
  • the user may select the filling station 20 to request information corresponding to the filling station 20.
  • the device may transmit the selected filling station 20 (e.g., a filling station identifier corresponding to the filling station 20) via the API fa ade 46 to the gas station service 62 (step 811).
  • the gas station service 62 may be configured to perform a look-up function in the database 60 using the filling station identifier from the device to identify information corresponding to the selected filling station 20.
  • the information may include, for instance, location, list of pumps, supported fuel types, fuel prices, and so forth.
  • the gas station service 62 may be configured to transmit the filling station information via the API fa iade 46 (step 812) to the device corresponding to the user (step 813).
  • the device may render the information received from the gas station service 62 to the user (e.g., on a user interface similar to the user interface shown in FIG. 9B).
  • the user may then select a pump, volume of fuel, fuel type, etc., and may begin fueling via the process 600 shown in FIG. 6.
  • the fueling management system 6 may maintain a database 60.
  • the fueling management system 6 may receive a request to reserve a predetermined amount of fuel.
  • the fueling management system 6 may generate a fuel reservation.
  • the fueling management system 6 may store the fuel reservation in a database 60.
  • the fueling management system 6 may maintain a database 60.
  • the fueling management system 6 may maintain a database 60 including data corresponding to current fuel prices for each of plurality of filling stations 20.
  • the fueling management system 6 may maintain the database 60 using data received via the fuel provider adapter 38 from the fuel provider backend 16 (e.g., as described above with reference to FIG. 7).
  • the database 60 may include a list of filling stations 20, and for each filling station 20, a list of gas pumps, a status of the gas pumps, fuel types, prices, and so forth.
  • the fueling management system 6 may receive refreshed data at various intervals (e.g., every N seconds, for instance). In some embodiments, the fueling management system 6 may receive (e.g., from the fuel provider system 14) an updated list of filling stations 20. The fueling management system 6 may receive the updated list as described above with reference to FIG. 7. The fueling management system 6 may update the database 60 to include refreshed data corresponding to the updated list of filling stations 20. Accordingly, the fueling management system 6 may periodically update the database 60 to ensure that the database 60 does not include stale data.
  • the fueling management system 6 may receive a request to reserve a predetermined amount of fuel.
  • the fueling management system 6 may receive (e.g., via a communications interface) a request to reserve a predetermined amount of fuel at a current price for refueling a vehicle (e.g., the user’s vehicle or another person’s vehicle) at a subsequent date.
  • the communications interface may be, for instance, the API facade 46 which communicably couples a web interface 32 or mobile app 30 corresponding to a device of the user with the fueling management system 6.
  • the request may include a user identifier corresponding to the user.
  • the request may specify a type of fuel.
  • the user may generate the request on the mobile app 30 or web interface 32, and the device may transmit the request via the API fa?ade 46 to the fueling management system 6.
  • the request may include payment information (e.g., financial institution information corresponding to a financial institution of the user).
  • the payment information may authorize payment for the requested predetermined amount of fuel.
  • the payment information may authorize payment of the full cost of the predetermined amount of fuel, may authorize partial payment of the full cost (e.g., similar to a down payment), a fee for the reservation, etc.
  • the payment information authorizes partial payment, the user may pay a pro rata amount corresponding to the reserved current price, as described in greater detail below.
  • the fueling management system 6 may generate a fuel reservation.
  • the fueling management system 6 may generate a fuel reservation corresponding to the request (e.g., received at step 1002) and associated with the user.
  • the fuel reservation may include the predetermined amount of fuel (e.g., from the reservation received at step 1002) and the current price (e.g., from the database 60).
  • the fueling management system 6 may parse the request to determine the predetermined amount of fuel requested to be reserved.
  • the fueling management system 6 may generate the fuel reservation to reserve the amount of fuel specified in the request.
  • the fuel reservation may be limited to a particular location (e.g., region, such as city, state, group of states, etc.), limited to a particular type of filling station 20 (e.g., a brand or company which owns the filling station 20), limited to a particular type of fuel (e.g., specified in the request, such as ethanol, diesel, regular unleaded, midgrade unleaded, premium unleaded, etc.), and so forth.
  • the request e.g., received at step 1002
  • the fuel reservation generated by the fueling management system 6 may include the predetermined amount of fuel specified in the request, and the current price (e.g., per gallon) for the specified filling station 20.
  • the fueling management system 6 is communicably coupled with a payment system 4 associated with a financial institution.
  • the fueling management system 6 may be communicably coupled with the payment system 4 via a payment service 40 (e.g., which facilitates communications between the payment system 4 and fueling management system 6).
  • the fueling management system 6 may generate the fuel reservation responsive to receiving a confirmation from the payment system 4 via the payment service 40.
  • the fueling management system 6 may generate a prompt for the payment system 4 which requests a confirmation of sufficient funds.
  • the fueling management system 6 may transmit the prompt to the payment service 40 for routing to the payment system 4.
  • the payment system 4 may verify sufficient funds in a financial institution account associated with the user.
  • the payment system 4 may generate a confirmation for the fueling management system 6. Once the fueling management system 6 receives the confirmation (e.g., via the payment service 40 from the payment system 4), the fueling management system 6 may generate the fuel reservation.
  • the fueling management system 6 may store the fuel reservation in a database 60.
  • the fueling management system 6 may store the fuel reservation (e.g., generated at step 1003) in a database 60 in association with a user identifier for the user who generated the request.
  • the database 60 may be the same as the database 60 which includes data corresponding to the filling stations 20.
  • the databases 60 may be different.
  • the database 60 may be or include a list or ledger including user identifiers for registered users, fuel reservations for each registered user, and a reserved fuel price for each user. As the users generate subsequent requests, the fueling management system 6 may update the database 60 to reflect the subsequent reservations.
  • the fueling management system 6 may update the database 60 to reflect consumption of reserved fuel.
  • the database 60 may be an up-to- date list including fuel reserves for a plurality of users.
  • steps 1002 through 1004 may be similar in some respects to (or include at least some of the steps included in) FIG. 5.
  • FIG. 11 depicted is a method 1100 for redeeming reserved fuel.
  • the method 1100 may be performed by the components described above with reference to FIG.
  • the fueling management system 6 may receive a refuel request.
  • the fueling management system 6 may determine an amount of fuel corresponding to the refuel request.
  • the fueling management system 6 may release the amount of fuel from the predetermined amount of fuel.
  • the fueling management system 6 may receive a refuel request.
  • the fueling management system 6 may receive (e.g., via the communications interface from the fuel provider system 14) a refuel request including the user identifier associated with a user.
  • the fueling management system 6 may receive the refuel request from a device associated with a user (e.g., via a mobile app 30 or web interface 32), from a filling station 20, etc.
  • the refuel request may include the user identifier corresponding to a user.
  • the user may be a business owner and the user identifier may be provided by a worker (e.g., a driver, for instance) associated with the business.
  • the user may be an individual who both initiates the request (e.g., as described above with reference to method 1000) and generates the refuel request to refuel their own vehicle.
  • the fueling management system 6 may perform a look-up function using the user identifier from the refuel request in the database 60 to identify reserved fuel amounts and prices.
  • the fueling management system 6 may identify the reserved fuel amounts associated with the user and reserved prices to determine whether the fueling management system 6 may satisfy the refuel request.
  • the refuel request may include a volume of fuel requested (e.g., a number of gallons, a full tank, etc,).
  • the fueling management system 6 may compare the volume of fuel requested to the reserved fuel amounts associated with the user identifier.
  • the fueling management system 6 may selectively approve the refuel request based on the comparison. For instance, the fueling management system 6 may deny the refuel request when the fuel reserves associated with the user identifier is less than the volume from the refuel request.
  • the fueling management system 6 may generate a prompt for transmission to the device (e.g., which the user used to generate the refuel request) responsive to denying the refuel request.
  • the prompt may cause the user to generate a second request (e.g., similar to the request described above at step 1001) to reserve a second predetermined amount of fuel for adding to the predetermined amount of fuel.
  • the user may generate a second request (which may be processed by the fueling management system 6 in a manner similar to the method 1000 described above with reference to FIG. 10).
  • the fueling management system 6 may update the database 60 to reflect additional fuel reserves from the second request.
  • the refuel request may specify a pump at the filling station 20 in which the user intends to refuel their vehicle.
  • the fueling management system 6 may transmit a signal to the fuel provider system 14 based on the specified pump. For instance, the fueling management system 6 may transmit a signal to the fuel provider adapter 38 for routing to the fuel provider backend 16 (which in turn routes the signal or a corresponding signal to the specified pump). The signal may cause the specified fuel pump to release fuel for refueling the vehicle.
  • the user may be permitted to refuel their vehicle.
  • the fueling management system 6 may determine an amount of fuel corresponding to the refueling order. In some embodiments, the fueling management system 6 may determine an amount of fuel corresponding to the refuel request which was used to refuel a vehicle. The fueling management system 6 may receive the amount of fuel from the fuel provider backend 16 via the fuel provider adapter 38. In some instances, the amount of fuel may be the same as the amount of fuel specified in the refuel request (e.g., where the refuel request specifies a number of gallons and that number of gallons was used to refuel the vehicle).
  • the amount of fuel may be less than or greater than the amount of fuel specified in the refuel request (e.g., where the user over or underestimated the amount of fuel needed to refuel the vehicle).
  • the fueling management system 6 may use the amount of fuel from the fuel provider backend 16 to deduct from the fuel reserves, as described in greater detail below.
  • the fueling management system 6 may release the amount of fuel from the predetermined amount of fuel. In some embodiments, the fueling management system 6 may release the amount of fuel corresponding to the refueling order from the predetermined amount of fuel previously-reserved by the user. The fueling management system 6 may release the amount of fuel received at step 1102 from the fuel reserves corresponding to the user identifier included in the refuel request. In some embodiments (such as where the user partially pays for the fuel reserves), the fueling management system 6 may trigger a transaction with the financial institution account of the user to pay for the remaining balance. For instance, the fueling management system 6 may send a payment request to the payment service 40 for routing to the payment system 4.
  • the payment request may specify a balance due (e.g., the reserved price of fuel specified in the database 60 multiplied by the amount of fuel received at step 1102 less the pre-paid portion).
  • the payment system 4 may cause funds to be transferred from a financial institution account corresponding to the user to a financial institution account corresponding to the filling station 20.
  • the fueling management system 6 may release the amount of fuel (e.g., from step 1102) by deducting the amount of fuel from the fuel reserves (e.g., corresponding to the user identifier).
  • the fueling management system 6 may update the fuel reservation (e.g., generated at step 1003 of method 1000) to include the predetermined amount of fuel less the amount of fuel received at step 1102.
  • the fueling management system 6 may update the fuel reservation by generating a new fuel reservation which includes the predetermined amount of fuel less the amount of fuel received at step 1102.
  • the fueling management system 6 may store the updated fuel reservation in the database 60.
  • the database 60 may be updated to reflect new fuel reservations, consumed fuel, and so forth, corresponding to a user identifier for a user.
  • Coupled means the joining of two members directly or indirectly to one another. Such joining may be stationary (e.g., permanent or fixed) or moveable (e.g., removable or releasable). 3 ⁇ 4jch joining may be achieved with the two members coupled directly to each other, with the two members coupled to each other using a separate intervening member and any additional intermediate members coupled with one another, or with the two members coupled to each other using an intervening member that is integrally formed as a single unitary body with one of the two members.
  • Coupled or variations thereof are modified by an additional term (e.g., directly coupled)
  • the generic definition of “coupled” provided above is modified by the plain language meaning of the additional term (e.g., “directly coupled” means the joining of two members without any separate intervening member), resulting in a narrower definition than the generic definition of “coupled” provided above.
  • Such coupling may be mechanical, electrical, or fluidic.
  • references herein to the positions of elements are merely used to describe the orientation of various elements in the Figures. It should be noted that the orientation of various elements may differ according to other exemplary embodiments, and that such variations are intended to be encompassed by the present disclosure.
  • the hardware and data processing components used to implement the various processes, operations, illustrative logics, logical blocks, modules and circuits described in connection with the embodiments disclosed herein may be implemented or performed with a general purpose single- or multi-chip processor, a digital signal processor (DSP), an application specific integrated circuit (ASIC), a field programmable gate array (FPGA), or other programmable logic device, discrete gate or transistor logic, discrete hardware components, or any combination thereof designed to perform the functions described herein.
  • a general purpose processor may be a microprocessor, or, any conventional processor, controller, microcontroller, or state machine.
  • a processor also may be implemented as a combination of computing devices, such as a combination of a DSP and a microprocessor, a plurality of microprocessors, one or more microprocessors in conjunction with a DSP core, or any other such configuration.
  • particular processes and methods may be performed by circuitry that is specific to a given function.
  • the memory e.g., memory, memory unit, storage device
  • the memory may be or include volatile memory or non-volatile memory, and may include database components, object code components, script components, or any other type of information structure for supporting the various activities and information structures described in the present disclosure.
  • the memory is communicably connected to the processor via a processing circuit and includes computer code for executing (e.g., by the processing circuit or the processor) the one or more processes described herein.
  • the present disclosure contemplates methods, systems and program products on any machine-readable media for accomplishing various operations.
  • the embodiments of the present disclosure may be implemented using existing computer processors, or by a special purpose computer processor for an appropriate system, incorporated for this or another purpose, or by a hardwired system.
  • Embodiments within the scope of the present disclosure include program products comprising machine-readable media for carrying or having machine-executable instructions or data structures stored thereon.
  • Such machine-readable media can be any available media that can be accessed by a general purpose or special purpose computer or other machine with a processor.
  • machine-readable media can comprise RAM, ROM, EPROM, EEPROM, or other optical disk storage, magnetic disk storage or other magnetic storage devices, or any other medium which can be used to carry or store desired program code in the form of machine-executable instructions or data structures and which can be accessed by a general purpose or special purpose computer or other machine with a processor. Combinations of the above are also included within the scope of machine-readable media.
  • Machine-executable instructions include, for example, instructions and data which cause a general purpose computer, special purpose computer, or special purpose processing machines to perform a certain function or group of functions.

Landscapes

  • Business, Economics & Management (AREA)
  • Accounting & Taxation (AREA)
  • Finance (AREA)
  • Development Economics (AREA)
  • Strategic Management (AREA)
  • Engineering & Computer Science (AREA)
  • General Business, Economics & Management (AREA)
  • Physics & Mathematics (AREA)
  • Marketing (AREA)
  • General Physics & Mathematics (AREA)
  • Economics (AREA)
  • Theoretical Computer Science (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Game Theory and Decision Science (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Loading And Unloading Of Fuel Tanks Or Ships (AREA)

Abstract

A fueling management system may maintain a database including data corresponding to current fuel prices for filling stations. A communications interface may communicably couple the fueling management system to a device corresponding to a user and to a fuel provider system corresponding to the filling stations. The fueling management system may receive, via the communications interface from the device, a request to reserve a predetermined amount of fuel at a first price for refueling a vehicle at a subsequent date. The first price may be based at least partially on one or more of the current fuel prices. The fueling management system may generate a fuel reservation corresponding to the request and associated with the user. The fuel reservation may include the predetermined amount of fuel and the current price. The fueling management system may store the fuel reservation in the database in association with a user identifier for the user.

Description

SYSTEMS AND METHODS FOR REFUELING VEHICLES
BACKGROUND
[0001] The present disclosure relates generally to refueling vehicles including systems and methods for prepaying for fuel to refuel vehicles at a subsequent point in time.
[0002] All vehicles require some type of energy to provide propulsion. Many vehicles are powered by fuel (such as gasoline). Fuel prices often fluctuate from date to date and from region to region. As such, when a user may pay a different amount per volume of fuel each time they refuel their vehicle.
SUMMARY
[0003] In one aspect, this disclosure is directed to a system for refueling a vehicle. The system may include a fueling management system maintaining a database including data corresponding to current fuel prices for each of a plurality of filling stations. The system may include a communications interface communicably coupling the fueling management system to a device corresponding to a user and to a fuel provider system corresponding to each of the plurality of filling stations. The fueling management system may be configured to receive, via the communications interface from the device, a request to reserve a predetermined amount of fuel at a current price for refueling a vehicle at a subsequent date. The fueling management system may be configured to generate a fuel reservation corresponding to the request and associated with the user. The fuel reservation may include the predetermined amount of fuel and the current price. The fueling management system may be configured to store the fuel reservation in the database in association with a user identifier for the user.
[0004] In another aspect, this disclosure is directed to a method for refueling a vehicle. The method may include maintaining, by a fueling management system, a database including data corresponding to current fuel prices for each of plurality of filling stations. The method may include receiving, by the fueling management system via a communications interface from a device corresponding to a user, a request to reserve a predetermined amount of fuel at a current price for refueling a vehicle at a subsequent date. The method may include generating a fuel reservation corresponding to the request and associated with the user. The fuel reservation may include the predetermined amount of fuel and the current price. The method may include storing the fuel reservation in the database in association with a user identifier for the user.
[0005] This summary is illustrative only and is not intended to be in any way limiting. Other aspects, inventive features, and advantages of the devices or processes described herein will become apparent in the detailed description set forth herein, taken in conjunction with the accompanying figures, wherein like reference numerals refer to like elements.
BRIEF DESCRIPTION OF THE DRAWINGS
[0006] FIG. 1 is a block diagram of a system for refueling vehicles, according to an illustrative embodiment.
[0007] FIG. 2A - FIG. 2B are block diagrams of a fueling management system of the system of FIG. 1, according to illustrative embodiments.
[0008] FIG. 3 is a process for refueling a vehicle, according to an illustrative embodiment.
[0009] FIG. 4 is a process for refueling a vehicle, according to another illustrative embodiment.
[0010] FIG. 5 is a process for purchasing fuel, according to an illustrative embodiment.
[0011] FIG. 6 is a process of refueling a vehicle, according to another illustrative embodiment.
[0012] FIG. 7 is a process for updating filling station data, according to an illustrative embodiment.
[0013] FIG. 8 is a process for locating filling stations, according to an illustrative embodiment. [0014] FIG. 9A - FIG. 9G show example user interfaces for generating a refuel request, according to an illustrative embodiment.
[0015] FIG. 10 is a flowchart showing a method of reserving fuel, according to an illustrative embodiment.
[0016] FIG. 11 is a flowchart showing a method of redeeming reserved fuel, according to an illustrative embodiment.
DETAILED DESCRIPTION
[0017] Before turning to the figures, which illustrate certain exemplary embodiments in detail, it should be understood that the present disclosure is not limited to the details or methodology set forth in the description or illustrated in the figures. It should also be understood that the terminology used herein is for the purpose of description only and should not be regarded as limiting.
[0018] Referring generally to the figures, described herein are systems and methods for refueling vehicles. A fueling management system may maintain a database including data corresponding to current fuel prices for filling stations. A communications interface may communicably couple the fueling management system to a device corresponding to a user and to a fuel provider system corresponding to the filling stations. The fueling management system may be configured to receive, via the communications interface from the device, a request to reserve a predetermined amount of fuel at a current price for refueling a vehicle at a subsequent date. The fueling management system may be configured to generate a fuel reservation corresponding to the request and associated with the user. The fuel reservation may include the predetermined amount of fuel and the current price. The fueling management system may be configured to store the fuel reservation in the database in association with a user identifier for the user.
[0019] The systems and methods described herein may have many benefits over systems and methods for refueling vehicles. For instance, the systems and methods described herein may provide insulation to users from fluctuations in fuel prices by storing fuel reservations associated with the users. Users may subsequently redeem a portion of the predetermined amount of fuel at a later date and at the price specified in the fuel reservation. The systems and methods described herein may provide a business means for purchasing fuel in bulk for a plurality of drivers, thus lessening burdens on accounting for individual purchases. Rather, the systems and methods described herein may update the amount of fuel reserved by a user as fuel is redeemed at subsequent dates. Various other benefits are described in greater detail below.
[0020] Referring now to FIG. 1 , depicted is a system 2 for refueling vehicles. The system 2 may include a payment system 4, a fueling management system 6 (also referred to herein as a fueling management server), a user set 8 including a plurality of users 10, and a fuel provider system 14. As described in greater detail below, the fueling management system 6 may be configured to receive a request to reserve a predetermined amount of fuel at a current price for refueling a vehicle at a subsequent date. The fueling management system 6 may receive the request from a device corresponding to a user 10 of the user set 8. The fueling management system 6 may be configured to generate a fuel reservation corresponding to the request and associated with the user. The fuel reservation may include the predetermined amount of fuel and the current price. The fueling management system 6 may be configured to store the fuel reservation in a database 60 in association with a user identifier for the user. The fueling management system 6 is described in greater detail below with reference to FIG. 2A - FIG. 2B.
[0021] The payment system 4, fueling management system 6, user set 8, and fuel provider system 14 may be communicably coupled via a network 12. For instance, the payment system 4 may be connected via connection 22 to the network 12, the fueling management system 6 may be connected via connection 24 to the network 12, the user set 8 may be connected via connection 26 to the network 12, and the fuel provider system 14 may be connected via connection 28 to the network 12. The connections 22, 24, 26, 28 may be hypertext transfer protocol (HTTP) connections (as shown in FIG. 2A), websockets or other types of web or server addresses (as shown in FIG. 2B), or other types of network connections. The network 12 may facilitate communication between the respective systems, as described in greater detail below. [0022] Referring to FIG. 1 and FIG. 2 A - FIG. 2B, the fuel provider system 14 may include a fuel provider backend 16 and a filling station set 18 including a plurality of filing stations 20. The fuel provider backend 16 may be a backend server hosting, maintaining, or otherwise including data corresponding to a plurality of filling stations 20. The fuel provider backend 16 may exchange information with the fueling management system 6 via a fuel provider adapter 38. The fuel provider adapter 38 may be, for instance, an application programming interface (API) which facilitates communication between the fuel provider backend 16 and the fueling management system 6. The fueling management system 6 may request data from the fuel provider backend 16 (e.g., at various intervals, or the fuel provider backend 16 may automatically provide such data at various intervals).
[0023] The fuel provider backend 16 may include data corresponding to a location of the filling stations 20, fuel prices for the filling stations 20, fuel amount, number of pumps, and so forth. Such data may be provided by various computing devices (e.g., automatically or manually) corresponding to the filling stations 20 to the fuel provider backend 16 for updating the data corresponding to the filling stations 20 in the filling station set 18. As described in greater detail below, the fuel provider backend 16 may be configured to update the filling station set 18 to include new filling stations 20 (as such filling stations 20 enroll with the fuel provider backend 16), remove filling stations 20 (as such filling stations 20 un-enroll with the fuel provider backend 16), etc, Hence, the fuel provider backend 16 may be configured to maintain an up-to-date filling station set 18 including data corresponding to the filling stations 20.
[0024] The payment system 4 may be associated with a financial institution. The financial institution system 6 may include a payment service 40 which facilitates communication between various components of the system 2 and the payment system 4. In some embodiments, the payment system 4 may be or include server for a financial institution hosting various bank account information. The payment service 40 may be similar in some respects to the fuel provider adapter 38. The payment system 4 may be associated with financial institutions corresponding to the users 10 in the user set 8. The payment service 40 may be configured to receive data from the payment system 4 corresponding to financial accounts of users 10 in the user set 8. For instance, the payment service 40 may be configured to verify availability of sufficient funds in financial accounts of users 10, initiate transactions corresponding to financial accounts of users 10, and so forth. The payment service 40 may facilitate communications between the payment system 4 corresponding to the financial institutions and the fueling management system 6.
[0025] The users 10 of the user set 8 may communicate with the fueling management system 6 via a respective device. For instance, the system 2 may include an application on a mobile device (e.g., a mobile app 30), a website including a web interface 32, etc. A user 10 may operate their device (e.g., a mobile device, personal computer, etc.) to communicate with the fueling management system 6. The mobile app 30 and/or web interface 32 may generate HTTP requests or queries, websocket requests or queries, etc. for the fueling management system 6. Similarly, the fueling management system 6 may include a notification service 42 configured to generate notifications for transmitting to the users 10 (e.g., SMS notifications via an SMS gateway 34, email notifications via an email sender 36, etc.).
[0026] The fueling management system 6 may include a message queue 44. The message queue 44 may be or include a queue of incoming messages (e.g., from the payment system 4, the devices corresponding to the users 10, from the fuel provider backend 16, etc.), a queue of outgoing- messages (e.g., from the fueling management system 6 to the payment system 4, to the devices corresponding to the users 10, to the fuel provider backend 16, etc.), and so forth. The message queue 44 may facilitate transmission of various messages, communications, requests, prompts, or other data between the various services of the fueling management system 6, as described in greater detail below.
[0027] The fueling management system 6 may include a plurality of other services and APIs. For instance, and as shown in FIG. 2A - FIG. 2B, the fueling management system 6 may include an API fa9ade 46 (which facilitates communication between the users 10 and the fueling management system 6), a fueling service 48, a fuel storage service 50, a user service 52, a product service 54, order service 56, Memcache 58, various databases 60, and a gas station service 62. Each of these services, databases, and other components are described in greater detail below.
[0028] Referring briefly to FIG. 3, depicted is a process 300 for refueling a vehicle, according to an illustrative embodiment. With reference to FIG. 1 - FIG. 2B, a user 10 may generate a request for the fueling management system 6 (e.g., step 301). In some embodiments, the user 10 may generate the request via their mobile device or other device (e.g., via the mobile app 30 or web interface 32) for the fueling management system 6. In some embodiments, the user 10 may generate the request at the filling station 20 (e.g., at a pump located at the filling station 20). The filling station 20 may be configured to route the request from the user 10 via the fuel provider backend 16 to the fueling management system 6. The fueling management system 6 may be configured to receive the request via the API fa?ade 46 from the user 10. The request may specify a user identifier corresponding to the user 10, may specify a filling station 20 (e.g., a pump at the filling station 20, a fuel type such as diesel, ethanol, regular unleaded, midgrade unleaded, premium unleaded, etc., a volume of fuel, etc.).
[0029] The API fa9ade 46 may be configured to route the request to the fueling service 48 to create a fueling prompt (step 302). The fueling prompt may include information included in the request. Hence, the fueling prompt may specify a user identifier corresponding to the user and/or may specify a filling station 20 (e.g., a pump at the filling station 20, a fuel type such as diesel, ethanol, regular unleaded, midgrade unleaded, premium unleaded, etc., a volume of fuel, etc.). The fueling service 48 may be configured to create a fuel reservation using the fueling prompt (step 303). The fuel reservation may reserve the volume of fuel specified in the request (e.g., from step 301). In some embodiments, the fueling service 48 may be configured to transmit a prompt to the fuel storage service 50 (e.g., to determine the whether the filling station 20 is capable of satisfying the request). In some embodiments, the fueling service 48 may be configured to determine a fuel provider (step 304). The fueling service 48 may be configured to determine the fuel provider from the request (e.g., from step 301). The fueling service 48 may be configured to parse the request received at step 301 to determine the fuel provider. The fueling service 48 may be configured to permit commencement of fueling (e.g., step 305) by creating an order via the fuel provider adapter 38 with the fuel provider backend 16 (e.g., step 306-step 307). In some embodiments, responsive to creating the order (e.g., at step 307), the fuel provider adapter 38 may be configured to confirm the order was created (e.g., at step 308) with the fueling service 48. The fueling service 48 may be configured to push an alert to a user device, for example, the device on which the user generated the request (at step 301). Once the order is created and the user is notified that the order is created (e.g., at 310), the user may commence fueling their vehicle (e.g., at step 310 and step 311).
[0030] The fueling management system 6 may be configured to loop between step 310 and step 311 until the fueling is complete). The order may be in “fueling” status while the user fills the fuel tank of the vehicle. The order may be in a “completed” status once the user completes filling the fuel tank of the vehicle. The fueling service 48 may periodically prompt the fuel provider backend 16 (e.g., via the fuel provider adapter 38) for the order status. Once the order status is complete (e.g., at step 314 and step 315), the fueling service 48 may be configured to create a transaction (step 316). The fueling service 48 may be configured to create the transaction by prompting the fuel storage service 50 for an amount of fuel consumed as part of the order. The fuel storage service 50 may be configured to provide the amount of fuel consumed to the fueling service 48 for creating the transaction (e.g., step 317). The fueling service 48 may be configured to release the reservation created with the fuel storage service 50 at step 303. The fuel storage service 50 may be configured to release the reservation (e.g., step 319), after which fueling is completed.
[0031] Referring now to FIG. 4, depicted is a process 400 for refueling a vehicle, according to an illustrative embodiment. The process 400 shown in FIG. 4 may be similar in some respects to the process 300 shown in FIG. 3. However, in the process 400 shown in FIG. 4, the user pays for refueling the vehicle at the filling station 20. In process 400, as part of creating the fueling prompt (e.g., at step 402), the fueling service 48 may be configured to hold money as payment for the refueling (step 403). The fueling service 48 may be configured to hold money as payment by sending a hold request to the payment service 40. The payment service 40 may be configured to route the hold request to the payment system 4 for transmission to the financial institution corresponding to the user. A computing device (e.g., a server) at the financial institution may be configured to confirm sufficient funds available for the hold. Where the computing device confirms sufficient funds available, the computing device may be configured to generate a prompt which indicates a successful hold (step 405).
[0032] Once the order is completed and the fueling service 48 creates a transaction (step 418), the payment service 40 may be configured to cause the financial institution to deposit money 415 into an account corresponding to the filling station 20. The payment service 40 may be configured to transmit a deposit money request to the payment system 4 for routing to the computing device at the financial institution of the user who generated the request. The deposit money request may include financial institution information corresponding to a financial institution for the filling station 20. The deposit money request may be configured to prompt, trigger, or otherwise cause the computing device at the financial institution of the user to deposit or otherwise transfer money to an account for the financial institution for the filling station 20. The payment service 40 may be configured to receive a successfully deposited confirmation at step 420 (e.g., from the computing device for the financial institution for the user, from the financial institution for the filling station 20, etc.). The fueling service 48 may be configured to confirm that payment is completed at step 421.
[0033] In the process 400 depicted in FIG. 4, since the user is purchasing fuel at the filling station 20 rather than requesting a reservation of a predetermined amount of fuel, the user may be subject to a current price of fuel at the filling station 20. According to the implementations and embodiments described herein, a user can insulate themselves from fluctuations of fuel prices by reserving a predetermined amount of fuel in advance of refueling their vehicle, as described in greater detail below.
[0034] Referring now to FIG. 5, depicted is a process 500 for purchasing fuel, according to an illustrative embodiment. The process 500 shown in FIG. 5 may provide a user with the ability to pre-purchase fuel in advance of refilling their vehicle. Thus, the user may be insulated from price fluctuations of fuel, and may be permitted to purchase fuel in bulk for subsequent consumption. [0035] A user may generate a request to reserve a predetermined amount of fuel (step 501 ). The user may operate their device to generate the request. The request may include a user identifier corresponding to the user (e.g., a pin, username, etc.). The request may include product information (such as type of fuel requested). The device may be configured to transmit the request via the API fa9ade 46 to the order service 56 (step 502). The order service 56 may be configured to determine product information corresponding to the request (step 503). The order service 56 may be configured to parse the request to determine the product information included therein. The order service 56 may be configured to prompt the product service 54 for product information for the products included in the request. The product service 54 may be configured to respond with the corresponding product information, such as quantities available for reservation, prices, etc. (step 504). The order service 505 may be configured to check, verify, or otherwise confirm the product information received from the product service 54 (e.g., step 505). In some embodiments, the order service 56 may be configured to check the product information against various idempotency rules (step 506). The order service 505 may be configured to complete the order (step 507) using the product information from the product service 54.
[0036] Once the order is completed, the user may be prompted to provide payment information to pay for the reserved fuel (step 510). In some embodiments, the user may be prompted to pay for the full amount of reserved fuel, pay for a portion of the reserved fuel, pay a holding fee, etc. In some embodiments, the device may be configured to render a form on the mobile app 30 or web interface 32 in which the user may provide payment information (step 511). The payment information may include, for instance, a user identifier, order identifier, payment method, financial information for the user, etc. The user may fill out the form on their device to provide the corresponding payment information. The device may be configured to transmit the payment information via the API fa9ade 46 to the payment service 40. Once the payment information is received by the payment service 40, the payment service 40 may be configured to generate a prompt to transmit (e.g., via the payment service 40) to the payment system 4 to initiate a transaction to confirm payment for the order. The payment system 4 may confirm payment for the order (step 512). The payment service 40 may be configured to generate an execute order prompt for the order service 56. The order service 56 may be configured to cause the user interface of the mobile app 30 or web interface 32 to show the order was paid and confirm execution of the order (step 514).
[0037] The order service 56 may be configured to maintain a database 60 including user identifiers and corresponding reserved fuel amounts at a price specified in a respective order.
For instance, the database 60 may include a ledger including a user identifier corresponding to a user, a fuel amount from an order made by the user, and a fuel price corresponding to the reserved fuel amount. As the user generates and completes additional orders, the order service 56 may be configured to update the database 60 to reflect the additional orders for fuel reserves for the user. As such, the database 60 may include an up-to-date listing of available fuel associated with a user identifier for a user.
[0038] Following a user executing an order, the user (or other users linked to, corresponding to, or otherwise associated with the user identifier of the user) may refuel their vehicle at a subsequent date. Referring now to FIG. 6, depicted is a process 600 of refueling a vehicle, according to an illustrative embodiment. In some embodiments, process 600 may be performed following process 500 (FIG. 5) (e.g., following a user generating and successfully executing an order for fuel).
[0039] Referring to FIG. 6 and FIG. 9 A - FIG. 9G, the user may generate a refuel request (step 601). Specifically, FIG. 9 A - FIG. 9G show example user interfaces for generating a refuel request. The user may generate the refuel request on their mobile device via the mobile app 30. The refuel request may specify a filling station 20 (e.g., selected on the user interface shown in FIG. 9 A). The user may request refueling at a previously-reserved price (e.g., in the example shown in FIG. 9B, for $2.50/gal). The refuel request may include a payment method (e.g., via credit card, via an application on the mobile device, such as APPLE PAY, etc.). The user interface may display the volume of gas which is available (e.g., that was reserved by the user via process 500) under the previously-reserved price. In some embodiments, the user interface may display the current price and the previously-reserved price. Where the current price is lower than the previously-reserved price, the user may, in some embodiments, opt to purchase fuel at the current price (e.g., using the process 400 depicted in FIG. 4 and described in greater detail above). The user may select a volume of fuel and a pump (e.g., as shown in FIG. 9C). The user may select the filling station 20, pump, fuel type, volume, etc. on a mobile device (e.g., via the mobile app 30). The mobile device may be configured to transmit the request via the API facade 46 to the fueling service 48 (step 602).
[0040] The fueling service 48 may be configured to check limits and available money (step 603). The fueling service 48 may be configured to parse the refuel request received from the mobile device to determine a user identifier corresponding to the refuel request, a volume of fuel, fuel type, etc. The fueling service 48 may be configured to perform a look-up function using the user identifier in the database 60 to identify the reserved fuel amount. The fueling service 48 may be configured to allow fueling where the requested volume is less than or equal to the reserved fuel amount (step 604). The fueling service 48 may be configured to reserve an amount of money corresponding to the volume of fuel requested. In some embodiments, the fueling service 48 may be configured to prompt for additional funding where the requested volume is greater than the reserved fuel amount.
[0041] Once the order is created (e.g., step 607 and step 608), the fueling service 48 may be configured to generate a notification at the mobile app 30 for the user (e.g., similar to the user interface shown in FIG. 9E) to indicate that the user can commence refueling their vehicle (step 609). The mobile app 30 may be configured to render a user interface (e.g., similar to the user interface shown in FIG. 9F) showing that refilling is in progress as the user pumps fuel into their vehicle. Once the user completes refueling, the fueling management system 6 may be configured to release the reservation and withdraw money from the financial institution account (step 618). The fueling management system 6 may be configured to release the reservation by reducing the amount of reserved fuel by the volume of fuel requested as part of the order (e.g., the amount of fuel consumed to fill the vehicle of the user). The fueling management system 6 may be configured to withdraw money from the financial institution account associated with the user by generating a prompt via the payment service 40 for the payment system 4. The prompt may trigger funds to be transferred from the financial institution of the user to the financial institution corresponding to the filling station 20. Once the transaction is complete, the fueling management system 6 may trigger rendering (e.g., by the mobile app 30) a notification indicating filling is complete. The mobile app 30 may render a user interface similar to the user interface shown in FIG. 9G.
[0042] Referring now to FIG. 1 - FIG. 2B and FIG. 7, the fueling management system 6 may be configured to update the database 60 to include filling station data. Specifically, FIG. 7 depicts a process 700 for updating filling station data. The gas station service 62 may be configured to generate an update prompt (step 701). The gas station service 62 may be configured to generate the update prompt every N seconds (e.g., every 2 seconds, 5 seconds, 10 seconds, 20 seconds, 30 seconds, 60 seconds, etc.). The gas station service 62 may be configured to transmit the prompt via the fuel provider adapter 38 to the fuel provider backend 16 (step 702). The prompt may request a list of filling station 20 (also referred to herein as gas station) identifiers. Each filling station identifier may correspond to a filling station 20 in the filling station set 18.
[0043] The fuel provider adapter 38 may be configured to request data for each filling station identifier received from the fuel provider backend 16 (step 704). The fuel provider backend 16 may be configured to respond with a list or number of pumps, current fuel prices, fuel types for each pump, pump statuses (e.g., active, disabled, etc.), and so forth (step 705). The fuel provider adapter 38 may be configured to iteratively loop between step 704 and step 705 to accumulate data for each filling station identifier (step 706). Once the fuel provider adapter 38 accumulates data for each filling station 20 in the filling station set 18, the fuel provider adapter 38 may be configured to generate, assemble, construct, or otherwise build a dataset to provide to the gas station service 62 (step 707). The dataset may include new filling stations 20 added to the filling station set 18, updated data corresponding to each of the filling stations 20, and so forth. The gas station service 62 may be configured to update the database 60 with the dataset received from the fuel provider adapter 38. As such, when a user requests a predetermined amount of fuel for consumption at a later date (as described above with reference to FIG. 5), the fueling management system 6 may have up-to-date information corresponding to the filling stations 20. [0044] Referring now to FIG. 1 - FIG. 2B and FIG. 8, a user may be able to locate filling stations 20 in which a user may redeem previously-reserved fuel. Specifically, FIG. 8 shows a process 800 for locating filling stations 20 in the filling station set 18. The process 800 may include steps similar to those described above with reference to FIG. 7. Hence, when a user attempts to locate a filling station 20, the database 60 may include up-to-date information corresponding to filling stations 20 in the filling station set 18.
[0045] The user may generate a search request (e.g., via the mobile app 30 or web interface 32) (step 806). The search request may include fuel type, coordinates of the user (or where the user plans on refueling), or other types of filters (such as filling station 20 type or brand, price filters, etc.). The device on which the user generates the search request may transmit the search request via the API fa?ade 46 to the gas station service 62 (step 807). The gas station service 62 may be configured to return a list of filling stations 20 via the API fa9ade 46 (step 808) to the device (e.g., step 809). In some embodiments, the list of filling stations 20 may be less than the full filling station set 18. For instance, the gas station service 62 may be configured to perform a look-up function in the database 60 using the filters from the search request to identify a subset of filling stations 20 to include in the list of filling stations 20 to provide to the user. For instance, the subset of filling stations 20 may include filling stations 20 which are nearest to the coordinates provided in the search request, filling stations 20 having the requested fuel type, having a fuel price less than or equal to the fuel price set as a filter in the search request, and so forth.
[0046] The user may select, on a user interface of the device similar to the user interface shown in FIG. 9A, a filling station 20 from the list of filling stations 20 provided by the gas station service 62 to the device (step 810). The user may select the filling station 20 to request information corresponding to the filling station 20. The device may transmit the selected filling station 20 (e.g., a filling station identifier corresponding to the filling station 20) via the API fa ade 46 to the gas station service 62 (step 811). The gas station service 62 may be configured to perform a look-up function in the database 60 using the filling station identifier from the device to identify information corresponding to the selected filling station 20. The information may include, for instance, location, list of pumps, supported fuel types, fuel prices, and so forth. The gas station service 62 may be configured to transmit the filling station information via the API fa iade 46 (step 812) to the device corresponding to the user (step 813). The device may render the information received from the gas station service 62 to the user (e.g., on a user interface similar to the user interface shown in FIG. 9B). The user may then select a pump, volume of fuel, fuel type, etc., and may begin fueling via the process 600 shown in FIG. 6.
[0047] Referring now to FIG. 10, depicted is a method 1000 for reserving fuel. The method 1000 may be performed by the components described above with reference to FIG. 1 - FIG. 9G, such as the fueling management system 6, the payment system 4, the fuel provider system 14, and so forth. As a brief overview, at step 1001, the fueling management system 6 may maintain a database 60. At step 1002, the fueling management system 6 may receive a request to reserve a predetermined amount of fuel. At step 1003, the fueling management system 6 may generate a fuel reservation. At step 1004, the fueling management system 6 may store the fuel reservation in a database 60.
[0048] At step 1001, the fueling management system 6 may maintain a database 60. In some embodiments, the fueling management system 6 may maintain a database 60 including data corresponding to current fuel prices for each of plurality of filling stations 20. The fueling management system 6 may maintain the database 60 using data received via the fuel provider adapter 38 from the fuel provider backend 16 (e.g., as described above with reference to FIG. 7). In some embodiments, the database 60 may include a list of filling stations 20, and for each filling station 20, a list of gas pumps, a status of the gas pumps, fuel types, prices, and so forth.
[0049] The fueling management system 6 may receive refreshed data at various intervals (e.g., every N seconds, for instance). In some embodiments, the fueling management system 6 may receive (e.g., from the fuel provider system 14) an updated list of filling stations 20. The fueling management system 6 may receive the updated list as described above with reference to FIG. 7. The fueling management system 6 may update the database 60 to include refreshed data corresponding to the updated list of filling stations 20. Accordingly, the fueling management system 6 may periodically update the database 60 to ensure that the database 60 does not include stale data.
[0050] At step 1002, the fueling management system 6 may receive a request to reserve a predetermined amount of fuel. In some embodiments, the fueling management system 6 may receive (e.g., via a communications interface) a request to reserve a predetermined amount of fuel at a current price for refueling a vehicle (e.g., the user’s vehicle or another person’s vehicle) at a subsequent date. The communications interface may be, for instance, the API facade 46 which communicably couples a web interface 32 or mobile app 30 corresponding to a device of the user with the fueling management system 6. The request may include a user identifier corresponding to the user. The request may specify a type of fuel. The user may generate the request on the mobile app 30 or web interface 32, and the device may transmit the request via the API fa?ade 46 to the fueling management system 6.
[0051] In some embodiments, the request may include payment information (e.g., financial institution information corresponding to a financial institution of the user). The payment information may authorize payment for the requested predetermined amount of fuel. The payment information may authorize payment of the full cost of the predetermined amount of fuel, may authorize partial payment of the full cost (e.g., similar to a down payment), a fee for the reservation, etc. In instances where the payment information authorizes partial payment, the user may pay a pro rata amount corresponding to the reserved current price, as described in greater detail below.
[0052] At step 1003, the fueling management system 6 may generate a fuel reservation. In some embodiments, the fueling management system 6 may generate a fuel reservation corresponding to the request (e.g., received at step 1002) and associated with the user. The fuel reservation may include the predetermined amount of fuel (e.g., from the reservation received at step 1002) and the current price (e.g., from the database 60). The fueling management system 6 may parse the request to determine the predetermined amount of fuel requested to be reserved. The fueling management system 6 may generate the fuel reservation to reserve the amount of fuel specified in the request. [0053] In some embodiments, the fuel reservation may be limited to a particular location (e.g., region, such as city, state, group of states, etc.), limited to a particular type of filling station 20 (e.g., a brand or company which owns the filling station 20), limited to a particular type of fuel (e.g., specified in the request, such as ethanol, diesel, regular unleaded, midgrade unleaded, premium unleaded, etc.), and so forth. For instance, in some embodiments, the request (e.g., received at step 1002) may specify one of the plurality of filling stations 20. The fuel reservation generated by the fueling management system 6 may include the predetermined amount of fuel specified in the request, and the current price (e.g., per gallon) for the specified filling station 20.
[0054] In some embodiments, the fueling management system 6 is communicably coupled with a payment system 4 associated with a financial institution. The fueling management system 6 may be communicably coupled with the payment system 4 via a payment service 40 (e.g., which facilitates communications between the payment system 4 and fueling management system 6). The fueling management system 6 may generate the fuel reservation responsive to receiving a confirmation from the payment system 4 via the payment service 40. The fueling management system 6 may generate a prompt for the payment system 4 which requests a confirmation of sufficient funds. The fueling management system 6 may transmit the prompt to the payment service 40 for routing to the payment system 4. The payment system 4 may verify sufficient funds in a financial institution account associated with the user. Where sufficient funds are in the financial institution account, the payment system 4 may generate a confirmation for the fueling management system 6. Once the fueling management system 6 receives the confirmation (e.g., via the payment service 40 from the payment system 4), the fueling management system 6 may generate the fuel reservation.
[0055] At step 1004, the fueling management system 6 may store the fuel reservation in a database 60. In some embodiments, the fueling management system 6 may store the fuel reservation (e.g., generated at step 1003) in a database 60 in association with a user identifier for the user who generated the request. In some embodiments, the database 60 may be the same as the database 60 which includes data corresponding to the filling stations 20. In some embodiments, the databases 60 may be different. The database 60 may be or include a list or ledger including user identifiers for registered users, fuel reservations for each registered user, and a reserved fuel price for each user. As the users generate subsequent requests, the fueling management system 6 may update the database 60 to reflect the subsequent reservations. Similarly, as the users consume reserved fuel, the fueling management system 6 may update the database 60 to reflect consumption of reserved fuel. Hence, the database 60 may be an up-to- date list including fuel reserves for a plurality of users. In some embodiments, steps 1002 through 1004 may be similar in some respects to (or include at least some of the steps included in) FIG. 5.
[0056] Referring now to FIG. 11 , depicted is a method 1100 for redeeming reserved fuel.
The method 1100 may be performed by the components described above with reference to FIG.
1 - FIG. 9G, such as the fueling management system 6, the payment system 4, the fuel provider system 14, and so forth. As a brief overview, at step 1101, the fueling management system 6 may receive a refuel request. At step 1102, the fueling management system 6 may determine an amount of fuel corresponding to the refuel request. At step 1103, the fueling management system 6 may release the amount of fuel from the predetermined amount of fuel.
[0057] At step 1101, the fueling management system 6 may receive a refuel request. In some embodiments, the fueling management system 6 may receive (e.g., via the communications interface from the fuel provider system 14) a refuel request including the user identifier associated with a user. The fueling management system 6 may receive the refuel request from a device associated with a user (e.g., via a mobile app 30 or web interface 32), from a filling station 20, etc. The refuel request may include the user identifier corresponding to a user. The user may be a business owner and the user identifier may be provided by a worker (e.g., a driver, for instance) associated with the business. In some embodiments, the user may be an individual who both initiates the request (e.g., as described above with reference to method 1000) and generates the refuel request to refuel their own vehicle.
[0058] In some embodiments, the fueling management system 6 may perform a look-up function using the user identifier from the refuel request in the database 60 to identify reserved fuel amounts and prices. The fueling management system 6 may identify the reserved fuel amounts associated with the user and reserved prices to determine whether the fueling management system 6 may satisfy the refuel request. For instance, in some embodiments, the refuel request may include a volume of fuel requested (e.g., a number of gallons, a full tank, etc,). The fueling management system 6 may compare the volume of fuel requested to the reserved fuel amounts associated with the user identifier. The fueling management system 6 may selectively approve the refuel request based on the comparison. For instance, the fueling management system 6 may deny the refuel request when the fuel reserves associated with the user identifier is less than the volume from the refuel request.
[0059] In some embodiments, the fueling management system 6 may generate a prompt for transmission to the device (e.g., which the user used to generate the refuel request) responsive to denying the refuel request. The prompt may cause the user to generate a second request (e.g., similar to the request described above at step 1001) to reserve a second predetermined amount of fuel for adding to the predetermined amount of fuel. The user may generate a second request (which may be processed by the fueling management system 6 in a manner similar to the method 1000 described above with reference to FIG. 10). The fueling management system 6 may update the database 60 to reflect additional fuel reserves from the second request.
[0060] In some embodiments, the refuel request may specify a pump at the filling station 20 in which the user intends to refuel their vehicle. The fueling management system 6 may transmit a signal to the fuel provider system 14 based on the specified pump. For instance, the fueling management system 6 may transmit a signal to the fuel provider adapter 38 for routing to the fuel provider backend 16 (which in turn routes the signal or a corresponding signal to the specified pump). The signal may cause the specified fuel pump to release fuel for refueling the vehicle.
As such, once the signal is received at the specified fuel pump, the user may be permitted to refuel their vehicle.
[0061] At step 1102, the fueling management system 6 may determine an amount of fuel corresponding to the refueling order. In some embodiments, the fueling management system 6 may determine an amount of fuel corresponding to the refuel request which was used to refuel a vehicle. The fueling management system 6 may receive the amount of fuel from the fuel provider backend 16 via the fuel provider adapter 38. In some instances, the amount of fuel may be the same as the amount of fuel specified in the refuel request (e.g., where the refuel request specifies a number of gallons and that number of gallons was used to refuel the vehicle). In some instances, the amount of fuel may be less than or greater than the amount of fuel specified in the refuel request (e.g., where the user over or underestimated the amount of fuel needed to refuel the vehicle). The fueling management system 6 may use the amount of fuel from the fuel provider backend 16 to deduct from the fuel reserves, as described in greater detail below.
[0062] At step 1103, the fueling management system 6 may release the amount of fuel from the predetermined amount of fuel. In some embodiments, the fueling management system 6 may release the amount of fuel corresponding to the refueling order from the predetermined amount of fuel previously-reserved by the user. The fueling management system 6 may release the amount of fuel received at step 1102 from the fuel reserves corresponding to the user identifier included in the refuel request. In some embodiments (such as where the user partially pays for the fuel reserves), the fueling management system 6 may trigger a transaction with the financial institution account of the user to pay for the remaining balance. For instance, the fueling management system 6 may send a payment request to the payment service 40 for routing to the payment system 4. The payment request may specify a balance due (e.g., the reserved price of fuel specified in the database 60 multiplied by the amount of fuel received at step 1102 less the pre-paid portion). The payment system 4 may cause funds to be transferred from a financial institution account corresponding to the user to a financial institution account corresponding to the filling station 20.
[0063] In some embodiments, the fueling management system 6 may release the amount of fuel (e.g., from step 1102) by deducting the amount of fuel from the fuel reserves (e.g., corresponding to the user identifier). The fueling management system 6 may update the fuel reservation (e.g., generated at step 1003 of method 1000) to include the predetermined amount of fuel less the amount of fuel received at step 1102. In some embodiments, the fueling management system 6 may update the fuel reservation by generating a new fuel reservation which includes the predetermined amount of fuel less the amount of fuel received at step 1102. The fueling management system 6 may store the updated fuel reservation in the database 60. As such, the database 60 may be updated to reflect new fuel reservations, consumed fuel, and so forth, corresponding to a user identifier for a user.
[0064] As utilized herein, the terms “approximately,” “about,” “substantially”, and similar terms are intended to have a broad meaning in harmony with the common and accepted usage by those of ordinary skill in the art to which the subject matter of this disclosure pertains. It should be understood by those of skill in the art who review this disclosure that these terms are intended to allow a description of certain features described and claimed without restricting the scope of these features to any precise numerical ranges provided. Accordingly, these terms should be interpreted as indicating that insubstantial or inconsequential modifications or alterations of the subject matter described and claimed are considered to be within the scope of the disclosure as recited in the appended claims.
[0065] It should be noted that the term “exemplary” and variations thereof, as used herein to describe various embodiments, are intended to indicate that such embodiments are possible examples, representations, or illustrations of possible embodiments (and such terms are not intended to connote that such embodiments are necessarily extraordinary or superlative examples).
[0066] The term “coupled” and variations thereof, as used herein, means the joining of two members directly or indirectly to one another. Such joining may be stationary (e.g., permanent or fixed) or moveable (e.g., removable or releasable). ¾jch joining may be achieved with the two members coupled directly to each other, with the two members coupled to each other using a separate intervening member and any additional intermediate members coupled with one another, or with the two members coupled to each other using an intervening member that is integrally formed as a single unitary body with one of the two members. If “coupled” or variations thereof are modified by an additional term (e.g., directly coupled), the generic definition of “coupled” provided above is modified by the plain language meaning of the additional term (e.g., “directly coupled” means the joining of two members without any separate intervening member), resulting in a narrower definition than the generic definition of “coupled” provided above. Such coupling may be mechanical, electrical, or fluidic.
[0067] The term “or,” as used herein, is used in its inclusive sense (and not in its exclusive sense) so that when used to connect a list of elements, the term “or” means one, some, or all of the elements in the list. Conjunctive language such as the phrase “at least one of X, Y, and Z,” unless specifically stated otherwise, is understood to convey that an element may be either X, Y, Z; X and Y; X and Z; Y and Z; or X, Y, and Z (i.e., any combination of X, Y, and Z). Thus, such conjunctive language is not generally intended to imply that certain embodiments require at least one of X, at least one of Y, and at least one of Z to each be present, unless otherwise indicated.
[0068] References herein to the positions of elements (e.g., “top,” “bottom,” “above,” “below”) are merely used to describe the orientation of various elements in the Figures. It should be noted that the orientation of various elements may differ according to other exemplary embodiments, and that such variations are intended to be encompassed by the present disclosure.
[0069] The hardware and data processing components used to implement the various processes, operations, illustrative logics, logical blocks, modules and circuits described in connection with the embodiments disclosed herein may be implemented or performed with a general purpose single- or multi-chip processor, a digital signal processor (DSP), an application specific integrated circuit (ASIC), a field programmable gate array (FPGA), or other programmable logic device, discrete gate or transistor logic, discrete hardware components, or any combination thereof designed to perform the functions described herein. A general purpose processor may be a microprocessor, or, any conventional processor, controller, microcontroller, or state machine. A processor also may be implemented as a combination of computing devices, such as a combination of a DSP and a microprocessor, a plurality of microprocessors, one or more microprocessors in conjunction with a DSP core, or any other such configuration. In some embodiments, particular processes and methods may be performed by circuitry that is specific to a given function. The memory (e.g., memory, memory unit, storage device) may include one or more devices (e.g., RAM, ROM, Flash memory, hard disk storage) for storing data and/or computer code for completing or facilitating the various processes, layers and modules described in the present disclosure. The memory may be or include volatile memory or non-volatile memory, and may include database components, object code components, script components, or any other type of information structure for supporting the various activities and information structures described in the present disclosure. According to an exemplary embodiment, the memory is communicably connected to the processor via a processing circuit and includes computer code for executing (e.g., by the processing circuit or the processor) the one or more processes described herein.
[0070] The present disclosure contemplates methods, systems and program products on any machine-readable media for accomplishing various operations. The embodiments of the present disclosure may be implemented using existing computer processors, or by a special purpose computer processor for an appropriate system, incorporated for this or another purpose, or by a hardwired system. Embodiments within the scope of the present disclosure include program products comprising machine-readable media for carrying or having machine-executable instructions or data structures stored thereon. Such machine-readable media can be any available media that can be accessed by a general purpose or special purpose computer or other machine with a processor. By way of example, such machine-readable media can comprise RAM, ROM, EPROM, EEPROM, or other optical disk storage, magnetic disk storage or other magnetic storage devices, or any other medium which can be used to carry or store desired program code in the form of machine-executable instructions or data structures and which can be accessed by a general purpose or special purpose computer or other machine with a processor. Combinations of the above are also included within the scope of machine-readable media. Machine-executable instructions include, for example, instructions and data which cause a general purpose computer, special purpose computer, or special purpose processing machines to perform a certain function or group of functions.
[0071] Although the figures and description may illustrate a specific order of method steps, the order of such steps may differ from what is depicted and described, unless specified differently above. Also, two or more steps may be performed concurrently or with partial concurrence, unless specified differently above. Such variation may depend, for example, on the software and hardware systems chosen and on designer choice. All such variations are within the scope of the disclosure. Likewise, software implementations of the described methods could be accomplished with standard programming techniques with rule-based logic and other logic to accomplish the various cohnection steps, processing steps, comparison steps, and decision steps. It is important to note that the construction and arrangement of the systems and methods of refueling a vehicle as shown in the various exemplary embodiments is illustrative only. Additionally, any element disclosed in one embodiment may be incorporated or utilized with any other embodiment disclosed herein. It should be appreciated that other elements of the various embodiments may be incorporated or utilized with any of the other embodiments disclosed herein.

Claims

WHAT IS CLAIMED IS:
1. A system for refueling a vehicle, the system comprising: a fueling management system maintaining a database including data corresponding to current fuel prices for each of a plurality of filling stations; a communications interface communicably coupling the fueling management system to a device corresponding to a user and to a fuel provider system corresponding to each of the plurality of filling stations; wherein the fueling management system is configured to: receive, via the communications interface from the device, a request to reserve a predetermined amount of fuel at a current price for refueling a vehicle at a subsequent date; generate a fuel reservation corresponding to the request and associated with the user, the fuel reservation including the predetermined amount of fuel and the current price; and store the fuel reservation in the database in association with a user identifier for the user.
2. The system of claim 1, further comprising: a payment service communicably coupling the fueling management system to a payment system associated with a financial institution, wherein the fueling management system generates the fuel reservation responsive to receiving a confirmation from the payment service.
3. The system of claim 1, wherein the fueling management system is configured to: receive, via the communications interface from the fuel provider system, a refuel request including the user identifier; determine an amount of fuel corresponding to the refuel request which was used to refuel a vehicle; and release the amount of fuel corresponding to the refuel request from the predetermined amount of fuel.
4. The system of claim 3, wherein the fueling management system is configured to release the amount of fuel by deducting the amount of fuel from the predetermined amount of fuel, and updating the fuel reservation to include the predetermined amount of fuel less the amount of fuel, and storing the updated fuel reservation in the database.
5. The system of claim 3, wherein the refuel request includes a volume of fuel requested, and wherein the fueling management system is configured to approve or deny the refuel request based on a comparison of the predetermined amount of fuel to the volume from the refuel request.
6. The system of claim 5, wherein the fueling management system is configured to deny the refuel request when the predetermined amount of fuel is less than the volume from the refuel request.
7. The system of claim 5, wherein the fueling management system is configured to generate a prompt for transmission to the device responsive to the predetermined amount of fuel being less than the volume from the refuel request, to cause the user to generate a second request to reserve a second predetermined amount of fuel for adding to the predetermined amount of fuel.
8. The system of claim 3, wherein the refuel request specifies a pump at a filling station of the plurality of filling stations, and wherein the fueling management system is configured to transmit a signal to the fuel provider system, to cause the fuel provider system to provide fuel via the specified pump to the user according to the refuel request.
9. The system of claim 1 , wherein the request specifies one of the plurality of filling stations, and wherein the fuel reservation includes the predetermined amount of fuel and the current price for the specified filling station.
10. The system of claim 1, wherein the fueling management system is configured to receive, from the fuel provider system, an updated list of filling stations, and wherein the fueling management system is configured to update the database to include refreshed data corresponding to the updated list of filling stations.
11. A method for refueling a vehicle, the method comprising: maintaining, by a fueling management system, a database including data corresponding to current fuel prices for each of plurality of filling stations; receiving, by the fueling management system via a communications interface from a device corresponding to a user, a request to reserve a predetermined amount of fuel at a first price for refueling a vehicle at a subsequent date, wherein the first price is based at least partially on the data corresponding to the current fuel prices; generating a fuel reservation corresponding to the request and associated with the user, the fuel reservation including the predetermined amount of fuel and the first price; and storing the fuel reservation in the database in association with a user identifier for the user.
12. The method of claim 11, wherein the fueling management system is communicably coupled to a payment system associated with a financial institution via a payment, and wherein the fueling management system generates the fuel reservation responsive to receiving a confirmation from the payment system via the payment service.
13. The method of claim 11 , further comprising: receiving, via the communications interface from the fuel provider system, a refuel request including the user identifier; determining an amount of fuel corresponding to the refuel request which was used to refuel a vehicle; and releasing the amount of fuel corresponding to the refuel request from the predetermined amount of fuel.
14. The method of claim 13, releasing the amount of fuel comprises: deducting the amount of fuel from the predetermined amount of fuel; updating the fuel reservation to include the predetermined amount of fuel less the amount of fuel; and storing the updated fuel reservation in the database.
15. The method of claim 13, wherein the refuel request includes a volume of fuel requested, the method further comprising: comparing the volume from the refuel request to the predetermined amount of fuel for selectively approving the refuel request.
16. The method of claim 15, further comprising denying the refuel request when the predetermined amount of fuel is less than the volume from the refuel request.
17. The method of claim 15, further comprising generating a prompt for transmission to the device responsive to the predetermined amount of fuel being less than the volume from the refuel request, to cause the user to generate a second request to reserve a second predetermined amount of fuel for adding to the predetermined amount of fuel.
18. The method of claim 13, wherein the refuel request specifies a pump at a filling station of the plurality of filling stations, the method further comprising: transmitting a signal to the fuel provider system, to cause the fuel provider system to provide fuel via the specified pump to the user according to the refuel request.
19. The method of claim 11 , wherein the request specifies one of the plurality of filling stations, and wherein the fuel reservation includes the predetermined amount of fuel and the current price for the specified filling station, wherein the first price is the current price for the specified filing station.
20. The method of claim 11 , further comprising: receiving, from the fuel provider system, an updated list of filling stations; and updating the database to include refreshed data corresponding to the updated list of filling stations.
PCT/RU2019/000878 2019-12-03 2019-12-03 Systems and methods for refueling vehicles WO2021112703A1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
PCT/RU2019/000878 WO2021112703A1 (en) 2019-12-03 2019-12-03 Systems and methods for refueling vehicles

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/RU2019/000878 WO2021112703A1 (en) 2019-12-03 2019-12-03 Systems and methods for refueling vehicles

Publications (1)

Publication Number Publication Date
WO2021112703A1 true WO2021112703A1 (en) 2021-06-10

Family

ID=69411492

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/RU2019/000878 WO2021112703A1 (en) 2019-12-03 2019-12-03 Systems and methods for refueling vehicles

Country Status (1)

Country Link
WO (1) WO2021112703A1 (en)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2010096502A1 (en) * 2009-02-17 2010-08-26 Coulomb Technologies, Inc. Transmitting notification messages for an electric vehicle charging network
AU2012202640A1 (en) * 2011-05-18 2012-12-06 General Electric Company Systems and methods for auctioning charging times for electric vehicles
KR20140125967A (en) * 2013-04-19 2014-10-30 중소기업은행 Refuel reservation system and method
US20140337172A1 (en) * 2010-09-17 2014-11-13 Hydrogen-Xt, Inc. Fuel distribution network

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2010096502A1 (en) * 2009-02-17 2010-08-26 Coulomb Technologies, Inc. Transmitting notification messages for an electric vehicle charging network
US20140337172A1 (en) * 2010-09-17 2014-11-13 Hydrogen-Xt, Inc. Fuel distribution network
AU2012202640A1 (en) * 2011-05-18 2012-12-06 General Electric Company Systems and methods for auctioning charging times for electric vehicles
KR20140125967A (en) * 2013-04-19 2014-10-30 중소기업은행 Refuel reservation system and method

Similar Documents

Publication Publication Date Title
AU2011205127B2 (en) Intelligent estimates in authorization
US8260694B1 (en) System, method, and computer program for managing transaction billing across a plurality of billing sources utilizing an interface to configure advice-of-charge
US9076139B2 (en) Apparatus for the delivery of a product
US8185449B2 (en) System and method of providing fuel
US20090055269A1 (en) Methods and Systems for Preauthorizing Venue-Based Credit Accounts
US20120036045A1 (en) Methods and Systems for Reserving and Completing Purchases
US20180053178A1 (en) Method for facilitating dispensing fuel into a vehicle
US20130282500A1 (en) Vehicle fueling system and method
JP2012513636A (en) System and method for roaming billing for electric vehicles
WO2008102935A1 (en) Discount payment method and system using a temporary card number
EA003681B1 (en) Process and system for remote payments and transactions in real time by mobile telephone
KR20140016053A (en) Transportation matching system and transportation matching method
CN104866910A (en) APP online refueling method
KR20170054993A (en) Method for prepaid refueling reservation using refueling history
AU2012100463A4 (en) Renewable resource distribution management system
WO2012162153A2 (en) System and method for receiver staged money transfer transactions
CN105741427A (en) Self-service oiling machine mobile payment method and device supporting filling-up mode
CN104700273A (en) Gas station cost payment method and gas station cost payment system using same
US20140279228A1 (en) System and method for providing online authentication codes usable to purchase goods and/or services
WO2008092407A1 (en) A value data exchange system
US11361301B2 (en) System and method for service transaction
WO2018000721A1 (en) Payment method, and related device
US20150149355A1 (en) System and method for staging voucher transfers
WO2021112703A1 (en) Systems and methods for refueling vehicles
CN108055359B (en) Method, device and system for managing accessories of gas station equipment

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 19845837

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 19845837

Country of ref document: EP

Kind code of ref document: A1