This invention relates to the field of distributed computer systems and more specifically to a method and system for processing financial and/or ecommerce transactions in which proceeds and/or dividends associated with individual transactions are dynamically allocated between geo-spatially distinct organizations of different types such as profit and non-profit organizations as directed by each user who initiates a transaction. The invention provides a method and system for processing financial transactions wherein acquisition, allocation and accrual may be segregated and processed as partially taxable and non-taxable events to promote individual philanthropic or charitable contributions while simultaneously supporting the efforts to promote corporate responsibility.
It has become increasingly important to consumers that products and/or services are provided by merchants and/or vendors who have demonstrated social responsibility. It has become increasingly popular for merchants and/or vendors that their products and/or services are produced from recycled or renewable materials or are manufactured using alternative energy sources. In the alternative, many merchants and/or vendors have become more involved in supporting charitable giving programs, openly support various non-profit organizations or may even sponsor their own socially accountable programs.
Many consumers base their purchasing decisions on the social accountability of a merchant and/or vendor and may elect to avoid merchants and/or vendors who are not perceived as being socially accountable. In addition, consumers within a “community of interest” frequently have a need and/or desire to inform others of emergent beneficiaries who may be in need of assistance. For example, natural disasters such as earthquakes, hurricanes or other catastrophic events may generate an immediate and unplanned intent among groups of interested individuals to provide support for the victims thereof and to communicate that intent within their “community of interest”.
Increasingly, interne based social networking services such as Linkedin, Twitter and Facebook are now virtual “communities of interest” wherein users of these services may promote and support any of a number of charitable or otherwise socially desirable causes that could have otherwise been neglected due to lack of funding, organization or any internal capacity for self-promotion. Many of these worthy endeavors previously failed due to an inability to achieve self-sustaining funding levels.
The invention presented herein provides a novel method and system for satisfying the desires of consumers to engage socially accountable vendors and/or merchants while simultaneously providing the ability to increase the exposure and funding levels of charitable or otherwise socially desirable causes that may not have survived without the capabilities of the method and system presented herein.
This invention provides a system for processing transactions in a distributed transaction processing system for subscribers to effect transactions with socially accountable merchants and/or vendors while simultaneously directing a portion of the proceeds from those transactions to beneficiaries designated by the subscriber. The method and system contemplate a social accounting system coupled to a vendor fulfillment system having a database of socially accountable merchants.
Subscriber initiated transactions are effected directly between a respective subscriber and at least one of the socially accountable merchants. A transaction processor in a social accounting system authenticates each respective subscriber as well as the socially accountable merchants listed in a vendor fulfillment system.
An accounting services system receives proceeds from each transaction and a payment system allocates a portion of the proceeds between any of a number of beneficiaries which may have distinct organizational and accounting structures.
Referring to
The overall operation of social accounting system 102 is controlled by subscriber services server 114. Subscriber services server 114 is an application server whose operation is further described in conjunction with
Subscriber services server 114 may communicate with vendor fulfillment system 104, beneficiary database server 124, payment distribution services 126 and subscriber communication services 128 through web server 112 which is adapted for communication via conventional wide-area network (WAN) connections such as those deployed over internet 136.
Respective subscribers 106 initiate transactions through social accounting system 102 through web server 112 which provides a variety of end-user services as further described herein. Upon establishing a connection with web server 112, subscriber services server 114 authenticates the subscriber with authentication server 116 to provide access to a database of social responsible merchants listed in database 118.
Those skilled in the art will appreciate that the table of socially responsible merchants maintained in database 118 maybe derived from a remote server hosting a service 125 such as popshops.com, linkshare.com, commissionjunction.com or any of a number of similar services. Database 118 further includes a table of beneficiaries which may be designated by a subscriber to receive a dividend or a portion of the proceeds from each transaction initiated by respective subscribers 106.
In one embodiment of the present invention, in the event a subscriber discovers a desired merchant and/or desired beneficiary is not previously listed in database 118, a subscriber may append beneficiary table 404 or merchant table 408 stored in database 118 to reflect their philanthropic intent.
Authenticated subscribers 106 select a socially responsible merchant listed in database 118 to directly initiate a merchant transaction with any of a number of merchant systems 120 to effect a transaction for the delivery of goods or services. Payment for the requested goods of services and fulfillment or delivery thereof is transmitted directly between authenticated subscribers 106 through any of the respective client devices 108 and the vendor fulfillment system 104.
Proceeds from each respective transaction are received by accounting server 122 from vendor fulfillment system 104 and distributed among designated beneficiaries listed in beneficiary database 124 through payment distribution service 126. A portion of the proceeds are retained within social accounting system 102 for costs, expenses and other accounting items associated with the operation and maintenance of social accounting system 102. Beneficiary database may be derived from any of a number of sources, including without limitation, publically available listings such as those provided by guidestar.org.
This invention uniquely provides a system and method for allocating and accounting proceeds from transactions among both profit and non-profit organizations enumerated in beneficiary database 124 through payment services 126 which may include services such as Paypal or PayQuicker.
This invention further provides the ability for a respective subscriber to designate beneficiaries of each transaction wherein if a desired beneficiary is not listed in beneficiary database 124, authenticated subscribers 106 may append database 118 to effect payment through payment service 126 to entities irrespective of organizational structure while accommodating the philanthropic intent of respective subscribers 106.
Authenticated subscribers 106 are provided the ability to communicate with other subscribers (or potential subscribers) through subscriber communication servers 128 to promote or advocate on behalf of charitable or otherwise socially desirable causes. In one embodiment of the invention, communication servers 128 may host various social networking services such as Twitter, Facebook, Linkedin or any of a number of other services adapted for communication between large groups.
Those skilled in the art will appreciate that the various servers and devices of distributed computer system 100 are adapted to send, receive and route network communications using conventional internet connections and protocols which may include HTTP, HTTPS, IPV4, IPV6, TCP/IP and/or any of a number of networking protocols adapted for data communication via the internet 136.
Those skilled in the art will further appreciate that the respective end-user devices 108 which may include a laptop computer 130, an internet enabled “smart phone” 132, or a conventional desktop computer system 134, each of which are shown by way of example and not limitation.
As noted above, social accounting system 102 includes a subscriber services server 114 which is an application server that coordinates the overall operation of distributed computer network 100 as defined by the API shown in
When invoked, system module 202 provides system controls for selecting or designating one or more beneficiaries. The detailed operation of module 202 is described further in conjunction with
System module 204 provides system controls wherein a subscriber initiates a transaction with one or more socially accountable merchants and/or vendors listed in the database managed by social accounting system 102. The detailed operation of system module 204 is described further in conjunction with
System module 206 provides system controls wherein a subscriber selects or designates one or more socially accountable merchants and/or vendors. The detailed operation of system module 206 is described further in conjunction with
System module 208 provides system controls wherein a subscriber may advocate on behalf of their preferred beneficiaries through various social networking services. The detailed operation of system module 208 is described further in conjunction with
The system returns to system module 202 upon completion of the tasks in system module 208, to recursively provides services to subscribers 106.
Upon authentication, subscribers utilize the system and method presented herein via the social accounting system 102 in accordance with accounting services 308 hosted on accounting server 122 as further described herein. The database service 310 is hosted on subscriber services server 114 and transaction processor 110 as further described in conjunction with
Schema 400 defines operating modules 402-416 which are configured as tables within an ISO SQL: 2003 structure which is invoked in accordance with the system flow diagrams shown in
Subscriber table 402 stores essential information related to individual subscribers and includes unique fields for storing subscriber name, password, tax identification information and payment information including a subscribers preferred bank account number, bank routing number and routing type. Those skilled in the art will appreciate that accounting and payment processing may be implemented in accordance with the Automated Clearing House (ACH) payment processing regulations established by the National Clearing House Association (NACHA) and the United States Federal Reserve. Subscriber table 402 defines each respective subscriber as a “primary key” within the ISO SQL: 2003 structure.
Beneficiary table 404 stores essential information related to charitable or otherwise socially desirable beneficiaries as described herein and includes unique fields for storing beneficiary name, tax identification information and payment information including a beneficiaries preferred bank account number, bank routing number and routing type. Beneficiary table 404 further includes a field that identifies whether a particular beneficiary is presently active within social accounting system 102. Beneficiary table 404 defines each respective beneficiary as a “primary key” within the ISO SQL: 2003 structure.
Preferred_beneficiary table 406 stores essential information related to preferred beneficiaries as described herein and includes wherein a preferred beneficiary may be determined in accordance with user preference. Preferred_beneficiary table 406 defines unique fields for storing subscriber and beneficiary names and further includes a field that associates a weighting factor with each preferred beneficiary. Preferred_beneficiary table 406 defines each respective preferred beneficiary as a “primary key” within the ISO SQL: 2003 structure, but further includes “foreign key” references to subscriber table 402 and beneficiary table 404.
Merchant table 408 stores essential information related to merchants as described herein. Merchant table 408 defines unique fields for storing the identity “id” of each respective merchant and further includes a field that indicates whether respective merchants are presently active in the distributed computer network 102. Merchant table 408 defines each respective preferred merchant as a “primary key” within the ISO SQL: 2003 structure.
Merchant_visit table 410 stores essential information for tracking transactions between subscribers and merchants. Merchant_visit table 410 defines unique fields for the number of subscriber “visits” associated with each respective merchant and further includes a field that provides a timestamp associated with each of said “visits”. Merchant_visit table 410 defines each respective merchant “id” as a “primary key” within the ISO SQL: 2003 structure, but further includes “foreign key” references to subscriber table 402, beneficiary table 404, and merchant table 408.
Merchant_payment table 412 stores essential information related to payments associated with each transaction between respective subscribers and respective merchants. Merchant_visit table 410 defines unique fields for the number of subscriber “visits” associated with each respective merchant and further includes a field that provides a timestamp associated with each of said “visits”. Merchant_visit table 410 defines each respective merchant visit “id” as a “primary key” within the ISO SQL: 2003 structure, but further includes “foreign key” references to subscriber table 402, beneficiary table 404, and merchant table 408.
Beneficiary_distribution table 414 stores essential information related to distributions to beneficiaries associated with each merchant payment resulting from a transaction between respective subscribers and respective merchants. Beneficiary_distribution table 414 defines a unique field for the payment amount associated with each “distribution” and further includes a field that provides a timestamp associated with each of said “distributions”. Beneficiary_distribution table 414 defines each respective beneficiary distribution “id” as a “primary key” within the ISO SQL: 2003 structure, but further includes “foreign key” references to merchant_payment table 412 and beneficiary table 404, respectively.
Published_link table 416 contains fields for storing links associated with each respective subscriber, respective merchants and respective beneficiaries wherein such links may be hyperlinks as defined in accordance with the HTTP protocol. Published_link table 416 defines unique fields for the identification of beneficiaries, merchants, and subscribers which are defined as primary keys, each of which include foreign keys which reference tables 404, 408 and 402 within the ISO SQL: 2003 structure, and further includes fields for storing variables “display_title” and “display_info”.
Those skilled in the art will appreciate that tables 402-416 may be implemented as a SQL database hosted on database server 118 or distributed between servers 116-118 within transaction processor 110 wherein the information maintained in tables 402-416 is accessed and updated by subscriber services server 114 to control the overall operation of distributed computer network 100.
The overall operation of distributed computer network 100 as controlled by social accounting system 102 is depicted in further detail in conjunction with the system flow diagrams shown in
Output step 516 sends display data to the subscriber based on detailed beneficiary information stored in table 402. Decision step 518 queries whether the subscriber intends to proceed with the selected beneficiary. If not, input step 514 accepts an alternate beneficiary selection listed in table 404 from the subscriber. Otherwise, process step 520 stores the relationship between the beneficiary and subscriber along with a weighting variable in table 406.
Process step 522 then determines the relative distribution of proceeds between selected beneficiaries on the basis of the weighting variable stored in table 406. The results of process step 522 are displayed to the subscriber in output step 524. Decision step 526 determines whether the subscriber intends to adjust the relative distribution of proceeds among beneficiaries. If so, input step 528 allows the subscriber to adjust the relative distribution of proceeds among beneficiaries. Otherwise, the system control and data flow 500 returns to process subsequent transactions.
Process step 608 then re-directs the subscriber to a respective vendor server associated with a selected vendor and the subscriber initiates a transaction in input step 610. Process step 612 then updates table 412 to record the transaction as a pending payment. Payment and transaction metadata are sent from merchant server 120 to accounting system 122 in process step 614 and the subscriber payment is reconciled in process step 618. The accounting system 122 then records the received payment and subscriber metadata in table 412.
While decision 702 determines un-distributed payments are indicated in table 412, process step 704 retrieves the payment record from table 412 and process step 706 retrieves associated beneficiary information stored in tables 406, 410. A weighted beneficiary distribution is computed in process step 708 and beneficiary and payment data is transmitted or communicated to payment distribution service 126. Table 414 is then updated to record respective distributed payments in output step 712 and table 412 is updated in output step 714 to indicate the payment has been distributed. When decision 702 determines un-distributed payments are not indicated in table 412, system control and data flow 700 returns until invoked for subsequent transactions.
The techniques described herein may be implemented in hardware, software, or any combination thereof. For a hardware implementation, the processing units may be implemented within one or more application specific integrated circuits (ASICs), digital signal processors (DSPs), digital signal processing devices (DSPDs), programmable logic devices (PLDs), field programmable gate arrays (FPGAs), processors, controllers, micro-controllers, microprocessors, desktop computers, any of a number of server types or other electronic units designed to perform the functions described herein, or a combination thereof.
For software implementations, the techniques described herein may be implemented with modules (e.g., procedures, functions, and so on) that perform the functions described herein. The software codes may be stored in a memory unit and executed by processors, controllers, computers and/or servers described herein. The memory unit may be implemented within the processor or external to the processor, in which case it can be communicatively coupled to the processor via various means as is known in the art.
The description of the disclosed embodiments is provided to enable any person skilled in the art to make or use the present invention. Various modifications to these embodiments will be readily apparent to those skilled in the art, and the generic principles defined herein may be applied to other embodiments without departing from the spirit or scope of the invention. Thus, the present invention is not intended to be limited to the embodiments shown herein but is to be accorded the widest scope consistent with the principles and novel features disclosed herein.
Even though the invention is described above with reference to an example according to the accompanying drawings, it is clear that the invention is not restricted thereto and can be modified in several ways within the scope of the appended claims.