Payment method, terminal device, server, system and medium

By introducing a two-factor verification mechanism of SDK server and terminal equipment in the payment system, the problem of security risks of payment processing is solved, high security in the payment process is achieved, and the security of payment requests is ensured.

JP2025508137AActive Publication Date: 2025-03-21CHINA UNIONPAY
View PDF 8 Cites 0 Cited by

Patent Information

Application Number
JP2024554112
Authority / Receiving Office
JP · JP
Patent Type
Applications
Current Assignee / Owner
Priority Date
2022-03-10
Filing Date
2022-10-08
Publication Date
2025-03-21
Estimated Expiration
2042-10-08

AI Technical Summary

Technical Problem

With the development of electronic payment technology, the security risks of payment processing in terminal devices have increased, and there is an urgent need to improve payment security.

Method used

By introducing a two-factor verification mechanism in the SDK server and terminal device, the SDK server first conducts security verification after receiving the payment request. After passing the security verification, it notifies the terminal device's SDK to display the user verification page, requiring the user to enter verification information, and the main program server performs user verification to ensure the security of the payment request.

Benefits of technology

It realizes two-factor verification in the payment process, improves payment security, ensures a secure interaction between the SDK and the main program, and reduces security risks in the payment process.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 2025508137000001_ABST
    Figure 2025508137000001_ABST
Patent Text Reader

Abstract

The present invention provides a payment method, a terminal device, a server, a system and a medium in the field of data processing, which includes the steps of: sending a security verification request message to a security control system in response to a received payment request message; receiving security verification result information sent by the security control system; sending a first notification message to an SDK in a terminal device when the security verification result indicates that information security verification is passed; and initiating a payment request to complete a payment when the user verification result information indicates that user verification is passed, the security verification request message includes security verification information and is used to instruct the security control system to perform security verification of the payment corresponding to the payment request message based on the security verification information, the terminal device has an SDK and a host program, the first notification message is used to notify the host program and instruct the SDK to display a user verification page to prompt a user to input first user verification input information, and the first user verification input information is used by the host program server to perform user verification and obtain user verification result information.
Need to check novelty before this filing date? Find Prior Art

Description

[Technical field]

[0001] CROSS-REFERENCE TO RELATED APPLICATIONS This application claims priority from a Chinese patent application filed with the China Patent Office on March 10, 2022, bearing application number 202210238575.1, and entitled "Payment Method, Terminal Device, Server, System and Medium," the entire disclosure of which is incorporated herein by reference.

[0002] The present invention relates to the field of data processing, and in particular to a payment method, a terminal device, a server, a system and a medium. [Background technology]

[0003] With the development of payment technology, the application of electronic payment is becoming more and more widespread. Users can make payments through terminals. Application programs and software development kits (SDKs) are installed on the terminals. The SDK can also be integrated into the application program to make payments together.

[0004] Payment processing on a terminal device involves two entities: the application program and the SDK. As the number of entities involved in payment processing increases, the security risk of the payment also increases. Therefore, there is an urgent need for a payment method that can improve security. Summary of the Invention [Problem to be solved by the invention]

[0005] The embodiments of the present invention provide a payment method, a terminal device, a server, a system, and a medium that can improve the security of payments. [Means for solving the problem]

[0006] In a first aspect, a payment method applied to a software development kit (SDK) server provided by an embodiment of the present invention includes the steps of: sending a security verification request message to a security control system in response to a received payment request message; receiving security verification result information sent by the security control system; if the security verification result information indicates that the security verification is passed, sending a first notification message to an SDK in a terminal device; and if the user verification result information indicates that the user verification is passed, initiating a payment request to complete the payment, wherein the security verification request message includes security verification information for instructing the security control system to perform security verification of the payment corresponding to the payment request message based on the security verification information; the terminal device has an SDK and a host program, and the first notification message is used to instruct the SDK to instruct the host program to display a user verification page to prompt the user to input first user verification input information, and the first user verification input information is used by the host program server to perform user verification and obtain user verification result information.

[0007] In a second aspect, an embodiment of the present invention provides a payment method applied to a terminal device. The terminal device has a software development kit (SDK) and a host program, and the method includes the steps of: obtaining a first notification message sent by an SDK server via the SDK; in response to the first notification message, notifying the host program via the SDK to display a user verification page to prompt the user to input first user verification input information; feeding back the first user verification input information to the host program server via the host program; and if the user verification result information to the SDK server indicates that the user verification is passed, sending the user verification result information obtained from the host program server via the host program to the SDK server via the SDK to initiate a payment request and complete the payment, wherein the first notification message is sent by the SDK server based on security verification result information indicating that security verification is passed, and the security verification result information is obtained by a security control system performing security verification on a payment corresponding to a payment request message based on the security verification information in the security verification request message, and the security verification request message is sent by the SDK server in response to the received payment request message, and the first user verification input information is used by the host program server to perform user verification and obtain the user verification result information.

[0008] In a third aspect, an embodiment of the present invention provides a payment method applied to a host program server, the method includes the steps of receiving first user verification input information fed back by a terminal device through a host program, performing user verification based on the first user verification input information and obtaining user verification result information, sending the user verification result information to a host program in the terminal device and sending the user verification result information to an SDK through the host program, so that the SDK sends the user verification result information to an SDK server, and if the user verification result information indicates that the user verification is passed, the SDK server initiates a payment request to complete the payment, the terminal device has a software development kit (SDK) and a host program, the first user verification input information is obtained by the SDK in response to a first notification message notifying the host program to display a user verification page, the first notification message is sent by the SDK server based on security verification result information indicating that the security verification is passed, the security verification result information is obtained by a security control system performing security verification on a payment corresponding to a payment request message based on the security verification information in the security verification request message, and the security verification request message is sent by the SDK server in response to the received payment request message.

[0009] In a fourth aspect, an embodiment of the present invention provides an SDK server, the SDK server including: a sending module configured to send a security verification request message to a security control system in response to a received payment request message; and a receiving module configured to receive security verification result information sent by the security control system, the security verification request message including security verification information for instructing the security control system to perform security verification of a payment corresponding to the payment request message based on the security verification information, the sending module is further configured to send a first notification message to an SDK in a terminal device if the security verification result information indicates that the security verification is passed, the terminal device has an SDK and a host program, the first notification message is used to instruct the SDK to display a user verification page to prompt a user to input first user verification input information, the first user verification input information is used by the host program server to perform user verification and obtain user verification result information, the sending module is further configured to initiate a payment request to complete the payment if the user verification result information indicates that the user verification is passed.

[0010] In a fifth aspect, an embodiment of the present invention provides a terminal device, the terminal device having a software development kit (SDK) and a host program, the terminal device including: a receiving module configured to obtain a first notification message sent by an SDK server via the SDK, a display module configured to notify the host program via the SDK to display a user verification page to prompt a user to input first user verification input information in response to the first notification message, and a sending module configured to feed back the first user verification input information to the host program server via the host program, the first notification message being sent by the SDK server based on security verification result information indicating that security verification has been passed, and a sending module configured to feed back the first user verification input information to the host program server via the host program, the first notification message being sent by the SDK server based on security verification result information indicating that security verification has been passed, The result information is obtained by the security control system performing security verification on the payment corresponding to the payment request message based on the security verification information in the security verification request message, the security verification request message is sent by the SDK server in response to the received payment request message, the first user verification input information is used by the host program server to perform user verification and obtain user verification result information, and the sending module is further configured to send the user verification result information obtained from the host program server via the host program to the SDK server via the SDK when the user verification result information indicates to the SDK server that the user verification is passed.

[0011] In a sixth aspect, a host program server provided by an embodiment of the present invention includes: a receiving module configured to receive first user verification input information fed back by a terminal device through a host program; a verification module configured to perform user verification based on the first user verification input information and obtain user verification result information; and a sending module configured to send the user verification result information to a host program in the terminal device, and send the user verification result information to an SDK through the host program, so that the SDK sends the user verification result information to an SDK server, and if the user verification result information indicates that the user verification is passed, the SDK server initiates a payment request to complete the payment. and wherein the terminal device has a software development kit (SDK) and a host program, the first user verification input information is obtained by the SDK in response to a first notification message notifying the host program to display a user verification page, the first notification message is sent by the SDK server based on security verification result information indicating that security verification has been passed, the security verification result information is obtained by a security control system performing security verification on a payment corresponding to the payment request message based on the security verification information in the security verification request message, and the security verification request message is sent by the SDK server in response to the received payment request message.

[0012] In a seventh aspect, an SDK server provided by an embodiment of the present invention includes a processor and a memory storing computer program instructions, and when the processor executes the computer program instructions, the payment method of the first aspect is performed.

[0013] In an eighth aspect, a terminal device provided by an embodiment of the present invention includes a processor and a memory for storing computer program instructions, and when the processor executes the computer program instructions, the payment method of the second aspect is performed.

[0014] In a ninth aspect, a host program server provided by an embodiment of the present invention includes a processor and a memory for storing computer program instructions, and when the processor executes the computer program instructions, the payment method of the third aspect is performed.

[0015] In a tenth aspect, a payment system provided by an embodiment of the present invention includes the SDK server of the seventh aspect, the terminal device of the eighth aspect, and the host program server of the ninth aspect.

[0016] In an eleventh aspect, an embodiment of the present invention provides a computer readable storage medium having computer program instructions stored thereon, the computer program instructions, when executed by a processor, causing the payment method of the first aspect, the payment method of the second aspect or the payment method of the third aspect to be performed. Effect of the Invention

[0017] The embodiments of the present invention provide a payment method, a terminal device, a server, a system, and a medium. The SDK server responds to the payment request message and sends a security verification request message to the security control system to request the security control system to perform security verification for this payment, thereby completing the security verification requested by the SDK owner. If the security verification is passed, the SDK server sends a message to the SDK of the terminal device to instruct the SDK to notify the host program to display a user verification page, so that the SDK triggers the host program to proactively start user verification and complete the user ID security requested by the host program owner. In the payment process, two-way verification between the SDK owner and the host program owner is realized, improving the security of the payment. [Brief description of the drawings]

[0018] [Figure 1]FIG. 2 is a schematic diagram illustrating an example of an application scenario of the payment method provided by an embodiment of the present invention. [Diagram 2] 1 is a flow chart of one embodiment of a payment method provided by a first aspect of the present invention. [Diagram 3] 4 is a flow chart of another embodiment of a payment method provided by the first aspect of the present invention. [Figure 4] 4 is a flow chart of another embodiment of a payment method provided by the first aspect of the present invention. [Diagram 5] 4 is a flowchart of yet another embodiment of a payment method provided by the first aspect of the present invention. [Figure 6] 4 is a flowchart of yet another embodiment of a payment method provided by the first aspect of the present invention. [Figure 7] 4 is a flow chart of one embodiment of a payment method provided by a second aspect of the present invention. [Figure 8] 4 is a flow chart of another embodiment of a payment method provided by the second aspect of the present invention. [Figure 9] 4 is a flowchart of another embodiment of a payment method provided by the second aspect of the present invention. [Figure 10] 4 is a flowchart of yet another embodiment of a payment method provided by the second aspect of the present invention. [Figure 11] 10 is a flowchart of yet another embodiment of a payment method provided by the second aspect of the present invention. [Figure 12] 4 is a flow chart of one embodiment of a payment method provided by the third aspect of the present invention. [Figure 13] 11 is a flow chart of another embodiment of a payment method provided by the third aspect of the present invention. [Figure 14] 1 is a flow chart illustrating an example of a payment process provided by an embodiment of the present invention. [Figure 15] 4 is a flowchart illustrating another example of a payment process provided by an embodiment of the present invention. [Figure 16]5 is a flowchart illustrating another example of a payment process provided by an embodiment of the present invention. [Figure 17] FIG. 11 is a schematic structural diagram of one embodiment of an SDK server provided by a fourth aspect of the present invention; [Figure 18] FIG. 11 is a schematic structural diagram of one embodiment of a terminal device provided by a fifth aspect; [Figure 19] FIG. 13 is a schematic structural diagram of one embodiment of a host program server provided by a sixth aspect; [Figure 20] FIG. 13 is a schematic structural diagram of one embodiment of an SDK server provided by the seventh aspect of the present invention; DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS

[0019] In order to more clearly describe the technical solutions of the embodiments of the present invention, the accompanying drawings used in the embodiments of the present invention are briefly described below, and those skilled in the art can obtain other accompanying drawings based on these drawings without creative efforts.

[0020] The features and exemplary embodiments of various aspects of the present invention are described in detail below, but in order to make the objectives, technical solutions and advantages of the present invention clearer, the present invention will be further described in detail with reference to the accompanying drawings and specific embodiments. It should be understood that the specific embodiments described herein are only for the purpose of illustrating applications, and are not intended to limit the applications. It will be apparent to those skilled in the art that the present invention can be practiced without some of these specific details. The following description of the embodiments is intended to provide a better understanding of the present invention by merely illustrating the examples thereof.

[0021] With the development of payment technology, the application of electronic payment is becoming more and more widespread. Users can make payments through terminal devices. The terminal devices are equipped with application programs for payment, but the functions of the application programs are limited. To make the payment functions more comprehensive, SDKs can also be configured in the terminal devices. The SDK can be integrated into the application program and perform payments together with the application program. In this situation, the payment process in the terminal device involves two entities: the application program (hereinafter referred to as application) and the SDK. As the number of entities involved in the payment process increases, the security risks of the payment also increase. Therefore, there is an urgent need for a payment method that can improve security.

[0022] The embodiments of the present invention provide a payment method, terminal device, server, system, and medium that perform double verification mainly based on the SDK and the host program, and complete the payment if both the verification mainly based on the SDK and the verification mainly based on the host program are passed. By verifying both the SDK and the host program, the security of the SDK-related interactions and the host program-related interactions is guaranteed, and the security of the entire payment process is improved.

[0023] The payment method provided in the present invention is mainly applied to a payment scenario including a terminal device, an SDK back-end system, a host program back-end system, and a security control system. Figure 1 is a schematic diagram showing an example of an application scenario of the payment method provided by an embodiment of the present invention. As shown in Figure 1, the terminal device 11 can communicate and interact with the SDK back-end system 12 and the host program back-end system 13 respectively, and the SDK back-end system 12 can also communicate and interact with the host program back-end system 13 and the security control system 14 respectively.

[0024] The terminal device 11 has a host program and an SDK. The payment function of the terminal device 11 requires the host program to call the SDK and execute together. The SDK of the terminal device 11 can interact with the host program. The SDK of the terminal device 11 can communicate and interact with the SDK back-end system 12, and the host program of the terminal device 11 can communicate and interact with the host program back-end system 13. The terminal device 11 is a device used by a user to make a payment, and specifically can include, but is not limited to, a mobile phone, a tablet computer, an electronic calculator, a smart wearable device, and the like.

[0025] The SDK back-end system 12 is a back-end system of the SDK, and may include multiple SDK servers. The types and number of SDK servers in the SDK back-end system 12 are not limited here. During the payment process, the terminal device 11 sends payment-related information to the SDK back-end system 12 via the SDK. The SDK back-end system 12 can also pre-store the account information and personal information of the user (payer) who makes the payment.

[0026] In some embodiments, the SDK backend system 12 may include an SDK backend subsystem and a payment code subsystem. The SDK backend subsystem and the payment code subsystem may communicate and interact with each other. The SDK backend subsystem may also communicate and interact with the SDK of the terminal device 11, and the payment code subsystem may communicate and interact with the host program backend system. The payment code subsystem may store related information of the payment code, and manage and verify the payment code. The payment code may include a collection code, a payment code, etc., and the payment code may specifically be a QR code or other form of graphic code, but is not limited thereto.

[0027] The host program backend system 13 is a backend system of the host program, and may include multiple host program servers. The types and number of host program servers in the host program backend system 13 are not limited here. During the payment process, the terminal device 11 interacts with the host program backend system 13 through the host program. The host program backend system 13 can also communicate and interact with the SDK backend system 12.

[0028] The security control system 14 is configured to perform security verification of the payment and may include multiple electronic devices. The types and number of electronic devices in the security control system 14 are not limited herein. The security control system 14 may communicate and interact with the SDK backend system 12. If the SDK backend system 12 includes an SDK backend subsystem and a payment code subsystem, the security control system 14 may communicate and interact with the SDK backend subsystem of the SDK backend system 12.

[0029] In some embodiments, the information transmission between the SDK in the terminal device 11 and the host program is encrypted transmission, i.e., the information exchanged between the SDK in the terminal device 11 and the host program is encrypted information. The SDK and the host program store the encryption algorithm and decryption algorithm required for encryption and decryption, respectively. The encryption algorithm and decryption algorithm in the SDK and the host program can be configured according to the application environment, requirements, etc. For example, the encryption algorithm and decryption algorithm in the SDK and the host program include, but are not limited to, the SM2 algorithm, the SM4 algorithm, the Data Encryption Standard (DES), the RSA (Rivest-Shamir-Adleman) algorithm, etc. The keys required for the encryption algorithm and decryption algorithm in the SDK may be stored and managed by the SDK back-end system 12. That is, the encryption and decryption keys in the SDK may be stored in the SDK server in the SDK back-end system 12. The SDK can interact with the SDK back-end system 12 to realize encryption and decryption. The keys required for the encryption algorithm and decryption algorithm in the host program may be stored and managed by the host program back-end system 13, that is, the encryption and decryption keys in the host program are stored in the host program server in the host program back-end system 13. The host program realizes encryption and decryption by interacting with the host program back-end system 13. Due to the ciphertext transmission between the SDK and the host program, the information transmitted between the SDK and the host program cannot be easily stolen, and the communication security between the SDK and the host program can be ensured.

[0030] In some embodiments, the SDK in the terminal device 11 has a security domain, and information in the SDK is stored in the security domain. The security domain is an encrypted data storage space and may be implemented by hardware and software, such as a Secure Element (SE) and / or a Trusted Execution Environment (TEE). The SDK may manage the permissions of the security domain, such as by dividing data that cannot be publicly read and data that only the host program has permission to read.

[0031] The settlement method, terminal device, server, system, and medium of the present invention will be described below in this order.

[0032] A first aspect of the present invention provides a payment method applied to an SDK server. That is, the payment method may be executed by the SDK server. Figure 2 is a flowchart of an embodiment of the payment method according to the first aspect of the present invention. As shown in Figure 2, the payment method may include steps S201 to S204.

[0033] In step S201, in response to the received payment request message, a security verification request message is sent to the security control system.

[0034] The payment request message is used to initiate a payment. The payment request message may be sent to the SDK server by the SDK in the terminal device, or the payment request message may be sent to the SDK server by the payment accepting device. If the SDK backend system includes an SDK backend subsystem and a payment code subsystem, the payment accepting device may initiate a payment to the SDK server in the payment code subsystem. The SDK server in the payment code subsystem sends the payment request message to the SDK server in the SDK backend subsystem. The payment request message includes order information, terminal device information, payment information, etc. The order information includes, but is not limited to, an order identifier, an order initiator, order details, an order amount, an order time, and other information related to the order. The terminal device information includes, but is not limited to, information related to the terminal device, such as the geographic location and device identifier of the terminal device making this payment. The payment information includes, but is not limited to, payment payer information, payment payee information, payment amount, payment time, and other payment related information. Payment payer information may include, but is not limited to, the merchant name, merchant account, and other information, and payment payer information may include, but is not limited to, the payer account, payer payment card information, payer ID, and other information.

[0035] The security verification request message includes security verification information. The security verification request message is used to instruct the security control system to perform security verification of the payment corresponding to the payment request message based on the security verification information. The security verification information may include at least a part of the information sent by the SDK in the terminal device to the SDK server. The security verification information may also include, but is not limited to, payment payer information pre-stored in the SDK server and indicated by the payment request message. For example, the security verification information may include one or more of a payment card number, a payer login account, a mobile phone number associated with the payer login account, a mobile phone number associated with the payment card, a terminal device identifier, a geographic location of the terminal device, a payment amount, a payment time, a payment card, past payment information of the payment card, and the like. The security verification information may also include, but is not limited to, other information that can be used for security verification.

[0036] In some examples, when the security verification request message includes a payment card number, the payment card number may be a default payment card number provided by the SDK in the terminal device. If the user switches the default payment card on the terminal device, i.e., if the default payment card number is changed, the SDK sends a message including the new default payment card number to the SDK server, which is triggered to resend the security verification request message including the new default payment card number to the security control system. That is, if the user switches the default payment card on the payment details page displayed on the terminal device, the SDK server resends the security verification request message including the switched default payment card number to the security control system.

[0037] The security control system receives the security verification request message and performs security verification based on the security verification information in the security verification request message. The security verification can verify the legitimacy of the payment and the security of the login state of the payment terminal device. Specifically, it can determine whether the security verification passes by checking whether the security verification information meets a predetermined security criterion. The security criterion can be set according to a specific application scenario, needs, etc., and is not limited thereto here. For example, the security verification information includes a terminal device identifier of the current payment and past payment information of the payment card. The past payment information of the payment card includes a terminal device identifier of the payment card in the historical payment. If the terminal device identifier of the current payment and the terminal device identifier of the payment card in the historical payment match, the security verification passes, and if they do not match, the security verification fails. As another example, the security verification information includes the geographic location of the terminal device used for the current payment, the payment time, and the past payment information of the payment card, and the past payment information of the payment card includes the geographic location of the terminal device used for the latest payment by the payment card and the payment time. If the time difference between the payment time of the latest payment of the payment card and the payment time of the current payment is less than a preset time length and the distance between the geographic location of the latest payment terminal device of the payment card and the location of the current payment terminal device is greater than a preset distance, the security verification fails; otherwise, the security verification passes. As another example, the security verification information includes a mobile phone number associated with the payer's login account and a mobile phone number associated with the payment card. If the mobile phone number associated with the payer's login account matches the mobile phone number associated with the payment card, the security verification passes; otherwise, the security verification fails.

[0038] In some examples, the security verification is determined to have failed if the security risk is very high, such as insufficient account balance, fraudulent payment, etc. The security verification may be determined to have passed if the security risk is medium or low, and if the security of the payment may be verified by subsequent user verification. For example, the security verification information includes a terminal device identifier of the current payment and past payment information of the payment card. The past payment information of the payment card includes a terminal device identifier of the payment card in the past payment. Since the user may change the terminal device, even if the terminal device identifier of the current payment does not match the terminal device identifier of the past payment of the payment card, the security verification is considered to have passed, and subsequent processing may use the user verification to determine whether the user is making the payment using a replaced terminal device. As another example, the security verification information includes a payment amount of the current payment and a payer's account balance, and if the payment amount of the current payment is equal to or less than the payer's account balance, the security verification is passed, and otherwise the security verification is not passed.

[0039] In some examples, when the SDK receives a payment request message and detects that the currently logged-in user account is not associated with a payment card, it sends card binding prompt information to prompt the user to perform the card binding process to bind the payment card. After binding the payment card, the SDK sends a security verification request message to the security control system.

[0040] In step S202, security verification result information sent by the security control system is received.

[0041] The security control system can perform security verification based on the security verification information, and obtain security verification result information for the current payment, i.e., the payment indicated by the payment request message. The security verification result information is used to indicate whether the security verification has been passed. If the security verification result information indicates that the security verification has not been passed, the SDK server can send an instruction message to the SDK of the terminal device, causing the SDK to issue a pop-up message to suspend the payment.

[0042] In some examples, after the SDK server receives security verification result information indicating that the security verification has been passed, the SDK of the terminal device can call a preset inquiry interface to send payment information, such as payer information, order information, such as order number, and other possible information related to the current payment to the SDK server. The SDK server can further supplement other order information (such as merchant number) related to the current payment and other payment information related to the payment, and synchronize the payment information and the order information to the host program server, thereby realizing the synchronization of information related to the current payment between the SDK server and the host program server.

[0043] In some examples, when the SDK backend system includes an SDK backend subsystem and a payment code subsystem, after the SDK server in the SDK backend subsystem receives security verification result information indicating that the security verification has been passed, the SDK server in the SDK backend subsystem can call a pre-configured query interface to send payment information, such as payer information of the current payment, and order information, such as an order number, to the SDK server in the payment code subsystem. The SDK server in the payment code subsystem can further supplement other order information, such as a merchant number of the current payment, and other payment information related to the payment, and synchronize the payment information and the order information with the host program server, thereby achieving synchronization of information related to the current payment between the SDK server in the SDK backend system and the host program server.

[0044] In step S203, if the security verification result information indicates that the security verification has been passed, a first notification message is sent to the SDK in the terminal device.

[0045] If the security verification result information indicates that the security verification is passed, a user verification process of the owner of the host program may be executed. The first notification message is used to instruct the SDK to notify the host program to display a user verification page to prompt the user to input the first user verification input information. The first user verification input information is used by the host program server to perform the user verification and obtain the user verification result information.

[0046] In response to the first notification message, the SDK in the terminal device may send a message to the host program to instruct the host program to display a user verification page. In response to the message, the host program causes the terminal device to display a user verification page. The user verification page includes a password input area, a verification code input area, a biological characteristic collection area, etc. The method of user verification is not limited here. Information input by the user to the user verification page is first user verification input information. The host program may send the first user verification input information to the host program server. The host program server may perform user verification based on the received first user verification input information and obtain user verification result information. User verification is used to confirm the identity of the user. Passing the user verification means that the user performing the payment operation is a legitimate user. For example, the first user verification input information is a password, and the host program server verifies whether the first user verification input information matches the password registered by the user in the host program server. If the first user authentication input information matches the password registered by the user in the host program server, the user authentication is successful, and if they do not match, the user authentication is unsuccessful. As another example, the first user authentication input is a face image, and the host program server verifies whether the first user authentication input and the face image that the user has pre-stored in the host program server belong to the same user. If the first user authentication input and the face image that the user has pre-stored in the host program server belong to the same user, the user authentication is successful; if they do not match, the user authentication is unsuccessful.

