Paypal express checkout error Order total is missing. Error 10400

11,978

Solution 1

First you are mixing some of the old variables with the new variable's, and you are using some of the same variables both old and new. Here is what your request should be passing over. Once you pass over these variables in this format, your request will go through.

RETURNURL=http://www.mydomainname.com/pp/paypal/process.php
CANCELURL=http://www.mydomainname.com/pp/paypal/cancel_url.php
ALLOWNOTE=1
PAYMENTREQUEST_0_PAYMENTACTION=Sale
PAYMENTREQUEST_0_CURRENCYCODE=EUR
PAYMENTREQUEST_0_AMT=106.72
PAYMENTREQUEST_0_ITEMAMT=106.72
L_PAYMENTREQUEST_0_QTY0=3
L_PAYMENTREQUEST_0_AMT0=28.46
L_PAYMENTREQUEST_0_NAME0=FIRSTitem
L_PAYMENTREQUEST_0_NUMBER0=0
L_PAYMENTREQUEST_0_QTY1=1
L_PAYMENTREQUEST_0_AMT1=21.34
L_PAYMENTREQUEST_0_NAME1=SECONDitem
L_PAYMENTREQUEST_0_NUMBER1=1

Below is what I passsed over in my Express Checkout API calls from start to finish.

SetExpressCheckout API Request:

USER=xxxxxxxxxx
PWD=xxxxxxxxxx
SIGNATURE=xxxxxxxxxx
METHOD=SetExpressCheckout
VERSION=98.0
RETURNURL=xxxxxxxxxx
CANCELURL=xxxxxxxxxx
ALLOWNOTE=1
PAYMENTREQUEST_0_PAYMENTACTION=Sale
PAYMENTREQUEST_0_CURRENCYCODE=EUR
PAYMENTREQUEST_0_AMT=106.72
PAYMENTREQUEST_0_ITEMAMT=106.72
L_PAYMENTREQUEST_0_QTY0=3
L_PAYMENTREQUEST_0_AMT0=28.46
L_PAYMENTREQUEST_0_NAME0=FIRSTitem
L_PAYMENTREQUEST_0_NUMBER0=0
L_PAYMENTREQUEST_0_QTY1=1
L_PAYMENTREQUEST_0_AMT1=21.34
L_PAYMENTREQUEST_0_NAME1=SECONDitem
L_PAYMENTREQUEST_0_NUMBER1=1

SetExpressCheckout API Response:

TOKEN=EC-3TL21567PX031102F
TIMESTAMP=2013-05-01T17:55:07Z
CORRELATIONID=57357a4d9619c
ACK=Success
VERSION=98.0
BUILD=5817241

GetExpressCheckoutDetails API Request:

USER=xxxxxxxxxx
PWD=xxxxxxxxxx
SIGNATURE=xxxxxxxxxx
METHOD=GetExpressCheckoutDetails
VERSION=98.0
TOKEN=EC-3TL21567PX031102F

GetExpressCheckoutDetails API Response:

