1 <?xml version=
"1.0" encoding=
"iso-8859-1" ?>
4 <base>CRM/Contribute
</base>
5 <class>Contribution
</class>
6 <name>civicrm_contribution
</name>
11 <uniqueName>contribution_id
</uniqueName>
12 <type>int unsigned
</type>
13 <required>true
</required>
15 <title>Contribution ID
</title>
16 <comment>Contribution ID
</comment>
21 <autoincrement>true
</autoincrement>
24 <name>contact_id
</name>
25 <uniqueName>contribution_contact_id
</uniqueName>
26 <title>Contact ID
</title>
27 <type>int unsigned
</type>
28 <required>true
</required>
30 <headerPattern>/contact(.?id)?/i
</headerPattern>
31 <dataPattern>/^\d+$/
</dataPattern>
32 <comment>FK to Contact ID
</comment>
34 <type>EntityRef
</type>
39 <name>contact_id
</name>
40 <table>civicrm_contact
</table>
43 <onDelete>CASCADE
</onDelete>
46 <name>solicitor_id
</name>
47 <title>Solicitor ID
</title>
48 <type>int unsigned
</type>
49 <comment>FK to Solicitor ID
</comment>
54 <name>solicitor_id
</name>
55 <table>civicrm_contact
</table>
59 <onDelete>SET NULL
</onDelete>
62 <name>contribution_type_id
</name>
63 <title>Contribution Type
</title>
64 <export>false
</export>
65 <type>int unsigned
</type>
66 <comment>FK to Contribution Type
</comment>
71 <name>contribution_type_id
</name>
72 <table>civicrm_contribution_type
</table>
76 <onDelete>SET NULL
</onDelete>
79 <name>financial_type_id
</name>
80 <title>Financial Type
</title>
81 <type>int unsigned
</type>
82 <comment>FK to Financial Type for (total_amount - non_deductible_amount).
</comment>
84 <table>civicrm_financial_type
</table>
85 <keyColumn>id
</keyColumn>
86 <labelColumn>name
</labelColumn>
95 <name>financial_type_id
</name>
96 <table>civicrm_financial_type
</table>
101 <name>contribution_page_id
</name>
102 <title>Contribution Page ID
</title>
103 <type>int unsigned
</type>
104 <import>true
</import>
105 <comment>The Contribution Page which triggered this contribution
</comment>
107 <table>civicrm_contribution_page
</table>
108 <keyColumn>id
</keyColumn>
109 <labelColumn>title
</labelColumn>
117 <name>contribution_page_id
</name>
118 <table>civicrm_contribution_page
</table>
120 <onDelete>SET NULL
</onDelete>
123 <name>payment_instrument_id
</name>
124 <uniqueName>payment_instrument_id
</uniqueName>
125 <title>Payment Method ID
</title>
126 <type>int unsigned
</type>
127 <comment>FK to Payment Instrument
</comment>
128 <export>true
</export>
129 <headerPattern>/^payment|(p(ayment\s)?instrument)$/i
</headerPattern>
131 <optionGroupName>payment_instrument
</optionGroupName>
139 <name>UI_contrib_payment_instrument_id
</name>
140 <fieldName>payment_instrument_id
</fieldName>
144 <name>receive_date
</name>
145 <title>Date Received
</title>
146 <type>datetime
</type>
147 <import>true
</import>
148 <headerPattern>/receive(.?date)?/i
</headerPattern>
149 <dataPattern>/^\d{
4}-?\d{
2}-?\d{
2} ?(\d{
2}:?\d{
2}:?(\d{
2})?)?$/
</dataPattern>
150 <comment>Date contribution was received - not necessarily the creation date of the record
</comment>
153 <type>Select Date
</type>
154 <formatType>activityDateTime
</formatType>
158 <name>non_deductible_amount
</name>
159 <title>Non-deductible Amount
</title>
162 <import>true
</import>
163 <headerPattern>/non?.?deduct/i
</headerPattern>
164 <dataPattern>/^\d+(\.\d{
2})?$/
</dataPattern>
165 <comment>Portion of total amount which is NOT tax deductible. Equal to total_amount for non-deductible financial types.
</comment>
172 <name>total_amount
</name>
174 <required>true
</required>
175 <import>true
</import>
176 <headerPattern>/^total|(.?^am(ou)?nt)/i
</headerPattern>
177 <dataPattern>/^\d+(\.\d{
2})?$/
</dataPattern>
178 <comment>Total amount of this contribution. Use market value for non-monetary gifts.
</comment>
185 <name>index_total_amount_receive_date
</name>
186 <fieldName>total_amount
</fieldName>
187 <fieldName>receive_date
</fieldName>
191 <name>fee_amount
</name>
193 <import>true
</import>
194 <headerPattern>/fee(.?am(ou)?nt)?/i
</headerPattern>
195 <dataPattern>/^\d+(\.\d{
2})?$/
</dataPattern>
196 <comment>actual processor fee if known - may be
0.
</comment>
203 <name>net_amount
</name>
205 <import>true
</import>
206 <headerPattern>/net(.?am(ou)?nt)?/i
</headerPattern>
207 <dataPattern>/^\d+(\.\d{
2})?$/
</dataPattern>
208 <comment>actual funds transfer amount. total less fees. if processor does not report actual fee during transaction, this is set to total_amount.
</comment>
216 <title>Transaction ID
</title>
219 <import>true
</import>
220 <headerPattern>/tr(ansactio|x)n(.?id)?/i
</headerPattern>
221 <comment>unique transaction id. may be processor id, bank id + trans id, or account number + check number... depending on payment_method
</comment>
228 <name>invoice_id
</name>
229 <title>Invoice Reference
</title>
232 <import>true
</import>
233 <headerPattern>/invoice(.?id)?/i
</headerPattern>
234 <comment>unique invoice id, system generated or passed in
</comment>
241 <name>invoice_number
</name>
242 <title>Invoice Number
</title>
245 <import>true
</import>
246 <headerPattern>/invoice(.?number)?/i
</headerPattern>
247 <comment>Human readable invoice number
</comment>
254 <name>currency
</name>
257 <default>NULL
</default>
258 <import>true
</import>
259 <headerPattern>/cur(rency)?/i
</headerPattern>
260 <dataPattern>/^[A-Z]{
3}$/i
</dataPattern>
261 <comment>3 character string, value from config setting or input via user.
</comment>
264 <table>civicrm_currency
</table>
265 <keyColumn>name
</keyColumn>
266 <labelColumn>full_name
</labelColumn>
267 <nameColumn>name
</nameColumn>
268 <abbrColumn>symbol
</abbrColumn>
275 <name>cancel_date
</name>
276 <title>Cancelled / Refunded Date
</title>
277 <type>datetime
</type>
278 <import>true
</import>
279 <headerPattern>/cancel(.?date)?/i
</headerPattern>
280 <dataPattern>/^\d{
4}-?\d{
2}-?\d{
2} ?(\d{
2}:?\d{
2}:?(\d{
2})?)?$/
</dataPattern>
281 <comment>when was gift cancelled
</comment>
284 <type>Select Date
</type>
285 <formatType>activityDateTime
</formatType>
287 <uniqueName>contribution_cancel_date
</uniqueName>
290 <name>cancel_reason
</name>
292 <title>Cancellation / Refund Reason
</title>
293 <import>true
</import>
294 <export>true
</export>
295 <headerPattern>/(cancel.?)?reason/i
</headerPattern>
303 <name>receipt_date
</name>
304 <type>datetime
</type>
305 <import>true
</import>
306 <headerPattern>/receipt(.?date)?/i
</headerPattern>
307 <dataPattern>/^\d{
4}-?\d{
2}-?\d{
2} ?(\d{
2}:?\d{
2}:?(\d{
2})?)?$/
</dataPattern>
308 <comment>when (if) receipt was sent. populated automatically for online donations w/ automatic receipting
</comment>
310 <type>Select Date
</type>
311 <formatType>activityDateTime
</formatType>
316 <name>thankyou_date
</name>
317 <title>Thank-you Date
</title>
318 <type>datetime
</type>
319 <import>true
</import>
320 <headerPattern>/thank(s|(.?you))?(.?date)?/i
</headerPattern>
321 <dataPattern>/^\d{
4}-?\d{
2}-?\d{
2} ?(\d{
2}:?\d{
2}:?(\d{
2})?)?$/
</dataPattern>
322 <comment>when (if) was donor thanked
</comment>
325 <type>Select Date
</type>
326 <formatType>activityDateTime
</formatType>
331 <uniqueName>contribution_source
</uniqueName>
332 <title>Contribution Source
</title>
335 <import>true
</import>
336 <headerPattern>/source/i
</headerPattern>
337 <comment>Origin of this Contribution.
</comment>
344 <name>index_source
</name>
345 <fieldName>source
</fieldName>
349 <name>amount_level
</name>
350 <title>Amount Label
</title>
352 <import>true
</import>
361 <comment>Note and/or Comment.
</comment>
362 <import>true
</import>
363 <headerPattern>/Note|Comment/i
</headerPattern>
364 <dataPattern>//
</dataPattern>
369 <name>UI_contrib_trxn_id
</name>
370 <fieldName>trxn_id
</fieldName>
371 <unique>true
</unique>
375 <name>UI_contrib_invoice_id
</name>
376 <fieldName>invoice_id
</fieldName>
377 <unique>true
</unique>
381 <name>contribution_recur_id
</name>
382 <title>Recurring Contribution ID
</title>
383 <type>int unsigned
</type>
384 <comment>Conditional foreign key to civicrm_contribution_recur id. Each contribution made in connection with a recurring contribution carries a foreign key to the recurring contribution record. This assumes we can track these processor initiated events.
</comment>
385 <export>true
</export>
389 <name>contribution_recur_id
</name>
390 <table>civicrm_contribution_recur
</table>
393 <onDelete>SET NULL
</onDelete>
400 <import>true
</import>
402 <type>CheckBox
</type>
406 <name>is_pay_later
</name>
407 <title>Is Pay Later
</title>
410 <import>true
</import>
413 <type>CheckBox
</type>
417 <name>contribution_status_id
</name>
418 <title>Contribution Status ID
</title>
419 <type>int unsigned
</type>
421 <import>true
</import>
422 <export>true
</export>
423 <headerPattern>/status/i
</headerPattern>
425 <optionGroupName>contribution_status
</optionGroupName>
433 <name>index_contribution_status
</name>
434 <fieldName>contribution_status_id
</fieldName>
438 <name>received_date
</name>
439 <fieldName>receive_date
</fieldName>
443 <name>address_id
</name>
444 <uniqueName>contribution_address_id
</uniqueName>
445 <title>Contribution Address
</title>
446 <type>int unsigned
</type>
447 <comment>Conditional foreign key to civicrm_address.id. We insert an address record for each contribution when we have associated billing name and address data.
</comment>
449 <export>true
</export>
452 <name>address_id
</name>
453 <table>civicrm_address
</table>
456 <onDelete>SET NULL
</onDelete>
459 <name>check_number
</name>
460 <title>Check Number
</title>
461 <uniqueName>contribution_check_number
</uniqueName>
462 <headerPattern>/check(.?number)?/i
</headerPattern>
469 <import>true
</import>
473 <name>check_number
</name>
474 <fieldName>check_number
</fieldName>
478 <name>campaign_id
</name>
479 <uniqueName>contribution_campaign_id
</uniqueName>
480 <type>int unsigned
</type>
481 <title>Campaign
</title>
482 <import>true
</import>
483 <comment>The campaign for which this contribution has been triggered.
</comment>
485 <table>civicrm_campaign
</table>
486 <keyColumn>id
</keyColumn>
487 <labelColumn>title
</labelColumn>
495 <name>creditnote_id
</name>
496 <title>Credit Note ID
</title>
499 <import>true
</import>
500 <headerPattern>/creditnote(.?id)?/i
</headerPattern>
501 <comment>unique credit note id, system generated or passed in
</comment>
508 <name>index_creditnote_id
</name>
509 <fieldName>creditnote_id
</fieldName>
513 <name>tax_amount
</name>
514 <title>Tax Amount
</title>
516 <import>true
</import>
517 <headerPattern>/tax(.?am(ou)?nt)?/i
</headerPattern>
518 <dataPattern>/^\d+(\.\d{
2})?$/
</dataPattern>
519 <comment>Total tax amount of this contribution.
</comment>
526 <name>campaign_id
</name>
527 <table>civicrm_campaign
</table>
529 <onDelete>SET NULL
</onDelete>
532 <name>revenue_recognition_date
</name>
533 <type>datetime
</type>
534 <import>true
</import>
535 <headerPattern>/revenue(.?date)?/i
</headerPattern>
536 <dataPattern>/^\d{
4}-?\d{
2}-?\d{
2} ?(\d{
2}:?\d{
2}:?(\d{
2})?)?$/
</dataPattern>
537 <comment>Stores the date when revenue should be recognized.
</comment>
539 <type>Select Date
</type>
540 <formatType>activityDateTime
</formatType>
545 <name>is_template
</name>
546 <title>Is a Template Contribution
</title>
549 <import>true
</import>
550 <comment>Shows this is a template for recurring contributions.
</comment>
552 <type>CheckBox
</type>