> ## Documentation Index
> Fetch the complete documentation index at: https://www.composer.id/llms.txt
> Use this file to discover all available pages before exploring further.

# Keelvar

> Keelvar (Procurement Orchestration): the API posture, publish target and field mapping composerID publishes a decision reference through.

This page records how composerID publishes into Keelvar: the vendor's API posture, the publish target and field mapping, and the documentation each claim rests on. It is for anyone evaluating the connection or building against it.

Keelvar is a sourcing optimisation and autonomous sourcing platform: buyers run RFx events and auctions with lots, bid sheets and optimisation scenarios in Sourcing Optimizer, and Sourcing Automation bots run tactical events end to end from a requisition, handing awards back to the buyer's source-to-pay suite. Keelvar markets API-based integration with SAP Ariba, Coupa, JAGGAER and Ivalua, but publishes no self-service endpoint reference, so path-level detail is confirmed per tenant. composerID publishes an approved services or managed-service decision as the sourcing event Keelvar runs, writes the Intent ID as a fixed token in the event description, and records the event id linkage on its own side until a reference field is confirmed at onboarding.

<Info>
  Category: Procurement Orchestration. Coverage status: Specification mapped. Vendor documentation: gated (customer or SKU documentation). No developer portal is evident.
</Info>

## Integration path

How composerID connects to this destination, at a glance.

| Step                 | Detail                                                                                              |
| -------------------- | --------------------------------------------------------------------------------------------------- |
| Authentication       | Not publicly documented.                                                                            |
| composerID publishes | Sourcing event (services RFx): Sourcing event (Sourcing Optimizer) or a Sourcing Automation bot run |
| Intent ID lands on   | `sourcing_event` `event.description`, held by composerID against the destination record             |
| Back-sync            | Reads at onboarding: no event mechanism is documented; reconciliation is arranged per tenant.       |

## Vendor documentation

<Columns cols={2}>
  <Card title="Keelvar (vendor site)" icon="external-link" href="https://www.keelvar.com/" horizontal />

  <Card title="Keelvar integrations (source-to-pay suites)" icon="external-link" href="https://www.keelvar.com/integrations" horizontal />
</Columns>

## API posture

| Aspect         | Detail                                                                                                                                                                                                                                                                                           |
| -------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| Authentication | Not publicly documented. Keelvar describes API-based integration with the major source-to-pay suites and ships packaged connectors for them; credentials and the token model are issued per tenant at onboarding. Assume per-tenant token-based auth (indicative until confirmed at onboarding). |
| Style          | REST over JSON per Keelvar's integration material; no public OpenAPI document or endpoint reference is evident, so no paths are stated here.                                                                                                                                                     |
| Base URL       | Per tenant, provisioned by Keelvar at onboarding (not publicly documented).                                                                                                                                                                                                                      |
| Webhooks       | No public webhook or event-subscription specification is evident. Keelvar's own connectors push award results into the buyer's source-to-pay suite; any event-out from Keelvar to composerID is indicative until confirmed at onboarding.                                                        |
| Events posture | Reads at onboarding                                                                                                                                                                                                                                                                              |
| Rate limits    | Not publicly documented; confirm per tenant at onboarding.                                                                                                                                                                                                                                       |
| Objects        | sourcing events (RFI, RFQ, RFP, auctions), lots and items, bid sheets and bids, suppliers and invitations, optimisation scenarios and awards, Sourcing Automation bot runs                                                                                                                       |

## Publish target and field mapping

Each object below pairs the canonical intent fields with the destination's own fields and operations. The mapping is indicative until it is confirmed against a tenant at onboarding.

<AccordionGroup>
  <Accordion title="Sourcing event (services RFx)" icon="arrow-right-left" description="Publish the decided services demand as the event Keelvar runs">
    | Mapping                  | Detail                                                                                                                                 |
    | ------------------------ | -------------------------------------------------------------------------------------------------------------------------------------- |
    | Canonical to destination | service\_category, sow\.summary, deliverables\[], budget, start\_date, end\_date, supplier\_shortlist\[]                               |
    | Target                   | Sourcing event (Sourcing Optimizer) or a Sourcing Automation bot run                                                                   |
    | Requirement              | Required                                                                                                                               |
    | Notes                    | Event templates, bid sheets and lot structure are tenant-configured; event creation by API is indicative until confirmed at onboarding |
  </Accordion>

  <Accordion title="Intent ID correlation" icon="arrow-right-left" description="Carry the Intent ID">
    | Mapping                  | Detail                                                                                                                                                                                                                          |
    | ------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
    | Canonical to destination | intent\_id -> event.description (fixed token), intent\_version                                                                                                                                                                  |
    | Target                   | Sourcing event: description (event name suffix as fallback), with the event id linkage recorded by composerID                                                                                                                   |
    | Requirement              | Required                                                                                                                                                                                                                        |
    | Notes                    | Link-only carrier: no stock external reference or custom event field is publicly documented, so the token is readable in the event but not filterable. Deep link https\://\{tenant\_host}/events/\{external\_id} (illustrative) |
  </Accordion>

  <Accordion title="Supplier invitations" icon="arrow-right-left" description="Who is asked to bid">
    | Mapping                  | Detail                                                                                                                                                               |
    | ------------------------ | -------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
    | Canonical to destination | supplier\_name, p2p\_supplier\_id, contact, incumbent                                                                                                                |
    | Target                   | Event supplier list / invitations                                                                                                                                    |
    | Requirement              | Tenant required                                                                                                                                                      |
    | Notes                    | The supplier master usually mirrors the source-to-pay suite through Keelvar's connector; composerID passes the shortlist from the decision, not new supplier records |
  </Accordion>

  <Accordion title="Award (read-back)" icon="arrow-right-left" description="Close the loop">
    | Mapping                  | Detail                                                                                                                                                      |
    | ------------------------ | ----------------------------------------------------------------------------------------------------------------------------------------------------------- |
    | Canonical to destination | awarded\_supplier, award\_amount, lots\[], event\_status                                                                                                    |
    | Target                   | Award / scenario result on the event (read), or the PO or contract Keelvar's connector creates in the source-to-pay suite                                   |
    | Requirement              | Read scope only                                                                                                                                             |
    | Notes                    | Keelvar writes awards to the source-to-pay suite through its own connectors; a composerID read of award results is indicative until confirmed at onboarding |
  </Accordion>
</AccordionGroup>

<Note>
  Keelvar's public material describes integration capability, not an endpoint reference: base URL, credentials, the token model, rate limits and any event-out mechanism are provisioned per tenant at onboarding, and every path-level claim here is indicative until then. Event templates, bid sheets, lot structure and supplier lists are tenant-configured, and awards flow to the buyer's source-to-pay suite (SAP Ariba, Coupa, JAGGAER or Ivalua) through Keelvar's own connectors, so the PO or contract of record lives there, not in Keelvar. At onboarding, check whether the tenant's event template exposes a reference or custom field; if it does, move the Intent ID off the description into that field and switch the carrier from link to stamp.
</Note>

## Next steps

<Columns cols={3}>
  <Card title="How composerID connects" icon="plug-zap" href="/guides/connect">
    The five ways composerID reaches a destination, and the minimum a destination must offer.
  </Card>

  <Card title="Publishing" icon="send" href="/concepts/publishing">
    Plan, preflight and publish: how a decision becomes a valid record in a destination.
  </Card>

  <Card title="All destinations" icon="plug" href="/destinations">
    Every destination composerID documents, with its category and coverage status.
  </Card>
</Columns>