[0047] The user verification result information is used to indicate whether the user verification has been passed. The host program server can feed back the user verification result information to the host program and the SDK server respectively. The host program also sends the user verification result to the SDK so that both the SDK owner and the host program owner can know whether the user verification has been passed.

[0048] In some examples, when the host program displays the user verification page, the SDK may add event tracking functionality associated with the action of displaying the user verification page to facilitate subsequent analysis and troubleshooting of the host program's execution of the process of displaying the user verification page.

[0049] In step S204, if the user verification result information indicates that the user verification is passed, initiate a payment request to complete the payment.

[0050] The user verification result information indicates that the user has passed the verification, the user identity security is highly secure, and the user can initiate a payment request to the payer's account management system to make a successful payment. If the user verification result information indicates that the user has not passed the user verification, the payment may be stopped.

[0051] In some embodiments, since the user verification result information may be stolen or tampered with during transmission, in order to further ensure the security of the payment, a consistency verification criterion may be used to verify the security of the user verification result information during transmission. If the user verification result information meets the consistency verification criterion, the payment request is initiated. The consistency verification criterion is used to determine whether the user verification result information is safe and valid during the transmission process. If the user verification result information meets the consistency verification criterion, this means that the user verification result information is safe and valid during the transmission process. The payment request may be initiated to the payer's account management system, and the payment may be made successfully. Alternatively, the SDK server may send a request to the payer's account management system via the host program server. The payer's account management system initiates the payment request and makes the payment successfully. If the user verification result information does not meet the consistency verification criterion, that is, if the user verification result information is not safe and valid during the transmission process, the payment may be suspended.

[0052] In some examples, the consistency verification criteria includes that the first user verification result information is consistent with the second user verification result information, where the first user verification result information is the user verification result information that the host program server sends to the SDK via the host program, and the second user verification result information is the user verification result information obtained from the host program server. If the first user verification result information is consistent with the second user verification result information, it means that the user verification result information is safe and valid during the transmission process. If the first user verification result information is not consistent with the second user verification result information, it means that the user verification result information is not safe and valid during the transmission.

[0053] When the payment is successful, the SDK server may obtain payment result information indicating whether the payment is successful or not. The SDK server will send the payment result information to the SDK, the merchant system, etc., and display the payment success result to the user, the merchant, etc.

[0054] In the above payment process, since it takes a certain amount of time to transmit user verification result information, payment, and payment result information after user verification, the terminal device does not immediately display the payment completion page. In this case, the SDK may control the terminal device to display a payment in progress sign, such as an image containing the text "Loading", and stop displaying the payment in progress sign when the terminal device displays the payment completion page.

[0055] In an embodiment of the present invention, the SDK server responds to the payment request message and sends a security verification request message to the security control system to request the security control system to perform security verification for this payment, thereby completing the security verification required by the SDK owner. If the security verification is passed, the SDK server sends a message to the SDK of the terminal device to instruct the SDK to notify the host program to display a user verification page, so that the SDK triggers the host program to proactively start user verification and complete the user ID security required by the host program owner. In the payment process, two-way verification between the SDK owner and the host program owner is realized, the security of the payment is improved, and the need for security management by two entities, the SDK owner and the host program owner, is met.

[0056] In some examples, when the SDK server initiates a payment request to the payer's account management system via the host program server, the SDK server may provide first payment policy information of the SDK owner. The first payment policy information may include promotional information, payment activity information, etc. of the SDK owner, which may be used to calculate the payment amount indicated by the payment request message. The host program server may provide second payment policy information of the host program owner. The second payment policy information may include promotional information, payment activity information, etc. of the host program owner, which may be used to calculate the payment amount indicated by the payment request message.

[0057] In some embodiments, after receiving the payment request message, the SDK server may query the host program server directly or through a payment policy system for payment policy information, such as promotion information, payment activity information, etc.

[0058] In the above embodiment, the information exchanged between the SDK and the host program is encrypted information, and the SDK needs to encrypt and decrypt the information. Accordingly, the SDK server stores the key used to encrypt and decrypt the information exchanged between the SDK and the host program.

[0059] In some embodiments, the SDK server requests a user verification mode from the host program server, and sends feedback from the host program server to the SDK so that the SDK can perform corresponding operations. Figure 3 is a flowchart of another embodiment of a payment method provided by the first aspect of the present invention. The difference between Figure 3 and Figure 2 is that the payment method shown in Figure 3 also includes steps S205-S208, and step S203 in Figure 2 can be specifically improved to step S2031 in Figure 3.

[0060] In step S205, if the security verification result information indicates that the security verification is passed, send a user verification mode request message to the host program server.

[0061] The user verification mode request message is used to request the host program server to perform a user verification mode, and may include one or more of order information, terminal device information, and payment information corresponding to the payment indicated by the payment request message. For the specific contents of the order information, terminal device information, and payment information, please refer to the relevant descriptions in the above embodiments and will not be repeated here.

[0062] The host program server may determine the verification operation information according to the information of the user verification mode request message. The verification operation information is used to indicate whether to perform user verification and the mode of user verification. The host program server stores a judgment criterion for determining whether to perform user verification and the mode of user verification, and can determine whether to perform user verification and the mode of user verification according to whether the information of the user verification mode request message meets the reference criterion. The judgment criterion can be set according to the payment scenario, needs, etc., but is not limited to such. For example, the user verification mode request message includes payment information, and the payment information includes a payment amount. The judgment criterion may include a correspondence relationship between the range of the payment amount, whether to perform user verification, and the user verification mode. For example, the judgment criterion includes: if the payment amount is less than 100 yuan, no user verification is required; if the payment amount is within the range of 100 yuan to 500 yuan, user verification is required; the user verification mode is password verification, etc. If the payment amount is within the range of 500 yuan to 1,000 yuan, user verification is required, and the user verification mode is verification code verification. If the payment amount is more than 1,000 RMB, user verification is required, and the user verification mode is biological characteristic verification. As another example, the user verification mode request message may include order information and payment information. The order information includes an order identifier and a user account that placed the order, and the payment information includes a payer's login account. The criteria include: if the account of the user that placed the order does not match the payer's login account, user verification is required, and the user verification mode is biological characteristic verification; if the user account that placed the order matches the payer's login account, user verification is required, and the user verification mode includes password verification.

[0063] After the host program server determines the verification operation information, it can send a user verification mode feedback message to the SDK server, where the user verification mode feedback message includes the verification operation information.

[0064] In step S206, a user verification mode feedback message sent by the host program server is received.

[0065] In step S207, if the verification operation information includes a payment refusal mark, a second notification message is sent to the SDK.

[0066] The payment rejection mark indicates that user verification is not required and the payment is stopped. In response to the user verification mode feedback message, the SDK server sends a second notification message to the SDK in the terminal device. The second notification message is used to instruct the SDK to issue payment rejection prompt information. In response to the second notification message, the SDK can issue prompt information to prompt the user that there is a payment risk. In an example, the user verification mode feedback message may also include a reason for the payment rejection. Accordingly, the second notification message may also include a reason for the payment rejection. The prompt information sent by the SDK in response to the second notification message may include a reason for the payment rejection. The terminal device may display the reason for the payment rejection to notify the user. The reason for the payment rejection may include an abnormality in the SDK, an abnormality in the host program server, and other reasons that the user verification mode indicates failure, etc.

[0067] In step S208, if the verification operation information includes a password-free payment signature, a third notification message is sent to the SDK.

[0068] The password-free payment sign indicates that no user verification is required and the payment process can continue. In response to the user verification mode feedback message, the SDK server sends a third notification message to the SDK in the terminal device. The third notification message is used to instruct the SDK to issue password-free payment prompt information. The password-free payment prompt information may inform the user that the payment is a password-free payment.

[0069] In step S2031, if the verification operation information includes a user verification mode identifier and the security verification result information indicates that the security verification is passed, send a first notification message to the SDK.

[0070] The first notification message includes a user verification identifier. The user identifier is used to indicate a user verification mode. The first notification message is used to instruct the SDK to notify the host program to display a user verification page corresponding to the user identifier, so as to prompt the user to input first user verification input information corresponding to the user identifier. That is, in response to the first notification message, the SDK sends a prompting message including the user identifier to the host program, and the host program displays a user verification page corresponding to the user verification mode indicated by the user identifier based on the user identifier. Correspondingly, the first user verification input information input by the user also corresponds to the user verification mode indicated by the user identifier.

[0071] For example, if the user verification mode is identified as 01, then the user verification mode is password verification, the user verification page displayed by the host program is a password verification page, and the first user verification input information that the user must enter is a password. If the user verification mode is identified as 10, then the user verification mode is verification code verification, the user verification page displayed by the host program is a verification code verification page, and the first user verification input information that the user must enter is a verification code. If the user verification mode is identified as 11, then the user verification mode is biological characteristic verification, the user verification page displayed by the host program is a biological characteristic verification page, and the first user verification input information that the user must enter is a biological characteristic.

[0072] In some embodiments, the payment request message, the security verification request message, and the security verification result information may include a target host program identifier, which may include a host program identifier of a payment corresponding to the payment request message, i.e., the target host program identifier may indicate a payment-related host program corresponding to the payment request message.

[0073] The SDK server includes a preset first correspondence relationship. The first correspondence relationship includes a relationship between a host program identifier and a user verification caller. The host program identifier is used to identify a host program. The user verification caller is used to indicate an entity that displays a user verification page. The user verification caller includes an SDK or a host program in a terminal device. After receiving the security verification result information, the SDK server can determine a target user verification caller corresponding to the target host program identifier based on the target host program identifier and the first correspondence relationship. The target user verification caller is a user verification caller corresponding to the target host program identifier in the first correspondence relationship.

[0074] If the target user verification caller is the host program, the SDK server sends a first notification message to the SDK. If the target user verification caller is the SDK, the SDK server sends a fourth notification message to the SDK. The fourth notification message is used to instruct the SDK to display a user verification page to prompt the user to input second user verification input information. The second user verification input information is used by the SDK server to perform user verification and obtain user verification result information. The SDK in the terminal device can directly display the user verification page in response to the fourth notification message. In response, the user verification is performed by the SDK server. The SDK in the terminal device can send the second user verification input information to the SDK server. The SDK server performs user verification based on the second user verification input information and obtains user verification result information. For the specific content of the user verification, please refer to the relevant description of the user verification performed by the host program server in the above embodiment, and will not be repeated here.

[0075] By setting the first correspondence relationship, it is possible to make the subject setting of user verification in the terminal device more flexible and selective.

[0076] In some embodiments, the payment is initiated by the merchant system or by a merchant program installed on the terminal device. Before the SDK server receives the payment request message, order related information needs to be communicated between the merchant system and the SDK, and between the SDK and the SDK server. Figure 4 is a flowchart of another embodiment of the payment method provided by the first aspect of the present invention. The difference between Figure 4 and Figure 2 is that the payment method shown in Figure 4 may also include steps S209-S211.

[0077] In step S209, an order identifier is generated in response to the order request message sent by the dealership system.

[0078] After a user generates and places an order, the store system may send an order request message to the SDK server to request an identifier for identifying the order, i.e., an order identifier, from the SDK server. The order identifier generated by the SDK server is specifically the serial number of the order.

[0079] In step S210, an order feedback message is sent to the dealer system so that the dealer system can send an SDK invocation request message to the SDK.

[0080] The SDK server may generate an order feedback message. The order feedback message includes an order identifier. The SDK server sends the order feedback message to a store system, where the order feedback message includes the order identifier. After receiving the order feedback message, the store system may send an SDK invocation request message to an SDK in the terminal device. The SDK invocation request message includes the order identifier. The SDK invocation request message is used to request to invoke an SDK in the terminal device. The SDK in the terminal device may collect information, such as a geographical location of the terminal device and a terminal device identifier, during an initialization process.

[0081] In step S211, in response to the first order inquiry message sent by the SDK, send a first inquiry feedback message to the SDK.

[0082] The SDK sends a first order query message to the SDK server, so that the SDK server can query order information corresponding to the order identifier through the order identifier. The first order query message includes the order identifier. After the SDK server finds the order message corresponding to the order identifier, it feeds back the order message corresponding to the order identifier to the SDK through a first query feedback message. The first query feedback message includes the order information corresponding to the order identifier. After receiving the first query feedback message, the SDK sends a payment request message to the SDK server.

