All Downloads are FREE. Search and download functionalities are using the official Maven repository.

eedm.accounts-payable-invoices.v11.0.accounts-payable-invoices.json Maven / Gradle / Ivy

{
  "title" : "Accounts Payable Invoices",
  "description" : "A request for payment for goods sold, services provided or expenses incurred, containing individual prices, additional charges, payment terms and account information.",
  "type" : "object",
  "properties" : {
    "metadata" : {
      "$ref" : "resource:/eedm/metadata.json"
    },
    "id" : {
      "title" : "ID",
      "description" : "The global identifier of the accounts payable invoice.",
      "type" : "string",
      "format" : "guid",
      "pattern" : "^[a-f0-9]{8}(?:-[a-f0-9]{4}){3}-[a-f0-9]{12}$"
    },
    "vendor" : {
      "title" : "Vendor",
      "description" : "The vendor associated with the invoice.",
      "type" : "object",
      "properties" : {
        "existingVendor" : {
          "title" : "Existing Vendor",
          "description" : "The details associated with an existing vendor.",
          "oneOf" : [ {
            "type" : "object",
            "properties" : {
              "vendor" : {
                "title" : "Vendor",
                "description" : "The details associated with an existing vendor.",
                "type" : "object",
                "properties" : {
                  "id" : {
                    "title" : "ID",
                    "description" : "The global identifier for the Vendor.",
                    "type" : "string",
                    "format" : "guid",
                    "pattern" : "^[a-f0-9]{8}(?:-[a-f0-9]{4}){3}-[a-f0-9]{12}$"
                  }
                },
                "links" : [ {
                  "rel" : "self",
                  "href" : "/vendors/{id}",
                  "targetSchema" : {
                    "$ref" : "vendors.json#"
                  }
                } ],
                "additionalProperties" : false,
                "required" : [ "id" ]
              },
              "alternativeVendorAddress" : {
                "title" : "Alternative Vendor Address",
                "description" : "The details of an alternative stored address for an existing vendor when the default address is not used.",
                "oneOf" : [ {
                  "type" : "object",
                  "properties" : {
                    "id" : {
                      "title" : "ID",
                      "description" : "The global identifier for the Alternative Vendor Address.",
                      "type" : "string",
                      "format" : "guid",
                      "pattern" : "^[a-f0-9]{8}(?:-[a-f0-9]{4}){3}-[a-f0-9]{12}$"
                    }
                  },
                  "links" : [ {
                    "rel" : "self",
                    "href" : "/addresses/{id}",
                    "targetSchema" : {
                      "$ref" : "addresses.json#"
                    }
                  } ],
                  "additionalProperties" : false,
                  "required" : [ "id" ]
                }, {
                  "type" : "object",
                  "maxProperties" : 0
                } ]
              }
            },
            "additionalProperties" : false,
            "required" : [ "vendor" ]
          }, {
            "type" : "object",
            "maxProperties" : 0
          } ]
        },
        "manualVendorDetails" : {
          "title" : "Manual Vendor Details",
          "description" : "The details associated with an undefined vendor or an override to an existing vendor's information.",
          "type" : "object",
          "properties" : {
            "name" : {
              "title" : "Name",
              "description" : "The name of the vendor.",
              "type" : "string"
            },
            "type" : {
              "title" : "Type",
              "description" : "An indication of whether the vendor is a person or an organization.",
              "oneOf" : [ {
                "type" : "string",
                "enum" : [ "person", "organization" ]
              }, {
                "type" : "string",
                "maxLength" : 0
              } ]
            },
            "addressLines" : {
              "title" : "Address Lines",
              "description" : "The address lines of the vendor's address, such as a street address, post office box number, or city, region, and postal code.",
              "type" : "array",
              "items" : {
                "type" : "string"
              }
            },
            "place" : {
              "title" : "Place",
              "description" : "A country specific postal region. Postal regions are expressed as a hierarchy of country, region, and sub-region, and as a locality with postal automation codes.",
              "oneOf" : [ {
                "type" : "object",
                "format" : "place",
                "properties" : {
                  "country" : {
                    "title" : "Country",
                    "description" : "The country specific postal region definition.",
                    "oneOf" : [ {
                      "title" : "Australia",
                      "description" : "The postal region definition for Australia.",
                      "type" : "object",
                      "properties" : {
                        "code" : {
                          "title" : "Code",
                          "description" : "The ISO 3166-1 alpha-3 country code for Australia.",
                          "enum" : [ "AUS" ],
                          "type" : "string"
                        },
                        "title" : {
                          "title" : "Country",
                          "description" : "The name of the country, as used in everyday speech.",
                          "type" : "string"
                        },
                        "postalTitle" : {
                          "title" : "Postal Country",
                          "description" : "The name of the country when mail is being addressed from an international sender.",
                          "oneOf" : [ {
                            "type" : "string",
                            "enum" : [ "AUSTRALIA" ]
                          }, {
                            "type" : "string",
                            "maxLength" : 0
                          } ]
                        },
                        "region" : {
                          "title" : "Region",
                          "description" : "A region within the country",
                          "oneOf" : [ {
                            "type" : "object",
                            "properties" : {
                              "code" : {
                                "title" : "Code",
                                "description" : "The ISO 3166-2 code used to identify the region within the country.",
                                "enum" : [ "AU-NSW", "AU-ACT", "AU-VIC", "AU-QLD", "AU-SA", "AU-WA", "AU-TAS", "AU-NT" ],
                                "type" : "string"
                              },
                              "title" : {
                                "title" : "Title",
                                "description" : "The full name of the region",
                                "type" : "string"
                              }
                            },
                            "additionalProperties" : false,
                            "required" : [ "code" ]
                          }, {
                            "type" : "object",
                            "maxProperties" : 0
                          } ]
                        },
                        "subRegion" : {
                          "title" : "Subregion",
                          "description" : "A subregion within the country and region",
                          "type" : "object",
                          "properties" : {
                            "code" : {
                              "title" : "Code",
                              "description" : "A code that may be used to identify the sub-region. This should be the ISO 3166-2 code, if one exists, otherwise, a user defined code may be optionally specified.",
                              "type" : "string"
                            },
                            "title" : {
                              "title" : "Title",
                              "description" : "The name of a subregion",
                              "type" : "string"
                            }
                          },
                          "additionalProperties" : false
                        },
                        "locality" : {
                          "title" : "city",
                          "description" : "The name of the city or town.",
                          "type" : "string"
                        },
                        "postalCode" : {
                          "title" : "Postal Code",
                          "description" : "The mailing postal code.",
                          "oneOf" : [ {
                            "type" : "string",
                            "pattern" : "^(0[289][0-9]{2})|([1345689][0-9]{3})|(2[0-8][0-9]{2})|(290[0-9])|(291[0-4])|(7[0-4][0-9]{2})|(7[8-9][0-9]{2})$"
                          }, {
                            "type" : "string",
                            "maxLength" : 0
                          } ]
                        }
                      },
                      "additionalProperties" : false,
                      "required" : [ "code" ]
                    }, {
                      "title" : "Brazil",
                      "description" : "The postal region definition for Brazil.",
                      "type" : "object",
                      "properties" : {
                        "code" : {
                          "title" : "Code",
                          "description" : "The ISO 3166-1 alpha-3 country code for Brazil.",
                          "enum" : [ "BRA" ],
                          "type" : "string"
                        },
                        "title" : {
                          "title" : "Country",
                          "description" : "The name of the country, as used in everyday speech.",
                          "type" : "string"
                        },
                        "postalTitle" : {
                          "title" : "Postal Country",
                          "description" : "The name of the country when mail is being addressed from an international sender.",
                          "oneOf" : [ {
                            "type" : "string",
                            "enum" : [ "BRAZIL" ]
                          }, {
                            "type" : "string",
                            "maxLength" : 0
                          } ]
                        },
                        "region" : {
                          "title" : "Region",
                          "description" : "A region within the country",
                          "oneOf" : [ {
                            "type" : "object",
                            "properties" : {
                              "code" : {
                                "title" : "Code",
                                "description" : "The ISO 3166-2 code used to identify the region within the country.",
                                "enum" : [ "BR-AC", "BR-AL", "BR-AM", "BR-AP", "BR-BA", "BR-CE", "BR-DF", "BR-ES", "BR-GO", "BR-MA", "BR-MG", "BR-MS", "BR-MT", "BR-PA", "BR-PB", "BR-PE", "BR-PI", "BR-PR", "BR-RJ", "BR-RN", "BR-RO", "BR-RR", "BR-RS", "BR-SC", "BR-SE", "BR-SP", "BR-TO" ],
                                "type" : "string"
                              },
                              "title" : {
                                "title" : "Title",
                                "description" : "The full name of the region",
                                "type" : "string"
                              }
                            },
                            "additionalProperties" : false,
                            "required" : [ "code" ]
                          }, {
                            "type" : "object",
                            "maxProperties" : 0
                          } ]
                        },
                        "subRegion" : {
                          "title" : "Subregion",
                          "description" : "A subregion within the country and region",
                          "type" : "object",
                          "properties" : {
                            "code" : {
                              "title" : "Code",
                              "description" : "A code that may be used to identify the sub-region. This should be the ISO 3166-2 code, if one exists, otherwise, a user defined code may be optionally specified.",
                              "type" : "string"
                            },
                            "title" : {
                              "title" : "Title",
                              "description" : "The name of a subregion",
                              "type" : "string"
                            }
                          },
                          "additionalProperties" : false
                        },
                        "locality" : {
                          "title" : "city",
                          "description" : "The name of the city or town.",
                          "type" : "string"
                        },
                        "postalCode" : {
                          "title" : "Postal Code",
                          "description" : "The mailing postal code.",
                          "oneOf" : [ {
                            "type" : "string",
                            "pattern" : "^\\d{5}\\-\\d{3}$"
                          }, {
                            "type" : "string",
                            "maxLength" : 0
                          } ]
                        }
                      },
                      "additionalProperties" : false,
                      "required" : [ "code" ]
                    }, {
                      "title" : "Canada",
                      "description" : "The postal region definition for Canada.",
                      "type" : "object",
                      "properties" : {
                        "code" : {
                          "title" : "Code",
                          "description" : "The ISO 3166-1 alpha-3 country code for Canada.",
                          "enum" : [ "CAN" ],
                          "type" : "string"
                        },
                        "title" : {
                          "title" : "Country",
                          "description" : "The name of the country, as used in everyday speech.",
                          "type" : "string"
                        },
                        "postalTitle" : {
                          "title" : "Postal Country",
                          "description" : "The name of the country when mail is being addressed from an international sender.",
                          "oneOf" : [ {
                            "type" : "string",
                            "enum" : [ "CANADA" ]
                          }, {
                            "type" : "string",
                            "maxLength" : 0
                          } ]
                        },
                        "region" : {
                          "title" : "Region",
                          "description" : "A region within the country",
                          "oneOf" : [ {
                            "type" : "object",
                            "properties" : {
                              "code" : {
                                "title" : "Code",
                                "description" : "The ISO 3166-2 code used to identify the region within the country.",
                                "enum" : [ "CA-AB", "CA-BC", "CA-MB", "CA-NB", "CA-NL", "CA-NS", "CA-NT", "CA-NU", "CA-ON", "CA-PE", "CA-QC", "CA-SK", "CA-YT" ],
                                "type" : "string"
                              },
                              "title" : {
                                "title" : "Title",
                                "description" : "The full name of the region",
                                "type" : "string"
                              }
                            },
                            "additionalProperties" : false,
                            "required" : [ "code" ]
                          }, {
                            "type" : "object",
                            "maxProperties" : 0
                          } ]
                        },
                        "subRegion" : {
                          "title" : "Subregion",
                          "description" : "A subregion within the country and region",
                          "type" : "object",
                          "properties" : {
                            "code" : {
                              "title" : "Code",
                              "description" : "A code that may be used to identify the sub-region. This should be the ISO 3166-2 code, if one exists, otherwise, a user defined code may be optionally specified.",
                              "type" : "string"
                            },
                            "title" : {
                              "title" : "Title",
                              "description" : "The name of a subregion",
                              "type" : "string"
                            }
                          },
                          "additionalProperties" : false
                        },
                        "locality" : {
                          "title" : "city",
                          "description" : "The name of the city or town.",
                          "type" : "string"
                        },
                        "postalCode" : {
                          "title" : "Postal Code",
                          "description" : "The mailing postal code.",
                          "oneOf" : [ {
                            "type" : "string",
                            "pattern" : "^(?!.*[DFIOQU])[A-VXY][0-9][A-Z] ?[0-9][A-Z][0-9]$"
                          }, {
                            "type" : "string",
                            "maxLength" : 0
                          } ]
                        }
                      },
                      "additionalProperties" : false,
                      "required" : [ "code" ]
                    }, {
                      "title" : "Mexico",
                      "description" : "The postal region definition for Mexico.",
                      "type" : "object",
                      "properties" : {
                        "code" : {
                          "title" : "Code",
                          "description" : "The ISO 3166-1 alpha-3 country code for Mexico.",
                          "enum" : [ "MEX" ],
                          "type" : "string"
                        },
                        "title" : {
                          "title" : "Country",
                          "description" : "The name of the country, as used in everyday speech.",
                          "type" : "string"
                        },
                        "postalTitle" : {
                          "title" : "Postal Country",
                          "description" : "The name of the country when mail is being addressed from an international sender.",
                          "oneOf" : [ {
                            "type" : "string",
                            "enum" : [ "MEXICO" ]
                          }, {
                            "type" : "string",
                            "maxLength" : 0
                          } ]
                        },
                        "region" : {
                          "title" : "Region",
                          "description" : "A region within the country",
                          "oneOf" : [ {
                            "type" : "object",
                            "properties" : {
                              "code" : {
                                "title" : "Code",
                                "description" : "The ISO 3166-2 code used to identify the region within the country.",
                                "enum" : [ "MX-AGU", "MX-BCN", "MX-BCS", "MX-CAM", "MX-COA", "MX-COL", "MX-CHP", "MX-CHH", "MX-DIF", "MX-DUR", "MX-GUA", "MX-GRO", "MX-HID", "MX-JAL", "MX-MEX", "MX-MIC", "MX-MOR", "MX-NAY", "MX-NLE", "MX-OAX", "MX-PUE", "MX-QUE", "MX-ROO", "MX-SLP", "MX-SIN", "MX-SON", "MX-TAB", "MX-TAM", "MX-TLA", "MX-VER", "MX-YUC", "MX-ZAC" ],
                                "type" : "string"
                              },
                              "title" : {
                                "title" : "Title",
                                "description" : "The full name of the region",
                                "type" : "string"
                              }
                            },
                            "additionalProperties" : false,
                            "required" : [ "code" ]
                          }, {
                            "type" : "object",
                            "maxProperties" : 0
                          } ]
                        },
                        "subRegion" : {
                          "title" : "Subregion",
                          "description" : "A subregion within the country and region",
                          "type" : "object",
                          "properties" : {
                            "code" : {
                              "title" : "Code",
                              "description" : "A code that may be used to identify the sub-region. This should be the ISO 3166-2 code, if one exists, otherwise, a user defined code may be optionally specified.",
                              "type" : "string"
                            },
                            "title" : {
                              "title" : "Title",
                              "description" : "The name of a subregion",
                              "type" : "string"
                            }
                          },
                          "additionalProperties" : false
                        },
                        "locality" : {
                          "title" : "city",
                          "description" : "The name of the city or town.",
                          "type" : "string"
                        },
                        "postalCode" : {
                          "title" : "Postal Code",
                          "description" : "The mailing postal code.",
                          "oneOf" : [ {
                            "type" : "string",
                            "pattern" : "^\\A\\d{5,5}\\Z$"
                          }, {
                            "type" : "string",
                            "maxLength" : 0
                          } ]
                        }
                      },
                      "additionalProperties" : false,
                      "required" : [ "code" ]
                    }, {
                      "title" : "Netherlands",
                      "description" : "The postal region definition for the Netherlands.",
                      "type" : "object",
                      "properties" : {
                        "code" : {
                          "title" : "Code",
                          "description" : "The ISO 3166-1 alpha-3 country code for the Netherlands.",
                          "enum" : [ "NLD" ],
                          "type" : "string"
                        },
                        "title" : {
                          "title" : "Country",
                          "description" : "The name of the country, as used in everyday speech.",
                          "type" : "string"
                        },
                        "postalTitle" : {
                          "title" : "Postal Country",
                          "description" : "The name of the country when mail is being addressed from an international sender.",
                          "oneOf" : [ {
                            "type" : "string",
                            "enum" : [ "NETHERLANDS" ]
                          }, {
                            "type" : "string",
                            "maxLength" : 0
                          } ]
                        },
                        "region" : {
                          "title" : "Region",
                          "description" : "A region within the country",
                          "oneOf" : [ {
                            "type" : "object",
                            "properties" : {
                              "code" : {
                                "title" : "Code",
                                "description" : "The ISO 3166-2 code used to identify the region within the country.",
                                "enum" : [ "NL-DR", "NL-FL", "NL-FR", "NL-GE", "NL-GR", "NL-LI", "NL-NB", "NL-NH", "NL-OV", "NL-UT", "NL-ZE", "NL-ZH" ],
                                "type" : "string"
                              },
                              "title" : {
                                "title" : "Title",
                                "description" : "The full name of the region",
                                "type" : "string"
                              }
                            },
                            "additionalProperties" : false,
                            "required" : [ "code" ]
                          }, {
                            "type" : "object",
                            "maxProperties" : 0
                          } ]
                        },
                        "subRegion" : {
                          "title" : "Subregion",
                          "description" : "A subregion within the country and region",
                          "type" : "object",
                          "properties" : {
                            "code" : {
                              "title" : "Code",
                              "description" : "A code that may be used to identify the sub-region. This should be the ISO 3166-2 code, if one exists, otherwise, a user defined code may be optionally specified.",
                              "type" : "string"
                            },
                            "title" : {
                              "title" : "Title",
                              "description" : "The name of a subregion",
                              "type" : "string"
                            }
                          },
                          "additionalProperties" : false
                        },
                        "locality" : {
                          "title" : "city",
                          "description" : "The name of the city or town.",
                          "type" : "string"
                        },
                        "postalCode" : {
                          "title" : "Postal Code",
                          "description" : "The mailing postal code.",
                          "oneOf" : [ {
                            "type" : "string",
                            "pattern" : "^(NL-)?(\\d{4})\\s*([A-Z]{2})$"
                          }, {
                            "type" : "string",
                            "maxLength" : 0
                          } ]
                        }
                      },
                      "additionalProperties" : false,
                      "required" : [ "code" ]
                    }, {
                      "title" : "United Kingdom of Great Britain and Northern Ireland",
                      "description" : "The postal region definition for the United Kingdom of Great Britain and Northern Ireland.",
                      "type" : "object",
                      "properties" : {
                        "code" : {
                          "title" : "Code",
                          "description" : "The ISO 3166-1 alpha-3 country code for the United Kingdom of Great Britain and Northern Ireland.",
                          "enum" : [ "GBR" ],
                          "type" : "string"
                        },
                        "title" : {
                          "title" : "Country",
                          "description" : "The name of the country, as used in everyday speech.",
                          "type" : "string"
                        },
                        "postalTitle" : {
                          "title" : "Postal Country",
                          "description" : "The name of the country when mail is being addressed from an international sender.",
                          "oneOf" : [ {
                            "type" : "string",
                            "enum" : [ "UNITED KINGDOM OF GREAT BRITAIN AND NORTHERN IRELAND" ]
                          }, {
                            "type" : "string",
                            "maxLength" : 0
                          } ]
                        },
                        "region" : {
                          "title" : "Region",
                          "description" : "A region within the country",
                          "oneOf" : [ {
                            "type" : "object",
                            "properties" : {
                              "code" : {
                                "title" : "Code",
                                "description" : "The ISO 3166-2 code used to identify the region within the country.",
                                "enum" : [ "GB-ENG", "GB-NIR", "GB-SCT", "GB-WLS" ],
                                "type" : "string"
                              },
                              "title" : {
                                "title" : "Title",
                                "description" : "The name of a subregion",
                                "type" : "string"
                              }
                            },
                            "additionalProperties" : false,
                            "required" : [ "code" ]
                          }, {
                            "type" : "object",
                            "maxProperties" : 0
                          } ]
                        },
                        "subRegion" : {
                          "title" : "Subregion",
                          "description" : "A subregion within the country and region",
                          "oneOf" : [ {
                            "type" : "object",
                            "properties" : {
                              "code" : {
                                "title" : "Code",
                                "description" : "The ISO 3166-2 code used to identify the sub-region within the country.",
                                "enum" : [ "GB-BAS", "GB-BBD", "GB-BDF", "GB-BDG", "GB-BEN", "GB-BEX", "GB-BIR", "GB-BKM", "GB-BMH", "GB-BNE", "GB-BNH", "GB-BNS", "GB-BOL", "GB-BPL", "GB-BRC", "GB-BRD", "GB-BRY", "GB-BST", "GB-BUR", "GB-CAM", "GB-CBF", "GB-CHE", "GB-CHW", "GB-CLD", "GB-CMA", "GB-CMD", "GB-CON", "GB-COV", "GB-CRY", "GB-DAL", "GB-DBY", "GB-DER", "GB-DEV", "GB-DNC", "GB-DOR", "GB-DUD", "GB-DUR", "GB-EAL", "GB-ENF", "GB-ERY", "GB-ESS", "GB-ESX", "GB-GAT", "GB-GLS", "GB-GRE", "GB-HAL", "GB-HAM", "GB-HAV", "GB-HCK", "GB-HEF", "GB-HIL", "GB-HMF", "GB-HNS", "GB-HPL", "GB-HRT", "GB-HRW", "GB-HRY", "GB-IOS", "GB-IOW", "GB-ISL", "GB-KEC", "GB-KEN", "GB-KHL", "GB-KIR", "GB-KTT", "GB-KWL", "GB-LAN", "GB-LBH", "GB-LCE", "GB-LDS", "GB-LEC", "GB-LEW", "GB-LIN", "GB-LIV", "GB-LND", "GB-LUT", "GB-MAN", "GB-MDB", "GB-MDW", "GB-MIK", "GB-MRT", "GB-NBL", "GB-NEL", "GB-NET", "GB-NFK", "GB-NGM", "GB-NLN", "GB-NSM", "GB-NTH", "GB-NTT", "GB-NTY", "GB-NWM", "GB-NYK", "GB-OLD", "GB-OXF", "GB-PLY", "GB-POL", "GB-POR", "GB-PTE", "GB-RCC", "GB-RCH", "GB-RDB", "GB-RDG", "GB-RIC", "GB-ROT", "GB-RUT", "GB-SAW", "GB-SFK", "GB-SFT", "GB-SGC", "GB-SHF", "GB-SHN", "GB-SHR", "GB-SKP", "GB-SLF", "GB-SLG", "GB-SND", "GB-SOL", "GB-SOM", "GB-SOS", "GB-SRY", "GB-STE", "GB-STH", "GB-STN", "GB-STS", "GB-STT", "GB-STY", "GB-SWD", "GB-SWK", "GB-TAM", "GB-TFW", "GB-THR", "GB-TOB", "GB-TRF", "GB-TWH", "GB-WAR", "GB-WBK", "GB-WFT", "GB-WGN", "GB-WIL", "GB-WKF", "GB-WLL", "GB-WLV", "GB-WND", "GB-WNM", "GB-WOK", "GB-WOR", "GB-WRL", "GB-WRT", "GB-WSM", "GB-WSX", "GB-YOR", "GB-ABC", "GB-AND", "GB-ANN", "GB-BFS", "GB-CCG", "GB-DRS", "GB-FMO", "GB-LBC", "GB-MEA", "GB-MUL", "GB-NMD", "GB-ABD", "GB-ABE", "GB-AGB", "GB-ANS", "GB-CLK", "GB-DGY", "GB-DND", "GB-EAY", "GB-EDH", "GB-EDU", "GB-ELN", "GB-ELS", "GB-ERW", "GB-FAL", "GB-FIF", "GB-GLG", "GB-HLD", "GB-IVC", "GB-MLN", "GB-MRY", "GB-NAY", "GB-NLK", "GB-ORK", "GB-PKN", "GB-RFW", "GB-SAY", "GB-SCB", "GB-SLK", "GB-STG", "GB-WDU", "GB-WLN", "GB-ZET", "GB-AGY", "GB-BGE", "GB-BGW", "GB-CAY", "GB-CGN", "GB-CMN", "GB-CRF", "GB-CWY", "GB-DEN", "GB-FLN", "GB-GWN", "GB-MON", "GB-MTY", "GB-NTL", "GB-NWP", "GB-PEM", "GB-POW", "GB-RCT", "GB-SWA", "GB-TOF", "GB-VGL", "GB-WRX" ],
                                "type" : "string"
                              },
                              "title" : {
                                "title" : "Title",
                                "description" : "The full name of the region",
                                "type" : "string"
                              }
                            },
                            "additionalProperties" : false,
                            "required" : [ "code" ]
                          }, {
                            "type" : "object",
                            "maxProperties" : 0
                          } ]
                        },
                        "locality" : {
                          "title" : "city",
                          "description" : "The name of the city or town.",
                          "type" : "string"
                        },
                        "postalCode" : {
                          "title" : "Postal Code",
                          "description" : "The mailing postal code.",
                          "oneOf" : [ {
                            "type" : "string",
                            "pattern" : "^(GIR 0AA)|((([A-Z-[QVX]][0-9][0-9]?)|(([A-Z-[QVX]][A-Z-[IJZ]][0-9][0-9]?)|(([A-Z-[QVX]][0-9][A-HJKPSTUW])|([A-Z-[QVX]][A-Z-[IJZ]][0-9][ABEHMNPRVWXY])))) [0-9][A-Z-[CIKMOV]]{2})$"
                          }, {
                            "type" : "string",
                            "maxLength" : 0
                          } ]
                        }
                      },
                      "additionalProperties" : false,
                      "required" : [ "code" ]
                    }, {
                      "title" : "United States of America",
                      "description" : "The postal region definition for the United States of America.",
                      "type" : "object",
                      "properties" : {
                        "code" : {
                          "title" : "Code",
                          "description" : "The ISO 3166-1 alpha-3 country code the United States of America.",
                          "enum" : [ "USA" ],
                          "type" : "string"
                        },
                        "title" : {
                          "title" : "Country",
                          "description" : "The name of the country, as used in everyday speech.",
                          "type" : "string"
                        },
                        "postalTitle" : {
                          "title" : "Postal Country",
                          "description" : "The name of the country when mail is being addressed from an international sender.",
                          "oneOf" : [ {
                            "type" : "string",
                            "enum" : [ "UNITED STATES OF AMERICA" ]
                          }, {
                            "type" : "string",
                            "maxLength" : 0
                          } ]
                        },
                        "region" : {
                          "title" : "Region",
                          "description" : "A region within the country",
                          "oneOf" : [ {
                            "type" : "object",
                            "properties" : {
                              "code" : {
                                "title" : "Code",
                                "description" : "The ISO 3166-2 code used to identify the region within the country, if it exists, or the postal code for the region.",
                                "enum" : [ "US-AL", "US-AK", "US-AZ", "US-AR", "US-CA", "US-CO", "US-CT", "US-DE", "US-DC", "US-FL", "US-GA", "US-HI", "US-ID", "US-IL", "US-IN", "US-IA", "US-KS", "US-KY", "US-LA", "US-ME", "US-MD", "US-MA", "US-MI", "US-MN", "US-MS", "US-MO", "US-MT", "US-NE", "US-NV", "US-NH", "US-NJ", "US-NM", "US-NY", "US-NC", "US-ND", "US-OH", "US-OK", "US-OR", "US-PA", "US-RI", "US-SC", "US-SD", "US-TN", "US-TX", "US-UT", "US-VT", "US-VA", "US-WA", "US-WV", "US-WI", "US-WY", "US-AS", "US-GU", "US-MP", "US-PR", "US-UM", "US-VI", "US-FM", "US-MH", "US-PW", "US-AA", "US-AE", "US-AP" ],
                                "type" : "string"
                              },
                              "title" : {
                                "title" : "Title",
                                "description" : "The full name of the region",
                                "type" : "string"
                              }
                            },
                            "additionalProperties" : false,
                            "required" : [ "code" ]
                          }, {
                            "type" : "object",
                            "maxProperties" : 0
                          } ]
                        },
                        "subRegion" : {
                          "title" : "Subregion",
                          "description" : "A subregion within the country and region",
                          "type" : "object",
                          "properties" : {
                            "code" : {
                              "title" : "Code",
                              "description" : "A code that may be used to identify the sub-region. This should be the ISO 3166-2 code, if one exists, otherwise, a user defined code may be optionally specified.",
                              "type" : "string"
                            },
                            "title" : {
                              "title" : "Title",
                              "description" : "The name of a subregion",
                              "type" : "string"
                            }
                          },
                          "additionalProperties" : false
                        },
                        "locality" : {
                          "title" : "city",
                          "description" : "The name of the city or town.",
                          "type" : "string"
                        },
                        "postalCode" : {
                          "title" : "Postal Code",
                          "description" : "The mailing postal code.",
                          "oneOf" : [ {
                            "type" : "string",
                            "pattern" : "^(\\d{5}(-\\d{4})?|[A-Z]\\d[A-Z] *\\d[A-Z]\\d)$"
                          }, {
                            "type" : "string",
                            "maxLength" : 0
                          } ]
                        },
                        "deliveryPoint" : {
                          "title" : "Delivery Point",
                          "description" : "A specific set of digits between 00 and 99 assigned to every address. When combined with the ZIP + 4 code, the delivery point provides a unique identifier for every deliverable address served by the US Postal Service.",
                          "oneOf" : [ {
                            "type" : "string",
                            "pattern" : "^[0-9][0-9]$"
                          }, {
                            "type" : "string",
                            "maxLength" : 0
                          } ]
                        },
                        "carrierRoute" : {
                          "title" : "Carrier Route",
                          "description" : "A subdivision of a US zipcode.",
                          "oneOf" : [ {
                            "type" : "string",
                            "pattern" : "^(C|R|P)[0-9]{3}$"
                          }, {
                            "type" : "string",
                            "maxLength" : 0
                          } ]
                        },
                        "correctionDigit" : {
                          "title" : "Correction Digit",
                          "description" : "A number used to check for errors in a US ZIP code, delivery point, or carrier route.",
                          "oneOf" : [ {
                            "type" : "string",
                            "pattern" : "^[0-9]$"
                          }, {
                            "type" : "string",
                            "maxLength" : 0
                          } ]
                        }
                      },
                      "additionalProperties" : false,
                      "required" : [ "code" ]
                    }, {
                      "title" : "Generic",
                      "description" : "The postal region definition for all other counties.",
                      "type" : "object",
                      "properties" : {
                        "code" : {
                          "title" : "Code",
                          "description" : "The ISO 3166-1 alpha-3 country code.",
                          "enum" : [ "ABW", "AFG", "AGO", "AIA", "ALA", "ALB", "AND", "ARE", "ARG", "ARM", "ASM", "ATA", "ATF", "ATG", "AUT", "AZE", "BDI", "BEL", "BEN", "BES", "BFA", "BGD", "BGR", "BHR", "BHS", "BIH", "BLM", "BLR", "BLZ", "BMU", "BOL", "BRB", "BRN", "BTN", "BVT", "BWA", "CAF", "CCK", "CHE", "CHL", "CHN", "CIV", "CMR", "COD", "COG", "COK", "COL", "COM", "CPV", "CRI", "CUB", "CUW", "CXR", "CYM", "CYP", "CZE", "DEU", "DJI", "DMA", "DNK", "DOM", "DZA", "ECU", "EGY", "ERI", "ESH", "ESP", "EST", "ETH", "FIN", "FJI", "FLK", "FRA", "FRO", "FSM", "GAB", "GEO", "GGY", "GHA", "GIB", "GIN", "GLP", "GMB", "GNB", "GNQ", "GRC", "GRD", "GRL", "GTM", "GUF", "GUM", "GUY", "HKG", "HMD", "HND", "HRV", "HTI", "HUN", "IDN", "IMN", "IND", "IOT", "IRL", "IRN", "IRQ", "ISL", "ISR", "ITA", "JAM", "JEY", "JOR", "JPN", "KAZ", "KEN", "KGZ", "KHM", "KIR", "KNA", "KOR", "KWT", "LAO", "LBN", "LBR", "LBY", "LCA", "LIE", "LKA", "LSO", "LTU", "LUX", "LVA", "MAC", "MAF", "MAR", "MCO", "MDA", "MDG", "MDV", "MHL", "MKD", "MLI", "MLT", "MMR", "MNE", "MNG", "MNP", "MOZ", "MRT", "MSR", "MTQ", "MUS", "MWI", "MYS", "MYT", "NAM", "NCL", "NER", "NFK", "NGA", "NIC", "NIU", "NOR", "NPL", "NRU", "NZL", "OMN", "PAK", "PAN", "PCN", "PER", "PHL", "PLW", "PNG", "POL", "PRI", "PRK", "PRT", "PRY", "PSE", "PYF", "QAT", "REU", "ROU", "RUS", "RWA", "SAU", "SDN", "SEN", "SGP", "SGS", "SHN", "SJM", "SLB", "SLE", "SLV", "SMR", "SOM", "SPM", "SRB", "SSD", "STP", "SUR", "SVK", "SVN", "SWE", "SWZ", "SXM", "SYC", "SYR", "TCA", "TCD", "TGO", "THA", "TJK", "TKL", "TKM", "TLS", "TON", "TTO", "TUN", "TUR", "TUV", "TWN", "TZA", "UGA", "UKR", "UMI", "URY", "UZB", "VAT", "VCT", "VEN", "VGB", "VIR", "VNM", "VUT", "WLF", "WSM", "YEM", "ZAF", "ZMB", "ZWE" ],
                          "type" : "string"
                        },
                        "title" : {
                          "title" : "Country",
                          "description" : "The name of the country, as used in everyday speech.",
                          "type" : "string"
                        },
                        "postalTitle" : {
                          "title" : "Postal Country",
                          "description" : "The name of the country when mail is being addressed from an international sender.",
                          "type" : "string"
                        },
                        "region" : {
                          "title" : "Region",
                          "description" : "A region within the country",
                          "type" : "object",
                          "properties" : {
                            "code" : {
                              "title" : "Code",
                              "description" : "The ISO 3166-2 code used to identify the region within the country.",
                              "type" : "string"
                            },
                            "title" : {
                              "title" : "Title",
                              "description" : "The full name of the region",
                              "type" : "string"
                            }
                          },
                          "additionalProperties" : false
                        },
                        "subRegion" : {
                          "title" : "Subregion",
                          "description" : "A subregion within the country and region",
                          "type" : "object",
                          "properties" : {
                            "code" : {
                              "title" : "Code",
                              "description" : "A code that may be used to identify the sub-region. This should be the ISO 3166-2 code, if one exists, otherwise, a user defined code may be optionally specified.",
                              "type" : "string"
                            },
                            "title" : {
                              "title" : "Title",
                              "description" : "The name of a subregion",
                              "type" : "string"
                            }
                          },
                          "additionalProperties" : false
                        },
                        "locality" : {
                          "title" : "city",
                          "description" : "The name of the city or town.",
                          "type" : "string"
                        },
                        "postalCode" : {
                          "title" : "Postal Code",
                          "description" : "The mailing postal code.",
                          "type" : "string"
                        }
                      },
                      "additionalProperties" : false,
                      "required" : [ "code" ]
                    } ]
                  }
                },
                "additionalProperties" : false,
                "required" : [ "country" ]
              }, {
                "type" : "object",
                "maxProperties" : 0
              } ]
            },
            "contact" : {
              "title" : "Contact",
              "description" : "The contact for the vendor.",
              "type" : "object",
              "properties" : {
                "name" : {
                  "title" : "Name",
                  "description" : "The name of the contact.",
                  "type" : "string"
                },
                "email" : {
                  "title" : "Email",
                  "description" : "The email of the contact.",
                  "type" : "string"
                }
              },
              "additionalProperties" : false
            }
          },
          "additionalProperties" : false
        }
      },
      "additionalProperties" : false,
      "minProperties" : 1
    },
    "referenceNumber" : {
      "title" : "Reference Number",
      "description" : "The purchase order number, encumbrance number, or other reference number associated with the invoice.",
      "type" : "string"
    },
    "invoiceNumber" : {
      "title" : "Invoice Number",
      "description" : "A system-generated number associated with the invoice.",
      "type" : "string"
    },
    "vendorInvoiceNumber" : {
      "title" : "Vendor Invoice Number",
      "description" : "The invoice number specified by the vendor.",
      "type" : "string"
    },
    "transactionDate" : {
      "title" : "Transaction Date",
      "description" : "The transaction date for the invoice. This will be the date used when entering the transactions into the general ledger.",
      "type" : "string",
      "format" : "date",
      "pattern" : "^(-?(?:[1-9][0-9]*)?[0-9]{4})-(1[0-2]|0[1-9])-(3[0-1]|0[1-9]|[1-2][0-9])$"
    },
    "vendorInvoiceDate" : {
      "title" : "Vendor Invoice Date",
      "description" : "The invoice date as specified by the vendor.",
      "oneOf" : [ {
        "type" : "string",
        "format" : "date",
        "pattern" : "^(-?(?:[1-9][0-9]*)?[0-9]{4})-(1[0-2]|0[1-9])-(3[0-1]|0[1-9]|[1-2][0-9])$"
      }, {
        "type" : "string",
        "maxLength" : 0
      } ]
    },
    "voidDate" : {
      "title" : "Void Date",
      "description" : "The date on which the invoice was voided, if applicable.",
      "oneOf" : [ {
        "type" : "string",
        "format" : "date",
        "pattern" : "^(-?(?:[1-9][0-9]*)?[0-9]{4})-(1[0-2]|0[1-9])-(3[0-1]|0[1-9]|[1-2][0-9])$"
      }, {
        "type" : "string",
        "maxLength" : 0
      } ]
    },
    "processState" : {
      "title" : "Process State",
      "description" : "The current state of the processing of the invoice.",
      "enum" : [ "inProgress", "suspended", "submitted", "awaitingReceipt", "notApproved", "approved", "outstanding", "paid", "reconciled", "voided" ],
      "type" : "string"
    },
    "paymentStatus" : {
      "title" : "Paymant Status",
      "description" : "An indicator specifying if payment for the invoice is on hold.",
      "enum" : [ "hold", "noHold" ],
      "type" : "string"
    },
    "vendorBilledAmount" : {
      "title" : "Vendor Billed Amount",
      "description" : "The billed amount as specified by the vendor.",
      "oneOf" : [ {
        "type" : "object",
        "format" : "currency",
        "properties" : {
          "value" : {
            "title" : "Value",
            "description" : "The monetary value",
            "type" : "number"
          },
          "currency" : {
            "title" : "Currency",
            "description" : "The ISO 4217 currency code",
            "enum" : [ "AED", "AFN", "ALL", "AMD", "ANG", "AOA", "ARS", "AUD", "AWG", "AZN", "BAM", "BBD", "BDT", "BGN", "BHD", "BIF", "BMD", "BND", "BOB", "BRL", "BSD", "BTN", "BWP", "BYR", "BZD", "CAD", "CDF", "CHF", "CLP", "CNY", "COP", "CRC", "CUC", "CUP", "CVE", "CZK", "DJF", "DKK", "DOP", "DZD", "EGP", "ERN", "ETB", "EUR", "FJD", "FKP", "GBP", "GEL", "GHS", "GIP", "GMD", "GNF", "GTQ", "GYD", "HKD", "HNL", "HRK", "HTG", "HUF", "IDR", "ILS", "INR", "IQD", "IRR", "ISK", "JMD", "JOD", "JPY", "KES", "KGS", "KHR", "KMF", "KPW", "KRW", "KWD", "KYD", "KZT", "LAK", "LBP", "LKR", "LRD", "LSL", "LYD", "MAD", "MDL", "MGA", "MKD", "MMK", "MNT", "MOP", "MRO", "MUR", "MVR", "MWK", "MXN", "MYR", "MZN", "NAD", "NGN", "NIO", "NOK", "NPR", "NZD", "OMR", "PAB", "PEN", "PGK", "PHP", "PKR", "PLN", "PYG", "QAR", "RON", "RSD", "RUB", "RWF", "SAR", "SBD", "SCR", "SDG", "SEK", "SGD", "SHP", "SLL", "SOS", "SRD", "SSP", "STD", "SVC", "SYP", "SZL", "THB", "TJS", "TMT", "TND", "TOP", "TRY", "TTD", "TWD", "TZS", "UAH", "UGX", "USD", "UYU", "UZS", "VEF", "VND", "VUV", "WST", "XAF", "XCD", "XOF", "XPF", "YER", "ZAR", "ZMW", "ZWL" ],
            "type" : "string"
          }
        },
        "additionalProperties" : false,
        "required" : [ "value", "currency" ]
      }, {
        "type" : "object",
        "maxProperties" : 0
      } ]
    },
    "invoiceDiscountAmount" : {
      "title" : "Invoice Discount Amount",
      "description" : "The discount applied to the overall invoice.",
      "oneOf" : [ {
        "type" : "object",
        "format" : "currency",
        "properties" : {
          "value" : {
            "title" : "Value",
            "description" : "The monetary value",
            "type" : "number"
          },
          "currency" : {
            "title" : "Currency",
            "description" : "The ISO 4217 currency code",
            "enum" : [ "AED", "AFN", "ALL", "AMD", "ANG", "AOA", "ARS", "AUD", "AWG", "AZN", "BAM", "BBD", "BDT", "BGN", "BHD", "BIF", "BMD", "BND", "BOB", "BRL", "BSD", "BTN", "BWP", "BYR", "BZD", "CAD", "CDF", "CHF", "CLP", "CNY", "COP", "CRC", "CUC", "CUP", "CVE", "CZK", "DJF", "DKK", "DOP", "DZD", "EGP", "ERN", "ETB", "EUR", "FJD", "FKP", "GBP", "GEL", "GHS", "GIP", "GMD", "GNF", "GTQ", "GYD", "HKD", "HNL", "HRK", "HTG", "HUF", "IDR", "ILS", "INR", "IQD", "IRR", "ISK", "JMD", "JOD", "JPY", "KES", "KGS", "KHR", "KMF", "KPW", "KRW", "KWD", "KYD", "KZT", "LAK", "LBP", "LKR", "LRD", "LSL", "LYD", "MAD", "MDL", "MGA", "MKD", "MMK", "MNT", "MOP", "MRO", "MUR", "MVR", "MWK", "MXN", "MYR", "MZN", "NAD", "NGN", "NIO", "NOK", "NPR", "NZD", "OMR", "PAB", "PEN", "PGK", "PHP", "PKR", "PLN", "PYG", "QAR", "RON", "RSD", "RUB", "RWF", "SAR", "SBD", "SCR", "SDG", "SEK", "SGD", "SHP", "SLL", "SOS", "SRD", "SSP", "STD", "SVC", "SYP", "SZL", "THB", "TJS", "TMT", "TND", "TOP", "TRY", "TTD", "TWD", "TZS", "UAH", "UGX", "USD", "UYU", "UZS", "VEF", "VND", "VUV", "WST", "XAF", "XCD", "XOF", "XPF", "YER", "ZAR", "ZMW", "ZWL" ],
            "type" : "string"
          }
        },
        "additionalProperties" : false,
        "required" : [ "value", "currency" ]
      }, {
        "type" : "object",
        "maxProperties" : 0
      } ]
    },
    "taxes" : {
      "title" : "Taxes",
      "description" : "The taxes associated with the invoice.",
      "type" : "array",
      "items" : {
        "type" : "object",
        "properties" : {
          "taxCode" : {
            "title" : "Tax Code",
            "description" : "A tax code applicable to the invoice.",
            "type" : "object",
            "properties" : {
              "id" : {
                "title" : "ID",
                "description" : "The global identifier for the Tax Code.",
                "type" : "string",
                "format" : "guid",
                "pattern" : "^[a-f0-9]{8}(?:-[a-f0-9]{4}){3}-[a-f0-9]{12}$"
              }
            },
            "links" : [ {
              "rel" : "self",
              "href" : "/commerce-tax-codes/{id}",
              "targetSchema" : {
                "$ref" : "commerce-tax-codes.json#"
              }
            } ],
            "additionalProperties" : false,
            "required" : [ "id" ]
          },
          "vendorAmount" : {
            "title" : "Vendor Amount",
            "description" : "The amount of taxes for the tax code as specified by the vendor.",
            "oneOf" : [ {
              "type" : "object",
              "format" : "currency",
              "properties" : {
                "value" : {
                  "title" : "Value",
                  "description" : "The monetary value",
                  "type" : "number"
                },
                "currency" : {
                  "title" : "Currency",
                  "description" : "The ISO 4217 currency code",
                  "enum" : [ "AED", "AFN", "ALL", "AMD", "ANG", "AOA", "ARS", "AUD", "AWG", "AZN", "BAM", "BBD", "BDT", "BGN", "BHD", "BIF", "BMD", "BND", "BOB", "BRL", "BSD", "BTN", "BWP", "BYR", "BZD", "CAD", "CDF", "CHF", "CLP", "CNY", "COP", "CRC", "CUC", "CUP", "CVE", "CZK", "DJF", "DKK", "DOP", "DZD", "EGP", "ERN", "ETB", "EUR", "FJD", "FKP", "GBP", "GEL", "GHS", "GIP", "GMD", "GNF", "GTQ", "GYD", "HKD", "HNL", "HRK", "HTG", "HUF", "IDR", "ILS", "INR", "IQD", "IRR", "ISK", "JMD", "JOD", "JPY", "KES", "KGS", "KHR", "KMF", "KPW", "KRW", "KWD", "KYD", "KZT", "LAK", "LBP", "LKR", "LRD", "LSL", "LYD", "MAD", "MDL", "MGA", "MKD", "MMK", "MNT", "MOP", "MRO", "MUR", "MVR", "MWK", "MXN", "MYR", "MZN", "NAD", "NGN", "NIO", "NOK", "NPR", "NZD", "OMR", "PAB", "PEN", "PGK", "PHP", "PKR", "PLN", "PYG", "QAR", "RON", "RSD", "RUB", "RWF", "SAR", "SBD", "SCR", "SDG", "SEK", "SGD", "SHP", "SLL", "SOS", "SRD", "SSP", "STD", "SVC", "SYP", "SZL", "THB", "TJS", "TMT", "TND", "TOP", "TRY", "TTD", "TWD", "TZS", "UAH", "UGX", "USD", "UYU", "UZS", "VEF", "VND", "VUV", "WST", "XAF", "XCD", "XOF", "XPF", "YER", "ZAR", "ZMW", "ZWL" ],
                  "type" : "string"
                }
              },
              "additionalProperties" : false,
              "required" : [ "value", "currency" ]
            }, {
              "type" : "object",
              "maxProperties" : 0
            } ]
          }
        },
        "additionalProperties" : false,
        "required" : [ "taxCode" ]
      }
    },
    "invoiceType" : {
      "title" : "Invoice Type",
      "description" : "An indicator specifying if the invoice is a standard or a credit invoice.",
      "oneOf" : [ {
        "type" : "string",
        "enum" : [ "invoice", "creditInvoice" ]
      }, {
        "type" : "string",
        "maxLength" : 0
      } ]
    },
    "payment" : {
      "title" : "Payment",
      "description" : "Information concerning the payment of the invoice.",
      "type" : "object",
      "properties" : {
        "source" : {
          "title" : "Source",
          "description" : "The source account for the payment of the invoice.",
          "oneOf" : [ {
            "type" : "object",
            "properties" : {
              "id" : {
                "title" : "ID",
                "description" : "The global identifier for the Source.",
                "type" : "string",
                "format" : "guid",
                "pattern" : "^[a-f0-9]{8}(?:-[a-f0-9]{4}){3}-[a-f0-9]{12}$"
              }
            },
            "links" : [ {
              "rel" : "self",
              "href" : "/accounts-payable-sources/{id}",
              "targetSchema" : {
                "$ref" : "accounts-payable-sources.json#"
              }
            } ],
            "additionalProperties" : false,
            "required" : [ "id" ]
          }, {
            "type" : "object",
            "maxProperties" : 0
          } ]
        },
        "paymentDueOn" : {
          "title" : "Payment Due On",
          "description" : "The date the invoice payment is due.",
          "type" : "string",
          "format" : "date",
          "pattern" : "^(-?(?:[1-9][0-9]*)?[0-9]{4})-(1[0-2]|0[1-9])-(3[0-1]|0[1-9]|[1-2][0-9])$"
        },
        "directDepositOverride" : {
          "title" : "Direct Deposit Override",
          "description" : "An indication if direct deposit should not be used for the invoice or if the vendor default for direct deposit should be used.",
          "oneOf" : [ {
            "type" : "string",
            "enum" : [ "default", "noDirectDeposit" ]
          }, {
            "type" : "string",
            "maxLength" : 0
          } ]
        },
        "paymentTerms" : {
          "title" : "Payment Terms",
          "description" : "The vendor payment terms and conditions that are applicable to this invoice.",
          "oneOf" : [ {
            "type" : "object",
            "properties" : {
              "id" : {
                "title" : "ID",
                "description" : "The global identifier for the Payment Terms.",
                "type" : "string",
                "format" : "guid",
                "pattern" : "^[a-f0-9]{8}(?:-[a-f0-9]{4}){3}-[a-f0-9]{12}$"
              }
            },
            "links" : [ {
              "rel" : "self",
              "href" : "/vendor-payment-terms/{id}",
              "targetSchema" : {
                "$ref" : "vendor-payment-terms.json#"
              }
            } ],
            "additionalProperties" : false,
            "required" : [ "id" ]
          }, {
            "type" : "object",
            "maxProperties" : 0
          } ]
        }
      },
      "additionalProperties" : false,
      "required" : [ "paymentDueOn" ]
    },
    "invoiceComment" : {
      "title" : "Invoice Comment",
      "description" : "Comments on the invoice as a whole.",
      "type" : "string"
    },
    "governmentReporting" : {
      "title" : "Government Reporting",
      "description" : "Information required for government reporting.",
      "type" : "array",
      "items" : {
        "type" : "object",
        "properties" : {
          "country" : {
            "title" : "Country",
            "description" : "Governmental reporting by country.",
            "oneOf" : [ {
              "title" : "United States of America",
              "description" : "Governmental reporting for the United States of America",
              "type" : "object",
              "properties" : {
                "code" : {
                  "title" : "Code",
                  "description" : "The country code of the United States of America",
                  "enum" : [ "USA" ],
                  "type" : "string"
                },
                "transactionType" : {
                  "title" : "Transaction Type",
                  "description" : "The transaction type associated with the invoice. This information is required for international ACH transactions for NACHA.",
                  "enum" : [ "annuity", "businessCommercial", "deposit", "loan", "miscellaneous", "mortgage", "pension", "rentLease", "salaryPayroll", "tax" ],
                  "type" : "string"
                }
              },
              "additionalProperties" : false,
              "required" : [ "code", "transactionType" ]
            } ]
          }
        },
        "additionalProperties" : false,
        "required" : [ "country" ]
      }
    },
    "submittedBy" : {
      "title" : "Submitted By",
      "description" : "The person who made the submit request for the invoice.",
      "oneOf" : [ {
        "type" : "object",
        "properties" : {
          "id" : {
            "title" : "ID",
            "description" : "The global identifier for the Submitted By.",
            "type" : "string",
            "format" : "guid",
            "pattern" : "^[a-f0-9]{8}(?:-[a-f0-9]{4}){3}-[a-f0-9]{12}$"
          }
        },
        "links" : [ {
          "rel" : "self",
          "href" : "/persons/{id}",
          "targetSchema" : {
            "$ref" : "persons.json#"
          }
        } ],
        "additionalProperties" : false,
        "required" : [ "id" ]
      }, {
        "type" : "object",
        "maxProperties" : 0
      } ]
    },
    "lineItems" : {
      "title" : "Line Items",
      "description" : "The individual line items associated with an invoice.",
      "type" : "array",
      "minItems" : 1,
      "items" : {
        "type" : "object",
        "properties" : {
          "referenceDocument" : {
            "title" : "Reference Document",
            "description" : "The originating document associated with the line item, which indicates what encumbrance needs to be relieved.",
            "oneOf" : [ {
              "title" : "Purchase Order",
              "description" : "The originating purchase order associated with the line item.",
              "type" : "object",
              "properties" : {
                "purchaseOrder" : {
                  "title" : "Purchase Order",
                  "description" : "The originating purchase order associated with the line item.",
                  "type" : "object",
                  "properties" : {
                    "id" : {
                      "title" : "ID",
                      "description" : "The global identifier for the Purchase Order.",
                      "type" : "string",
                      "format" : "guid",
                      "pattern" : "^[a-f0-9]{8}(?:-[a-f0-9]{4}){3}-[a-f0-9]{12}$"
                    }
                  },
                  "links" : [ {
                    "rel" : "self",
                    "href" : "/purchase-orders/{id}",
                    "targetSchema" : {
                      "$ref" : "purchase-orders.json#"
                    }
                  } ],
                  "additionalProperties" : false,
                  "required" : [ "id" ]
                }
              },
              "additionalProperties" : false,
              "required" : [ "purchaseOrder" ]
            }, {
              "title" : "Blanket Purchase Order",
              "description" : "The originating blanket purchase order associated with the line item.",
              "type" : "object",
              "properties" : {
                "blanketPurchaseOrder" : {
                  "title" : "Blanket Purchase Order",
                  "description" : "The originating blanket purchase order associated with the line item.",
                  "type" : "object",
                  "properties" : {
                    "id" : {
                      "title" : "ID",
                      "description" : "The global identifier for the Blanket Purchase Order.",
                      "type" : "string",
                      "format" : "guid",
                      "pattern" : "^[a-f0-9]{8}(?:-[a-f0-9]{4}){3}-[a-f0-9]{12}$"
                    }
                  },
                  "links" : [ {
                    "rel" : "self",
                    "href" : "/blanket-purchase-orders/{id}",
                    "targetSchema" : {
                      "$ref" : "blanket-purchase-orders.json#"
                    }
                  } ],
                  "additionalProperties" : false,
                  "required" : [ "id" ]
                }
              },
              "additionalProperties" : false,
              "required" : [ "blanketPurchaseOrder" ]
            }, {
              "title" : "Recurring Voucher",
              "description" : "The originating recurring voucher associated with the line item.",
              "type" : "object",
              "properties" : {
                "recurringVoucher" : {
                  "title" : "Recurring Voucher",
                  "description" : "The originating recurring voucher associated with the line item.",
                  "type" : "string",
                  "minLength" : 1
                }
              },
              "additionalProperties" : false,
              "required" : [ "recurringVoucher" ]
            }, {
              "title" : "Purchasing Arrangement",
              "description" : "The originating purchasing arrangement associated with the line item.",
              "type" : "object",
              "properties" : {
                "purchasingArrangement" : {
                  "title" : "Purchasing Arrangement",
                  "description" : "The originating purchasing arrangement associated with the line item.",
                  "type" : "object",
                  "properties" : {
                    "id" : {
                      "title" : "ID",
                      "description" : "The global identifier for the Purchasing Arrangement.",
                      "type" : "string",
                      "format" : "guid",
                      "pattern" : "^[a-f0-9]{8}(?:-[a-f0-9]{4}){3}-[a-f0-9]{12}$"
                    }
                  },
                  "links" : [ {
                    "rel" : "self",
                    "href" : "/purchasing-arrangements/{id}",
                    "targetSchema" : {
                      "$ref" : "purchasing-arrangements.json#"
                    }
                  } ],
                  "additionalProperties" : false,
                  "required" : [ "id" ]
                }
              },
              "additionalProperties" : false,
              "required" : [ "purchasingArrangement" ]
            }, {
              "type" : "object",
              "maxProperties" : 0
            } ]
          },
          "referenceDocumentLineItemNumber" : {
            "title" : "Reference Document Line Item Number",
            "description" : "The reference document line item number associated with the invoice.",
            "type" : "string"
          },
          "lineItemNumber" : {
            "title" : "Line Item Number",
            "description" : "A system generated number to identify the line item.",
            "type" : "string"
          },
          "description" : {
            "title" : "Description",
            "description" : "The description of the line item.",
            "type" : "string",
            "minLength" : 1
          },
          "commodityCode" : {
            "title" : "Commodity Code",
            "description" : "The commodity specified by the line item.",
            "oneOf" : [ {
              "type" : "object",
              "properties" : {
                "id" : {
                  "title" : "ID",
                  "description" : "The global identifier for the Commodity Code.",
                  "type" : "string",
                  "format" : "guid",
                  "pattern" : "^[a-f0-9]{8}(?:-[a-f0-9]{4}){3}-[a-f0-9]{12}$"
                }
              },
              "links" : [ {
                "rel" : "self",
                "href" : "/commodity-codes/{id}",
                "targetSchema" : {
                  "$ref" : "commodity-codes.json#"
                }
              } ],
              "additionalProperties" : false,
              "required" : [ "id" ]
            }, {
              "type" : "object",
              "maxProperties" : 0
            } ]
          },
          "quantity" : {
            "title" : "Quantity",
            "description" : "The number of units specified for the line item.",
            "type" : "number"
          },
          "vendorBilledQuantity" : {
            "title" : "Vendor Billed Quantity",
            "description" : "The number of units for the line item as specified by the vendor.",
            "oneOf" : [ {
              "type" : "number"
            }, {
              "type" : "null"
            } ]
          },
          "unitOfMeasure" : {
            "title" : "Unit of Measure",
            "description" : "The unit of measure used for the line item.",
            "oneOf" : [ {
              "type" : "object",
              "properties" : {
                "id" : {
                  "title" : "ID",
                  "description" : "The global identifier for the Unit of Measure.",
                  "type" : "string",
                  "format" : "guid",
                  "pattern" : "^[a-f0-9]{8}(?:-[a-f0-9]{4}){3}-[a-f0-9]{12}$"
                }
              },
              "links" : [ {
                "rel" : "self",
                "href" : "/commodity-unit-types/{id}",
                "targetSchema" : {
                  "$ref" : "commodity-unit-types.json#"
                }
              } ],
              "additionalProperties" : false,
              "required" : [ "id" ]
            }, {
              "type" : "object",
              "maxProperties" : 0
            } ]
          },
          "unitPrice" : {
            "title" : "Unit Price",
            "description" : "The price per unit for the commodity specified for the line item.",
            "format" : "currency",
            "type" : "object",
            "properties" : {
              "value" : {
                "title" : "Value",
                "description" : "The monetary value",
                "type" : "number"
              },
              "currency" : {
                "title" : "Currency",
                "description" : "The ISO 4217 currency code",
                "enum" : [ "AED", "AFN", "ALL", "AMD", "ANG", "AOA", "ARS", "AUD", "AWG", "AZN", "BAM", "BBD", "BDT", "BGN", "BHD", "BIF", "BMD", "BND", "BOB", "BRL", "BSD", "BTN", "BWP", "BYR", "BZD", "CAD", "CDF", "CHF", "CLP", "CNY", "COP", "CRC", "CUC", "CUP", "CVE", "CZK", "DJF", "DKK", "DOP", "DZD", "EGP", "ERN", "ETB", "EUR", "FJD", "FKP", "GBP", "GEL", "GHS", "GIP", "GMD", "GNF", "GTQ", "GYD", "HKD", "HNL", "HRK", "HTG", "HUF", "IDR", "ILS", "INR", "IQD", "IRR", "ISK", "JMD", "JOD", "JPY", "KES", "KGS", "KHR", "KMF", "KPW", "KRW", "KWD", "KYD", "KZT", "LAK", "LBP", "LKR", "LRD", "LSL", "LYD", "MAD", "MDL", "MGA", "MKD", "MMK", "MNT", "MOP", "MRO", "MUR", "MVR", "MWK", "MXN", "MYR", "MZN", "NAD", "NGN", "NIO", "NOK", "NPR", "NZD", "OMR", "PAB", "PEN", "PGK", "PHP", "PKR", "PLN", "PYG", "QAR", "RON", "RSD", "RUB", "RWF", "SAR", "SBD", "SCR", "SDG", "SEK", "SGD", "SHP", "SLL", "SOS", "SRD", "SSP", "STD", "SVC", "SYP", "SZL", "THB", "TJS", "TMT", "TND", "TOP", "TRY", "TTD", "TWD", "TZS", "UAH", "UGX", "USD", "UYU", "UZS", "VEF", "VND", "VUV", "WST", "XAF", "XCD", "XOF", "XPF", "YER", "ZAR", "ZMW", "ZWL" ],
                "type" : "string"
              }
            },
            "additionalProperties" : false,
            "required" : [ "value", "currency" ]
          },
          "vendorBilledUnitPrice" : {
            "title" : "Vendor Billed Unit Price",
            "description" : "The price per unit for the commodity specified for the line item as specified by the vendor.",
            "oneOf" : [ {
              "type" : "object",
              "format" : "currency",
              "properties" : {
                "value" : {
                  "title" : "Value",
                  "description" : "The monetary value",
                  "type" : "number"
                },
                "currency" : {
                  "title" : "Currency",
                  "description" : "The ISO 4217 currency code",
                  "enum" : [ "AED", "AFN", "ALL", "AMD", "ANG", "AOA", "ARS", "AUD", "AWG", "AZN", "BAM", "BBD", "BDT", "BGN", "BHD", "BIF", "BMD", "BND", "BOB", "BRL", "BSD", "BTN", "BWP", "BYR", "BZD", "CAD", "CDF", "CHF", "CLP", "CNY", "COP", "CRC", "CUC", "CUP", "CVE", "CZK", "DJF", "DKK", "DOP", "DZD", "EGP", "ERN", "ETB", "EUR", "FJD", "FKP", "GBP", "GEL", "GHS", "GIP", "GMD", "GNF", "GTQ", "GYD", "HKD", "HNL", "HRK", "HTG", "HUF", "IDR", "ILS", "INR", "IQD", "IRR", "ISK", "JMD", "JOD", "JPY", "KES", "KGS", "KHR", "KMF", "KPW", "KRW", "KWD", "KYD", "KZT", "LAK", "LBP", "LKR", "LRD", "LSL", "LYD", "MAD", "MDL", "MGA", "MKD", "MMK", "MNT", "MOP", "MRO", "MUR", "MVR", "MWK", "MXN", "MYR", "MZN", "NAD", "NGN", "NIO", "NOK", "NPR", "NZD", "OMR", "PAB", "PEN", "PGK", "PHP", "PKR", "PLN", "PYG", "QAR", "RON", "RSD", "RUB", "RWF", "SAR", "SBD", "SCR", "SDG", "SEK", "SGD", "SHP", "SLL", "SOS", "SRD", "SSP", "STD", "SVC", "SYP", "SZL", "THB", "TJS", "TMT", "TND", "TOP", "TRY", "TTD", "TWD", "TZS", "UAH", "UGX", "USD", "UYU", "UZS", "VEF", "VND", "VUV", "WST", "XAF", "XCD", "XOF", "XPF", "YER", "ZAR", "ZMW", "ZWL" ],
                  "type" : "string"
                }
              },
              "additionalProperties" : false,
              "required" : [ "value", "currency" ]
            }, {
              "type" : "object",
              "maxProperties" : 0
            } ]
          },
          "additionalAmount" : {
            "title" : "Additional Amount",
            "description" : "Additional charges/discounts applied to the line item (e.g. freight)",
            "oneOf" : [ {
              "type" : "object",
              "format" : "currency",
              "properties" : {
                "value" : {
                  "title" : "Value",
                  "description" : "The monetary value",
                  "type" : "number"
                },
                "currency" : {
                  "title" : "Currency",
                  "description" : "The ISO 4217 currency code",
                  "enum" : [ "AED", "AFN", "ALL", "AMD", "ANG", "AOA", "ARS", "AUD", "AWG", "AZN", "BAM", "BBD", "BDT", "BGN", "BHD", "BIF", "BMD", "BND", "BOB", "BRL", "BSD", "BTN", "BWP", "BYR", "BZD", "CAD", "CDF", "CHF", "CLP", "CNY", "COP", "CRC", "CUC", "CUP", "CVE", "CZK", "DJF", "DKK", "DOP", "DZD", "EGP", "ERN", "ETB", "EUR", "FJD", "FKP", "GBP", "GEL", "GHS", "GIP", "GMD", "GNF", "GTQ", "GYD", "HKD", "HNL", "HRK", "HTG", "HUF", "IDR", "ILS", "INR", "IQD", "IRR", "ISK", "JMD", "JOD", "JPY", "KES", "KGS", "KHR", "KMF", "KPW", "KRW", "KWD", "KYD", "KZT", "LAK", "LBP", "LKR", "LRD", "LSL", "LYD", "MAD", "MDL", "MGA", "MKD", "MMK", "MNT", "MOP", "MRO", "MUR", "MVR", "MWK", "MXN", "MYR", "MZN", "NAD", "NGN", "NIO", "NOK", "NPR", "NZD", "OMR", "PAB", "PEN", "PGK", "PHP", "PKR", "PLN", "PYG", "QAR", "RON", "RSD", "RUB", "RWF", "SAR", "SBD", "SCR", "SDG", "SEK", "SGD", "SHP", "SLL", "SOS", "SRD", "SSP", "STD", "SVC", "SYP", "SZL", "THB", "TJS", "TMT", "TND", "TOP", "TRY", "TTD", "TWD", "TZS", "UAH", "UGX", "USD", "UYU", "UZS", "VEF", "VND", "VUV", "WST", "XAF", "XCD", "XOF", "XPF", "YER", "ZAR", "ZMW", "ZWL" ],
                  "type" : "string"
                }
              },
              "additionalProperties" : false,
              "required" : [ "value", "currency" ]
            }, {
              "type" : "object",
              "maxProperties" : 0
            } ]
          },
          "taxes" : {
            "title" : "Taxes",
            "description" : "The taxes that are applicable to the line item if different from the invoice.",
            "type" : "array",
            "minItems" : 0,
            "items" : {
              "type" : "object",
              "properties" : {
                "taxCode" : {
                  "title" : "Tax Code",
                  "description" : "A tax code that applies to the line item.",
                  "type" : "object",
                  "properties" : {
                    "id" : {
                      "title" : "ID",
                      "description" : "The global identifier for the Tax Code.",
                      "type" : "string",
                      "format" : "guid",
                      "pattern" : "^[a-f0-9]{8}(?:-[a-f0-9]{4}){3}-[a-f0-9]{12}$"
                    }
                  },
                  "links" : [ {
                    "rel" : "self",
                    "href" : "/commerce-tax-codes/{id}",
                    "targetSchema" : {
                      "$ref" : "commerce-tax-codes.json#"
                    }
                  } ],
                  "additionalProperties" : false,
                  "required" : [ "id" ]
                },
                "vendorAmount" : {
                  "title" : "Vendor Amount",
                  "description" : "The amount of taxes for the line item based on the tax code as specified by the vendor.",
                  "oneOf" : [ {
                    "type" : "object",
                    "format" : "currency",
                    "properties" : {
                      "value" : {
                        "title" : "Value",
                        "description" : "The monetary value",
                        "type" : "number"
                      },
                      "currency" : {
                        "title" : "Currency",
                        "description" : "The ISO 4217 currency code",
                        "enum" : [ "AED", "AFN", "ALL", "AMD", "ANG", "AOA", "ARS", "AUD", "AWG", "AZN", "BAM", "BBD", "BDT", "BGN", "BHD", "BIF", "BMD", "BND", "BOB", "BRL", "BSD", "BTN", "BWP", "BYR", "BZD", "CAD", "CDF", "CHF", "CLP", "CNY", "COP", "CRC", "CUC", "CUP", "CVE", "CZK", "DJF", "DKK", "DOP", "DZD", "EGP", "ERN", "ETB", "EUR", "FJD", "FKP", "GBP", "GEL", "GHS", "GIP", "GMD", "GNF", "GTQ", "GYD", "HKD", "HNL", "HRK", "HTG", "HUF", "IDR", "ILS", "INR", "IQD", "IRR", "ISK", "JMD", "JOD", "JPY", "KES", "KGS", "KHR", "KMF", "KPW", "KRW", "KWD", "KYD", "KZT", "LAK", "LBP", "LKR", "LRD", "LSL", "LYD", "MAD", "MDL", "MGA", "MKD", "MMK", "MNT", "MOP", "MRO", "MUR", "MVR", "MWK", "MXN", "MYR", "MZN", "NAD", "NGN", "NIO", "NOK", "NPR", "NZD", "OMR", "PAB", "PEN", "PGK", "PHP", "PKR", "PLN", "PYG", "QAR", "RON", "RSD", "RUB", "RWF", "SAR", "SBD", "SCR", "SDG", "SEK", "SGD", "SHP", "SLL", "SOS", "SRD", "SSP", "STD", "SVC", "SYP", "SZL", "THB", "TJS", "TMT", "TND", "TOP", "TRY", "TTD", "TWD", "TZS", "UAH", "UGX", "USD", "UYU", "UZS", "VEF", "VND", "VUV", "WST", "XAF", "XCD", "XOF", "XPF", "YER", "ZAR", "ZMW", "ZWL" ],
                        "type" : "string"
                      }
                    },
                    "additionalProperties" : false,
                    "required" : [ "value", "currency" ]
                  }, {
                    "type" : "object",
                    "maxProperties" : 0
                  } ]
                }
              },
              "additionalProperties" : false,
              "required" : [ "taxCode" ]
            }
          },
          "discount" : {
            "title" : "Discount",
            "description" : "The discount applied to the line item (e.g. trade/volume discounts).",
            "type" : "object",
            "properties" : {
              "amount" : {
                "title" : "Amount",
                "description" : "The amount of the discount for the line item, if specified.",
                "oneOf" : [ {
                  "type" : "object",
                  "format" : "currency",
                  "properties" : {
                    "value" : {
                      "title" : "Value",
                      "description" : "The monetary value",
                      "type" : "number"
                    },
                    "currency" : {
                      "title" : "Currency",
                      "description" : "The ISO 4217 currency code",
                      "enum" : [ "AED", "AFN", "ALL", "AMD", "ANG", "AOA", "ARS", "AUD", "AWG", "AZN", "BAM", "BBD", "BDT", "BGN", "BHD", "BIF", "BMD", "BND", "BOB", "BRL", "BSD", "BTN", "BWP", "BYR", "BZD", "CAD", "CDF", "CHF", "CLP", "CNY", "COP", "CRC", "CUC", "CUP", "CVE", "CZK", "DJF", "DKK", "DOP", "DZD", "EGP", "ERN", "ETB", "EUR", "FJD", "FKP", "GBP", "GEL", "GHS", "GIP", "GMD", "GNF", "GTQ", "GYD", "HKD", "HNL", "HRK", "HTG", "HUF", "IDR", "ILS", "INR", "IQD", "IRR", "ISK", "JMD", "JOD", "JPY", "KES", "KGS", "KHR", "KMF", "KPW", "KRW", "KWD", "KYD", "KZT", "LAK", "LBP", "LKR", "LRD", "LSL", "LYD", "MAD", "MDL", "MGA", "MKD", "MMK", "MNT", "MOP", "MRO", "MUR", "MVR", "MWK", "MXN", "MYR", "MZN", "NAD", "NGN", "NIO", "NOK", "NPR", "NZD", "OMR", "PAB", "PEN", "PGK", "PHP", "PKR", "PLN", "PYG", "QAR", "RON", "RSD", "RUB", "RWF", "SAR", "SBD", "SCR", "SDG", "SEK", "SGD", "SHP", "SLL", "SOS", "SRD", "SSP", "STD", "SVC", "SYP", "SZL", "THB", "TJS", "TMT", "TND", "TOP", "TRY", "TTD", "TWD", "TZS", "UAH", "UGX", "USD", "UYU", "UZS", "VEF", "VND", "VUV", "WST", "XAF", "XCD", "XOF", "XPF", "YER", "ZAR", "ZMW", "ZWL" ],
                      "type" : "string"
                    }
                  },
                  "additionalProperties" : false,
                  "required" : [ "value", "currency" ]
                }, {
                  "type" : "object",
                  "maxProperties" : 0
                } ]
              },
              "percent" : {
                "title" : "Percent",
                "description" : "The discount percentage applied to the line item, if specified.",
                "oneOf" : [ {
                  "type" : "number"
                }, {
                  "type" : "null"
                } ]
              }
            },
            "additionalProperties" : false
          },
          "paymentStatus" : {
            "title" : "Payment Status",
            "description" : "An indication if payment for the the line item is on hold.",
            "enum" : [ "hold", "noHold" ],
            "type" : "string"
          },
          "encumbranceStatus" : {
            "title" : "Encumbrance Status",
            "description" : "An indicator specifying if the encumbrance for the line item should be liquidated in full (final payment).",
            "oneOf" : [ {
              "type" : "string",
              "enum" : [ "finalPayment" ]
            }, {
              "type" : "string",
              "maxLength" : 0
            } ]
          },
          "comment" : {
            "title" : "Comment",
            "description" : "Additional comment associated with the line item.",
            "type" : "string"
          },
          "status" : {
            "title" : "Status",
            "description" : "The status of the line item (open, closed).",
            "enum" : [ "open", "closed" ],
            "type" : "string"
          },
          "accountDetails" : {
            "title" : "Account Details",
            "description" : "The detail account information for the line item.",
            "type" : "array",
            "minItems" : 1,
            "items" : {
              "type" : "object",
              "properties" : {
                "sequenceNumber" : {
                  "title" : "Sequence Number",
                  "description" : "The sequence number associated with the account detail item.",
                  "oneOf" : [ {
                    "type" : "number"
                  }, {
                    "type" : "null"
                  } ]
                },
                "accountingString" : {
                  "title" : "Accounting String",
                  "description" : "The accounting string associated with the account detail item.",
                  "type" : "string",
                  "minLength" : 1
                },
                "allocation" : {
                  "title" : "Allocation",
                  "description" : "The allocation of line item values to the accounting string.",
                  "type" : "object",
                  "properties" : {
                    "allocated" : {
                      "title" : "Allocated",
                      "description" : "The portion (or percentage) of the line item amount or quantity allocated to the accounting string. (One of amount, quantity or percent must be specified)",
                      "type" : "object",
                      "properties" : {
                        "amount" : {
                          "title" : "Amount",
                          "description" : "The amount allocated to the accounting string.",
                          "oneOf" : [ {
                            "type" : "object",
                            "format" : "currency",
                            "properties" : {
                              "value" : {
                                "title" : "Value",
                                "description" : "The monetary value",
                                "type" : "number"
                              },
                              "currency" : {
                                "title" : "Currency",
                                "description" : "The ISO 4217 currency code",
                                "enum" : [ "AED", "AFN", "ALL", "AMD", "ANG", "AOA", "ARS", "AUD", "AWG", "AZN", "BAM", "BBD", "BDT", "BGN", "BHD", "BIF", "BMD", "BND", "BOB", "BRL", "BSD", "BTN", "BWP", "BYR", "BZD", "CAD", "CDF", "CHF", "CLP", "CNY", "COP", "CRC", "CUC", "CUP", "CVE", "CZK", "DJF", "DKK", "DOP", "DZD", "EGP", "ERN", "ETB", "EUR", "FJD", "FKP", "GBP", "GEL", "GHS", "GIP", "GMD", "GNF", "GTQ", "GYD", "HKD", "HNL", "HRK", "HTG", "HUF", "IDR", "ILS", "INR", "IQD", "IRR", "ISK", "JMD", "JOD", "JPY", "KES", "KGS", "KHR", "KMF", "KPW", "KRW", "KWD", "KYD", "KZT", "LAK", "LBP", "LKR", "LRD", "LSL", "LYD", "MAD", "MDL", "MGA", "MKD", "MMK", "MNT", "MOP", "MRO", "MUR", "MVR", "MWK", "MXN", "MYR", "MZN", "NAD", "NGN", "NIO", "NOK", "NPR", "NZD", "OMR", "PAB", "PEN", "PGK", "PHP", "PKR", "PLN", "PYG", "QAR", "RON", "RSD", "RUB", "RWF", "SAR", "SBD", "SCR", "SDG", "SEK", "SGD", "SHP", "SLL", "SOS", "SRD", "SSP", "STD", "SVC", "SYP", "SZL", "THB", "TJS", "TMT", "TND", "TOP", "TRY", "TTD", "TWD", "TZS", "UAH", "UGX", "USD", "UYU", "UZS", "VEF", "VND", "VUV", "WST", "XAF", "XCD", "XOF", "XPF", "YER", "ZAR", "ZMW", "ZWL" ],
                                "type" : "string"
                              }
                            },
                            "additionalProperties" : false,
                            "required" : [ "value", "currency" ]
                          }, {
                            "type" : "object",
                            "maxProperties" : 0
                          } ]
                        },
                        "quantity" : {
                          "title" : "Quantity",
                          "description" : "The quantity allocated to the accounting string.",
                          "oneOf" : [ {
                            "type" : "number"
                          }, {
                            "type" : "null"
                          } ]
                        },
                        "percentage" : {
                          "title" : "Percentage",
                          "description" : "The percentage of the line item amount allocated to the accounting string.",
                          "oneOf" : [ {
                            "type" : "number"
                          }, {
                            "type" : "null"
                          } ]
                        }
                      },
                      "additionalProperties" : false,
                      "minProperties" : 1
                    },
                    "taxAmount" : {
                      "title" : "Tax Amount",
                      "description" : "The tax amount associated with the accounting string - overrides the distributed line amounts, if specified.",
                      "oneOf" : [ {
                        "type" : "object",
                        "format" : "currency",
                        "properties" : {
                          "value" : {
                            "title" : "Value",
                            "description" : "The monetary value",
                            "type" : "number"
                          },
                          "currency" : {
                            "title" : "Currency",
                            "description" : "The ISO 4217 currency code",
                            "enum" : [ "AED", "AFN", "ALL", "AMD", "ANG", "AOA", "ARS", "AUD", "AWG", "AZN", "BAM", "BBD", "BDT", "BGN", "BHD", "BIF", "BMD", "BND", "BOB", "BRL", "BSD", "BTN", "BWP", "BYR", "BZD", "CAD", "CDF", "CHF", "CLP", "CNY", "COP", "CRC", "CUC", "CUP", "CVE", "CZK", "DJF", "DKK", "DOP", "DZD", "EGP", "ERN", "ETB", "EUR", "FJD", "FKP", "GBP", "GEL", "GHS", "GIP", "GMD", "GNF", "GTQ", "GYD", "HKD", "HNL", "HRK", "HTG", "HUF", "IDR", "ILS", "INR", "IQD", "IRR", "ISK", "JMD", "JOD", "JPY", "KES", "KGS", "KHR", "KMF", "KPW", "KRW", "KWD", "KYD", "KZT", "LAK", "LBP", "LKR", "LRD", "LSL", "LYD", "MAD", "MDL", "MGA", "MKD", "MMK", "MNT", "MOP", "MRO", "MUR", "MVR", "MWK", "MXN", "MYR", "MZN", "NAD", "NGN", "NIO", "NOK", "NPR", "NZD", "OMR", "PAB", "PEN", "PGK", "PHP", "PKR", "PLN", "PYG", "QAR", "RON", "RSD", "RUB", "RWF", "SAR", "SBD", "SCR", "SDG", "SEK", "SGD", "SHP", "SLL", "SOS", "SRD", "SSP", "STD", "SVC", "SYP", "SZL", "THB", "TJS", "TMT", "TND", "TOP", "TRY", "TTD", "TWD", "TZS", "UAH", "UGX", "USD", "UYU", "UZS", "VEF", "VND", "VUV", "WST", "XAF", "XCD", "XOF", "XPF", "YER", "ZAR", "ZMW", "ZWL" ],
                            "type" : "string"
                          }
                        },
                        "additionalProperties" : false,
                        "required" : [ "value", "currency" ]
                      }, {
                        "type" : "object",
                        "maxProperties" : 0
                      } ]
                    },
                    "additionalAmount" : {
                      "title" : "Additional Amount",
                      "description" : "Additional charges applied to the accounting string (e.g. freight) - overrides the distributed line item amounts, if specified.",
                      "oneOf" : [ {
                        "type" : "object",
                        "format" : "currency",
                        "properties" : {
                          "value" : {
                            "title" : "Value",
                            "description" : "The monetary value",
                            "type" : "number"
                          },
                          "currency" : {
                            "title" : "Currency",
                            "description" : "The ISO 4217 currency code",
                            "enum" : [ "AED", "AFN", "ALL", "AMD", "ANG", "AOA", "ARS", "AUD", "AWG", "AZN", "BAM", "BBD", "BDT", "BGN", "BHD", "BIF", "BMD", "BND", "BOB", "BRL", "BSD", "BTN", "BWP", "BYR", "BZD", "CAD", "CDF", "CHF", "CLP", "CNY", "COP", "CRC", "CUC", "CUP", "CVE", "CZK", "DJF", "DKK", "DOP", "DZD", "EGP", "ERN", "ETB", "EUR", "FJD", "FKP", "GBP", "GEL", "GHS", "GIP", "GMD", "GNF", "GTQ", "GYD", "HKD", "HNL", "HRK", "HTG", "HUF", "IDR", "ILS", "INR", "IQD", "IRR", "ISK", "JMD", "JOD", "JPY", "KES", "KGS", "KHR", "KMF", "KPW", "KRW", "KWD", "KYD", "KZT", "LAK", "LBP", "LKR", "LRD", "LSL", "LYD", "MAD", "MDL", "MGA", "MKD", "MMK", "MNT", "MOP", "MRO", "MUR", "MVR", "MWK", "MXN", "MYR", "MZN", "NAD", "NGN", "NIO", "NOK", "NPR", "NZD", "OMR", "PAB", "PEN", "PGK", "PHP", "PKR", "PLN", "PYG", "QAR", "RON", "RSD", "RUB", "RWF", "SAR", "SBD", "SCR", "SDG", "SEK", "SGD", "SHP", "SLL", "SOS", "SRD", "SSP", "STD", "SVC", "SYP", "SZL", "THB", "TJS", "TMT", "TND", "TOP", "TRY", "TTD", "TWD", "TZS", "UAH", "UGX", "USD", "UYU", "UZS", "VEF", "VND", "VUV", "WST", "XAF", "XCD", "XOF", "XPF", "YER", "ZAR", "ZMW", "ZWL" ],
                            "type" : "string"
                          }
                        },
                        "additionalProperties" : false,
                        "required" : [ "value", "currency" ]
                      }, {
                        "type" : "object",
                        "maxProperties" : 0
                      } ]
                    },
                    "discountAmount" : {
                      "title" : "Discount Amount",
                      "description" : "The discount amount associated with the accounting string - overrides the distributed line amounts, if specified.",
                      "oneOf" : [ {
                        "type" : "object",
                        "format" : "currency",
                        "properties" : {
                          "value" : {
                            "title" : "Value",
                            "description" : "The monetary value",
                            "type" : "number"
                          },
                          "currency" : {
                            "title" : "Currency",
                            "description" : "The ISO 4217 currency code",
                            "enum" : [ "AED", "AFN", "ALL", "AMD", "ANG", "AOA", "ARS", "AUD", "AWG", "AZN", "BAM", "BBD", "BDT", "BGN", "BHD", "BIF", "BMD", "BND", "BOB", "BRL", "BSD", "BTN", "BWP", "BYR", "BZD", "CAD", "CDF", "CHF", "CLP", "CNY", "COP", "CRC", "CUC", "CUP", "CVE", "CZK", "DJF", "DKK", "DOP", "DZD", "EGP", "ERN", "ETB", "EUR", "FJD", "FKP", "GBP", "GEL", "GHS", "GIP", "GMD", "GNF", "GTQ", "GYD", "HKD", "HNL", "HRK", "HTG", "HUF", "IDR", "ILS", "INR", "IQD", "IRR", "ISK", "JMD", "JOD", "JPY", "KES", "KGS", "KHR", "KMF", "KPW", "KRW", "KWD", "KYD", "KZT", "LAK", "LBP", "LKR", "LRD", "LSL", "LYD", "MAD", "MDL", "MGA", "MKD", "MMK", "MNT", "MOP", "MRO", "MUR", "MVR", "MWK", "MXN", "MYR", "MZN", "NAD", "NGN", "NIO", "NOK", "NPR", "NZD", "OMR", "PAB", "PEN", "PGK", "PHP", "PKR", "PLN", "PYG", "QAR", "RON", "RSD", "RUB", "RWF", "SAR", "SBD", "SCR", "SDG", "SEK", "SGD", "SHP", "SLL", "SOS", "SRD", "SSP", "STD", "SVC", "SYP", "SZL", "THB", "TJS", "TMT", "TND", "TOP", "TRY", "TTD", "TWD", "TZS", "UAH", "UGX", "USD", "UYU", "UZS", "VEF", "VND", "VUV", "WST", "XAF", "XCD", "XOF", "XPF", "YER", "ZAR", "ZMW", "ZWL" ],
                            "type" : "string"
                          }
                        },
                        "additionalProperties" : false,
                        "required" : [ "value", "currency" ]
                      }, {
                        "type" : "object",
                        "maxProperties" : 0
                      } ]
                    }
                  },
                  "additionalProperties" : false,
                  "required" : [ "allocated" ]
                },
                "source" : {
                  "title" : "Source",
                  "description" : "The source account for the payment to the accounting string if different from the source specified for the invoice.",
                  "oneOf" : [ {
                    "type" : "object",
                    "properties" : {
                      "id" : {
                        "title" : "ID",
                        "description" : "The global identifier for the Source.",
                        "type" : "string",
                        "format" : "guid",
                        "pattern" : "^[a-f0-9]{8}(?:-[a-f0-9]{4}){3}-[a-f0-9]{12}$"
                      }
                    },
                    "links" : [ {
                      "rel" : "self",
                      "href" : "/accounts-payable-sources/{id}",
                      "targetSchema" : {
                        "$ref" : "accounts-payable-sources.json#"
                      }
                    } ],
                    "additionalProperties" : false,
                    "required" : [ "id" ]
                  }, {
                    "type" : "object",
                    "maxProperties" : 0
                  } ]
                },
                "budgetCheck" : {
                  "title" : "Budget Check",
                  "description" : "An indication that budget checking should be overridden for the accounting string.",
                  "oneOf" : [ {
                    "type" : "string",
                    "enum" : [ "override" ]
                  }, {
                    "type" : "string",
                    "maxLength" : 0
                  } ]
                },
                "submittedBy" : {
                  "title" : "Submitted By",
                  "description" : "The person who made the submit request for the line item.",
                  "oneOf" : [ {
                    "type" : "object",
                    "properties" : {
                      "id" : {
                        "title" : "ID",
                        "description" : "The global identifier for the Submitted By.",
                        "type" : "string",
                        "format" : "guid",
                        "pattern" : "^[a-f0-9]{8}(?:-[a-f0-9]{4}){3}-[a-f0-9]{12}$"
                      }
                    },
                    "links" : [ {
                      "rel" : "self",
                      "href" : "/persons/{id}",
                      "targetSchema" : {
                        "$ref" : "persons.json#"
                      }
                    } ],
                    "additionalProperties" : false,
                    "required" : [ "id" ]
                  }, {
                    "type" : "object",
                    "maxProperties" : 0
                  } ]
                }
              },
              "additionalProperties" : false,
              "required" : [ "accountingString", "allocation" ]
            }
          }
        },
        "additionalProperties" : false,
        "required" : [ "description", "quantity", "unitPrice", "paymentStatus", "status", "accountDetails" ]
      }
    }
  },
  "required" : [ "id", "vendor", "transactionDate", "processState", "paymentStatus", "payment", "lineItems" ],
  "additionalProperties" : false
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy