offlineOrganizationGift

This method processes an offline organization gifts. The method supports processing credit card and ACH gifts and recording CASH and CHECK gifts.

Client ServletServer ServletHTTP Methods SupportedRequires Authentication
None. SRDonationAPI POST No.

Server API Syntax

https://secure2.convio.net/organization/site/SRDonationAPI?method=offlineOrganizationGift & api_key =value & login_name =value & login_password =value & v =value [ & center_id =value ] [ & response_format =xml |json ] [ & source =value ] [ & sub_source =value ] [ & suppress_response_codes =value ] & billing.name.first =value & billing.name.last =value & donor.email =value & form_id =value & level_id =value & offline_payment_method =cash |check |credit & org_gift_payment_method =cash |check |credit |ach [ & additional_amount =value ] [ & anonymous =value ] [ & billing.address.city =value ] [ & billing.address.country =value ] [ & billing.address.county =value ] [ & billing.address.state =value ] [ & billing.address.street1 =value ] [ & billing.address.street2 =value ] [ & billing.address.street3 =value ] [ & billing.address.zip =value ] [ & billing.name.middle =value ] [ & billing.name.profSuffix =value ] [ & billing.name.suffix =value ] [ & billing.name.title =value ] [ & card_exp_date =value ] [ & card_exp_date_month =value ] [ & card_exp_date_year =value ] [ & card_number =value ] [ & card_type =value ] [ & check_number =value ] [ & designated.X.amount =value ] [ & designated.X.id =value ] [ & designated_write_in.X.amount =value ] [ & designated_write_in.X.contact =value ] [ & designated_write_in.X.name =value ] [ & donor.address.city =value ] [ & donor.address.country =value ] [ & donor.address.county =value ] [ & donor.address.state =value ] [ & donor.address.street1 =value ] [ & donor.address.street2 =value ] [ & donor.address.street3 =value ] [ & donor.address.zip =value ] [ & donor.cons_id =value ] [ & donor.email_opt_in =value ] [ & donor.employer =value ] [ & donor.name.first =value ] [ & donor.name.last =value ] [ & donor.name.middle =value ] [ & donor.name.profSuffix =value ] [ & donor.name.suffix =value ] [ & donor.name.title =value ] [ & donor.occupation =value ] [ & donor.phone =value ] [ & donor.phone_type =home |work |other ] [ & gift_aid =value ] [ & joint_donor.name.first =value ] [ & joint_donor.name.last =value ] [ & joint_donor.name.middle =value ] [ & joint_donor.name.suffix =value ] [ & joint_donor.name.title =value ] [ & matching_eligible =value ] [ & org_gift_batch_id =value ] [ & org_gift_do_not_display_amount =value ] [ & org_gift_gift_category_id =value ] [ & org_gift_note =value ] [ & org_gift_recognition_name =value ] [ & organization_id =value ] [ & organization_name =value ] [ & other_amount =value ] [ & premium_id =value ] [ & record_only =value ] [ & send_receipt =value ] [ & send_registration_email =value ] [ & shipping.address.city =value ] [ & shipping.address.country =value ] [ & shipping.address.county =value ] [ & shipping.address.state =value ] [ & shipping.address.street1 =value ] [ & shipping.address.street2 =value ] [ & shipping.address.street3 =value ] [ & shipping.address.zip =value ] [ & shipping.email =value ] [ & shipping.name.first =value ] [ & shipping.name.last =value ] [ & shipping.name.middle =value ] [ & shipping.name.profSuffix =value ] [ & shipping.name.suffix =value ] [ & shipping.name.title =value ] [ & shipping.phone =value ] [ & validate =value ]

Usage Notes

The offlineOrganizationGift method allows offline organization gift (meaning transactions that are processed by an external payment processor) to be recorded in Luminate Online.

All donation methods must reference a shadow Donation Form on the Luminate Online web site. This shadow form is used to perform validation and to associate donations with the appropriate fundraising Campaign. The ID of this shadow Donation Form is passed in the required form_id parameter. The Donation Form must be designated as either online/offline or offline-only. The API also requires the ID of the appropriate Donation Level in the level_id parameter.

Donation Errors

If the call to the API succeeds but one or more errors are encountered during transaction processing, adonationResponseobject will be returned listing reasons for the error. To correlate with the standard donation form processing,pageErrorelements in the response are the same messages that would be displayed near the top of the page and are sometimes generic. ThefieldErrorelements in the response are the same messages that would be displayed near input fields throughout the page and are always specific to the validation of input for an input field.

Error Responses

For common API errors such as authentication errors, the common error response is returned. An XML example:

<errorResponse xmlns="http://convio.com/crm/v1"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://convio.com/crm/v1.0 http://service.convio.net/xmlschema/crm.public.v1.xsd">
  <code>2</code>
  <message>Incorrect API key.  Verify that the value of the parameter api_key matches the value of the SDP CONVIO_API_KEY.</message>
</errorResponse>

A JSON example:

{"errorResponse":{
  "code": "2",
  "message": "Incorrect API key.  Verify that the value of the parameter api_key matches the value of the SDP CONVIO_API_KEY.",
}}

For donation-specific errors, the "donationResponse" is returned and contains a list of the error messages. An XML example:

<donationResponse xmlns="http://convio.com/crm/v1"
     xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
     xsi:schemaLocation="http://convio.com/crm/v1.0 http://service.convio.net/xmlschema/crm.public.v1.xsd">
  <errors>
    <code>101</code>
    <message>Error: There was a problem encountered while processing your donation.</message>
    <reason>FIELD_VALIDATION</reason>
    <pageError>There was a problem processing your request.  Please see below.</pageError>
    <fieldError>An email address is required.</fieldError>
    <fieldError>Billing state or province is required.</fieldError>
    <fieldError>Billing last name is required.</fieldError>
    <fieldError>Billing zip or postal code is required.</fieldError>
    <fieldError>Billing street address is required.</fieldError>
    <fieldError>Billing first name is required.</fieldError>
    <fieldError>Billing city is required.</fieldError>
  </errors>
</donationResponse>

A JSON example:

{"donationResponse":
  {"errors":
    {"code":"101",
     "reason":"FIELD_VALIDATION",
     "message":"Error: There was a problem encountered while processing your donation.",
     "fieldError":["An email address is required.",
                   "Billing state or province is required.",
                   "Billing last name is required.",
                   "Billing zip or postal code is required.",
                   "Billing street address is required.",
                   "Billing first name is required.",
                   "Billing city is required."],
     "pageError":"There was a problem processing your request.  Please see below."}
  }
}


Note: If you specify "true" in the optional suppress_response_codes parameter, both success and error results will return a donationResponse document with an HTTP return code of 200 - OK. You must parse the donationResponse document for an errors element to determine whether or not the call succeeded.

Server API Parameters

Common Server Parameters

See topic Common Parameters.

billing.name.first

Required. The billing name of the credit card owner. If not supplied, defaults to donor.name.first.

Type xsd:string.

billing.name.last

Required. The billing name of the credit card owner. If not supplied, defaults to donor.name.last.

Type xsd:string.

donor.email

Required. The donor's email address.

Type xsd:string.

form_id

Required. The ID of the donation form.

Type xsd:nonNegativeInteger.

level_id

Required. The ID of the donation level.

Type xsd:nonNegativeInteger.

offline_payment_method

Required. Payment method for this offline transaction

Type xsd:string.

Default is cash.

Options are:
  • cash
  • check
  • credit
org_gift_payment_method

Required. Payment method for this organization offline donation

Type xsd:string.

Default is cash.

Options are:
  • cash
  • check
  • credit
  • ach
additional_amount

Optional. Donation amount in addition to level amount.

Type xsd:string.

anonymous

Optional. Whether to mark the donation as "anonymous".

Type xsd:boolean.

billing.address.city

Optional. The billing address of the credit card owner. If not supplied, defaults to donor.address.city.

Type xsd:string.

billing.address.country

Optional. The billing address of the credit card owner.

Type xsd:string.

billing.address.county

Optional. The billing address of the credit card owner.

Type xsd:string.

billing.address.state

Optional. The billing address of the credit card owner. If not supplied, defaults to donor.address.state.

Type xsd:string.

billing.address.street1

Optional. The billing address of the credit card owner. If not supplied, defaults to donor.address.street1.

Type xsd:string.

billing.address.street2

Optional. The billing address of the credit card owner.

Type xsd:string.

billing.address.street3

Optional. The billing address of the credit card owner.

Type xsd:string.

billing.address.zip

Optional. The billing address of the credit card owner. If not supplied, defaults to donor.address.zip.

Type xsd:string.

billing.name.middle

Optional. The billing name of the credit card owner.

Type xsd:string.

billing.name.profSuffix

Optional. The billing name of the credit card owner.

Type xsd:string.

billing.name.suffix

Optional. The billing name of the credit card owner.

Type xsd:string.

billing.name.title

Optional. The billing name of the credit card owner.

Type xsd:string.

card_exp_date

Optional. Credit card expiration date in MM/YYYY format. Use either this or both card_exp_date_month and card_exp_date_year.

Type xsd:string.

card_exp_date_month

Optional. Credit card expiration month (1-12).

Type xsd:nonNegativeInteger.

card_exp_date_year

Optional. Credit card expiration year.

Type xsd:nonNegativeInteger.

card_number

Optional. Credit card number. For security, this must be specified in the form -- it is an error to include it in the URL.

Type xsd:string.

card_type

Optional. Credit card type

Type xsd:string.

check_number

Optional. Check number for an offline donation made by check

Type xsd:string.

designated.X.amount

Optional. The amount of a donation to designate to a designee. The "X" part of the parameter must be an integer used to correspond to designated.X.id or, in the case of write-in designations, designated.X.name and designated.X.contact. This allows multiple pairs of ID/amount for multiple designations.

Type xsd:nonNegativeInteger.

designated.X.id

Optional. The ID of a designee to which to designate all or part of a donation. The "X" part of the parameter must be an integer used to correspond to designated.X.amount. This allows multiple pairs of ID/amount for multiple designations.

Type xsd:nonNegativeInteger.

designated_write_in.X.amount

Optional. The amount of a donation to designate to a designee. The "X" part of the parameter must be an integer used to correspond to designated_write_in.X.name and designated_write_in.X.contact. This allows multiple pairs of ID/amount for multiple designations.

Type xsd:nonNegativeInteger.

designated_write_in.X.contact

Optional. The contact information of an organization to which to designate all or part of a donation. The "X" part of the parameter must be an integer used to correspond to designated_write_in.X.name and designated_write_in.X.amount. This allows multiple sets of name/contact/amount for multiple designations.

Type xsd:string.

designated_write_in.X.name

Optional. The name of an organization to which to designate all or part of a donation. The "X" part of the parameter must be an integer used to correspond to designated_write_in.X.contact and designated_write_in.X.amount. This allows multiple sets of name/contact/amount for multiple designations.

Type xsd:string.

donor.address.city

Optional. The donor's address.

Type xsd:string.

donor.address.country

Optional. The donor's address.

Type xsd:string.

donor.address.county

Optional. The donor's address.

Type xsd:string.

donor.address.state

Optional. The donor's address.

Type xsd:string.

donor.address.street1

Optional. The donor's address.

Type xsd:string.

donor.address.street2

Optional. The donor's address.

Type xsd:string.

donor.address.street3

Optional. The donor's address.

Type xsd:string.

donor.address.zip

Optional. The donor's address.

Type xsd:string.

donor.cons_id

Optional. The constituent ID of the donor.

Type xsd:integer.

donor.email_opt_in

Optional. The donor's email opt-in selection.

Type xsd:string.

donor.employer

Optional. The donor's employer.

Type xsd:string.

donor.name.first

Optional. The donor's name.

Type xsd:string.

donor.name.last

Optional. The donor's name.

Type xsd:string.

donor.name.middle

Optional. The donor's name.

Type xsd:string.

donor.name.profSuffix

Optional. The donor's name.

Type xsd:string.

donor.name.suffix

Optional. The donor's name.

Type xsd:string.

donor.name.title

Optional. The donor's name.

Type xsd:string.

donor.occupation

Optional. The donor's occupation.

Type xsd:string.

donor.phone

Optional. The donor's phone number.

Type xsd:string.

donor.phone_type

Optional. The type of the donor's phone number .

Type xsd:string.

Options are:
  • home
  • work
  • other
gift_aid

Optional. Gift aid status (UK Only).

Type xsd:string.

joint_donor.name.first

Optional. The name for a joint donor.

Type xsd:string.

joint_donor.name.last

Optional. The name for a joint donor.

Type xsd:string.

joint_donor.name.middle

Optional. The name for a joint donor.

Type xsd:string.

joint_donor.name.suffix

Optional. The name for a joint donor.

Type xsd:string.

joint_donor.name.title

Optional. The name for a joint donor.

Type xsd:string.

matching_eligible

Optional. Whether or not the donation is eligible for a matching gift.

Type xsd:boolean.

org_gift_batch_id

Optional. Specifies the batch id for TeamRaiser Company gifts.

Type xsd:string.

org_gift_do_not_display_amount

Optional. Specifies whether or not to display the amount of the gift in thermometers and top lists for TeamRaiser Company gifts.

Type xsd:boolean.

org_gift_gift_category_id

Optional. Specifies the gift category for TeamRaiser Company gifts.

Type xsd:string.

org_gift_note

Optional. Specifies the text note for TeamRaiser Company gifts.

Type xsd:string.

org_gift_recognition_name

Optional. Specifies the recognition name for TeamRaiser Company gifts.

Type xsd:string.

organization_id

Optional. User specified organization id.

Type xsd:string.

organization_name

Optional. User specified organization name.

Type xsd:string.

other_amount

Optional. User specified donation amount.

Type xsd:string.

premium_id

Optional. Unique ID of premium.

Type xsd:nonNegativeInteger.

record_only

Optional. Specifies whether credit or ach payments should be only recorded in Luminate as opposed to being processed.

Type xsd:boolean.

Default is false.

send_receipt

Optional. Whether to send a receipt email to the donor. The default behavior is to send a receipt.

Type xsd:boolean.

Default is true.

send_registration_email

Optional. If a new constituent record is created for the donor, this specifies whether to send a registration "welcome" email to the donor. The default behavior is to send it.

Type xsd:boolean.

Default is true.

shipping.address.city

Optional. Shipping address for premium.

Type xsd:string.

shipping.address.country

Optional. Shipping address for premium.

Type xsd:string.

shipping.address.county

Optional. Shipping address for premium.

Type xsd:string.

shipping.address.state

Optional. Shipping address for premium.

Type xsd:string.

shipping.address.street1

Optional. Shipping address for premium.

Type xsd:string.

shipping.address.street2

Optional. Shipping address for premium.

Type xsd:string.

shipping.address.street3

Optional. Shipping address for premium.

Type xsd:string.

shipping.address.zip

Optional. Shipping address for premium.

Type xsd:string.

shipping.email

Optional. Email address of the recipient.

Type xsd:string.

shipping.name.first

Optional. Premium recipient's name.

Type xsd:string.

shipping.name.last

Optional. Premium recipient's name.

Type xsd:string.

shipping.name.middle

Optional. Premium recipient's name.

Type xsd:string.

shipping.name.profSuffix

Optional. Premium recipient's name.

Type xsd:string.

shipping.name.suffix

Optional. Premium recipient's name.

Type xsd:string.

shipping.name.title

Optional. Premium recipient's name.

Type xsd:string.

shipping.phone

Optional. Phone number of the recipient.

Type xsd:string.

validate

Optional. Whether to enforce validation of every field according to the specification in the ghost form ("true" or "false"). Some validation is always in effect, such as ensuring that the campaign, form, and level IDs reference published entities and that there is sufficient information to process the transaction.

Type xsd:boolean.

Default is false.

Response

See topic HTTP Status Codes.

XML response

<?xml version="1.0" encoding="UTF-8"?>
<donationResponse xsi:schemaLocation="http://convio.com/crm/v1.0 http://service.convio.net/xmlschema/crm.public.v1.xsd" xmlns="http://convio.com/crm/v1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
  <donation>
    <cons_id>1006789</cons_id>
    <confirmation_code>0-0000-0-0000-0000</confirmation_code>
    <date_time>2020-01-28T15:31:47.980+05:30</date_time>
    <org_tax_id>00-0000000</org_tax_id>
    <reward_points_earned>100</reward_points_earned>
    <transaction_id>100101</transaction_id>
    <amount>
      <decimal>100</decimal>
      <formatted>$100.00</formatted>
    </amount>
    <tax_deductible_amount>
      <decimal>100</decimal>
      <formatted>$100.00</formatted>
    </tax_deductible_amount>
    <value_of_goods>
      <decimal>0</decimal>
      <formatted>$0.00</formatted>
    </value_of_goods>
    <summary_data>
      <field header="false">
        <label>Transaction Date:</label>
        <value>0/2/202</value>
        <name>date_id</name>
      </field>
      <field header="true">
        <label>Gift Information</label>
        <value/>
        <name>section-header</name>
      </field>
      <field header="false">
        <label>Amount:</label>
        <value>$100.00</value>
        <name>level_id</name>
      </field>
      <field header="true">
        <label>Billing Information</label>
        <value/>
        <name>section-header</name>
      </field>
      <field header="false">
        <label>Billing First Name:</label>
        <value>John</value>
        <name>billing.name.first</name>
      </field>
      <field header="false">
        <label>Billing Last Name:</label>
        <value>Doe</value>
        <name>billing.name.last</name>
      </field>
      <field header="true">
        <label>Payment Information</label>
        <value/>
        <name>section-header</name>
      </field>
      <field header="false">
        <label>Payment Type:</label>
        <value>Credit Card</value>
        <name>payment_type</name>
      </field>
      <field header="false">
        <label>Credit Card Number:</label>
        <value>***************1111</value>
        <name>card_number</name>
      </field>
    </summary_data>
  </donation>
</donationResponse>
JSON response
{"donationResponse":{"donation":{"transaction_id":"100101","org_tax_id":"00-0000000","amount":{"formatted":"$100.00","decimal":"100"},"confirmation_code":"0-0000-0-0000-0000","date_time":"2020-01-28T15:31:47.982+05:30","summary_data":{"field":[{"name":"date_id","header":"false","label":"Transaction Date:","value":"0/2/202"},{"name":"section-header","header":"true","label":"Gift Information","value":{}},{"name":"level_id","header":"false","label":"Amount:","value":"$100.00"},{"name":"section-header","header":"true","label":"Billing Information","value":{}},{"name":"billing.name.first","header":"false","label":"Billing First Name:","value":"John"},{"name":"billing.name.last","header":"false","label":"Billing Last Name:","value":"Doe"},{"name":"section-header","header":"true","label":"Payment Information","value":{}},{"name":"payment_type","header":"false","label":"Payment Type:","value":"Credit Card"},{"name":"card_number","header":"false","label":"Credit Card Number:","value":"***************1111"}]},"reward_points_earned":"100","value_of_goods":{"formatted":"$0.00","decimal":"0"},"cons_id":"1006789","tax_deductible_amount":{"formatted":"$100.00","decimal":"100"}}}}

        

Leave a Comment

Nickname
Comment
Enter this word: