One aspect of the invention is a transaction processing system comprising a software service operable to receive a transaction request and to generate a first object associated with the transaction request. An object generator may convert the first object into a first document written in a self-describing language. A document generator may convert the first document into a first transaction message according to a schema associated with a first transaction type determinable from the first document.