Your Purchase to Pay - Requisition Data Template

Coupa
Your Purchase to Pay - Requisition Data Template

Your Purchase to Pay - Requisition Data Template

This comprehensive data template provides a structured approach for collecting the necessary information to analyze your Purchase to Pay, Requisition process. It outlines the essential attributes and activities required for a robust event log. You will also find guidance on extracting this data effectively from your Coupa system.
  • Recommended attributes for comprehensive analysis
  • Key process activities to track
  • Practical data extraction guidance
New to event logs? Learn how to create a process mining event log.

Purchase to Pay - Requisition Attributes

These are the recommended data fields to include in your event log for a comprehensive analysis of your Purchase to Pay, Requisition process.
5 Required 5 Recommended 12 Optional
Name Description
Activity Name
ActivityName
The name of the specific business activity or event that occurred at a point in time for the requisition.
Description

This attribute records the distinct steps in the purchase requisition lifecycle. Examples include 'Requisition Created', 'Approval Step Approved', and 'Requisition Sourced'. Each activity represents a specific milestone or action taken on the requisition. Analyzing the sequence and frequency of these activities is fundamental to process mining, as it allows for the visualization of process maps, identification of common pathways, and detection of deviations from the standard procedure.

Why it matters

It defines the steps in the process map, making it possible to visualize and analyze the flow of requisitions.

Where to get

This is typically derived from event logs, status change records, or audit trails within the Coupa system. It may require mapping from status fields or action codes.

Examples
Requisition CreatedRequisition SubmittedApproval Step ApprovedRequisition RejectedPurchase Order Created
Event Time
EventTime
The precise date and time when the activity occurred.
Description

Event Time, or the timestamp, captures the exact moment an activity was recorded for a purchase requisition. This data is critical for chronological ordering of events to build the process flow. It is the basis for all time-based analysis, including calculating cycle times, identifying bottlenecks by measuring the duration between activities, and understanding process performance over different time periods. Accurate and granular timestamps are essential for meaningful process analysis.

Why it matters

This timestamp is crucial for ordering events correctly and calculating all duration-based metrics, such as cycle times and bottlenecks.

Where to get

This information is captured in the audit trail or history records for each requisition in Coupa, often as a 'created_at' or 'updated_at' field for each action.

Examples
2023-10-26T10:00:00Z2023-10-26T11:35:10Z2023-10-27T14:22:05Z
Purchase Requisition ID
PurchaseRequisitionId
The unique identifier for each purchase requisition, serving as the primary case identifier for the process.
Description

The Purchase Requisition ID is the central key that links all activities related to a single request for goods or services. Each requisition is assigned a unique ID upon creation, which remains constant throughout its lifecycle. This allows for end-to-end tracking of the requisition, from its initial creation and submission, through all approval or rejection steps, to its final sourcing and closure. In process mining, every event log entry is tied to this ID, enabling the reconstruction of the complete journey for each case.

Why it matters

This is the essential Case ID that connects all process steps, enabling a complete analysis of the requisition's lifecycle from start to finish.

Where to get

This is a primary key field found in Coupa's Requisitions module and related data exports.

Examples
PR-102934PR-102935PR-102936
Last Data Update
LastDataUpdate
The timestamp indicating the last time the data was refreshed from the source system.
Description

This attribute records the date and time of the most recent data extraction from Coupa. It provides transparency into the freshness of the data being analyzed. Knowing the data's recency is critical for users to understand if the insights reflect the current operational state or an earlier point in time. This is particularly important for dashboards that monitor ongoing operations.

Why it matters

Informs users about the freshness of the data, ensuring they understand the time frame of the analysis and make decisions based on up-to-date information.

Where to get

This timestamp is generated and added by the data pipeline or ETL tool at the end of a successful data extraction run.

Examples
2024-05-21T02:00:00Z
Source System
SourceSystem
Identifies the source system from which the data was extracted.
Description

This attribute specifies the system of record where the process data originated. For this analysis, the value will consistently be 'Coupa'. Including this field is a best practice, especially in environments where data might be merged from multiple systems. It provides essential context about data lineage and helps in managing data governance and quality rules.

Why it matters

Provides clear data lineage, which is crucial for data governance and when blending data from multiple enterprise systems.

Where to get

This is typically a static value added during the data extraction and transformation process to label the origin of the dataset.

Examples
Coupa
Approver
Approver
The user or group responsible for an approval activity.
Description

This attribute identifies the specific individual or approval group assigned to an approval step. It is populated for activities like 'Approval Step Started', 'Approval Step Approved', and 'Approval Step Rejected'. Analyzing data by approver is key to building the 'Approver Performance and Load' dashboard. It helps measure individual approval times, identify bottlenecks caused by specific approvers, and assess workload distribution.

Why it matters

Crucial for analyzing approver performance, workload balancing, and identifying bottlenecks related to specific individuals or approval groups.

Where to get

This information is found in the approval chain details associated with each requisition in Coupa. It may require joining with User data.

Examples
David MillerFinance Approvers L2Susan Chen
Department
Department
The business department or cost center to which the requisition is charged.
Description

The Department attribute links each requisition to a specific organizational unit or cost center. This is a critical dimension for comparative analysis. It allows dashboards and KPIs to be filtered and segmented by department, enabling managers to compare approval cycle times, rejection rates, and compliance across different parts of the organization. This helps pinpoint department-specific issues or best practices.

Why it matters

Enables comparison of process KPIs like cycle time and rejection rates across different business units, highlighting areas for improvement.

Where to get

This is a standard field on the Requisition object in Coupa, often associated with the requester's user profile or specified on the requisition line items.

Examples
MarketingIT OperationsFacilitiesResearch & Development
Requester
Requester
The employee who created and submitted the purchase requisition.
Description

This attribute identifies the individual who initiated the request. Analyzing data by requester helps identify patterns related to specific users, such as high amendment rates or frequent rejections, which may indicate a need for additional training. It is also used to analyze requisition volumes and process behavior for different users or user groups.

Why it matters

Allows analysis of process behavior by user, helping to identify training needs and understand how different individuals interact with the process.

Where to get

Available as a standard field on the Requisition object in Coupa, often linked to the User object and named 'requester' or 'created_by'.

Examples
Alice JohnsonBob SmithCharlie Brown
Requisition Status
RequisitionStatus
The current or final status of the purchase requisition.
Description

This attribute indicates the overall state of the requisition at the time of data extraction or its final outcome. Common statuses include 'Pending Approval', 'Approved', 'Rejected', 'Withdrawn', and 'Closed'. This is a key dimension for filtering and analysis. It is used to calculate approval and rejection rates, monitor the current workload of open requisitions, and understand the final disposition of requests.

Why it matters

Essential for understanding requisition outcomes, calculating approval and rejection rates, and monitoring the current state of in-flight requisitions.

Where to get

This is a standard field on the Purchase Requisition object in Coupa, often named 'status' or 'state'.

Examples
Pending ApprovalApprovedRejectedWithdrawnClosed
Total Amount
TotalAmount
The total monetary value of the purchase requisition.
Description

This attribute represents the total cost of all goods and services requested in the requisition. The amount is a crucial factor in process analysis as it often influences the complexity of the approval workflow; higher value requisitions typically require more approval steps. Analyzing process metrics by value bands (e.g., <$1000, $1000-$10000) can reveal how the process handles requisitions of different financial significance.

Why it matters

Helps analyze how the process varies for requisitions of different values, as higher amounts often trigger more complex approval workflows.

Where to get

This is a standard field on the header of the Requisition object in Coupa, typically named 'total' or 'total_amount'.

Examples
500.0012550.7599.99
Approval Step Count
ApprovalStepCount
The total number of approval steps a requisition has gone through.
Description