[0083] In some embodiments, the merchant may specify a specific payer for payment, and the order request message includes the specified payer identification information, i.e., the specific payer is specified through the order request message. The payment request message sent from the SDK to the SDK server includes the payment payer identification information, such as the user's login account. If the specified payer identification information does not match the payment payer identification information indicated in the payment request message, the SDK server sends a payment stop notification message to the SDK, and the SDK issues payment prompt information. The payment prompt information may notify the user to switch the user login account and pay again. The payment prompt information may prompt the user for the reason for the user payment stop. For example, the payment prompt information may include words such as "Payment cannot be made temporarily because the login account information does not match the information specified by the merchant" displayed on the terminal device.

[0084] In some embodiments, the payment may be a payment initiated by a user using a terminal device to scan another person's payment code. Before the SDK server receives the payment request message, the SDK and the SDK server need to interact with each other regarding order-related information. Figure 5 is a flowchart of yet another embodiment of a payment method provided by the first aspect of the present invention. The difference between Figure 5 and Figure 2 is that the payment method shown in Figure 5 may also include step S212 and step S213.

[0085] In step S212, a second order inquiry message sent by the SDK of the terminal device is received.

[0086] The terminal device scans the collection code to obtain first code information. The first code information is code information read from the collection code. The SDK of the terminal device sends a second order inquiry message to the SDK server. The second order inquiry message is used to request the SDK server to inquire an order message corresponding to the first code information. The second order inquiry message includes the first code information obtained by the terminal device scanning the collection code.

[0087] In step S213, a second inquiry feedback message is sent to the SDK.

[0088] The SDK server searches for order information corresponding to the first code information based on the first code information. After finding the order information corresponding to the first code information, the SDK server generates a second inquiry feedback message and sends the second inquiry feedback message to the SDK. The second inquiry feedback message includes the order information corresponding to the first code information.

[0089] After receiving the second inquiry feedback message, the SDK can determine a payment amount based on the user's input, generate a payment request message, and send the payment request message to the SDK server. After receiving the payment request message, the SDK server can determine whether the payment card indicated in the payment request message is available, and if the payment card is available, send a security verification request message to the security control system.

[0090] In some embodiments, the payment may be initiated by a user displaying a payment code using a terminal device and another user scanning the payment code using a payment acceptance terminal. Before the SDK server receives the payment request message, the SDK may apply the payment code to the SDK server. Figure 6 is a flow chart of yet another embodiment of the payment method provided by the first aspect of the present invention. The difference between Figure 6 and Figure 2 is that the payment method shown in Figure 6 may also include step S214.

[0091] In step S214, in response to the received payment code application message, a payment code feedback message is sent to the SDK.

[0092] The payment code application message is sent by the SDK. That is, the SDK of the terminal device sends a payment code application message to the SDK server, and the payment code application message is used to apply for a payment code from the SDK server. The SDK server assigns a payment code to the payment code application message and feedbacks the payment code to the SDK through a payment code feedback message. The payment code feedback message includes the payment code.

[0093] In some examples, the SDK backend system includes an SDK backend subsystem and a payment code subsystem. The SDK can send a payment code application message to an SDK server in the SDK backend subsystem. The SDK server in the SDK backend subsystem forwards the payment code application message to the SDK server in the payment code subsystem. The SDK server in the payment code subsystem assigns a payment code to the payment code application message and sends a payment code feedback message to the SDK server in the SDK backend subsystem. The SDK server in the SDK backend subsystem forwards the payment code feedback message to the SDK.

[0094] A payment request message is generated by the payment accepting device based on the scanned payment code. After receiving the payment code feedback message, the SDK can display the payment code when making a payment. The payment accepting device scans the payment code and obtains second code information. The second code information is code information read from the payment code. The payment accepting device generates a payment request message based on the second code information, and sends the payment request message to the SDK server.

[0095] A second aspect of the present invention provides a payment method applied to a terminal device. That is, the payment method can be executed by the terminal device. The terminal device has an SDK and a host program. FIG. 7 is a flowchart of one embodiment of the payment method provided by the second aspect of the present invention. As shown in FIG. 7, the payment method can include steps S301 to S304.

[0096] In step S301, the first notification message sent by the SDK server is obtained via the SDK.

[0097] The first notification message is sent by the SDK server based on security verification result information indicating that the security verification has been passed. The security verification result information is obtained by the security control system performing security verification on the payment corresponding to the payment request message based on the security verification information in the security verification request message. The security verification request message is sent by the SDK server in response to the received payment request message.

[0098] In step S302, in response to the first notification message, notify the host program via the SDK to display a user verification page to prompt the user to input first user verification input information.

[0099] In step S303, the first user verification input information is fed back to the host program server via the host program.

[0100] The first user verification input information is used by the host program server to perform user verification and obtain user verification result information.

[0101] In step S304, the user verification result information obtained from the host program server through the host program is sent to the SDK server through the SDK, and if the user verification result information indicates that the user verification is passed, the SDK server initiates a payment request to complete the payment.

[0102] In some embodiments, the user verification information is also used by the SDK server to attempt to initiate a payment request if the user verification information meets consistency verification criteria.

[0103] In some examples, the consistency verification criteria include the first user verification result information being consistent with the second user verification result information, the first user verification result information being user verification result information that the host program server sends to the SDK via the host program, and the second user verification result information being user verification result information obtained from the host program server.

[0104] For the specific contents of the above steps S301 to S304, please refer to the relevant explanation of the above embodiment, and they will not be explained again here.

[0105] In an embodiment of the present invention, the SDK server responds to the payment request message and sends a security verification request message to the security control system to request the security control system to perform security verification for this payment, thereby completing the security verification requested by the SDK owner. After passing the security verification, the SDK in the terminal device receives a message sent by the receiving SDK server to instruct the SDK to notify the host program to display a user verification page. The SDK responds to the message and triggers the host program to actively start user verification to complete the user ID security verification requested by the host program owner. In the payment process, two-way verification of the SDK owner and the host program owner is realized, the security of the payment is improved, and the need for security management by two entities, the SDK owner and the host program owner, is met.

[0106] In some embodiments, the SDK server requests a user verification mode from the host program server, and the SDK can get feedback from the host program server through the SDK server and perform corresponding operations. Figure 8 is a flowchart of another embodiment of a payment method provided by the second aspect of the present invention. The difference between Figure 8 and Figure 7 is that the payment method shown in Figure 8 may also include step S305 and step S306.

[0107] In step S305, in response to the second notification message received by the SDK, rejection prompt information is sent via the SDK.

[0108] The second notification message is sent by the SDK server if the verification operation information includes a payment rejection mark.

[0109] In step S306, in response to the third notification message received by the SDK, send password-free payment prompt information via the SDK.

[0110] The third notification message is sent by the SDK server when the verification operation information includes a password-free payment signature.

[0111] The user verification mode feedback message includes verification operation information. The user verification mode feedback message is sent by the host server in response to the user verification mode request message. The user verification mode request message is sent by the SDK server to the host program server when the security verification result information indicates that the security verification is passed. The user verification mode request message includes one or more of order information, terminal device information, and payment information corresponding to the payment indicated by the payment request message.

[0112] In some embodiments, the first notification message is sent by the SDK server when the verification operation information in the SDK server includes a user identifier, and the first notification message includes a user verification identifier, which is used to instruct the SDK to notify the host program to display a user verification page matching the user identifier to prompt the user to input first user verification input information matching the user identifier.

[0113] For the specific contents of steps S305 and S306, please refer to the relevant explanations of the above embodiments, and they will not be described again here.

[0114] In some embodiments, the security verification result information includes a target host program identifier. The target host program identifier includes a payment host program identifier corresponding to the payment request message. The first notification message is sent by the SDK server when the target user verification caller in the SDK server is a host program. The target user verification caller is a user verification caller that matches the target host program identifier in a first correspondence relationship, and the target host program identifier includes a payment host program identifier corresponding to the payment request message. The first correspondence relationship includes a relationship between the host program identifier and the user verification caller.

[0115] In some embodiments, when the target user verification caller is an SDK, the terminal device obtains a fourth notification message sent by the SDK server through the SDK. The fourth notification message is sent by the SDK server when the target user verification caller is an SDK. In response to the fourth notification message, the terminal device attempts to call the SDK to display a user verification page and prompt the user to input second user verification input information. The terminal device feeds back the second user verification input information to the SDK server through the SDK. The second user verification input information is used by the SDK server to perform user verification and obtain user verification result information.

[0116] In some embodiments, the payment is initiated by the merchant system or by a merchant program installed on the terminal device. Before the SDK server receives the payment request message, there needs to be some interaction between the merchant system and the SDK and between the SDKs regarding order related information. FIG. 9 is a flow chart of another embodiment of the payment method provided by the second aspect of the present invention. The difference between FIG. 9 and FIG. 7 is that the payment method shown in FIG. 9 may also include steps S307-S309.

[0117] In step S307, an SDK invocation request message is received via the SDK, where the SDK invocation request message is generated by the merchant system in response to the order feedback message.

[0118] The order feedback message and the SDK call request message include an order identifier, which is generated by the SDK server in response to the order request message sent by the merchant system.

[0119] In step S308, in response to the SDK invocation request message, a first order inquiry message is sent to the SDK server via the SDK.

[0120] In step S309, a first inquiry feedback message sent from the SDK server in response to the first order inquiry message is received via the SDK.

[0121] The first query feedback message includes order information corresponding to the order identifier.

[0122] In some embodiments, the order request message includes a specified payer identification. In response to a payment stop notification message received via the SDK, the terminal device can send payment prompt information via the SDK. The payment stop notification message is sent by the SDK server if the specified payer identification does not match the payment payer identification indicated by the payment request message.

[0123] For the specific contents of the above steps S307 to S309, please refer to the relevant description of the above embodiment, and therefore they will not be described again here.

[0124] In some embodiments, the payment may be a payment initiated by a user using a terminal device to scan another person's payment code. Before the SDK server receives the payment request message, the SDK and the SDK server need to interact with each other regarding order-related information. Figure 10 is a flowchart of yet another embodiment of a payment method provided by the second aspect of the present invention. The difference between Figure 10 and Figure 7 is that the payment method shown in Figure 10 may also include steps S310 to S312.

[0125] In step 310, the payment code is scanned to obtain first code information.

[0126] In step 311, a second order inquiry message is sent to the SDK server via the SDK.

[0127] The second order inquiry message includes the first code information.

[0128] In step 312, a second inquiry feedback message sent by the SDK server via the SDK is received.

[0129] The second inquiry feedback message includes the first code information and corresponding order information.

[0130] For the specific contents of the above steps S310 to S312, please refer to the relevant description of the above embodiment, and therefore they will not be described again here.

[0131] In some embodiments, the payment includes a payment initiated by a user displaying a payment code using a terminal device and a payment initiated by another user scanning the payment code using a payment acceptance terminal. Before the SDK server receives the payment request message, the SDK may submit a payment code to the SDK server. FIG. 11 is a flow chart of yet another embodiment of a payment method provided by the second aspect of the present invention. The difference between FIG. 11 and FIG. 7 is that the payment method shown in FIG. 11 may also include steps S313 to S315.

[0132] In step S313, a payment code application message is sent to the SDK server via the SDK.

[0133] In step S314, a payment code feedback message sent by the SDK server via the SDK is received.

[0134] The payment code feedback message includes a payment code.

[0135] In step S315, the payment code is displayed.

[0136] The payment code is scanned by a payment accepting device and used to generate a payment request message.

[0137] For the specific contents of steps S313 to S315, please refer to the relevant explanation of the above embodiment, and they will not be explained again here.

[0138] A third aspect of the present invention provides a payment method applied to a host program server. That is, the payment method can be executed by the host program server. Fig. 12 is a flowchart of one embodiment of the payment method provided by the third aspect of the present invention. As shown in Fig. 12, the payment method can include steps S401 to S403.

[0139] In step S401, first user verification input information fed back by the terminal device through the host program is received.

[0140] The first user verification input information is obtained after the SDK notifies the host program to display a user verification page in response to the first notification message. The first notification message is sent by the SDK server based on security verification result information indicating that security verification has been passed. The security verification result information is used by the security control system to make a payment corresponding to the payment request message based on the security verification information in the security verification request message. The security verification request message is sent by the SDK server in response to the received payment request message.

[0141] In step S402, user verification is performed based on the first user verification input information, and user verification result information is obtained.

[0142] In step S403, have the SDK send user verification result information to the SDK server, and if the user verification result information indicates that the user verification is passed, send the user verification result information to a host program in the terminal device, so that the SDK server can initiate a payment request and complete the payment, and send the user verification result information to the SDK via the host program.

[0143] In some embodiments, after performing step S403, the host program server sends user verification result information to the SDK server, whereby if the user verification result information indicates that the user verification is passed, and the user verification result information meets the consistency verification criteria, the SDK server can initiate a payment request and complete the payment.

[0144] In some examples, the consistency verification criteria includes the first user verification information matching the second user verification information, where the first user verification information is user verification information that the host program server sends to the SDK via the host program, and the second user verification information is user verification information obtained from the host program server.

