This application is a National Stage of International Application No. PCT/JP2012/061482 filed Apr. 27, 2012, claiming priority based on Japanese Patent Application No. 2011-102520 filed Apr. 28, 2011, the contents of all of which are incorporated herein by reference in their entirety.
The present invention relates to a payment module, a payment method, a program, and an information recording medium.
There is known an electronic payment system in which electronic information (electronic value) having a monetary value is held in an electronic value holding medium such as an IC chip and the electronic value holding medium holding the electronic value is held over a payment terminal to make a payment. In such electronic payment system, the payment is made by subtracting a payment amount from a balance of the electronic value held in the electronic value holding medium. However, when the balance of the electronic value is below the payment amount, the payment cannot be made. To address this, there have conventionally been proposed a technology of automatically recharging the electronic value when the balance of the electronic value held in the electronic value holding medium becomes equal to or less than a certain amount (for example, Patent Literature 1 below), and a technology of reloading a virtual change purse storing electronic money for use in paying a small amount of money with electronic money from a virtual wallet for use in paying a large amount of money (for example, Patent Literature 2 below).
A plurality of kinds of electronic values are available, of which a payment terminal may accept only certain kinds of electronic values. Therefore, it is common to recharge each of the plurality of kinds of electronic values in an electronic value holding medium in advance and select one of the electronic values accepted by the payment terminal for use as appropriate. Conventionally, a total amount of balances dispersedly held for the plurality of different electronic values in the electronic value holding medium as described above cannot be used for a payment.
The present invention has been made in view of the above-mentioned problem, and an object of the present invention is therefore to provide a payment module capable of allowing a total amount of money dispersedly recharged for a plurality of kinds of electronic values to be used for a payment regardless of which of the electronic values is used for the payment, a payment method, a program, and an information recording medium.
In order to achieve the above-mentioned object, according to of the present invention, there is provided a payment module, including: a plurality of balance change means for changing balances of a plurality of stored electronic values, respectively; storage means for storing a balance of a utility electronic value; first reload amount acquisition means for acquiring a first reload amount required for deducting a required amount, which is specified in balance change information input for one electronic value of the plurality of stored electronic values from an external, from a balance of the one electronic value; second reload amount acquisition means for acquiring a second reload amount required for deducting the acquired first reload amount from the balance of the utility electronic value stored in the storage means; first balance change information generation means for generating, in order that a total amount of money deducted from balances of other electronic values of the plurality of stored electronic values than the one electronic value equals the acquired second reload amount, at least one piece of balance change information for decreasing a balance of at least one electronic value of the other electronic values, respectively; and second balance change information generation means for generating, when in response to the generated at least one piece of balance change information the balance of the corresponding at least one electronic value is changed by corresponding at least one of the plurality of balance change means, respectively, balance change information for increasing the balance of the utility electronic value by the second reload amount, decreasing the balance of the utility electronic value by the first reload amount, and increasing the balance of the one electronic value by the first reload amount in the storage means, in which one of the plurality of balance change means corresponding to the one electronic value changes, in response to the balance change information generated by the second balance change information generation means and the balance change information input from the external, the balance of the one electronic value.
According to an aspect of the present invention, the above-mentioned payment module may further include first reload amount output means for determining and outputting the first reload amount based on the balance of the one electronic value and the required amount.
According to an aspect of the present invention, the first reload amount output means may determine a difference, which is obtained by subtracting the balance of the one electronic value from the required amount, as the first reload amount.
According to an aspect of the present invention, the above-mentioned payment module may further include reload amount output means for outputting the required amount as the first reload amount.
According to an aspect of the present invention, the above-mentioned payment module may further include second reload amount output means for determining and outputting the second reload amount based on the balance of the utility electronic value and the first reload amount.
According to an aspect of the present invention, the second reload amount output means may determine a difference, which is obtained by subtracting the balance of the utility electronic value from the first reload amount, as the second reload amount.
According to an aspect of the present invention, the above-mentioned payment module may further include second reload amount output means for outputting the first reload amount as the second reload amount.
According to an aspect of the present invention, the above-mentioned payment module may further include: a plurality of balance output means for reading and outputting the balances of the plurality of stored electronic values, respectively; first balance acquisition means for acquiring, when a balance request is input for one electronic value of the plurality of stored electronic values from the external, the balance of the utility electronic value stored in the storage means; balance request issuance means for issuing, when the balance request is input for the one electronic value of the plurality of stored electronic values from the external, at least one balance request to acquire a balance of at least one electronic value of the plurality of stored electronic values other than the one electronic value, respectively; and second balance acquisition means for acquiring, when in response to the issued at least one balance request the balance of the corresponding at least one electronic value is output from corresponding at least one of the plurality of balance output means, respectively, a total amount of the output balance of the at least one electronic value and the acquired balance of the utility electronic value, in which one of the plurality of balance output means corresponding to the one electronic value may output a combined amount of a balance of the one electronic value and the total amount acquired by the second balance acquisition means as the balance of the one electronic value.
According to the present invention, there is provided a payment method for use in a payment module including a plurality of balance change means for changing balances of a plurality of stored electronic values, respectively, and storage means for storing a balance of a utility electronic value, the payment method including: a first reload amount acquisition step of acquiring a first reload amount required for deducting a required amount, which is specified in balance change information input for one electronic value of the plurality of stored electronic values from an external, from a balance of the one electronic value; a second reload amount acquisition step of acquiring a second reload amount required for deducting the acquired first reload amount from the balance of the utility electronic value stored in the storage means; a first balance change information generation step of generating, in order that a total amount of money deducted from balances of other electronic values of the plurality of stored electronic values than the one electronic value equals the acquired second reload amount, at least one piece of balance change information for decreasing a balance of at least one electronic value of the other electronic values, respectively; and a second balance change information generation step of generating, when in response to the generated at least one piece of balance change information the balance of the corresponding at least one electronic value is changed by corresponding at least one of the plurality of balance change means, respectively, balance change information for increasing the balance of the utility electronic value by the second reload amount, decreasing the balance of the utility electronic value by the first reload amount, and increasing the balance of the one electronic value by the first reload amount in the storage means, in which one of the plurality of balance change means corresponding to the one electronic value changes, in response to the balance change information generated by the second balance change information generation step and the balance change information input from the external, the balance of the one electronic value.
According to the present invention, there is provided a program for causing a computer, which functions as a payment module including a plurality of balance change means for changing balances of a plurality of stored electronic values, respectively, and storage means for storing a balance of a utility electronic value, to function as: first reload amount acquisition means for acquiring a first reload amount required for deducting a required amount, which is specified in balance change information input for one electronic value of the plurality of stored electronic values from an external, from a balance of the one electronic value; second reload amount acquisition means for acquiring a second reload amount required for deducting the acquired first reload amount from the balance of the utility electronic value stored in the storage means; first balance change information generation means for generating, in order that a total amount of money deducted from balances of other electronic values of the plurality of stored electronic values than the one electronic value equals the acquired second reload amount, at least one piece of balance change information for decreasing a balance of at least one electronic value of the other electronic values, respectively; and second balance change information generation means for generating, when in response to the generated at least one piece of balance change information the balance of the corresponding at least one electronic value is changed by corresponding at least one of the plurality of balance change means, respectively, balance change information for increasing the balance of the utility electronic value by the second reload amount, decreasing the balance of the utility electronic value by the first reload amount, and increasing the balance of the one electronic value by the first reload amount in the storage means, in which one of the plurality of balance change means corresponding to the one electronic value changes, in response to the balance change information generated by the second balance change information generation means and the balance change information input from the external, the balance of the one electronic value.
According to the present invention, there is provided an information recording medium having recorded thereon a program for causing a computer, which functions as a payment module including a plurality of balance change means for changing balances of a plurality of stored electronic values, respectively, and storage means for storing a balance of a utility electronic value, to function as: first reload amount acquisition means for acquiring a first reload amount required for deducting a required amount, which is specified in balance change information input for one electronic value of the plurality of stored electronic values from an external, from a balance of the one electronic value; second reload amount acquisition means for acquiring a second reload amount required for deducting the acquired first reload amount from the balance of the utility electronic value stored in the storage means; first balance change information generation means for generating, in order that a total amount of money deducted from balances of other electronic values of the plurality of stored electronic values than the one electronic value equals the acquired second reload amount, at least one piece of balance change information for decreasing a balance of at least one electronic value of the other electronic values, respectively; and second balance change information generation means for generating, when in response to the generated at least one piece of balance change information the balance of the corresponding at least one electronic value is changed by corresponding at least one of the plurality of balance change means, respectively, balance change information for increasing the balance of the utility electronic value by the second reload amount, decreasing the balance of the utility electronic value by the first reload amount, and increasing the balance of the one electronic value by the first reload amount in the storage means, in which one of the plurality of balance change means corresponding to the one electronic value changes, in response to the balance change information generated by the second balance change information generation means and the balance change information input from the external, the balance of the one electronic value.
According to the aspect of the present invention, the total amount of money dispersedly recharged for the plurality of kinds of electronic values may be used for the payment regardless of which of the electronic values is used for the payment.
A description is given below of embodiment modes (hereinafter referred to as embodiments) of the present invention with reference to the drawings.
(Configuration Example of Electronic Value Payment System)
The user terminal 10 is connected to the electronic value servers 50-1 to 50-N and the utility electronic value server 60 via a network 90 so as to be mutually communicable. Further, the electronic value payment terminals 70-1 to 70-N and the utility electronic value payment terminal 80 are connected to the corresponding electronic value servers 50-1 to 50-N and the utility electronic value server 60, respectively, via the network 90 or a dedicated line (not shown) so as to be mutually communicable.
The electronic value server 50-i (i=1 to N) performs issuance of the i-th electronic value, transfer (such as recharge) of the i-th electronic value, management of the used i-th electronic value, and the like.
The utility electronic value server 60 performs issuance the utility electronic value, transfer (such as recharge) of the utility electronic value, management of the used utility electronic value, and the like. Note that, in the embodiments of the present invention, an exchange rate between each of the first to N-th electronic values and the utility electronic value (a ratio indicating how many units of the utility electronic value are exchanged for one unit (such as yen or point) of each of the first to N-th electronic values) is 1:1, but the present invention is not limited thereto.
The electronic value payment terminal 70-i (i=1 to N) performs non-contact communication to/from the user terminal 10 or an IC card including an IC chip holding the i-th electronic value and performs payment processing of subtracting a payment amount from a balance of the i-th electronic value held in the IC chip. In the embodiments of the present invention, for simplicity, the electronic value payment terminal 70-i is a dedicated terminal for a payment with the i-th electronic value, but may be a payment terminal that accepts payments with a plurality of kinds of electronic values.
The utility electronic value payment terminal 80 performs non-contact communication to/from the user terminal 10 or an IC card including the IC chip holding the utility electronic value and performs payment processing of subtracting a payment amount from a balance of the utility electronic value held in the IC chip.
The user terminal 10 is an information processing terminal such as a mobile phone having mounted therein the IC chip capable of holding electronic values. For example, the user terminal 10 may perform wireless communication to/from a base station apparatus (not shown) to connect to the network 90, access the electronic value servers 50-1 to 50-N and the utility electronic value server 60, and recharge the first to N-th electronic values and the utility electronic value, respectively, and may perform non-contact communication to/from the electronic value payment terminals 70-1 to 70-N and the utility electronic value payment terminal 80 to execute a payment with the recharged first to N-th electronic values and the recharged utility electronic value, respectively.
(Configuration Example of User Terminal 10)
The control unit 12 includes a CPU to execute various kinds of arithmetic processing and control the units of the user terminal 10 based on programs stored in the storage unit 14.
The storage unit 14 stores an operating system of the user terminal 10 and programs and data for using the first to N-th electronic values and the utility electronic value, and is also used as a work memory for the control unit 12.
The wireless communication unit 16 communicates wirelessly to/from the base station apparatus (not shown) to perform data communication to/from the electronic value servers 50-1 to 50-N and the utility electronic value server 60 via the base station apparatus.
The display unit 18 is constituted of, for example, a display device such as a liquid crystal display, and displays various kinds of screens based on graphic data generated by processing of the control unit 12.
The input unit 20 is constituted of, for example, a keyboard or a touch panel, and receives an input of an operation by a user.
The IC chip 22 holds the first to N-th electronic values and the utility electronic value and performs non-contact communication to/from the electronic value payment terminals 70-1 to 70-N and the utility electronic value payment terminal 80 to execute the payment processing. Next, details of the IC chip 22 are described.
(Configuration of IC Chip 22)
The wireless communication circuit 24 includes, for example, an antenna and a high-frequency circuit, and performs wireless communication over short distance (for example, within several tens of centimeters) to/from the electronic value payment terminals 70-1 to 70-N and the utility electronic value payment terminal 80.
The CPU 26 is a central processing unit for executing arithmetic processing and controlling the units of the IC chip 22 based on a control program stored in the ROM 28, and electronic value apps 1 to N, a utility electronic value app, and the like stored in the EEPROM 32.
The ROM 28 is a memory capable only of reading data and stores, for example, the control program and control data of the IC chip 22.
The RAM 30 is a memory capable of writing and reading data and is used as a working memory for processing by the CPU 26 or a temporary data storage area.
The EEPROM 32 is a non-volatile memory capable of writing and reading data. The EEPROM 32 stores, for example, payment programs for the electronic values and the electronic values.
(Configuration Example of EEPROM 32)
The electronic value app A-i (i=1 to N) includes, for example, an electronic value storage area 40-i, a key information storage area 42-i, and a program storage area 44-i, and each of the storage areas is encrypted by an encryption key specific to the i-th electronic value. In order to read, write, and execute data and programs stored in each of the above-mentioned storage areas, the encryption key for the i-th electronic value may be required.
The electronic value storage area 40-i stores, for example, the balance and usage log data of the i-th electronic value.
The key information storage area 42-i stores, for example, information on an encryption key for the utility electronic value.
The program storage area 44-i stores, for example, for each command, a program describing processing to be executed when the command is received. For example, the program storage area 44-i stores programs for processing of inquiring the balance of the electronic value stored in the electronic value storage area 40-i, processing of adding a specified recharge amount to the balance of the electronic value stored in the electronic value storage area 40-i, processing of subtracting a specified payment amount from the balance of the electronic value stored in the electronic value storage area 40-i, and various kinds of processing for cooperating with the utility electronic value app UA. For example, authentication required when the electronic value app is to cooperate with the utility electronic value app UA may use the key information for the utility electronic value stored in the key information storage area 42-i. Note that, in place of or in addition to the program describing the above-mentioned addition processing and the program describing the above-mentioned subtraction processing, a program describing balance overwrite processing to be executed when a command to overwrite the balance of the electronic value is received may be stored. Note that, in the embodiments of the present invention, an add command, a subtract command, and an overwrite command for the electronic value correspond to balance change information for the electronic value. In the following embodiments, it is assumed that the balance change information is the add command and the subtract command.
The utility electronic value app UA includes, for example, an electronic value storage area 40U, a key information storage area 42U, and a program storage area 44U, and each of the storage areas is encrypted based on the encryption key specific to the utility electronic value. In order to read, write, and execute data and programs stored in each of the above-mentioned storage areas, the encryption key for the utility electronic value may be required.
The electronic value storage area 40U stores, for example, the balance and usage log data of the utility electronic value.
The key information storage area 42U stores, for example, information on the encryption key for each of the first to N-th electronic values.
The program storage area 44U stores, for each command, a program for processing the command when the command is received. For example, the program storage area 44U stores programs for processing of inquiring the balance of the utility electronic value stored in the electronic value storage area 40U, processing of adding a specified recharge amount to the balance of the utility electronic value stored in the electronic value storage area 40U, processing of subtracting a specified payment amount from the balance of the utility electronic value stored in the electronic value storage area 40U, and various kinds of processing for cooperating with the electronic value apps A-1 to A-N. Note that, when the utility electronic value app UA is to cooperate with the electronic value apps A-1 to A-N, authentication may be performed by using the key information of each of the first to N-th electronic values stored in the key information storage area 42U. Further, in place of or in addition to the program describing the above-mentioned addition processing and the program describing the above-mentioned subtraction processing, a program describing balance overwrite processing to be executed when a command to overwrite the balance of the utility electronic value is received may be stored.
The setting information S stored in the EEPROM 32 may include, for example, setting information on recharging the electronic values. Specifically, the setting information S may include a setting for selecting one of the first to N-th electronic values to be used for recharging the utility electronic value (electronic value selection setting), a setting for automatically recharging the utility electronic value (automatic recharge setting), and the like. An example of each of the electronic value selection setting and the automatic recharge setting is described below.
In the electronic value selection setting, for example, orders of priority may be set for the first to N-th electronic values, respectively. In this case, processing of recharging the utility electronic value with the electronic value selected in a descending order of priority may be executed until a specified condition is satisfied. Note that, the orders of priority may be set in advance for the first to N-th electronic values, or may be set based on balances of the first to N-th electronic values. Alternatively, in the electronic value selection setting, for example, a plurality of (for example, all) electronic values may be set to be selected from among the first to N-th electronic values. In this case, a recharge amount to be recharged to the utility electronic value may be equally divided among the selected plurality of electronic values, or may be divided at a ratio corresponding to the respective balances of the selected plurality of electronic values.
In the automatic recharge setting, for example, a condition to be satisfied to start automatically recharging the utility electronic value (automatic recharge start condition) and a recharge amount for the automatic recharge (automatic recharge amount) may be set. The automatic recharge start condition may be, for example, that the balance of the utility electronic value is equal to or less than a threshold value (or is less than the threshold value). Note that, a timing for determining the automatic recharge start condition may be a predetermined time, after a predetermined period has elapsed since the last recharge, immediately after the payment, or the like. Alternatively, the automatic recharge amount may be a predetermined amount (for example, upper limit amount or set amount registered in advance by the user), an amount obtained by subtracting the current balance from a predetermined amount, an arbitrary set amount, or the like.
(Flowchart of Automatic Recharge Processing)
Next referring to a flowchart illustrated in
As illustrated in
Next, the user terminal 10 waits when the timing for determining the automatic recharge (for example, the timing when a predetermined time interval has elapsed since the last determination) has not arrived (S102: N), and acquires the balance of the utility electronic value held in the IC chip 22 (S103) when the above-mentioned determination timing has arrived (S102: Y). Then, the user terminal 10 returns to S102 when the acquired balance does not satisfy the automatic recharge start condition set in S101 (for example, the acquired balance is equal to or more than X yen) (S104: N), and sets the recharge amount based on the set automatic recharge amount setting (S105) when the acquired balance satisfies the automatic recharge start condition (for example, the acquired balance is less than X yen) (S104: Y). Then, the user terminal 10 requests the utility electronic value server 60 to recharge with the recharge amount set in S105 (S106), and when allowed to recharge by the utility electronic value server 60, adds the recharge amount set in S105 to the balance of the utility electronic value (S107). The user terminal 10 returns to S102 again after completing the recharge.
According to the automatic recharge processing described above, the balance of the electronic value (for example, utility electronic value) held in the user terminal 10 may be controlled so as not to fall below a certain amount.
(First Embodiment)
Next referring to a sequence chart illustrated in
As illustrated in
The electronic value app A-M calculates a total amount of balances by summing the balance of the utility electronic value received in S203 and the balance of the M-th electronic value (S204), and transmits the total amount of balances to the electronic value payment terminal 70-M (S205). When the total amount of balances is equal to or more than the payment amount, the electronic value payment terminal 70-M transmits a payment command specifying the payment amount (required amount) (S206).
When receiving the above-mentioned payment command, the electronic value app A-M provides the utility electronic value app UA with the payment amount specified in the payment command (S207).
The utility electronic value app UA sets a difference between the payment amount and the balance of the M-th electronic value as the recharge amount (reload amount), and subtracts the recharge amount from the balance of the utility electronic value (S208). Note that, the recharge amount may be an amount equal to or more than the difference between the payment amount and the balance of the M-th electronic value, or the payment amount specified in the payment command may be directly set as the recharge amount. The utility electronic value app UA newly issues the recharge amount's worth of the M-th electronic value (S209), and requests the electronic value app A-M to add the issued recharge amount's worth to the M-th electronic value (S210). In this case, the utility electronic value app UA generates and outputs the add command (balance change information) to increase the balance of the M-th electronic value.
The electronic value app A-M adds, in response to the generated add command, the recharge amount to the balance of the M-th electronic value (S211), and notifies the utility electronic value app UA of the processing result (success/failure) (S212). Further, the electronic value app A-M subtracts, in response to the payment command input from the electronic value payment terminal 70-M, the payment amount from the balance of the M-th electronic value after the addition to the balance (S213), and transmits the processing result (success/failure) to the electronic value payment terminal 70-M (S214).
The utility electronic value app UA may perform the processing of S207 and subsequent steps as follows. For example, the utility electronic value app UA may check, after the payment amount is provided from the electronic value app A-M, whether or not the balance of the utility electronic value can afford the recharge amount. Then, when the balance of the utility electronic value can afford the recharge amount, the utility electronic value app UA may issue the recharge amount's worth of the M-th electronic value, and request the electronic value app A-M to add the issued recharge amount's worth to the M-th electronic value. Then, the electronic value app A-M may add the recharge amount to the balance of the M-th electronic value, and notify the utility electronic value app UA of the processing result (success/failure). Then, when receiving the notification of the successful addition from the electronic value app A-M, the utility electronic value app UA may subtract the recharge amount from the balance of the utility electronic value. Thereafter, the electronic value app A-M may subtract the payment amount from the balance of the M-th electronic value after the addition to the balance, and transmit the processing result (success/failure) to the electronic value payment terminal 70-M.
According to the first embodiment described above, regardless of which of the electronic values stored in the IC chip 22 in the user terminal 10 is used for the payment, as long as the balance of the utility electronic value is sufficient, the balance of the used electronic value is prevented from becoming insufficient. Note that, when the automatic recharge processing described above is applied to the utility electronic value, the balance of the utility electronic value is prevented from falling below the certain amount, and such a situation that the balance is insufficient at the time of the payment is avoided. Next, modified examples of the first embodiment are described.
(Modified Example 1 of First Embodiment)
When the overwrite command is used as the balance change information for the electronic value, the following processing may be performed inside the IC chip 22. An example in which a payment is performed preferentially from the balance of the M-th electronic value is described here.
When receiving the payment command (overwrite command), the electronic value app A-M provides the utility electronic value app UA with a rewrite amount specified in the payment command. The utility electronic value app UA calculates a difference P obtained by subtracting the payment amount (amount of money obtained by subtracting the rewrite amount from the amount of money returned as the balance) from the balance of the M-th electronic value. In this case, it is assumed that the difference P is a negative number (the balance of the M-th electronic value alone is insufficient for the payment amount).
The utility electronic value app UA generates and outputs the overwrite command (balance change information) to subtract an absolute value of the difference P from the balance of the utility electronic value and rewrite the balance of the M-th electronic value with 0. The electronic value app A-M rewrites the balance of the M-th electronic value in response to the generated overwrite command, and notifies the utility electronic value app UA of the processing result. Further, the electronic value app A-M only transmits the processing result to the electronic value payment terminal 70-M without performing the processing resulting from the payment command input from the electronic value payment terminal 70-M.
Note that, when the difference P is a non-negative number (the balance of the M-th electronic value alone is sufficient for the payment amount), the utility electronic value app UA generates and outputs the overwrite command (balance change information) to rewrite the balance of the M-th electronic value with the difference P. The electronic value app A-M rewrites the balance of the M-th electronic value in response to the generated overwrite command, and notifies the utility electronic value app UA of the processing result. Further, the electronic value app A-M only transmits the processing result to the electronic value payment terminal 70-M without performing the processing resulting from the payment command input from the electronic value payment terminal 70-M.
(Modified Example 2 of First Embodiment)
As in the above-mentioned Modified Example 1, when the overwrite command is used as the balance change information for the electronic value, the following processing may be performed inside the IC chip 22. An example in which a payment is performed preferentially from the balance of the utility electronic value is described here.
When receiving the payment command (overwrite command), the electronic value app A-M provides the utility electronic value app UA with a rewrite amount specified in the payment command. The utility electronic value app UA calculates a difference Q obtained by subtracting the payment amount (amount of money obtained by subtracting the rewrite amount from the amount of money returned as the balance) from the balance of the utility electronic value. In this case, it is assumed that the difference Q is a negative number (the balance of the utility electronic value alone is insufficient for the payment amount).
The utility electronic value app UA rewrites the balance of the utility electronic value with 0, and generates and outputs the overwrite command (balance change information) to rewrite the balance of the M-th electronic value to an amount after an absolute value of the difference Q is subtracted therefrom. The electronic value app A-M rewrites the balance of the M-th electronic value in response to the generated overwrite command, and notifies the utility electronic value app UA of the processing result. Further, the electronic value app A-M only transmits the processing result to the electronic value payment terminal 70-M without performing the processing resulting from the payment command input from the electronic value payment terminal 70-M.
Note that, when the difference Q is a non-negative number (the balance of the utility electronic value alone is sufficient for the payment amount), the utility electronic value app UA rewrites the balance of the utility electronic value with the difference Q. The electronic value app A-M only transmits the processing result to the electronic value payment terminal 70-M without performing the processing resulting from the payment command input from the electronic value payment terminal 70-M.
(Second Embodiment)
Next referring to a sequence chart illustrated in
As illustrated in
The utility electronic value app UA sums the received respective balances of the first to N-th electronic values and the balance of the utility electronic value to calculate the total amount of balances (S304), and transmits the total amount of balances to the utility electronic value payment terminal 80 (S305). When the total amount of balances is equal to or more than the payment amount, a payment command specifying a payment amount (required amount) is transmitted from the utility electronic value payment terminal 80 (S306).
Next, when receiving the above-mentioned payment command, the utility electronic value app UA selects an unselected electronic value (in this case, i-th electronic value) from among the first to N-th electronic values (S307). The electronic values may be selected in an order corresponding to the orders of priority set for the first to N-th electronic values, or may be selected at random. For example, the electronic values may be selected in a descending order of the balances.
The utility electronic value app UA sets a smaller one of a difference between the payment amount specified in the payment command and the balance of the utility electronic value, and the balance of the i-th electronic value as the recharge amount, and requests the electronic value app A-i to subtract the recharge amount (S308). In this case, the utility electronic value app UA generates and outputs the subtract command (balance change information) to decrease the balance of the i-th electronic value. The electronic value app A-i changes the balance of the i-th electronic value in response to the generated subtract command. Note that, the recharge amount is not limited to the above-mentioned example, and a recharge upper limit amount for the i-th electronic value may be set thereto.
The utility electronic value app UA receives from the electronic value app A-i the processing result of subtracting the recharge amount regarding the subtract request from the balance of the i-th electronic value (S309), and proceeds to S307 when the processing result is unsuccessful (S310: N), and adds the recharge amount to the utility electronic value (S311) when the processing result is successful (S310: Y).
When the balance of the utility electronic value after the addition is not equal to the payment amount (or is lower than the payment amount) (S312: N), the utility electronic value app UA returns to S307. When the balance of the utility electronic value after the addition is equal to the payment amount (or is equal to or more than the payment amount) (S312: Y), the utility electronic value app UA subtracts the payment amount from the balance of the utility electronic value in response to the payment command input from the utility electronic value payment terminal 80 (S313), and transmits the processing result (success/failure) to the utility electronic value payment terminal 80 (S314). In this manner, the utility electronic value app UA reloads an amount of money (reload amount), which is required for deducting the payment amount (required amount) from the balance of the utility electronic value, from the balances of one or more electronic values.
According to the second embodiment described above, at the time of the payment with the utility electronic value held in the user terminal 10, the balances of the other electronic values, which are held in the user terminal 10 and are not used for the payment, may also be used. This allows the total amount of the balances of the electronic values (including the utility electronic value) held in the user terminal 10 to be used. Next, modified examples of the second embodiment are described.
(Modified Example 1 of Second Embodiment)
When the overwrite command is used as the balance change information for the utility electronic value, the following processing may be performed inside the IC chip 22.
When receiving the payment command (overwrite command), the utility electronic value app UA calculates a difference R obtained by subtracting the payment amount (amount of money obtained by subtracting the rewrite amount specified in the received payment command from the amount of value returned as the balance) from the balance of the utility electronic value. In this case, when the difference R is a negative number (the balance of the utility electronic value alone is insufficient for the payment amount), the utility electronic value app UA overwrites the balance of the utility electronic value with 0. On the other hand, when the difference R is a non-negative number (the balance of the utility electronic value alone is sufficient for the payment amount), the utility electronic value app UA overwrites the balance of the utility electronic value with an amount of money obtained by subtracting the payment amount therefrom. The utility electronic value app UA only transmits the processing result to the utility electronic value payment terminal 80 without performing the processing resulting from the payment command input from the utility electronic value payment terminal 80.
(Modified Example 2 of Second Embodiment)
Further, in the sequence illustrated in
As illustrated in
The utility electronic value app UA updates the balance list of the electronic values based on the balance of the i-th electronic value (S406), and returns to S403 when the balances of all the electronic values in the list have not been acquired (S407: N) or to S401 when the balances of all the electronic values in the list have been acquired (S407: Y).
As described above, when the balance list of the electronic values is sequentially updated and held, a response time until the balance requested by the utility electronic value payment terminal 80 is returned may be reduced.
(Third Embodiment)
Next referring to sequence charts illustrated in
As illustrated in
The utility electronic value app UA sums the received respective balances of the first to N-th electronic values and the balance of the utility electronic value to calculate the total amount of balances (S505), and transmits the total amount of balances to the electronic value app A-M (S506). The electronic value app A-M transmits the above-mentioned total amount of balances to the electronic value payment terminal 70-M (S507). When the total amount of balances is equal to or more than the payment amount, a payment command specifying a payment amount (required amount) is transmitted from the electronic value payment terminal 70-M (S508).
Next, as illustrated in
The utility electronic value app UA sets a difference between the payment amount and the balance of the M-th electronic value as a required recharge amount (first reload amount), sets a smaller one of a difference between the required recharge amount and the balance of the utility electronic value, and the balance of the i-th electronic value as the recharge amount, and requests the electronic value app A-i to subtract the recharge amount (S511). In this case, the utility electronic value app UA generates and outputs the subtract command (balance change information) to decrease the balance of the i-th electronic value. The electronic value app A-i changes the balance of the i-th electronic value in response to the generated subtract command. The recharge amount is not limited to the above-mentioned example, and a recharge upper limit amount for the i-th electronic value may be set thereto.
The utility electronic value app UA receives from the electronic value app A-i the processing result of subtracting the recharge amount regarding the generated subtract request from the balance of the i-th electronic value (S512), and proceeds to S510 when the processing result is unsuccessful (S513: N), and adds the recharge amount to the utility electronic value (S514) when the processing result is successful (S513: Y).
When the balance of the utility electronic value after the addition is not equal to the required recharge amount (or is lower than the required recharge amount) (S515: N), the utility electronic value app UA proceeds to S510. When the balance of the utility electronic value after the addition is equal to the required recharge amount (or is equal to or more than the required recharge amount) (S515: Y), the utility electronic value app UA subtracts the required recharge amount from the balance of the utility electronic value (S516). In this manner, the utility electronic value app UA reloads an amount of money (second reload amount), which is required for deducting the required recharge amount (first reload amount) from the balance of the utility electronic value, from the balances of one or more electronic values. Then, the utility electronic value app UA the utility electronic value app UA newly issues the subtracted required recharge amount's worth of the M-th electronic value (S517), and requests the electronic value app A-M to add the issued required recharge amount's worth to the M-th electronic value (S518). In this case, the utility electronic value app UA generates and outputs the add command (balance change information) to increase the balance of the M-th electronic value.
The electronic value app A-M adds, in response to the generated add command, the required recharge amount to the balance of the M-th electronic value (S519), and notifies the utility electronic value app UA of the processing result (success/failure) (S520). Further, the electronic value app A-M subtracts, in response to the payment command input from the utility electronic value payment terminal 80, the payment amount from the balance of the M-th electronic value after the addition to the balance (S521), and transmits the processing result (success/failure) to the electronic value payment terminal 70-M (S522).
The utility electronic value app UA may perform the processing of S515 and subsequent steps as follows. For example, when the balance of the utility electronic value can afford the required recharge amount (S515: Y), the utility electronic value app UA may issue the required recharge amount's worth of the M-th electronic value, and request the electronic value app A-M to add the issued required recharge amount's worth to the M-th electronic value. Then, the electronic value app A-M may add the required recharge amount to the balance of the M-th electronic value, and notify the utility electronic value app UA of the processing result (success/failure). Then, when receiving the notification of the successful addition from the electronic value app A-M, the utility electronic value app UA may subtract the required recharge amount from the balance of the utility electronic value. Thereafter, the electronic value app A-M may subtract the payment amount from the balance of the M-th electronic value after the addition to the balance, and transmit the processing result (success/failure) to the electronic value payment terminal 70-M.
According to the third embodiment described above, regardless of which electronic value held in the user terminal 10 is selected for the payment, the balances of the other electronic values (including the utility electronic value), which are held in the user terminal 10 and are not used for the payment, may also be used. This allows the total amount of the balances of the electronic values (including the utility electronic value) held in the user terminal 10 to be used regardless of which electronic value is selected.
In the third embodiment, when the overwrite command is used as the balance change information for the electronic value, the processing may be performed with an idea similar to (Modified Example 1 of first embodiment) or (Modified Example 2 of first embodiment) described above. Alternatively, in the third embodiment, when the overwrite command is used as the balance change information for the utility electronic value, the processing may be performed with an idea similar to (Modified Example 1 of second embodiment) described above.
(Fourth Embodiment)
In the embodiments described above, only the utility electronic value can be directly exchanged (transferred) with the first to N-th electronic values, but the electronic values may be directly exchanged among the first to N-th electronic values. The exchange of the electronic values among the first to N-th electronic values may be realized, for example, by providing each of the electronic value apps A-1 to A-N with functions equivalent to those of the utility electronic value app UA. Next, payment processing according to a fourth embodiment when the electronic values may be exchanged also among the first to N-th electronic values is described. Note that, in the following, distinguishment from the utility electronic value is not required, and hence the electronic values mounted in the IC chip 22 are referred to as first to (N+1) th electronic values. Note that, in the fourth embodiment, the electronic value app A-M causes, in cooperation with hardware resources such as the IC chip 22 included in the user terminal 10, the user terminal 10 to operate as a terminal having a virtual asynchronous deposit function (virtual offline deposit function) and a virtual asynchronous payment function (virtual offline payment function).
As illustrated in
The electronic value app A-M sums the respective balances of the first to (N+1)th electronic values to calculate the total amount of balances (S604), and transmits the total amount of balances to the electronic value payment terminal 70-M (S605). When the total amount of balances is equal to or more than the payment amount, a payment command specifying a payment amount (required amount) is transmitted from the electronic value payment terminal 70-M (S606).
The electronic value app A-M selects an unselected electronic value (in this case, i-th electronic value) from among the first to (N+1)th electronic values other than the M-th electronic value (S607). The electronic values may be selected in an order corresponding to the orders of priority set for the first to (N+1) th electronic values, or may be selected at random. For example, the electronic values may be selected in a descending order of the balances.
The electronic value app A-M sets a smaller one of a difference between the payment amount specified in the payment command and the balance of the utility electronic value, and the balance of the i-th electronic value as the recharge amount, and requests the electronic value app A-i to subtract the recharge amount (S608). In this case, in this case, the electronic value app A-M generates and outputs the subtract command (balance change information) to decrease the balance of the i-th electronic value. The electronic value app A-i changes the balance of the i-th electronic value in response to the generated subtract command. The recharge amount is not limited to the above-mentioned example, and a recharge upper limit amount for the i-th electronic value may be set thereto.
The electronic value app A-M receives from the electronic value app A-i the processing result of subtracting the recharge amount regarding the subtract request from the balance of the i-th electronic value (S609), and proceeds to S607 when the processing result is unsuccessful (S610: N), and newly issues the recharge amount's worth of the M-th electronic value (S611) and adds the issued recharge amount's worth regarding the M-th electronic value to the M-th electronic value (S612) when the processing result is successful (S610: Y). In this case, the electronic value app A-M generates the add command (balance change information) to increase the balance of the M-th electronic value, and changes the balance of the M-th electronic value in response to the generated add command.
When the balance of the M-th electronic value after the addition is not equal to the payment amount (or is lower than the payment amount) (S613: N), the electronic value app A-M returns to S607. When the balance of the M-th electronic value after the addition is equal to the payment amount (or is equal to or more than the payment amount) (S613: Y), the electronic value app A-M subtracts the payment amount from the balance of the M-th electronic value in response to the payment command input from the electronic value payment terminal 70-M (S614), and transmits the processing result (success/failure) to the electronic value payment terminal 70-M (S615). In this manner, the electronic value app A-M reloads an amount of money (reload amount), which is required for deducting the payment amount (required amount) from the balance of the M-th electronic value, from the balances of one or more electronic values.
According to the fourth embodiment described above, the total amount of the electronic values held in the user terminal 10 may be used regardless of which of the electronic values held in the user terminal 10 is selected for the payment. Further, the fourth embodiment is reduced in processing load compared to the third embodiment because the processing is not concentrated on the utility electronic value application UA.
In the fourth embodiment, when the overwrite command is used as the balance change information for the electronic value, the processing may be performed with an idea similar to (Modified Example 1 of first embodiment) or (Modified Example 2 of first embodiment) described above.
Note that, the present invention is not limited to the embodiments described above. For example, in the embodiments described above, the example in which the user terminal 10 recharges the electronic values from the electronic value servers 50-1 to 50-N and the utility electronic value server 60 has been described. However, when each of the electronic value payment terminals 70-1 to 70-N and the utility electronic value payment terminal 80 also functions as a recharge terminal, the electronic values may be recharged from the recharge terminals.
Note that, it should be understood that the IC chip 22 according to the embodiments may be mounted not only in the mobile phone but also in an IC card or the like.
Number | Date | Country | Kind |
---|---|---|---|
2011-102520 | Apr 2011 | JP | national |
Filing Document | Filing Date | Country | Kind | 371c Date |
---|---|---|---|---|
PCT/JP2012/061482 | 4/27/2012 | WO | 00 | 10/25/2013 |
Publishing Document | Publishing Date | Country | Kind |
---|---|---|---|
WO2012/147969 | 11/1/2012 | WO | A |
Number | Name | Date | Kind |
---|---|---|---|
5521362 | Powers | May 1996 | A |
6321213 | Ito et al. | Nov 2001 | B1 |
6336104 | Walker et al. | Jan 2002 | B1 |
7216105 | Adamson | May 2007 | B2 |
7707077 | Muller et al. | Apr 2010 | B2 |
7761355 | Mallon et al. | Jul 2010 | B2 |
8103582 | Zettner | Jan 2012 | B1 |
8195482 | Darling et al. | Jun 2012 | B2 |
8612347 | Dabney | Dec 2013 | B1 |
20020139861 | Matsumoto et al. | Oct 2002 | A1 |
20040128247 | Sato et al. | Jul 2004 | A1 |
20070125840 | Law et al. | Jun 2007 | A1 |
20070219900 | MacGuire | Sep 2007 | A1 |
20080016004 | Kurasaki et al. | Jan 2008 | A1 |
20080040265 | Rackley, III et al. | Feb 2008 | A1 |
20080215173 | Hicken et al. | Sep 2008 | A1 |
20080277465 | Pletz et al. | Nov 2008 | A1 |
20090050687 | Kon et al. | Feb 2009 | A1 |
20090192913 | Saito et al. | Jul 2009 | A1 |
20100223145 | Dragt | Sep 2010 | A1 |
20110119182 | Smolkin | May 2011 | A1 |
20110276420 | White | Nov 2011 | A1 |
20120047041 | Akel | Feb 2012 | A1 |
20120233071 | Winkelman et al. | Sep 2012 | A1 |
20130339165 | Calman | Dec 2013 | A1 |
Number | Date | Country |
---|---|---|
101093567 | Dec 2007 | CN |
101373512 | Feb 2009 | CN |
0 910 052 | Apr 1999 | EP |
1 560 172 | Aug 2005 | EP |
2 028 630 | Feb 2009 | EP |
2 324 898 | Nov 1998 | GB |
9-245104 | Sep 1997 | JP |
2004-234630 | Aug 2004 | JP |
2005-25618 | Jan 2005 | JP |
2005-352733 | Dec 2005 | JP |
2007-47939 | Feb 2007 | JP |
2009-48488 | Mar 2009 | JP |
2009-53764 | Mar 2009 | JP |
2009-176065 | Aug 2009 | JP |
2004003861 | Jan 2004 | WO |
2010131012 | Nov 2010 | WO |
Entry |
---|
International Searching Authority, Written Opinion of the International Preliminary Report on Patentability issued in corresponding International application No. PCT/JP2012/061480, dated Nov. 7, 2013. |
Partial English Language Translation of Office Action dated Aug. 15, 2014 for Chinese Patent Application No. 201280020764.6. |
United States Office Action dated Feb. 14, 2014 issued in corresponding U.S. Appl. No. 14/114,039. |
European Patent Office, European Search Report, dated Nov. 12, 2014, issued in counterpart application No. 12777526.0-1955. |
Wikipedia: “Oyster card”, URL: http://en.wikipedia.org/w/index.php?title=oyster_card&oldid=288676923; May 8, 2009. |
European Search Report dated Jan. 19, 2015 issued in application No. 12775983.5. |
“Smart Card technology includes microprocessor, RAM, EPROM, EEPROM and card operating system COS”, Dec. 16, 2001, CardWerk,http://cardwerk.com/smartcards/smartcard_technology.aspx, 4 pages total. |
Communication dated May 12, 2017 from the European Patent Office in counterpart Application No. 12 775 983.5. |
International Search Report for PCT/JP2012/061480 dated Jul. 31, 2012. |
International Search Report for PCT/JP2012/061482 dated Jul. 3, 2012. |
An Office Action dated Feb. 9, 2017, which issued during the prosecution of U.S. Appl. No. 14/114,096. |
Communication dated Dec. 7, 2016, from the European Patent Office in corresponding European Application No. 12775983.5. |
Anonymous, “Java Card (TM) Platform Security Technical White Paper”. Sun Microsystems, Inc. Nov. 4, 2003, XP055317544 (28 pages total). |
Communication dated Jan. 22, 2019 from European Patent Office in counterpart EP Application No. 12777526.0. |
Communication dated Jul. 17, 2018, from the European Patent Office in counterpart European Application No. 12777449.5. |
Number | Date | Country | |
---|---|---|---|
20140052631 A1 | Feb 2014 | US |