HomeAI SystemsHow It WorksMedia HubContact
EnglishFrançais
Request a Demo Launch App

Procure-to-Pay
Practical Guide

Prepare your data, import it into the system, and start managing budgets, purchase orders, receipts, and payments — step by step.

Prepare Your Data

Most of your procure-to-pay data is created directly in the app through chat — budgets, requisitions, purchase orders, receipts, and payments. The CSV files below serve as templates for bulk import or export. Download the sample files, adapt them to your data, and import them to get started immediately.

Download Sample Data

CSV files with realistic fictional data — ready to import or adapt

Download Sample CSVs (ZIP)

CSV File Structures

Daily Usage Files

Budgets budgets.csv

Your budget lines with allocated, committed, and consumed amounts. One row per budget line per period.

ColumnDescriptionExample
nameBudget nameBudget BTP 2026
fiscal_yearFiscal year2026
periodPeriod (e.g. Q1, H1, full year)Q1
scope_typeType of scope (category, department, etc.)category
scope_valueValue of the scopeBTP/Construction
category_n1Primary categoryBTP/Construction
departmentResponsible departmentDirection Opérations
cost_centerCost center codeCC-OPS-001
amount_allocatedAllocated amount500000000
amount_committedCommitted amount120000000
amount_consumedConsumed amount45000000
currencyCurrency codeXOF
owner_nameBudget owner nameBamba Kadriatou
statusBudget statusactive
alerts_threshold_pctAlert threshold percentage80
hard_stop_at_pctHard stop percentage100
notesAdditional notesReview at end of Q1

Purchase Requisitions purchase_requisitions.csv

Purchase requests from your teams. One row per requisition line with requester, category, and suggested supplier.

ColumnDescriptionExample
pr_numberRequisition numberPR-2026-0001
purposePurpose of the requestRéhabilitation route Abidjan-Bouaké
requester_nameName of the requesterBamba Kadriatou
departmentRequesting departmentDirection Opérations
cost_centerCost center codeCC-OPS-001
category_n1Primary categoryBTP/Construction
category_n2Secondary categoryGénie civil
urgencyUrgency levelhigh
needed_byNeeded-by date (YYYY-MM-DD)2026-02-15
line_descriptionLine item descriptionCiment CEM II 42.5
line_quantityQuantity requested500
line_unitUnit of measuretonnes
line_unit_priceUnit price85000
currencyCurrency codeXOF
vat_rateVAT rate percentage18
budget_nameLinked budget nameBudget BTP 2026
suggested_supplier_nameSuggested supplierCIMENTERIE DU SAHEL
statusRequisition statuspending_approval
notesAdditional notesPriority for phase 1

Purchase Orders purchase_orders.csv

Approved purchase orders sent to suppliers. One row per order line with delivery and payment terms.

ColumnDescriptionExample
po_numberPurchase order numberPO-2026-0001
pr_numberLinked requisition numberPR-2026-0001
supplier_nameSupplier nameCIMENTERIE DU SAHEL
line_descriptionLine item descriptionCiment CEM II 42.5
line_quantityQuantity ordered500
line_unitUnit of measuretonnes
line_unit_priceUnit price85000
currencyCurrency codeXOF
vat_rateVAT rate percentage18
expected_delivery_dateExpected delivery date2026-02-10
delivery_addressDelivery addressDepôt Abidjan Port
payment_termsPayment terms30 days net
incotermDelivery termsDDP
statusOrder statussent
buyer_nameBuyer who issued the orderKouassi Marc
notesAdditional notesConfirm transport arrangement

Receipts receipts.csv

Goods or services received against purchase orders. One row per receipt line with quantities and condition.

ColumnDescriptionExample
po_numberLinked purchase order numberPO-2026-0001
received_atDate and time received2026-02-09
received_by_nameName of the receiverTraoré Ibrahim
line_descriptionLine item descriptionCiment CEM II 42.5
line_quantity_receivedQuantity received500
line_quantity_orderedQuantity ordered500
line_unitUnit of measuretonnes
conditionCondition of goods receivedgood
notesAdditional notesAll pallets intact

Payments payments.csv

Payments executed or scheduled against purchase orders. One row per payment with invoice and bank details.

ColumnDescriptionExample
po_numberLinked purchase order numberPO-2026-0001
supplier_nameSupplier nameCIMENTERIE DU SAHEL
invoice_refInvoice referenceINV-CS-2026-0042
invoice_dateInvoice date (YYYY-MM-DD)2026-02-12
amountPayment amount50075000
currencyCurrency codeXOF
methodPayment methodbank_transfer
bank_refBank referenceBRT-2026-887123
bank_accountBank account usedCI05 CI 001 0102 0304 0506
scheduled_dateScheduled payment date2026-03-14
executed_dateActual execution date2026-03-14
statusPayment statusexecuted
approved_by_nameApprover nameDiabaté Aminata
notesAdditional notesPayment on schedule

