Assignment Contract
This process generates an assignment contract between the Investment Fund and the Assignor and sends it for signature. To generate a contract, you need the fund's fund_class_key, provided by the QI CTVM team, as well as an assignment_contract_template_key, also provided by the team, which defines the contract parameters such as co-obligation, mandatory assignment documents, clauses, and so on.
Within the contract structure there are products, which identify, for example, an assignment configuration for a given asset type, for repurchase, and so forth. Two documents are sent for signature: the contract itself, with all the related parties involved — assignor, manager, guarantors, etc.; and the manager's declaration, which must be signed by the manager alone, attesting that all rules and requirements set out by CVM, Anbima and the Central Bank regarding the assignor's operation have been met, covering everything from risk analysis to AML, among others that can be consulted on the respective portals.
The contract flow is configurable: you can have the documents sent for signature as soon as they are generated, or have them wait for a manual submission. In addition, if the contract is proposed by a consultant, the manager's approval is required before it is sent for signature. Finally, if the assignor's registration has not yet been released, or is being updated, you must wait for the latest analysis to be concluded before sending it for signature. If the analysis is rejected, the contract is canceled as well.
Once both documents are signed by the required parties, the products become pending activation — configuring the assignment pipeline may take a few minutes — and finally you will be able to use the respective product's assignment_configuration_key to carry out the assignment between the fund and the assignor.
Optionally, you may define guarantors for the operation between the assignor and the fund, provided the contract template allows it. Guarantors must be registered beforehand together with the assignor, and are only referenced in the contract by their document number. Note that disbursement accounts are defined in the assignor's registration.
The entire contract signature flow is handled by our certification authority, CertifiQI, for greater convenience and ease. Tracking the signatures and the subsequent activation of the assignor happens automatically thanks to this feature.
Request
{
"fund_class_key": "813ce253-bae5-4448-8d15-04c48d9991b7",
"assignor_document_number": "18.458.041/0001-91",
"assignment_contract_template_key": "2555f90a-4c6a-4d65-8bda-5d16f827840c",
"credit_limit": 1000000,
"external_id": "Contract 550",
"observation": "Contract regarding the link with the assignor's co-obligation",
"guarantors": [
{
"name": "Operation guarantor",
"document_number": "81.914.413/0001-83"
}
]
}
Body Params
| Field | Type | Description | Characters |
|---|---|---|---|
fund_class_key * | string | Unique key identifying the Fund. Generated when the Fund is created and provided by the QI CTVM team. | uuid key |
assignment_contract_template_key * | string | Unique key identifying the Contract Template. Also provided by the QI CTVM team. | uuid key |
assignor_document_number * | string | Assignor's document number. | CPF or CNPJ |
credit_limit | number | Credit limit amount for the contract. | - |
external_id | string | External identifier of the contract. Usually the contract number. | 1 to 255 |
observation | string | Observation. Free-form field for any notes. | 1 to 500 |
guarantors | array | Guarantors of the operation. | See Guarantor Definition. |
*Required fields
It is very important that guarantors are referenced both in the assignor's registration and at this stage. If a guarantor is referenced only in the registration and not in the contract, they will not sign the document. If referenced only in the contract and not in the registration, an error is returned.
Response
{
"assignment_contract_key": "41d6ff41-1dac-4df7-9e50-d15210ec57f3",
"status": "pending_document",
"products": [
{
"product_key": "57efbd9f-0917-4c79-9a43-bc8f1039fc78",
"assignment_configuration_key": "372f0449-4043-4523-9f0f-dff70c65b9c9",
"product_type": "assignment_term",
"asset_type": "ccb",
"status": "pending_contract",
"required_documents": [
"ccb"
]
}
]
}
It is extremely important to save the assignment_contract_key, as it is used to characterize the assignment configurations generated by the contract later on, especially those originated by the branches flow in topic 5.2.2.6. You can retrieve the generated configurations using the GET described in topic 5.3.1.2.
Treatable Errors
| Code | HTTP | Cause | How to resolve |
|---|---|---|---|
| ACT000001 | 404 | Fund Class not found for the fund_class_key provided. | Check whether the fund_class_key is correct and belongs to the authenticated manager. |
| ACT000016 | 404 | Contract template not found for the assignment_contract_template_key provided. | Check whether the assignment_contract_template_key is correct and linked to the fund_class_key. |
| ACT000123 | 400 | The template is inactive and cannot be used to create contracts. | Use an active template. |
| ACT000065 | 404 | Assignor not registered for the proposing agent. | Check whether the assignor_document_number corresponds to a registered assignor. |
| ACT000096 | 400 | The assignor has no registered account. | Register at least one disbursement account for the assignor before proposing a contract (see Account Maintenance). |
| ACT000081 | 400 | The guarantor is not registered with the assignor. | Each item in guarantors must correspond to a guarantor previously registered for the assignor, with status registered or pending_registry. |
| ACT000095 | 409 | Duplicate case number (case_number) for this fund. | Use a unique case_number within the same fund_class_key, or omit the field to have one generated automatically. |
Assignment Contract Definition
| Field | Type | Description | Characters |
|---|---|---|---|
assignment_contract_key * | string | Unique key identifying the contract. | 36 |
fund_class * | object | Fund object | -- |
assignor * | object | Assignor object. | -- |
consultant | object | Consultant object. Only when the consultant is a party to the contract. | -- |
assignment_contract_template * | object | Contract template object. | -- |
attached_documents * | array | List of attached documents. | See Attached Document Definition. |
products * | array | List of products under the contract. | See Product Definition. |
proposal_agent * | string | Type of the agent proposing the contract. | -- |
status * | string | Contract status. | See Assignment contract status enumerators. |
credit_limit | number | Credit limit submitted. | -- |
external_id | string | External identifier of the contract. Usually the contract number | 1 to 255 |
case_number | string | Case number. Unique per fund | -- |
denial_reason | string | Details of the manager's rejection. | 1 to 255 |
observation | string | Observations submitted. | 1 to 500 |
creation_datetime | string | Datetime the contract was created. | -- |
Attached Document Definition
| Field | Type | Description | Characters |
|---|---|---|---|
document_key * | string | Unique key identifying the document. | 36 |
document_type * | string | Document type. | -- |
status * | string | Document status. | See Document status enumerators. |
document_template_key | string | Unique key identifying the template that generated the document | 36 |
required_parties | array | List of parties that sign the document in question | -- |
Product Definition
| Field | Type | Description | Characters |
|---|---|---|---|
product_key * | string | Unique key identifying the product. | 36 |
assignment_configuration_key * | string | Unique key identifying the Assignment Configuration. | 36 |
asset_type * | string | Asset type. | -- |
status * | string | Product status. | -- |
Guarantor Definition
| Field | Type | Description | Characters |
|---|---|---|---|
name * | string | Guarantor's name. | 1 to 255 |
document_number * | string | CPF or CNPJ. | 14 to 18 |
*Required fields
As already noted, the guarantor must be registered beforehand, together with the specific assignor.
Enumerators
Assignment Contract Status
| Enumerator | Description |
|---|---|
| pending_document | Pending document generation |
| sending_to_signature | Being sent for signature |
| pending_signature | Available for the parties to sign |
| signed | Signed |
| pending_manager_approval | Pending manager approval |
| denied | Rejected in the manager's review |
| pending_signature_submission | Pending manual submission for signature |
| pending_assignor_registry_release | Pending release of the linked assignor registration (under registration or update) |
| canceled | Canceled |
Attached Document Status
| Enumerator | Description |
|---|---|
| pending_generate | Pending document generation |
| approved | Document generated |
| signed | Document signed |