CN116308589A - Invoice processing method and device and electronic equipment thereof - Google Patents

Invoice processing method and device and electronic equipment thereof Download PDF

Info

Publication number
CN116308589A
CN116308589A CN202310035165.1A CN202310035165A CN116308589A CN 116308589 A CN116308589 A CN 116308589A CN 202310035165 A CN202310035165 A CN 202310035165A CN 116308589 A CN116308589 A CN 116308589A
Authority
CN
China
Prior art keywords
invoice
amount
bank
draft
invoices
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202310035165.1A
Other languages
Chinese (zh)
Inventor
黄泽阳
林丽莉
黄欣怡
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
China Construction Bank Corp
CCB Finetech Co Ltd
Original Assignee
China Construction Bank Corp
CCB Finetech Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by China Construction Bank Corp, CCB Finetech Co Ltd filed Critical China Construction Bank Corp
Priority to CN202310035165.1A priority Critical patent/CN116308589A/en
Publication of CN116308589A publication Critical patent/CN116308589A/en
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/04Billing or invoicing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q40/00Finance; Insurance; Tax strategies; Processing of corporate or income taxes
    • G06Q40/12Accounting
    • G06Q40/123Tax preparation or submission

Abstract

The disclosure provides an invoice processing method, an invoice processing device and electronic equipment thereof, relates to the technical field of computers and the technical field of data processing, in particular to the technical field of finance, and can be applied to the information technology industry, and comprises the following steps: receiving N invoices uploaded by a client, and respectively sequencing N invoices and M bank-accepted draft according to the respective ticket amounts; traversing M bank acceptance draft in sequence, and traversing the bank acceptance draft M currently traversed i Executing a matching association flow with the invoice; the matching association flow comprises the following steps: acquiring bank acceptance draft M i Is a first matchable amount of (c); sequentially obtaining the invoice N which is not matched j Sum invoice N j A second matchable amount of (2); if the second matchable amount is greater than or equal to the first matchable amount, for invoice N j Draft M for bank acceptance i Correlate and accept draft M for next bank i+1 And executing a matching flow. The present disclosure mayAnd the automatic invoice verification and the correlation of the bank acceptance draft improve the efficiency and the accuracy of invoice processing and improve the efficiency and the accuracy when the bank acceptance draft business is handled in batches.

Description