Import Your Data

Once your CSV files are ready, importing them takes seconds. The system validates every file and shows you exactly what will be imported. For day-to-day operations, most records are created directly in the app via chat.

1

Open the App Chat

Launch the Procure-to-Pay app. You'll see a chat interface — this is your command center.

2

Attach Your CSV File

Click the + button to attach a CSV file, or drag and drop it into the chat.

3

Tell the System What to Do

Describe what you want in plain language:

"Import these budgets"
"Import these purchase requisitions"
"Import these purchase orders"
4

Review the Validation

The system automatically checks your data and shows you:

• Number of rows detected and ready to import
• Data quality score (percentage)
• Any errors or warnings (missing columns, invalid dates, unknown budgets)
• A preview of the first rows

5

Confirm the Import

Once you're satisfied with the validation results, confirm the import. Your data is now available for requisitions, orders, matching, payments, and reporting.

Daily Workflows

Once your data is imported, here's what your team can do every day — just by asking in plain language.

1

Create Budgets

Define budget lines by category, department, and period — with thresholds for alerts and hard stops.

"Create a budget of 500 million XOF for BTP/Construction in Q1 2026 with an alert at 80%"

Result: A budget line with allocated amount, owner, alert threshold, and hard-stop percentage — ready for tracking.

📊 Dashboard: Dashboard → Budgets tab → '+' button → fill name, period, allocated, alert threshold, hard-stop → Save

2

Create Purchase Requisitions

Requesters create requisitions with line items, linked budgets, and suggested suppliers.

"Create a purchase requisition for 500 tonnes of CEM II 42.5 cement from CIMENTERIE DU SAHEL, linked to Budget BTP 2026"

Result: A requisition with PR number, line details, budget link, urgency, and needed-by date — ready for approval.

📊 Dashboard: Dashboard → Requisitions tab → '+' button → fill requester, department, category, lines, suggested supplier, urgency, need date → Save

3

Approval Workflows

Route requisitions to the right approvers based on amount, category, and department.

"Show me all requisitions pending approval for Direction Opérations above 10 million XOF"

Result: A list of pending requisitions with amounts, requesters, and budget impact — ready for approval or rejection.

📊 Dashboard: Dashboard → Approvals tab → 'My queue' sub-tab → approve, reject, or reassign steps

4

Issue Purchase Orders

Convert approved requisitions into purchase orders with delivery and payment terms.

"Convert PR-2026-0001 into a purchase order with delivery by February 10 to Dépôt Abidjan Port, 30 days net"

Result: A purchase order with PO number, supplier, line items, delivery address, payment terms, and incoterm.

📊 Dashboard: Dashboard → Purchase Orders tab → convert requisition to PO → review → 'Issue' button

5

Record Receipts

Log goods received against purchase orders with quantities and condition checks.

"Record receipt of 500 tonnes of cement for PO-2026-0001, all in good condition"

Result: A receipt record linked to the purchase order with received quantities, receiver name, and condition status.

📊 Dashboard: Dashboard → Receipts tab → '+' button → select PO → enter quantities line by line → Save

6

Three-Way Matching

Automatically match purchase orders, receipts, and invoices to catch discrepancies before payment.

"Run three-way matching for PO-2026-0001 against the receipt and invoice INV-CS-2026-0042"

Result: A matching report showing quantity, price, and total discrepancies — with approval or hold recommendation.

📊 Dashboard: Dashboard → Purchase Orders tab → select PO → 'Matching' button → see PO vs receipt vs invoice comparison

7

Schedule Payments

Schedule payments based on payment terms, with approval routing and bank details.

"Schedule payment for invoice INV-CS-2026-0042 on March 14 via bank transfer"

Result: A scheduled payment with amount, method, bank account, approver, and execution date.

📊 Dashboard: Dashboard → Payments tab → '+' button → select PO/invoice → enter amount, date, bank → 'Schedule'

8

Track Budget Consumption

Monitor allocated, committed, and consumed amounts in real time with alerts when thresholds are reached.

"Show me budget consumption for Budget BTP 2026 and flag any lines above 80%"

Result: A budget dashboard with allocated, committed, and consumed amounts, utilization percentages, and threshold alerts.

📊 Dashboard: Dashboard → Budgets tab → each budget shows allocated, committed, consumed, available, % with visual gauge

9

Export Audit Reports

Export the full procure-to-pay trail for any period, supplier, or category for audits and reviews.

"Export the full P2P audit trail for Q1 2026 to PDF"

Result: A formatted PDF report with requisitions, orders, receipts, matching results, and payments — ready for auditors.

📊 Dashboard: Dashboard → any tab → export button for PDF or CSV

Receipt Discrepancies & Alerts

