• Last edited on: 28 May 2019

Purchase Orders Export

Coupa's purchase order flat file integration object contains header columns, line columns, and line allocation columns.

Overview

The Purchase Order Export process from Coupa uses the Coupa API to query for all Purchase Orders that are issued and have not been exported. The frequency of the integration run is once every hour. The generated files will be placed into ./Outgoing/PurchaseOrders. Once the files are successfully placed into the sFTP folder the purchase orders will be marked as exported. 

Purchase Order Revisions can also be exported and will be placed into ./Outgoing/PurchaseOrders/. Export of these records is included as a Standard CSV Export.

Coupa generally recommends that customers send POs to suppliers from the Coupa system, rather than issuing POs to suppliers from their ERP system. PO exports from Coupa are therefore generally done for purposes of reporting and analytics.

Column Name Description Req Unique Type Allowable Values
type Indicates record type FALSE FALSE string Header
acknowledged-at Has PO been acknowledged by Supplier? FALSE FALSE datetime any
created-at Date record was created in Coupa. FALSE FALSE datetime any
id Coupa's internal ID FALSE FALSE int(11) any
status PO Status FALSE FALSE string(50) any
transmission-status Transmission Status FALSE FALSE string(50) any
updated-at Last Updated at Date FALSE FALSE datetime any
version PO Supplier Version Number - Increase each time a PO is changed and triggers a resend to the supplier. FALSE FALSE int(11) any
internal-revision Internal Revision Number - Increases each time a change is made to a PO whether that change is internal or causes the PO to be resent to the supplier. FALSE FALSE integer(11) any
exported Has the PO successfully been sent to target system? FALSE FALSE boolean any
created-by-email Email of User who created PO FALSE FALSE string(255) any
accounting-total Accounting total for the PO FALSE FALSE decimal(32,4) any
accounting-total-currency Accounting total currency FALSE FALSE string(6) any
created-by-employee-number Employee Number of User who created PO FALSE FALSE string(255) any
created-by-firstname First name of User who created PO FALSE FALSE string(40) any
created-by-id Coupa ID of User who created PO FALSE FALSE int(11) any
created-by-lastname Last name of User who created PO FALSE FALSE string(40) any
created-by-login Login name of User who created PO FALSE FALSE string(255) any
requisition-id Coupa ID of originating requisition FALSE FALSE int(11) any
requester-email Requesting account's email address FALSE FALSE string(255) any
requester-employee-number Requesting account's employee number FALSE FALSE string(255) any
requester-firstname Requesting account's First Name FALSE FALSE string(40) any
requester-id Requesting Account's ID FALSE FALSE integer(11) any
requester-lastname Requesting Account's Last Name FALSE FALSE string(40) any
requester-login Requesting Account's Login FALSE FALSE string(255) any
ship-to-attention Ship To Address Attention Line FALSE FALSE string(255) any
ship-to-address-city Ship To Address City FALSE FALSE string(255) any
ship-to-address-id Ship To Address Internal Coupa ID FALSE FALSE int(11) any
ship-to-address-name Ship To Address Name FALSE FALSE string(255) any
ship-to-address-postal-code Ship To Address Postal Code FALSE FALSE string(255) any
ship-to-address-state Ship To Address State/Province FALSE FALSE string(255) any
ship-to-address-street1 Ship To Address Street Address FALSE FALSE string(255) any
ship-to-address-street2 Ship To Address Street Address Line 2 FALSE FALSE string(255) any
ship-to-address-country Country Code FALSE FALSE string(6) any
ship-to-user-email Email of User Ship To User FALSE FALSE string(255) any
ship-to-user-employee-number Employee Number of Ship To User FALSE FALSE string(255) any
ship-to-user-firstname First name of Ship To User FALSE FALSE string(40) any
ship-to-user-id Coupa ID of Ship To User FALSE FALSE int(11) any
ship-to-user-lastname Last name of Ship To User FALSE FALSE string(40) any
ship-to-user-login Login name of Ship To User FALSE FALSE string(255) any
supplier-id Supplier Coupa internal ID number TRUE FALSE int(11) any
supplier-name Supplier Name FALSE FALSE string(100) any
supplier-number Supplier Number FALSE FALSE string(255) any
updated-by-email Email of User last updated by FALSE FALSE string(255) any
updated-by-employee-number Employee Number of User last updated by FALSE FALSE string(255) any
updated-by-firstname First name of user last updated by FALSE FALSE string(40) any
updated-by-id Coupa ID of User last updated by FALSE FALSE int(11) any
updated-by-lastname Last name of User last updated by FALSE FALSE string(40) any
updated-by-login Login name of User last updated by FALSE FALSE string(255) any
payment-terms-code Payment Terms FALSE FALSE string(255) any
payment-terms-days-for-discount-payment Number of days to pay to receive discount FALSE FALSE integer(11) any
payment-terms-days-for-net-payment Net Days for Payment FALSE FALSE integer(11) any
payment-terms-discount-rate Discount Rate for payment within Discount Terms FALSE FALSE float(24) any
Shipping-terms-code Shipping Terms Code FALSE FALSE string(255) any
attachment-text-concat Concatenation of Text Attachment Text (Header Level) FALSE FALSE any
custom-field-1 Integration Custom Field 1 FALSE FALSE string(255) any
custom-field-2 Integration Custom Field 2 FALSE FALSE string(255) any
custom-field-3 Integration Custom Field 3 FALSE FALSE string(255) any
custom-field-4 Integration Custom Field 4 FALSE FALSE string(255) any
custom-field-5 Integration Custom Field 5 FALSE FALSE string(255) any
custom-field-6 Integration Custom Field 6 FALSE FALSE string(255) any
custom-field-7 Integration Custom Field 7 FALSE FALSE string(255) any
custom-field-8 Integration Custom Field 8 FALSE FALSE string(255) any
custom-field-9 Integration Custom Field 9 FALSE FALSE string(255) any
custom-field-10 Integration Custom Field 10 FALSE FALSE string(255) any

