GiveCampus Gift API
Definitions of standard fields
These are the standard fields you can expect in an API response and their meaning.
- id: The GiveCampus unique identifier for the gift.
-
donation_type: Specifies if the gift was a single donation, installment in a recurring gift, a match, or a challenge. Possible values:
- challenge
- donation
- general
- installment
- match
- state: Where the gift is in the processing cycle. Ex. ‘authorized’ indicates successful but not yet deposited.
- currency: Short code for the currency of the gift (USD, CAD etc.).
- value: The gift amount (for installments this will be the installment amount, not the total gift amount).
-
project: Information about the campaign or form the gift was made on.
- id: The GiveCampus unique identifier for the campaign or form.
- type: Defines what kind of project: campaign (including goal type- donor or dollar) or Giving Form
- name: The partner defined name of the campaign or form.
- unique_identifier: The partner defined backend identifier for the project. This is set on the ‘Giving Form’ tab on the campaign or form settings in the ‘Internal Reporting’s section.
- payer_name: The name entered by the donor on the prepayment form. If the name field is expanded into multiple fields the concatenated name will show here, and the components (first, last) are shown in the "custom_fields" section.
- Field name:
payment_country - Contains: The ISO 3166-1 alpha-2 country code for the card-issuing country (for example,
US,DE, orGB). - When populated: Returned for gifts processed through Stripe using card issuing-country data from Stripe’s webhook events.
- When null: For non-Stripe payment methods, such as PayPal or donor-advised-fund payments, the field returns
null. - Version: Available in Gift API v1.0.0 responses.
payment_country
Notes for integrators
This field appears with other standard gift attributes in the API JSON payload. When present, it contains a two-letter country code. Otherwise, it returns null for non-Stripe payments. The field is automatically populated during payment processing when Stripe provides the necessary card country information.
- payer_email: The email entered by the donor on the prepayment form.
- phone_number: The phone number entered by the donor on the prepayment form.
-
address: The address entered by the donor on the prepayment form. Each field will be reported separately:
- city
- country
- postal_code
- state
- line1
- line2
-
Designations: The designation selected by the donor on the prepayment form
- unique_identifier: The backend ID, defined by the partner, for the donor selected designation
- name: The name of the designation selected by the donor.
- amount: The amount of the gift applied to this designation. This will be a percentage of the total amount if multiple designations are selected.
- write_in: The text entered by the donor if they select a designation that allows a write in value.
- custom_fields: Custom fields created by the partner will be reported in this section.
- Anonymous: Indicates if a donor selected to not have their name appear on the public campaign page. This only applies to gifts made to a fundraising campaign.
-
Affiliations: The donor selected affiliation from the prepayment form.
- unique_identifier: The backend identifier of the selected affiliation.
- name: The name of the selected affiliation.
- values: This is the secondary value, if applicable, for the selected affiliation. For standard affiliations this will be a 4-digit year.
-
Incentive: If a donor selects an incentive on the prepayment form, that will be detailed in this section.
- id: The GiveCampus unique identifier for the incentive.
- headline: The partner defined headline for the incentive.
- description: The partner defined description of the incentive.
- market_value: The partner defined market value of the incentive.
- Tax_deductible_amount: The value field minus the market_value field.
-
advocate: If a gift has any advocate (individual or unique link) data, that will be collected in this section.
- id: Either the ID of the unique link used or the user ID of the individual advocate.
- source: The referring URL that the donor was on prior to clicking the unique link.
- link: The GiveCampus unique URL used to make the donation.
- description: The partner defined description for unique links.
- joint_gift: The value entered by the donor in the ‘Joint Gift’ field on the prepayment form.
- spouse: The value entered by the donor in the ‘Spouse’ field on the prepayment form.
- paid_name: The name associated to the payment method used for the gift.
- paid_email: taylor@gmail.com,
- name_title: The value entered by the donor in the ‘Title’ field on the prepayment form.
- maiden_name: The value entered by the donor in the ‘Maiden Name’ field on the prepayment form.
checkout_id: The unique identifier issued by the payment processor.
-
Subscription: Details of the subscription for recurring gifts.
- id: The GiveCampus unique identifier for the recurring subscription.
- state: The current state of the subscription (active, failed, complete, etc. )
-
period: The recurring interval of the subscription (annually, monthly); Possible values:
- monthly
- yearly
- limited_months - used when a school is setup to select a specific # of months duration (e.g 7 months)
- length: The number of period intervals of the subscription.If period is monthly, this represents the number of years for the subscription (i.e. length of 2 means 2 x 12 so 24 monthly installments). If period is limited_months then it represents the number of months of the subscription.
- installment_number: Which specific installment this gift is in the subscription
- indefinite: Either ‘True’ or ‘False’ depending on if the gift is of indefinite length or not.
-
Timestamps: These are the different timestamps captured for the each gift.
- created_at: The time the prepayment form was submitted.
- checkout_at: The time the payment form was submitted.
- captured_at: The time when a gift moves to the state ‘Authorized’.
- datetime_of_pledge: The time the payment form was submitted.
- deposited_at: The time the gift is deposited to the partner’s connected bank account.
- payment_method: The payment processor used to process the payment.
-
card_type: The payment type used for the donation. This may be the issuing credit card (e.g. visa) or other payment type (e.g. Venmo). Possible values (note: we hope to normalize these in the future):
- ACH
- AMEX
- AmEx
- American Express
- Amex
- ApplePay
- Crypto
- DISC
- Discover
- Google Pay
- GooglePay
- MC
- MasterCard
- Mastercard
- N/A
- PayPal
- Unionpay
- VISA
- Venmo
- Visa
- WebPay
- amex
- bank
- bank-instant
- bank-manual
- bank_account
- discover
- mastercard
- visa
- stripe_deposit: The deposit ID after a gift is deposited. Will reflect both Stripe and PayPal deposit IDs.
- stripe_refund: The refund status of the donation. Will reflect the refund status for both Stripe and PayPal transactions.
- payment_service_fee: 2.25,
- value_usd: The value of the gift in USD. This will match the field value for gifts made in USD.
- value_in_currency: 1500.00,
- value_orig_currency: 1500.00,
- crypto_value_usd_at_time_of_donation: The USD value of a crypto gift when the gift was initiated.
- crypto_transaction_hash_id: The unique ID for a transaction of a gift made using crypto.
- constituent_identifier: The partner defined constituent ID, if uploaded to GiveCampus through Reporting settings, Data Importer, or Volunteer Management.
- terminal_gift: Specifies if the donation was made using GC Connect (true) or not (false).
- refund_status: The status of a refund, if applicable.
- refund_reason: The partner defined refund reason entered when issuing the refund.
- refund_recovery_transfer: If a donation is refunded this will show the deposit ID of the deposit the funds were removed from to cover the refund amount.
- failure_reason: The failure code provided by the payment processor for failed gifts.
- ach_verified: Will show if the donor has verified their bank account for manually verified bank transfers.
- match_contribution_ids: [123435, 234236],
- Give_full_match_challenge_amount: Shows if a match/challenge donor elected to give the full amount of their gift regardless of if the parameters of the match/challenge were met.
- note_content: Joint spouse gift,
-
Matching_company: Details company matching information if the Double the Donation integration is enabled.
- id: The Double the Donation unique identifier.
- name: The name of the identified company in the matching database.
- search_text: The search term the donor used on the prepayment page to locate the company.
- search_status: The result of the search term used in the search_text field.
Custom Field Data and API Integration
Understanding Custom Fields in API Data
Standard vs Custom Fields
GiveCampus forms can collect data through:
- Standard fields: Built-in fields like "phone" that appear in main API response
- Custom fields: School-created fields that appear within the "custom_fields" section of API responses
Common Custom Field Issues
#### Phone Number Fields
If phone numbers aren't appearing in your API data:
1. Check if you're using a custom field called "mobile_phone" instead of the standard "phone" field
2. Custom phone fields will appear in the "custom_fields" section, not as a standard "phone" field
3. Verify your API integration is checking both standard and custom field sections
Locating Custom Field Data in API
#### Where Custom Fields Appear
- Custom fields are nested within the "custom_fields" object in API responses
- They will NOT appear in the main donation object alongside standard fields
- Field names in API match exactly what you named them in GiveCampus settings
#### Troubleshooting Missing Custom Data
1. Verify the custom field name matches what you're looking for in API
2. Check that your integration is parsing the "custom_fields" section
3. Confirm the field was actually filled out by donors (not all custom fields are required)
4. Test with a recent donation to ensure field is capturing data
API Integration Best Practices
Handling Standard and Custom Fields
- Always check both standard fields AND custom_fields object
- Custom field names are case-sensitive and must match exactly
- Not all donations will have custom field data if fields aren't required
Data Validation
- Verify custom fields are being collected on donation forms
- Test API responses with recent donations that include custom field data
- Check field configuration in GiveCampus settings if data is missing
Common API Questions
Why aren't phone numbers coming through the API?
- Check if you're using "mobile_phone" (custom) vs "phone" (standard)
- Look in custom_fields section of API response
- Verify field configuration matches your API expectations
Where do I find custom field data in API responses?
- All custom fields appear within the "custom_fields" object
- They are not mixed with standard donation fields
- Field names match exactly what you configured
How do I troubleshoot missing custom data?
- Confirm field names match between GiveCampus and your API integration
- Test with known donations that should include the custom data
- Verify your API parsing includes the custom_fields section
Common variations of these questions
- Why is phone data missing from API?
- How do I access custom form fields via API?
- Where are custom fields in the API response?
- How to troubleshoot missing donor information in API?
Comments
0 comments
Article is closed for comments.