Framework agreements

0 - What is a framework agreement?

A framework agreement is a contract signed by a supplier. On the Digital Marketplace, this is performed by a supplier submitting a form from their account, which is considered ‘electronically signed’. After which a countersigned document is automatically generated to complete the contract.

Once a supplier has been awarded a place on a framework, they must sign their framework agreement in order to sell their services to public sector buyers. If they do not, then the supplier’s services may be suspended from the platform (i.e. removed from search results).

1 - Signing the agreement

During standstill, a supplier receives an email saying that their agreement is ready to download, and a link to the signing page, e.g. https://www.preview.marketplace.team/suppliers/frameworks/g-cloud-12/start-framework-agreement-signing.

They can also navigate to this URL by logging into their account and following the links, which will be visible up until their agreement has been signed.

The supplier must provide details of the person signing (their name and role). These details are stored in the database as a FrameworkAgreement object (visible in the API at /agreements/<agreement_id>).

If the supplier makes a mistake and needs to sign a new agreement, they can go directly to the signing page from the link in their invitation to sign email and try again. This will create a new FrameworkAgreement and trigger the creation of a new countersigning document. The old agreements will still be present in the API for audit purposes.

2 - Countersigning an agreement

Each night the generate-and-upload-countersigned-signature-pages Jenkins job does the following:

  • checks for any newly signed agreements

  • approves them

  • un-suspends any services suspended by the suspend-suppliers-without-agreements.py script for them

  • generates the ‘countersigned’ PDF

  • uploads the countersigned agreement page to S3

  • sends a Notify email to the suppliers that the countersigned agreement is ready to download in their account.

See Generating framework agreements for more information on this process.

The generated countersigned contract contains:

  • the supplier’s registered name

  • the supplier’s registered address

  • the supplier’s company registration number (Companies House number or other number)

  • the lots on which the supplier made a successful application

  • the framework ‘agreement version’ e.g. RM1557.1

  • the signing user’s name and role

  • the CCS countersigning user’s name and role

  • the boilerplate full contract text

3 - Suspending suppliers without an agreement

Suppliers are usually given a couple of weeks to return their signed framework agreement, after which CCS may choose to suspend the supplier from the framework.

CCS Category admins have the ability to suspend all the services for a supplier on a particular framework.

Once draft services have been published a developer needs to run the script: suspend-suppliers-without-agreements.py to bulk-suspend all suppliers which have not signed the agreement. This script also emails the suppliers to notify them about the suspension (and explain how they can get un-suspended).

Once a suspended supplier has signed their framework agreement their services will be automatically unsuspended by the countersigning script. See: 2 - Countersigning an agreement.