TOKEN=EC-3TL21567PX031102F
CHECKOUTSTATUS=PaymentActionNotInitiated
TIMESTAMP=2013-05-01T17:56:26Z
CORRELATIONID=69c3839d7aedd
ACK=Success
VERSION=98.0
BUILD=5817241
[email protected]
PAYERID=EW4KQ9CQX45F6
PAYERSTATUS=verified
FIRSTNAME=MTS
LASTNAME=Testing
COUNTRYCODE=US
SHIPTONAME=PayPal PayPal
SHIPTOSTREET=123 street
SHIPTOCITY=omaha
SHIPTOSTATE=NE
SHIPTOZIP=68138
SHIPTOCOUNTRYCODE=US
SHIPTOCOUNTRYNAME=United States
ADDRESSSTATUS=Confirmed
CURRENCYCODE=EUR
AMT=106.72
ITEMAMT=106.72
SHIPPINGAMT=0.00
HANDLINGAMT=0.00
TAXAMT=0.00
INSURANCEAMT=0.00
SHIPDISCAMT=0.00
L_NAME0=FIRSTitem
L_NAME1=SECONDitem
L_NUMBER0=0
L_NUMBER1=1
L_QTY0=3
L_QTY1=1
L_TAXAMT0=0.00
L_TAXAMT1=0.00
L_AMT0=28.46
L_AMT1=21.34
L_ITEMWEIGHTVALUE0= 0.00000
L_ITEMWEIGHTVALUE1= 0.00000
L_ITEMLENGTHVALUE0= 0.00000
L_ITEMLENGTHVALUE1= 0.00000
L_ITEMWIDTHVALUE0= 0.00000
L_ITEMWIDTHVALUE1= 0.00000
L_ITEMHEIGHTVALUE0= 0.00000
L_ITEMHEIGHTVALUE1= 0.00000
PAYMENTREQUEST_0_CURRENCYCODE=EUR
PAYMENTREQUEST_0_AMT=106.72
PAYMENTREQUEST_0_ITEMAMT=106.72
PAYMENTREQUEST_0_SHIPPINGAMT=0.00
PAYMENTREQUEST_0_HANDLINGAMT=0.00
PAYMENTREQUEST_0_TAXAMT=0.00
PAYMENTREQUEST_0_INSURANCEAMT=0.00
PAYMENTREQUEST_0_SHIPDISCAMT=0.00
PAYMENTREQUEST_0_INSURANCEOPTIONOFFERED=false
PAYMENTREQUEST_0_SHIPTONAME=PayPal PayPal
PAYMENTREQUEST_0_SHIPTOSTREET=123 street
PAYMENTREQUEST_0_SHIPTOCITY=omaha
PAYMENTREQUEST_0_SHIPTOSTATE=NE
PAYMENTREQUEST_0_SHIPTOZIP=68138
PAYMENTREQUEST_0_SHIPTOCOUNTRYCODE=US
PAYMENTREQUEST_0_SHIPTOCOUNTRYNAME=United States
PAYMENTREQUEST_0_ADDRESSSTATUS=Confirmed
PAYMENTREQUEST_0_ADDRESSNORMALIZATIONSTATUS=None
L_PAYMENTREQUEST_0_NAME0=FIRSTitem
L_PAYMENTREQUEST_0_NAME1=SECONDitem
L_PAYMENTREQUEST_0_NUMBER0=0
L_PAYMENTREQUEST_0_NUMBER1=1
L_PAYMENTREQUEST_0_QTY0=3
L_PAYMENTREQUEST_0_QTY1=1
L_PAYMENTREQUEST_0_TAXAMT0=0.00
L_PAYMENTREQUEST_0_TAXAMT1=0.00
L_PAYMENTREQUEST_0_AMT0=28.46
L_PAYMENTREQUEST_0_AMT1=21.34
L_PAYMENTREQUEST_0_ITEMWEIGHTVALUE0= 0.00000
L_PAYMENTREQUEST_0_ITEMWEIGHTVALUE1= 0.00000
L_PAYMENTREQUEST_0_ITEMLENGTHVALUE0= 0.00000
L_PAYMENTREQUEST_0_ITEMLENGTHVALUE1= 0.00000
L_PAYMENTREQUEST_0_ITEMWIDTHVALUE0= 0.00000
L_PAYMENTREQUEST_0_ITEMWIDTHVALUE1= 0.00000
L_PAYMENTREQUEST_0_ITEMHEIGHTVALUE0= 0.00000
L_PAYMENTREQUEST_0_ITEMHEIGHTVALUE1= 0.00000
PAYMENTREQUESTINFO_0_ERRORCODE=0

DoExpressCheckoutPayment API Request:

USER=xxxxxxxxxx
PWD=xxxxxxxxxx
SIGNATURE=xxxxxxxxxx
METHOD=DoExpressCheckoutPayment
VERSION=98.0
TOKEN=EC-3TL21567PX031102F
PAYERID=EW4KQ9CQX45F6
PAYMENTREQUEST_0_PAYMENTACTION=Sale
PAYMENTREQUEST_0_CURRENCYCODE=EUR
PAYMENTREQUEST_0_AMT=106.72
PAYMENTREQUEST_0_ITEMAMT=106.72
L_PAYMENTREQUEST_0_QTY0=3
L_PAYMENTREQUEST_0_AMT0=28.46
L_PAYMENTREQUEST_0_NAME0=FIRSTitem
L_PAYMENTREQUEST_0_NUMBER0=0
L_PAYMENTREQUEST_0_QTY1=1
L_PAYMENTREQUEST_0_AMT1=21.34
L_PAYMENTREQUEST_0_NAME1=SECONDitem
L_PAYMENTREQUEST_0_NUMBER1=1

DoExpressCheckoutPayment API Response:

TOKEN=EC-3TL21567PX031102F
SUCCESSPAGEREDIRECTREQUESTED=false
TIMESTAMP=2013-05-01T17:57:16Z
CORRELATIONID=fb8b667b499a0
ACK=Success
VERSION=98.0
BUILD=5817241
INSURANCEOPTIONSELECTED=false
SHIPPINGOPTIONISDEFAULT=false
PAYMENTINFO_0_TRANSACTIONID=5YP27805RR1557744
PAYMENTINFO_0_TRANSACTIONTYPE=cart
PAYMENTINFO_0_PAYMENTTYPE=instant
PAYMENTINFO_0_ORDERTIME=2013-05-01T17:57:15Z
PAYMENTINFO_0_AMT=106.72
PAYMENTINFO_0_FEEAMT=3.44
PAYMENTINFO_0_SETTLEAMT=137.23
PAYMENTINFO_0_TAXAMT=0.00
PAYMENTINFO_0_CURRENCYCODE=EUR
PAYMENTINFO_0_EXCHANGERATE=1.32871
PAYMENTINFO_0_PAYMENTSTATUS=Completed
PAYMENTINFO_0_PENDINGREASON=None
PAYMENTINFO_0_REASONCODE=None
PAYMENTINFO_0_PROTECTIONELIGIBILITY=Eligible
PAYMENTINFO_0_PROTECTIONELIGIBILITYTYPE=ItemNotReceivedEligible,UnauthorizedPaymentEligible
PAYMENTINFO_0_SECUREMERCHANTACCOUNTID=6CFEBJAE59DAY
PAYMENTINFO_0_ERRORCODE=0
PAYMENTINFO_0_ACK=Success

Solution 2

We have the same problem but i figured it out, you need to login your paypal sandbox account to the pc you are testing your paypal payment

Share:
11,978
Peter
Author by

Peter

Updated on June 26, 2022

Comments

  • Peter
    Peter about 2 years

    i have problem, i`m trying to send multiple items to Paypal but it shows "Order total is missing." - 10400 error

    Version: 76.0
    I`m testing on paypal sandbox

    My request:

    &AMT=106.72
    &RETURNURL=http%3A%2F%mydomainname.com%2Fpp%2Fpaypal%2Fprocess.php
    &CANCELURL=http%3A%2F%mydomainname.com%2Fpp%2Fpaypal%2Fcancel_url.php
    &L_PAYMENTREQUEST_0_QTY0=3
    &L_PAYMENTREQUEST_0_AMT0=28.46
    &L_PAYMENTREQUEST_0_NAME0=FIRSTitem
    &L_PAYMENTREQUEST_0_NUMBER0=0
    &L_PAYMENTREQUEST_0_QTY1=1
    &L_PAYMENTREQUEST_0_AMT1=21.34
    &L_PAYMENTREQUEST_0_NAME1=SECONDitem
    &L_PAYMENTREQUEST_0_NUMBER1=1
    &CURRENCYCODE=EUR 
    &PAYMENTACTION=Sale 
    &ALLOWNOTE=1 
    &PAYMENTREQUEST_0_CURRENCYCODE=EUR
    &PAYMENTREQUEST_0_AMT=106.72
    &PAYMENTREQUEST_0_ITEMAMT=106.72
    

    Response:

    Array
    (
        [TIMESTAMP] => 2013%2d04%2d30T06%3a27%3a40Z
        [CORRELATIONID] => f1eae8919df21
        [ACK] => Failure
        [VERSION] => 76%2e0
        [BUILD] => 5817241
        [L_ERRORCODE0] => 10400
        [L_SHORTMESSAGE0] => Transaction%20refused%20because%20of%20an%20invalid%20argument%2e%20See%20additional%20error%20messages%20for%20details%2e
        [L_LONGMESSAGE0] => Order%20total%20is%20missing%2e
        [L_SEVERITYCODE0] => Error
    )
    


    I've tried to:

    1. Change servers - server is not the problem.
    2. Took out &AMT= , then it still didnt work, so i took &PAYMENTREQUEST_0_AMT= out and left &AMT= in... but still didnt work.. now there are both of them.

    Thanks!

  • Peter
    Peter about 11 years
    i changed everything as you sayed, but still the error is there.. - i guess that couldnt be servers fault? - 'cause when i did this with one item, it worked fine..
  • PP_MTS_Chad
    PP_MTS_Chad about 11 years
    I ran the same requet with both items, and it was going through for me as a success. The only thing I added was my credentials, the version, and the method as they were not in your example.
  • Peter
    Peter about 11 years
    did you add GetExpressCheckoutDetails ? and what version did you use?
  • Farid Movsumov
    Farid Movsumov almost 10 years
    What means "ItemNotReceivedEligible,UnauthorizedPaymentEligible"