Systems and methods for interfacing merchants with third-party service providers
In an implementation, a transaction request message is received at a computing device, wherein the transaction request message is associated with a merchant. Profile information associated with the merchant is retrieved by the computing device. Based in part on the retrieved profile information associated with the merchant or the transaction request message, third-party service providers associated with the transaction request message are determined by the computing device. Profile information associated with the determined third-party service providers is retrieved by the computing device. Based in part on the retrieved profile information associated with the merchant, the retrieved profile information associated with the determined third-party service providers, or the transaction request message, a formatted transaction request message is generated from the transaction request message by the computing device. The formatted transaction request messages may be provided to the determined third-party service providers by the computing device simultaneously or in the future.
1. A method comprising:
receiving a transaction request message at a computing device, wherein the transaction request is associated with a merchant of a plurality of merchants;
retrieving a merchant profile associated with the merchant by the computing device, wherein the computing device stores a plurality of merchant profiles, each merchant of the plurality of merchants is associated with a merchant profile of the plurality of merchant profiles, and each merchant profile identifies at least one third-party service provider for the merchant associated with the merchant profile and identifies actions for the computing device to perform based on each type of a plurality of transaction request message types;
based on the retrieved merchant profile associated with the merchant, determining a third-party service provider associated with the transaction request message by the computing device;
retrieving a service profile associated with the determined third-party service provider by the computing device, wherein the computing device stores a plurality of service profiles, and each service profile is associated with a third-party service provider and identifies a format used by the third-party service provider associated with the service profile;
for the determined third-party service provider, generating a formatted transaction request message from the transaction request message using the identified format used by the determined third-party service provider by the computing device; and
sending the formatted transaction request message to the determined third-party service provider by the computing device.
2. The method of claim 1 , wherein each merchant profile identifies a format used by the associated merchant, and further comprising:
receiving a response from the third-party service provider indicating that a transaction associated with the formatted transaction request message was completed;
determining a format used by the merchant associated with the received transaction request message using the merchant profile associated with the merchant associated with the received transaction request message;
generating a formatted response to the received transaction request message based on the received response from the third-party service provider and the determined format; and
providing the formatted response message to the merchant associated with the received transaction request message.
3. The method of claim 2 , wherein the transaction request message was received from a merchant device, and further comprising providing the generated response to the received transaction request message to the merchant device.
4. The method of claim 1 , wherein the transaction request message is a request to process a payment.
5. The method of claim 1 , wherein the transaction request message is one or more of a payroll request, an inventory request, a security or fraud related request, a tax collection or reporting request, an alert or notification request, a lease or rental fee collection or remittance request, and a membership fee collection or remittance request.
6. The method of claim 1 , wherein each merchant profile further identifies a plurality of third-party service providers, and further wherein determining a third-party service provider associated with the transaction request message further comprises determining a plurality of third-party service providers associated with the transaction request message based on the retrieved merchant profile, retrieving the service profile associated with the determined third-party service provider further comprises retrieving a service profile associated with each of the plurality of determined third-party service providers, and generating a formatted transaction request message from the transaction request message further comprises generating a formatted transaction request message for each of the plurality of third-party service providers.
7. The method of claim 6 , wherein the determined plurality of third-party service providers comprises an inventory service provider and a payment processing service provider, and generating a formatted transaction request message for each of the determined plurality of third-party service providers comprises:
generating a formatted transaction request message for the inventory service provider; and
generating a formatted transaction request message for the payment processing service provider.
8. The method of claim 7 , wherein the determined plurality of third-party service providers further comprises a tax service provider, and generating a formatted transaction request message for each of the determined plurality of third-party service providers further comprises generating a formatted transaction request message for the tax service provider.
9. The method of claim 7 , wherein the determined plurality of third-party service providers further comprises a customer loyalty service provider, and generating a formatted transaction request message for each of the determined plurality of third-party service providers further comprises generating a formatted transaction request message for the customer loyalty service provider.
10. The method of claim 7 , wherein the determined plurality of third-party service providers further comprises a fraud prevention service provider, and generating a formatted transaction request message for each of the determined plurality of third-party service providers further comprises generating a formatted transaction request message for the fraud prevention service provider.
11. A system comprising:
a merchant device, implemented by a computer device, and adapted to:
receive a transaction request message from a retail processing system;
retrieve a device identifier, wherein the device identifier uniquely identifies the merchant device;
append the device identifier to the transaction request message; and
provide the transaction request message; and
an interface system, implemented by a computer device, and adapted to:
receive the transaction request message, wherein the transaction request is associated with a merchant of a plurality of merchants;
retrieve a merchant profile associated with the merchant using the appended device identifier, wherein the interface system stores a plurality of merchant profiles, each merchant of the plurality of merchants is associated with a merchant profile of the plurality of merchant profiles, and each merchant profile identifies a plurality of third-party service providers for the merchant associated with the merchant profile and identifies actions for the interface system to perform based on each type of a plurality of transaction request message types;
based on the retrieved merchant profile associated with the merchant, determine a plurality of third-party service providers associated with the transaction request message;
retrieve a service profile associated with each of the determined third-party service providers, wherein the interface system stores a plurality of service profiles, and each service profile is associated with a third-party service provider and identifies a format used by the third-party service provider associated with the service profile;
for at least one of the determined plurality of third-party service providers, generate a formatted transaction request message from the transaction request message using the identified format used by the at least one of the determined plurality of third-party service providers; and
send the formatted transaction request message to the at least one of the determined plurality of third-party service providers.
12. The system of claim 11 , wherein the transaction request message is encrypted by the merchant device or the interface system.
13. The system of claim 11 , wherein the merchant device is a software module.
14. The method of claim 1 , further comprising determining a plurality of actions to perform based on a type of the received transaction request message and the retrieved merchant profile, and storing an indicator of at least one action of the determined plurality of actions to be performed at a later time.