Purchase order line columns

Column Name Description Req'd Unique Type Allowable Values
type Indicates record type FALSE FALSE string Line
accounting-total Accounting Total for Line FALSE FALSE decimal(32,4) any
accounting-total-currency Currency used for Accounting Total FALSE FALSE string(6) any
created-at Line Created At Date FALSE FALSE datetime any
description Line Item Description TRUE FALSE string(255) any
id Coupa Internal Line ID FALSE FALSE integer any
invoiced Amount Invoiced FALSE FALSE decimal(30,6) any
active-invoiced-amount Active Invoiced Amount which includes Pending Approval and Approved Invoices FALSE FALSE decimal(32,4) any
line-number Line Number FALSE TRUE string(255) any
need-by-date Line Need By Date FALSE FALSE datetime any
order-header-id PO Number / Coupa Internal ID FALSE FALSE integer any
price

Unit Price

Note

For languages that use spaces as a currency delimiter, the CSV export interprets the space as: “&nbsp

TRUE FALSE decimal(30,6) any
quantity Quantity Ordered FALSE FALSE decimal(30,6) any
received Quantity/Amount Received FALSE FALSE decimal(32,4) any
source-part-num Part Number - Determined by: For Catalog Items: Supplier Item Number For Catalog Item w/o Supplier Item Number: Item Number Non-Catalog Item: User Entered Item Number FALSE FALSE string(255) any
status Line Status FALSE FALSE string(50) any
sub-line-num <Reserved for future use> FALSE FALSE integer any
supp-aux-part-num Supplier Auxiliary Part Number (Punch Out) FALSE FALSE string(255) any
total Total Amount FALSE FALSE decimal(32,4) any
currency Currency used for PO FALSE FALSE string(6) any
type Line Type FALSE FALSE string(100) any
updated-at Date Line Last Updated FALSE FALSE datetime any
version Line Version/Revision # FALSE FALSE int(11) any
account-code Account Code (combined segments) FALSE FALSE string(1024) any
segment-1 Account Code Segment 1 FALSE FALSE string(100) any
segment-2 Account Code Segment 2 FALSE FALSE string(100) any
segment-3 Account Code Segment 3 FALSE FALSE string(100) any
segment-4 Account Code Segment 4 FALSE FALSE string(100) any
segment-5 Account Code Segment 5 FALSE FALSE string(100) any
segment-6 Account Code Segment 6 FALSE FALSE string(100) any
segment-7 Account Code Segment 7 FALSE FALSE string(100) any
segment-8 Account Code Segment 8 FALSE FALSE string(100) any
segment-9 Account Code Segment 9 FALSE FALSE string(100) any
segment-10 Account Code Segment 10 FALSE FALSE string(100) any
segment-11 Account Code Segment 11 FALSE FALSE string(100) any
segment-12 Account Code Segment 12 FALSE FALSE string(100) any
segment-13 Account Code Segment 13 FALSE FALSE string(100) any
segment-14 Account Code Segment 14 FALSE FALSE string(100) any
segment-15 Account Code Segment 15 FALSE FALSE string(100) any
segment-16 Account Code Segment 16 FALSE FALSE string(100) any
segment-17 Account Code Segment 17 FALSE FALSE string(100) any
segment-18 Account Code Segment 18 FALSE FALSE string(100) any
segment-19 Account Code Segment 19 FALSE FALSE string(100) any
segment-20 Account Code Segment 20 FALSE FALSE string(100) any
account-name Account Name FALSE FALSE string(1024) any
account-type Chart of Accounts FALSE FALSE string(50) any
contract-id Coupa Contract Internal ID FALSE FALSE integer any
contract-name Contract Name FALSE FALSE string(100) any
department Department Name FALSE FALSE string(255) any
created-by-email Email of User who created PO FALSE FALSE string(255) any
created-by-employee-number Employee Number of User who created PO FALSE FALSE string(255) any
created-by-firstname First name of User who created PO FALSE FALSE string(40) any
created-by-id Coupa ID of User who created PO FALSE FALSE int(11) any
created-by-lastname Last name of User who created PO FALSE FALSE string(40) any
created-by-login Login name of User who created PO FALSE FALSE string(255) any
supplier-id Supplier Coupa internal ID number FALSE FALSE integer any
supplier-name Supplier Name FALSE FALSE string(100) any
supplier-number Supplier Number FALSE FALSE string(255) any
uom Unit of Measure FALSE FALSE string(6) any
updated-by-email Email of User last updated by FALSE FALSE string(255) any
updated-by-employee-number Employee Number of User last updated by FALSE FALSE string(255) any
updated-by-firstname First name of User last updated by FALSE FALSE string(40) any
updated-by-id Coupa ID of User last updated by FALSE FALSE Int(11) any
updated-by-lastname Last name of User last updated by FALSE FALSE string(40) any
updated-by-login Login name of User last updated by FALSE FALSE string(255) any
commodity commodity FALSE FALSE string(255) any
requisition-line Requisition Line ID FALSE FALSE RequisitionLine any
custom-field-1 Integration Custom Field 1 FALSE FALSE string(255) any
custom-field-2 Integration Custom Field 2 FALSE FALSE string(255) any
custom-field-3 Integration Custom Field 3 FALSE FALSE string(255) any
custom-field-4 Integration Custom Field 4 FALSE FALSE string(255) any
custom-field-5 Integration Custom Field 5 FALSE FALSE string(255) any
custom-field-6 Integration Custom Field 6 FALSE FALSE string(255) any
custom-field-7 Integration Custom Field 7 FALSE FALSE string(255) any
custom-field-8 Integration Custom Field 8 FALSE FALSE string(255) any
custom-field-9 Integration Custom Field 9 FALSE FALSE string(255) any
custom-field-10 Integration Custom Field 10 FALSE FALSE string(255) any

Purchase order line allocation columns

Column Name Description Req Unique Type Allowable Values
type Indicates record type FALSE FALSE any
order-header-id PO Number / Coupa Internal ID FALSE FALSE integer(11) any
order-line-id Coupa Purchase Order Line ID FALSE FALSE integer(11) any
order-line-num Coupa Purchase Order Line Number FALSE FALSE string(255) any
account-allocation-id Unique allocation id (only used if split line accounting is in use for the given Line record) FALSE FALSE integer(11) any
account-allocation-sequence Unique allocation sequential counter (only used if split line accounting is in use for the given Line record) FALSE FALSE integer(11) any
account-allocation-amount Dollar amount for this allocation (only used if split line accounting is in use for the given Line record) FALSE FALSE decimal(32,4) any
account-allocation-percent Amount allocation percent (only used if split line accounting is in use for the given Line record) TRUE FALSE decimal(16,10) any
account-code Account code from Coupa (only used if split line accounting is in use for the given Line record) FALSE FALSE string(1024) any
account-active Account active flag FALSE FALSE integer(1) any
segment-1 Account Segment-1 FALSE FALSE string(100) any
segment-2 Account Segment-2 FALSE FALSE string(100) any
segment-3 Account Segment-3 FALSE FALSE string(100) any
segment-4 Account Segment-4 FALSE FALSE string(100) any
segment-5 Account Segment-5 FALSE FALSE string(100) any
segment-6 Account Segment-6 FALSE FALSE string(100) any
segment-7 Account Segment-7 FALSE FALSE string(100) any
segment-8 Account Ssegment-8 FALSE FALSE string(100) any
segment-9 Account Segment-9 FALSE FALSE string(100) any
segment-10 Account Segment-10 FALSE FALSE string(100) any
segment-11 Account Segment-11 FALSE FALSE string(100) any
segment-12 Account Segment-12 FALSE FALSE string(100) any
segment-13 Account Segment-13 FALSE FALSE string(100) any
segment-14 Account Segment-14 FALSE FALSE string(100) any
segment-15 Account Ssegment-15 FALSE FALSE string(100) any
segment-16 Account Segment-16 FALSE FALSE string(100) any
segment-17 Account Segment-17 FALSE FALSE string(100) any
segment-18 Account Segment-18 FALSE FALSE string(100) any
segment-19 Account Segment-19 FALSE FALSE string(100) any
segment-20 Account Segment-20 FALSE FALSE string(100) any
account-name Account name from Coupa FALSE FALSE string(1024) any
account-type Chart of Accounts Name from Coupa FALSE FALSE string(50) any
custom-field-1 Integration Custom Field 1 FALSE FALSE string(255) any
custom-field-2 Integration Custom Field 2 FALSE FALSE string(255) any
custom-field-3 Integration Custom Field 3 FALSE FALSE string(255) any
custom-field-4 Integration Custom Field 4 FALSE FALSE string(255) any
custom-field-5 Integration Custom Field 5 FALSE FALSE string(255) any
custom-field-6 Integration Custom Field 6 FALSE FALSE string(255) any
custom-field-7 Integration Custom Field 7 FALSE FALSE string(255) any
custom-field-8 Integration Custom Field 8 FALSE FALSE string(255) any
custom-field-9 Integration Custom Field 9 FALSE FALSE string(255) any
custom-field-10 Integration Custom Field 10 FALSE FALSE string(255) any

Related Items


Budget Line Adjustment Import

01 February 2019

The Budget Line Adjustment integration loader uses only a single set of header columns.

Enterprise Import

03 February 2019

The Enterprises integration loader uses only a single set of header columns.

Exchange Rate Import

03 February 2019

The exchange rates integration loader uses only a single set of header columns.

Expense Category Import

03 February 2019

The Expense Category loader uses only a single set of header columns.