Skip to main content

 

 

Coupa Success Portal

Contract Statuses Lifecycle

Overview

The contract lifecycle is managed through the use of the ‘Status’ field. There are 4 status types, each which can contain a number of statuses. Out-of-the-box (OOTB) the statuses configured are:

Draft

  • Request
  • Draft
  • Internal Review
  • Internal Review Complete
  • Internal Review Query
  • Negotiation With Counterparty
  • Negotiation With Us
  • Final Pending Approval
  • Final Pending Signature
  • Signature Canceled
  • Signature Declined

Final

  • Final Pending QA

Effective

  • Active
  • On Legal Hold
  • Legacy Import

Dead

  • Expired
  • Terminated
  • Rescinded
  • Terminated with Active Orders

Apart from just indicating the status of a contract within its lifecycle, the system also uses Status to determine what actions can be performed by the user. Refer to Action Configuration within Permissions Scheme for more information.

Scoping Questions

  1. Describe the processes a contract goes through from drafting to expiry/termination/renewal.
  2. Do different contract types have different life cycles/processes?

Design Options

From a design perspective, there are a few items which can be configured:

Custom Draft Statuses

It is possible to add custom statuses, but only for the Draft Status Type. This gives flexibility through the drafting process until execution. After this point the statuses are fixed (as some system functionality are tied to them).

Visibility of Statuses

It is possible to hide some of the Draft Statuses. Where a status will not be used, hide it to ensure a cleaner user experience.

Please note that it is still possible to set the status to a hidden option via API. This can be used to prevent a user from progressing to a certain step/status until some action has been completed in a 3rd party system.

Status labels

It is possible to re-label a status rather than create a draft one.

Additional Information

Please note the following system behavior related to Statuses:

  • The Final Capture action is hard coded against the ‘Final Pending QA’ status. The contract must be on this status for the Final Capture action to appear.
  • When Terminating/Expiring a Master contract, all active Order contracts under that Master will also terminate/expire (unless using the status “Terminated with Active Orders”).
    • It is possible to change the status of an expired/terminated Master contract back to ‘Active’, however this will not automatically change the status of any Order contracts under the Master contract. If any Order contracts need to be set back to ‘Active’ as well, then the user needs to do so manually
  • Once set to an Effective Status Type (e.g. Active), it is no longer possible to go back to a Draft or Final Status Type.
  • Whilst a contract is in an Effective Status, the system will prevent even an Admin user from deleting that contract. To delete a contract, the user will first need to terminate/expire the contract.

Considerations

  • Using Custom Draft Statuses can be useful to give flexibility to match the business process, however setting these statuses is a manual process. The more statuses you build in, the more steps there are in the processes. Consider whether each extra status justifies the additional step in the process.

  • Similarly, carefully consider whether some of the OOTB statuses are required. Just because it is there, does not mean it needs to be used. For example, if no user/department currently tracks whether contracts are with counterparties or internal, then what benefit is there to updating the status to ‘Negotiation with Them’. This will just add an extra step in the process.

  • Statuses are global. It is not possible for different selections of statuses to apply to different contract types.

Things to avoid

Don’t over-engineer. The status field has two primary purposes. a) to manage what actions can be taken at that stage in the process, and b) at a glance visibility of where in the process it is. Most of the necessary statuses will be driven by a). Add as few additional statuses as possible to satisfy b).

  • Was this article helpful?