Invoice processing method and device and electronic equipment thereof
Technical Field
The present disclosure relates to the field of computer technology and the field of data processing technology, and in particular, to the field of financial technology, which may be applied to the information technology industry.
Background
When the enterprise applies for issuing a bank acceptance draft to the bank, the real buying and selling relationship is needed between the drawer and the payee, the enterprise provides the contract of the buyer and the seller to the bank, if the drawer is a general tax payer of the value-added tax, the enterprise issues a special invoice of the value-added tax for purchasing goods to the bank, and the invoice amount can cover the bank acceptance draft amount.
In the related art, after a worker takes a paper or electronic invoice, the operator firstly inputs invoice data on a system, verifies the authenticity of the invoice, and then manually associates a bank acceptance draft with the invoice according to service experience after verification is true.
Therefore, how to automatically check and associate the invoice to the bank to accept the draft, avoids errors caused by manual operation, improves the efficiency and accuracy of invoice processing, and becomes one of important research directions.
Disclosure of Invention
The present disclosure aims to solve, at least to some extent, one of the technical problems in the related art. To this end, it is an object of the present disclosure to propose an invoice processing method.
A second object of the present disclosure is to propose an invoice processing device.
A third object of the present disclosure is to propose an electronic device.
A fourth object of the present disclosure is to propose a non-transitory computer readable storage medium.
A fifth object of the present disclosure is to propose a computer programme product.
To achieve the above object, an embodiment of a first aspect of the present disclosure provides an invoice processing method, including:
receiving N invoices uploaded by a client, and respectively sequencing N invoices and M bank-accepted draft according to the respective ticket amounts, wherein N, M is a positive integer;
traversing M bank acceptance draft in sequence, and traversing the bank acceptance draft M currently traversed i Executing a matching association flow with the invoice;
the matching association flow comprises the following steps: acquiring bank acceptance draft M i Is a first matchable amount of (c);
sequentially obtaining the invoice N which is not matched j Sum invoice N j A second matchable amount of (2);
if the second matchable amount is greater than or equal to the first matchable amount, for invoice N j Draft M for bank acceptance i Correlate and accept draft M for next bank i+1 And executing a matching flow.
In some implementations, the matching association flow further includes:
if the second matchable amount is less than the first matchable amount, acquiring a bank acceptance draft M i A history invoice and a second mateable amount of the history invoice for which the matching process was performed;
second matable amount to historical invoice and invoice N j Summing the second matchable amounts to obtain a matchable total amount;
if the total mateable amount is greater than or equal to the first mateable amount, for invoice N j And historical invoice and bank acceptance draft M i And carrying out association.
In some implementations, the method further comprises:
if the total mateable amount is still less than the first mateable amount, determining invoice N j Receipt M for bank i Executing a history invoice of the matching process;
selecting the next invoice N which is not matched k Draft M for bank acceptance i Executing the matching process until the bank accepts the draft M i The matching is successful.
In some implementations, the invoice N is entered when the second matchable amount is greater than the first matchable amount j Draft M for bank acceptance i After the association is performedFurther comprising:
according to the second matable amount and the first matable amount, for invoice N j Updating the second matchable amount of (2);
marking invoice N j Is an invoice that is not matched.
In some implementations, sorting N invoices and M bank acceptance draft, respectively, according to respective face amounts, includes:
performing natural language processing on the N invoices to obtain invoice element information of each invoice;
the invoice element information is sent to an invoice verification server, and verification results based on the invoice element information and sent by the invoice verification server are received;
when the verification result is that verification passes, respectively sequencing N invoices and M banks to accept the draft according to the respective ticket amounts;
in some implementations, before ranking the N invoices and the M bank acceptance draft, respectively, according to the respective face amounts, further comprising:
acquiring a first total amount of N invoices and a second total amount of M bank-accepted draft;
and if the first total amount is smaller than the second total amount, transmitting re-uploading information of the N re-uploaded invoices to the client.
In some implementations, after the completion of the traversal of the M bank acceptance draft, the method further includes:
judging whether a bank acceptance draft which is not matched with the invoice exists or not;
and if the bank acceptance draft which is not matched with the invoice exists, transmitting the re-uploading information of the N re-uploaded invoices to the client.
In some implementations, after the completion of the traversal of the M bank acceptance draft, the method further includes:
judging whether a bank acceptance draft which is not matched with the invoice exists or not;
if the M bank acceptance drafts are matched with the invoices, generating matching result information based on the matching relation between the M bank acceptance drafts and the N invoices and invoice element information of the invoices, and feeding back the matching result information to the client for displaying.
To achieve the above object, an embodiment of a second aspect of the present disclosure provides an invoice processing apparatus, including:
the receiving module is used for receiving the N invoices uploaded by the client, respectively ordering the N invoices and the M bank acceptance drafts according to the respective ticket amounts, and N, M is a positive integer;
the matching module is used for traversing M bank acceptance draft in sequence and traversing the bank acceptance draft M currently traversed i Executing a matching association flow with the invoice;
the matching association flow comprises the following steps: acquiring bank acceptance draft M i Is a first matchable amount of (c);
sequentially obtaining the invoice N which is not matched j Sum invoice N j A second matchable amount of (2);
if the second matchable amount is greater than or equal to the first matchable amount, for invoice N j Draft M for bank acceptance i Correlate and accept draft M for next bank i+1 And executing a matching flow.
In some implementations, the matching module is further to:
if the second matchable amount is less than the first matchable amount, acquiring a bank acceptance draft M i A history invoice and a second mateable amount of the history invoice for which the matching process was performed;
second matable amount to historical invoice and invoice N j Summing the second matchable amounts to obtain a matchable total amount;
if the total mateable amount is greater than or equal to the first mateable amount, for invoice N j And historical invoice and bank acceptance draft M i And carrying out association.
In some implementations, the matching module is further to:
if the total mateable amount is still less than the first mateable amount, determining invoice N j Receipt M for bank i Executing a history invoice of the matching process;
selecting the followingAn invoice N which is not matched k Draft M for bank acceptance i Executing the matching process until the bank accepts the draft M i The matching is successful.
In some implementations, the matching module is further to:
according to the second matable amount and the first matable amount, for invoice N j Updating the second matchable amount of (2);
marking invoice N j Is an invoice that is not matched.
In some implementations, the matching module is further to:
performing natural language processing on the N invoices to obtain invoice element information of each invoice;
the invoice element information is sent to an invoice verification server, and verification results based on the invoice element information and sent by the invoice verification server are received;
when the verification result is that verification passes, respectively sequencing N invoices and M banks to accept the draft according to the respective ticket amounts;
in some implementations, the matching module is further to:
acquiring a first total amount of N invoices and a second total amount of M bank-accepted draft;
and if the first total amount is smaller than the second total amount, transmitting re-uploading information of the N re-uploaded invoices to the client.
In some implementations, the matching module is further to:
judging whether a bank acceptance draft which is not matched with the invoice exists or not;
and if the bank acceptance draft which is not matched with the invoice exists, transmitting the re-uploading information of the N re-uploaded invoices to the client.
In some implementations, the matching module is further to:
judging whether a bank acceptance draft which is not matched with the invoice exists or not;
if the M bank acceptance drafts are matched with the invoices, generating matching result information based on the matching relation between the M bank acceptance drafts and the N invoices and invoice element information of the invoices, and feeding back the matching result information to the client for displaying.
To achieve the above object, an embodiment of a third aspect of the present disclosure provides an electronic device, including:
at least one processor; and
a memory communicatively coupled to the at least one processor; wherein, the liquid crystal display device comprises a liquid crystal display device,
the memory stores instructions executable by the at least one processor to enable the at least one processor to perform the invoice processing method provided in the embodiments of the first aspect of the present disclosure.
To achieve the above object, an embodiment of a fourth aspect of the present disclosure proposes a computer-readable storage medium having stored thereon computer instructions for causing a computer to execute an invoice processing method provided in an embodiment according to the first aspect of the present disclosure.
To achieve the above object, an embodiment of a fifth aspect of the present disclosure proposes a computer program product comprising a computer program which, when executed by a processor, implements the invoice processing method provided in the embodiment of the first aspect of the present disclosure.
The method and the system can automatically check and correlate the invoice and the bank acceptance draft, avoid errors caused by manual operation, avoid wasting resources, improve the efficiency and the accuracy of invoice processing, improve the efficiency and the accuracy when the bank acceptance draft business is handled in batches, and improve the data quality of invoice processing.
Drawings
FIG. 1 is a flow diagram of an invoice processing method of a first embodiment of the present disclosure;
FIG. 2 is a flow diagram of an invoice processing method of a second embodiment of the present disclosure;
FIG. 3 is a flow diagram of an invoice processing method of a third embodiment of the present disclosure;
FIG. 4 is a flow diagram of an invoice processing method of a fourth embodiment of the present disclosure;
FIG. 5 is a block diagram of an invoice processing device of a first embodiment of the present disclosure;
fig. 6 is a schematic structural view of an electronic device according to a first embodiment of the present disclosure.
Detailed Description
Embodiments of the present disclosure are described in detail below, examples of which are illustrated in the accompanying drawings, wherein like or similar reference numerals refer to like or similar elements or elements having like or similar functions throughout. The embodiments described below by referring to the drawings are exemplary and intended for the purpose of explaining the present disclosure and are not to be construed as limiting the present disclosure.
It should be noted that the terms "first," "second," and the like in the description and claims of the present disclosure and in the foregoing figures are used for distinguishing between similar objects and not necessarily for describing a particular sequential or chronological order. It is to be understood that the data so used may be interchanged where appropriate such that the embodiments of the disclosure described herein may be capable of operation in sequences other than those illustrated or described herein. The implementations described in the following exemplary examples are not representative of all implementations consistent with the present disclosure. Rather, they are merely examples of apparatus and methods consistent with some aspects of the present disclosure as detailed in the accompanying claims.
Invoice processing methods, invoice processing devices and electronic equipment of the embodiments of the disclosure are described below with reference to the accompanying drawings.
FIG. 1 is a flow chart of an invoice processing method according to a first embodiment of the present disclosure, as shown in FIG. 1, the method comprising the steps of:
in step S101, N invoices uploaded by the client are received, and N invoices and M banks are respectively ordered according to the respective ticket amounts.
Note that N, M is a positive integer.
The electronic bank accepts the draft, namely the electric draft, the enterprise is used as a ticket issuing person to apply for the accepting bank, and after the accepting bank approves and agrees to accept, the applicant is ensured to pay unconditionally and confirm the bill of money to the payee or ticket holder on the appointed date.
The special invoice for the value-added tax is limited to the general tax payer for purchasing the value-added tax, is used as a tax payer to reflect important accounting vouchers in economic activities, is also used as a proof for recording tax liabilities of sales side and tax amounts of purchase side, and is a legal special invoice which is important and decisive in the calculation and management of the value-added tax.
Alternatively, embodiments of the present disclosure may be performed by a server, alternatively the server may be a computer or the like.
When a bank acceptance draft service needs to be transacted, the client will acquire invoice information, which may be N invoices, alternatively, the invoice may be in a portable document (Portable Document Format, pdf) format or a picture (JointPhotographic Experts Group, JPEG) format, which is not limited by the present disclosure.
The client sends N Zhang Fapiao to the server, and the server receives N invoices uploaded by the client, accepts the drafts for N invoices and M banks, recognizes the respective ticket amounts and sorts the respective ticket amounts. Alternatively, N invoices and M bank acceptance draft may be identified by text recognition (optical character recognition, OCR) techniques to obtain respective face amounts.
In step S102, M bank acceptance drafts are traversed in sequence, and the currently traversed bank acceptance draft M is traversed i Executing a matching association flow with the invoice; the matching association flow comprises the following steps: acquiring bank acceptance draft M i Sequentially obtaining the invoice N which is not matched j Sum invoice N j If the second matable amount is greater than or equal to the first matable amount, for invoice N j Draft M for bank acceptance i Correlate and accept draft M for next bank i+1 And executing a matching flow.
The principle of matching association is that the amount of an invoice can cover the amount of a bank acceptance draft, so that one bank acceptance draft is allowed to be associated with a plurality of invoices, and one invoice is also allowed to be associated with a plurality of bank acceptance drafts, namely a many-to-many relationship. In the embodiment of the disclosure, any bank acceptance draft needs to have an associated invoice, and the sum of the associated invoice is greater than or equal to the sum of the bank acceptance draft.
Optionally, the bank accepts the draft M i The i-th bank acceptance draft of the M bank acceptance drafts can be represented, and i can take values of 1 to M. Invoice N j The j-th invoice in the N invoices can be represented, and j can be from 1 to N.
In some implementations, the invoice N is entered when the second matchable amount is greater than the first matchable amount j Draft M for bank acceptance i After the association is performed, the method further comprises the following steps: according to the second matable amount and the first matable amount, for invoice N j Updating the second matchable amount of (C) and marking invoice N j Is an invoice that is not matched.
In some implementations, the bank accepts the draft M i The first matchable amount is compared with invoice N which is not matched j Equal to the second matchable amount for invoice N j Draft M for bank acceptance i Correlating invoice N j The second matchable amount is updated to 0 and the next bank is accepted for the draft M i+1 And executing a matching flow.
In some implementations, the bank accepts the draft M i The first matchable amount is less than invoice N which is not matched j For invoice N j Draft M for bank acceptance i Correlating, obtaining the difference between the first and second matable amounts, and comparing invoice N according to the difference j The second matchable amount of (2) is updated, that is, the second matchable amount is updated to the difference between the first matchable amount and the second matchable amount, and the next bank is accepted into the draft M i+1 And executing a matching flow.
In the embodiment of the disclosure, N invoices uploaded by a client are received, N invoices and M bank acceptance drafts are respectively sequenced according to respective ticket amounts, the M bank acceptance drafts are traversed in sequence, and the currently traversed bank acceptance drafts M are traversed i And executing a matching association flow with the invoice. The automatic invoice verification and correlation bank acceptance draft can be realized, errors caused by manual operation are avoided, resource waste is avoided, and improvement is realizedThe efficiency and the accuracy of invoice processing are improved, the efficiency and the accuracy of handling bank acceptance draft business in batches are improved, and the data quality of invoice processing is improved.
FIG. 2 is a flow chart of an invoice processing method according to a first embodiment of the present disclosure, as shown in FIG. 1, the method comprising the steps of:
in step S201, N invoices uploaded by the client are received, and N invoices and M banks are respectively ordered according to the respective ticket amounts.
In step S202, M bank acceptance drafts are traversed in sequence, and the currently traversed bank acceptance draft M is traversed i Executing a matching association flow with the invoice; the matching association flow comprises the following steps: acquiring bank acceptance draft M i Sequentially obtaining the invoice N which is not matched j Sum invoice N j If the second matable amount is greater than or equal to the first matable amount, for invoice N j Draft M for bank acceptance i Correlate and accept draft M for next bank i+1 And executing a matching flow.
The description of step S201 to step S202 may be referred to the relevant content in the above embodiment, and will not be repeated here.
In step S203, if the second matchable amount is smaller than the first matchable amount, the bank acceptance draft M is acquired i The history invoice and the second matchable amount of the history invoice having performed the matching process.
The principle of matching the associations is that the amount of the invoice is to be able to cover the amount of the bank acceptance draft, allowing one bank acceptance draft to be associated with multiple invoices, whereby in some implementations, a single invoice may be allowed to be associated with multiple invoices when the amount of the single invoice fails to cover the amount of the bank acceptance draft. In the embodiment of the disclosure, if the second matchable amount is smaller than the first matchable amount, the bank acceptance draft M is obtained i The history invoice and the second matchable amount of the history invoice after the matching process is executed so as to facilitate the subsequent judgment of the second matchable amount of the history invoice and the invoice N j Is a second matchable amount of (2)Whether or not the summary of the bank acceptance draft M can be covered i Is a first matchable amount of (c).
In step S204, a second matable amount to historical invoice and invoice N j And summing the second matchable amounts to obtain a matchable total amount.
Second matable amount to historical invoice and invoice N j Summing the second matchable amount of the historical invoice to obtain a matchable total amount for subsequent determination of the second matchable amount of the historical invoice and invoice N j Whether the summary of the second matchable amount can cover the bank acceptance draft M i Is a first matchable amount of (c).
In step S205, if the total matchable amount is greater than or equal to the first matchable amount, for invoice N j And historical invoice and bank acceptance draft M i And carrying out association.
If the total mateable amount is greater than or equal to the first mateable amount, the second mateable amount of the historical invoice and invoice N are described j The summary of the second matchable amount can cover the bank acceptance draft M i For invoice N j And historical invoice and bank acceptance draft M i Correlate and process invoice N j And updating the respective second matchable amounts of the historical invoices.
In some implementations, invoice N is determined if the total matchable amount is still less than the first matchable amount j Receipt M for bank i A history invoice of the matching process is executed. Selecting the next invoice N which is not matched k Draft M for bank acceptance i Executing the matching process until the bank accepts the draft M i Successfully match invoice N k And historical invoice and bank acceptance draft M i Correlate and process invoice N k And updating the respective second matchable amounts of the historical invoices. Invoice N k The kth invoice in the N invoices can be represented, and k can be from 1 to N.
In the embodiment of the disclosure, if the second matchable amount is smaller than the first matchable amount, the bank acceptance draft M is obtained i Historical issue of matched flowSecond matable amount for ticket and historical invoice, second matable amount for historical invoice and invoice N j Summing the second matchable amount of the invoice N to obtain a matchable total amount, and if the matchable total amount is greater than or equal to the first matchable amount j And historical invoice and bank acceptance draft M i And carrying out association. The method and the system can automatically check and correlate the invoice and the bank acceptance draft, avoid errors caused by manual operation, avoid wasting resources, improve the efficiency and the accuracy of invoice processing, improve the efficiency and the accuracy when the bank acceptance draft business is handled in batches, and improve the data quality of invoice processing.
FIG. 3 is a flow chart of an invoice processing method according to a first embodiment of the present disclosure, as shown in FIG. 3, the method comprising the steps of:
in step S301, natural language processing is performed on N invoices, and invoice element information of each invoice is acquired.
In some implementations, the server receives N invoices sent by the client in a compressed format, and may decompress the N invoices first to obtain N invoices in jpg or pdf format, and further perform natural language processing on the N invoices to obtain invoice element information of each invoice.
Optionally, image recognition or OCR recognition may be performed on N invoices to obtain invoice element information of each invoice.
Optionally, invoice element information for an invoice may include an invoice number, an invoice code, an invoicing date, an invoice amount (post-tax), an invoice tax, and the like. Alternatively, invoice element information for each invoice may be as shown in table 1.
TABLE 1
Figure BDA0004048975050000081
In step S302, invoice element information is transmitted to an invoice verification server, and verification results based on the invoice element information transmitted from the invoice verification server are received.
Alternatively, the verification result based on the invoice element information sent by the invoice verification server may be as shown in table 2.
TABLE 2
Figure BDA0004048975050000082
In step S303, when the verification result is that the verification passes, N invoices and M banks are respectively ordered according to the respective face amounts.
In some implementations, before ranking the N invoices and the M bank acceptance draft, respectively, according to the respective face amounts, further comprising: the method comprises the steps of obtaining a first total amount of N invoices and a second total amount of M bank acceptance draft. If the first total amount is smaller than the second total amount, the amount of the invoice cannot cover the amount of the bank acceptance draft, and re-uploading information of re-uploading N invoices is sent to the client.
In step S304, M bank acceptance drafts are traversed in sequence, and the currently traversed bank acceptance draft M is traversed i Executing a matching association flow with the invoice; the matching association flow comprises the following steps: acquiring bank acceptance draft M i Sequentially obtaining the invoice N which is not matched j Sum invoice N j If the second matable amount is greater than or equal to the first matable amount, for invoice N j Draft M for bank acceptance i Correlate and accept draft M for next bank i+1 And executing a matching flow.
The description of step S304 may be referred to the content of the above embodiment, and will not be repeated here.
In the embodiment of the disclosure, natural language processing is performed on N invoices, invoice element information of each invoice is obtained, the invoice element information is sent to an invoice verification server, verification results based on the invoice element information and sent by the invoice verification server are received, and when the verification results are verification passing, the N invoices and the M banks are subjected to bill exchange, and the N invoices and the M banks are respectively ordered according to respective ticket amounts. The method and the system can automatically check and correlate the invoice and the bank acceptance draft, avoid errors caused by manual operation, avoid wasting resources, improve the efficiency and the accuracy of invoice processing, improve the efficiency and the accuracy when the bank acceptance draft business is handled in batches, and improve the data quality of invoice processing.
FIG. 4 is a flow chart of an invoice processing method according to a first embodiment of the present disclosure, as shown in FIG. 4, the method including the steps of:
in step S401, N invoices uploaded by the client are received, and N invoices and M banks are respectively ordered according to the respective ticket amounts.
In step S402, M bank acceptance drafts are traversed in sequence, and the currently traversed bank acceptance draft M is traversed i Executing a matching association flow with the invoice; the matching association flow comprises the following steps: acquiring bank acceptance draft M i Sequentially obtaining the invoice N which is not matched j Sum invoice N j If the second matable amount is greater than or equal to the first matable amount, for invoice N j Draft M for bank acceptance i Correlate and accept draft M for next bank i+1 And executing a matching flow.
In step S403, it is determined whether there is a bank acceptance draft that does not match the invoice.
In step S404, if there is a bank acceptance draft that does not match the invoice, the re-upload information of the N re-uploads of the invoice is sent to the client.
The principle of matching association is that the amount of an invoice can cover the amount of a bank acceptance draft, so that one bank acceptance draft is allowed to be associated with a plurality of invoices, and one invoice is also allowed to be associated with a plurality of bank acceptance drafts, namely a many-to-many relationship. In the embodiment of the disclosure, any bank acceptance draft needs to have an associated invoice, and the sum of the associated invoice is greater than or equal to the sum of the bank acceptance draft. If there is a bank acceptance draft which is not matched with the invoice, that is, if there is a bank acceptance draft which is not associated with the invoice, the error of the matching is indicated, and the re-uploading information of the N re-uploaded invoices is sent to the client.
In step S405, if the M bank acceptance draft matches the invoice, matching result information is generated based on the matching relationship between the M bank acceptance draft and the N invoices and invoice element information of the invoice, and is fed back to the client for display.
If the M bank acceptance drafts are matched with the invoices, the fact that any bank acceptance draft has the associated invoice can be indicated, corresponding matching result information can be generated based on the matching relation between the M bank acceptance drafts and the N invoices and invoice element information of the invoices, and the corresponding matching result information is fed back to the client for displaying.
Alternatively, the matching result information may be as shown in table 3.
TABLE 3 Table 3
Bank acceptance draft The amount of the face of the bill of the acceptance draft Invoice number Invoice code Invoice amount
Ticket number 1 100 12345601 65432101 50
Ticket number 1 100 12345601 65432101 300
Ticket number 2 300 12345602 65432102 150
Ticket number 3 400 12345603 65432103 40
Alternatively, the client may be a mobile phone or a computer.
The method and the system can automatically check and correlate the invoice and the bank acceptance draft, avoid errors caused by manual operation, avoid wasting resources, improve the efficiency and the accuracy of invoice processing, improve the efficiency and the accuracy when the bank acceptance draft business is handled in batches, and improve the data quality of invoice processing.
Fig. 5 is a block diagram of an invoice processing device according to a first embodiment of the present disclosure.
As shown in fig. 5, an invoice processing device 500 of an embodiment of the present disclosure includes:
the receiving module 510 is configured to receive N invoices uploaded by the client, and sort N invoices and M bank-accepted draft according to respective ticket amounts, where N, M is a positive integer;
a matching module 520 for traversing M bank acceptance draft in sequence and traversing the bank acceptance draft M currently traversed i Executing a matching association flow with the invoice;
the matching association flow comprises the following steps: acquiring bank acceptance draft M i Is a first matchable amount of (c);
sequentially obtaining non-matched invoicesN j Sum invoice N j A second matchable amount of (2);
if the second matchable amount is greater than or equal to the first matchable amount, for invoice N j Draft M for bank acceptance i Correlate and accept draft M for next bank i+1 And executing a matching flow.
In some implementations, the matching module 520 is further configured to:
if the second matchable amount is less than the first matchable amount, acquiring a bank acceptance draft M i A history invoice and a second mateable amount of the history invoice for which the matching process was performed;
second matable amount to historical invoice and invoice N j Summing the second matchable amounts to obtain a matchable total amount;
if the total mateable amount is greater than or equal to the first mateable amount, for invoice N j And historical invoice and bank acceptance draft M i And carrying out association.
In some implementations, the matching module 520 is further configured to:
if the total mateable amount is still less than the first mateable amount, determining invoice N j Receipt M for bank i Executing a history invoice of the matching process;
selecting the next invoice N which is not matched k Draft M for bank acceptance i Executing the matching process until the bank accepts the draft M i The matching is successful.
In some implementations, the matching module 520 is further configured to:
according to the second matable amount and the first matable amount, for invoice N j Updating the second matchable amount of (2);
marking invoice N j Is an invoice that is not matched.
In some implementations, the matching module 520 is further configured to:
performing natural language processing on the N invoices to obtain invoice element information of each invoice;
the invoice element information is sent to an invoice verification server, and verification results based on the invoice element information and sent by the invoice verification server are received;
when the verification result is that verification passes, respectively sequencing N invoices and M banks to accept the draft according to the respective ticket amounts;
in some implementations, the matching module 520 is further configured to:
acquiring a first total amount of N invoices and a second total amount of M bank-accepted draft;
and if the first total amount is smaller than the second total amount, transmitting re-uploading information of the N re-uploaded invoices to the client.
In some implementations, the matching module 520 is further configured to:
judging whether a bank acceptance draft which is not matched with the invoice exists or not;
and if the bank acceptance draft which is not matched with the invoice exists, transmitting the re-uploading information of the N re-uploaded invoices to the client.
In some implementations, the matching module 520 is further configured to:
judging whether a bank acceptance draft which is not matched with the invoice exists or not;
if the M bank acceptance drafts are matched with the invoices, generating matching result information based on the matching relation between the M bank acceptance drafts and the N invoices and invoice element information of the invoices, and feeding back the matching result information to the client for displaying.
The method and the system can automatically check and correlate the invoice and the bank acceptance draft, avoid errors caused by manual operation, avoid wasting resources, improve the efficiency and the accuracy of invoice processing, improve the efficiency and the accuracy when the bank acceptance draft business is handled in batches, and improve the data quality of invoice processing.
Fig. 6 is a block diagram of an electronic device, according to an example embodiment. It should be noted that the electronic device may be any electronic device of a client, a banking system, and a card organizing system.
As shown in fig. 6, the electronic device 600 includes:
a memory 610 and a processor 620, a bus 630 connecting the different components (including the memory 610 and the processor 620), the memory 610 storing a computer program that when executed by the processor 620 implements the invoice processing methods described in the embodiments of the present disclosure.
Bus 630 represents one or more of several types of bus structures, including a memory bus or memory controller, a peripheral bus, an accelerated graphics port, a processor, and a local bus using any of a variety of bus architectures. By way of example, and not limitation, such architectures include Industry Standard Architecture (ISA) bus, micro channel architecture (MAC) bus, enhanced ISA bus, video Electronics Standards Association (VESA) local bus, and Peripheral Component Interconnect (PCI) bus.
Electronic device 600 typically includes a variety of electronic device readable media. Such media can be any available media that is accessible by electronic device 600 and includes both volatile and nonvolatile media, removable and non-removable media.
Memory 610 may also include computer system readable media in the form of volatile memory, such as Random Access Memory (RAM) 640 and/or cache memory 650. The electronic device 600 may further include other removable/non-removable, volatile/nonvolatile computer system storage media. By way of example only, storage system 660 may be used to read from and write to non-removable, nonvolatile magnetic media (not shown in FIG. 6, commonly referred to as a "hard disk drive"). Although not shown in fig. 6, a magnetic disk drive for reading from and writing to a removable non-volatile magnetic disk (e.g., a "floppy disk"), and an optical disk drive for reading from or writing to a removable non-volatile optical disk (e.g., a CD-ROM, DVD-ROM, or other optical media) may be provided. In such cases, each drive may be coupled to bus 630 through one or more data medium interfaces. Memory 610 may include at least one program product having a set (e.g., at least one) of program modules configured to carry out the functions of the various embodiments of the disclosure.
A program/utility 680 having a set (at least one) of program modules 670 may be stored in, for example, memory 610, such program modules 670 including, but not limited to, an operating system, one or more application programs, other program modules, and program data, each or some combination of which may include an implementation of a network environment. Program modules 670 generally perform the functions and/or methods in the embodiments described in this disclosure.
The electronic device 600 may also communicate with one or more external devices 690 (e.g., keyboard, pointing device, display 691, etc.), one or more devices that enable a user to interact with the electronic device 600, and/or any device (e.g., network card, modem, etc.) that enables the electronic device 600 to communicate with one or more other computing devices. Such communication may occur through an input/output (I/O) interface 692. Also, the electronic device 600 may communicate with one or more networks such as a Local Area Network (LAN), a Wide Area Network (WAN) and/or a public network, such as the Internet, through a network adapter 693. As shown in fig. 6, the network adapter 693 communicates with other modules of the electronic device 600 over the bus 630. It should be appreciated that although not shown, other hardware and/or software modules may be used in connection with electronic device 600, including, but not limited to: microcode, device drivers, redundant processing units, external disk drive arrays, RAID systems, tape drives, data backup storage systems, and the like.
The processor 620 executes various functional applications and data processing by running programs stored in the memory 610.
It should be noted that, the implementation process and technical principle of the electronic device in this embodiment refer to the foregoing explanation of the invoice processing method in the embodiment of the disclosure, and are not repeated herein.
To achieve the above embodiments, the present disclosure also proposes a computer-readable storage medium.
Wherein the instructions in the computer-readable storage medium, when executed by a processor of the service server, enable the service server to perform the invoice processing method as described above. Alternatively, the computer readable storage medium may be ROM, random Access Memory (RAM), CD-ROM, magnetic tape, floppy disk, optical data storage device, etc.
To achieve the above embodiments, the present disclosure also provides a computer program product comprising a computer program, characterized in that the computer program, when executed by a processor, implements the invoice processing method as described above.
Other embodiments of the disclosure will be apparent to those skilled in the art from consideration of the specification and practice of the disclosure disclosed herein. This disclosure is intended to cover any adaptations, uses, or adaptations of the disclosure following the general principles of the disclosure and including such departures from the present disclosure as come within known or customary practice within the art to which the disclosure pertains. It is intended that the specification and examples be considered as exemplary only, with a true scope and spirit of the disclosure being indicated by the following claims.
It is to be understood that the present disclosure is not limited to the precise arrangements and instrumentalities shown in the drawings, and that various modifications and changes may be effected without departing from the scope thereof. The scope of the present disclosure is limited only by the appended claims.