Catch receipt discrepancies early, react to budget alerts, and detect stale purchase orders before they become problems.

1

Report Receipt Discrepancies

Flag missing, damaged, or wrong items at receipt time — the system updates the 3-way match status automatically.

"Report a discrepancy on receipt REC-2026-001: 2 units missing"

Result: The discrepancy is recorded with details (missing, damaged, wrong item), the supplier is flagged, and the 3-way match status is updated.

📊 Dashboard: Dashboard → Receipts tab → find the receipt → 'Signal discrepancy' button → describe the issue

2

React to Budget Alerts

Get color-coded budget alerts before you hit the hard stop, so you can take action in time.

"Which budgets exceed 80%?"

Result: A color-coded budget report: red (critical, 100%+), orange (alert, 80%+), green (ok). Each with allocated, committed, consumed, available, and % used.

📊 Dashboard: Dashboard → Overview tab → alerts shown at top with color codes. Dashboard → Budgets tab → visual gauge per budget with alert and hard-stop thresholds

3

Detect Zombie Purchase Orders

Find purchase orders that were issued but never received — before they tie up your budget.

"List POs issued but not received in 30+ days"

Result: A list of stale POs with days since issue, supplier, amount, and status — ready for follow-up or cancellation.

📊 Dashboard: Dashboard → Purchase Orders tab → filter by status 'issued' and sort by date

Roles, Permissions & Audit

Configure approval workflows, manage roles and permissions with separation of duties, and maintain a complete audit trail.

1

Configure Approval Workflows

Design multi-step approval workflows with conditions by amount, category, and currency — with SLAs and escalation roles.

"Create an IT workflow with CIO approval above 5 million"

Result: A workflow with ordered steps, SLA in hours, step type (sequential/parallel/single), and escalation role. Conditions by amount, category, and currency.

📊 Dashboard: Dashboard → Approvals tab → Workflows sub-tab → 'Designer' button → define steps, roles, SLAs, conditions → Save

2

Manage Roles & Permissions

Create roles with specific permissions. Buttons without permission are grayed out. Separation of duties is enforced automatically.

"Create a Treasurer role with only payment rights"

Result: A role with specific permissions. Buttons without permission are grayed out with a tooltip explaining the missing permission. Separation of duties enforced (treasurer cannot approve orders, buyer cannot confirm payments).

📊 Dashboard: Dashboard → Pilotage tab → Roles & RBAC sub-tab → roles table, 'My effective permissions' card, Create/Assign/Revoke buttons

3

Review Action Journal for Audit

Track every action on any entity with an immutable, chronological log — exportable for external auditors.

"Show the action journal for PO-2026-0042"

Result: A chronological, immutable log: creation, issuance, field modifications, partial receipt, payment confirmation — with user and timestamp. Exportable to CSV for external auditors.

📊 Dashboard: Dashboard → Pilotage tab → Action Journal button → filters by agent, entity type, user, free search → CSV export

Notifications & Dashboard Overview

Stay informed with real-time alerts and get an instant snapshot of all your P2P activity.

1

Check Notifications

The notification bell aggregates all critical events: budget blocking, SLA exceeded, receipt discrepancies, payment confirmations, and PO issuances.

"What are my unread notifications?"

Result: A list grouped by type: critical (budget blocking), high (SLA exceeded, escalation), medium (receipt discrepancy), success (payment confirmed), info (PO issued).

📊 Dashboard: Click the bell icon at top → notification list → click to navigate → 'Mark all as read'

2

View Your P2P Overview

Your home page — an instant snapshot of all your procure-to-pay activity in one place.

"Give me an overview of my P2P activity"

Result: Counters (active budgets, pending requisitions, issued POs, payments due), priority alerts (budget blocking, SLA exceeded, receipt discrepancy), approval queue, payments due this week.

📊 Dashboard: Dashboard → Overview tab — your home page with an instant snapshot of all P2P activity

Get the Most Out of the System

Create most records in-app via chat

The CSV files are templates for bulk import or export. For day-to-day operations, create budgets, requisitions, orders, receipts, and payments directly in the chat — the system handles the structure for you.

Link requisitions to budgets

Always specify the budget name when creating a requisition. This enables real-time budget consumption tracking and prevents overspending.

Use consistent supplier names

Use the exact same supplier name across requisitions, orders, receipts, and payments. The system links the full P2P chain by supplier name and PO number.

Use ISO dates

Always use YYYY-MM-DD format for dates. This avoids ambiguity between regional formats and ensures accurate matching and scheduling.

Run three-way matching before every payment

Always run three-way matching (PO, receipt, invoice) before scheduling a payment. This catches quantity, price, and total discrepancies automatically.

Export audit trails regularly

Export the full P2P trail at the end of each period. This keeps your audit documentation current and ready for internal or external reviews.

Ready to Get Started?

Launch the app and import your data, or request a personalized demo.