This calculated attribute counts the number of distinct 'Approval Step Approved' activities for each requisition. It helps quantify the complexity of the approval workflow for each case. This is the basis for the 'Average Number of Approval Steps' KPI and is useful for identifying requisitions that follow unusually long or complex approval paths, which may indicate a need for workflow simplification.

Why it matters

Quantifies the complexity of the approval workflow for each requisition, helping to identify overly complex paths that need streamlining.

Where to get

This metric is calculated in the process mining tool by counting the occurrences of 'Approval Step Approved' for each Case ID.

Examples
253
Approval Step Duration
ApprovalStepDuration
The time a requisition spent waiting at a single approval step.
Description

This calculated metric measures the duration between an 'Approval Step Started' activity and its corresponding 'Approval Step Approved' or 'Approval Step Rejected' activity. It isolates the wait time at each distinct stage of the approval chain. This is crucial for the 'Critical Approval Step Bottlenecks' dashboard, as it pinpoints exactly which approvers or approval stages are causing the most significant delays in the overall process.

Why it matters

Pinpoints specific bottlenecks within the approval workflow by measuring the wait time at each individual step, rather than just the total cycle time.

Where to get

Calculated in the process mining tool by finding the time difference between 'Approval Step Started' and the subsequent terminal approval event (Approved/Rejected).

Examples
1.2 days4 hours3.8 days
Approval Workflow Path
ApprovalWorkflowPath
An identifier for the specific approval chain or workflow template applied to the requisition.
Description

This attribute identifies the predefined sequence of approvers that a requisition is supposed to follow. It is determined by business rules, often based on factors like amount, department, and requisition type. Analyzing this attribute is central to the 'Requisition Policy Compliance' dashboard. By comparing the actual sequence of approvers to the assigned workflow path, it becomes possible to detect deviations, measure conformance rates, and identify unmanaged exceptions.

Why it matters

Enables compliance analysis by allowing a comparison between the expected and actual approval steps, highlighting process deviations.

Where to get

Consult Coupa documentation. This may be derived from the name of the approval chain or workflow rule that was triggered for the requisition.

Examples
Standard Approval <$5kIT Hardware Approval >$10kCapital Expense CFO Review
Commodity
Commodity
The high-level category of the goods or services being requested.
Description

The Commodity attribute provides a standardized classification for the items on a requisition, such as 'Office Supplies', 'Computer Hardware', or 'Marketing Services'. This allows for analysis of purchasing patterns and process variations based on what is being bought. Certain commodities may have specialized approval requirements or sourcing strategies, and analyzing the process by commodity can help optimize procurement for different spending categories.

Why it matters

Helps in analyzing spend categories and understanding if process behavior, such as approval times, varies by the type of goods or services purchased.

Where to get

This is a standard field in Coupa, typically available at the requisition line item level. It may need to be aggregated to the header level.

Examples
Office SuppliesComputer HardwareMarketing ServicesTravel
Currency
Currency
The currency code for the total amount of the requisition.
Description

This attribute specifies the currency (e.g., USD, EUR, GBP) in which the requisition's Total Amount is denominated. It is essential context for any financial analysis, especially for multinational organizations that operate with multiple currencies. It ensures that monetary values are interpreted correctly and allows for proper conversion and aggregation in financial reporting and dashboards.

Why it matters

Provides necessary context for the 'Total Amount' attribute, ensuring accurate financial analysis in multi-currency environments.

Where to get

This is a standard field on the Requisition object in Coupa, usually named 'currency_code' or similar.

Examples
USDEURGBP
Is Amended
IsAmended
A boolean flag that is true if the requisition was amended one or more times after its initial submission.
Description

This calculated attribute is a simple flag (True/False) that indicates whether a 'Requisition Amended' activity occurred for a given case. It simplifies analysis and filtering by allowing users to easily isolate requisitions that required changes. This is used to calculate the Requisition Amendment Rate KPI and to power the 'Requisition Amendment Volume' dashboard, helping to identify the root causes of rework and improve first-time quality.

Why it matters