[0145] For the specific contents of the above steps S401 to S403, please refer to the relevant explanations of the above embodiments, and therefore they will not be described again here.

[0146] In an embodiment of the present invention, the SDK server responds to the payment request message and sends a security verification request message to the security control system to request the security control system to perform security verification for this payment, thereby completing the security verification requested by the SDK owner. If the security verification is passed, the SDK server sends a message to the SDK of the terminal device to instruct the SDK to notify the host program to display a user verification page, so that the SDK can trigger the host program to actively start user verification. The terminal device can receive the first user verification input information input by the user and send the first user verification input information to the host program server. The host program server can complete the user ID security verification requested by the host program owner. In the payment process, two-way verification of the SDK owner and the host program owner is realized, the security of the payment is improved, and the needs for security management by two entities, the SDK owner and the host program owner, are met.

[0147] In the above embodiment, the host program server stores a key for encrypting and decrypting information exchanged between the host program and the SDK. For specific content, please refer to the relevant description of the above embodiment, and will not be repeated here.

[0148] In some embodiments, the host program server can accept a request from the SDK server and provide a user verification mode to the SDK server. The SDK can get feedback from the host program server through the SDK server and perform corresponding operations. Figure 13 is a flowchart of another embodiment of a payment method provided by the third aspect of the present invention. The difference between Figure 13 and Figure 12 is that the payment method shown in Figure 13 may also include step S404 and step S405.

[0149] In step S404, receive a user verification mode request message sent by the SDK server if the security verification result information indicates that the security verification is passed.

[0150] The user verification mode request message includes one or more of order information, terminal device information, and payment information corresponding to the payment indicated by the payment request message.

[0151] In step S405, a user verification mode feedback message is sent to the SDK server based on the user verification mode request message.

[0152] The user verification mode feedback message includes verification operation information.

[0153] If the verification operation information includes a payment rejection mark, the SDK server sends a second notification message to the SDK. The second notification message is used to instruct the SDK to issue a payment rejection prompt information. If the verification operation information includes a password-free payment signature, the SDK server sends a third notification message to the SDK. The third notification message is used to instruct the SDK to issue a password-free payment prompt information.

[0154] In some embodiments, the first notification message is sent by the SDK server when the verification operation information in the SDK server includes a user identifier, and the first notification message includes a user verification identifier, which is used to instruct the SDK to notify the host program to display a user verification page matching the user identifier to prompt the user to input first user verification input information matching the user identifier.

[0155] For the specific contents of the above steps S404 and S405, please refer to the relevant explanations of the above embodiments, and therefore they will not be repeated here.

[0156] In some examples, the security verification result information includes a target host program identifier. The target host program identifier includes a payment host program identifier corresponding to the payment request message. The first notification message is sent by the SDK server when the target user verification caller in the SDK server is a host program. The target user verification caller is a user verification caller that matches the target host program identifier in the first correspondence. The target host program identifier includes a payment host program identifier corresponding to the payment request message. The first correspondence includes a relationship between the host program identifier and the user verification caller.

[0157] For ease of explanation, three scenarios are taken as examples to describe the interaction of the payment process among the terminal device, the system, and the server: payment is initiated by a merchant program installed in the merchant system or the terminal device, payment is initiated by the terminal device scanning another person's collection code, and payment is initiated by the payment acceptance terminal scanning the payment code.

[0158] In this example, payment is initiated by a merchant system or through a merchant program installed on the terminal device. Figure 14 is a flow chart illustrating an example of a payment process provided by an embodiment of the present invention. The terminal device includes an SDK and a host program. As shown in Figure 14, the payment process includes steps S501 to S522.

[0159] In step S501, after a user places an order, the merchant system sends an order request message to the SDK server.

[0160] In step S502, the SDK server responds to the order request message by sending an order feedback message to the dealership system. The order feedback message may include an order identifier generated by the SDK server.

[0161] In step S503, the dealer system transmits an SDK call request message to the SDK in the terminal device.

[0162] In step S504, the SDK collects terminal device information.

[0163] In step S505, the SDK sends a first order inquiry message to the SDK server.

[0164] In step S506, the SDK server feeds back the first inquiry feedback message to the SDK.

[0165] In step S507, the SDK sends a payment request message to the SDK server.

[0166] In step S508, the SDK server sends a security verification request message to the security control system.

[0167] In step S509, the security control system performs security verification on the payment indicated by the payment request message.

[0168] In step S510, the security control system feeds back the security verification result information to the SDK server.

[0169] In step S511, if the security verification result information indicates that the security verification is passed, the SDK server sends a user verification mode request message to the host program server.

[0170] In step S512, the host program server responds to the user verification mode request message by sending a user verification mode feedback message to the SDK server, the user verification mode feedback message including a user verification identifier.

[0171] In step S513, the SDK server sends a first notification message to the SDK. The first notification message includes a user verification identifier.

[0172] In step S514, the SDK sends the user verification mode identifier to the host program.

[0173] In step S515, the host program is triggered to display a user verification page matching the user identifier.

[0174] In step S516, the host program receives a first user verification input information entered by a user, and sends the first user verification input information to the host program server.

[0175] In step S517, the host program server performs user verification based on the first user verification input information, and obtains user verification result information.

[0176] In step S518, the SDK server obtains user verification result information from the host program server. For convenience of explanation, the user verification result information that the SDK server obtains directly from the host server is called second user verification result information.

[0177] In step S519, the host program server sends the user verification result information to the host program.

[0178] In step S520, the host program feeds back the user verification result information to the SDK.

[0179] In step S521, the SDK feeds back the user verification result information to the SDK server. For convenience of explanation, the user verification result information acquired by the SDK server from the SDK is referred to as first user verification result information.

[0180] In step S522, if the first user verification result information and the second user verification result information match, the SDK server initiates a payment request to complete the payment.

[0181] For the specific contents of steps S501 to S522, please refer to the relevant explanation of the above embodiment, and therefore they will not be repeated here.

[0182] In this example, the payment is initiated by the terminal device scanning another person's collection code. Figure 15 is a flow chart showing another example of a payment process provided by an embodiment of the present invention. The terminal device includes an SDK and a host program. As shown in Figure 15, the payment process includes steps S601 to S621.

[0183] In step S601, the terminal device scans the collection code to obtain the first code information, and the SDK sends a second order inquiry message to the SDK server. The second order inquiry message includes the first code information.

[0184] In step S602, the SDK server sends a second inquiry feedback message to the SDK.

[0185] In step S603, the SDK receives user input and determines the payment amount.

[0186] In step S604, the SDK sends a payment request message to the SDK server.

[0187] In step S605, the SDK server determines whether there are any payment cards available.

[0188] In step S606, if a payment card is available, the SDK server sends a security verification request message to the security control system.

[0189] In step S607, the security control system performs security verification on the payment indicated by the payment request message.

[0190] In step S608, the security control system feeds back the security verification result information to the SDK server.

[0191] In step S609, if the security verification result information indicates that the security verification is passed, the SDK server sends a user verification mode request message to the host program server.

[0192] In step S610, the host program server responds to the user verification mode request message by sending a user verification mode feedback message to the SDK server, the user verification mode feedback message including a user verification identifier.

[0193] In step S611, the SDK server sends a first notification message to the SDK. The first notification message includes a user verification identifier.

[0194] In step S612, the SDK sends the user verification mode identifier to the host program.

[0195] In step S613, the host program is triggered to display a user verification page matching the user identifier.

[0196] In step S614, the host program receives a first user verification input information entered by a user, and sends the first user verification input information to the host program server.

[0197] In step S615, the host program server performs user verification based on the first user verification input information, and obtains user verification result information.

[0198] In step S616, the SDK server acquires user verification result information from the host program server. For convenience of explanation, the user verification result information acquired by the SDK server directly from the host server is referred to as second user verification result information.

[0199] In step S617, the host program server sends the user verification result information to the host program.

[0200] In step S618, the host program feeds back the user verification result information to the SDK.

[0201] In step S619, the SDK feeds back the user verification result information to the SDK server. For convenience of explanation, the user verification result information acquired by the SDK server from the SDK is referred to as first user verification result information.

[0202] In step S620, if the first user verification result information and the second user verification result information match, the SDK server initiates a payment request to the host program server.

[0203] In step S621, the host program server initiates a payment request to the payer's account management system to complete the payment.

[0204] For the specific contents of steps S601 to S621, please refer to the relevant explanation of the above embodiment, and therefore they will not be repeated here.

[0205] In this example, a payment is initiated by a payment acceptance terminal scanning a payment code displayed on the terminal device. The terminal device includes an SDK and a host program. Here, an SDK backend system including an SDK backend subsystem and a payment code subsystem is taken as an example. For convenience of explanation, the SDK server in the SDK backend subsystem is referred to as a first SDK server, and the SDK server in the payment code subsystem is referred to as a second SDK server. FIG. 16 is a flowchart illustrating another example of a payment process provided by an embodiment of the present invention. As shown in FIG. 16, the payment process may include steps S701 to S723.

[0206] In step S701, the SDK in the terminal device sends a payment code application message to the second SDK server via the first SDK server.

[0207] In step S702, the second SDK server allocates a payment code and sends a payment code feedback message to the SDK via the first SDK server. The payment code feedback message includes the payment code.

[0208] In step S703, the payment acceptance terminal scans the payment code displayed on the terminal device, obtains second code information, and sends a payment request message to the second SDK server.

[0209] In step S704, the second SDK server sends a payment policy query message to the host program server via the payment policy system.

[0210] In step S705, the host program server feeds back the payment policy information to the second SDK server through the payment policy system.

[0211] In step S706, the second SDK server sends an additional processing request message to the first SDK server, the additional processing request message including payment policy information.

[0212] In step S707, the first SDK server sends a security verification request message to the security control system.

[0213] In step S708, the security control system performs security validation on the payment indicated by the payment request message.

[0214] In step S709, the security control system feeds back the security verification result information to the first SDK server.

[0215] In step S710, the first SDK server synchronizes payment information, order information, and other information to the host program server via the second SDK server.

[0216] In step S711, the first SDK server sends a user verification mode request message to the host program server via the second SDK server.

[0217] In step S712, the host program server sends a user verification mode feedback message to the first SDK server through the second SDK server. The user verification mode feedback message includes a user verification identifier.

[0218] In step S713, the first SDK server sends a first notification message to the SDK, the first notification message including a user verification identifier.

[0219] In step S714, the SDK sends the user verification mode identifier to the host program.

[0220] In step S715, the host program is triggered to display a user verification page matching the user identifier.

[0221] In step S716, the host program receives the first user verification input information entered by the user and sends the first user verification input information to the host program server.

[0222] In step S717, the host program server performs user verification based on the first user verification input information, and obtains user verification result information.

[0223] In step S718, the first SDK server obtains user verification result information from the host program server through the second SDK server. For convenience of explanation, the user verification result information obtained by the SDK server from the host server through the second SDK server is referred to as second user verification result information.

[0224] In step S719, the host program server sends the user verification result information to the host program.

[0225] In step S720, the host program feeds back the user verification result information to the SDK.

[0226] In step S721, the SDK feeds back the user verification result information to the first SDK server. For convenience of explanation, the user verification result information obtained by the first SDK server from the SDK is called the first user verification result information. If the owner of the host program and the owner of the payment card are the same, proceed to step S724; if the owner of the host program and the owner of the payment card are different, proceed to step S725.

[0227] In step S722, if the first user verification result information and the second user verification result information match, the first SDK server initiates a payment request to the payer's account management system via the second SDK server and the host program server to complete the payment.

[0228] In step S723, if the first user verification result information and the second user verification result information match, the first SDK server initiates a payment request to the payer's account management system via the second SDK server to complete the payment.

[0229] Before the above steps S722 and S723, if the payment uses payment policy information, the second SDK server can also interact with the payment policy system to comply with the payment policy information.

[0230] For the specific contents of steps S701 to S723, please refer to the relevant explanation of the above embodiment, and therefore they will not be repeated here.

[0231] A fourth aspect of the present invention provides an SDK server. Figure 17 is a schematic structural diagram of one embodiment of the SDK server provided by the fourth aspect of the present invention. As shown in Figure 17, the SDK server 800 can include a sending module 801 and a receiving module 802.

[0232] The sending module 801 is configured to send a security verification request message to the security control system in response to a received payment request message.

[0233] The security verification request message includes security verification information for instructing the security control system to perform security verification of the payment corresponding to the payment request message based on the security verification information.

[0234] The receiving module 802 may be configured to receive security validation result information sent by the security control system.

[0235] The sending module 801 may also be configured to send a first notification message to the SDK in the terminal device when the security verification result information indicates that the security verification is passed.

[0236] The terminal device has an SDK and a host program. The first notification message is used to notify the host program to instruct the SDK to display a user verification page to prompt the user to input first user verification input information. The first user verification input information is used by the host program server to perform user verification and obtain user verification result information.

[0237] The sending module 801 may also be configured to initiate a payment request and complete the payment if the user verification result information indicates that the user verification is passed.

[0238] In some embodiments, the sending module 801 may also be configured to initiate a payment request if the user verification result information meets a consistency verification criterion.

[0239] In some examples, the consistency verification criteria includes the first user verification information matching the second user verification information.

[0240] The first user verification information is user verification information that the host program server sends to the SDK via the host program. The second user verification information is user verification information that is obtained from the host program server.

[0241] In an embodiment of the present invention, the SDK server responds to the payment request message and sends a security verification request message to the security control system to request the security control system to perform security verification for this payment, thereby completing the security verification required by the SDK owner. If the security verification is passed, the SDK server sends a message to the SDK of the terminal device to instruct the SDK to notify the host program to display a user verification page, so that the SDK triggers the host program to proactively start user verification and complete the user ID security required by the host program owner. In the payment process, two-way verification between the SDK owner and the host program owner is realized, the security of the payment is improved, and the need for security management by two entities, the SDK owner and the host program owner, is met.

[0242] In some examples, the SDK server stores keys used to encrypt and decrypt information exchanged between the SDK and the host program.

[0243] In some embodiments, the sending module 801 may be configured to send a user verification mode request message to the host program server if the security verification result information indicates that the security verification is passed.

[0244] The user verification mode request message includes one or more of order information, terminal device information, and payment information corresponding to the payment indicated by the payment request message.

[0245] The receiving module 802 may also be configured to receive a user verification mode feedback message sent by the host program server.

[0246] The user verification mode feedback message includes verification operation information.

[0247] The sending module 801 can also be configured to send a second notification message to the SDK if the verification operation information includes a payment rejection mark.

[0248] The second notification message is used to instruct the SDK to issue a payment rejection prompt.

[0249] The receiving module 802 may also be configured to send a third notification message to the SDK if the verification operation information includes a password-free payment signature.

[0250] The third notification message is used to instruct the SDK to issue a password-less payment prompt.

[0251] In some embodiments, the sending module 801 is configured to send a first notification message to the SDK if the verification operation information includes a user identifier.

[0252] The first notification message includes a user verification identifier, which is used to instruct the SDK to notify the host program to display a user verification page matching the user identifier to prompt the user to enter first user verification input information matching the user identifier.

[0253] In some embodiments, the SDK server may further include a query module.

[0254] The inquiry module determines a target user verification caller corresponding to the target host program identifier based on a first correspondence relationship preset with the target host program identifier.

[0255] The first correspondence relationship includes a relationship between a host program identifier and a user verification caller.

[0256] The sending module 801 can be configured to send a first notification message to the SDK if the target user verification caller is a host program.

[0257] In some embodiments, the sending module 801 may also be configured to send a fourth notification message to the SDK if the target user verification caller is the SDK.

[0258] The fourth notification message is used to instruct the SDK to display a user verification page to prompt the user to input second user verification input information, which is used by the SDK server to perform user verification and obtain user verification result information.

[0259] In some embodiments, the SDK server 800 may further include an order identifier generation module.

[0260] The order identifier generation module may be configured to generate an order identifier in response to an order request message sent by the dealership system.

[0261] The sending module 801 can also send an order feedback message to the dealer system so that the dealer system can send an SDK invocation request message to the SDK.

[0262] The order feedback message and the SDK call request message contain an order identifier.

[0263] The sending module 801 may also send a first inquiry feedback message to the SDK in response to the first order inquiry message sent by the SDK.

[0264] The first query feedback message includes order information corresponding to the order identifier.

[0265] In some embodiments, the order request message includes a designated payer identification.

[0266] The sending module 801 sends a payment stop notification message to the SDK to cause the SDK to issue payment prompt information if the specified payer identification information does not match the payment payer identification information indicated by the payment request message.

[0267] In some embodiments, the receiving module 802 is further configured to receive a second order inquiry message sent by the SDK of the terminal device.

[0268] The second order inquiry message includes the first code information obtained by scanning the collection code by the terminal device.

[0269] The sending module 801 is further configured to send a second query feedback message to the SDK.

[0270] The second inquiry feedback message includes order information corresponding to the first code information.

[0271] In some embodiments, the sending module 801 may also be configured to send a payment code feedback message to the SDK in response to a received payment code application message.

[0272] The payment code application message is sent by the SDK, the payment code feedback message includes the payment code, and in response, a payment request message is generated by the payment accepting device based on the scanned payment code.

[0273] The fifth aspect of the present invention provides a terminal device. The terminal device has an SDK and a host program. Figure 18 is a schematic structural diagram of one embodiment of the terminal device provided by the fifth aspect. As shown in Figure 18, the terminal device 900 includes a receiving module 901, a display module 902 and a sending module 903.

[0274] The receiving module 901 is configured to obtain a first notification message sent by the SDK server via the SDK.

[0275] The first notification message is sent by the SDK server based on security verification result information indicating that the security verification has been passed. The security verification result information is obtained by the security control system performing security verification on the payment corresponding to the payment request message based on the security verification information in the security verification request message. The security verification request message is sent by the SDK server in response to the received payment request message.

[0276] The display module 902 may be configured to, in response to the first notification message, notify the host program, via the SDK, to display a user verification page to prompt the user to enter the first user verification input information.

[0277] The sending module 903 may be configured to feed back the first user verification input information to the host program server via the host program.

[0278] The first user verification input information is used by the host program server to perform user verification and obtain user verification result information.

[0279] The sending module 903 sends the user verification result information obtained from the host program server through the host program to the SDK server through the SDK, and if the user verification result information indicates that the user verification is passed, allows the SDK server to initiate a payment request to complete the payment.

[0280] In some embodiments, the user verification result information is also used to allow the SDK server to initiate a payment request if the user verification result information meets consistency verification criteria.

[0281] In some examples, the consistency verification criteria include the first user verification information matching the second user verification information, the first user verification information being user verification information that the host program server sends to the SDK via the host program, and the second user verification information being user verification information obtained from the host program server.

[0282] In an embodiment of the present invention, the SDK server responds to the payment request message and sends a security verification request message to the security control system to request the security control system to perform security verification for this payment, thereby completing the security verification requested by the SDK owner. After passing the security verification, the SDK in the terminal device receives a message sent by the receiving SDK server to instruct the SDK to notify the host program to display a user verification page. The SDK responds to the message and triggers the host program to actively start user verification to complete the user ID security verification requested by the host program owner. In the payment process, two-way verification of the SDK owner and the host program owner is realized, the security of the payment is improved, and the need for security management by two entities, the SDK owner and the host program owner, is met.

[0283] In some examples, the SDK has a security domain and information in the SDK is stored in the security domain.

[0284] The information exchanged between the SDK and the host program is encrypted. The encryption and decryption keys in the SDK are stored on the SDK server. The encryption and decryption keys in the host program are stored on the host program server.

[0285] In some examples, the display module 902 may also be configured to transmit the rejection prompt information via the SDK in response to the second notification message received by the SDK.

[0286] The second notification message is sent by the SDK server if the verification operation information includes a payment rejection mark.

[0287] The display module 902 may also be configured to transmit password-less payment prompt information via the SDK in response to the third notification message received by the SDK.

[0288] The third notification message is sent by the SDK server when the verification operation information includes a password-free payment signature.

[0289] Wherein, the user verification mode feedback message includes verification operation information. The user verification mode feedback message is sent by the host server in response to the user verification mode request message. The user verification mode request message is sent by the SDK server to the host program server when the security verification result information indicates that the security verification is passed. The user verification mode request message includes one or more of order information, terminal device information, and payment information corresponding to the payment indicated by the payment request message.

[0290] In some embodiments, the first notification message is sent by the SDK server when the verification operation information in the SDK server includes a user identifier, and the first notification message includes a user verification identifier, which is used to instruct the SDK to notify the host program to display a user verification page matching the user identifier to prompt the user to input first user verification input information matching the user identifier.

[0291] In some embodiments, the security verification result information includes a target host program identifier, where the target host program identifier includes a payment host program identifier corresponding to the payment request message. The first notification message is sent by the SDK server when the target user verification caller in the SDK server is a host program, where the target user verification caller is a user verification caller that matches the target host program identifier in a first correspondence relationship, where the target host program identifier includes a payment host program identifier corresponding to the payment request message, and the first correspondence relationship includes a relationship between the host program identifier and the user verification caller.

[0292] In some embodiments, the receiving module 901 may be configured to obtain a fourth notification message sent by the SDK server via the SDK. The fourth notification message is sent by the SDK server when the target user verification caller is the SDK.

[0293] In response to the fourth notification message, the display module 902 may invoke the SDK to display a user verification page and prompt the user to enter the second user verification input information.

[0294] The sending module 903 may also be configured to feed back the second user verification input information to the SDK server via the SDK.

[0295] The second user verification input information is used by the SDK server to perform user verification and obtain user verification result information.

[0296] In some embodiments, the receiving module 901 may also be configured to receive an SDK invocation request message via the SDK.

[0297] The SDK call request message is generated by the merchant system in response to the order feedback message. The order feedback message and the SDK call request message include an order identifier. The order identifier is generated by the SDK server in response to the order request message sent by the merchant system.

[0298] The sending module 903 may also be configured to send a first order inquiry message to the SDK server via the SDK in response to the SDK invocation request message.

[0299] The receiving module 901 may also be configured to receive, via the SDK, a first inquiry feedback message sent from the SDK server in response to the first order inquiry message.

[0300] The first query feedback message includes order information corresponding to the order identifier.

[0301] In some embodiments, the order request message includes a designated payer identification.

[0302] The display module 902 may also be configured to issue payment prompt information via the SDK in response to a payment stop notification message received via the SDK.

[0303] The payment stop notification message is sent by the SDK server when the specified payer identification information does not match the payment payer identification information indicated by the payment request message.

[0304] In some embodiments, the terminal device 900 may further include a scanning module.

[0305] The scan module is configured to scan the payment code to obtain first code information.

[0306] The sending module 903 may also be configured to send a second order inquiry message to the SDK server via the SDK.

[0307] The second order inquiry message includes the first code information.

[0308] The receiving module 901 may also be configured to receive a second inquiry feedback message sent by the SDK server via the SDK.

[0309] The second inquiry feedback message includes the first code information and corresponding order information.

[0310] In some embodiments, the sending module 903 may also be configured to send a payment code request message to the SDK server via the SDK.

[0311] The receiving module 901 may also be configured to receive a payment code feedback message sent by the SDK server via the SDK. The payment code feedback message includes a payment code.

[0312] The display module 902 may also be configured to display a payment code.

[0313] The payment code is scanned by a payment accepting device and used to generate a payment request message.

[0314] The sixth aspect of the present invention provides a host program server. Figure 19 is a schematic structural diagram of one embodiment of the host program server provided by the sixth aspect. As shown in Figure 19, the host program server 1000 includes a receiving module 1001, a verifying module 1002 and a sending module 1003.

[0315] The receiving module 1001 is configured to receive first user verification input information fed back by the terminal device through the host program.

[0316] The terminal device has a software development kit (SDK) and a host program. The first user verification input information is obtained after the SDK notifies the host program to display a user verification page in response to the first notification message. The first notification message is sent by the SDK server based on security verification result information indicating that security verification has been passed. The security verification result information is used by a security control system to make a payment corresponding to the payment request message based on the security verification information in the security verification request message. The security verification request message is sent by the SDK server in response to the received payment request message.

[0317] The verification module 1002 is configured to perform user verification based on the first user verification input information, and obtain user verification result information.

[0318] The sending module 1003 is configured to send the user verification result information to a host program in the terminal device, and send the user verification result information to the SDK via the host program, so that the SDK sends the user verification result information to the SDK server, and if the user verification result information indicates that the user verification is passed, the SDK server initiates a payment request and completes the payment.

[0319] In some embodiments, the sending module 1003 sends user verification result information to the SDK server, where the user verification result information indicates that the user verification has been passed, and if the user verification result information meets the consistency verification criteria, the SDK server can initiate a payment request to complete the payment.

[0320] In some examples, the consistency verification criteria includes the first user verification information matching the second user verification information.

[0321] The first user verification information is user verification information that the host program server sends to the SDK via the host program. The second user verification information is user verification information that is obtained from the host program server.

[0322] In an embodiment of the present invention, the SDK server responds to the payment request message and sends a security verification request message to the security control system to request the security control system to perform security verification for this payment, thereby completing the security verification requested by the SDK owner. If the security verification is passed, the SDK server sends a message to the SDK of the terminal device to instruct the SDK to notify the host program to display a user verification page, so that the SDK can trigger the host program to actively start user verification. The terminal device can receive the first user verification input information input by the user and send the first user verification input information to the host program server. The host program server can complete the user ID security verification requested by the host program owner. In the payment process, two-way verification of the SDK owner and the host program owner is realized, the security of the payment is improved, and the needs for security management by two entities, the SDK owner and the host program owner, are met.

