<p>I have a strange problem on a PeopleSoft application.   It appears that integration broker messages are being processed out of order.   There is another possibility, and that is that the commit is being fired asynchronously, allowing the transactions to complete out of order.</p>

<p>There are many inserts of detail records, followed by a trailer record which performs an update on the rows just inserted.   Some of the rows are not receiving the update.  This problem is sporadic, about once every 6 months, but it causes statistically significant financial reporting errors.</p>

<p>I am hoping that someone has had enough dealings with the internals of PeopleTools to know what it is up to, so that perhaps I can find a work around to the problem.</p>

You don't mentioned whether you've set this or not, but you have a choice with Integration Broker.  All messages flow through message channels, and a channel can either be ordered or unordered.  If a channel is ordered then - if a message errors - all subsequent messages queue up behind it and will not be processed until it succeeds.
Whether a channel is ordered or not depends upon the checkbox on the message channel properties in Application Designer.  From memory channels are ordered by default, but you can uncheck the box to increase throughput.
Hope this helps.
PS. As of Tools 8.49 the setup changed slightly, Channels became Queues, Messages Service Operations etc.