RESTful Compensation Engine

A Compensation Engine coordinates work between various services.  It is also called Compensating Transaction Management.  The idea is that 2PC transactions are too rigid in loosely coupled systems.  The concept of a compensation is the idea of "do/undo" rather than "prepare/commit".  A Compensation Coordinator is a way to manage this process in a generic mannter

REST-* Compensations is a specification that attempts to define a RESTful interface for compensating transactions.   It describes the interaction between coordinator services and  participants as well as how compensations can propagate in distributed applications.

Anybody is welcome to participate in the discussions to drive the specification.  Modifications of or alternatives to the current draft are highly encouraged.  Check out our collaboration page for more information.