CN107169756B - Payment channel distribution method, device, storage medium and payment routing system - Google Patents

Payment channel distribution method, device, storage medium and payment routing system Download PDF

Info

Publication number
CN107169756B
CN107169756B CN201710326574.1A CN201710326574A CN107169756B CN 107169756 B CN107169756 B CN 107169756B CN 201710326574 A CN201710326574 A CN 201710326574A CN 107169756 B CN107169756 B CN 107169756B
Authority
CN
China
Prior art keywords
payment
channel
payment channel
weight value
request
Prior art date
Legal status (The legal status 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 status listed.)
Expired - Fee Related
Application number
CN201710326574.1A
Other languages
Chinese (zh)
Other versions
CN107169756A (en
Inventor
赵宸宇
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Phoenix Lilita Information Technology Co ltd
Original Assignee
Beijing Phoenix Lilita Information Technology Co ltd
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 Beijing Phoenix Lilita Information Technology Co ltd filed Critical Beijing Phoenix Lilita Information Technology Co ltd
Priority to CN201710326574.1A priority Critical patent/CN107169756B/en
Publication of CN107169756A publication Critical patent/CN107169756A/en
Application granted granted Critical
Publication of CN107169756B publication Critical patent/CN107169756B/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

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
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/08Payment architectures
    • G06Q20/16Payments settled via telecommunication systems
    • 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
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/38Payment protocols; Details thereof
    • G06Q20/382Payment protocols; Details thereof insuring higher security of transaction

Landscapes

  • Business, Economics & Management (AREA)
  • Accounting & Taxation (AREA)
  • Engineering & Computer Science (AREA)
  • Finance (AREA)
  • Strategic Management (AREA)
  • Physics & Mathematics (AREA)
  • General Business, Economics & Management (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)

Abstract

According to the payment channel allocation method, the device, the storage medium and the payment routing system, after a payment request sent by a client is responded, a payment channel set with a preset corresponding relation with the payment request is obtained, each payment channel is configured with a channel ID, a payment parameter and a weight value, the payment parameter and the weight value of each payment channel are taken as reference standards, the payment channel is allocated for the payment request, the corresponding relation between the payment request and the channel ID of the allocated payment channel is sent to the client, the client can call gateway configuration information and a gateway interface corresponding to the channel ID to execute payment operation, and a payment result is fed back. In the invention, the payment result of whether each payment channel sent by the client pays successfully is obtained, and the weight value of each payment channel is updated according to the payment result of each payment channel. By the scheme, the payment safety and the payment success rate are effectively improved.

Description

Payment channel distribution method, device, storage medium and payment routing system
Technical Field
The invention relates to the technical field of internet payment, in particular to a payment channel distribution method, a payment channel distribution device, a storage medium and a payment routing system.
Background
During the payment process, the payment route assumes a core function, which serves as a payment hub for configuring the payment channel. In some financial enterprises, with the increase of payment infrastructure construction, payment channels are increasingly abundant, and users are increasingly concurrent. When the payment channels are rich enough, the same order needs to be planned overall for the control of the payment success rate, the requirement of the payment cost, the switching of the payment channels and the like, and the payment channels are selected according to the weight value of each payment channel. However, in the existing payment routing, in the distribution process of the payment channels, the weight of each payment channel is preset and fixed, and the weight is adjusted after a certain time interval, and cannot be dynamically adjusted along with the success or failure of each payment process. In the configuration process of the payment channel, an unadapted payment channel may be selected when the weight is not adjusted, which may greatly affect the payment security or success rate.
Disclosure of Invention
In view of this, the present invention provides a method, an apparatus, a storage medium, and a payment routing system for allocating a payment channel, which can dynamically adjust a weight of the payment channel according to a payment result each time, and improve security and success rate in a payment process.
Based on the above purpose, the present invention provides a payment channel allocation method, which comprises the following steps:
responding to a payment request sent by a client, and determining a plurality of payment channels corresponding to the payment request according to a preset corresponding relation, wherein each payment channel is configured with a channel ID, a payment parameter and a weight value;
distributing a payment channel for the payment request according to the payment parameter and the weight value of each payment channel, and sending the corresponding relation between the payment request and the channel ID of the distributed payment channel to a client;
and acquiring a payment result whether the payment of each payment channel sent by the client is successful, and updating the weight value of each payment channel according to the payment result of each payment channel.
Optionally, in the above method for allocating payment channels, a payment channel is allocated to the payment request according to the payment parameter and the weight value of each payment channel, and the correspondence between the payment request and the channel ID of the allocated payment channel is sent to the client, specifically including:
analyzing the payment parameters of each payment channel, and acquiring the accessible bank, quota, maintenance time and channel switch state of each payment channel;
when the payment channel meets the condition that the accessible bank is consistent with the bank corresponding to the payment request, the payment channel switch is in an open state and the current time does not fall into the maintenance time range, the payment channel is in a distributable state, otherwise, the payment channel is directly closed;
for each payment channel that is in an assignable state, the payment amount allocated to it must be lower than its limit.
Optionally, in the above payment channel allocation method, a payment channel is allocated to the payment request according to the payment parameter and the weight value of each payment channel, a correspondence between the payment request and the channel ID of the allocated payment channel is sent to the client, and a payment channel is allocated to the payment request through the following steps:
obtaining the total number E of the payment requests, the total number N of the payment channels in the assignable state, and the weight value A of each payment channel in the assignable stateiAccording to the following formulaCalculating the number E of the payment requests which can be allocated to each payment channeli
Figure BDA0001291373870000021
Optionally, in the above method for allocating payment channels, obtaining a payment result of whether payment of each payment channel sent by the client is successful, and updating the weight value of each payment channel according to the payment result of each payment channel specifically includes:
if the payment result of the payment channel is successful, the weight value of the payment channel is increased, otherwise, the weight value of the payment channel is reduced;
if the weight value of the payment channel reaches the upper limit threshold value, the weight value of the payment channel is adjusted to be the upper limit threshold value, and if the weight value of the payment channel is lower than the lower limit threshold value, the weight value of the payment channel is adjusted to be zero.
Optionally, in the above method for allocating a payment channel, if the payment result of the payment channel is successful, the weight value of the payment channel is increased, otherwise, the weight value of the payment channel is decreased, which specifically includes:
obtaining the payment success times of the payment channel in a timing period according to each payment result of the payment channel, and calculating the payment success rate of the payment channel by combining the total payment times in the timing period:
Figure BDA0001291373870000031
the weight values of the payment channels are: weight value int (payment success rate).
Optionally, in the above method for allocating payment channels, obtaining a payment result of whether payment of each payment channel sent by the client is successful, and updating the weight value of each payment channel according to the payment result of each payment channel, the method further includes the following steps:
recording the continuous payment failure times of the payment channel or the payment failure times in a preset time period, and directly setting the weight value of the payment channel to be zero if the payment failure times exceed a set threshold value.
Based on the same inventive concept, the invention also provides a payment channel distribution device, comprising:
the response module is used for responding to a payment request sent by a client and determining a plurality of payment channels corresponding to the payment request according to a preset corresponding relation, wherein each payment channel is configured with a channel ID, a payment parameter and a weight value;
the distribution module is used for distributing a payment channel to the payment request according to the payment parameter and the weight value of each payment channel and associating the payment request with the channel ID of the distributed payment channel;
and the adjusting module is used for acquiring a payment result whether the payment of each payment channel sent by the client is successful or not and updating the weight value of each payment channel according to the payment result of each payment channel.
Optionally, in the above payment channel allocation apparatus, the allocation module is specifically configured to:
analyzing the payment parameters of each payment channel, and acquiring the accessible bank, quota, maintenance time and channel switch state of each payment channel;
when the payment channel meets the condition that the accessible bank is consistent with the bank corresponding to the payment request, the payment channel switch is in an open state and the current time does not fall into the maintenance time range, the payment channel is in a distributable state, otherwise, the payment channel is directly closed;
for each payment channel that is in an assignable state, the payment amount allocated to it must be lower than its limit.
Optionally, in the above payment channel allocation apparatus, the allocation module allocates a payment channel to the payment request through the following steps:
obtaining the total number E of the payment requests, the total number N of the payment channels in the assignable state, and the weight value A of each payment channel in the assignable stateiCalculating the number E of the payment requests which can be distributed to each payment channel according to the following formulai
Figure BDA0001291373870000041
Optionally, in the above payment channel allocation apparatus, the adjusting module is specifically configured to:
if the payment result of the payment channel is successful, the weight value of the payment channel is increased, otherwise, the weight value of the payment channel is reduced;
if the weight value of the payment channel reaches the upper limit threshold value, the weight value of the payment channel is adjusted to be the upper limit threshold value, and if the weight value of the payment channel is lower than the lower limit threshold value, the weight value of the payment channel is adjusted to be zero.
Optionally, in the above payment channel allocation apparatus, in the adjustment module, if the payment result of the payment channel is successful, the weight value of the payment channel is increased, otherwise, the weight value of the payment channel is decreased, which specifically includes:
the payment success times of the payment channel in the timing period are obtained according to each payment result of the payment channel, and the payment success rate of the payment channel is calculated by combining the total payment times in the timing period:
Figure BDA0001291373870000042
the weight values of the payment channels are: weight value int (payment success rate).
Optionally, in the above payment channel allocation apparatus, the adjusting module is further configured to:
recording the continuous payment failure times of the payment channel or the payment failure times in a preset time period, and directly setting the weight value of the payment channel to be zero if the payment failure times exceed a set threshold value.
The present invention also provides a storage medium storing computer instructions for use in any one of the above-described payment channel allocation methods when executed by a computer.
The present invention also provides a payment routing system, comprising: at least one processor; and a memory communicatively coupled to the at least one processor; wherein the content of the first and second substances,
the memory stores instructions executable by the one processor to cause the at least one processor to:
responding to a payment request sent by a client, and determining a plurality of payment channels corresponding to the payment request according to a preset corresponding relation, wherein each payment channel is configured with a channel ID, a payment parameter and a weight value;
distributing a payment channel for the payment request according to the payment parameter and the weight value of each payment channel, and sending the corresponding relation between the payment request and the channel ID of the distributed payment channel to a client;
and acquiring a payment result whether the payment of each payment channel sent by the client is successful, and updating the weight value of each payment channel according to the payment result of each payment channel.
Optionally, in the payment routing system, the at least one processor and the at least one memory are configured in each server in a server cluster.
Compared with the prior art, the technical scheme at least has the following beneficial effects:
according to the payment channel allocation method, the device, the storage medium and the payment routing system, after a payment request sent by a client is responded, a payment channel set with a preset corresponding relation with the payment request is obtained, each payment channel is configured with a channel ID, a payment parameter and a weight value, the payment parameter and the weight value of each payment channel are taken as reference standards, the payment channel is allocated for the payment request, the corresponding relation between the payment request and the channel ID of the allocated payment channel is sent to the client, the client can call gateway configuration information and a gateway interface corresponding to the channel ID to execute payment operation, and a payment result is fed back. In the invention, the payment result of whether each payment channel sent by the client pays successfully is obtained, and the weight value of each payment channel is updated according to the payment result of each payment channel. By the scheme, the weight value of each payment channel can be dynamically adjusted, and the latest weight value of the payment channel is ensured to be adopted when the payment channel is configured next time. By adopting the real-time weight value as the basis for the distribution of the payment channel, the payment safety and the payment success rate are effectively improved.
Drawings
The above features and technical advantages of the present invention will become more apparent and readily appreciated from the following description of the embodiments thereof taken in conjunction with the accompanying drawings.
Fig. 1 is a flowchart of a payment channel allocation method according to an embodiment of the present invention;
FIG. 2 is a flowchart of a method for allocating payment channels to the payment request according to an embodiment of the present invention;
FIG. 3 is a flowchart illustrating a method for updating a weight value according to a payment result of each payment channel according to an embodiment of the present invention;
fig. 4 is a schematic block diagram of a payment channel distribution apparatus according to an embodiment of the present invention;
fig. 5 is a schematic block diagram of a payment routing system according to an embodiment of the present invention.
Detailed Description
The technical solutions in the embodiments of the present invention will be clearly and completely described below with reference to the drawings in the embodiments of the present invention, and it is obvious that the described embodiments are only a part of the embodiments of the present invention, and not all of the embodiments. The components of embodiments of the present invention generally described and illustrated in the figures herein may be arranged and designed in a wide variety of different configurations. Thus, the following detailed description of the embodiments of the present invention, presented in the figures, is not intended to limit the scope of the invention, as claimed, but is merely representative of selected embodiments of the invention. All other embodiments, which can be derived by a person skilled in the art from the embodiments of the present invention without making any creative effort, shall fall within the protection scope of the present invention.
In the description of the present invention, it should be noted that the terms "center", "upper", "lower", "left", "right", "vertical", "horizontal", "inner", "outer", etc., indicate orientations or positional relationships based on the orientations or positional relationships shown in the drawings, and are only for convenience of description of the present invention, and do not indicate or imply that the device or assembly referred to must have a specific orientation, be constructed and operated in a specific orientation, and thus, should not be construed as limiting the present invention. Furthermore, the terms "first," "second," and "third" are used for descriptive purposes only and are not to be construed as indicating or implying relative importance. Wherein the terms "first position" and "second position" are two different positions.
In the description of the present invention, it should be noted that, unless otherwise explicitly specified or limited, the terms "mounted," "connected," and "connected" are to be construed broadly, e.g., as meaning either a fixed connection, a removable connection, or an integral connection; can be mechanically or electrically connected; the two components can be directly connected or indirectly connected through an intermediate medium, and the two components can be communicated with each other. The specific meanings of the above terms in the present invention can be understood in specific cases to those skilled in the art.
Example 1
The embodiment provides a payment channel allocation method, which is applied to a server, where the server is used for allocating a payment channel in a payment process, as shown in fig. 1, and the method includes the following steps:
s101: responding to a payment request sent by a client, and determining a plurality of payment channels corresponding to the payment request according to a preset corresponding relation, wherein each payment channel is configured with a channel ID, a payment parameter and a weight value; the payment request is identified through various dimensions and used for distinguishing different service types, different channel merchants, different payment platforms and the like. The service type may be insurance service, fund service, etc., the distributor may be a cooperative merchant, etc., and the payment platform may be account balance, unionpay, third party (e.g., a payment treasurer), etc. The payment request is configured in advance according to which payment channels, that is, the payment channels are bound with the payment request, each payment request can be bound with a plurality of payment channels, and the configuration of the payment channels can be executed according to historical experience values. Therefore, once the payment request is acquired, a plurality of payment channels which can be used for selection can be obtained according to the preset corresponding relation. In addition, the payment request occurs concurrently, that is, the payment requests sent from a plurality of clients may be received at any time.
S102: distributing a payment channel for the payment request according to the payment parameter and the weight value of each payment channel, and sending the corresponding relation between the payment request and the channel ID of the distributed payment channel to a client; the payment parameters include quota, maintenance time, channel switch, etc. The weight value is the priority when the payment channel is selected, and if the Unionpay payment is adopted, the payment parameters can also comprise a bank bound with the payment channel, limit set by the bank, maintenance time and the like. And after the corresponding relation between the payment request and the payment channel ID is determined, the corresponding relation is sent to the client, and if the payment requests are multiple payment requests sent by multiple clients, the payment requests are respectively sent according to the corresponding relation between each payment request and the client. After the client receives the corresponding relation between the payment request and the payment channel ID, gateway configuration information can be determined according to the payment channel ID, and then a corresponding gateway interface is called to execute payment operation, wherein the gateway interface comprises a linkage deduction interface, a payment interface for Guangyi, a payment interface for Taikang, a connection payment interface and the like. And after the payment operation is finished, the client feeds back a payment result according to whether the payment is successful or not.
S103: and acquiring a payment result whether the payment of each payment channel sent by the client is successful, and updating the weight value of each payment channel according to the payment result of each payment channel.
According to the scheme of the embodiment, whether each payment channel sent by the client pays successfully can be obtained, and the weight value of each payment channel is updated according to the payment result of each payment channel. By the scheme, the weight value of each payment channel can be dynamically adjusted, and the latest weight value of the payment channel is ensured to be adopted when the payment channel is configured next time. By adopting the real-time weight value as the basis for the distribution of the payment channel, the payment safety and the payment success rate are effectively improved.
Example 2
In this embodiment, a method for allocating a payment channel to a payment request according to a payment parameter and a weight value of each payment channel is provided, as shown in fig. 2, the method includes the following steps:
s201: and analyzing the payment parameters of each payment channel, and acquiring the accessible bank, quota, maintenance time and channel switch state of each payment channel. For the third party payment mode and the account balance payment mode, the payment parameters do not include the bank which can be accessed by the payment channel, and the accessible bank is suitable for Unionpay payment.
S202: when the payment channel meets the condition that the accessible bank is consistent with the bank corresponding to the payment request, the payment channel switch is in an open state and the current time does not fall into the maintenance time range, the payment channel is in a distributable state, otherwise, the payment channel is directly closed; for each payment channel that is in an assignable state, the payment amount allocated to it must be lower than its limit. That is, the payment parameters define whether each payment channel can be selected, for example, for the current payment request, A, B, C, D four payment channels are bound, the user is performing a transaction using a bank card of a commercial company, and the a channel does not support the bank of the commercial company, and thus only can be configured in B, C, D three payment channels.
Preferably, the method further comprises the following steps:
s203: obtaining the total number E of the payment requests, the total number N of the payment channels in the assignable state, and the weight value A of each payment channel in the assignable stateiCalculating the number E of the payment requests which can be distributed to each payment channel according to the following formulai
Figure BDA0001291373870000081
The payment request corresponds to the weight value of the payment channel through a weighted polling algorithm, and the description is still given by taking the example of A, B, C, D four payment channels, when only B, C, D payment channels are left to be configurable, the payment request is distributed according to the weight values of the three payment channels, if the weight value of the payment channel B is 10, the weight value of the payment channel C is 9, and the weight value of the payment channel D is 5, then in the currently received payment request, 10/(10+9+5) × 100% of the payment requests are carried out by using the payment channel B; a 9/(10+9+5) × 100% payment request is made using the C payment channel; there are 5/(10+9+5) × 100% payment requests made using the D payment channel. By adopting the mode, the payment request is distributed at an opportunity no matter the weight value is high or low, the probability of executing payment by the payment channel with the high weight value is high, and the probability of executing payment by the payment channel with the low weight value is low.
Example 3
In this embodiment, a method for updating a weight value according to a payment result of each payment channel is provided, as shown in fig. 3, the method specifically includes:
s301: if the payment result of the payment channel is successful, the weight value of the payment channel is increased, otherwise, the weight value of the payment channel is reduced; namely, the weight of the payment channel is dynamically adjusted according to the payment success rate.
S302: if the weight value of the payment channel reaches the upper limit threshold value, the weight value of the payment channel is adjusted to be the upper limit threshold value, and if the weight value of the payment channel is lower than the lower limit threshold value, the weight value of the payment channel is adjusted to be zero. For example, the upper threshold is 10, and if the weight value of the current payment channel is already 10, the weight value of the payment channel does not need to be further increased even if the payment is successful. If the lower threshold is 1, the weight value of the current payment channel is exactly 1, and at this time, if the payment channel fails to pay, the weight value is further reduced, and the weight value can be directly set to be zero.
Obviously, if a certain payment channel is successful in payment, it indicates that the success rate of the payment channel is increased, and by means of increasing the weight value of the payment channel, the payment amount and transaction borne by the payment channel can be appropriately increased when a payment request is received next time, and vice versa.
Preferably, if the payment result of the payment channel is successful, the weight value is increased, otherwise, the weight value is decreased, specifically including:
obtaining the payment success times of the payment channel in the timing period according to the payment result of each time of the payment channel, and calculating the payment success rate of the payment channel by combining the total payment times in the timing period:
Figure BDA0001291373870000091
the weight values of the payment channels are: the weighted value is int (payment success rate), that is, the payment success rate is an integer, and it is obvious that the calculated weighted value is also the weighted value in the timing period, and the timing period can be set according to actual needs, and the shorter the time period is, the larger the data volume to be processed is. For example, the payment channels A, B and C are all three, the payment success rate of the payment channel A is 99%, the payment success rate of the payment channel B is 15%, and the payment success rate of the payment channel C is 0.8%, so that the weight of the payment channel A is 9, the weight of the payment channel B is 1, the too low weight of the payment channel C is 0, and the payment channel C can be directly closed.
Preferably, as shown in the figure, the present embodiment may further include the following steps:
s303: recording the continuous payment failure times of the payment channel or the payment failure times in a preset time period, and directly setting the weight value of the payment channel to be zero if the payment failure times exceed a set threshold value. That is, the payment result of each payment channel is recorded, if continuous payment fails, or the number of times of payment failure is too large in a short time, the payment channel can be directly closed, in this case, even if the original weight value of the payment channel is 10, the number of times of continuous payment failure is too large, which may indicate that a problem occurs in the payment channel in the current time period, and the payment channel is directly closed, so that the payment safety is prevented from being influenced.
Example 4
The present embodiment provides a payment channel distribution apparatus, as shown in fig. 4, including:
the response module 401 is configured to respond to a payment request sent by a client, and determine a plurality of payment channels corresponding to the payment request according to a preset corresponding relationship, where each payment channel is configured with a channel ID, a payment parameter, and a weight value; the payment request is identified through various dimensions and used for distinguishing different service types, different channel merchants, different payment platforms and the like. The service type may be insurance service, fund service, etc., the distributor may be a cooperative merchant, etc., and the payment platform may be account balance, unionpay, third party (e.g., a payment treasurer), etc. The payment request is configured in advance according to which payment channels, that is, the payment channels are bound with the payment request, each payment request can be bound with a plurality of payment channels, and the configuration of the payment channels can be executed according to historical experience values. Therefore, once the payment request is acquired, a plurality of payment channels which can be used for selection can be obtained according to the preset corresponding relation. In addition, the payment request occurs concurrently, that is, the payment requests sent from a plurality of clients may be received at any time.
An allocating module 402, configured to allocate a payment channel to the payment request according to the payment parameter and the weight value of each payment channel, and associate the payment request with a channel ID of the allocated payment channel; the payment parameters include quota, maintenance time, channel switch, etc. The weight value is the priority when the payment channel is selected, and if the Unionpay payment is adopted, the payment parameters can also comprise a bank bound with the payment channel, limit set by the bank, maintenance time and the like. And after the corresponding relation between the payment request and the payment channel ID is determined, the corresponding relation is sent to the client, and if the payment requests are multiple payment requests sent by multiple clients, the payment requests are respectively sent according to the corresponding relation between each payment request and the client. After the client receives the corresponding relation between the payment request and the payment channel ID, gateway configuration information can be determined according to the payment channel ID, and then a corresponding gateway interface is called to execute payment operation, wherein the gateway interface comprises a linkage deduction interface, a payment interface for Guangyi, a payment interface for Taikang, a connection payment interface and the like. And after the payment operation is finished, the client feeds back a payment result according to whether the payment is successful or not.
The adjusting module 403 obtains a payment result indicating whether payment is successful in each payment channel sent by the client, and updates the weight value according to the payment result of each payment channel.
According to the scheme, whether each payment channel sent by the client pays successfully can be obtained, and the weight value of each payment channel is updated according to the payment result of each payment channel. By the scheme, the weight value of each payment channel can be dynamically adjusted, and the latest weight value of the payment channel is ensured to be adopted when the payment channel is configured next time. By adopting the real-time weight value as the basis for the distribution of the payment channel, the payment safety and the payment success rate are effectively improved.
The allocating module 402 is specifically configured to: analyzing the payment parameters of each payment channel, and acquiring the accessible bank, quota, maintenance time and channel switch state of each payment channel; for the third party payment mode and the account balance payment mode, the payment parameters do not include the bank which can be accessed by the payment channel, and the accessible bank is suitable for Unionpay payment.
When the payment channel meets the condition that the accessible bank is consistent with the bank corresponding to the payment request, the payment channel switch is in an open state and the current time does not fall into the maintenance time range, the payment channel is in a distributable state, otherwise, the payment channel is directly closed; for each payment channel that is in an assignable state, the payment amount allocated to it must be lower than its limit. That is, the payment parameters define whether each payment channel can be selected.
Preferably, the allocating module 402 allocates the payment channel to the payment request by:
obtaining the total number E of the payment requests, the total number N of the payment channels in the assignable state, and the weight value A of each payment channel in the assignable stateiCalculating the number E of the payment requests which can be distributed to each payment channel according to the following formulai
Figure BDA0001291373870000121
In the above scheme, the payment request and the weight value of the payment channel are corresponded by a weighted polling algorithm, and still an example of A, B, C, D four payment channels is used for explanation, when only B, C, D payment channels are left to be configurable, the payment request is distributed according to the weight values of the three payment channels, assuming that the weight value of the payment channel B is 10, the weight value of the payment channel C is 9, and the weight value of the payment channel D is 5, then in the currently received payment request, 10/(10+9+5) × 100% of the payment requests are carried out by the payment channel B; a 9/(10+9+5) × 100% payment request is made using the C payment channel; there are 5/(10+9+5) × 100% payment requests made using the D payment channel. By adopting the mode, the payment request is distributed at an opportunity no matter the weight value is high or low, the probability of executing payment by the payment channel with the high weight value is high, and the probability of executing payment by the payment channel with the low weight value is low.
Further preferably, the adjusting module 403 is specifically configured to: if the payment result of the payment channel is successful, the weight value of the payment channel is increased, otherwise, the weight value of the payment channel is reduced; namely, the weight of the payment channel is dynamically adjusted according to the payment success rate.
If the weight value of the payment channel reaches the upper limit threshold value, the weight value of the payment channel is adjusted to be the upper limit threshold value, and if the weight value of the payment channel is lower than the lower limit threshold value, the weight value of the payment channel is adjusted to be zero. For example, the upper threshold is 10, and if the weight value of the current payment channel is already 10, the weight value of the payment channel does not need to be further increased even if the payment is successful. If the lower threshold is 1, the weight value of the current payment channel is exactly 1, and at this time, if the payment channel fails to pay, the weight value is further reduced, and the weight value can be directly set to be zero. Obviously, if a certain payment channel is successful in payment, it indicates that the success rate of the payment channel is increased, and by means of increasing the weight value of the payment channel, the payment amount and transaction borne by the payment channel can be appropriately increased when a payment request is received next time, and vice versa.
Further, in the adjusting module 403, if the payment result of the payment channel is successful, the weight value of the payment channel is increased, otherwise, the weight value of the payment channel is decreased, which specifically includes:
obtaining the payment success times of the payment channel in the timing period according to the payment result of each time of the payment channel, and calculating the payment success rate of the payment channel by combining the total payment times in the timing period:
Figure BDA0001291373870000131
the weight values of the payment channels are: weight value int (payment success rate). I.e. the payment success rate takes an integer. Obviously, the calculated weight value is also the weight value in the timing cycle, the timing cycle can be set according to actual needs, and the shorter the time period is, the larger the data volume to be processed is. For example, the payment channels A, B and C are all three, the payment success rate of the payment channel A is 99%, the payment success rate of the payment channel B is 15%, and the payment success rate of the payment channel C is 0.8%, so that the weight of the payment channel A is 9, the weight of the payment channel B is 1, the too low weight of the payment channel C is 0, and the payment channel C can be directly closed.
Preferably, the adjusting module 403 is further configured to record consecutive payment failure times of the payment channel or the payment failure times within a preset time period, and directly set the weight value of the payment channel to zero if the payment failure times exceed a set threshold. That is, the payment result of each payment channel is recorded, if continuous payment fails, or the number of times of payment failure is too large in a short time, the payment channel can be directly closed, in this case, even if the original weight value of the payment channel is 10, the number of times of continuous payment failure is too large, which may indicate that a problem occurs in the payment channel in the current time period, and the payment channel is directly closed, so that the payment safety is prevented from being influenced.
Example 5
The present embodiment provides a storage medium storing computer instructions for performing any of the payment channel assignment methods of embodiments 1-3 when executed by a computer.
Example 6
The present embodiment provides a payment routing system, as shown in fig. 5, including: at least one processor 501; and a memory 502 communicatively coupled to the at least one processor; wherein the content of the first and second substances,
the memory 502 stores instructions executable by the one processor 501 to cause the at least one processor 502 to:
responding to a payment request sent by a client, and determining a plurality of payment channels corresponding to the payment request according to a preset corresponding relation, wherein each payment channel is configured with a channel ID, a payment parameter and a weight value;
distributing a payment channel for the payment request according to the payment parameter and the weight value of each payment channel, and sending the corresponding relation between the payment request and the channel ID of the distributed payment channel to a client;
and acquiring a payment result whether the payment of each payment channel sent by the client is successful, and updating the weight value of each payment channel according to the payment result of each payment channel.
According to the scheme, whether each payment channel sent by the client pays successfully can be obtained, and the weight value of each payment channel is updated according to the payment result of each payment channel. By the scheme, the weight value of each payment channel can be dynamically adjusted, and the latest weight value of the payment channel is ensured to be adopted when the payment channel is configured next time. By adopting the real-time weight value as the basis for the distribution of the payment channel, the payment safety and the payment success rate are effectively improved.
Preferably, the at least one processor and the at least one memory are configured in each server of a cluster of servers. The payment process is effectively prevented from being influenced when a single-point fault occurs by the server cluster deployment mode, and the safety and the success rate in the payment process are further ensured.
As will be appreciated by one skilled in the art, embodiments of the present invention may be provided as a method, system, or computer program product. Accordingly, the present invention may take the form of an entirely hardware embodiment, an entirely software embodiment or an embodiment combining software and hardware aspects. Furthermore, the present invention may take the form of a computer program product embodied on one or more computer-usable storage media (including, but not limited to, disk storage, CD-ROM, optical storage, and the like) having computer-usable program code embodied therein.
The present invention is described with reference to flowchart illustrations and/or block diagrams of methods, apparatus (systems), and computer program products according to embodiments of the invention. It will be understood that each flow and/or block of the flow diagrams and/or block diagrams, and combinations of flows and/or blocks in the flow diagrams and/or block diagrams, can be implemented by computer program instructions. These computer program instructions may be provided to a processor of a general purpose computer, special purpose computer, embedded processor, or other programmable data processing apparatus to produce a machine, such that the instructions, which execute via the processor of the computer or other programmable data processing apparatus, create means for implementing the functions specified in the flowchart flow or flows and/or block diagram block or blocks.
These computer program instructions may also be stored in a computer-readable memory that can direct a computer or other programmable data processing apparatus to function in a particular manner, such that the instructions stored in the computer-readable memory produce an article of manufacture including instruction means which implement the function specified in the flowchart flow or flows and/or block diagram block or blocks.
These computer program instructions may also be loaded onto a computer or other programmable data processing apparatus to cause a series of operational steps to be performed on the computer or other programmable apparatus to produce a computer implemented process such that the instructions which execute on the computer or other programmable apparatus provide steps for implementing the functions specified in the flowchart flow or flows and/or block diagram block or blocks.
Finally, it should be noted that: the above examples are only intended to illustrate the technical solution of the present invention, but not to limit it; although the present invention has been described in detail with reference to the foregoing embodiments, it will be understood by those of ordinary skill in the art that: the technical solutions described in the foregoing embodiments may still be modified, or some technical features may be equivalently replaced; and such modifications or substitutions do not depart from the spirit and scope of the corresponding technical solutions of the embodiments of the present invention.

Claims (11)

1. A payment channel assignment method, comprising the steps of:
responding to a payment request sent by a client, and determining a plurality of payment channels corresponding to the payment request according to a preset corresponding relation, wherein each payment channel is configured with a channel ID, a payment parameter and a weight value;
distributing a payment channel for the payment request according to the payment parameter and the weight value of each payment channel, and sending the corresponding relation between the payment request and the channel ID of the distributed payment channel to a client, wherein the method specifically comprises the following steps:
analyzing the payment parameters of each payment channel, and acquiring the accessible bank, quota, maintenance time and channel switch state of each payment channel;
when the payment channel meets the condition that the accessible bank is consistent with the bank corresponding to the payment request, the payment channel switch is in an open state and the current time does not fall into the maintenance time range, the payment channel is in a distributable state, otherwise, the payment channel is directly closed;
for each payment channel in an assignable state, the payment amount assigned to the payment channel must be lower than the limit;
allocating a payment channel for a payment request by:
obtaining the total number E of the payment requests, the total number N of the payment channels in the assignable state, and the weight value A of each payment channel in the assignable stateiCalculating the number E of the payment requests which can be distributed to each payment channel according to the following formulai
Figure FDA0002649569880000011
No matter the weight value is high or low, each payment channel in an assignable state has an opportunity to be assigned with a payment request, the payment channel with the high weight value has a high probability of executing payment, and the payment channel with the low weight value has a low probability of executing payment;
and acquiring a payment result whether the payment of each payment channel sent by the client is successful, and updating the weight value of each payment channel according to the payment result of each payment channel.
2. The payment channel allocation method according to claim 1, wherein the obtaining of the payment result of whether the payment of each payment channel sent by the client is successful or not and the updating of the weight value of each payment channel according to the payment result of each payment channel specifically include:
if the payment result of the payment channel is successful, the weight value of the payment channel is increased, otherwise, the weight value of the payment channel is reduced;
if the weight value of the payment channel reaches the upper limit threshold value, the weight value of the payment channel is adjusted to be the upper limit threshold value, and if the weight value of the payment channel is lower than the lower limit threshold value, the weight value of the payment channel is adjusted to be zero.
3. The payment channel allocation method according to claim 2, wherein if the payment result of the payment channel is successful, the weight value is increased, otherwise, the weight value is decreased, specifically including:
the payment success times of the payment channel in the timing period are obtained according to each payment result of the payment channel, and the payment success rate of the payment channel is calculated by combining the total payment times in the timing period:
Figure FDA0002649569880000021
the weight value of the payment channel is the result obtained by taking an integer after the payment success rate is multiplied by ten.
4. The payment channel allocation method according to claim 2, wherein a payment result indicating whether each payment channel sent by the client has paid successfully is obtained, and the weight value of each payment channel is updated according to the payment result of the payment channel, and the method further comprises the following steps:
recording the continuous payment failure times of the payment channel or the payment failure times in a preset time period, and directly setting the weight value of the payment channel to be zero if the payment failure times exceed a set threshold value.
5. A payment channel assignment arrangement, comprising:
the response module is used for responding to a payment request sent by a client and determining a plurality of payment channels corresponding to the payment request according to a preset corresponding relation, wherein each payment channel is configured with a channel ID, a payment parameter and a weight value;
the allocation module allocates a payment channel to the payment request according to the payment parameter and the weight value of each payment channel, associates the payment request with the channel ID of the allocated payment channel, and specifically includes:
analyzing the payment parameters of each payment channel, and acquiring the accessible bank, quota, maintenance time and channel switch state of each payment channel;
when the payment channel meets the condition that the accessible bank is consistent with the bank corresponding to the payment request, the payment channel switch is in an open state and the current time does not fall into the maintenance time range, the payment channel is in a distributable state, otherwise, the payment channel is directly closed;
for each payment channel in an assignable state, the payment amount assigned to the payment channel must be lower than the limit;
allocating a payment channel for a payment request by:
obtaining the total number E of the payment requests, the total number N of the payment channels in the assignable state, and the weight value A of each payment channel in the assignable stateiCalculating the number E of the payment requests which can be distributed to each payment channel according to the following formulai
Figure FDA0002649569880000031
No matter the weight value is high or low, each payment channel in an assignable state has an opportunity to be assigned with a payment request, the payment channel with the high weight value has a high probability of executing payment, and the payment channel with the low weight value has a low probability of executing payment;
and the adjusting module is used for acquiring a payment result whether the payment of each payment channel sent by the client is successful or not and updating the weight value of each payment channel according to the payment result of each payment channel.
6. The payment channel distribution apparatus of claim 5, wherein the adjustment module is specifically configured to:
if the payment result of the payment channel is successful, the weight value of the payment channel is increased, otherwise, the weight value of the payment channel is reduced;
if the weight value of the payment channel reaches the upper limit threshold value, the weight value of the payment channel is adjusted to be the upper limit threshold value, and if the weight value of the payment channel is lower than the lower limit threshold value, the weight value of the payment channel is adjusted to be zero.
7. The payment channel allocation apparatus as claimed in claim 6, wherein in the adjustment module, if the payment result of the payment channel is successful, the weight value is increased, otherwise, the weight value is decreased, specifically including:
the payment success times of the payment channel in the timing period are obtained according to each payment result of the payment channel, and the payment success rate of the payment channel is calculated by combining the total payment times in the timing period:
Figure FDA0002649569880000032
the weight value of the payment channel is the result obtained by taking an integer after the payment success rate is multiplied by ten.
8. The payment channel assignment device of claim 7, wherein the adjustment module is further configured to:
recording the continuous payment failure times of the payment channel or the payment failure times in a preset time period, and directly setting the weight value of the payment channel to be zero if the payment failure times exceed a set threshold value.
9. A storage medium storing computer instructions for performing the payment channel assignment method of any one of claims 1-4 when executed by a computer.
10. A payment routing system, comprising: at least one processor; and a memory communicatively coupled to the at least one processor; wherein the content of the first and second substances,
the memory stores instructions executable by the one processor to cause the at least one processor to:
responding to a payment request sent by a client, and determining a plurality of payment channels corresponding to the payment request according to a preset corresponding relation, wherein each payment channel is configured with a channel ID, a payment parameter and a weight value;
distributing a payment channel for the payment request according to the payment parameter and the weight value of each payment channel, and sending the corresponding relation between the payment request and the channel ID of the distributed payment channel to a client, wherein the method specifically comprises the following steps:
analyzing the payment parameters of each payment channel, and acquiring the accessible bank, quota, maintenance time and channel switch state of each payment channel;
when the payment channel meets the condition that the accessible bank is consistent with the bank corresponding to the payment request, the payment channel switch is in an open state and the current time does not fall into the maintenance time range, the payment channel is in a distributable state, otherwise, the payment channel is directly closed;
for each payment channel in an assignable state, the payment amount assigned to the payment channel must be lower than the limit;
allocating a payment channel for a payment request by:
obtaining the total number E of the payment requests, the total number N of the payment channels in the assignable state, and the weight value A of each payment channel in the assignable stateiCalculating the number E of the payment requests which can be distributed to each payment channel according to the following formulai
Figure FDA0002649569880000051
No matter the weight value is high or low, each payment channel in an assignable state has an opportunity to be assigned with a payment request, the payment channel with the high weight value has a high probability of executing payment, and the payment channel with the low weight value has a low probability of executing payment;
and acquiring a payment result whether the payment of each payment channel sent by the client is successful, and updating the weight value of each payment channel according to the payment result of each payment channel.
11. The payment routing system of claim 10, wherein the at least one processor and the at least one memory are configured in each server in a cluster of servers.
CN201710326574.1A 2017-05-10 2017-05-10 Payment channel distribution method, device, storage medium and payment routing system Expired - Fee Related CN107169756B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201710326574.1A CN107169756B (en) 2017-05-10 2017-05-10 Payment channel distribution method, device, storage medium and payment routing system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710326574.1A CN107169756B (en) 2017-05-10 2017-05-10 Payment channel distribution method, device, storage medium and payment routing system

Publications (2)

Publication Number Publication Date
CN107169756A CN107169756A (en) 2017-09-15
CN107169756B true CN107169756B (en) 2020-12-08

Family

ID=59812836

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710326574.1A Expired - Fee Related CN107169756B (en) 2017-05-10 2017-05-10 Payment channel distribution method, device, storage medium and payment routing system

Country Status (1)

Country Link
CN (1) CN107169756B (en)

Families Citing this family (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107818428A (en) * 2017-11-28 2018-03-20 杭州龙盈互联网金融信息技术有限公司 The decision-making technique and device of business channel
CN108111599B (en) * 2017-12-19 2021-01-05 深圳马可孛罗科技有限公司 Data request method and system under unstable network environment
CN109960447A (en) * 2017-12-25 2019-07-02 新智数字科技有限公司 Method of payment and payment mechanism
CN109194495B (en) * 2018-06-29 2021-08-24 平安科技(深圳)有限公司 Server, message processing method, and computer-readable storage medium
CN109345218B (en) * 2018-07-23 2022-05-10 中国建设银行股份有限公司 Payment information distribution method, system, device and storage medium
CN108932614B (en) * 2018-07-26 2020-12-25 中金支付有限公司 Payment channel routing method and system
CN109102273B (en) * 2018-08-22 2021-08-24 四川新网银行股份有限公司 Method and system for realizing distributed intelligent payment routing
CN109447609A (en) * 2018-09-25 2019-03-08 平安科技(深圳)有限公司 Method of payment, device, computer equipment and storage medium
CN109447610A (en) * 2018-11-02 2019-03-08 北京京东金融科技控股有限公司 Method and apparatus for determining payment channel
CN109829704A (en) * 2018-12-07 2019-05-31 创发科技有限责任公司 Payment channel configuration method, device and computer readable storage medium
CN109829717A (en) * 2018-12-15 2019-05-31 深圳壹账通智能科技有限公司 O&M method, apparatus, computer installation and the storage medium of payment channel
CN110033247B (en) * 2019-01-04 2021-11-05 创新先进技术有限公司 Payment channel recommendation method and system
CN109615392A (en) * 2019-01-15 2019-04-12 蔷薇智慧科技有限公司 Payment channel determines method and device
CN109784929A (en) * 2019-01-24 2019-05-21 鑫涌算力信息科技(上海)有限公司 The transfer of payment channel failure and recovery system, method and terminal
CN110490563A (en) * 2019-07-12 2019-11-22 平安普惠企业管理有限公司 Data processing method, device, computer equipment and storage medium
CN111010307A (en) * 2019-10-24 2020-04-14 网银在线(北京)科技有限公司 Information transmission method and device, electronic equipment and computer readable storage medium
CN110942298A (en) * 2019-11-12 2020-03-31 北京三快在线科技有限公司 Payment data transmission control method and device, electronic equipment and storage medium
CN111130714B (en) * 2019-11-28 2023-04-07 网银在线(北京)科技有限公司 Data transmission method, device, electronic equipment and computer readable medium
CN111144854A (en) * 2019-12-06 2020-05-12 北京中交兴路信息科技有限公司 Distributed intelligent payment routing method and system
CN111260371A (en) * 2020-01-17 2020-06-09 中信银行股份有限公司 Recommendation method and device for domestic service route, storage medium and electronic equipment
CN111598562A (en) * 2020-05-14 2020-08-28 云账户技术(天津)有限公司 Method, apparatus and computer-readable storage medium for payment routing
CN111951000A (en) * 2020-08-24 2020-11-17 吉林亿联银行股份有限公司 Payment request processing method and device
CN112036873B (en) * 2020-09-01 2023-09-19 中国银行股份有限公司 Cross-line payment mode determining method and device
CN112258167A (en) * 2020-12-21 2021-01-22 上海富友支付服务股份有限公司 Method for dynamically switching payment route on payment platform side and payment platform system
CN115174686B (en) * 2022-07-12 2024-03-15 江苏苏宁银行股份有限公司 Method and device for dynamically adjusting weights of multiple service channels based on service efficiency

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1915467A (en) * 2005-08-18 2007-02-21 阿鲁策株式会社 Gaming machine
WO2013169926A1 (en) * 2012-05-08 2013-11-14 Visa International Service Association, Inc. System and method for authentication using payment protocol
CN105490825A (en) * 2014-09-15 2016-04-13 阿里巴巴集团控股有限公司 Business processing method and device

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7213256B1 (en) * 2000-12-29 2007-05-01 Dan Kikinis Method and apparatus for finding the same of similar shows
CN101808384B (en) * 2010-03-25 2012-07-25 中国电信股份有限公司 Wireless sensor network, routing method and node equipment
CN103841053A (en) * 2014-02-24 2014-06-04 齐齐哈尔大学 Novel bandwidth allocation algorithm supporting QoS
CN105631648A (en) * 2015-12-18 2016-06-01 深圳中兴网信科技有限公司 Method and system for selecting payment platform
CN105741088A (en) * 2016-01-27 2016-07-06 广州唯品会信息科技有限公司 Routing matching payment method and device
CN106127480A (en) * 2016-06-16 2016-11-16 上海携程商务有限公司 transaction payment method and system

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1915467A (en) * 2005-08-18 2007-02-21 阿鲁策株式会社 Gaming machine
WO2013169926A1 (en) * 2012-05-08 2013-11-14 Visa International Service Association, Inc. System and method for authentication using payment protocol
CN105490825A (en) * 2014-09-15 2016-04-13 阿里巴巴集团控股有限公司 Business processing method and device

Also Published As

Publication number Publication date
CN107169756A (en) 2017-09-15

Similar Documents

Publication Publication Date Title
CN107169756B (en) Payment channel distribution method, device, storage medium and payment routing system
CN103841134B (en) Based on API transmission, the method for receive information, apparatus and system
US20190244160A1 (en) Order processing method and apparatus
CN108932613B (en) Monitoring method and monitoring device for internet payment channel, equipment and storage medium
CN107707488A (en) Pay on-line transaction flow control methods, current limliting service end and client
CN110276182A (en) The implementation method of API distribution current limliting
CN101395898B (en) For charging is reserved in multiple communication services and/or type of service optimization
US20070088641A1 (en) Methods, systems, and computer program products for managing services accounts through electronic budget adjustments based on defined rules
US9208479B2 (en) Incident management for automated teller machines
EP2705654B1 (en) Method and apparatus for controlling charging of a service
CN110191160A (en) A kind of concurrency control method and device
CN109426896A (en) A kind of method and device of determining region transport power state, electronic equipment
CN110381455B (en) Flow monitoring processing method and related device and system
TW201447763A (en) System and method for controlling virtual machine
CN110433496A (en) Cloud game resource allocation method, electronic equipment and storage medium
WO2011060567A1 (en) License redistributing method, moderator and license controlling system thereof
CN109829704A (en) Payment channel configuration method, device and computer readable storage medium
CN111245739A (en) Real-time speed limiting method and device for super package flow service
JP6455183B2 (en) Billing processing apparatus, billing processing method, and billing processing program
US20220286564A1 (en) Method and Apparatus for Dynamic Realtime Sharing of Credit Units for Online Charging
CN112036593A (en) Data processing method, system and server for insurance value-added service
CN111901771A (en) Credit limit setting method, credit limit setting device, computer equipment and storage medium
CN115442167B (en) Block chain-based network traffic management method, device and system
CN111160991B (en) PDB advertisement flow optimization method and device, storage medium and electronic equipment
KR102107454B1 (en) System for multiplication of financial payment networks, method for financial services using the same and computer program for the same

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20201208

Termination date: 20210510

CF01 Termination of patent right due to non-payment of annual fee