Claims (19)

1. A method of invoice processing, the method comprising:
receiving N invoices uploaded by a client, and respectively ordering N invoices and M bank-accepted draft according to the respective ticket amounts, wherein N, M is a positive integer;
traversing the M bank acceptance draft in sequence, and traversing the bank acceptance draft M currently traversed i Executing a matching association flow with the invoice;
the matching association flow comprises the following steps: acquiring the bank acceptance draft M i Is a first matchable amount of (c);
sequentially obtaining the invoice N which is not matched j And the invoice N j A second matchable amount of (2);
if the second matchable amount is greater than or equal to the first matchable amount, for the invoice N j Bill of exchange M with the bank i Correlate and accept draft M for next bank i+1 Executing the matchAnd (5) a matching flow.
2. The method of claim 1, wherein the matching association procedure further comprises:
if the second matchable amount is less than the first matchable amount, acquiring the bank acceptance draft M i A history invoice having executed the matching process and a second mateable amount of the history invoice;
a second matable amount to the historical invoice and the invoice N j Summing the second matchable amounts to obtain a matchable total amount;
if the total matable amount is greater than or equal to the first matable amount, for invoice N j And the historical invoice and the bank acceptance draft M i And carrying out association.
3. The method according to claim 2, wherein the method further comprises:
if the total matchable amount is still less than the first matchable amount, determining the invoice N j Accepting draft M for the bank i A history invoice having executed the matching process;
selecting the next invoice N which is not matched k Bill of exchange M with the bank i Executing the matching process until the bank accepts the draft M i The matching is successful.
4. The method of claim 1, wherein the pair of invoices N when the second matable amount is greater than the first matable amount j Bill of exchange M with the bank i After the association is performed, the method further comprises the following steps:
according to the second matable amount and the first matable amount, the invoice N j Updating the second matchable amount of (2);
marking the invoice N j Is an invoice that is not matched.
5. The method of any one of claims 1-4, wherein said sorting N invoices and M bank acceptance draft, respectively, according to their respective face amounts, comprises:
performing natural language processing on the N invoices to obtain invoice element information of each invoice;
the invoice element information is sent to an invoice verification server, and verification results based on the invoice element information and sent by the invoice verification server are received;
and when the verification result is that verification passes, the N invoices and the M banks are subjected to bill exchange, and the N invoices and the M banks are respectively ordered according to the respective ticket amounts.
6. The method of any one of claims 1-4, wherein the steps of, prior to each of the N invoices and the M bank acceptance draft being ordered in terms of their respective face amounts, further comprise:
acquiring a first total amount of the N invoices and a second total amount of the M banks to accept the draft;
and if the first total amount is smaller than the second total amount, transmitting re-uploading information for re-uploading the N invoices to the client.
7. The method of any of claims 1-4, wherein after the traversal of the M bank acceptance draft is completed, the method further comprises:
judging whether a bank acceptance draft which is not matched with the invoice exists or not;
and if the bank acceptance draft which is not matched with the invoices exists, transmitting re-uploading information for re-uploading the N invoices to the client.
8. The method of any of claims 1-4, wherein after the traversal of the M bank acceptance draft is completed, the method further comprises:
judging whether a bank acceptance draft which is not matched with the invoice exists or not;
and if the M bank acceptance drafts are matched with the invoices, generating matching result information based on the matching relation between the M bank acceptance drafts and the N invoices and invoice element information of the invoices, and feeding back the matching result information to the client for displaying.
9. An invoice processing device, the device comprising:
the receiving module is used for receiving the N invoices uploaded by the client, respectively ordering the N invoices and the M bank acceptance drafts according to the respective ticket amounts, wherein N, M is a positive integer;
the matching module is used for traversing the M bank acceptance draft in sequence and traversing the bank acceptance draft M currently traversed i Executing a matching association flow with the invoice;
the matching association flow comprises the following steps: acquiring the bank acceptance draft M i Is a first matchable amount of (c);
sequentially obtaining the invoice N which is not matched j And the invoice N j A second matchable amount of (2);
if the second matchable amount is greater than or equal to the first matchable amount, for the invoice N j Bill of exchange M with the bank i Correlate and accept draft M for next bank i+1 And executing the matching flow.
10. The apparatus of claim 9, wherein the matching module is further configured to:
if the second matchable amount is less than the first matchable amount, acquiring the bank acceptance draft M i A history invoice having executed the matching process and a second mateable amount of the history invoice;
a second matable amount to the historical invoice and the invoice N j Summing the second matchable amounts to obtain a matchable total amount;
if the total mateable amount is greater than or equal to the first mateable amountAmount matching is carried out on the invoice N j And the historical invoice and the bank acceptance draft M i And carrying out association.
11. The apparatus of claim 10, wherein the matching module is further configured to:
if the total matchable amount is still less than the first matchable amount, determining the invoice N j Accepting draft M for the bank i A history invoice having executed the matching process;
selecting the next invoice N which is not matched k Bill of exchange M with the bank i Executing the matching process until the bank accepts the draft M i The matching is successful.
12. The apparatus of claim 9, wherein the matching module is further configured to:
according to the second matable amount and the first matable amount, the invoice N j Updating the second matchable amount of (2);
marking the invoice N j Is an invoice that is not matched.
13. The apparatus of any one of claims 9-12, wherein the matching module is further configured to:
performing natural language processing on the N invoices to obtain invoice element information of each invoice;
the invoice element information is sent to an invoice verification server, and verification results based on the invoice element information and sent by the invoice verification server are received;
and when the verification result is that verification passes, the N invoices and the M banks are subjected to bill exchange, and the N invoices and the M banks are respectively ordered according to the respective ticket amounts.
14. The apparatus of any one of claims 9-12, wherein the matching module is further configured to:
acquiring a first total amount of the N invoices and a second total amount of the M banks to accept the draft;
and if the first total amount is smaller than the second total amount, transmitting re-uploading information for re-uploading the N invoices to the client.
15. The apparatus of any one of claims 9-12, wherein the matching module is further configured to:
judging whether a bank acceptance draft which is not matched with the invoice exists or not;
and if the bank acceptance draft which is not matched with the invoices exists, transmitting re-uploading information for re-uploading the N invoices to the client.
16. The apparatus of any one of claims 9-12, wherein the matching module is further configured to:
judging whether a bank acceptance draft which is not matched with the invoice exists or not;
and if the M bank acceptance drafts are matched with the invoices, generating matching result information based on the matching relation between the M bank acceptance drafts and the N invoices and invoice element information of the invoices, and feeding back the matching result information to the client for displaying.
17. An electronic device, comprising: a processor, and a memory communicatively coupled to the processor;
the memory stores computer-executable instructions;
the processor executes computer-executable instructions stored in the memory to implement the method of any one of claims 1-8.
18. A computer readable storage medium having stored therein computer executable instructions which when executed by a processor are adapted to carry out the method of any one of claims 1-8.
19. A computer program product comprising a computer program which, when executed by a processor, implements the method of any of claims 1-8.
CN202310035165.1A 2023-01-10 2023-01-10 Invoice processing method and device and electronic equipment thereof Pending CN116308589A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202310035165.1A CN116308589A (en) 2023-01-10 2023-01-10 Invoice processing method and device and electronic equipment thereof

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202310035165.1A CN116308589A (en) 2023-01-10 2023-01-10 Invoice processing method and device and electronic equipment thereof

