Allows you to create one or more purchase orders
PUT {{baseUrl}}/PurchaseOrders?summarizeErrors=false
Request Params
Key | Datatype | Required | Description |
---|---|---|---|
summarizeErrors | boolean | If false return 200 OK and mix of successfully created objects and any with validation errors |
Request Body
{"PurchaseOrders"=>[{"Contact"=>{"ContactID"=>"<uuid>", "ContactNumber"=>"<string>", "AccountNumber"=>"<string>", "ContactStatus"=>"<string>", "Name"=>"<string>", "FirstName"=>"<string>", "LastName"=>"<string>", "EmailAddress"=>"<string>", "SkypeUserName"=>"<string>", "ContactPersons"=>[{"FirstName"=>"<string>", "LastName"=>"<string>", "EmailAddress"=>"<string>", "IncludeInEmails"=>"<boolean>"}, {"FirstName"=>"<string>", "LastName"=>"<string>", "EmailAddress"=>"<string>", "IncludeInEmails"=>"<boolean>"}], "BankAccountDetails"=>"<string>", "TaxNumber"=>"<string>", "AccountsReceivableTaxType"=>"<string>", "AccountsPayableTaxType"=>"<string>", "Addresses"=>[{"AddressType"=>"<string>", "AddressLine1"=>"<string>", "AddressLine2"=>"<string>", "AddressLine3"=>"<string>", "AddressLine4"=>"<string>", "City"=>"<string>", "Region"=>"<string>", "PostalCode"=>"<string>", "Country"=>"<string>", "AttentionTo"=>"<string>"}, {"AddressType"=>"<string>", "AddressLine1"=>"<string>", "AddressLine2"=>"<string>", "AddressLine3"=>"<string>", "AddressLine4"=>"<string>", "City"=>"<string>", "Region"=>"<string>", "PostalCode"=>"<string>", "Country"=>"<string>", "AttentionTo"=>"<string>"}], "Phones"=>[{"PhoneType"=>"<string>", "PhoneNumber"=>"<string>", "PhoneAreaCode"=>"<string>", "PhoneCountryCode"=>"<string>"}, {"PhoneType"=>"<string>", "PhoneNumber"=>"<string>", "PhoneAreaCode"=>"<string>", "PhoneCountryCode"=>"<string>"}], "IsSupplier"=>"<boolean>", "IsCustomer"=>"<boolean>", "DefaultCurrency"=>"<string>", "XeroNetworkKey"=>"<string>", "SalesDefaultAccountCode"=>"<string>", "PurchasesDefaultAccountCode"=>"<string>", "SalesTrackingCategories"=>[{"TrackingCategoryName"=>"<string>", "TrackingOptionName"=>"<string>"}, {"TrackingCategoryName"=>"<string>", "TrackingOptionName"=>"<string>"}], "PurchasesTrackingCategories"=>[{"TrackingCategoryName"=>"<string>", "TrackingOptionName"=>"<string>"}, {"TrackingCategoryName"=>"<string>", "TrackingOptionName"=>"<string>"}], "TrackingCategoryName"=>"<string>", "TrackingCategoryOption"=>"<string>", "PaymentTerms"=>{"Bills"=>{"Day"=>{"value"=>"<Error: Too many levels of nesting to fake this schema>"}, "Type"=>{"value"=>"<Error: Too many levels of nesting to fake this schema>"}}, "Sales"=>{"Day"=>{"value"=>"<Error: Too many levels of nesting to fake this schema>"}, "Type"=>{"value"=>"<Error: Too many levels of nesting to fake this schema>"}}}, "ContactGroups"=>[{"Name"=>"<string>", "Status"=>"<string>", "ContactGroupID"=>"<uuid>", "Contacts"=>[{"value"=>"<Error: Too many levels of nesting to fake this schema>"}, {"value"=>"<Error: Too many levels of nesting to fake this schema>"}]}, {"Name"=>"<string>", "Status"=>"<string>", "ContactGroupID"=>"<uuid>", "Contacts"=>[{"value"=>"<Error: Too many levels of nesting to fake this schema>"}, {"value"=>"<Error: Too many levels of nesting to fake this schema>"}]}], "BrandingTheme"=>{"BrandingThemeID"=>"<uuid>", "Name"=>"<string>", "LogoUrl"=>"<string>", "Type"=>"<string>", "SortOrder"=>"<integer>"}, "BatchPayments"=>{"BankAccountNumber"=>"<string>", "BankAccountName"=>"<string>", "Details"=>"<string>", "Code"=>"<string>", "Reference"=>"<string>"}, "Balances"=>{"AccountsReceivable"=>{"Outstanding"=>{"value"=>"<Error: Too many levels of nesting to fake this schema>"}, "Overdue"=>{"value"=>"<Error: Too many levels of nesting to fake this schema>"}}, "AccountsPayable"=>{"Outstanding"=>{"value"=>"<Error: Too many levels of nesting to fake this schema>"}, "Overdue"=>{"value"=>"<Error: Too many levels of nesting to fake this schema>"}}}, "Attachments"=>[{"AttachmentID"=>"<uuid>", "FileName"=>"<string>", "Url"=>"<string>", "MimeType"=>"<string>", "ContentLength"=>"<integer>", "IncludeOnline"=>"<boolean>"}, {"AttachmentID"=>"<uuid>", "FileName"=>"<string>", "Url"=>"<string>", "MimeType"=>"<string>", "ContentLength"=>"<integer>", "IncludeOnline"=>"<boolean>"}], "HasAttachments"=>"false", "ValidationErrors"=>[{"Message"=>"<string>"}, {"Message"=>"<string>"}], "HasValidationErrors"=>"false", "StatusAttributeString"=>"<string>"}, "LineItems"=>[{"LineItemID"=>"<uuid>", "Description"=>"<string>", "Quantity"=>"<double>", "UnitAmount"=>"<double>", "ItemCode"=>"<string>", "AccountCode"=>"<string>", "TaxType"=>"<string>", "TaxAmount"=>"<double>", "LineAmount"=>"<double>", "Tracking"=>[{"TrackingCategoryID"=>{"value"=>"<Error: Too many levels of nesting to fake this schema>"}, "TrackingOptionID"=>{"value"=>"<Error: Too many levels of nesting to fake this schema>"}, "Name"=>{"value"=>"<Error: Too many levels of nesting to fake this schema>"}, "Option"=>{"value"=>"<Error: Too many levels of nesting to fake this schema>"}}, {"TrackingCategoryID"=>{"value"=>"<Error: Too many levels of nesting to fake this schema>"}, "TrackingOptionID"=>{"value"=>"<Error: Too many levels of nesting to fake this schema>"}, "Name"=>{"value"=>"<Error: Too many levels of nesting to fake this schema>"}, "Option"=>{"value"=>"<Error: Too many levels of nesting to fake this schema>"}}], "DiscountRate"=>"<double>", "DiscountAmount"=>"<double>", "RepeatingInvoiceID"=>"<uuid>"}, {"LineItemID"=>"<uuid>", "Description"=>"<string>", "Quantity"=>"<double>", "UnitAmount"=>"<double>", "ItemCode"=>"<string>", "AccountCode"=>"<string>", "TaxType"=>"<string>", "TaxAmount"=>"<double>", "LineAmount"=>"<double>", "Tracking"=>[{"TrackingCategoryID"=>{"value"=>"<Error: Too many levels of nesting to fake this schema>"}, "TrackingOptionID"=>{"value"=>"<Error: Too many levels of nesting to fake this schema>"}, "Name"=>{"value"=>"<Error: Too many levels of nesting to fake this schema>"}, "Option"=>{"value"=>"<Error: Too many levels of nesting to fake this schema>"}}, {"TrackingCategoryID"=>{"value"=>"<Error: Too many levels of nesting to fake this schema>"}, "TrackingOptionID"=>{"value"=>"<Error: Too many levels of nesting to fake this schema>"}, "Name"=>{"value"=>"<Error: Too many levels of nesting to fake this schema>"}, "Option"=>{"value"=>"<Error: Too many levels of nesting to fake this schema>"}}], "DiscountRate"=>"<double>", "DiscountAmount"=>"<double>", "RepeatingInvoiceID"=>"<uuid>"}], "Date"=>"<string>", "DeliveryDate"=>"<string>", "LineAmountTypes"=>"<string>", "PurchaseOrderNumber"=>"<string>", "Reference"=>"<string>", "BrandingThemeID"=>"<uuid>", "CurrencyCode"=>"<string>", "Status"=>"<string>", "SentToContact"=>"<boolean>", "DeliveryAddress"=>"<string>", "AttentionTo"=>"<string>", "Telephone"=>"<string>", "DeliveryInstructions"=>"<string>", "ExpectedArrivalDate"=>"<string>", "PurchaseOrderID"=>"<uuid>", "CurrencyRate"=>"<double>", "StatusAttributeString"=>"<string>", "ValidationErrors"=>[{"Message"=>"<string>"}, {"Message"=>"<string>"}], "Warnings"=>[{"Message"=>"<string>"}, {"Message"=>"<string>"}], "Attachments"=>[{"AttachmentID"=>"<uuid>", "FileName"=>"<string>", "Url"=>"<string>", "MimeType"=>"<string>", "ContentLength"=>"<integer>", "IncludeOnline"=>"<boolean>"}, {"AttachmentID"=>"<uuid>", "FileName"=>"<string>", "Url"=>"<string>", "MimeType"=>"<string>", "ContentLength"=>"<integer>", "IncludeOnline"=>"<boolean>"}]}, {"Contact"=>{"ContactID"=>"<uuid>", "ContactNumber"=>"<string>", "AccountNumber"=>"<string>", "ContactStatus"=>"<string>", "Name"=>"<string>", "FirstName"=>"<string>", "LastName"=>"<string>", "EmailAddress"=>"<string>", "SkypeUserName"=>"<string>", "ContactPersons"=>[{"FirstName"=>"<string>", "LastName"=>"<string>", "EmailAddress"=>"<string>", "IncludeInEmails"=>"<boolean>"}, {"FirstName"=>"<string>", "LastName"=>"<string>", "EmailAddress"=>"<string>", "IncludeInEmails"=>"<boolean>"}], "BankAccountDetails"=>"<string>", "TaxNumber"=>"<string>", "AccountsReceivableTaxType"=>"<string>", "AccountsPayableTaxType"=>"<string>", "Addresses"=>[{"AddressType"=>"<string>", "AddressLine1"=>"<string>", "AddressLine2"=>"<string>", "AddressLine3"=>"<string>", "AddressLine4"=>"<string>", "City"=>"<string>", "Region"=>"<string>", "PostalCode"=>"<string>", "Country"=>"<string>", "AttentionTo"=>"<string>"}, {"AddressType"=>"<string>", "AddressLine1"=>"<string>", "AddressLine2"=>"<string>", "AddressLine3"=>"<string>", "AddressLine4"=>"<string>", "City"=>"<string>", "Region"=>"<string>", "PostalCode"=>"<string>", "Country"=>"<string>", "AttentionTo"=>"<string>"}], "Phones"=>[{"PhoneType"=>"<string>", "PhoneNumber"=>"<string>", "PhoneAreaCode"=>"<string>", "PhoneCountryCode"=>"<string>"}, {"PhoneType"=>"<string>", "PhoneNumber"=>"<string>", "PhoneAreaCode"=>"<string>", "PhoneCountryCode"=>"<string>"}], "IsSupplier"=>"<boolean>", "IsCustomer"=>"<boolean>", "DefaultCurrency"=>"<string>", "XeroNetworkKey"=>"<string>", "SalesDefaultAccountCode"=>"<string>", "PurchasesDefaultAccountCode"=>"<string>", "SalesTrackingCategories"=>[{"TrackingCategoryName"=>"<string>", "TrackingOptionName"=>"<string>"}, {"TrackingCategoryName"=>"<string>", "TrackingOptionName"=>"<string>"}], "PurchasesTrackingCategories"=>[{"TrackingCategoryName"=>"<string>", "TrackingOptionName"=>"<string>"}, {"TrackingCategoryName"=>"<string>", "TrackingOptionName"=>"<string>"}], "TrackingCategoryName"=>"<string>", "TrackingCategoryOption"=>"<string>", "PaymentTerms"=>{"Bills"=>{"Day"=>{"value"=>"<Error: Too many levels of nesting to fake this schema>"}, "Type"=>{"value"=>"<Error: Too many levels of nesting to fake this schema>"}}, "Sales"=>{"Day"=>{"value"=>"<Error: Too many levels of nesting to fake this schema>"}, "Type"=>{"value"=>"<Error: Too many levels of nesting to fake this schema>"}}}, "ContactGroups"=>[{"Name"=>"<string>", "Status"=>"<string>", "ContactGroupID"=>"<uuid>", "Contacts"=>[{"value"=>"<Error: Too many levels of nesting to fake this schema>"}, {"value"=>"<Error: Too many levels of nesting to fake this schema>"}]}, {"Name"=>"<string>", "Status"=>"<string>", "ContactGroupID"=>"<uuid>", "Contacts"=>[{"value"=>"<Error: Too many levels of nesting to fake this schema>"}, {"value"=>"<Error: Too many levels of nesting to fake this schema>"}]}], "BrandingTheme"=>{"BrandingThemeID"=>"<uuid>", "Name"=>"<string>", "LogoUrl"=>"<string>", "Type"=>"<string>", "SortOrder"=>"<integer>"}, "BatchPayments"=>{"BankAccountNumber"=>"<string>", "BankAccountName"=>"<string>", "Details"=>"<string>", "Code"=>"<string>", "Reference"=>"<string>"}, "Balances"=>{"AccountsReceivable"=>{"Outstanding"=>{"value"=>"<Error: Too many levels of nesting to fake this schema>"}, "Overdue"=>{"value"=>"<Error: Too many levels of nesting to fake this schema>"}}, "AccountsPayable"=>{"Outstanding"=>{"value"=>"<Error: Too many levels of nesting to fake this schema>"}, "Overdue"=>{"value"=>"<Error: Too many levels of nesting to fake this schema>"}}}, "Attachments"=>[{"AttachmentID"=>"<uuid>", "FileName"=>"<string>", "Url"=>"<string>", "MimeType"=>"<string>", "ContentLength"=>"<integer>", "IncludeOnline"=>"<boolean>"}, {"AttachmentID"=>"<uuid>", "FileName"=>"<string>", "Url"=>"<string>", "MimeType"=>"<string>", "ContentLength"=>"<integer>", "IncludeOnline"=>"<boolean>"}], "HasAttachments"=>"false", "ValidationErrors"=>[{"Message"=>"<string>"}, {"Message"=>"<string>"}], "HasValidationErrors"=>"false", "StatusAttributeString"=>"<string>"}, "LineItems"=>[{"LineItemID"=>"<uuid>", "Description"=>"<string>", "Quantity"=>"<double>", "UnitAmount"=>"<double>", "ItemCode"=>"<string>", "AccountCode"=>"<string>", "TaxType"=>"<string>", "TaxAmount"=>"<double>", "LineAmount"=>"<double>", "Tracking"=>[{"TrackingCategoryID"=>{"value"=>"<Error: Too many levels of nesting to fake this schema>"}, "TrackingOptionID"=>{"value"=>"<Error: Too many levels of nesting to fake this schema>"}, "Name"=>{"value"=>"<Error: Too many levels of nesting to fake this schema>"}, "Option"=>{"value"=>"<Error: Too many levels of nesting to fake this schema>"}}, {"TrackingCategoryID"=>{"value"=>"<Error: Too many levels of nesting to fake this schema>"}, "TrackingOptionID"=>{"value"=>"<Error: Too many levels of nesting to fake this schema>"}, "Name"=>{"value"=>"<Error: Too many levels of nesting to fake this schema>"}, "Option"=>{"value"=>"<Error: Too many levels of nesting to fake this schema>"}}], "DiscountRate"=>"<double>", "DiscountAmount"=>"<double>", "RepeatingInvoiceID"=>"<uuid>"}, {"LineItemID"=>"<uuid>", "Description"=>"<string>", "Quantity"=>"<double>", "UnitAmount"=>"<double>", "ItemCode"=>"<string>", "AccountCode"=>"<string>", "TaxType"=>"<string>", "TaxAmount"=>"<double>", "LineAmount"=>"<double>", "Tracking"=>[{"TrackingCategoryID"=>{"value"=>"<Error: Too many levels of nesting to fake this schema>"}, "TrackingOptionID"=>{"value"=>"<Error: Too many levels of nesting to fake this schema>"}, "Name"=>{"value"=>"<Error: Too many levels of nesting to fake this schema>"}, "Option"=>{"value"=>"<Error: Too many levels of nesting to fake this schema>"}}, {"TrackingCategoryID"=>{"value"=>"<Error: Too many levels of nesting to fake this schema>"}, "TrackingOptionID"=>{"value"=>"<Error: Too many levels of nesting to fake this schema>"}, "Name"=>{"value"=>"<Error: Too many levels of nesting to fake this schema>"}, "Option"=>{"value"=>"<Error: Too many levels of nesting to fake this schema>"}}], "DiscountRate"=>"<double>", "DiscountAmount"=>"<double>", "RepeatingInvoiceID"=>"<uuid>"}], "Date"=>"<string>", "DeliveryDate"=>"<string>", "LineAmountTypes"=>"<string>", "PurchaseOrderNumber"=>"<string>", "Reference"=>"<string>", "BrandingThemeID"=>"<uuid>", "CurrencyCode"=>"<string>", "Status"=>"<string>", "SentToContact"=>"<boolean>", "DeliveryAddress"=>"<string>", "AttentionTo"=>"<string>", "Telephone"=>"<string>", "DeliveryInstructions"=>"<string>", "ExpectedArrivalDate"=>"<string>", "PurchaseOrderID"=>"<uuid>", "CurrencyRate"=>"<double>", "StatusAttributeString"=>"<string>", "ValidationErrors"=>[{"Message"=>"<string>"}, {"Message"=>"<string>"}], "Warnings"=>[{"Message"=>"<string>"}, {"Message"=>"<string>"}], "Attachments"=>[{"AttachmentID"=>"<uuid>", "FileName"=>"<string>", "Url"=>"<string>", "MimeType"=>"<string>", "ContentLength"=>"<integer>", "IncludeOnline"=>"<boolean>"}, {"AttachmentID"=>"<uuid>", "FileName"=>"<string>", "Url"=>"<string>", "MimeType"=>"<string>", "ContentLength"=>"<integer>", "IncludeOnline"=>"<boolean>"}]}]}
HEADERS
Key | Datatype | Required | Description |
---|---|---|---|
xero-tenant-id | string | (Required) Xero identifier for Tenant | |
Content-Type | string |
RESPONSES
status: OK
{"Id":"aa2f9d23-fd76-4bee-9600-30c0f0f34036","Status":"OK","ProviderName":"Provider Name Example","DateTimeUTC":"/Date(1552522946173)/","PurchaseOrders":[{"PurchaseOrderID":"56204648-8fbe-46f8-b09c-2125f7939533","PurchaseOrderNumber":"PO-0004","DateString":"2019-03-13T00:00:00","Date":"/Date(1552435200000+0000)/","HasErrors":false,"IsDiscounted":false,"TotalDiscount":0.0,"SentToContact":false,"Type":"PURCHASEORDER","CurrencyRate":1.0,"CurrencyCode":"NZD","Contact":{"ContactID":"430fa14a-f945-44d3-9f97-5df5e28441b8","ContactStatus":"ACTIVE","Name":"Liam Gallagher","FirstName":"Liam","LastName":"Gallagher","EmailAddress":"liam@rockstar.com","BankAccountDetails":"","Addresses":[null,{"AddressType":"POBOX","City":"Anytown","Region":"NY","PostalCode":"10101","Country":"USA","AttentionTo":""}],"Phones":[{"PhoneType":"DEFAULT","PhoneNumber":"222-2222","PhoneAreaCode":"212","PhoneCountryCode":""},null,{"PhoneType":"FAX","PhoneNumber":"333-2233","PhoneAreaCode":"212","PhoneCountryCode":""},{"PhoneType":"MOBILE","PhoneNumber":"444-3433","PhoneAreaCode":"212","PhoneCountryCode":""}],"UpdatedDateUTC":"/Date(1551747281053+0000)/","ContactGroups":[{"ContactGroupID":"17b44ed7-4389-4162-91cb-3dd5766e4e22","Name":"Oasis","Status":"ACTIVE","Contacts":[],"HasValidationErrors":false}],"IsSupplier":true,"IsCustomer":true,"SalesTrackingCategories":[],"PurchasesTrackingCategories":[],"ContactPersons":[],"HasValidationErrors":false},"Status":"DRAFT","LineAmountTypes":"Exclusive","LineItems":[{"Description":"Foobar","UnitAmount":20.0,"TaxType":"INPUT2","TaxAmount":3.0,"LineAmount":20.0,"AccountCode":"710","Tracking":[],"Quantity":1.0,"LineItemID":"792b7e40-b9f2-47f0-8624-b09f4b0166dd"}],"SubTotal":20.0,"TotalTax":3.0,"Total":23.0,"UpdatedDateUTC":"/Date(1552522946077+0000)/","StatusAttributeString":"ERROR","Warnings":[{"Message":"Only AUTHORISED and BILLED purchase orders may have SentToContact updated."}],"ValidationErrors":[{"Message":"Order number must be unique"}]}]}