Checkout

REST

Request

https://api.neoncrm.com/neonws/services/api/store/checkout?userSessionId=[session id]&shoppingCartId=55595&payment.amount=843.03&payment.note=shopping cart payment&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

{
    "checkoutResponse": {
        "operationResult": "SUCCESS",
        "responseMessage": "Checkout succeed.",
        "responseDateTime": "2013-02-22T02:52:51.493-06:00",
        "orderId": 55595
    }
}

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:checkoutrequest>
            <usersessionid>T1361857093088</usersessionid>
            <shoppingcartid>55606</shoppingcartid>
            <payment>
                <amount>661.16</amount>
               <note>paid by ralf</note>
                <tendertype>
                   <id>4</id>
                </tendertype>
               <creditcardonlinepayment>
                   <cardnumber>4757077614429236</cardnumber>
                   <expirationmonth>10</expirationmonth>
                   <expirationyear>16</expirationyear>
                  <cardtype>
                      <code>V</code>
                   </cardtype>
                  <cvv2>234</cvv2>
                  <cardholder>Morgan</cardholder>
                   <billingaddressline1>98/827 mars ST</billingaddressline1>
                  <city>Chicago</city>
                  <state>
                      <code>IL</code>
                   </state>
                  <country>
                     <id>1</id>
                   </country>
                   <zipcode>60980</zipcode>
               </creditcardonlinepayment>
               </payment>
          </neon:checkoutrequest>
       </soapenv:body>
    </soapenv:header>
</soapenv:envelope>

Response

<soap:envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
   <soap:body>
      <ns2:checkoutresponse xmlns:ns2="http://www.z2systems.com/schemas/neonws/">
         <operationresult>SUCCESS</operationresult>
         <responsemessage>Checkout succeed.</responsemessage>
         <responsedatetime>2013-02-25T23:47:53.776-06:00</responsedatetime>
         <orderid>55606</orderid>
      </ns2:checkoutresponse>
   </soap:body>
</soap:envelope>

Request Parameters

Name Required Description
shoppingCartId Yes Shopping cart ID
sendAcknowledgeEmail Determines whether the donation will trigger the default system email. Value must be TRUE or FALSE. FALSE is the default value if the parameter is not provided.
Payments
payment.amount Yes Payment amount. This must match the total amount of the shopping cart.
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)
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
orderId Yes The ID of the store purchase order.

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.
12301 Shopping cart id is required.
12302 Shopping cart id is invalid.
12320 Payment amount must be the same as shopping cart total charge.