Business to business integration has recently been performed by employing Web service environments. Moreover, such environments
are being provided by major players on the technology markets. Those environments are based on open specifications for transaction
coordination. When a failure in such an environment occurs, a compensation can be initiated to recover from the failure. However,
current environments have only limited capabilities for compensations, and are usually based on backward recovery. In this
paper, we introduce an engineering approach and an environment to deal with advanced compensations based on forward recovery
principles. We extend the existing Web service transaction coordination architecture and infrastructure in order to support
flexible compensation operations. A contract-based approach is being used, which allows the specification of permitted compensations
at runtime. We introduce the abstract service and adapter components which allow us to separate the compensation logic from the coordination logic. In this way, we can easily plug
in or plug out different compensation strategies based on a specification language defined on top of basic compensation activities
and complex compensation types. Experiments with our approach and environment show that such an approach to compensation is
feasible and beneficial.