Publications (1)

Publication Number Publication Date
CN116308589A true CN116308589A (en) 2023-06-23

Family

ID=86784080

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202310035165.1A Pending CN116308589A (en) 2023-01-10 2023-01-10 Invoice processing method and device and electronic equipment thereof

Country Status (1)

Country Link
CN (1) CN116308589A (en)

Similar Documents

Publication Publication Date Title
US10565568B2 (en) System and method for processing transaction records for users
CN108765118B (en) Method and system for generating voucher by mixed scanning of bills
US20190279170A1 (en) Dynamic resource management associated with payment instrument exceptions processing
CN108269183B (en) Financial accounting intelligent agent service system, electronic equipment and method
US7949587B1 (en) Systems and methods for financial deposits by electronic message
CN108961021A (en) It is taken pictures using Intelligent mobile equipment and generates the method and system of voucher
US20150120563A1 (en) Check data lift for ach transactions
CN110472939A (en) A kind of supply chain business paper automatic check device, system and method
US10726501B1 (en) Method to use transaction, account, and company similarity clusters derived from the historic transaction data to match new transactions to accounts
WO2020088175A1 (en) Transaction method and device for business account
CN111931780A (en) Intelligent management method and equipment for accounting documents
CN112182250A (en) Construction method of checking relation knowledge graph, and financial statement checking method and device
US20220198579A1 (en) System and method for dimensionality reduction of vendor co-occurrence observations for improved transaction categorization
CN111861654A (en) Printed paper purchase order processing method and device, electronic equipment and storage medium
CN110956166A (en) Bill marking method and device
US20090192810A1 (en) Fraud detection system & method
US20200193525A1 (en) System and method for automatic verification of expense note
US9823958B2 (en) System for processing data using different processing channels based on source error probability
CN112598038A (en) Method and system for centralized drawing and processing of bills in same city
CN116308589A (en) Invoice processing method and device and electronic equipment thereof
KR102416998B1 (en) Appatus for automatically collecting and classification tax related documents and method thereof
CN112988420A (en) Enterprise-level micro-service management method and device, electronic equipment and storage medium
CN112053218A (en) Bill management system, bill management method, computer device, and storage medium
CN111144409A (en) Order following, accepting and examining processing method and system
CN115456747B (en) Automatic intelligent account settling method and device for ERP system and storage medium

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination