API v1 Reference

Create Pledge Payment

A pledge payment is a donation that is attributed towards a pledge. In order to make a pledge payment, you’ll need to know the ID of the pledge and the tender type.

NeonPay Support: Credit Card Online payments are currently not supported for NeonCRM systems using the NeonPay gateway. Support is coming soon.

REST

Request

https://api.neoncrm.com/neonws/services/api/donation/createPledgePayment?userSessionId=T1361502539704&pledgeId=41727&payment.amount=5&payment.note=for membership term 507&payment.tenderType.id=4&payment.creditCardOnlinePayment.cardNumber=4757077614429236&payment.creditCardOnlinePayment.expirationMonth=9&payment.creditCardOnlinePayment.expirationYear=15&payment.creditCardOnlinePayment.cardType.name=visa&payment.creditCardOnlinePayment.CVV2=201&payment.creditCardOnlinePayment.billingAddressLine1=14/349 Geoge Street&payment.creditCardOnlinePayment.city=Chicago&payment.creditCardOnlinePayment.state.code=IL&payment.creditCardOnlinePayment.country.id=1&payment.creditCardOnlinePayment.zipCode=60009&payment.creditCardOnlinePayment.cardHolder=Dark Smith

Response

{
    "createPledgePayment": {
        "operationResult": "SUCCESS",
        "responseDateTime": "2013-02-21T21:29:41.394-06:00",
        "donationId": 41732,
        "balance": 35,
        "total": 49,
        "transaction": {
            "transactionId": 55594,
            "transactionStatus": "Pending",
            "payments": {
                "payment": {
                    "paymentId": 44090,
                    "amount": 5,
                    "paymentStatus": "Succeed",
                    "note": "for membership term 507",
                    "tenderType": {
                        "id": 4,
                        "name": "Credit Card(Online)"
                    },
                    "creditCardOnlinePayment": {
                        "cardNumber": ************9236,
                        "expirationMonth": 9,
                        "expirationYear": 15,
                        "cardType": {
                            "code": "v",
                            "name": ""
                        },
                        "cardHolder": "Dark Smith",
                        "billingAddressLine1": "14/349 Geoge Street",
                        "city": "Chicago",
                        "state": {
                            "code": "IL"
                        },
                        "country": {
                            "id": 1,
                            "name": "United States"
                        },
                        "zipCode": 60009
                    }
                }
            }
        }
    }
}

SOAP

Request

<soapenv:envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:neon="http://www.z2systems.com/schemas/neonws/">
   <soapenv:header>
       <soapenv:body>
          <neon:createpledgepaymentrequest>
             <usersessionid>T1361753723533</usersessionid>
             <pledgeid>41735</pledgeid>
             <payment>
               <amount>41</amount>
               <note>testing payment</note>
                <tendertype>
                   <id>4</id>
                </tendertype>
                <creditcardonlinepayment>
                   <cardnumber>4757077614429236</cardnumber>
                   <expirationmonth>9</expirationmonth>
                   <expirationyear>14</expirationyear>
                   <cardtype>
                       <code>V</code>
                   </cardtype>
                   <cvv2>231</cvv2>
                  <cardholder>William Smith</cardholder>
                   <billingaddressline1>14/349 Geoge Street</billingaddressline1>
                   <billingaddressline2></billingaddressline2>
                   <city>Chicago</city>
                   <state>
                      <code>IL</code>
                   </state>
                   <country>
                      <id>1</id>
                  </country>
                   <zipcode>60000</zipcode>
                   <zipcodesuffix>123</zipcodesuffix>
               </creditcardonlinepayment>
              </payment>
          </neon:createpledgepaymentrequest>
       </soapenv:body>
    </soapenv:header>
</soapenv:envelope>

Response

<soap:envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
   <soap:body>
      <ns2:createpledgepaymentresponse xmlns:ns2="http://www.z2systems.com/schemas/neonws/">
         <operationresult>SUCCESS</operationresult>
         <responsedatetime>2013-02-24T19:24:57.972-06:00</responsedatetime>
         <donationid>41736</donationid>
         <balance>0.0</balance>
         <total>41.0</total>
         <transaction>
            <transactionid>55598</transactionid>
            <transactionstatus>Succeed</transactionstatus>
            <payments>
               <payment>
                  <paymentid>44094</paymentid>
                  <amount>41.0</amount>
                  <paymentstatus>Succeed</paymentstatus>
                  <note>testing payment</note>
                  <tendertype>
                     <id>4</id>
                     <name>Credit Card(Online)</name>
                  </tendertype>
                  <creditcardonlinepayment>
                     <cardnumber>************9236</cardnumber>
                     <expirationmonth>9</expirationmonth>
                     <expirationyear>14</expirationyear>
                     <cardtype>
                        <code>V</code>
                        <name>Visa</name>
                     </cardtype>
                     <cardholder>William Smith</cardholder>
                     <billingaddressline1>14/349 Geoge Street</billingaddressline1>
                     <billingaddressline2>
                     <city>Chicago</city>
                     <state>
                        <code>IL</code>
                     </state>
                     <country>
                        <id>1</id>
                        <name>United States</name>
                     </country>
                     <zipcode>60000</zipcode>
                     <zipcodesuffix>123</zipcodesuffix>
                  </billingaddressline2></creditcardonlinepayment>
               </payment>
            </payments>
         </transaction>
      </ns2:createpledgepaymentresponse>
   </soap:body>
</soap:envelope>

Request Parameters

Name Required Description
pledgeId Yes ID of the pledge to which this payment is being applied.
Payments
payment.amount Yes Payment amount
payment.tenderType.id Yes * Possible values can be retrieved from List Tenders method. Required if tenderType.name is not provided.
payment.tenderType.name Yes * Possible values can be retrieved from List Tenders method. Required if tenderType.id is not provided.
payment.note
Credit Card Online Payment
The following fields are applicable if tenderType = 4 (credit card online). NeonPay is currently not supported for credit card online payments.
Payment.creditCardOnlinePayment.cardNumber Yes * Required unless using Neon Payment Processing.
Payment.creditCardOnlinePayment.token Yes * Required if using Neon Payment Processing. Use Stripe Elements client library to generate this token. Stripe API Key can be retrieved using the Retrieve Payment Processor Settings method.
Payment.creditCardOnlinePayment.expirationMonth Yes
Payment.creditCardOnlinePayment.expirationYear Yes
Payment.creditCardOnlinePayment.cardType.id Yes * Possible values can be retrieved from List Credit Card Types method. Required when cardType.name is not provided.
Payment.creditCardOnlinePayment.cardType.name Yes * Possible values can be retrieved from List Credit Card Types method. Required when cardType.id is not provided.
Payment.creditCardOnlinePayment.CVV2 Yes
Payment.creditCardOnlinePayment.cardHolder Yes Name of credit card holder, as shown on the card.
Payment.creditCardOnlinePayment.cardHolderEmail Yes * Required if using Neon Payment Processing.
Payment.creditCardOnlinePayment.billingAddressLine1
Payment.creditCardOnlinePayment.billingAddressLine2
Payment.creditCardOnlinePayment.city
Payment.creditCardOnlinePayment.state.code Possible values can be retrieved from the List States method. Required when state.name is not provided.
Payment.creditCardOnlinePayment.state.name Possible values can be retrieved from the List States method. Required when state.code is not provided.
Payment.creditCardOnlinePayment.province
Payment.creditCardOnlinePayment.country.id Possible values can be retrieved from the List Countries method. Required when country.name is not provided.
Payment.creditCardOnlinePayment.country.name Possible values can be retrieved from the List Countries method. Required when country.id is not provided.
Payment.creditCardOnlinePayment.zipCode
Payment.creditCardOnlinePayment.zipCodeSuffix
Credit Card Offline Payment
The following fields are applicable if tenderType = 2 (credit card offline, on-site credit card machine)
Payment.creditCardOfflinePayment.cardNumber
Payment.creditCardOfflinePayment.expirationMonth
Payment.creditCardOfflinePayment.expirationYear
Payment.creditCardOfflinePayment.cardType.id Possible values can be retrieved from List Credit Card Types method. Required when cardType.name is not provided.
Payment.creditCardOfflinePayment.cardType.name Possible values can be retrieved from List Credit Card Types method. Required when cardType.id is not provided.
Payment.creditCardOfflinePayment.CVV2
Payment.creditCardOfflinePayment.cardHolder
Payment.creditCardOfflinePayment.billingAddressLine1
Payment.creditCardOfflinePayment.billingAddressLine2
Payment.creditCardOfflinePayment.city
Payment.creditCardOfflinePayment.state.code Possible values can be retrieved from the List States method. Required when state.name is not provided.
Payment.creditCardOfflinePayment.state.name Possible values can be retrieved from the List States method. Required when state.code is not provided.
Payment.creditCardOfflinePayment.province
Payment.creditCardOfflinePayment.country.id Possible values can be retrieved from the List Countries method. Required when country.name is not provided.
Payment.creditCardOfflinePayment.country.name Possible values can be retrieved from the List Countries method. Required when country.id is not provided.
Payment.creditCardOfflinePayment.zipCode
Payment.creditCardOfflinePayment.zipCodeSuffix
eCheck / ACH Payment
The following fields are applicable if tenderType = 12 (E-Check/ACH)
Payment.echeckPayment.institution
Payment.echeckPayment.routingNumber Yes
Payment.echeckPayment.accountNumber Yes
Payment.echeckPayment.accountOwner
Payment.echeckPayment.CheckNumber
Payment.echeckPayment.accountType Possible values: Checking, Saving
Check Payment
The following fields are applicable if tenderType = 3 (Check)
Payment.checkPayment.institution
Payment.checkPayment.routingNumber
Payment.checkPayment.accountNumber
Payment.checkPayment.accountOwner
Payment.checkPayment.CheckNumber
Payment.checkPayment.accountType Possible values: Checking, Saving

Response Parameters

Name Required Description
donationId Yes The ID of this pledge payment.
balance Yes Balance remaining on the pledge after this payment.
total Yes Total (original) amount of the pledge.
transaction.transactionId Yes Transaction ID
transaction.transactionStatus Yes Possible values: Pending, Processing, Succeed, Declined, Error, Scheduled, Cancelled, Deferred
transaction.payments.payment Yes Transaction details of the payment

Error Codes

Code Text Description
101 Payment amount is required.
102 Tender type id or name is required.
103 Tender type id or name is invalid.
104 Echeck routing number is required.
105 Echeck account number is required.
106 Echeck account owner is required.
107 Credit card number is required.
108 Credit card expiration date is required.
109 Credit card CVV2 is required.
110 Credit card type is invalid.
111 Billing Address state id or name is invalid.
112 Billing Address country id or name is invalid.
150 Unable to process payment.
151 Payment id is invalid.
152 Payment id is required.
153 Succeed credit card online or e-check payment cannot be reprocessed.
11020 Pledge ID is required.
11021 Pledge ID is invalid.