[0323] In some examples, the host program server stores keys used to encrypt and decrypt information exchanged between the host program and the SDK.

[0324] In some embodiments, the receiving module 1001 may be configured to receive a user verification mode request message sent by the SDK server if the security verification result information indicates that the security verification has passed.

[0325] The user verification mode request message includes one or more of order information, terminal device information, and payment information corresponding to the payment indicated by the payment request message.

[0326] The sending module 1003 may be configured to send a user verification mode feedback message to the SDK server based on the user verification mode request message.

[0327] The user verification mode feedback message includes verification operation information.

[0328] Here, if the verification operation information includes a payment rejection mark, the SDK server sends a second notification message to the SDK. The second notification message is used to instruct the SDK to issue payment rejection prompt information. If the verification operation information includes a password-free payment signature, the SDK server sends a third notification message to the SDK. The third notification message is used to instruct the SDK to issue password-free payment prompt information.

[0329] In some embodiments, the first notification message is sent by the SDK server when the verification operation information in the SDK server includes a user identifier, and the first notification message includes a user verification identifier, which is used to instruct the SDK to notify the host program to display a user verification page matching the user identifier to prompt the user to input first user verification input information matching the user identifier.

[0330] In some embodiments, the security verification result information includes a target host program identifier, the target host program identifier including a host program identifier of a payment corresponding to the payment request message.

[0331] The first notification message is sent by the SDK server when the target user verification caller in the SDK server is a host program. The target user verification caller is a user verification caller that matches the target host program identifier in a first correspondence relationship. The target host program identifier includes a host program identifier of a payment corresponding to the payment request message. The first correspondence relationship includes a relationship between the host program identifier and the user verification caller.

[0332] The seventh aspect of the present invention provides an SDK server. Figure 20 is a schematic structural diagram of one embodiment of the SDK server provided by the seventh aspect of the present invention. As shown in Figure 20, the SDK server 1100 includes a memory 1101, a processor 1102, and a computer program stored in the memory 1101 and executable on the processor 1102.

[0333] In some examples, the processor 1102 may include a central processing unit (CPU), or an application specific integrated circuit (ASIC), or may be configured to implement one or more integrated circuits of embodiments of the present invention.

[0334] The memory 1101 may include a read-only memory (ROM), a random access memory (RAM), a magnetic disk storage media device, an optical storage media device, a flash memory device, an electrical, optical, or other physical / tangible memory storage device. Thus, in general, the memory includes one or more tangible (non-transitory) computer-readable storage media (e.g., memory devices) encoded with software including computer-executable instructions that, when executed (e.g., by one or more processors), can perform the operations described with reference to the payment method of the embodiment according to the first aspect of the present invention.

[0335] The processor 1102 reads the executable program code stored in the memory 1101, and executes a computer program corresponding to the executable program code to realize the payment method in the embodiment of the first aspect above.

[0336] In some examples, the SDK server 1100 may also include a communication interface 1103 and a bus 1104. Here, as shown in FIG. 20, the memory 1101, the processor 1102, and the communication interface 1103 are connected via the bus 1104 and communicate with each other.

[0337] In the embodiment of the present invention, the communication interface 1103 is mainly used to implement communication between modules, devices, units, and / or equipment. Input devices and / or output devices may be accessed via the communication interface 1103.

[0338] Bus 1104 includes hardware, software, or both that interconnects components of SDK server 1100. By way of example and not limitation, bus 1104 may include an Accelerated Graphics Port (AGP) or other graphics bus, an Enhanced Industry Standard Architecture (EISA) bus, a Front Side Bus (FSB), a Hyper Transport (HT) interconnect, an Industry Standard Architecture (ISA) bus, an infinite bandwidth interconnect, a Low pin count (LPC) bus, a memory bus, a Micro Channel Architecture (MCA) bus, a Peripheral Component Interconnect (PCI) bus, a PCI-Express (PCI-E) bus, a Serial Advanced Technology Attachment (SATA) bus, a Video Electronics Standards Association Local Bus (VLB) bus, or any other suitable bus, or a combination of two or more thereof. Where appropriate, bus 1104 may comprise one or more buses, and although embodiments of the invention describe and illustrate a particular bus, the invention contemplates any suitable bus or interconnect.

[0339] The eighth aspect of the present invention provides a terminal device. The terminal device may include a memory, a processor, and a computer program stored in the memory and executable on the processor. For the types and relationships of the memory and the processor, please refer to the relevant description of the memory and the processor of the SDK server above. The difference from the above SDK server includes that when the software in the memory is executed, it is operable to perform the operations described with reference to the payment method of the embodiment according to the second aspect of the present invention. Furthermore, by reading the executable program code stored in the memory, the processor is configured to execute the computer program corresponding to the executable program code and execute the payment method of the embodiment of the second aspect. In some examples, the terminal device may also include a communication interface and a bus. The memory, the processor, and the communication interface are connected via a bus and can communicate with each other. The communication connections between the memory, the processor, the communication interface, and the bus may refer to the communication connections between the memory, the processor, the communication interface, and the bus in the SDK server shown in FIG. 20, and will not be repeated here.

[0340] A ninth aspect of the present invention provides a host program server. The host program server may include a memory, a processor, and a computer program stored in the memory and executable on the processor. For the types and relationships of the memory and the processor, please refer to the relevant description of the memory and the processor of the SDK server above. The difference from the above SDK server includes that the software in the memory, when executed, is operable to perform the operations described with reference to the payment method of the embodiment according to the third aspect of the present invention. Furthermore, the processor is configured to execute a computer program corresponding to the executable program code and execute the payment method of the embodiment of the third aspect. In some examples, the host program server may also include a communication interface and a bus. The memory, the processor, and the communication interface are connected via a bus and can communicate with each other. The communication connections between the memory, the processor, the communication interface, and the bus may refer to the communication connections between the memory, the processor, the communication interface, and the bus in the SDK server shown in FIG. 20, which will not be repeated here.

[0341] The tenth aspect of the present invention provides a payment system, which can include the SDK server, the terminal device, and the host program server of the above embodiment. For details of the SDK server, the terminal device, and the host program server, please refer to the relevant description of the above embodiment, and will not be repeated here.

[0342] The eleventh aspect of the present invention also provides a computer-readable storage medium. When computer program instructions are stored on the computer-readable storage medium and the computer program instructions are executed by a processor, the payment method of the first aspect, the payment method of the second aspect and / or the payment method of the third aspect in the above embodiment can be implemented, and the same technical effect can be achieved. In order to avoid duplication, the details will not be described again here. Here, the computer-readable storage medium includes a non-transitory computer-readable storage medium, for example, including but not limited to a read-only memory (ROM), a random access memory (RAM), a magnetic disk, or an optical disk.

[0343] An embodiment of the present invention may also provide a computer program product, where when instructions in the computer program product are executed by a processor of the SDK server, the terminal device, or the host program server, the SDK server, the terminal device, or the host program server executes the payment method of an embodiment of the first aspect, the payment method of an embodiment of the second aspect, or the payment method of an embodiment of the third aspect.

[0344] It should be noted that each embodiment in this specification is described step by step, and the differences and commonalities between each embodiment and other embodiments can be mutually referenced. Each embodiment emphasizes the differences from other embodiments. The SDK server embodiment, user terminal embodiment, device embodiment, system embodiment, and computer-readable storage medium embodiment are described in detail in the description of the method embodiment. The present invention is not limited to the specific steps and structures described above and shown in the drawings. Those skilled in the art can make various changes, modifications, additions, and change the order of steps after understanding the spirit of the present invention. In addition, for the sake of brevity, a detailed description of known method techniques is omitted here.

[0345] Aspects of the present invention have been described with reference to flowchart illustrations and / or block diagrams of methods, apparatus (systems) and computer program products according to embodiments of the present invention. It will be understood that each block of the flowchart illustrations and / or block diagrams, and combinations of blocks in the flowchart illustrations and / or block diagrams, can be implemented by computer program instructions. These computer program instructions can be provided to a processor of a general purpose computer, special purpose computer, or other programmable data processing apparatus to generate a machine that can be implemented by executing the instructions via the processor of the computer or other programmable data processing apparatus. These instructions, executed by the processor of the computer or other programmable data processing apparatus, thereby enable the implementation of the functions / actions specified in one or more boxes of the flowchart illustrations and / or block diagrams. Such a processor may be, but is not limited to, a general purpose processor, a special purpose processor, a special purpose application processor, or a field programmable logic circuit. It will also be understood that each block in the block diagrams and / or flowchart illustrations, and combinations of blocks in the block diagrams and / or flowchart illustrations, can be implemented by dedicated hardware or software that performs the specified functions or operations. It will also be understood that they can be implemented by a combination of dedicated hardware and computer instructions.

[0346] Those skilled in the art should understand that the above embodiments are illustrative rather than restrictive. Different technical features appearing in different embodiments can be combined to achieve beneficial effects. Those skilled in the art should be able to understand and implement other modified embodiments of the disclosed embodiments based on studying the drawings, the specification, and the scope of the patent message. In the claims, the term "comprises" does not exclude other means or steps, the quantifier "one" does not exclude a plurality, and the terms "first" and "second" are used to indicate names rather than to indicate a particular order. Any reference signs in the claims should not be interpreted as limiting the scope. The functions of some parts described in the scope of the patent message can be implemented by a single hardware or software module. The appearance of certain technical features in different dependent claims does not mean that these technical features cannot be combined to achieve beneficial effects.

Claims

1. A payment method applied to a software development kit (SDK) server, comprising: sending a security verification request message to the security control system in response to the received payment request message; receiving security verification result information sent by the security control system; sending a first notification message to an SDK in a terminal device when the security verification result indicates that the information security verification is passed; if the user verification result information indicates that the user verification is passed, initiating a payment request and completing the payment; Including, the security verification request message includes security verification information and is used to instruct the security control system to perform security verification of the payment corresponding to the payment request message based on the security verification information; The terminal device has an SDK and a host program, the first notification message is used to notify the host program and instruct the SDK to display a user verification page to prompt a user to input first user verification input information, and the first user verification input information is used by a host program server to perform user verification and obtain user verification result information.

2. After receiving the security verification result information sent by the security control system, sending a user verification mode request message to the host program server when the security verification result indicates that information security verification is passed; receiving a user verification mode feedback message sent by the host program server; sending a second notification message to the SDK when the verification operation information includes a payment rejection mark; sending a third notification message to the SDK if the verification operation information includes a password-free payment signature; Including, the user verification mode request message includes one or more of order information, terminal device information, and payment information corresponding to the payment indicated by the payment request message; The user verification mode feedback message includes verification operation information; The second notification message is used to instruct the SDK to issue payment rejection prompt information; The payment method of claim 1 , wherein the third notification message is used to instruct the SDK to issue password-free payment prompt information.

3. The step of transmitting a first notification message to an SDK in the terminal device includes: sending the first notification message to the SDK if the verification operation information includes the user identifier; 3. The payment method of claim 2, wherein the first notification message includes the user identifier and is used to instruct the SDK to notify the host program to display a user verification page matching the user identifier to prompt a user to input the first user verification input information matching the user identifier.

4. The security verification result information includes a target host program identifier, and the target host program identifier includes a payment host program identifier corresponding to the payment request message; before transmitting the first notification message to an SDK in a terminal device, determining a target user verification caller corresponding to the target host program identifier based on the target host program identifier and a first predetermined correspondence relationship, the first correspondence relationship including a relationship between a host program identifier and a user verification caller; The step of transmitting a first notification message to an SDK in the terminal device includes: The payment method according to claim 1 , further comprising the step of: sending the first notification message to the SDK if the target user verification caller is the host program.

5. After determining a target user verification caller corresponding to the target host program identifier according to the target host program identifier and a first predetermined correspondence relationship, If the target user verification caller is the SDK, sending a fourth notification message to the SDK; 5. The payment method of claim 4, wherein the fourth notification message is used to instruct the SDK to display a user verification page to prompt a user to input second user verification input information, and the second user verification input information is used by the SDK server to perform user verification and obtain user verification result information.

6. The step of initiating a payment request includes: The payment method of claim 1 , further comprising initiating a payment request if the user verification result information satisfies a consistency verification criterion.

7. The consistency verification criteria are:

2. The payment method of claim 1, comprising: first user verification result information matching second user verification result information; the first user verification result information being the user verification result information transmitted from the host program server to the SDK via the host program; and the second user verification result information being the user verification result information obtained from the host program server.

8. The payment method of claim 1 , wherein the SDK server stores a key used to encrypt and decrypt information exchanged between the SDK and the host program.

9. before transmitting a security verification request message to a security control system in response to the received payment request message; generating an order identifier in response to an order request message sent by the dealership system; sending an order feedback message to the dealer system and causing the dealer system to send an SDK invocation request message to the SDK; sending a first inquiry feedback message to the SDK in response to a first order inquiry message sent by the SDK; Including, the order feedback message and the SDK invocation request message include the order identifier; The payment method of claim 1 , wherein the first inquiry feedback message includes order information corresponding to the order identifier.

10. the order request message includes a specified payer identification; The method comprises:

10. The payment method of claim 9, further comprising: if the specified payer identification information does not match the payer identification information of the payment indicated by the payment request message, the SDK sending a payment stop notification message to cause the SDK to issue payment prompt information.

11. before transmitting a security verification request message to a security control system in response to the received payment request message; receiving a second order inquiry message sent by the SDK of the terminal device; sending a second inquiry feedback message to the SDK; the second order inquiry message includes first code information obtained by scanning a collection code by the terminal device; The payment method according to claim 1 , wherein the second inquiry feedback message includes order information corresponding to the first code information.

12. before transmitting a security verification request message to a security control system in response to the received payment request message; sending a payment code feedback message to the SDK in response to the received payment code application message; The payment code application message is sent by the SDK, and the payment code feedback message includes a payment code; The payment method of claim 1 , wherein the payment request message is generated by a payment accepting device based on the scanned payment code.

13. A payment method applied to a terminal device, comprising: The terminal device has a software development kit (SDK) and a host program; The method comprises: obtaining a first notification message sent by an SDK server via the SDK; in response to the first notification message, causing the host program via the SDK to display a user verification page to prompt a user to enter first user verification input information; feeding back a first user verification input to a host program server via the host program; sending, via the SDK, the user verification result information obtained from the host program server via the host program to the SDK server, and initiating a payment request to complete the payment if the user verification result information indicates that the user has passed the user verification; Including, the first notification message is sent by the SDK server based on security verification result information indicating that security verification has been passed, the security verification result information being obtained by a security control system performing security verification on the payment corresponding to the payment request message based on security verification information in a security verification request message, and the security verification request message is sent by the SDK server in response to a received payment request message; The payment method, wherein the first user verification input information is used by a host program server to perform user verification and obtain user verification result information.

14. Sending rejection prompt information via the SDK in response to a second notification message received by the SDK, the second notification message being sent by the SDK server when the verification operation information includes a payment rejection mark; or Sending password-less payment prompt information via the SDK in response to a third notification message received by the SDK, the third notification message being sent by the SDK server when the verification operation information includes a password-less payment signature; 14. The payment method of claim 13, wherein the user verification mode feedback message includes the verification operation information, the user verification mode feedback message is sent by the host server in response to a user verification mode request message, the user verification mode request message is sent by an SDK server to the host program server when the security verification result information indicates that security verification is passed, and the user verification mode request message includes one or more of order information, terminal device information, and payment information corresponding to the payment indicated by the payment request message.

15. 15. The payment method of claim 14, wherein the first notification message is sent by the SDK server when the verification operation information includes the user identifier, and the first notification message includes the user identifier and is used to instruct the SDK to notify the host program to display a user verification page matching the user identifier to prompt a user to input the first user verification input information matching the user identifier.

16. The security verification result information includes a target host program identifier, and the target host program identifier includes a payment host program identifier corresponding to the payment request message; 16. The payment method according to claim 13, wherein the first notification message is sent by the SDK server when a target user verification caller is the host program, the target user verification caller is a user verification caller that matches a target host program identifier in a first correspondence relationship, the target host program identifier includes a host program identifier of a payment corresponding to the payment request message, and the first correspondence relationship includes a relationship between a host program identifier and a user verification caller.

17. Obtain a fourth notification message sent by an SDK server via the SDK, the fourth notification message being sent by the SDK server when the target user verification caller is the SDK; in response to the fourth notification message, calling the SDK to display a user verification page to prompt a user to enter second user verification input information; The payment method of claim 16, further comprising: feeding back the second user verification input information to the SDK server via the SDK, and the second user verification input information is used by the SDK server to perform user verification and obtain user verification result information.

18. The payment method of claim 13, wherein the user verification result information is also used to allow the SDK server to initiate a payment request if the user verification result information meets a consistency verification criterion.

19. The consistency verification criteria are:

20. The payment method of claim 18, comprising: the first user verification result information matching second user verification result information; the first user verification result information being the user verification result information transmitted from the host program server to the SDK via the host program; and the second user verification result information being the user verification result information obtained from a host program server.

20. The SDK has a security domain, and information in the SDK is stored in the security domain; The payment method according to claim 13, wherein information exchanged between the SDK and the host program is encrypted information, an encryption key and a decryption key in the SDK are stored in the SDK server, and an encryption key and a decryption key in the host program are stored in the host program server.

21. Before obtaining a first notification message sent by an SDK server via the SDK, further receiving an SDK invocation request message via the SDK, the SDK invocation request message being generated by a merchant system in response to an order feedback message, the order feedback message and the SDK invocation request message including an order identifier, the order identifier being generated by the SDK server in response to an order request message sent by the merchant system; In response to the SDK invocation request message, send a first order inquiry message to the SDK server via the SDK; 14. The payment method of claim 13, further comprising receiving, via the SDK, a first inquiry feedback message sent by the SDK server in response to the first order inquiry message, the first inquiry feedback message including order information corresponding to the order identifier.

22. the order request message includes a specified payer identification; The method comprises: The method further includes the step of transmitting payment prompt information via the SDK in response to a payment stop notification message received via the SDK; The payment method according to claim 21, wherein the payment stop notification message is sent by the SDK server when the specified payer identification information does not match the payer identification information of the payment indicated by the payment request message.

23. Before obtaining a first notification message sent by an SDK server via the SDK, further Scan the payment code to obtain first code information; Sending a second order inquiry message to the SDK server via the SDK, the second order inquiry message including the first code information; The payment method according to claim 13, further comprising receiving a second inquiry feedback message sent by the SDK server via the SDK, the second inquiry feedback message including order information corresponding to the first code information.

24. Before obtaining a first notification message sent by an SDK server via the SDK, further Sending a payment code application message to the SDK server via the SDK; receiving a payment code feedback message sent by the SDK server via the SDK, the payment code feedback message including a payment code; Display the payment code; 14. The method of claim 13, wherein the payment code is scanned by a payment accepting device and used to generate the payment request message.

25. A payment method applied to a host program server, comprising: receiving a first user verification input information fed back by the terminal device via the host program; performing user verification based on the first user verification input information and obtaining user verification result information; sending the user verification result information to the host program in the terminal device, and sending the user verification result information to the SDK via the host program to have the SDK send the user verification result information to the SDK server; and if the user verification result information indicates that the user verification is passed, the SDK server initiates a payment request to complete the payment; Including, A payment method in which the terminal device has a software development kit (SDK) and the host program, the first user verification input information is obtained after the SDK notifies the host program to display a user verification page in response to a first notification message, the first notification message is sent by the SDK server based on security verification result information indicating that security verification has been passed, the security verification result information is obtained by a security control system performing security verification on a payment corresponding to a payment request message based on security verification information in a security verification request message, and the security verification request message is sent by the SDK server in response to the received payment request message.

26. before receiving a first user verification input information fed back by the terminal device via a host program; receiving a user verification mode request message sent by the SDK server when the security verification result information indicates that security verification has been passed, the user verification mode request message including one or more of order information, terminal device information, and payment information corresponding to the payment indicated by the payment request message; Send a user verification mode feedback message to the SDK server according to the user verification mode request message, where the user verification mode feedback message includes verification operation information; 26. The payment method according to claim 25, wherein if the verification operation information includes a payment rejection mark, the SDK server sends a second notification message to the SDK, and the second notification message is used to instruct the SDK to issue payment rejection prompt information; if the verification operation information includes a password-free payment sign, the SDK server sends a third notification message to the SDK, and the third notification message is used to instruct the SDK to issue password-free payment prompt information.

27. 27. The payment method of claim 26, wherein the first notification message is sent by the SDK server when the verification operation information includes the user identifier, and the first notification message includes the user identifier and is used to instruct the SDK to notify the host program to display a user verification page matching the user identifier to prompt a user to input the first user verification input information matching the user identifier.

28. The security verification result information includes a target host program identifier, and the target host program identifier includes a payment host program identifier corresponding to the payment request message; 28. The payment method of claim 25, wherein the first notification message is sent by the SDK server when a target user verification caller is the host program, the target user verification caller is a user verification caller that matches a target host program identifier in a first correspondence relationship, the target host program identifier includes a host program identifier of a payment corresponding to the payment request message, and the first correspondence relationship includes a relationship between a host program identifier and a user verification caller.

29. 26. The payment method of claim 25, wherein if the user verification result information passes user verification and the user verification result information meets a consistency verification criterion, the user verification result information is sent to the SDK server for the SDK server to initiate a payment request and attempt to complete the payment.

30. The consistency verification criteria are:

30. The payment method of claim 29, including: first user verification result information matching second user verification result information; the first user verification result information being the user verification result information sent from the host program server to the SDK via the host program; and the second user verification result information being the user verification result information obtained from the host program server.

31. 26. The payment method of claim 25, wherein the host program server stores keys for encrypting and decrypting information exchanged between the host program and the SDK.

32. 1. A software development kit (SDK) server, comprising: a transmitting module configured to transmit a security verification request message to the security control system in response to the received payment request message; a receiving module configured to receive security verification result information transmitted by the security control system; the security verification request message includes security verification information and is used to instruct the security control system to perform security verification of the payment corresponding to the payment request message based on the security verification information; The sending module is further configured to, when the security verification result indicates that the information security verification is passed, send a first notification message to an SDK in a terminal device, the terminal device having an SDK and a host program, the first notification message is used to notify the host program and instruct the SDK to display a user verification page to prompt a user to input first user verification input information, the first user verification input information is used by a host program server to perform user verification and obtain user verification result information; The sending module is further configured to initiate a payment request and complete the payment if the user verification result information indicates that the user verification is passed.

33. A terminal device, The terminal device has a software development kit (SDK) and a host program; The terminal device a receiving module configured to obtain a first notification message sent by an SDK server via the SDK; a display module configured to, in response to the first notification message, cause the host program, via the SDK, to display a user verification page to prompt a user to enter first user verification input information; a transmission module configured to feed back the first user verification input information to a host program server via the host program; Including, the first notification message is sent by the SDK server based on security verification result information indicating that security verification has been passed, the security verification result information being obtained by a security control system performing security verification on the payment corresponding to the payment request message based on security verification information in a security verification request message, and the security verification request message is sent by the SDK server in response to a received payment request message; the first user verification input information is used by a host program server to perform user verification and obtain user verification result information; The sending module further sends the user verification result information obtained from the host program server via the host program to the SDK server via the SDK, and when the user verification result information indicates to the SDK server that the user verification is passed, initiates a payment request to complete the payment, the terminal device.

34. 1. A host program server comprising: a receiving module configured to receive a first user verification input information fed back by the terminal device via the host program; a verification module configured to perform user verification based on the first user verification input information and obtain user verification result information; a sending module configured to send the user verification result information to the SDK server, and if the user verification result information indicates that the user verification is passed, send the user verification result information to the host program in the terminal device, so that the SDK server can initiate a payment request to complete the payment, and send the user verification result information to the SDK via the host program; Including, The terminal device has a software development kit (SDK) and the host program, the first user verification input information is obtained after the SDK notifies the host program to display a user verification page in response to a first notification message, the first notification message is sent by the SDK server based on security verification result information indicating that security verification has been passed, the security verification result information is obtained by a security control system performing security verification on a payment corresponding to a payment request message based on the security verification information in a security verification request message, and the security verification request message is sent by the SDK server in response to the received payment request message, a host program server.

35. 1. A software development kit (SDK) server, comprising: A processor and a memory for storing computer program instructions, A software development kit (SDK) server, wherein when said processor executes said computer program instructions, the payment method of any one of claims 1 to 12 is implemented.

36. A terminal device, A processor and a memory for storing computer program instructions, A terminal device, wherein when the processor executes the computer program instructions, the payment method according to any one of claims 13 to 24 is implemented.

37. 1. A host program server comprising: A processor and a memory for storing computer program instructions, A host program server, wherein when said processor executes said computer program instructions, the payment method of any one of claims 25 to 31 is implemented.

38. A payment system, comprising: A payment system comprising a software development kit (SDK) server according to claim 35, a terminal device according to claim 36, and a host program server according to claim 37.

39. 1. A computer-readable storage medium, comprising: A computer readable storage medium having computer program instructions stored therein, the computer program instructions, when executed by a processor, realizing the payment method of any one of claims 1 to 31.

Citation Information

Patent Citations

  • Credit card check system, method for checking availability of settlement by credit card, and computer program

    JP2005275459A

  • Electronic settlement apparatus and electronic settlement method

    JP2009289063A

  • Portable terminal utilization transaction system and method

    JP2015087832A

  • Advertisement processing device and program

    JP2017102754A

  • Server and communication device

    JP2020057392A