Simplifies the calculation of the amendment rate KPI and allows for easy segmentation of cases that required rework versus those that did not.

Where to get

This is calculated in the process mining tool by checking for the existence of a 'Requisition Amended' activity within the event log for each case.

Examples
truefalse
Purchase Order ID
PurchaseOrderId
The identifier of the purchase order that was created from the approved requisition.
Description

Once a requisition is fully approved and sourced, a purchase order is typically created. This attribute stores the ID of that resulting PO. It serves as a crucial link between the upstream Requisition process and the downstream Purchase Order process. It enables the calculation of the 'Time from Requisition Approval to PO Creation' KPI and allows for a broader, end-to-end analysis of the entire Purchase-to-Pay cycle.

Why it matters

Links the requisition to the subsequent purchase order, enabling analysis of the handoff time and facilitating a broader end-to-end P2P view.

Where to get

This is a standard field on the Requisition object in Coupa that gets populated after the PO is created.

Examples
PO-45000123PO-45000124PO-45000125
Rejection Reason
RejectionReason
The reason provided by an approver when a requisition or an approval step is rejected.
Description

When an approver rejects a requisition, they often provide a reason for the decision. This attribute captures that textual explanation. Analyzing rejection reasons provides direct, qualitative feedback on why requisitions fail. This insight is invaluable for root cause analysis, helping to identify common issues like incorrect coding, lack of budget, or insufficient justification, which can then be addressed through training or process improvements.

Why it matters

Provides direct insight into the root causes of process failures, helping to identify areas for user training or process clarification.

Where to get

This information is typically captured in the comments or notes field associated with a 'Rejected' status change in the requisition's approval history.

Examples
Incorrect cost centerExceeds budget for this quarterDuplicate requestInsufficient justification provided
Requisition Approval Cycle Time
RequisitionApprovalCycleTime
The total time elapsed from when a requisition is first submitted to when it receives final approval.
Description

This is a calculated metric that measures the duration of the core approval process. It is computed by finding the time difference between the 'Requisition Submitted' activity and the 'Requisition Approved' activity for each case. This is one of the most important KPIs for this process, as it directly quantifies the efficiency of the approval workflow. It is used in multiple dashboards to track performance, identify bottlenecks, and measure the impact of process improvement initiatives.

Why it matters

This is a primary KPI for measuring process efficiency. It quantifies the time taken for approvals and is essential for identifying bottlenecks.

Where to get

This metric is calculated in the process mining tool by subtracting the timestamp of 'Requisition Submitted' from the timestamp of 'Requisition Approved'.

Examples
2.5 days8 hours15.2 days
Requisition Type
RequisitionType
The category or type of the requisition, such as 'Capital Expense', 'Operational Expense', or 'Software'.
Description

Requisition Type is a classification that helps categorize requisitions based on their business purpose or the nature of the purchase. This attribute is valuable for compliance analysis and for understanding how different types of requests flow through the process. For example, capital expenditure requests might follow a more stringent and lengthy approval path than standard operational requests. Analyzing the process by Requisition Type can uncover valuable insights for process optimization.

Why it matters

Allows for segmenting analysis by the business purpose of the request, as different types may have distinct process flows and policies.

Where to get

This is likely a custom or standard classification field on the Requisition object in Coupa.

Examples
Capital ExpenseOperational ExpenseIT HardwareProfessional Services
Supplier Name
SupplierName
The name of the supplier or vendor selected for the requisition.
Description

This attribute identifies the intended supplier for the goods or services requested. The supplier can be specified by the requester or added later during the sourcing process. Analyzing process metrics by supplier can help evaluate supplier performance and identify if interactions with certain suppliers lead to longer cycle times or other process inefficiencies. It provides important context for procurement strategy and supplier relationship management.

Why it matters

Allows for analysis of process performance based on the selected supplier, which can inform sourcing strategies and supplier management.

Where to get

This information is available on the Requisition Line object in Coupa, often as a 'supplier' or 'vendor' field.

