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

eedm.external-contributions.v17.0.0.external-contributions.json Maven / Gradle / Ivy

{
  "title" : "External Contributions",
  "description" : "Contributions made through a third party system.",
  "version" : "17.0.0",
  "type" : "object",
  "properties" : {
    "metadata" : {
      "$ref" : "resource:/eedm/metadata.json"
    },
    "id" : {
      "title" : "ID",
      "description" : "The global identifier of the External Contribution.",
      "type" : "string",
      "format" : "guid",
      "pattern" : "^[a-f0-9]{8}(?:-[a-f0-9]{4}){3}-[a-f0-9]{12}$"
    },
    "contributionType" : {
      "title" : "Contribution Type",
      "description" : "The type of contribution (donation, pledge, pledge payment, recurring donation, or membership dues payment).",
      "enum" : [ "donation", "pledge", "pledgePayment", "recurringDonation", "membershipDuesPayment" ],
      "type" : "string"
    },
    "amount" : {
      "title" : "Amount",
      "description" : "The amount of the contribution.",
      "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" ]
    },
    "contributedOn" : {
      "title" : "Contributed On",
      "description" : "The date of the contribution.",
      "type" : "string",
      "format" : "date-time",
      "pattern" : "^(-?(?:[1-9][0-9]*)?[0-9]{4})-(1[0-2]|0[1-9])-(3[0-1]|0[1-9]|[1-2][0-9])T(2[0-3]|[0-1][0-9]):([0-5][0-9]):([0-5][0-9])(\\.[0-9]+)?(Z|[+-](?:2[0-3]|[0-1][0-9]):[0-5][0-9])?$"
    },
    "paymentFor" : {
      "title" : "Payment For",
      "description" : "The contribution or membership for which this contribution is a payment.",
      "oneOf" : [ {
        "title" : "contribution",
        "description" : "The contribution for which this contribution is a payment.",
        "type" : "object",
        "properties" : {
          "contribution" : {
            "title" : "Contribution",
            "description" : "The contribution for which this contribution is a payment.",
            "type" : "object",
            "properties" : {
              "id" : {
                "title" : "ID",
                "description" : "The global identifier for the Contribution.",
                "type" : "string",
                "format" : "guid",
                "pattern" : "^[a-f0-9]{8}(?:-[a-f0-9]{4}){3}-[a-f0-9]{12}$"
              }
            },
            "links" : [ {
              "rel" : "self",
              "href" : "/contributions/{id}",
              "targetSchema" : {
                "$ref" : "contributions.json#"
              }
            } ],
            "additionalProperties" : false,
            "required" : [ "id" ]
          }
        },
        "additionalProperties" : false,
        "required" : [ "contribution" ]
      }, {
        "title" : "membership",
        "description" : "The membership for which this contribution is a payment.",
        "type" : "object",
        "properties" : {
          "membership" : {
            "title" : "Membership",
            "description" : "The membership for which this contribution is a payment.",
            "type" : "object",
            "properties" : {
              "id" : {
                "title" : "ID",
                "description" : "The global identifier for the Membership.",
                "type" : "string",
                "format" : "guid",
                "pattern" : "^[a-f0-9]{8}(?:-[a-f0-9]{4}){3}-[a-f0-9]{12}$"
              }
            },
            "links" : [ {
              "rel" : "self",
              "href" : "/constituent-program-level-memberships/{id}",
              "targetSchema" : {
                "$ref" : "constituent-program-level-memberships.json#"
              }
            } ],
            "additionalProperties" : false,
            "required" : [ "id" ]
          }
        },
        "additionalProperties" : false,
        "required" : [ "membership" ]
      }, {
        "type" : "object",
        "maxProperties" : 0
      } ]
    },
    "allocations" : {
      "title" : "Allocations",
      "description" : "The allocation of the contribution to donors, designations, appeals and campaigns.",
      "type" : "array",
      "minItems" : 1,
      "items" : {
        "type" : "object",
        "properties" : {
          "donor" : {
            "title" : "Donor",
            "description" : "An allocated donor of the contribution.",
            "oneOf" : [ {
              "title" : "Unregistered",
              "description" : "An allocated donor who is not registered in the system.",
              "type" : "object",
              "properties" : {
                "unregistered" : {
                  "title" : "Unregistered",
                  "description" : "An allocated donor who is not registered in the system.",
                  "type" : "object",
                  "properties" : {
                    "name" : {
                      "title" : "Name",
                      "description" : "The name of the unregistered donor.",
                      "type" : "object",
                      "properties" : {
                        "title" : {
                          "title" : "Title",
                          "description" : "The title of the donor.",
                          "type" : "string"
                        },
                        "firstName" : {
                          "title" : "First Name",
                          "description" : "The first name of the donor.",
                          "type" : "string"
                        },
                        "middleName" : {
                          "title" : "Middle Name",
                          "description" : "The middle name of the donor.",
                          "type" : "string"
                        },
                        "lastName" : {
                          "title" : "Last Name",
                          "description" : "The last name of the donor.",
                          "type" : "string"
                        },
                        "pedigree" : {
                          "title" : "Pedigree",
                          "description" : "The pedigree of the donor.",
                          "type" : "string"
                        }
                      },
                      "additionalProperties" : false,
                      "required" : [ "lastName" ]
                    },
                    "address" : {
                      "title" : "Address",
                      "description" : "The address provided by the donor.",
                      "type" : "object",
                      "properties" : {
                        "addressLines" : {
                          "title" : "Address Lines",
                          "description" : "The lines of the address excluding city, state/province, postal/zip code, and country.",
                          "type" : "array",
                          "items" : {
                            "type" : "string"
                          }
                        },
                        "city" : {
                          "title" : "City",
                          "description" : "The city of the address.",
                          "type" : "string"
                        },
                        "stateProvince" : {
                          "title" : "State/Province",
                          "description" : "The state or province of the address.",
                          "type" : "string"
                        },
                        "postalCode" : {
                          "title" : "Postal Code",
                          "description" : "The postal code of the address.",
                          "type" : "string"
                        },
                        "country" : {
                          "title" : "Country",
                          "description" : "The country of the address.",
                          "type" : "string"
                        }
                      },
                      "additionalProperties" : false
                    },
                    "phone" : {
                      "title" : "Phone",
                      "description" : "The phone number provided by the donor.",
                      "type" : "object",
                      "properties" : {
                        "number" : {
                          "title" : "Number",
                          "description" : "The phone number.",
                          "type" : "string"
                        },
                        "extension" : {
                          "title" : "Extension",
                          "description" : "The extension number associated with the phone number.",
                          "type" : "string"
                        }
                      },
                      "additionalProperties" : false
                    },
                    "email" : {
                      "title" : "Email",
                      "description" : "The email address provided by the donor.",
                      "type" : "string"
                    }
                  },
                  "additionalProperties" : false,
                  "required" : [ "name" ]
                }
              },
              "additionalProperties" : false,
              "required" : [ "unregistered" ]
            }, {
              "title" : "Registered Person",
              "description" : "The person registered in the system who is associated with the allocation.",
              "type" : "object",
              "properties" : {
                "person" : {
                  "title" : "Person",
                  "description" : "The person registered in the system who is associated with the allocation.",
                  "type" : "object",
                  "properties" : {
                    "id" : {
                      "title" : "ID",
                      "description" : "The global identifier for the Person.",
                      "type" : "string",
                      "format" : "guid",
                      "pattern" : "^[a-f0-9]{8}(?:-[a-f0-9]{4}){3}-[a-f0-9]{12}$"
                    }
                  },
                  "links" : [ {
                    "rel" : "self",
                    "href" : "/constituent-persons/{id}",
                    "targetSchema" : {
                      "$ref" : "constituent-persons.json#"
                    }
                  } ],
                  "additionalProperties" : false,
                  "required" : [ "id" ]
                }
              },
              "additionalProperties" : false,
              "required" : [ "person" ]
            }, {
              "title" : "Registered Organization",
              "description" : "The organization registered in the system that is associated with the allocation.",
              "type" : "object",
              "properties" : {
                "organization" : {
                  "title" : "Organization",
                  "description" : "The organization registered in the system that is associated with the allocation.",
                  "type" : "object",
                  "properties" : {
                    "id" : {
                      "title" : "ID",
                      "description" : "The global identifier for the Organization.",
                      "type" : "string",
                      "format" : "guid",
                      "pattern" : "^[a-f0-9]{8}(?:-[a-f0-9]{4}){3}-[a-f0-9]{12}$"
                    }
                  },
                  "links" : [ {
                    "rel" : "self",
                    "href" : "/constituent-organizations/{id}",
                    "targetSchema" : {
                      "$ref" : "constituent-organizations.json#"
                    }
                  } ],
                  "additionalProperties" : false,
                  "required" : [ "id" ]
                }
              },
              "additionalProperties" : false,
              "required" : [ "organization" ]
            } ]
          },
          "donorAssociationType" : {
            "title" : "Donor Association Type",
            "description" : "The donor association type of the allocated donor.",
            "type" : "object",
            "properties" : {
              "id" : {
                "title" : "ID",
                "description" : "The global identifier for the Donor Association Type.",
                "type" : "string",
                "format" : "guid",
                "pattern" : "^[a-f0-9]{8}(?:-[a-f0-9]{4}){3}-[a-f0-9]{12}$"
              }
            },
            "links" : [ {
              "rel" : "self",
              "href" : "/donor-association-types/{id}",
              "targetSchema" : {
                "$ref" : "donor-association-types.json#"
              }
            } ],
            "additionalProperties" : false,
            "required" : [ "id" ]
          },
          "amount" : {
            "title" : "Amount",
            "description" : "The amount specified for the allocation of the contribution.",
            "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" ]
          },
          "designation" : {
            "title" : "Designation",
            "description" : "The designated use of the allocated portion of the contribution.",
            "type" : "object",
            "properties" : {
              "id" : {
                "title" : "ID",
                "description" : "The global identifier for the Designation.",
                "type" : "string",
                "format" : "guid",
                "pattern" : "^[a-f0-9]{8}(?:-[a-f0-9]{4}){3}-[a-f0-9]{12}$"
              }
            },
            "links" : [ {
              "rel" : "self",
              "href" : "/designations/{id}",
              "targetSchema" : {
                "$ref" : "designations.json#"
              }
            } ],
            "additionalProperties" : false,
            "required" : [ "id" ]
          },
          "appealCommunicationEffort" : {
            "title" : "Appeal Communication Effort",
            "description" : "The appeal communication effort associated with the allocation of the contribution.",
            "oneOf" : [ {
              "type" : "object",
              "properties" : {
                "id" : {
                  "title" : "ID",
                  "description" : "The global identifier for the Appeal Communication Effort.",
                  "type" : "string",
                  "format" : "guid",
                  "pattern" : "^[a-f0-9]{8}(?:-[a-f0-9]{4}){3}-[a-f0-9]{12}$"
                }
              },
              "links" : [ {
                "rel" : "self",
                "href" : "/communication-activity-efforts/{id}",
                "targetSchema" : {
                  "$ref" : "communication-activity-efforts.json#"
                }
              } ],
              "additionalProperties" : false,
              "required" : [ "id" ]
            }, {
              "type" : "object",
              "maxProperties" : 0
            } ]
          },
          "campaign" : {
            "title" : "Campaign",
            "description" : "The campaign associated with the allocation of the contribution.",
            "oneOf" : [ {
              "type" : "object",
              "properties" : {
                "id" : {
                  "title" : "ID",
                  "description" : "The global identifier for the Campaign.",
                  "type" : "string",
                  "format" : "guid",
                  "pattern" : "^[a-f0-9]{8}(?:-[a-f0-9]{4}){3}-[a-f0-9]{12}$"
                }
              },
              "links" : [ {
                "rel" : "self",
                "href" : "/campaigns/{id}",
                "targetSchema" : {
                  "$ref" : "campaigns.json#"
                }
              } ],
              "additionalProperties" : false,
              "required" : [ "id" ]
            }, {
              "type" : "object",
              "maxProperties" : 0
            } ]
          }
        },
        "additionalProperties" : false,
        "required" : [ "donor", "donorAssociationType", "amount", "designation" ]
      }
    },
    "contributionRecurrence" : {
      "title" : "Contribution Recurrence",
      "description" : "The starting date, frequency and amount for a recurring contribution.",
      "oneOf" : [ {
        "type" : "object",
        "properties" : {
          "startOn" : {
            "title" : "Start On",
            "description" : "The date the first payment is expected/received.",
            "type" : "string",
            "format" : "date-time",
            "pattern" : "^(-?(?:[1-9][0-9]*)?[0-9]{4})-(1[0-2]|0[1-9])-(3[0-1]|0[1-9]|[1-2][0-9])T(2[0-3]|[0-1][0-9]):([0-5][0-9]):([0-5][0-9])(\\.[0-9]+)?(Z|[+-](?:2[0-3]|[0-1][0-9]):[0-5][0-9])?$"
          },
          "frequency" : {
            "title" : "Frequency",
            "description" : "The frequency of the payments associated with the contribution.",
            "enum" : [ "oneTime", "weekly", "biweekly", "semimonthly", "monthly", "bimonthly", "quarterly", "semiannually", "annually" ],
            "type" : "string"
          },
          "installment" : {
            "title" : "Installment",
            "description" : "The planned amount for each installment or the number of installments.",
            "oneOf" : [ {
              "title" : "Amount",
              "description" : "The planned amount for each installment.",
              "type" : "object",
              "properties" : {
                "amount" : {
                  "title" : "Amount",
                  "description" : "The planned amount for each installment.",
                  "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" ]
                }
              },
              "additionalProperties" : false,
              "required" : [ "amount" ]
            }, {
              "title" : "Count",
              "description" : "The planned number of installments.",
              "type" : "object",
              "properties" : {
                "count" : {
                  "title" : "Count",
                  "description" : "The planned number of installments.",
                  "type" : "integer"
                }
              },
              "additionalProperties" : false,
              "required" : [ "count" ]
            } ]
          }
        },
        "additionalProperties" : false,
        "required" : [ "startOn", "frequency" ]
      }, {
        "type" : "object",
        "maxProperties" : 0
      } ]
    },
    "preauthorization" : {
      "title" : "Preauthorization",
      "description" : "The payment preauthorization associated with the contribution.",
      "oneOf" : [ {
        "type" : "object",
        "properties" : {
          "authorization" : {
            "title" : "Authorization",
            "description" : "The payment authorization string for the specified payment method.",
            "type" : "string",
            "minLength" : 1
          },
          "method" : {
            "title" : "Method",
            "description" : "The method by which the payment will be made.",
            "type" : "object",
            "properties" : {
              "tenderType" : {
                "title" : "Tender Type",
                "description" : "The type of payment (local currency, foreign currency, e-commerce) associated with the payment method.",
                "enum" : [ "localCurrency", "foreignCurrency", "eCommerce" ],
                "type" : "string"
              },
              "detail" : {
                "title" : "Detail",
                "description" : "The user defined payment type associated with the payment method.",
                "oneOf" : [ {
                  "type" : "object",
                  "properties" : {
                    "id" : {
                      "title" : "ID",
                      "description" : "The global identifier for the Detail.",
                      "type" : "string",
                      "format" : "guid",
                      "pattern" : "^[a-f0-9]{8}(?:-[a-f0-9]{4}){3}-[a-f0-9]{12}$"
                    }
                  },
                  "links" : [ {
                    "rel" : "self",
                    "href" : "/contribution-payment-types/{id}",
                    "targetSchema" : {
                      "$ref" : "contribution-payment-types.json#"
                    }
                  } ],
                  "additionalProperties" : false,
                  "required" : [ "id" ]
                }, {
                  "type" : "object",
                  "maxProperties" : 0
                } ]
              }
            },
            "additionalProperties" : false,
            "required" : [ "tenderType" ]
          }
        },
        "additionalProperties" : false,
        "required" : [ "authorization", "method" ]
      }, {
        "type" : "object",
        "maxProperties" : 0
      } ]
    },
    "payment" : {
      "title" : "Payment",
      "description" : "The payment attached to the contribution.",
      "oneOf" : [ {
        "type" : "object",
        "properties" : {
          "amount" : {
            "title" : "Amount",
            "description" : "The amount of the payment.",
            "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" ]
          },
          "authorization" : {
            "title" : "Authorization",
            "description" : "The authorization string for the specified payment method for the payment.",
            "type" : "string"
          },
          "method" : {
            "title" : "Method",
            "description" : "The method by which the payment was made.",
            "type" : "object",
            "properties" : {
              "tenderType" : {
                "title" : "Tender Type",
                "description" : "The type of payment (local currency or foreign currency) associated with the payment method.",
                "enum" : [ "localCurrency", "foreignCurrency" ],
                "type" : "string"
              },
              "detail" : {
                "title" : "Method",
                "description" : "The user defined payment type associated with the payment method.",
                "oneOf" : [ {
                  "type" : "object",
                  "properties" : {
                    "id" : {
                      "title" : "ID",
                      "description" : "The global identifier for the Method.",
                      "type" : "string",
                      "format" : "guid",
                      "pattern" : "^[a-f0-9]{8}(?:-[a-f0-9]{4}){3}-[a-f0-9]{12}$"
                    }
                  },
                  "links" : [ {
                    "rel" : "self",
                    "href" : "/contribution-payment-types/{id}",
                    "targetSchema" : {
                      "$ref" : "contribution-payment-types.json#"
                    }
                  } ],
                  "additionalProperties" : false,
                  "required" : [ "id" ]
                }, {
                  "type" : "object",
                  "maxProperties" : 0
                } ]
              }
            },
            "additionalProperties" : false,
            "required" : [ "tenderType" ]
          },
          "externalReference" : {
            "title" : "External Reference",
            "description" : "Reference information about the payment (as required based on payment method). This can be a confirmation number, credit card transaction code, or check number.",
            "type" : "string"
          }
        },
        "additionalProperties" : false,
        "required" : [ "amount", "method" ]
      }, {
        "type" : "object",
        "maxProperties" : 0
      } ]
    },
    "commemoration" : {
      "title" : "Commemoration",
      "description" : "The type and target of the contribution's commemoration.",
      "oneOf" : [ {
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "description" : "The type of commemoration, e.g. \"In Memory Of\".",
            "enum" : [ "inMemoryOf", "inHonorOf", "inNameOf" ],
            "type" : "string"
          },
          "commemorated" : {
            "title" : "Commemorated",
            "description" : "The person or organization commemorated.",
            "oneOf" : [ {
              "title" : "Commemorated",
              "description" : "The person or organization commemorated.",
              "type" : "string",
              "minLength" : 1
            }, {
              "title" : "Person",
              "description" : "The person commemorated.",
              "type" : "object",
              "properties" : {
                "person" : {
                  "title" : "Person",
                  "description" : "The person commemorated.",
                  "type" : "object",
                  "properties" : {
                    "id" : {
                      "title" : "ID",
                      "description" : "The global identifier for the Person.",
                      "type" : "string",
                      "format" : "guid",
                      "pattern" : "^[a-f0-9]{8}(?:-[a-f0-9]{4}){3}-[a-f0-9]{12}$"
                    }
                  },
                  "links" : [ {
                    "rel" : "self",
                    "href" : "/constituent-persons/{id}",
                    "targetSchema" : {
                      "$ref" : "constituent-persons.json#"
                    }
                  } ],
                  "additionalProperties" : false,
                  "required" : [ "id" ]
                }
              },
              "additionalProperties" : false,
              "required" : [ "person" ]
            }, {
              "title" : "Organization",
              "description" : "The organization commemorated.",
              "type" : "object",
              "properties" : {
                "organization" : {
                  "title" : "Organization",
                  "description" : "The organization commemorated.",
                  "type" : "object",
                  "properties" : {
                    "id" : {
                      "title" : "ID",
                      "description" : "The global identifier for the Organization.",
                      "type" : "string",
                      "format" : "guid",
                      "pattern" : "^[a-f0-9]{8}(?:-[a-f0-9]{4}){3}-[a-f0-9]{12}$"
                    }
                  },
                  "links" : [ {
                    "rel" : "self",
                    "href" : "/constituent-organizations/{id}",
                    "targetSchema" : {
                      "$ref" : "constituent-organizations.json#"
                    }
                  } ],
                  "additionalProperties" : false,
                  "required" : [ "id" ]
                }
              },
              "additionalProperties" : false,
              "required" : [ "organization" ]
            } ]
          }
        },
        "additionalProperties" : false,
        "required" : [ "type", "commemorated" ]
      }, {
        "type" : "object",
        "maxProperties" : 0
      } ]
    },
    "selectedPremiums" : {
      "title" : "Selected Premiums",
      "description" : "The selected premiums associated with the contribution.",
      "type" : "array",
      "items" : {
        "type" : "object",
        "properties" : {
          "quantity" : {
            "title" : "Quantity",
            "description" : "The quantity of the selected premium.",
            "type" : "integer"
          },
          "premium" : {
            "title" : "Premium",
            "description" : "The premium associated with the external contribution.",
            "type" : "object",
            "properties" : {
              "id" : {
                "title" : "ID",
                "description" : "The global identifier for the Premium.",
                "type" : "string",
                "format" : "guid",
                "pattern" : "^[a-f0-9]{8}(?:-[a-f0-9]{4}){3}-[a-f0-9]{12}$"
              }
            },
            "links" : [ {
              "rel" : "self",
              "href" : "/advancement-premiums/{id}",
              "targetSchema" : {
                "$ref" : "advancement-premiums.json#"
              }
            } ],
            "additionalProperties" : false,
            "required" : [ "id" ]
          }
        },
        "additionalProperties" : false,
        "required" : [ "quantity", "premium" ]
      }
    },
    "source" : {
      "title" : "Source",
      "description" : "The source of the contribution.",
      "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" : "/advancement-sources/{id}",
          "targetSchema" : {
            "$ref" : "advancement-sources.json#"
          }
        } ],
        "additionalProperties" : false,
        "required" : [ "id" ]
      }, {
        "type" : "object",
        "maxProperties" : 0
      } ]
    },
    "givingCodeDetails" : {
      "title" : "Giving Code Details",
      "description" : "The giving code details for the contribution.",
      "type" : "array",
      "items" : {
        "type" : "object",
        "properties" : {
          "givingCode" : {
            "title" : "Giving Code",
            "description" : "The giving code associated with the contribution.",
            "type" : "object",
            "properties" : {
              "id" : {
                "title" : "ID",
                "description" : "The global identifier for the Giving Code.",
                "type" : "string",
                "format" : "guid",
                "pattern" : "^[a-f0-9]{8}(?:-[a-f0-9]{4}){3}-[a-f0-9]{12}$"
              }
            },
            "links" : [ {
              "rel" : "self",
              "href" : "/giving-classifications/{id}",
              "targetSchema" : {
                "$ref" : "giving-classifications.json#"
              }
            } ],
            "additionalProperties" : false,
            "required" : [ "id" ]
          },
          "amount" : {
            "title" : "Amount",
            "description" : "The amount associated with the giving code.",
            "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
            } ]
          },
          "designation" : {
            "title" : "Designation",
            "description" : "The designation associated with the giving code.",
            "oneOf" : [ {
              "type" : "object",
              "properties" : {
                "id" : {
                  "title" : "ID",
                  "description" : "The global identifier for the Designation.",
                  "type" : "string",
                  "format" : "guid",
                  "pattern" : "^[a-f0-9]{8}(?:-[a-f0-9]{4}){3}-[a-f0-9]{12}$"
                }
              },
              "links" : [ {
                "rel" : "self",
                "href" : "/designations/{id}",
                "targetSchema" : {
                  "$ref" : "designations.json#"
                }
              } ],
              "additionalProperties" : false,
              "required" : [ "id" ]
            }, {
              "type" : "object",
              "maxProperties" : 0
            } ]
          }
        },
        "additionalProperties" : false,
        "required" : [ "givingCode" ]
      }
    },
    "solicitors" : {
      "title" : "Solicitors",
      "description" : "The people, teams, or organizations responsible for generating the contribution.",
      "type" : "array",
      "items" : {
        "type" : "object",
        "properties" : {
          "solicitor" : {
            "title" : "Solicitor",
            "description" : "A person, team, or organization responsible for generating the contribution.",
            "oneOf" : [ {
              "title" : "Constituent",
              "description" : "A constituent responsible for generating the contribution.",
              "type" : "object",
              "properties" : {
                "constituent" : {
                  "title" : "Constituent",
                  "description" : "A constituent (person or organization) responsible for generating the contribution.",
                  "oneOf" : [ {
                    "title" : "Person",
                    "description" : "The person responsible for generating the contribution.",
                    "type" : "object",
                    "properties" : {
                      "person" : {
                        "title" : "Person",
                        "description" : "The person responsible for generating the contribution.",
                        "type" : "object",
                        "properties" : {
                          "id" : {
                            "title" : "ID",
                            "description" : "The global identifier for the Person.",
                            "type" : "string",
                            "format" : "guid",
                            "pattern" : "^[a-f0-9]{8}(?:-[a-f0-9]{4}){3}-[a-f0-9]{12}$"
                          }
                        },
                        "links" : [ {
                          "rel" : "self",
                          "href" : "/constituent-persons/{id}",
                          "targetSchema" : {
                            "$ref" : "constituent-persons.json#"
                          }
                        } ],
                        "additionalProperties" : false,
                        "required" : [ "id" ]
                      }
                    },
                    "additionalProperties" : false,
                    "required" : [ "person" ]
                  }, {
                    "title" : "Organization",
                    "description" : "The organization responsible for generating the contribution.",
                    "type" : "object",
                    "properties" : {
                      "organization" : {
                        "title" : "Organization",
                        "description" : "The organization responsible for generating the contribution.",
                        "type" : "string"
                      }
                    },
                    "additionalProperties" : false
                  } ]
                }
              },
              "additionalProperties" : false
            }, {
              "title" : "Representative",
              "description" : "An advancement representative responsible for generating the contribution.",
              "type" : "object",
              "properties" : {
                "representative" : {
                  "title" : "Representative",
                  "description" : "An advancement representative responsible for generating the contribution.",
                  "type" : "object",
                  "properties" : {
                    "id" : {
                      "title" : "ID",
                      "description" : "The global identifier for the Representative.",
                      "type" : "string",
                      "format" : "guid",
                      "pattern" : "^[a-f0-9]{8}(?:-[a-f0-9]{4}){3}-[a-f0-9]{12}$"
                    }
                  },
                  "links" : [ {
                    "rel" : "self",
                    "href" : "/advancement-representatives/{id}",
                    "targetSchema" : {
                      "$ref" : "advancement-representatives.json#"
                    }
                  } ],
                  "additionalProperties" : false,
                  "required" : [ "id" ]
                }
              },
              "additionalProperties" : false
            }, {
              "title" : "Team",
              "description" : "An advancement team responsible for generating the contribution.",
              "type" : "object",
              "properties" : {
                "team" : {
                  "title" : "Team",
                  "description" : "An advancement team responsible for generating the contribution.",
                  "type" : "object",
                  "properties" : {
                    "id" : {
                      "title" : "ID",
                      "description" : "The global identifier for the Team.",
                      "type" : "string",
                      "format" : "guid",
                      "pattern" : "^[a-f0-9]{8}(?:-[a-f0-9]{4}){3}-[a-f0-9]{12}$"
                    }
                  },
                  "links" : [ {
                    "rel" : "self",
                    "href" : "/advancement-teams/{id}",
                    "targetSchema" : {
                      "$ref" : "advancement-teams.json#"
                    }
                  } ],
                  "additionalProperties" : false,
                  "required" : [ "id" ]
                }
              },
              "additionalProperties" : false,
              "required" : [ "team" ]
            } ]
          }
        },
        "additionalProperties" : false,
        "required" : [ "solicitor" ]
      }
    },
    "specialHandlingInstructions" : {
      "title" : "Special Handling Instructions",
      "description" : "The special handling instructions for the contribution.",
      "type" : "array",
      "items" : {
        "title" : "Special Handling Instructions",
        "description" : "The special handling instructions for the contribution.",
        "type" : "object",
        "properties" : {
          "id" : {
            "title" : "ID",
            "description" : "The global identifier for the Special Handling Instructions.",
            "type" : "string",
            "format" : "guid",
            "pattern" : "^[a-f0-9]{8}(?:-[a-f0-9]{4}){3}-[a-f0-9]{12}$"
          }
        },
        "links" : [ {
          "rel" : "self",
          "href" : "/contribution-special-handling-instructions/{id}",
          "targetSchema" : {
            "$ref" : "contribution-special-handling-instructions.json#"
          }
        } ],
        "additionalProperties" : false,
        "required" : [ "id" ]
      }
    },
    "solicitationMethod" : {
      "title" : "Solicitation Method",
      "description" : "The solicitation method associated with the contribution.",
      "oneOf" : [ {
        "type" : "object",
        "properties" : {
          "id" : {
            "title" : "ID",
            "description" : "The global identifier for the Solicitation Method.",
            "type" : "string",
            "format" : "guid",
            "pattern" : "^[a-f0-9]{8}(?:-[a-f0-9]{4}){3}-[a-f0-9]{12}$"
          }
        },
        "links" : [ {
          "rel" : "self",
          "href" : "/solicitation-methods/{id}",
          "targetSchema" : {
            "$ref" : "solicitation-methods.json#"
          }
        } ],
        "additionalProperties" : false,
        "required" : [ "id" ]
      }, {
        "type" : "object",
        "maxProperties" : 0
      } ]
    },
    "anonymityType" : {
      "title" : "Anonymity Type",
      "description" : "The anonymity type for the contribution.",
      "oneOf" : [ {
        "type" : "object",
        "properties" : {
          "id" : {
            "title" : "ID",
            "description" : "The global identifier for the Anonymity Type.",
            "type" : "string",
            "format" : "guid",
            "pattern" : "^[a-f0-9]{8}(?:-[a-f0-9]{4}){3}-[a-f0-9]{12}$"
          }
        },
        "links" : [ {
          "rel" : "self",
          "href" : "/anonymity-types/{id}",
          "targetSchema" : {
            "$ref" : "anonymity-types.json#"
          }
        } ],
        "additionalProperties" : false,
        "required" : [ "id" ]
      }, {
        "type" : "object",
        "maxProperties" : 0
      } ]
    },
    "comment" : {
      "title" : "Comment",
      "description" : "The comments on the contribution.",
      "type" : "string"
    }
  },
  "required" : [ "id", "contributionType", "amount", "contributedOn", "allocations" ],
  "additionalProperties" : false
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy