Real-time payment system, method, apparatus, and computer program
View Patent ↗Tracking account positions in a real-time payments system is provided. Each of a plurality of participants is linked to a funding agent account via an ACH network, thereby creating a plurality of linked participants. Each of the plurality of linked participants is provided access to a current prefunded position of the funding agent through the ACH network. An unsettled financial position of each of the plurality of participants is compared to the current prefunded position of the funding agent. A determination is made whether to perform a financial settlement for a corresponding one of the plurality of participants based on the comparison. The financial settlement for the corresponding participant is performed when it is determined that the unsettled financial position of the corresponding participant is not greater than the current prefunded position of the funding agent.
1 . A method for conducting a real time payment, comprising:
creating a funding agent using a computing device in communication with an automated clearinghouse network;
linking each of a plurality of participants to the funding agent via the automated clearinghouse network, each of the plurality of participants having a tracking account position, wherein linking each of the plurality of participants to the funding agent includes:
storing prefund position information data and tracking position information data of each of the plurality of participants within a settlement services system,
responsive to a credit transfer from a linked participant, automatically updating the prefund position information data and the tracking position information data that is stored in the settlement services system,
providing, from the settlement services system, the prefund position information data and the tracking position information data to a funding agent dashboard for display in real time,
determining, by the settlement services system, that an update of a tracking position information for a linked participant failed because a notification from the linked participant was not received,
based on determining that the update failed, halting the credit transfer received from the linked participant, and
generating an alert indicating the tracking position information could not be updated;
receiving a request for payment over the automated clearinghouse network, the payment to be made from a linked debtor institution participant to a linked creditor institution participant, wherein each of the linked debtor institution participant and the linked creditor institution participant is one of the plurality of participants linked to the funding agent;
checking debtor funds of a debtor availability at the linked debtor institution participant, wherein the payment is rejected if the debtor funds availability is less than the received request for payment;
determining whether the linked creditor institution participant uses tokenization services by comparing a message from the linked debtor institution with a bank routing number pseudo-code (BRNPC);
responsive to determining the linked creditor institution participant uses tokenization services based on the BRNPC matching an entry in a list of routing numbers designated by the automated clearinghouse network and the message with the BRNPC is a tokenized message:
determining, by the automated clearinghouse network, the tokenized message is in an invalid format including checking a format, syntax, and structure of the message, and
responsive to determining the tokenized message is in an invalid format:
generating a first exception message, and
transmitting the first exception message to the linked debtor institution participant for processing to display at a computing device of the debtor;
determining whether the linked debtor institution participant is enabled for send payment capability and whether the linked creditor institution participant is capable of receiving payment,
determining whether the request for payment qualifies for being processed in real time by:
determining whether the linked creditor institution participant is enabled for making real time payments;
determining whether the payment request amount is less than a predetermined individual payment maximum; and
determining whether the payment request amount is less than a predetermined transaction value set by the linked debtor institution participant,
wherein, if any of the determining steps fail, rejecting the requested payment;
if the requested payment is rejected:
generating a reason code indicating the reason for the payment;
transmitting a message to the linked debtor institution participant including the reason code; and
terminating the payment request; and
if the requested payment is accepted:
updating a net settlement position for the linked debtor institution participant and the linked creditor institution participant based on the payment request amount;
transmitting a payment instruction message to the linked creditor institution participant;
in response to receiving the transmitted payment instruction, processing, at the linked creditor institution participant, the received request for payment in real time;
sending a payment acknowledgement message from the linked creditor institution participant to the linked debtor institution participant;
sending a payment status message to the computing device of the debtor; and
in response to sending the payment status message to the linked debtor institution participant, transmitting a system notification message (SNM) to the linked debtor institution participant notifying the linked debtor institution participant that its tracking position has been updated and to the funding agent notifying the funding agent that its prefunded balance has changed.
2 . The method of claim 1 , wherein sending the payment status message to the computing device of the debtor further comprises providing notification to the debtor of the debtor's updated funds availability.
3 . The method of claim 1 , wherein rejecting the requested payment comprises composing and transmitting to the debtor a payment reject message.
4 . The method of claim 3 , further comprising:
determining a reject reason code for rejecting the requested payment;
updating the payment status message to payment rejected, including the determined reject reason code; and
transmitting the payment status message to the computing device of the debtor.
5 . The method of claim 1 , wherein determining that the request for payment qualifies for being processed in real time further comprises:
invoking a debtor directory to access debtor account and routing information;
invoking a creditor directory to access a creditor account number;
determining whether debtor account information, debtor routing information, and the creditor account number are valid;
determining whether the linked debtor institution participant is enabled for send payment capability and whether the linked creditor institution participant is capable of receiving payment; and
if the debtor account information is not valid, if the debtor routing information is not valid, if the creditor account number is not valid, if the linked debtor institution participant is not enabled for send payment capability, or if the linked creditor institution participant is not capable of receiving payment:
preparing a second exception message;
transmitting the second exception message to the linked debtor institution participant; and
rejecting the payment.
6 . The method of claim 1 , further comprising:
determining whether the linked debtor institution participant is suspended from sending the real time payment;
determining whether the linked creditor institution participant is suspended from receiving the real time payment; and
if either the linked debtor institution participant or the linked creditor institution participant is suspended from sending or receiving the real time payment:
composing a second exception message;
transmitting the second exception message to the linked debtor institution participant; and
rejecting the payment.
7 . The method of claim 4 , further comprising:
determining whether the linked creditor institution participant utilizes token clearing house services; and
if the linked creditor institution participant is determined to utilize the token clearing house services:
tokenizing a debtor account number within debtor account information;
utilizing token clearing house token services to de-tokenize the debtor account number; and
populating the payment instruction message with the de-tokenized debtor account number.
8 . The method of claim 1 , further comprising:
receiving, at the linked creditor institution participant, a request from a debtor for a second credit transfer;
invoking, at the linked creditor institution participant, a directory lookup to find a debtor account and routing information;
determining whether debtor account information and debtor routing information are valid;
determining whether the linked creditor institution participant is enabled for a send payment capability; and
if the debtor account information and the debtor routing information are valid and if the linked creditor institution participant is enabled for the send payment capability:
composing and transmitting a remittance message to the linked creditor institution participant;
determining whether the remittance message is valid; and
if the remittance message is determined to be valid, sending a remittance advice to the linked creditor institution participant.
9 . The method of claim 8 , further comprising:
determining whether the linked debtor institution participant or the linked creditor institution participant is suspended from sending or receiving the real time payment; and
if either the linked debtor institution participant or the linked creditor institution participant is suspended from sending or receiving the real time payment:
composing a second exception message; and
transmitting the second exception message to the linked debtor institution participant.
10 . The method of claim 1 , further comprising:
receiving a request for a return of funds;
invoking, at the linked debtor institution participant, a directory lookup to find a debtor account and debtor routing information;
invoking, at the linked creditor institution participant, a directory lookup to find a creditor routing number;
composing a message for the return of funds, the message including debtor account information, the debtor routing information, and the creditor routing number;
validating the return of funds message;
if the return of funds message is valid, transmitting the return of funds message to the linked creditor institution participant; and
if the return of funds message is not valid, composing a second exception message and transmitting the second exception message to the linked debtor institution participant.
11 . The method of claim 1 , further comprising:
receiving a request for information regarding a received payment;
invoking, at the linked debtor institution participant, a directory lookup to find debtor routing information;
invoking, at the linked creditor institution participant, a directory lookup to find a creditor routing number;
creating a request for information message, the message including the debtor routing information and the creditor routing number;
validating the information request message;
if the information request message is valid:
transmitting the information request message to the linked debtor institution participant;
composing a response to the information request message; and
transmitting the response to the information request message to the linked creditor institution participant; and
if the information request message is not valid:
composing a second exception message and transmitting the second exception message to the debtor.
12 . A system for conducting a real-time payment, comprising:
a memory storing a computer program; and
a computer processor, operating under control of the program stored in the memory, to:
create a funding agent using a computing device in communication with an automated clearinghouse network;
link each of a plurality of participants to the funding agent via the automated clearinghouse network, each of the plurality of participants having a tracking account position, wherein link each of the plurality of participants to the funding agent includes:
store prefund position information data and tracking position information data of each of the plurality of participants within a settlement services system,
responsive to a credit transfer from a linked participant, automatically updating the prefund position information data and the tracking position information data that is stored in the settlement services system,
provide, from the settlement services system, the prefund position information data and the tracking position information data to a funding agent dashboard for display in real time,
determine, by the settlement services system, that an update of a tracking position information for a linked participant failed because a notification from the linked participant was not received,
based on a determination that the update failed, halt the credit transfer received from the linked participant, and
generate an alert indicating the tracking position information could not be updated;
receive a request for payment over the automated clearinghouse network, the payment to be made from a linked debtor institution participant to a linked creditor institution participant;
check debtor funds availability at the linked debtor institution participant, wherein the payment is rejected if the debtor funds availability is less than the received request for payment;
determine whether the linked creditor institution participant uses tokenization services by comparing a message from the linked debtor institution with a bank routing number pseudo-code (BRNPC);
responsive to a determination the linked creditor institution participant uses tokenization services based on the BRNPC matching an entry in a list of routing numbers designated by the automated clearinghouse network and the message with the BRNPC is a tokenized message:
determine, by the automated clearinghouse network, the tokenized message is in an invalid format including checking a format, syntax, and structure of the message, and
responsive to a determination the tokenized message is in an invalid format:
generate a first exception message, and
transmit the first exception message to the linked debtor institution participant for processing to display at a computing device of the debtor;
determine whether the request for payment qualifies for being processed in real time by:
determining whether the linked creditor institution participant is enabled for making real time payments;
determining whether the payment request amount is less than a predetermined individual payment maximum; and
determining whether the payment request amount is less than a predetermined transaction value set by the linked debtor institution participant,
wherein, if any of the determining steps fail, rejecting the requested payment;
if the requested payment is rejected:
generating a reason code indicating the reason for rejecting the payment;
transmitting a message to the linked debtor institution participant including the reason code; and
terminating the payment request; and
if the requested payment is rejected:
update a net settlement position for the linked debtor institution participant and the linked creditor institution participant based on the payment request amount;
transmit a payment instruction message to the linked creditor institution participant;
in response to receiving the transmitted payment instruction, process, at the linked creditor institution participant, the received request for payment in real time;
send a payment acknowledgement message from the linked creditor institution participant to the linked debtor institution participant; and
send a payment status message to a computing device of the debtor; and
in response to sending the payment status message to the computing device of debtor, transmitting a system notification message (SNM) to the computing device of the debtor notifying the debtor that its tracking position has been updated and to the funding agent notifying the funding agent that its prefunded balance has changed.
13 . The method of claim 1 , further comprising:
receiving a request for return of funds message from the linked debtor institution participant, the request for return of funds message requesting that an amount of payment be returned to the linked debtor institution participant;
forwarding the request for return of funds message to the linked creditor institution participant to request the linked creditor institution participant to return the amount of the payment; and
generating a payment transaction message including the routing number for the linked creditor institution participant and a bank account number for the creditor, wherein the payment transaction message is forwarded based on at least the routing number for the linked creditor institution participant.
14 . The system of claim 12 , wherein the computer processor further operates to:
receive an electronic request for return of funds message from the linked debtor institution participant, the electronic request for return of funds message requesting that an amount of payment be returned to the linked debtor institution participant; and
forward, the electronic request for return of funds message to the linked creditor institution participant to request the linked creditor institution participant to return the amount of the payment.
15 . The system of claim 12 , wherein the computer processor further operates to:
receive at least one of a pending status message, an accepted status message, and a rejected status message from the linked creditor institution participant, in relation to a payment transaction message.
16 . The system of claim 15 , wherein each of the messages includes a unique transaction identifier.
17 . The system of claim 12 , wherein the computer processor further operates to:
receive a request for information message from the linked creditor institution participant and forwarding that message to the linked debtor institution participant, the request for information message requesting that the linked creditor institution participant be provided with predetermined information; and
receive, from the linked debtor institution participant, a responsive message to the request for information message, and forwarding the responsive message to the linked creditor institution participant, the responsive message including the predetermined information.
18 . The system of claim 12 , wherein the computer processor further operates to:
receive a remittance advice message including remittance advice from the linked debtor institution participant and forwarding the remittance advice message to the linked creditor institution participant.
19 . The system of claim 18 , wherein the computer processor further operates to:
compare an unsettled financial position of the linked debtor institution participant to a combination of a value of a pre-funded balance in a settlement account and a value of a net debit cap; and
determine whether to perform a financial settlement based on a result of the comparing.
20 . The system of claim 19 , wherein the computer processor further operates to:
perform the financial settlement where it is determined that the unsettled financial position of the linked debtor institution participant is not greater than the combination.
21 . The method of claim 1 , wherein the first exception message is a PACS.002 message.