Examples
StaplesDell TechnologiesAccentureCDW
Urgency Level
UrgencyLevel
A classification indicating the urgency of the requisition, such as 'High', 'Medium', or 'Low'.
Description

The Urgency Level, often mapped to a priority field, allows requesters to flag requests that require expedited processing. This attribute is essential for the 'Urgent Requisition Processing Time' dashboard. By comparing the cycle times of high-urgency requisitions against standard ones, organizations can assess whether their prioritization mechanisms are effective and if urgent business needs are being met in a timely manner.

Why it matters

Enables analysis of whether urgent requests are processed faster than standard ones, validating the effectiveness of prioritization policies.

Where to get

This may be a standard or custom field on the Requisition object in Coupa. Consult Coupa documentation or system configuration.

Examples
HighMediumLow
Required Recommended Optional

Purchase to Pay - Requisition Activities

These are the key process steps and milestones to capture in your event log for accurate discovery of your Purchase to Pay, Requisition workflow.
6 Recommended 6 Optional
Activity Description
Purchase Order Created
A purchase order (PO) is successfully generated based on the information from the approved requisition. This event is inferred when a PO record is created that references the source requisition ID.
Why it matters

This is the primary successful outcome of the requisition process and marks the handoff to the next stage of Purchase-to-Pay. Analyzing the time from 'Requisition Approved' to this event highlights any delays in execution.

Where to get

Inferred from the creation of a record in the 'purchase_orders' table that contains a reference back to the originating 'requisition_headers' or 'requisition_lines' ID.

Capture

Use the 'created-at' timestamp of the PO record linked to the requisition ID.

Event type inferred
Requisition Approved
The requisition has successfully passed all required steps in the approval workflow. This is inferred from the overall status of the requisition header changing to 'approved'.
Why it matters

This is a critical success milestone, marking the end of the approval cycle. The time to reach this activity is a primary KPI, and it serves as the trigger for downstream procurement actions.

Where to get

Inferred from a status change on the 'requisition_headers' table when the 'status' field is updated to 'approved'. The timestamp is recorded in the associated audit trail.

Capture

Identify the timestamp when the requisition's overall status changes to 'approved'.

Event type inferred
Requisition Closed
The requisition is formally closed, signifying that no further action will be taken on it. This can happen after a PO is created and fulfilled, or if the requisition is canceled after approval but before ordering.
Why it matters

This activity serves as a definitive end-point for the requisition's lifecycle. It ensures that cases have a clean conclusion, preventing them from appearing as 'active' indefinitely in process analysis.

Where to get

Inferred from a status change on the 'requisition_headers' table when the 'status' field is updated to 'closed'. The timestamp is recorded in the associated audit trail.

Capture

Identify the timestamp when the requisition's overall status changes to 'closed'.

Event type inferred
Requisition Created
A new purchase requisition is initiated and saved as a draft by a user. This is the starting point for every requisition case and is typically inferred from the creation timestamp of the requisition record itself.
Why it matters

This activity marks the beginning of the requisition lifecycle. Analyzing the time from creation to submission can reveal delays caused by user uncertainty or system complexity.

Where to get

This event is captured from the 'created-at' timestamp on the 'requisition_headers' table for a given Purchase Requisition ID.

Capture

Use the creation timestamp of the requisition header record.

Event type inferred
Requisition Rejected
The requisition is definitively rejected during the approval process and will not be converted into a purchase order. This is inferred from the overall status of the requisition header changing to 'rejected'.
Why it matters

This activity represents a terminal failure in the process. Analyzing these events is key to improving the 'Requisition Rejection Rate' and identifying root causes like policy violations or budget issues.

Where to get

Inferred from a status change on the 'requisition_headers' table when the 'status' field is updated to 'rejected'. The timestamp is recorded in the associated audit trail.

Capture

Identify the timestamp when the requisition's overall status changes to 'rejected'.

Event type inferred
Requisition Submitted
The requester formally submits the completed requisition into the approval workflow. This event is inferred by observing the requisition's status change from 'draft' to 'pending_approval' in the system's audit logs or history tables.
Why it matters

