Contract Summary

The idea is to offer Distributors an API endpoint for the purpose of creating the contract related to the order being submitted. Successful results must be obtained from Credit checks to generate any related contract.

The contract creation phase is a critical step in formalizing agreements between the Solution Provider (SP) and the end customer. During this phase, essential details—such as customer details, end customer contact details, effective date, and contract term—are incorporated into the contract. Prerequisites, including the successful eSign completion of credit check approval, must be met before initiating contract creation. Once the quote is generated, which involves multiple configurations and associated sites tied to a specific quote ID, the focus shifts to finalizing the contract. Creating the contract at this stage ensures that the terms remain consistent with the agreed-upon quote. Once the contract is signed which is processed via eSign, it becomes legally binding, and subsequent changes to the quote are restricted, ensuring stability and clarity throughout the contractual relationship.

Ordering APIs Flow
order-api-aiab

Security

This RESTful service uses a client id enforcement policy as the authentication mechanism. Please work with the Client On-Boarding Team if you do not have the necessary credentials.

Endpoints and Headers

GET API

POST API


If you are a Connector—meaning you develop on behalf of multiple Solution Provider accounts to retrieve information for them, you will use the same URL, and ensure that you pass the unique client header per Solution Provider.

API Headers

The following are the fields in the request headers of Contract API.

Field Name

Field Description

Mandatory/Optional

content-type

Application/json

M

accept

Specifies the format of the response message body.

Structured text message payloads are required to support application/json. No other format is permitted. As they are the only supported format, the accept header is not relevant for those requests.

O

x-trace-id

This field is used for passing a trace ID between API hops for end-to-end traceability.

M

x-transaction-id

This field is used for passing a traceable Id to uniquely identify the transactions.

O

client_id

This field represents the client id.

M

client_secret

This field represents the client secret.

M

source

This field should identify the calling system/application.

O

Scenario 1: retrieve the submitted order.

GET Request:

{baseURI}/api/v1/contract?quoteId=0Q0KQ000000CvE40AK

Response:

{

    "status": "Draft",

    "validity": "2024-09-07"

}

 

Scenario 2: create a new contract for submitted order.

POST

{baseURI}/api/v1/contract/aiab

Request:

{

    "quoteId": "0Q0dx000002JrIoCAK",

    "contractType": "Quote-Based",

    "contractDetails": {

        "solutionProviderContactInfoBlock": {

          "additionalSpEmail1": "revathy.rajan@accenture.com",

          "additionalSpEmail2": "nerlakanti.swathi@accenture.com",

          "additionalSpEmail3": "durga.chadalawada@gmail.com",

            "spFirstName": "Demo",

            "spLastName": "Agent",

            "spStreet": "2008 S AKWARD ST,SUITE 3700",

            "spCity": "DALLAS",

            "spId": "10006",

            "spState": "TX",

            "spZipCode": "75301-1232",

            "spCountry": "US",

            "spTelephone": "1234567800",

            "spEmail": "vp3792@att.com"

        },

        "contactObj": {

            "additionalContactEmail1": "sn057w@att.com",

            "additionalContactEmail2": "shamlashama1995@gmail.com",

            "additionalContactEmail3": "b.dhamodharaswamy@accenture.com",

            "contactTitle": "Testing",

            "contactPhone": "4657311232",

            "contactMailingStreet": "3430 Tully road tst3",

            "contactMailingState": "CA",

            "contactMailingPostalCode": "94564-2342",

            "contactMailingCountry": "US",

            "contactMailingCity": "Modesto",

            "contactLastName": "newcontact",

            "contactFirstName": "TestFebpredemo",

             "contactName": "Test",

            "contactEmail": "addagadda.tejasri@accenture.com"

        }

    }

}

Response:

{

    "code": 200,

    "message": "SentToeSign",

    "description": "Document has been sent to eSign successfully",

    "esignRequestId": 526809,

    "transactionId": "bbc53a13-7b1b-4b6f-9f2e-eaf52013ef6f",

    "traceId": "October17"

}