Submission triggers the approval process, making it a critical milestone for measuring the 'Average Requisition Approval Cycle Time' KPI. Delays before this point are user-related, while delays after are process-related.

Where to get

Inferred from a status change on the 'requisition_headers' table, specifically when the 'status' field changes to 'pending_approval'. The timestamp for this change is found in the associated audit trail.

Capture

Identify the timestamp when the requisition status first changes to 'pending_approval'.

Event type inferred
Approval Step Approved
An individual approver in the workflow gives their approval for the requisition. This is an explicit action logged by the system with a specific timestamp and user information.
Why it matters

This activity provides granular insight into the approval process flow. Aggregating these steps helps calculate the 'Average Wait Time per Approval Step' and analyze approver performance.

Where to get

Captured from an explicit 'approve' action recorded in the 'approvals' table or its audit trail, linked to the specific requisition and approver.

Capture

Filter for 'approve' events in the approval history for the requisition.

Event type explicit
Approval Step Rejected
An individual approver rejects the requisition at their stage in the workflow, typically sending it back to the requester for amendment. This is an explicit action recorded by Coupa.
Why it matters

Rejections at any step create rework and extend cycle times. Analyzing where and why rejections occur is crucial for process improvement and user training.

Where to get

Captured from an explicit 'reject' action recorded in the 'approvals' table or its audit trail, linked to the specific requisition and approver.

Capture

Filter for 'reject' events in the approval history for the requisition.

Event type explicit
Approval Step Started
An approval task is assigned to a specific approver or approval group, and the requisition is now awaiting their action. This is inferred when an approval record associated with the requisition is created with a 'pending' status.
Why it matters

This marks the start of the waiting time for a specific approval. Measuring the duration between this and the corresponding 'Approval Step Approved/Rejected' helps identify specific bottlenecks in the approval chain.

Where to get

Inferred from the creation timestamp of a record in the 'approvals' table linked to the requisition, where the approver's action status is 'pending' or equivalent.

Capture

Use the creation timestamp of an individual's pending approval record in the approval chain.

Event type inferred
Requisition Amended
The requisition is edited by the requester or another authorized user after it has already been submitted. Coupa explicitly logs this as a new version or an audit entry, often resetting some or all of the approval workflow.
Why it matters

Tracking amendments is key to understanding process rework and inefficiency. A high volume of amendments can indicate unclear initial requirements or complex purchasing policies, impacting the 'Requisition Amendment Rate' KPI.

Where to get

This is captured from audit trail tables associated with the 'requisition_headers' table, which log version changes or specific 'edit' actions.

Capture

Look for explicit 'edit' or 'update' events in the requisition's history log after submission.

Event type explicit
Requisition Sourced
The approved requisition is sent to a sourcing event, like an RFQ or auction, instead of being immediately converted to a purchase order. This event is inferred when the requisition is linked to a sourcing event object.
Why it matters

This activity reveals an important alternative path in the procurement process. It separates simple purchases from more complex, strategic sourcing activities, allowing for more nuanced cycle time analysis.

Where to get

Inferred by detecting a status change to 'sourcing' or by identifying a link being created between the 'requisition_lines' table and a sourcing event table.

Capture

Check for status change to 'sourcing' or creation of a link to a sourcing event ID.

Event type inferred
Requisition Withdrawn
The original requester cancels the requisition before it receives final approval. This is a user-driven, explicit action that terminates the process for that requisition.
Why it matters

Withdrawals can indicate changed business needs, duplicate requests, or users circumventing the process. Tracking this helps understand demand signal volatility and potential process adherence issues.

Where to get

Inferred from a status change on the 'requisition_headers' table to 'withdrawn' or a similar state, based on an explicit user action logged in the audit trail.

Capture

Identify the timestamp when the requisition status changes to 'withdrawn'.

Event type inferred
Recommended Optional

Extraction Guides

How to get your data from Coupa