Paypal Soap Api Developer 2012 Reference Manual

2015-07-27

: Paypal Paypal-Soap-Api-Developer-2012-Reference-Manual-778001 paypal-soap-api-developer-2012-reference-manual-778001 paypal pdf

Open the PDF directly: View PDF PDF.
Page Count: 400

DownloadPaypal Paypal-Soap-Api-Developer-2012-Reference-Manual- SOAP API Developer Reference  Paypal-soap-api-developer-2012-reference-manual
Open PDF In BrowserView PDF
SOAP API Developer
Reference

Last updated: August 2012

SOAP API Developer Reference
Document Number: 100002.en_US-201208

© 2012 PayPal, Inc. All rights reserved. PayPal is a registered trademark of PayPal, Inc. The PayPal logo is a trademark of PayPal, Inc. Other
trademarks and brands are the property of their respective owners.
The information in this document belongs to PayPal, Inc. It may not be used, reproduced or disclosed without the written approval of PayPal, Inc.
Copyright © PayPal. All rights reserved. PayPal S.à r.l. et Cie, S.C.A., Société en Commandite par Actions. Registered office: 22-24 Boulevard Royal, L2449, Luxembourg, R.C.S. Luxembourg B 118 349
Consumer advisory: The PayPal™ payment service is regarded as a stored value facility under Singapore law. As such, it does not require the approval
of the Monetary Authority of Singapore. You are advised to read the terms and conditions carefully.
Notice of non-liability:
PayPal, Inc. is providing the information in this document to you “AS-IS” with all faults. PayPal, Inc. makes no warranties of any kind (whether express,
implied or statutory) with respect to the information contained herein. PayPal, Inc. assumes no liability for damages (whether direct or indirect), caused
by errors or omissions, or resulting from the use of this document or the information contained in this document or resulting from the application or use
of the product or service described herein. PayPal, Inc. reserves the right to make changes to any information herein without further notice.

Contents

What’s New . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
What’s New in Version 93.0 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11

Preface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
About This Guide. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
Intended Audience . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
Where to Go for More Information . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
Documentation Feedback . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13

Chapter 1

PayPal SOAP API Basics . . . . . . . . . . . . . . . . . . 15

PayPal WSDL/XSD Schema Definitions . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
PayPal SOAP API Definitions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
Security . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
SOAP RequesterCredentials: Username, Password, Signature, and Subject. . . . . . . . 17
SOAP Service Endpoints. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
SOAP Request Envelope . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
Request Structure . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
SOAP Message Style: doc-literal . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
Response Structure . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
Error Responses . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
CorrelationID for Reporting Problems to PayPal. . . . . . . . . . . . . . . . . . . . . . . 24
UTF-8 Character Encoding . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
Date/Time Formats. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
Core Currency Amount Data Type . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24

Chapter 2

AddressVerify API Operation . . . . . . . . . . . . . . . . 27

AddressVerify Request Message . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
AddressVerifyRequest Fields . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
AddressVerify Response Message . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
AddressVerify Response Fields . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29

SOAP API Developer Reference

August 2012

3

Contents

Chapter 3

Authorization and Capture API Operation Reference . . . . 31

DoCapture API Operation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
DoCapture Request Message . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
DoCapture Response Message . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34
DoAuthorization API Operation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40
DoAuthorization Request Message . . . . . . . . . . . . . . . . . . . . . . . . . . . 40
DoAuthorization Response Message . . . . . . . . . . . . . . . . . . . . . . . . . . 41
DoReauthorization API Operation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44
DoReauthorization Request Message . . . . . . . . . . . . . . . . . . . . . . . . . . 44
DoReauthorization Response Message . . . . . . . . . . . . . . . . . . . . . . . . . 45
DoVoid API Operation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48
DoVoid Request Message . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48
DoVoid Response Message . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49

Chapter 4

DoDirectPayment API Operation

. . . . . . . . . . . . . . 51

DoDirectPayment Request Message . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51
DoDirectPayment Request Fields . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56
CreditCardDetailsType Fields . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58
PayerInfoType Fields . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59
PayerNameType Fields . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60
AddressType Fields . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60
PaymentDetailsType Fields . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61
PaymentDetailsItemType Fields . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64
EbayItemPaymentDetailsItemType Fields . . . . . . . . . . . . . . . . . . . . . . . . 65
AddressType (Shipping) Fields . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65
ThreeDSecureRequest Fields (U.K. Merchants Only) . . . . . . . . . . . . . . . . . . 66
DoDirectPayment Response Message . . . . . . . . . . . . . . . . . . . . . . . . . . . 67
DoDirectPayment Response Fields . . . . . . . . . . . . . . . . . . . . . . . . . . . 68
FMFDetailsType Fields . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68
RiskFilterListType Fields . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69
ThreeDSecure Response Fields. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70

Chapter 5

DoNonReferencedCredit API Operation . . . . . . . . . . . 71

DoNonReferencedCredit Request Message . . . . . . . . . . . . . . . . . . . . . . . . . 71
DoNonReferencedCredit Request Fields . . . . . . . . . . . . . . . . . . . . . . . . 73
CreditCardDetailsType Fields . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75
PayerNameType Fields . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76
PayerInfoType Fields . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76

4

August 2012

SOAP API Developer Reference

Contents

AddressType Fields . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77
DoNonReferencedCredit Response Message . . . . . . . . . . . . . . . . . . . . . . . . 78
DoNonReferencedCredit Response Fields . . . . . . . . . . . . . . . . . . . . . . . 78

Chapter 6

ExpressCheckout API Operations . . . . . . . . . . . . . . 79

SetExpressCheckout API Operation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79
SetExpressCheckout Request Message . . . . . . . . . . . . . . . . . . . . . . . . 79
SetExpressCheckout Response Message. . . . . . . . . . . . . . . . . . . . . . . .105
GetExpressCheckoutDetails API Operation . . . . . . . . . . . . . . . . . . . . . . . . .106
GetExpressCheckoutDetails Request Message . . . . . . . . . . . . . . . . . . . . .106
GetExpressCheckoutDetails Response Message . . . . . . . . . . . . . . . . . . . .107
DoExpressCheckoutPayment API Operation . . . . . . . . . . . . . . . . . . . . . . . .126
DoExpressCheckoutPayment Request Message . . . . . . . . . . . . . . . . . . . .126
DoExpressCheckoutPayment Response Message . . . . . . . . . . . . . . . . . . .139

Chapter 7

GetBalance API Operation . . . . . . . . . . . . . . . . . 155

GetBalance Request Message. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .155
GetBalance Request Fields . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .155
GetBalance Response Message. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .156
GetBalance Response Fields . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .156

Chapter 8

GetPalDetails API Operation

. . . . . . . . . . . . . . . 157

GetPalDetails Request Message . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .157
GetPalDetails Response Message. . . . . . . . . . . . . . . . . . . . . . . . . . . . . .158
GetPalDetails Response Fields . . . . . . . . . . . . . . . . . . . . . . . . . . . . .158

Chapter 9

GetTransactionDetails API Operation . . . . . . . . . . . 161

GetTransactionDetails Request Message . . . . . . . . . . . . . . . . . . . . . . . . . .161
GetTransactionDetails Request Fields. . . . . . . . . . . . . . . . . . . . . . . . . .161
GetTransactionDetails Response Message . . . . . . . . . . . . . . . . . . . . . . . . .162
GetTransactionDetails Response Fields. . . . . . . . . . . . . . . . . . . . . . . . .168
PaymentTransactionDetailsType Fields . . . . . . . . . . . . . . . . . . . . . . . . .170
ReceiverInfoType Fields . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .171
PayerInfoType Fields . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .171
PayerName Fields . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .172
AddressType Fields . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .172
PaymentInfoType Fields . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .173

SOAP API Developer Reference

August 2012

5

Contents

PaymentItemInfoType Fields . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .178
PaymentItemType Fields . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .179
AuctionInfoType Fields. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .180
SubscriptionInfoType Fields . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .180
SubscriptionTermsType Fields . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .181

Chapter 10

ManagePendingTransactionStatus API Operation . . . . . 183

ManagePendingTransactionStatus Request Message. . . . . . . . . . . . . . . . . . . .183
ManagePendingTransactionStatus Request Fields . . . . . . . . . . . . . . . . . . .183
ManagePendingTransactionStatus Response Message. . . . . . . . . . . . . . . . . . .184
ManagePendingTransactionStatus Response Fields . . . . . . . . . . . . . . . . . .184

Chapter 11

MassPay API Operation . . . . . . . . . . . . . . . . . . 185

MassPay Request Message . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .185
MassPay Request Fields . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .185
MassPay Response Message . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .186
MassPay Response Fields . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .186

Chapter 12

Recurring Payments and Reference Transactions API
Operations187

CreateRecurringPaymentsProfile API Operation . . . . . . . . . . . . . . . . . . . . . .187
CreateRecurringPaymentsProfile Request Message . . . . . . . . . . . . . . . . . .187
CreateRecurringPaymentsProfile Response Message . . . . . . . . . . . . . . . . .203
GetRecurringPaymentsProfileDetails API Operation . . . . . . . . . . . . . . . . . . . .204
GetRecurringPaymentsProfileDetails Request Message . . . . . . . . . . . . . . . .204
GetRecurringPaymentsProfileDetails Response Message . . . . . . . . . . . . . . .205
ManageRecurringPaymentsProfileStatus API Operation . . . . . . . . . . . . . . . . . .217
ManageRecurringPaymentsProfileStatus Request Message . . . . . . . . . . . . . .217
ManageRecurringPaymentsProfileStatus Response Message . . . . . . . . . . . . .218
BillOutstandingAmount API Operation . . . . . . . . . . . . . . . . . . . . . . . . . . . .219
BillOutstandingAmount Request Message . . . . . . . . . . . . . . . . . . . . . . .219
BillOutstandingAmount Response Message. . . . . . . . . . . . . . . . . . . . . . .220
UpdateRecurringPaymentsProfile API Operation . . . . . . . . . . . . . . . . . . . . . .221
UpdateRecurringPaymentsProfile Request Message . . . . . . . . . . . . . . . . . .221
UpdateRecurringPaymentsProfile Response Message . . . . . . . . . . . . . . . . .232
SetCustomerBillingAgreement API Operation . . . . . . . . . . . . . . . . . . . . . . . .233
SetCustomerBillingAgreement Request Message. . . . . . . . . . . . . . . . . . . .233
SetCustomerBillingAgreement Response Message . . . . . . . . . . . . . . . . . . .237

6

August 2012

SOAP API Developer Reference

Contents

CreateBillingAgreement API Operation . . . . . . . . . . . . . . . . . . . . . . . . . . .238
CreateBillingAgreement Request Message . . . . . . . . . . . . . . . . . . . . . . .238
CreateBillingAgreement API Response Message . . . . . . . . . . . . . . . . . . . .239
GetBillingAgreementCustomerDetails API Operation . . . . . . . . . . . . . . . . . . . .240
GetBillingAgreementCustomerDetails Request Message . . . . . . . . . . . . . . . .240
GetBillingAgreementCustomerDetails Response Message . . . . . . . . . . . . . . .241
BAUpdate API Operation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .245
BAUpdate Request Message . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .245
BAUpdate Response Message . . . . . . . . . . . . . . . . . . . . . . . . . . . . .246
DoReferenceTransaction API Operation . . . . . . . . . . . . . . . . . . . . . . . . . . .251
DoReferenceTransaction Request Message . . . . . . . . . . . . . . . . . . . . . .251
DoReferenceTransaction Response Message . . . . . . . . . . . . . . . . . . . . .265

Chapter 13

RefundTransaction API Operation . . . . . . . . . . . . . 275

RefundTransaction Request Message . . . . . . . . . . . . . . . . . . . . . . . . . . . .275
RefundTransaction Request Fields . . . . . . . . . . . . . . . . . . . . . . . . . . .276
MerchantStoreDetailsTypeFields . . . . . . . . . . . . . . . . . . . . . . . . . . . .277
RefundTransaction Response Message . . . . . . . . . . . . . . . . . . . . . . . . . . .278
RefundTransaction Response Fields . . . . . . . . . . . . . . . . . . . . . . . . . .278
RefundInfoType Fields . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .280

Chapter 14

TransactionSearch API Operation . . . . . . . . . . . . . 281

TransactionSearch Request Message . . . . . . . . . . . . . . . . . . . . . . . . . . . .281
TransactionSearch Request Fields . . . . . . . . . . . . . . . . . . . . . . . . . . .282
PayerName Fields . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .284
TransactionSearch Response Message . . . . . . . . . . . . . . . . . . . . . . . . . . .285
TransactionSearch Response Fields . . . . . . . . . . . . . . . . . . . . . . . . . .285

Appendix A API Error Codes . . . . . . . . . . . . . . . . . . . . . . 287
General API Errors . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .287
Validation Errors . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .288
DirectPayment API Errors . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .291
SetExpressCheckout API Errors . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .303
GetExpressCheckoutDetails API Errors . . . . . . . . . . . . . . . . . . . . . . . . . . .317
DoExpressCheckoutPayment API Errors . . . . . . . . . . . . . . . . . . . . . . . . . .318
Authorization and Capture API Errors . . . . . . . . . . . . . . . . . . . . . . . . . . . .327
GetTransactionDetails API Errors . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .331

SOAP API Developer Reference

August 2012

7

Contents

TransactionSearch API Errors . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .331
RefundTransaction API Errors . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .333
MassPay API Errors . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .336
Recurring Payments Errors . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .338
SetCustomerBillingAgreement Errors . . . . . . . . . . . . . . . . . . . . . . . . . . . .345
GetBillingAgreementCustomerDetails Errors . . . . . . . . . . . . . . . . . . . . . . . .347
CreateBillingAgreement Errors. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .347
UpdateBillingAgreement Errors . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .348
DoReferenceTransaction Errors . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .349
AddressVerify API Errors. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .356
ManagePendingTransactionStatus API Errors . . . . . . . . . . . . . . . . . . . . . . . .356

Appendix B Countries and Regions Supported by PayPal

. . . . . . 357

Appendix C State and Province Codes . . . . . . . . . . . . . . . . . 365
Appendix D Currency Codes . . . . . . . . . . . . . . . . . . . . . . 369
Appendix E AVS and CVV2 Response Codes

. . . . . . . . . . . . . 371

AVS Response Codes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .371
AVS Response Codes for Visa, MasterCard, Discover, and American Express . . . .371
AVS Response Codes for Maestro . . . . . . . . . . . . . . . . . . . . . . . . . . .372
CVV2 Response Codes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .373
CVV2 Response Codes for Visa, MasterCard, Discover, and American Express . . . .373
CVV2 Response Codes for Maestro. . . . . . . . . . . . . . . . . . . . . . . . . . .373

About Previous Versions of the API . . . . . . . . . . . . . . . . . . . 375
What’s New in Version 92.0 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .375
What’s New in Version 89.0 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .375
What’s New in Version 88.0 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .375
What’s New in Version 85.0 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .375
What’s New in Version 84.0 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .375
New Field in RefundTransaction Response . . . . . . . . . . . . . . . . . . . . . . .376
New RefundInfoType in RefundTransaction Response . . . . . . . . . . . . . . . . .376
New Field in DoReferenceTransactionResponseDetailsType

. . . . . . . . . . . . .376

New Field in DoDirectPaymentResponse . . . . . . . . . . . . . . . . . . . . . . . .377
What’s New in Version 82.0 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .377

8

August 2012

SOAP API Developer Reference

Contents

New Field in DoCapture Request . . . . . . . . . . . . . . . . . . . . . . . . . . . .377
New MerchantStoreDetailsType in DoCapture Request . . . . . . . . . . . . . . . . .377
New Fields in RefundTransaction Request . . . . . . . . . . . . . . . . . . . . . . .378
New MerchantStoreDetailsType in RefundTransaction Request . . . . . . . . . . . .378
What’s New in Version 80.0 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .379
New Field in PaymentDetailsType in DoDirectPayment Request . . . . . . . . . . . .379
New Fields in PaymentDetailsType in DoReferenceTransaction Request . . . . . . .379
What’s New in Version 74.0 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .380
New Behavior of DoExpressCheckoutPayment . . . . . . . . . . . . . . . . . . . . .380
New DoExpressCheckoutPayment Error Code . . . . . . . . . . . . . . . . . . . . .380
What’s New in Version 72.0 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .380
Changes to BuyerDetailsType in SetExpressCheckout Request . . . . . . . . . . . .380
New TaxIdDetailsType Structure in SetExpressCheckout Request . . . . . . . . . . .381
New TaxIdDetailsType Structure in GetExpressCheckoutDetails Response . . . . . .381
What’s New in Version 69 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .382
New PaymentDetailsItemType Structure in CreateRecurringPaymentsProfile Request 382
Changes to PaymentDetailsItemType in DoReferenceTransaction Request . . . . . .383
What’s New in Version 66 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .384
Changes to PaymentDetailsType in SetExpressCheckout and
DoExpressCheckoutPayment Requests. . . . . . . . . . . . . . . . . . . . . . . . .384
Changes to PaymentDetailsItemTypein SetExpressCheckout and
DoExpressCheckoutPayment Requests . . . . . . . . . . . . . . . . . . . . . . . .384
Changes to PaymentDetailsItemType in GetExpressCheckoutDetails Response . . .385

Revision History . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 387
Index . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 391

SOAP API Developer Reference

August 2012

9

Contents

10

August 2012

SOAP API Developer Reference

What’s New

What’s New in Version 93.0
Maintenance release. New 10486 error code added for redirects when the process declines the
transaction: The transaction couldn’t be completed. Please redirect your customer to PayPal.

SOAP API Developer Reference

August 2012

11

What’s New in Version 93.0

12

August 2012

SOAP API Developer Reference

Preface

About This Guide
The SOAP API Developer Reference describes the PayPal SOAP API.

Intended Audience
This guide is written for developers who are implementing solutions using the SOAP API. It is
written for developers who are implementing solutions using the SOAP API.

Where to Go for More Information


Express Checkout Integration Guide



Express Checkout Advanced Features Guide



Merchant Setup and Administration Guide

Documentation Feedback
Help us improve this guide by sending feedback to:
documentationfeedback@paypal.com

SOAP API Developer Reference

August 2012

13

Documentation Feedback

14

August 2012

SOAP API Developer Reference

1

PayPal SOAP API Basics

The PayPal SOAP API is based on open standards known collectively as web services, which
include the Simple Object Access Protocol (SOAP), Web Services Definition Language
(WSDL), and the XML Schema Definition language (XSD). A wide range of development
tools on a variety of platforms support web services.
Like many web services, PayPal SOAP is a combination of client-side and server-side
schemas, hardware and software servers, and core services.
PayPal SOAP High-level Diagram

In an object-oriented processing model, the interface to SOAP requests/responses is an object
in your application’s native programming language. Your third-party SOAP client generates
business-object interfaces and network stubs from PayPal-provided WSDL and XSD files that
specify the PayPal SOAP message structure, its contents, and the PayPal API service bindings.
A business application works with data in the form of object properties to send and receive
data by calling object methods. The SOAP client handles the details of building the SOAP
request, sending it to the PayPal service, and converting the response back to an object.

SOAP API Developer Reference

August 2012

15

1

PayPal SOAP API Basics
PayPal WSDL/XSD Schema Definitions

PayPal WSDL/XSD Schema Definitions
The PayPal Web Services schema and its underlying eBay Business Language (eBL) base and
core components are required for developing applications with the PayPal Web Services API.
The following are the locations of the WSDL and XSD files.
Location of PayPal WSDL and XSD Files
Development and Test with the PayPal Sandbox API Service
PayPal Schema

https://www.sandbox.paypal.com/wsdl/PayPalSvc.wsdl

eBL Base Components and
Component Types

https://www.sandbox.paypal.com/wsdl/eBLBaseComponents.xsd
https://www.sandbox.paypal.com/wsdl/CoreComponentTypes.xsd

Production with Live PayPal Web Services API Service
PayPal Schema

https://www.paypal.com/wsdl/PayPalSvc.wsdl

eBL Base Components and
Component Types

http://www.paypal.com/wsdl/eBLBaseComponents.xsd
http://www.paypal.com/wsdl/CoreComponentTypes.xsd

PayPal SOAP API Definitions
The PayPal SOAP API comprises individual API definitions for specific business functions.
As a foundation, the API relies on eBay Business Language (eBL) base and core components.
The core eBL structures AbstractRequestType and AbstractResponseType are the
basis of the SOAP request and response of each PayPal API. AbstractResponseType is
also the framework for error messages common across all PayPal APIs.
PayPal has made some schema design decisions that can affect how businesses design their
own applications.


Enumerations: Enumerations are defined directly in the PayPal API schema.



Troubleshooting information: The PayPal API returns information about elements that
trigger errors.



Backward compatibility: The PayPal API is versioned so that business applications are
backward compatible when new elements are introduced to the server-side schema.

NOT E :

16

eBL defines many structures that are specific to processing auctions. PayPal’s SOAP
schema includes these definitions to maintain compatibility with eBay’s SOAP and
for possible future joint use of SOAP across both eBay and PayPal. The material
focuses only on those SOAP definitions pertinent to use of the PayPal SOAP API.

August 2012

SOAP API Developer Reference

PayPal SOAP API Basics
Security

1

Security
The PayPal SOAP API service is protected to ensure that only authorized PayPal members use
it. There are four levels of security:
1. A required API username (Username field) and API password (Password field).
2. A third required authentication mechanism, which is either one of the following:
– Client-side request signing using a PayPal-issued API Certificate
– Request authentication using an API Signature included in the request (Signature
field)
3. An optional third-party authorization to make the API call on some other account’s behalf
(the optional Subject field).
4. Secure Sockets Layer (SSL) data transport.
A failure of authenticated security at any one of these levels denies access to the PayPal SOAP
API service.

SOAP RequesterCredentials: Username, Password, Signature,
and Subject
For the security of your business, PayPal must verify that merchants or third-party developers
are permitted to initiate a transaction before they make one. PayPal authenticates each request.
If the request cannot be authenticated, a SOAP security fault is returned.
In the SOAP request header, your SOAP client must set the Username, Password elements
to pass an API username/password combination. In addition, you can set the Signature or
Subject elements to specify your API signature string and an optional third-party account
email address for authentication.
The following example shows part of the RequesterCredentials elements. These
elements are required for all SOAP requests.



api_username
api_password
api_signature
authorizing_account_emailaddress




SOAP API Developer Reference

August 2012

17

1

PayPal SOAP API Basics
SOAP Service Endpoints

RequesterCredentials Authentication Elements in SOAP Header
Element

Value

Description



api_username

Your API username, which is auto-generated by PayPal when you
apply for a digital certificate to use the PayPal SOAP API. You can
see this value on https://www.paypal.com/ in your Profile under
API Access > API Certificate Information.



api_password

Your API password, which you specify when you apply for a digital
certificate to use the PayPal SOAP API.



api_signature

Your API signature, if you use one instead of an API Certificate.



authorizing_
account_
emailaddress

The email address of a third-party for whom you are sending
requests to the PayPal SOAP API. Your API username must have
been granted permission by this third-party to make any particular
PayPal API request.

Related information:
Request Structure

SOAP Service Endpoints
Depending on your chosen authentication mechanism, your SOAP requests must be processed
by different service endpoints.
SOAP Service Endpoints
Authentication
Mechanism

Live Production Endpoint

Test (Sandbox) Endpoint

API Signature

https://api-3t.paypal.com/2.0/

https://api-3t.sandbox.paypal.com/2.0/

API Certificate

https://api.paypal.com/2.0/

https://api.sandbox.paypal.com/2.0/

SOAP Request Envelope
The following diagram illustrates the contents of a PayPal SOAP request envelope.
All PayPal APIs are based on two core structures: AbstractRequestType and
AbstractResponseType.

18

August 2012

SOAP API Developer Reference

PayPal SOAP API Basics
Request Structure

1

Diagram of SOAP Request Envelope

Request Structure
The following annotated description of the SOAP request structure shows the elements
required by the PayPal SOAP API.
General Structure of PayPal API SOAP Request





SOAP API Developer Reference

August 2012

19

1

PayPal SOAP API Basics
Request Structure

api_username
api_password








service_version

data





Annotation of Generic SOAP Request
Lines

Comment

12, 13

The  and  fields are part of the PayPal SOAP API
 security authentication mechanism you must construct for
every SOAP request header.

14

The  element should include your API signature string if that is the kind of API
credential you are using.

15

The  element can specify a third-party PayPal account by whom you are
authorized to make this request.

19 through 27

The SOAP request for every PayPal API follows this element-naming pattern. The API’s
specific name is appended with Req, and in this element the specific_api_name_Request is
nested. Each specific_api_name_Request has a corresponding
specific_api_name_RequestType.

22

The number of the PayPal SOAP API version is required on each SOAP request.
This version number is the value of ns:version in
https://www.paypal.com/wsdl/PayPalSvc.wsdl.

24

For details about required and optional elements and values for specific requests, see the
description of individual APIs.

Related information:
SOAP RequesterCredentials: Username, Password, Signature, and Subject

20

August 2012

SOAP API Developer Reference

PayPal SOAP API Basics
SOAP Message Style: doc-literal

1

SOAP Message Style: doc-literal
PayPal uses doc-literal SOAP messaging, not rpc-encoding. With doc-literal, a
single service interface call passes an XML document in the request to the PayPal API server,
which responds with an XML document instance.

Response Structure
The following is an annotated description of the structure of a SOAP response from the PayPal
API where response is Success:










 dateTime_in_UTC/GMT

Success

serviceVersion



SOAP API Developer Reference

August 2012

21

1

PayPal SOAP API Basics
Error Responses

applicationCorrelation


api_build_number

 data




Annotation of Generic SOAP Response
Lines

Comment

22 and 31

The specific_api_name_Response start and end elements.

23

Each API response contains a timestamp with its date and time in UTC/GMT.

24

The  element contains the string Success after the corresponding request has been
successfully processed.
In the case of errors, Ack is set to a value other than Success, and the response body contains
an  element with information to help you troubleshoot the cause of the error. See
“Error Responses” on page 22.

26

The  element contains information about the PayPal application that
processed the request.
Use the value of this element if you need to troubleshoot a problem with one of your requests.

27 through 30

The different PayPal APIs return different structures depending on their response definitions.
For detailed information, see the description of the individual APIs.
N O TE :

Because a field is defined in the formal structure of an API response, this does not
mean that the field is necessarily returned. Data are returned in a response only if
PayPal has recorded data that corresponds to the field.

Related information:
Error Responses

Error Responses
If a request is malformed or contains some other error, the body of the SOAP response
contains an  element with other elements that can help you troubleshoot the cause
of the error.
The structure of error messages are as follows:

22

August 2012

SOAP API Developer Reference

PayPal SOAP API Basics
Error Responses

1

The most important of these additional elements are as follows:


ShortMessage



LongMessage



ErrorCode

Additional information can appear as part of ErrorParametersType. For example, if the
error in ParamID is ProcessorResponse, the Value would contain the processor-specific
error, such as 0091. Values set in the ErrorParametersType are not set by PayPal; rather,
they are passed through from the source.
NOT E :

PayPal only passes selected values in ErrorParametersType.

The following example shows the error response if your API username and password do not
match a legitimate API username and password on file with PayPal.
Example of SOAP Error Response: Bad Username or Password


... details not shown.



2005-02-09T21:51:26Z

Failure


Authentication/Authorization Failed


Username/Password is incorrect

10002

Error


SOAP API Developer Reference

August 2012

23

1

PayPal SOAP API Basics
CorrelationID for Reporting Problems to PayPal



debugging_info


1.000000

1.0006..
other elements in response.



Related information:
Response Structure

CorrelationID for Reporting Problems to PayPal
The value returned in CorrelationID is important for PayPal to determine the precise cause
of any error you might encounter. If you have to troubleshoot a problem with your requests,
we suggest that you capture the value of CorrelationID so you can report it to PayPal.

UTF-8 Character Encoding
The PayPal API assumes that all data in requests is in Unicode, specifically, the Unicode (or
UCS) Transformation Format, 8-bit encoding form (UTF-8).
In responses, the API always returns data in UTF-8.

Date/Time Formats
The PayPal SOAP API schema defines date/time values as Coordinated Universal Time
(UTC/GMT), using ISO 8601 format, and of type ns:dateTime. An example date/time
stamp is 2006-08-24T05:38:48Z

Core Currency Amount Data Type
The core currency amount data type is called BasicAmountType and is derived from
string. All currency amount fields have the following structure:
1. The currencyID attribute is required.
2. The amount must have two decimal places.

24

August 2012

SOAP API Developer Reference

PayPal SOAP API Basics
Core Currency Amount Data Type

1

3. The decimal separator must be a period (“.”).
4. You must not use any thousands separator.
5. BasicAmountType has a data type of ebl:CurrencyCodeType, which defines a large
number of different currency codes. However, for your processing to succeed, you must set
currencyCode to a valid currency code. Some APIs support only a subset of currencies.
Here is an example. (The field name Amount is an example; actual field names can vary
depending on the specific API.)
3.00

SOAP API Developer Reference

August 2012

25

1

26

PayPal SOAP API Basics
Core Currency Amount Data Type

August 2012

SOAP API Developer Reference

2

AddressVerify API Operation

The AddressVerify API operation confirms whether a postal address and postal code match
those of the specified PayPal account holder.

AddressVerify Request Message

NOT E :

Not all fields shown are available for use. Use only the fields described in the
documentation.

AddressVerifyRequest Fields
Field

Description

Email

ebl:EmailAddressType
(Required) Email address of a PayPal member to verify.
Character length and limitations: 255 single-byte characters maximum with the input
mask: ?@?.??

SOAP API Developer Reference

August 2012

27

2

AddressVerify API Operation
AddressVerify Response Message

Field

Description

Street

xs:string
(Required) First line of the billing or shipping postal address to verify. To pass
verification, the value of Street must match the first 3 single-byte characters of a
postal address on file for the PayPal member.
Character length and limitations: 35 single-byte characters maximum, including
alphanumeric plus - , . ‘ # \. Whitespace and case of input value are ignored.

Zip

xs:string
(Required) Postal code to verify. To pass verification, the value of Zip must match
the first 5 single-byte characters of the postal code of the verified postal address for
the verified PayPal member.
Character length and limitations: 16 single-byte characters maximum. Whitespace
and case of input value are ignored.

AddressVerify Response Message

NOT E :

28

Not all fields shown are available for use. Use only the fields described in the
documentation.

August 2012

SOAP API Developer Reference

AddressVerify API Operation
AddressVerify Response Message

2

AddressVerify Response Fields
Field

Description

ConfirmationCode

ebl:AddressStatuscodeType
Indicates whether the address is a confirmed address on file at PayPal. It is one of the
following values:
 None – The request value of the Email element does not match any email address
on file at PayPal.
 Confirmed – If the response value of the StreetMatch element is Matched,
the entire postal address is confirmed.
 Unconfirmed – PayPal responds that the postal address is unconfirmed.
N O TE :

The values Confirmed and Unconfirmed both indicate that the member
email address passed verification.

StreetMatch

ebl:MatchStatusCodeType
Indicates whether the street address matches address information on file at PayPal. It
is one of the following values:
 None – The request value of the Email element does not match any email address
on file at PayPal. No comparison of other request values was made.
 Matched – The request value of the Street element matches the first 3 single-byte
characters of a postal address on file for the PayPal member.
 Unmatched – The request value of the Street element does not match any
postal address on file for the PayPal member.

ZipMatch

ebl:MatchStatusCodeType
Indicates whether the zip address matches address information on file at PayPal. It is
one of the following values:
 None – The request value of the Street element was unmatched. No comparison
of the Zip element was made.
 Matched – The request value of the Zip element matches the zip code of the
postal address on file for the PayPal member.
 Unmatched – The request value of the Zip element does not match the zip code
of the postal address on file for the PayPal member.

CountryCode

ebl:CountryCodeType
Country code (ISO 3166) on file for the PayPal email address.
Character length and limitations: 2 single-byte characters

PayPalToken

xs:string
The token contains encrypted information about the member’s email address and
postal address. If you pass the value of the token in the HTML variable
address_api_token of Buy Now buttons, PayPal prevents the buyer from using
an email address or postal address other than those that PayPal verified with this API
call. The token is valid for 24 hours.
Character length and limitations: 94 single-byte characters

SOAP API Developer Reference

August 2012

29

2

30

AddressVerify API Operation
AddressVerify Response Message

August 2012

SOAP API Developer Reference

3

Authorization and Capture API
Operation Reference
The Authorization and Capture API operations describe the PayPal API operations related to
delayed payment settlement:

DoCapture API Operation
Captures an authorized payment.

DoCapture Request Message

NOT E :

Not all fields shown are available for use. Use only the fields described in the
documentation.

SOAP API Developer Reference

August 2012

31

3

Authorization and Capture API Operation Reference
DoCapture API Operation

DoCapture Request Fields
Field

Description

AuthorizationID

xs:string
(Required) Authorization identification number of the payment you want to capture.
This is the transaction ID returned from DoExpressCheckoutPayment,
DoDirectPayment, or CheckOut. For point-of-sale transactions, this is the
transaction ID returned by the CheckOut call when the payment action is
Authorization.
Character length and limitations: 19 single-byte characters maximum

Amount

ebl:BasicAmountType
(Required) Amount to capture.
NOTE:

You must set the currencyID attribute to one of the three-character
currency codes for any of the supported PayPal currencies.

Character length and limitations: Value is a positive number which cannot exceed
$10,000 USD in any currency. It includes no currency symbol. It must have 2 decimal
places, the decimal separator must be a period (.), and the optional thousands
separator must be a comma (,).
CompleteType

ebl:CompleteCodeType
(Required) Indicates whether or not this is your last capture. It is one of the following
values:
 Complete – This is the last capture you intend to make.
 NotComplete – You intend to make additional captures.
NOTE:

InvoiceID

If Complete, any remaining amount of the original authorized transaction is
automatically voided and all remaining open authorizations are voided.

xs:string
(Optional) Your invoice number or other identification number that is displayed to
you and to the buyer in their transaction history. The value is recorded only if the
authorization you are capturing is an Express Checkout order authorization.
NOTE:

This value on DoCapture overwrites a value previously set on
DoAuthorization.

Character length and limitations: 127 single-byte alphanumeric characters
Note

32

xs:string
(Optional) An informational note about this settlement that is displayed to the buyer
in email and in their transaction history.
Character length and limitations: 255 single-byte characters

August 2012

SOAP API Developer Reference

Authorization and Capture API Operation Reference
DoCapture API Operation

Field

Description

SoftDescriptor

xs:string
(Optional) Per transaction description of the payment that is passed to the buyer’s
credit card statement.
If you provide a value in this field, the full descriptor displayed on the buyer’s
statement has the following format:
<1 space>
Character length and limitations: The soft descriptor can contain only the following
characters:
 Alphanumeric characters
 - (dash)
 * (asterisk)
 . (period)
 {space}

3

If you pass any other characters (such as “,”), PayPal returns an error code.
The soft descriptor does not include the phone number, which can be toggled between
your customer service number and PayPal’s Customer Service number.
The maximum length of the soft descriptor is 22 characters. Of this, the PayPal prefix
uses either 4 or 8 characters of the data format. Thus, the maximum length of the soft
descriptor information that you can pass in this field is:
22 - len() - len( + 1)
For example, assume the following conditions:
 The PayPal prefix toggle is set to PAYPAL * in PayPal’s administration tools.
 The merchant descriptor set in the Payment Receiving Preferences is set to EBAY.
 The soft descriptor is passed in as JanesFlowerGifts LLC.
The resulting descriptor string on the credit card is:
PAYPAL *EBAY JanesFlow
MerchantStoreDetail
s

ns:MerchantStoreDetailsType
(Optional) Information about the merchant store.
This field is available since version 82.0.

MsgSubId

xs:string
(Optional) A message ID used for idempotence to uniquely identify a message. This
ID can later be used to request the latest results for a previous request without
generating a new request. Examples of this include requests due to timeouts or errors
during the original request.
Character length and limitations: string of up to 38 single-byte characters.
This field is available since version 92.0.

SOAP API Developer Reference

August 2012

33

3

Authorization and Capture API Operation Reference
DoCapture API Operation

MerchantStoreDetailsTypeFields
Field

Description

StoreID

xs:string
Identifier of the merchant store at which the refund is given. This field is
required for point-of-sale transactions.
Character length and limitations: 50 single-byte characters
This field is available since version 82.0.

TerminalID

xs:string
(Optional) ID of the terminal.
Character length and limitations: 50 single-byte characters
This field is available since version 82.0.

DoCapture Response Message

34

NOT E :

If you use version 56.0 or later of the DoCaptue API, only the authorization ID,
transaction ID, transaction type, payment date, gross amount, and payment status are
guaranteed to be returned. If you need the values of other fields and they are not
returned, you can obtain their values later by calling GetTransactionDetails or
by using the reporting mechanism. Not applicable to point of sale transactions.

NOT E :

Not all fields shown are available for use. Use only the fields described in the
documentation.

August 2012

SOAP API Developer Reference

Authorization and Capture API Operation Reference
DoCapture API Operation

NOT E :

3

Not all fields shown are available for use. Use only the fields described in the
documentation.

DoCapture Response Fields
Field

Description

AuthorizationID

xs:string
Authorization identification number you specified in the request.
Character length and limits: 19 single-byte characters maximum

PaymentInfo

ebl:PaymentInfoType
Information about the payment.

SOAP API Developer Reference

August 2012

35

3

Authorization and Capture API Operation Reference
DoCapture API Operation

Field

Description

MsgSubId

xs:string
(Optional) A message ID used for idempotence to uniquely identify a message. This
ID can later be used to request the latest results for a previous request without
generating a new request. Examples of this include requests due to timeouts or errors
during the original request.
Character length and limitations: string of up to 38 single-byte characters.
This field is available since version 92.0.
PaymentInfoTypeFields

Field

Description

TransactionID

xs:string
Unique transaction ID of the payment.
Character length and limitations: 17 single-byte characters

ParentTransactionID

xs:string
Parent or related transaction identification number. This field is populated for the
following transaction types:
 Reversal. Capture of an authorized transaction.
 Reversal. Reauthorization of a transaction.
 Capture of an order. The value of ParentTransactionID is the original
OrderID.
 Authorization of an order. The value of ParentTransactionID is the original
OrderID.
 Capture of an order authorization.
 Void of an order. The value of ParentTransactionID is the original OrderID.
Character length and limitations: 16 digits
Only authorization of an order and capture of an order authorization apply to pointof-sale transactions.

ReceiptID

xs:string
Receipt identification number.
Character length and limitations: 16 digits
Empty for point-of-sale transactions.

TransactionType

ns:PaymentTransactionCodeType
The type of transaction. It is one of the following values:
 cart
 express-checkout
Character length and limitations:15 single-byte characters

36

August 2012

SOAP API Developer Reference

Authorization and Capture API Operation Reference
DoCapture API Operation

Field

Description

PaymentType

ebl:PaymentCodeType
Indicates whether the payment is instant or delayed. It is one of the following values:
 none
 echeck
 instant

3

Character length and limitations: 7 single-byte characters
PaymentDate

xs:dateTime
Time/date stamp of payment. For example: 2006-08-15T17:23:15Z

GrossAmount

ebl:BasicAmountType
The final amount charged, including any shipping and taxes from your Merchant
Profile. Shipping and taxes do not apply to point-of-sale transactions.
Character length and limitations: Value is a positive number which cannot exceed
$10,000 USD in any currency. It includes no currency symbol. It must have 2 decimal
places, the decimal separator must be a period (.), and the optional thousands
separator must be a comma (,). Equivalent to 9 characters maximum for USD.

FeeAmount

ebl:BasicAmountType
PayPal fee amount charged for the transaction.
Character length and limitations: Value is a positive number which cannot exceed
$10,000 USD in any currency. It includes no currency symbol. It must have 2 decimal
places, the decimal separator must be a period (.), and the optional thousands
separator must be a comma (,). Equivalent to 9 characters maximum for USD.

SettleAmount

ebl:BasicAmountType
Amount deposited in your PayPal account after a currency conversion.
Character length and limitations: Value is a positive number which cannot exceed
$10,000 USD in any currency. It includes no currency symbol. It must have 2 decimal
places, the decimal separator must be a period (.), and the optional thousands
separator must be a comma (,). Equivalent to 9 characters maximum for USD.

TaxAmount

ebl:BasicAmountType
Tax charged on the transaction.
Character length and limitations: Value is a positive number which cannot exceed
$10,000 USD in any currency. It includes no currency symbol. It must have 2 decimal
places, the decimal separator must be a period (.), and the optional thousands
separator must be a comma (,). Equivalent to 9 characters maximum for USD.

ExchangeRate

xs:string
Exchange rate if a currency conversion occurred. Relevant only if your are billing in
their non-primary currency. If the customer chooses to pay with a currency other than
the non-primary currency, the conversion occurs in the buyer’s account.
Character length and limitations: A decimal that does not exceed 17 characters,
including decimal point

SOAP API Developer Reference

August 2012

37

3

Authorization and Capture API Operation Reference
DoCapture API Operation

Field

Description

PaymentStatus

ebl:PendingStatusCodeType
Status of the payment. It is one of the following values:
NOTE:

















38

In a successful DoCapture response for a point-of-sale authorization, the only
value value is Completed.

None – No status
Canceled-Reversal – This means a reversal has been canceled. For example,
you won a dispute with the customer, and the funds for the transaction that was
reversed have been returned to you.
Completed – The payment has been completed, and the funds have been added
successfully to your account balance. This is the only value status for point-ofsale transactions.
Denied – You denied the payment. This happens only if the payment was
previously pending because of possible reasons described for the PendingReason
element.
Expired – The authorization period for this payment has been reached.
Failed – The payment has failed. This happens only if the payment was made
from your customer’s bank account.
Pending – The payment is pending. See the PendingReason field for more
information.
Refunded – You refunded the payment.
Reversed – A payment was reversed due to a chargeback or other type of
reversal. The funds have been removed from your account balance and returned to
the buyer. The reason for the reversal is specified in the ReasonCode element.
Processed – A payment has been accepted.
Voided – An authorization for this transaction has been voided.

August 2012

SOAP API Developer Reference

Authorization and Capture API Operation Reference
DoCapture API Operation

Field

Description

PendingReason

ebl:PendingStatusCodeType
NOTE:

3

PendingReason is returned in the response only if PaymentStatus is
Pending. This field does not apply to capturing point-of-sale authorizations,
which do not create pending payments.

Reason the payment is pending. It is one of the following values:
 none: – No pending reason.
 address – The payment is pending because your customer did not include a
confirmed shipping address and your Payment Receiving Preferences is set such
that you want to manually accept or deny each of these payments. To change your
preference, go to the Preferences section of your Profile.
 echeck – The payment is pending because it was made by an eCheck that has not
yet cleared.
 intl –The payment is pending because you hold a non-U.S. account and do not
have a withdrawal mechanism. You must manually accept or deny this payment
from your Account Overview.
 multi-currency – You do not have a balance in the currency sent, and you do
not have your Payment Receiving Preferences set to automatically
convert and accept this payment. You must manually accept or deny this payment.
 verify – The payment is pending because you are not yet verified. You must
verify your account before you can accept this payment.
 other – The payment is pending for a reason other than those listed above. For
more information, contact PayPal Customer Service.

SOAP API Developer Reference

August 2012

39

3

Authorization and Capture API Operation Reference
DoAuthorization API Operation

DoAuthorization API Operation
Authorize a payment.

DoAuthorization Request Message

NOT E :

Not all fields shown are available for use. Use only the fields described in the
documentation.

DoAuthorization Request Fields

40

Field

Description

TransactionID

xs:string
(Required) Value of the order’s transaction identification number returned by PayPal.
Character length and limitations: 19 single-byte characters

Amount

ebl:BasicAmountType
(Required) Amount to authorize.
Character length and limitations: Value is a positive number which cannot exceed
$10,000 USD in any currency. It includes no currency symbol. It must have 2 decimal
places, the decimal separator must be a period (.), and the optional thousands
separator must be a comma (,).

TransactionEntity

ebl:TransactionEntityType
(Optional) Type of transaction to authorize. The only allowable value is Order,
which means that the transaction represents a buyer order that can be fulfilled over 29
days.

August 2012

SOAP API Developer Reference

Authorization and Capture API Operation Reference
DoAuthorization API Operation

Field

Description

MsgSubId

xs:string
(Optional) A message ID used for idempotence to uniquely identify a message. This
ID can later be used to request the latest results for a previous request without
generating a new request. Examples of this include requests due to timeouts or errors
during the original request.
Character length and limitations: string of up to 38 single-byte characters.
This field is available since version 92.0.

3

DoAuthorization Response Message

NOT E :

Not all fields shown are available for use. Use only the fields described in the
documentation.

DoAuthorization Response Fields
Field

Description

TransactionID

xs:string
Authorization identification number.

Amount

ebl:BasicAmountType
Amount you specified in the request.
Character length and limitations: Value is a positive number which cannot exceed
$10,000 USD in any currency. It includes no currency symbol. It must have 2 decimal
places, the decimal separator must be a period (.), and the optional thousands
separator must be a comma (,).

SOAP API Developer Reference

August 2012

41

3

Authorization and Capture API Operation Reference
DoAuthorization API Operation

Field

Description

MsgSubId

xs:string
(Optional) A message ID used for idempotence to uniquely identify a message. This
ID can later be used to request the latest results for a previous request without
generating a new request. Examples of this include requests due to timeouts or errors
during the original request.
Character length and limitations: string of up to 38 single-byte characters.
This field is available since version 92.0.
AuthorizationInfo Fields

42

Field

Description

PaymentStatus

ebl:PaymentStatusCodeType
Status of the payment. It is one of the following values:
 None – No status.
 Canceled-Reversal – A reversal has been canceled. For example, when
you win a dispute, PayPal returns the funds for the reversal to you.
 Completed – The payment has been completed, and the funds have been
added successfully to your account balance.
 Denied – You denied the payment. This happens only if the payment was
previously pending because of possible reasons described for the
PendingReason element.
 Expired – The authorization period for this payment has been reached.
 Failed – The payment has failed. This happens only if the payment was made
from the buyer’s bank account.
 In-Progress – The transaction has not terminated. For example, an
authorization may be awaiting completion.
 Partially-Refunded – The payment has been partially refunded.
 Pending – The payment is pending. See the PendingReason field for more
information.
 Refunded – You refunded the payment.
 Reversed– A payment was reversed due to a chargeback or other type of
reversal. PayPal removes the funds from your account balance and returns
them to the buyer. The ReasonCode element specifies the reason for the
reversal.
 Processed – A payment has been accepted.
 Voided – An authorization for this transaction has been voided.

August 2012

SOAP API Developer Reference

Authorization and Capture API Operation Reference
DoAuthorization API Operation

Field

Description

PendingReason

ebl:PendingStatusCodeType
Reason the payment is pending. It is one of the following values:
 none – No pending reason.
 address – The payment is pending because your customer did not include a
confirmed shipping address and your Payment Receiving Preferences is set
such that you want to manually accept or deny each of these payments. To
change your preference, go to the Preferences section of your Profile.
 authorization – The payment is pending because it has been authorized but
not settled. You must capture the funds first.
 echeck – The payment is pending because it was made by an eCheck that has
not yet cleared.
 intl – The payment is pending because you hold a non-U.S. account and do
not have a withdrawal mechanism. You must manually accept or deny this
payment from your Account Overview.
 multi-currency – You do not have a balance in the currency sent, and you
do not have your Payment Receiving Preferences set to automatically
convert and accept this payment. You must manually accept or deny this
payment.
 order – The payment is pending because it is part of an order that has been
authorized but not settled.
 paymentreview – The payment is pending while it is being reviewed by
PayPal for risk.
 unilateral – The payment is pending because it was made to an email
address that is not yet registered or confirmed.
 verify – The payment is pending because you are not yet verified. You must
verify your account before you can accept this payment.
 other – The payment is pending for a reason other than those listed above. For
more information, contact PayPal Customer Service.
N O TE :

ProtectionEligibility

SOAP API Developer Reference

3

PendingReason is returned in the response only if PaymentStatus is
Pending.

xs:string
Prior to version 64.4, the kind of seller protection in force for the transaction. It is
one of the following values:
 Eligible – Merchant is protected by PayPal's Seller Protection Policy for
Unauthorized Payment and Item Not Received.
 PartiallyEligible – Merchant is protected by PayPal's Seller Protection
Policy for Item Not Received.
 Ineligible – Merchant is not protected under the Seller Protection Policy.

August 2012

43

3

Authorization and Capture API Operation Reference
DoReauthorization API Operation

Field

Description

ProtectionEligibility
Type

xs:string
Since version 64.4, the kind of seller protection in force for the transaction. It is
one of the following values:
 Eligible – Merchant is protected by PayPal's Seller Protection Policy for
both Unauthorized Payment and Item Not Received.
 ItemNotReceivedEligible – Merchant is protected by PayPal's Seller
Protection Policy for Item Not Received.
 UnauthorizedPaymentEligible – Merchant is protected by PayPal's
Seller Protection Policy for Unauthorized Payment.
 Ineligible – Merchant is not protected under the Seller Protection Policy.
This field is available since version 64.4.

DoReauthorization API Operation

DoReauthorization Request Message

NOT E :

44

Not all fields shown are available for use. Use only the fields described in the
documentation.

August 2012

SOAP API Developer Reference

Authorization and Capture API Operation Reference
DoReauthorization API Operation

3

DoReauthorization Request Fields
Field

Description

AuthorizationID

xs:string
(Required) Value of a previously authorized transaction identification number
returned by PayPal.
Character length and limitations: 19 single-byte characters

Amount

ebl:BasicAmountType
(Required) Amount to reauthorize.
Character length and limitations: Value is a positive number which cannot exceed
$10,000 USD in any currency. It includes no currency symbol. It must have 2 decimal
places, the decimal separator must be a period (.), and the optional thousands
separator must be a comma (,).

DoReauthorization Response Message

NOT E :

Not all fields shown are available for use. Only use fields described in the
documentation.

DoReauthorization Response Fields
Field

Description

AuthorizationID

xs:string
New authorization identification number.
Character length and limits:19 single-byte characters

SOAP API Developer Reference

August 2012

45

3

Authorization and Capture API Operation Reference
DoReauthorization API Operation

AuthorizationInfo Fields

46

Field

Description

PaymentStatus

ebl:PaymentStatusCodeType
Status of the payment. It is one of the following values:
 None – No status.
 Canceled-Reversal – A reversal has been canceled. For example, when
you win a dispute, PayPal returns the funds for the reversal to you.
 Completed – The payment has been completed, and the funds have been
added successfully to your account balance.
 Denied – You denied the payment. This happens only if the payment was
previously pending because of possible reasons described for the
PendingReason element.
 Expired – The authorization period for this payment has been reached.
 Failed – The payment has failed. This happens only if the payment was made
from the buyer’s bank account.
 In-Progress – The transaction has not terminated. For example, an
authorization may be awaiting completion.
 Partially-Refunded – The payment has been partially refunded.
 Pending – The payment is pending. See the PendingReason field for more
information.
 Refunded – You refunded the payment.
 Reversed– A payment was reversed due to a chargeback or other type of
reversal. PayPal removes the funds from your account balance and returns
them to the buyer. The ReasonCode element specifies the reason for the
reversal.
 Processed – A payment has been accepted.
 Voided – An authorization for this transaction has been voided.

August 2012

SOAP API Developer Reference

Authorization and Capture API Operation Reference
DoReauthorization API Operation

Field

Description

PendingReason

ebl:PendingStatusCodeType
Reason the payment is pending. It is one of the following values:
 none – No pending reason.
 address – The payment is pending because your customer did not include a
confirmed shipping address and your Payment Receiving Preferences is set
such that you want to manually accept or deny each of these payments. To
change your preference, go to the Preferences section of your Profile.
 authorization – The payment is pending because it has been authorized but
not settled. You must capture the funds first.
 echeck – The payment is pending because it was made by an eCheck that has
not yet cleared.
 intl – The payment is pending because you hold a non-U.S. account and do
not have a withdrawal mechanism. You must manually accept or deny this
payment from your Account Overview.
 multi-currency – You do not have a balance in the currency sent, and you
do not have your Payment Receiving Preferences set to automatically
convert and accept this payment. You must manually accept or deny this
payment.
 order – The payment is pending because it is part of an order that has been
authorized but not settled.
 paymentreview – The payment is pending while it is being reviewed by
PayPal for risk.
 unilateral – The payment is pending because it was made to an email
address that is not yet registered or confirmed.
 verify – The payment is pending because you are not yet verified. You must
verify your account before you can accept this payment.
 other – The payment is pending for a reason other than those listed above. For
more information, contact PayPal Customer Service.
N O TE :

ProtectionEligibility

SOAP API Developer Reference

3

PendingReason is returned in the response only if PaymentStatus is
Pending.

xs:string
Prior to version 64.4, the kind of seller protection in force for the transaction. It is
one of the following values:
 Eligible – Merchant is protected by PayPal's Seller Protection Policy for
Unauthorized Payment and Item Not Received.
 PartiallyEligible – Merchant is protected by PayPal's Seller Protection
Policy for Item Not Received.
 Ineligible – Merchant is not protected under the Seller Protection Policy.

August 2012

47

3

Authorization and Capture API Operation Reference
DoVoid API Operation

Field

Description

ProtectionEligibility
Type

xs:string
Since version 64.4, the kind of seller protection in force for the transaction. It is
one of the following values:
 Eligible – Merchant is protected by PayPal's Seller Protection Policy for
both Unauthorized Payment and Item Not Received.
 ItemNotReceivedEligible – Merchant is protected by PayPal's Seller
Protection Policy for Item Not Received.
 UnauthorizedPaymentEligible – Merchant is protected by PayPal's
Seller Protection Policy for Unauthorized Payment.
 Ineligible – Merchant is not protected under the Seller Protection Policy.
This field is available since version 64.4.

DoVoid API Operation
Void an order or an authorization.

DoVoid Request Message

NOT E :

48

Not all fields shown are available for use. Use only the fields described in the
documentation.

August 2012

SOAP API Developer Reference

Authorization and Capture API Operation Reference
DoVoid API Operation

3

DoVoid Request Fields
Field

Description

AuthorizationID

xs:string
(Required) Original authorization ID specifying the authorization to void or, to void
an order, the order ID.
I MP O R T ANT :

If you are voiding a transaction that has been reauthorized, use the ID
from the original authorization, and not the reauthorization.

Character length and limitations: 19 single-byte characters
Note

xs:string
(Optional) Informational note about this void that is displayed to the buyer in email
and in their transaction history.
Character length and limitations: 255 single-byte characters

DoVoid Response Message

NOT E :

Not all fields shown are available for use. Use only the fields described in the
documentation.

SOAP API Developer Reference

August 2012

49

3

Authorization and Capture API Operation Reference
DoVoid API Operation

DoVoidResponse Fields

50

Field

Description

AuthorizationID

xs:string
Authorization identification number you specified in the request.
Character length and limitations: 19 single-byte characters

August 2012

SOAP API Developer Reference

4

DoDirectPayment API Operation

The DoDirectPayment API Operation enables you to process a credit card payment.

DoDirectPayment Request Message

NOT E :

Not all fields shown are available for use. Use only the fields described in the
documentation.

SOAP API Developer Reference

August 2012

51

4

DoDirectPayment API Operation
DoDirectPayment Request Message

NOT E :

52

Not all fields shown are available for use. Use only the fields described in the
documentation.

August 2012

SOAP API Developer Reference

DoDirectPayment API Operation
DoDirectPayment Request Message

SOAP API Developer Reference

August 2012

4

53

4

54

DoDirectPayment API Operation
DoDirectPayment Request Message

NOT E :

Not all fields shown are available for use. Use only the fields described in the
documentation.

NOT E :

Not all fields shown are available for use. Use only the fields described in the
documentation.

August 2012

SOAP API Developer Reference

DoDirectPayment API Operation
DoDirectPayment Request Message

NOT E :

4

Not all fields shown are available for use. Use only the fields described in the
documentation.

SOAP API Developer Reference

August 2012

55

4

DoDirectPayment API Operation
DoDirectPayment Request Message

NOT E :

Not all fields shown are available for use. Use only the fields described in the
documentation.

DoDirectPayment Request Fields
Field

Description

PaymentAction

ebl:PaymentActionCodeType
(Optional) How you want to obtain payment. It is one of the following values:
 Authorization – This payment is a basic authorization subject to settlement
with PayPal Authorization and Capture.
 Sale – This is a final sale for which you are requesting payment (default).
NOTE:

Order is not allowed for Direct Payment.

Character length and limit: Up to 13 single-byte alphabetic characters

56

August 2012

SOAP API Developer Reference

DoDirectPayment API Operation
DoDirectPayment Request Message

Field

Description

CreditCard

ebl:CreditCardDetailsType
(Required) Information about the credit card to be charged.

PaymentDetails

ebl:PaymentDetailsType
(Required) Information about the credit card to be charged.

IPAddress

xs:string
(Required) IP address of the buyer’s browser.
NOTE:

4

PayPal records this IP addresses as a means to detect possible fraud.

Character length and limitations: 15 single-byte characters, including periods, for
example, 255.255.255.255
MerchantSessionId

xs:string
(Optional) Your customer session identification token.
NOTE:

PayPal records this optional session identification token as an additional
means to detect possible fraud.

Character length and limitations: 64 single-byte numeric characters
ReturnFMFDetails

xs:boolean
(Optional) Flag to indicate whether you want the results returned by Fraud
Management Filters. By default, you do not receive this information. It is one of the
following values:
 0 – Do not receive FMF details (default).
 1 – Receive FMF details.

ThreeDSecureRequest

ns:ThreeDSecureRequestType
(Optional) Information about 3-D Secure settings (UK only).

SOAP API Developer Reference

August 2012

57

4

DoDirectPayment API Operation
DoDirectPayment Request Message

CreditCardDetailsType Fields
Field

Description

CreditCardType

ebl:CreditCardType
(Optional) Type of credit card. For UK, only Maestro, MasterCard, Discover,
and Visa are allowable. For Canada, only MasterCard and Visa are allowable and
Interac debit cards are not supported. It is one of the following values:
 Visa
 MasterCard
 Discover
 Amex
 Maestro: See note.
NOTE:

If the credit card type is Maestro, you must set currencyId to GBP. In
addition, you must specify either StartMonth and StartYear or
IssueNumber.

Character length and limitations: Up to 10 single-byte alphabetic characters

58

CreditCardNumber

xs:string
(Required) Credit card number.
Character length and limitations: Numeric characters only with no spaces or
punctutation. The string must conform with modulo and length required by each
credit card type.

ExpMonth

xs:int
(Required) Credit card expiration month.
Character length and limitations: 2 single-byte numeric characters, including leading
zero

ExpYear

xs:int
(Required) Credit card expiration year.
Character length and limitations: 4 single-byte numeric characters

CVV2

xs:string
Card Verification Value, version 2. Your Merchant Account settings determine
whether this field is required. To comply with credit card processing regulations, you
must not store this value after a transaction has been completed.
Character length and limitations: For Visa, MasterCard, and Discover, the value is
exactly 3 digits. For American Express, the value is exactly 4 digits.

CardOwner

ns:PayerInfoType
(Required) Details about the owner of the credit card.

StartMonth

xs:int
(Optional) Month that Maestro card was issued.
Character length and limitations: 2-digit, zero-filled if necessary

August 2012

SOAP API Developer Reference

DoDirectPayment API Operation
DoDirectPayment Request Message

Field

Description

StartYear

xs:int
(Optional) Year that Maestro card was issued.
Character length and limitations: 4 digits

IssueNumber

xs:string
(Optional) Issue number of Maestro card.
Character length and limitations: 2 numeric digits maximum

4

PayerInfoType Fields
Field

Description

Payer

ebl:EmailAddressType
(Required) Email address of buyer.
Character length and limitations: 127 single-byte characters

PayerID

ebl:UserIDType
(Optional) Unique PayPal Customer Account identification number.
Character length and limitations:13 single-byte alphanumeric characters

PayerStatus

ebl:PayPalUserStatusCodeType
(Optional) Status of buyer. It is one of the following values:
 verified
 unverified
Character length and limitations: 10 single-byte alphabetic characters

PayerName

ebl:PersonNameType
(Optional) First and last name of buyer.

PayerCountry

ebl:CountryCodeType
(Optional) Buyer’s country of residence in the form of ISO standard 3166 twocharacter country codes.
Character length and limitations: 2 single-byte characters

PayerBusiness

xs:string
(Optional) Buyer’s business name.
Character length and limitations: 127 single-byte characters

Address

xs:string
(Optional) Buyer’s shipping address information.

SOAP API Developer Reference

August 2012

59

4

DoDirectPayment API Operation
DoDirectPayment Request Message

PayerNameType Fields
Field

Description

Salutation

xs:string
(Optional) Buyer’s salutation.
Character length and limitations: 20 single-byte characters

FirstName

ebl:PersonNameType
(Required) Buyer’s first name.
Character length and limitations: 25 single-byte characters

MiddleName

ebl:NameUser
(Optional) Buyer’s middle name.
Character length and limitations: 25 single-byte characters

LastName

ebl:NameType
(Required) Buyer’s last name.
Character length and limitations: 25 single-byte characters

Suffix

ebl:SuffixType
(Optional) Buyer’s suffix.
Character length and limitations: 12 single-byte characters

AddressType Fields

60

Field

Description

Street1

xs:string
(Required) First street address.
Character length and limitations: 100 single-byte characters

Street2

xs:string
(Optional) Second street address.
Character length and limitations: 100 single-byte characters

CityName

xs:string
(Required) Name of city.
Character length and limitations: 40 single-byte characters

StateOrProvince

xs:string
(Required) State or province.
Character length and limitations: 40 single-byte characters

Country

ebl:CountryCodeType
(Required) Country code.
Character length and limitationst: 2 single-byte characters

August 2012

SOAP API Developer Reference

DoDirectPayment API Operation
DoDirectPayment Request Message

Field

Description

PostalCode

xs:string
(Required) U.S. ZIP code or other country-specific postal code.
Character length and limitations: 20 single-byte characters

Phone

xs:string
(Optional) Phone number.
Character length and limitations: 20 single-byte characters

4

PaymentDetailsType Fields
Field

Description

OrderTotal

ebl:BasicAmountType
(Required) The total cost of the transaction to the buyer. If shipping cost and tax
charges are known, include them in this value. If not, this value should be the current
subtotal of the order. If the transaction includes one or more one-time purchases, this
field must be equal to the sum of the purchases. This field must be set to a value
greater than 0.
NOTE:

You must set the currencyID attribute to one of the 3-character currency
codes for any of the supported PayPal currencies.

Character length and limitations: Value is a positive number which cannot exceed
$10,000 USD in any currency. It includes no currency symbol. It must have 2 decimal
places, the decimal separator must be a period (.), and the optional thousands
separator must be a comma (,).
ItemTotal

ebl:BasicAmountType
(Optional) Sum of cost of all items in this order.
NOTE:

You must set the currencyID attribute to one of the 3-character currency
codes for any of the supported PayPal currencies.

Character length and limitations: Value is a positive number which cannot exceed
$10,000 USD in any currency. It includes no currency symbol. It must have 2 decimal
places, the decimal separator must be a period (.), and the optional thousands
separator must be a comma (,).
ShippingTotal

ebl:BasicAmountType
(Optional) Total shipping costs for this order.
NOTE:

You must set the currencyID attribute to one of the 3-character currency
codes for any of the supported PayPal currencies.

Character length and limitations: Value is a positive number which cannot exceed
$10,000 USD in any currency. It includes no currency symbol. It must have 2 decimal
places, the decimal separator must be a period (.), and the optional thousands
separator must be a comma (,).

SOAP API Developer Reference

August 2012

61

4

DoDirectPayment API Operation
DoDirectPayment Request Message

Field

Description

InsuranceTotal

ebl:BasicAmountType
(Optional) Total shipping insurance costs for this order. The value must be a nonnegative currency amount or null if you offer insurance options.
NOTE:

You must set the currencyID attribute to one of the 3-character currency
codes for any of the supported PayPal currencies.

Character length and limitations: Value is a positive number which cannot exceed
$10,000 USD in any currency. It includes no currency symbol. It must have 2 decimal
places, the decimal separator must be a period (.), and the optional thousands
separator must be a comma (,).
InsuranceTotal is available since version 53.0.
ShippingDiscount

ebl:BasicAmountType
(Optional) Shipping discount for this order, specified as a negative number.
NOTE:

You must set the currencyID attribute to one of the 3-character currency
codes for any of the supported PayPal currencies.

Character length and limitations: Value is a positive number which cannot exceed
$10,000 USD in any currency. It includes no currency symbol. It must have 2 decimal
places, the decimal separator must be a period (.), and the optional thousands
separator must be a comma (,).
ShippingDiscount is available since version 53.0.
HandlingTotal

ebl:BasicAmountType
(Optional) Total handling costs for this order.
NOTE:

You must set the currencyID attribute to one of the 3-character currency
codes for any of the supported PayPal currencies.

Character length and limitations: Value is a positive number which cannot exceed
$10,000 USD in any currency. It includes no currency symbol. It must have 2 decimal
places, the decimal separator must be a period (.), and the optional thousands
separator must be a comma (,).
TaxTotal

ebl:BasicAmountType
(Optional) Sum of tax for all items in this order.
NOTE:

You must set the currencyID attribute to one of the 3-character currency
codes for any of the supported PayPal currencies.

Character length and limitations: Value is a positive number which cannot exceed
$10,000 USD in any currency. It includes no currency symbol. It must have 2 decimal
places, the decimal separator must be a period (.), and the optional thousands
separator must be a comma (,).
OrderDescription

xs:string
(Optional) Description of items the buyer is purchasing.
NOTE:

The value you specify is available only if the transaction includes a purchase.
This field is ignored if you set up a billing agreement for a recurring payment
that is not immediately charged.

Character length and limitations: 127 single-byte alphanumeric characters

62

August 2012

SOAP API Developer Reference

DoDirectPayment API Operation
DoDirectPayment Request Message

Field

Description

Custom

xs:string
(Optional) A free-form field for your own use.
NOTE:

4

The value you specify is available only if the transaction includes a purchase.
This field is ignored if you set up a billing agreement for a recurring payment
that is not immediately charged.

Character length and limitations: 256 single-byte alphanumeric characters
InvoiceID

xs:string
(Optional) Your own invoice or tracking number.
NOTE:

The value you specify is available only if the transaction includes a purchase.
This field is ignored if you set up a billing agreement for a recurring payment
that is not immediately charged.

Character length and limitations: 256 single-byte alphanumeric characters
ButtonSource

xs:string
(Optional) An identification code for use by third-party applications to identify
transactions.
Character length and limitations: 32 single-byte alphanumeric characters

NotifyURL

xs:string
(Optional) Your URL for receiving Instant Payment Notification (IPN) about this
transaction. If you do not specify this value in the request, the notification URL from
your Merchant Profile is used, if one exists.
I MP O R T ANT :

The notify URL applies only to DoExpressCheckoutPayment.
This value is ignored when set in SetExpressCheckout or
GetExpressCheckoutDetails.

Character length and limitations: 2,048 single-byte alphanumeric characters
ShipToAddress

ns:AddressType
(Optional) Address to which the order is shipped.

PaymentDetailsItem

ebl:PaymentDetailsItemType
(Optional) Details about each individual item included in the order.

Recurring

ns:RecurringFlagType
(Optional) Flag to indicate a recurring transaction. It is one of the following values:
 Any value other than Y – This is not a recurring transaction (default).
 Y – This is a recurring transaction.
NOTE:

To pass Y in this field, you must have established a billing agreement with the
buyer specifying the amount, frequency, and duration of the recurring
payment.

This field is introduced in version 80.0 of the API.

SOAP API Developer Reference

August 2012

63

4

DoDirectPayment API Operation
DoDirectPayment Request Message

PaymentDetailsItemType Fields
Field

Description

Name

xs:string
(Optional) Item name.
Character length and limitations: 127 single-byte characters

Description

xs:string
(Optional) Item description.
Description is available since version 53.0.
Character length and limitations: 127 single-byte characters

Amount

ebl:BasicAmountType
(Optional) Cost of item.
NOTE:

You must set the currencyID attribute to one of the 3-character currency
codes for any of the supported PayPal currencies.

Character length and limitations: Value is a positive number which cannot exceed
$10,000 USD in any currency. It includes no currency symbol. It must have 2 decimal
places, the decimal separator must be a period (.), and the optional thousands
separator must be a comma (,).
Number

xs:string
(Optional) Item number.
Character length and limitations: 127 single-byte characters

Quantity

xs:integer
(Optional) Item quantity.
Character length and limitations: Any positive integer

Tax

ebl:BasicAmountType
(Optional) Item sales tax.
NOTE:

You must set the currencyID attribute to one of the 3-character currency
codes for any of the supported PayPal currencies.

Character length and limitations: Value is a positive number which cannot exceed
$10,000 USD in any currency. It includes no currency symbol. It must have 2 decimal
places, the decimal separator must be a period (.), and the optional thousands
separator must be a comma (,).
EbayItemPayment
DetailsItem

64

eBl:ebayItemPaymentDetailsItemType
(Optional) Information relating to an auction sale on eBay.

August 2012

SOAP API Developer Reference

DoDirectPayment API Operation
DoDirectPayment Request Message

4

EbayItemPaymentDetailsItemType Fields
Field

Description

ItemNumber

xs:string
(Optional) Auction item number.
Character length: 765 single-byte characters

AuctionTransaction
Id

xs:string
(Optional) Auction transaction identification number.
Character length: 255 single-byte characters

OrderID

xs:string
(Optional) Auction order identification number.
Character length: 64 single-byte characters

AddressType (Shipping) Fields
Field

Description

Name

xs:string
Person’s name associated with this shipping address. It is required if using a
shipping address.
Character length and limitations: 32 single-byte characters

Street1

xs:string
First street address. It is required if using a shipping address.
Character length and limitations: 100 single-byte characters

Street2

xs:string
(Optional) Second street address.
Character length and limitations: 100 single-byte characters

CityName

xs:string
Name of city. It is required if using a shipping address.
Character length and limitations: 40 single-byte characters

StateOrProvince

xs:string
State or province. It is required if using a shipping address.
Character length and limitations: 40 single-byte characters

PostalCode

xs:string
U.S. ZIP code or other country-specific postal code. It is required if using a
U.S. shipping address; may be required for other countries.
Character length and limitations: 20 single-byte characters

SOAP API Developer Reference

August 2012

65

4

DoDirectPayment API Operation
DoDirectPayment Request Message

Field

Description

Country

ebl:CountryCodeType
Country code. It is required if using a shipping address.
Character length and limitations: 2 single-byte characters

Phone

xs:string
(Optional) Phone number.
Character length and limitations: 20 single-byte characters

ThreeDSecureRequest Fields (U.K. Merchants Only)

66

Field

Description

AuthStatus3ds

xs:string
(Optional) A value returned by the Cardinal Centinel. If the cmpi_lookup
request returns Y for Enrolled, set this field to the PAResStatus value
returned by cmpi_authenticate. Otherwise, set this field to blank.

MpiVendor3ds

xs:string
(Optional) A value returned by the Cardinal Centinel. Set this field to the
Enrolled value returned by cmpi_lookup.

Cavv

xs:string
(Optional) A value returned by the Cardinal Centinel. If the cmpi_lookup
request returns Y for Enrolled, set this field to the Cavv value returned by
cmpi_authenticate. Otherwise, set this field to blank.

Eci3ds

xs:string
(Optional) A value returned by the Cardinal Centinel. If the cmpi_lookup
request returns Y for Enrolled, set this field to the EciFlag value returned
by cmpi_authenticate. Otherwise, set this field to the EciFlag value
returned by cmpi_lookup.

XID

xs:string
(Optional) A value returned by the Cardinal Centinel. If the cmpi_lookup
request returns Y for Enrolled, set this field to the Xid value returned by
cmpi_authenticate. Otherwise, set this field to blank.

August 2012

SOAP API Developer Reference

DoDirectPayment API Operation
DoDirectPayment Response Message

4

DoDirectPayment Response Message

NOT E :

Not all fields shown are available for use. Use only the fields described in the
documentation.

NOT E :

Not all fields shown are available for use. Use only the fields described in the
documentation.

SOAP API Developer Reference

August 2012

67

4

DoDirectPayment API Operation
DoDirectPayment Response Message

DoDirectPayment Response Fields
Field

Description

TransactionID

xs:string
Unique transaction ID of the payment.
N O TE :

If the PaymentAction of the request was Authorization, the value of
TransactionID is your AuthorizationID for use with the Authorization and
Capture APIs.

Character length and limitations: 19 single-byte characters
Amount

ebl:BasicAmountType
This value is the amount of the payment as specified by you on
DoDirectPaymentRequest for reference transactions with direct payments.

AVSCode

xs:string
Address Verification System response code.
Character length and limitations: 1 single-byte alphanumeric character

CVV2Code

xs:string
Result of the CVV2 check by PayPal.

FMFDetails

ebl:FMFDetailsType
Fraud filter details.

PaymentAdviceCode

xs:string
Response code from the processor when a recurrng transaction is declined. For details
on the codes, see https://merchant.paypal.com/us/cgi-bin/?&cmd=_rendercontent&content_ID=merchant/cc_compliance_error_codes

Related information:
AVS Response Codes
AVS Response Codes for Visa, MasterCard, Discover, and American Express
AVS Response Codes for Maestro

FMFDetailsType Fields

68

Field

Description

AcceptFilters

xs:RiskFilterListType
List of filters that recommend acceptance of the payment.

DenyFilters

xs:RiskFilterListType
List of filters that recommend denial of the payment.

PendingFilters

xs:RiskFilterListType
List of filters that caused the payment to become pending.

August 2012

SOAP API Developer Reference

DoDirectPayment API Operation
DoDirectPayment Response Message

Field

Description

ReportsFilters

xs:RiskFilterListType
List of filters that caused the payment to become flagged.

4

RiskFilterListType Fields
Field

Description

ID

xs:int
Filter ID. It is one of the following values:
 1 - AVS No Match
 2 - AVS Partial Match
 3 - AVS Unavailable/Unsupported
 4 - Card Security Code (CSC) Mismatch
 5 - Maximum Transaction Amount
 6 - Unconfirmed Address
 7 - Country Monitor
 8 - Large Order Number
 9 - Billing/Shipping Address Mismatch
 10 - Risky ZIP Code
 11 - Suspected Freight Forwarder Check
 12 - Total Purchase Price Minimum
 13 - IP Address Velocity
 14 - Risky Email Address Domain Check
 15 - Risky Bank Identification Number (BIN) Check
 16 - Risky IP Address Range
 17 - PayPal Fraud Model

Name

xs:string
Filter name.

Description

xs:string
Filter description.

SOAP API Developer Reference

August 2012

69

4

DoDirectPayment API Operation
DoDirectPayment Response Message

ThreeDSecure Response Fields
Field

Description

VPAS

Visa Payer Authentication Service status. The value indicates whether
Verified by Visa confirms that the information received is acceptable. It is
eturned only for Verified by Visa transactions.
Authentication:
 Good result – 2 or D
 Bad result – 1
Attempted authentication:
 Good result – 3, 6, 8, A, or C
 Bad result – 4, 7, or 9
No liability shift: Blank, 0, or B

EciSubmitted3ds

Electronic Commerce Indicator (ECI) that PayPal submitted with the
payment authorisation request. This might not be the same value received
from the merchant. In rare cases, PayPal is required to use a different ECI
for authorisation based on the full set of 3-D Secure values provided from
the cmpi_authenticate request.
MasterCard:
 01 – Merchant Liability
 02 – Issuer Liability
Visa:
 05 – Issuer Liability
 06 – Issuer Liability
 07 – Merchant Liability

70

August 2012

SOAP API Developer Reference

5

DoNonReferencedCredit API
Operation
The DoNonReferencedCredit API issues a credit to a card not referenced by the original
transaction.

DoNonReferencedCredit Request Message

NOT E :

Not all fields shown are available for use. Use only the fields described in the
documentation.

NOT E :

Not all fields shown are available for use. Use only the fields described in the
documentation.

SOAP API Developer Reference

August 2012

71

5

DoNonReferencedCredit API Operation
DoNonReferencedCredit Request Message

NOT E :

72

Not all fields shown are available for use. Use only the fields described in the
documentation.

August 2012

SOAP API Developer Reference

DoNonReferencedCredit API Operation
DoNonReferencedCredit Request Message

NOT E :

5

Not all fields shown are available for use. Use only the fields described in the
documentation.

DoNonReferencedCredit Request Fields
Field

Description

Amount

ns:BasicAmountType
(Required) Total of order, including shipping, handling, and tax. Amount =
NetAmount + ShippingAmount + TaxAmount
Character length and limitations: Must not exceed $10,000 USD in any currency. No
currency symbol. Must have 2 decimal places, decimal separator must be a period (.),
and the optional thousands separator must be a comma (,).

SOAP API Developer Reference

August 2012

73

5

DoNonReferencedCredit API Operation
DoNonReferencedCredit Request Message

Field

Description

NetAmount

ns:BasicAmountType
(Optional) Total amount of all items in this transaction.
NOTE:

The only valid currencies are AUD, CAD, EUR, GBP, JPY, and USD.

Character length and limitations: Must not exceed $10,000 USD in any currency. No
currency symbol. Must have 2 decimal places, decimal separator must be a period (.),
and the optional thousands separator must be a comma (,).
TaxAmount

ns:BasicAmountType
(Optional) Sum of tax for all items in this order.
NOTE:

The only valid currencies are AUD, CAD, EUR, GBP, JPY, and USD.

Character length and limitations: The value must be zero or greater and cannot exceed
$10,000 USD in any currency. No currency symbol. Must have 2 decimal places,
decimal separator must be a period (.), and the optional thousands separator must be a
comma (,).
ShippingAmount

ns:BasicAmountType
(Optional) Total shipping costs in this transaction.
NOTE:

The only valid currencies are AUD, CAD, EUR, GBP, JPY, and USD.

Character length and limitations: Value must be zero or greater and cannot exceed
$10,000 USD in any currency. No currency symbol. Must have 2 decimal places,
decimal separator must be a period (.), and the optional thousands separator must be a
comma (,). The only valid currencies are AUD, CAD, EUR, GBP, JPY, and USD.

74

CreditCard

ebl:CreditCardDetailsType
(Required) Information about the credit card to be charged.

ReceiverEmail

xs:string

Comment

xs:string
(Optional) Field used by merchant to record why this credit was issued to a buyer. It
is similar to a “memo” field (freeform text or string field).

August 2012

SOAP API Developer Reference

DoNonReferencedCredit API Operation
DoNonReferencedCredit Request Message

5

CreditCardDetailsType Fields
Field

Description

CreditCardType

ebl:CreditCardType
(Optional) Type of credit card. For UK, only Maestro, MasterCard, Discover,
and Visa are allowable. For Canada, only MasterCard and Visa are allowable and
Interac debit cards are not supported. It is one of the following values:
 Visa
 MasterCard
 Discover
 Amex
 Maestro: See note.
NOTE:

If the credit card type is Maestro, you must set currencyId to GBP. In
addition, you must specify either StartMonth and StartYear or
IssueNumber.

Character length and limitations: Up to 10 single-byte alphabetic characters
CreditCardNumber

xs:string
(Required) Credit card number.
Character length and limitations: Numeric characters only with no spaces or
punctutation. The string must conform with modulo and length required by each
credit card type.

ExpMonth

xs:int
(Required) Credit card expiration month.
Character length and limitations: 2 single-byte numeric characters, including leading
zero

ExpYear

xs:int
(Required) Credit card expiration year.
Character length and limitations: 4 single-byte numeric characters

CVV2

xs:string
Card Verification Value, version 2. Your Merchant Account settings determine
whether this field is required. To comply with credit card processing regulations, you
must not store this value after a transaction has been completed.
Character length and limitations: For Visa, MasterCard, and Discover, the value is
exactly 3 digits. For American Express, the value is exactly 4 digits.

CardOwner

ns:PayerInfoType
(Required) Details about the owner of the credit card.

StartMonth

xs:int
(Optional) Month that Maestro card was issued.
Character length and limitations: 2-digit, zero-filled if necessary

SOAP API Developer Reference

August 2012

75

5

DoNonReferencedCredit API Operation
DoNonReferencedCredit Request Message

Field

Description

StartYear

xs:int
(Optional) Year that Maestro card was issued.
Character length and limitations: 4 digits

IssueNumber

xs:string
(Optional) Issue number of Maestro card.
Character length and limitations: 2 numeric digits maximum

PayerNameType Fields
Field

Description

Salutation

xs:string
(Optional) Buyer’s salutation.
Character length and limitations: 20 single-byte characters

FirstName

ebl:PersonNameType
(Optional) Buyer’s first name.
Character length and limitations: 25 single-byte characters

MiddleName

ebl:NameUser
(Optional) Buyer’s middle name.
Character length and limitations: 25 single-byte characters

LastName

ebl:NameType
(Optional) Buyer’s last name.
Character length and limitations: 25 single-byte characters

Suffix

ebl:SuffixType
(Optional) Buyer’s suffix.
Character length and limitations: 12 single-byte characters

PayerInfoType Fields

76

Field

Description

Payer

ns:EmailAddressType
(Optional) Email address of buyer.
Character length and limitations: 127 single-byte characters

FirstName

ns:PersonNameType
(Required) Buyer’s first name.
Character length and limitations: 25 single-byte characters

August 2012

SOAP API Developer Reference

DoNonReferencedCredit API Operation
DoNonReferencedCredit Request Message

Field

Description

LastName

ns:PersonNameType
(Required) Buyer’s last name.
Character length and limitations: 25 single-byte characters

Address

ns:AddressType
(Required) Buyer’s billing address information.

5

AddressType Fields
Field

Description

Street1

xs:string
(Required) First street address.
Character length and limitations: 100 single-byte characters

Street2

xs:string
(Optional) Second street address.
Character length and limitations: 100 single-byte characters

CityName

xs:string
(Required) Name of city.
Character length and limitations: 40 single-byte characters

StateOrProvince

xs:string
(Required) State or province.
Character length and limitations: 40 single-byte characters

Country

ebl:CountryCodeType
(Required) Country code.
Character length and limitationst: 2 single-byte characters

PostalCode

xs:string
(Required) U.S. ZIP code or other country-specific postal code.
Character length and limitations: 20 single-byte characters

Phone

xs:string
(Optional) Phone number.
Character length and limitations: 20 single-byte characters

SOAP API Developer Reference

August 2012

77

5

DoNonReferencedCredit API Operation
DoNonReferencedCredit Response Message

DoNonReferencedCredit Response Message

NOT E :

Not all fields shown are available for use. Use only the fields described in the
documentation.

NOT E :

Not all fields shown are available for use. Use only the fields described in the
documentation.

DoNonReferencedCredit Response Fields

78

Field

Description

TransactionID

ns:TransactionId
Unique identifier of a transaction.
Character length and limitations: 17 single-byte alphanumeric characters.

Amount

ns:BasicAmountType
Total of order, including shipping, handling, and tax.
Character length and limitations: Must not exceed $10,000 USD in any currency. No
currency symbol. Must have 2 decimal places, decimal separator must be a period (.),
and the optional thousands separator must be a comma (,).

August 2012

SOAP API Developer Reference

6

ExpressCheckout API Operations

Express Checkout API operations include SetExpressCheckout,
GetExpressCheckoutDetails, and DoExpressCheckoutPayment.

SetExpressCheckout API Operation
The SetExpressCheckout API operation initiates an Express Checkout transaction.

SetExpressCheckout Request Message

SOAP API Developer Reference

August 2012

79

6

ExpressCheckout API Operations
SetExpressCheckout API Operation

NOT E :

80

Not all fields shown are available for use. Use only the fields described in the
documentation.

August 2012

SOAP API Developer Reference

ExpressCheckout API Operations
SetExpressCheckout API Operation

NOT E :

6

Not all fields shown are available for use. Use only the fields described in the
documentation.

SOAP API Developer Reference

August 2012

81

6

82

ExpressCheckout API Operations
SetExpressCheckout API Operation

August 2012

SOAP API Developer Reference

ExpressCheckout API Operations
SetExpressCheckout API Operation

SOAP API Developer Reference

August 2012

6

83

6

84

ExpressCheckout API Operations
SetExpressCheckout API Operation
NOT E :

Not all fields shown are available for use. Use only the fields described in the
documentation.

NOT E :

Not all fields shown are available for use. Use only the fields described in the
documentation.

August 2012

SOAP API Developer Reference

ExpressCheckout API Operations
SetExpressCheckout API Operation

NOT E :

Not all fields shown are available for use. Use only the fields described in the
documentation.

NOT E :

Not all fields shown are available for use. Use only the fields described in the
documentation.

NOT E :

Not all fields shown are available for use. Use only the fields described in the
documentation.

SOAP API Developer Reference

August 2012

6

85

6

ExpressCheckout API Operations
SetExpressCheckout API Operation

SetExpressCheckout Request Fields
Field

Description

OrderTotal
(deprecated)

ebl:BasicAmountType
(Required) The total cost of the transaction to the buyer. If shipping cost and tax
charges are known, include them in this value. If not, this value should be the current
subtotal of the order. If the transaction includes one or more one-time purchases, this
field must be equal to the sum of the purchases. If the transaction does not include a
one-time purchase such as when you set up a billing agreement for a recurring
payment, set this field to 0.
NOTE:

You must set the currencyID attribute to one of the three-character
currency codes for any of the supported PayPal currencies.

Character length and limitations: Value is a positive number which cannot exceed
$10,000 USD in any currency. It includes no currency symbol. It must have 2 decimal
places, the decimal separator must be a period (.), and the optional thousands
separator must be a comma (,).
This field is deprecated since version 53.0. Use OrderTotal in
PaymentDetailsType instead.
MaxAmount

OrderDescription
(deprecated)

86

ebl:BasicAmountType
(Optional) The expected maximum total amount of the complete order, including
shipping cost and tax charges. If the transaction includes one or more one-time
purchases, this field is ignored.
For recurring payments, you should pass the expected average transaction amount
(default 25.00). PayPal uses this value to validate the buyer’s funding source.
Character length and limitations: Value is a positive number which cannot exceed
$10,000 USD in any currency. It includes no currency symbol. It must have 2 decimal
places, the decimal separator must be a period (.), and the optional thousands
separator must be a comma (,).
NOTE:

This field is required when implementing the Instant Update API callback.
PayPal recommends that the maximum total amount be slightly greater than
the sum of the line-item order details, tax, and the shipping options of greatest
value.

NOTE:

You must set the currencyID attribute to one of the three-character
currency codes for any of the supported PayPal currencies.

xs:string
(Optional) Description of items the buyer is purchasing.
Character length and limitations: 127 single-byte alphanumeric characters
This field is deprecated since version 53.0. Use OrderDescription in
PaymentDetailsType instead.

August 2012

SOAP API Developer Reference

ExpressCheckout API Operations
SetExpressCheckout API Operation

Field

Description

Custom (deprecated)

xs:string
(Optional) A free-form field for your own use, such as a tracking number or other
value you want PayPal to return on GetExpressCheckoutDetails response and
response.
Character length and limitations: 256 single-byte alphanumeric characters
This field is deprecated since version 53.0. Use Custom in PaymentDetailsType
instead.

InvoiceID (deprecated)

xs:string
(Optional) Your own unique invoice or tracking number. PayPal returns this value to
you on DoExpressCheckoutPayment response. If the transaction does not include
a one-time purchase, this field is ignored.
Character length and limitations: 127 single-byte alphanumeric characters
This field is deprecated since version 53.0. Use InvoiceID in
PaymentDetailsType instead.

ReturnURL

xs:string
(Required) URL to which the buyer’s browser is returned after choosing to pay with
PayPal. For digital goods, you must add JavaScript to this page to close the in-context
experience.
NOTE:

6

PayPal recommends that the value be the final review page on which the
buyer confirms the order and payment or billing agreement.

Character length and limitations: 2048 single-byte characters
CancelURL

xs:string
(Required) URL to which the buyer is returned if the buyer does not approve the use
of PayPal to pay you. For digital goods, you must add JavaScript to this page to close
the in-context experience.
NOTE:

PayPal recommends that the value be the original page on which the buyer
chose to pay with PayPal or establish a billing agreement.

Character length and limitations: 2048 single-byte characters
CallbackURL

xs:string
(Optional) URL to which the callback request from PayPal is sent. It must start with
HTTPS for production integration. It can start with HTTPS or HTTP for sandbox
testing.
Character length and limitations: 1024 single-byte characters
This field is available since version 53.0.

CallbackTimeout

int
(Optional) An override for you to request more or less time to be able to process the
callback request and respond. The acceptable range for the override is 1 to 6 seconds.
If you specify a value greater than 6, PayPal uses the default value of 3 seconds.
Character length and limitations: An integer between 1 and 6

SOAP API Developer Reference

August 2012

87

6

ExpressCheckout API Operations
SetExpressCheckout API Operation

Field

Description

Address (deprecated)

ebl:AddressType
(Optional) Buyer’s shipping address.If you include a shipping address and set the
AddressOverride element on the request, PayPal returns this same address in
GetExpressCheckoutDetailsResponse.
This field is deprecated since version 53.0. Use ShipToAddress in
PaymentDetailsType instead.

ReqConfirmShipping

xs:string
Indicates whetheror not you require the buyer’s shipping address on file with PayPal
be a confirmed address. For digital goods, this field is required, and you must set it to
0. It is one of the following values:
 0 – You do not require the buyer’s shipping address be a confirmed address.
 1 – You require the buyer’s shipping address be a confirmed address.
NOTE:

Setting this field overrides the setting you specified in your Merchant
Account Profile.

Character length and limitations: 1 single-byte numeric character
NoShipping

xs:string
Determines where or not PayPal displays shipping address fields on the PayPal pages.
For digital goods, this field is required, and you must set it to 1. It is one of the
following values:
 0 – PayPal displays the shipping address on the PayPal pages.
 1 – PayPal does not display shipping address fields whatsoever.
 2 – If you do not pass the shipping address, PayPal obtains it from the buyer’s
account profile.
Character length and limitations: 4 single-byte numeric characters

FlatRateShippingOpt
ions

ebl:ShippingOptionsType
Flat rate shipping options. This field is required if you are specifying the Callback
URL.

AllowNote

xs:string
(Optional) Enables the buyer to enter a note to the merchant on the PayPal page
during checkout. The note is returned in the GetExpressCheckoutDetails
response and the DoExpressCheckoutPayment response. It is one of the following
values:
 0 – The buyer is unable to enter a note to the merchant.
 1 – The buyer is able to enter a note to the merchant.
Character length and limitations: 1 single-byte numeric character
This field is available since version 53.0.

PaymentDetails

88

ebl:PaymentDetailsType
(Required) Information about the payment.

August 2012

SOAP API Developer Reference

ExpressCheckout API Operations
SetExpressCheckout API Operation

Field

Description

AddressOverride

xs:string
(Optional) Determines whether or not the PayPal pages should display the shipping
address set by you in this SetExpressCheckout request, not the shipping address on
file with PayPal for this buyer. Displaying the PayPal street address on file does not
allow the buyer to edit that address. It is one of the following values:
 0 – The PayPal pages should not display the shipping address.
 1 – The PayPal pages should display the shipping address.

6

Character length and limitations: 1 single-byte numeric character

SOAP API Developer Reference

August 2012

89

6

ExpressCheckout API Operations
SetExpressCheckout API Operation

Field

Description

LocaleCode

xs:string
(Optional) Locale of pages displayed by PayPal during Express Checkout. It is one of
the following country code values supported by PayPal (default is US):
 AU – Australia
 AT – Austria
 BE – Belgium
 BR – Brazil
 CA – Canada
 CH – Switzerland
 CN – China
 DE – Germany
 ES – Spain
 GB – United Kingdom
 FR – France
 IT – Italy
 NL – Netherlands
 PL – Poland
 PT – Portugal
 RU – Russia
 US – United States
 The following 5-character codes are also supported for languages in specific
countries:
da_DK – Danish (for Denmark only)
he_IL – Hebrew (all)
id_ID – Indonesian (for Indonesia only)
jp_JP – Japanese (for Japan only)
no_NO – Norwegian (for Norway only)
pt_BR – Brazilian Portuguese (for Portugal and Brazil only)
ru_RU – Russian (for Lithuania, Latvia, and Ukraine only)
sv_SE – Swedish (for Sweden only)
th_TH – Thai (for Thailand only)
tr_TR – Turkish (for Turkey only)
zh_CN – Simplified Chinese (for China only)
zh_HK – Traditional Chinese (for Hong Kong only)
zh_TW – Traditional Chinese (for Taiwan only)
Character length and limitations: 2-character country code

PageStyle

90

xs:string
(Optional) Name of the Custom Payment Page Style for payment pages associated
with this button or link. It corresponds to the HTML variable page_style for
customizing payment pages. It is the same name as the Page Style Name you chose to
add or edit the page style in your PayPal Account profile.
Character length and limitations: 30 single-byte alphabetic characters

August 2012

SOAP API Developer Reference

ExpressCheckout API Operations
SetExpressCheckout API Operation

Field

Description

cpp-header-image

xs:string
(Optional) URL for the image you want to appear at the top left of the payment page.
The image has a maximum size of 750 pixels wide by 90 pixels high. PayPal
recommends that you provide an image that is stored on a secure (https) server. If you
do not specify an image, the business name displays.
Character length and limitations: 127 single-byte alphanumeric characters

cpp-header-bordercolor

xs:string
(Optional) Sets the border color around the header of the payment page. The border is
a 2-pixel perimeter around the header space, which is 750 pixels wide by 90 pixels
high. By default, the color is black.
Character length and limitations: 6-character HTML hexadecimal ASCII color code

cpp-header-backcolor

xs:string
(Optional) Sets the background color for the header of the payment page. By default,
the color is white.
Character length and limitations: 6-character HTML hexadecimal ASCII color code

cpp-payflow-color

xs:string
(Optional) Sets the background color for the payment page. By default, the color is
white.
Character length and limitations: 6-character HTML hexadecimal ASCII color code

PaymentAction
(deprecated)

ebl:PaymentActionCodeType
(Optional) How you want to obtain payment. If the transaction does not include a
one-time purchase, this field is ignored. It is one of the following values:
 Sale – This is a final sale for which you are requesting payment (default).
 Authorization – This payment is a basic authorization subject to settlement
with PayPal Authorization and Capture.
 Order – This payment is an order authorization subject to settlement with PayPal
Authorization and Capture.
NOTE:

6

You cannot set this field to Sale in SetExpressCheckout request and then
change this value to Authorization or Order in the
DoExpressCheckoutPayment request. If you set the field to
Authorization or Order in SetExpressCheckout, you may set the
field to Sale.

Character length and limitations: Up to 13 single-byte alphabetic characters
This field is deprecated. Use PaymentAction in PaymentDetailsType instead.
BuyerEmail

SOAP API Developer Reference

ebl:EmailAddressType
(Optional) Email address of the buyer as entered during checkout. PayPal uses this
value to pre-fill the PayPal membership sign-up portion on the PayPal pages.
Character length and limitations: 127 single-byte alphanumeric characters

August 2012

91

6

ExpressCheckout API Operations
SetExpressCheckout API Operation

Field

Description

SolutionType

ebl:SolutionTypeType
(Optional) Type of checkout flow. It is one of the following values:
 Sole – Buyer does not need to create a PayPal account to check out. This is
referred to as PayPal Account Optional.
 Mark – Buyer must have a PayPal account to check out.
NOTE:

LandingPage

ebl:LandingPageType
(Optional) Type of PayPal page to display. It is one of the following values:
 Billing – Non-PayPal account
 Login – PayPal account login

ChannelType

ebl:ChannelType
(Optional) Type of channel. It is one of the following values:
 Merchant – Non-auction seller
 eBayItem – eBay auction

giropaySuccessURL

xs:string
(Optional) The URL on the merchant site to redirect to after a successful giropay
payment.
NOTE:

giropayCancelURL

BanktxnPendingURL

Use this field only if you are using giropay or bank transfer payment methods
in Germany.

xs:string
(Optional) The URL on the merchant site to redirect to after a successful giropay
payment.
NOTE:

Use this field only if you are using giropay or bank transfer payment methods
in Germany.

xs:string
(Optional) The URL on the merchant site to transfer to after a bank transfer payment.
NOTE:

92

You can pass Mark to selectively override the PayPal Account Optional
setting if PayPal Account Optional is turned on in your merchant account.
Passing Sole has no effect if PayPal Account Optional is turned off in your
account

Use this field only if you are using giropay or bank transfer payment methods
in Germany.

BillingAgreement
Details

ns:BillingAgreementDetailsType
(Optional) Billing agreement details.

Enhanced
CheckoutData

ed:EnhancedCheckoutDataType
(Optional) Enhanced data for different industry segments. This field is for eBay use
only.

OtherPaymentMethods

ns:OtherPaymentMethodDetailsType
(Optional) List of other payment methods with which the buyer can pay.

August 2012

SOAP API Developer Reference

ExpressCheckout API Operations
SetExpressCheckout API Operation

Field

Description

BuyerDetails

ns:BuyerDetailsType
(Optional) Details about the buyer's account.

BrandName

xs:string
(Optional) A label that overrides the business name in the PayPal account on the
PayPal hosted checkout pages.
Character length and limitations: 127 single-byte alphanumeric characters

FundingSourceDetail
s

ns:FundingSourceDetailsType
(Optional) Funding source preferences.

CustomerServiceNumb
er

xs:string
(Optional) Merchant Customer Service number displayed on the PayPal pages.
Character length and limitations: 16 single-byte characters

GiftMessageEnable

xs:string
(Optional) Enables the gift message widget on the PayPal pages. It is one of the
following values:
 0 – Do not enable gift message widget.
 1 – Enable gift message widget.

GiftReceiptEnable

xs:string
(Optional) Enable gift receipt widget on the PayPal pages. It is one of the following
values:
 0 – Do not enable gift receipt widget.
 1 – Enable gift receipt widget.

GiftWrapEnable

xs:string
(Optional) Enable gift wrap widget on the PayPal pages. It is one of the following
values:
 0 – Do not enable gift wrap widget.
 1 – Enable gift wrap widget.
NOTE:

If you pass the value 1 in this field, values for the gift wrap amount and gift
wrap name are not passed, the gift wrap name is not displayed, and the gift
wrap amount displays as 0.00.

GiftWrapName

xs:string
(Optional) Label for the gift wrap option such as “Box with ribbon”.
Character length and limitations: 25 single-byte characters

GiftWrapAmount

ebl:BasicAmounttype
(Optional) Amount to be charged to the buyer for gift wrapping..
NOTE:

6

You must set the currencyID attribute to one of the three-character
currency codes for any of the supported PayPal currencies.

Character length and limitations: Value is a positive number which cannot exceed
$10,000 USD in any currency. It includes no currency symbol. It must have 2 decimal
places, the decimal separator must be a period (.), and the optional thousands
separator must be a comma (,).

SOAP API Developer Reference

August 2012

93

6

ExpressCheckout API Operations
SetExpressCheckout API Operation

Field

Description

BuyerEmailOptinEnab
le

xs:string
(Optional) Enables the buyer to provide their email address on the PayPal pages to be
notified of promotions or special events. Is one of the following values:
 0 – Do not enable buyer to provide email address.
 1 – Enable the buyer to provide email address.

SurveyQuestion

xs:string
(Optional) Text for the survey question on the PayPal pages. If the survey question is
present, at least 2 survey answer options must be present.
Character length and limitations: 50 single-byte characters

SurveyEnable

xs:string
(Optional) Enables survey functionality. It is one of the following values:
 0 – Disables survey functionality.
 1 – Enables survey functionality.

SurveyChoice

xs:string
(Optional) Possible options for the survey answers on the PayPal pages. Answers are
displayed only if a valid survey question is present.
Character length and limitations: 15 single-byte characters

TotalType

ns:TotalType
(Optional) Enables display of “Estimated Total” instead of “Total” in the cart review
area. It is one of the following values:
 Total
 EstimatedTotal
Character length and limitations: 14 single-byte characters
This field is available with API Version 64.0 or later.

94

NoteToBuyer

xs:string
(Optional) Displays a note to buyers in the cart review area below the total amount.
Use the note to tell buyers about items in the cart, such as your return policy or that
the total excludes shipping and handling.
Character length and limitations: 127 single-byte characters
This field is available with API Version 64.0 or later.

PaymentReason

ns:PaymentReasonType
Indicates the type of transaction. It is one of the following values:
 None – Transaction is not identified as a particular type.
 Refund – Identifies the transaction as a refund.

August 2012

SOAP API Developer Reference

ExpressCheckout API Operations
SetExpressCheckout API Operation

6

AddressType Fields
Field

Description

Name

xs:string
Person’s name associated with this shipping address. It is required if using a
shipping address.
Character length and limitations: 32 single-byte characters

Street1

xs:string
First street address. It is required if using a shipping address.
Character length and limitations: 100 single-byte characters

Street2

xs:string
(Optional) Second street address.
Character length and limitations: 100 single-byte characters

CityName

xs:string
Name of city. It is required if using a shipping address.
Character length and limitations: 40 single-byte characters

StateOrProvince

xs:string
State or province. It is required if using a shipping address.
Character length and limitations: 40 single-byte characters

PostalCode

xs:string
U.S. ZIP code or other country-specific postal code. It is required if using a
U.S. shipping address and may be required for other countries.
Character length and limitations: 20 single-byte characters

Country

ebl:CountryCodeType
Country code. It is required if using a shipping address.
Character length and limitations: 2 single-byte characters

Phone

xs:string
(Optional) Phone number.
Character length and limitations: 20 single-byte characters
PaymentDetailsType Fields

When implementing parallel payments, you can create up to 10 sets of payment details type
parameter fields, each representing one payment you are hosting on your marketplace.

SOAP API Developer Reference

August 2012

95

6

ExpressCheckout API Operations
SetExpressCheckout API Operation

Field

Description

OrderTotal

ebl:BasicAmountType
(Required) Total cost of the transaction to the buyer. If shipping cost and tax
charges are known, include them in this value. If not, this value should be the
current sub-total of the order. If the transaction includes one or more one-time
purchases, this field must be equal to the sum of the purchases. Set this field to 0 if
the transaction does not include a one-time purchase such as when you set up a
billing agreement for a recurring payment that is not immediately charged. When
the field is set to 0, purchase-specific fields are ignored.
NOTE:

You must set the currencyID attribute to one of the 3-character currency
codes for any of the supported PayPal currencies.

Character length and limitations: Value is a positive number which cannot exceed
$10,000 USD in any currency. It includes no currency symbol. It must have 2
decimal places, the decimal separator must be a period (.), and the optional
thousands separator must be a comma (,).
ItemTotal

ebl:BasicAmountType
Sum of cost of all items in this order. For digital goods, this field is required.
NOTE:

You must set the currencyID attribute to one of the 3-character currency
codes for any of the supported PayPal currencies.

Character length and limitations: Value is a positive number which cannot exceed
$10,000 USD in any currency. It includes no currency symbol. It must have 2
decimal places, the decimal separator must be a period (.), and the optional
thousands separator must be a comma (,).
ShippingTotal

ebl:BasicAmountType
(Optional) Total shipping costs for this order.
NOTE:

You must set the currencyID attribute to one of the 3-character currency
codes for any of the supported PayPal currencies.

Character length and limitations: Value is a positive number which cannot exceed
$10,000 USD in any currency. It includes no currency symbol. It must have 2
decimal places, the decimal separator must be a period (.), and the optional
thousands separator must be a comma (,).
InsuranceTotal

ebl:BasicAmountType
(Optional) Total shipping insurance costs for this order. The value must be a nonnegative currency amount or null if you offer insurance options.
NOTE:

You must set the currencyID attribute to one of the 3-character currency
codes for any of the supported PayPal currencies.

Character length and limitations: Value is a positive number which cannot exceed
$10,000 USD in any currency. It includes no currency symbol. It must have 2
decimal places, the decimal separator must be a period (.), and the optional
thousands separator must be a comma (,).
InsuranceTotal is available since version 53.0.

96

August 2012

SOAP API Developer Reference

ExpressCheckout API Operations
SetExpressCheckout API Operation

Field

Description

ShippingDiscount

ebl:BasicAmountType
(Optional) Shipping discount for this order, specified as a negative number.
NOTE:

6

You must set the currencyID attribute to one of the 3-character currency
codes for any of the supported PayPal currencies.

Character length and limitations: Value is a positive number which cannot exceed
$10,000 USD in any currency. It includes no currency symbol. It must have 2
decimal places, the decimal separator must be a period (.), and the optional
thousands separator must be a comma (,).
ShippingDiscount is available since version 53.0.
InsuranceOptionOffer
ed

xs:boolean
(Optional) Indicates whether insurance is available as an option the buyer can
choose on the PayPal Review page. Is one of the following values:
 true – The Insurance option displays the string ‘Yes’ and the insurance
amount. If true, the total shipping insurance for this order must be a positive
number.
 false – The Insurance option displays ‘No.’

HandlingTotal

ebl:BasicAmountType
(Optional) Total handling costs for this order.
NOTE:

You must set the currencyID attribute to one of the 3-character currency
codes for any of the supported PayPal currencies.

Character length and limitations: Value is a positive number which cannot exceed
$10,000 USD in any currency. It includes no currency symbol. It must have 2
decimal places, the decimal separator must be a period (.), and the optional
thousands separator must be a comma (,).
TaxTotal

ebl:BasicAmountType
(Optional) Sum of tax for all items in this order.
NOTE:

You must set the currencyID attribute to one of the 3-character currency
codes for any of the supported PayPal currencies.

Character length and limitations: Value is a positive number which cannot exceed
$10,000 USD in any currency. It includes no currency symbol. It must have 2
decimal places, the decimal separator must be a period (.), and the optional
thousands separator must be a comma (,).
OrderDescription

xs:string
(Optional) Description of items the buyer is purchasing.
NOTE:

The value you specify is available only if the transaction includes a
purchase. This field is ignored if you set up a billing agreement for a
recurring payment that is not immediately charged.

Character length and limitations: 127 single-byte alphanumeric characters

SOAP API Developer Reference

August 2012

97

6

ExpressCheckout API Operations
SetExpressCheckout API Operation

Field

Description

Custom

xs:string
(Optional) A free-form field for your own use.
NOTE:

The value you specify is available only if the transaction includes a
purchase. This field is ignored if you set up a billing agreement for a
recurring payment that is not immediately charged.

Character length and limitations: 256 single-byte alphanumeric characters
InvoiceID

xs:string
(Optional) Your own invoice or tracking number.
NOTE:

The value you specify is available only if the transaction includes a
purchase. This field is ignored if you set up a billing agreement for a
recurring payment that is not immediately charged.

Character length and limitations: 256 single-byte alphanumeric characters
NotifyURL

xs:string
(Optional) Your URL for receiving Instant Payment Notification (IPN) about this
transaction. If you do not specify this value in the request, the notification URL
from your Merchant Profile is used, if one exists.
I MP O R T ANT :

The notify URL applies only to DoExpressCheckoutPayment.
This value is ignored when set in SetExpressCheckout or
GetExpressCheckoutDetails.

Character length and limitations: 2,048 single-byte alphanumeric characters
ShipToAddress

ns:AddressType
(Optional) Address to which the order is shipped.

PaymentDetailsItem

ebl:PaymentDetailsItemType
(Optional) Details about each individual item included in the order.

EnhancedPaymentData

ed:EnhancedPaymentDataType
(Optional) Enhanced Data section to accept channel-specific data (eBay).

NoteText

xs:string
(Optional) Note to the merchant.
Character length and limitations: 255 single-byte characters

SellerDetails

ns:SellerDetailsType
(Optional) Details about the merchant. This information is used for emails sent out
for eBay transactions.

TransactionId

xs:string
(Optional) Transaction identification number of the transaction that was created.
NOTE:

AllowedPaymentMethod
Type

98

This field is only returned after a successful transaction for
DoExpressCheckout has occurred.

xs:string
(Optional) The payment method type. Specify the value InstantPaymentOnly.

August 2012

SOAP API Developer Reference

ExpressCheckout API Operations
SetExpressCheckout API Operation

Field

Description

PaymentAction

ebl:PaymentActionCodeType
How you want to obtain payment. When implementing parallel payments, this field
is required and must be set to Order. When implementing digital goods, this field
is required and must be set to Sale. If the transaction does not include a one-time
purchase, this field is ignored. It is one of the following values:
 Sale – This is a final sale for which you are requesting payment (default).
 Authorization – This payment is a basic authorization subject to settlement
with PayPal Authorization and Capture.
 Order – This payment is an order authorization subject to settlement with
PayPal Authorization and Capture.
NOTE:

6

You cannot set this field to Sale in SetExpressCheckout request and
then change the value to Authorization or Order in the
DoExpressCheckoutPayment request. If you set the field to
Authorization or Order in SetExpressCheckout, you may set the
field to Sale.

Character length and limitations: Up to 13 single-byte alphabetic characters
PaymentRequestID

xs:string
A unique identifier of the specific payment request, which is required for parallel
payments.
Character length and limitations: Up to 127 single-byte characters

PaymentDetailsItemType Fields
Field

Description

Name

xs:string
Item name. This field is required when you pass a value for ItemCategory.
Character length and limitations: 127 single-byte characters
This field is introduced in version 53.0.

Description

xs:string
(Optional) Item description.
Character length and limitations: 127 single-byte characters
This field is introduced in version 53.0.

Amount

ebl:BasicAmountType
Cost of item. This field is required when you pass a value for ItemCategory.
NOT E :

You must set the currencyID attribute to one of the 3-character currency
codes for any of the supported PayPal currencies.

Character length and limitations: Value is a positive number which cannot exceed
$10,000 USD in any currency. It includes no currency symbol. It must have 2
decimal places, the decimal separator must be a period (.), and the optional
thousands separator must be a comma (,).
This field is introduced in version 53.0.

SOAP API Developer Reference

August 2012

99

6

ExpressCheckout API Operations
SetExpressCheckout API Operation

Field

Description

Number

xs:string
(Optional) Item number.
Character length and limitations: 127 single-byte characters
This field is introduced in version 53.0.

Quantity

xs:integer
Item quantity. This field is required when you pass a value for ItemCategory.
For digital goods (ItemCategory=Digital), this field is required.
Character length and limitations: Any positive integer
This field is introduced in version 53.0.

Tax

ebl:BasicAmountType
(Optional) Item sales tax.
NOT E :

You must set the currencyID attribute to one of the 3-character currency
codes for any of the supported PayPal currencies.

Character length and limitations: Value is a positive number which cannot exceed
$10,000 USD in any currency. It includes no currency symbol. It must have 2
decimal places, the decimal separator must be a period (.), and the optional
thousands separator must be a comma (,).

100

ItemWeight

xs:integer
(Optional) Item weight corresponds to the weight of the item. You can pass this
data to the shipping carrier as is without having to make an additional database
query.
Character length and limitations: Any positive integer

ItemLength

xs:integer
(Optional) Item length corresponds to the length of the item. You can pass this
data to the shipping carrier as is without having to make an additional database
query.
Character length and limitations: Any positive integer

ItemWidth

xs:integer
(Optional) Item width corresponds to the width of the item. You can pass this data
to the shipping carrier as is without having to make an additional database query.
Character length and limitations: Any positive integer

ItemHeight

xs:integer
(Optional) Item height corresponds to the height of the item. You can pass this
data to the shipping carrier as is without having to make an additional database
query.
Character length and limitations: Any positive integer

EbayItemPayment
DetailsItem

eBl:ebayItemPaymentDetailsItemType
(Optional) Information relating to an auction sale on eBay.

ItemURL

xs:string
(Optional) URL for the item.

August 2012

SOAP API Developer Reference

ExpressCheckout API Operations
SetExpressCheckout API Operation

Field

Description

EnhancedItemData

ed:EnhancedItemDataType
(Optional) Enhanced data for each item in the cart. For eBay use only.

ItemCategory

ns:ItemCategoryType
Indicates whether an item is digital or physical. For digital goods, this field is
required and must be set to Digital. It is one of the following values:
 Digital
 Physical

6

This field is available since version 65.1.
SellerDetailsType Fields
Field

Description

PayPalAccountID

xs:string
Unique identifier for the merchant. For parallel payments, this field is required and
must contain the Payer Id or the email address of the merchant.
Character length and limitations: 127 single-byte alphanumeric characters

EbayItemPaymentDetailsItemType Fields
Field

Description

ItemNumber

xs:string
(Optional) Auction item number.
Character length: 765 single-byte characters

AuctionTransactionId

xs:string
(Optional) Auction transaction identification number.
Character length: 255 single-byte characters

OrderID

xs:string
(Optional) Auction order identification number.
Character length: 64 single-byte characters

CartID

xs:string
(Optional) The unique identifier provided by eBay for this order from the buyer.
Character length: 255 single-byte characters

SOAP API Developer Reference

August 2012

101

6

ExpressCheckout API Operations
SetExpressCheckout API Operation

BuyerDetailsType Fields
Field

Description

BuyerId

xs:string
(Optional) The unique identifier provided by eBay for this buyer. The value may or
may not be the same as the username. In the case of eBay, it is different.
Character length and limitations: 255 single-byte characters

BuyerUserName

xs:string
(Optional) The user name of the user at the marketplaces site.

BuyerRegistrationDa
te

xs:dateTime
(Optional) Date when the user registered with the marketplace.
Character length and limitations: Date and time are in UTC/GMTformat, for
example, 2011-06-24T05:38:48Z

TaxIdDetails

ebl:TaxIdDetailsType
Details about the buyer’s tax information. This field is required for Brazil and is for
Brazil use only.
This field is introduced in API version 72.0.

FundingSourceDetailsType Fields
Field

Description

AllowPushFunding

xs:string
(Optional) Indicates whether the merchant can accept push funding. It is one of the
following values:
 0 – Merchant can accept push funding.
 1 – Merchant cannot accept push funding.
N O TE :

AllowedPaymentMetho
d

102

This field overrides the setting in the merchant's PayPal account.

ns:AllowedPaymentMethodType
(Optional) The type of funding sources allowed. It is one of the following values:
 Default – Merchant supports all funding sources.
 InstantOnly – Merchant only supports instant payments.
 AnyFundingSource – All funding methods allowed, to be chosen by the buyer
irrespective of the merchant profile setting.
 InstantFundingSource – Only instant funding methods are allowed. Block
echeck, meft, elevecheck. This value overrides any merchant profile settings.

August 2012

SOAP API Developer Reference

ExpressCheckout API Operations
SetExpressCheckout API Operation

6

ShippingOptionsType Fields
Field

Description

ShippingOptionIsDefau xs:boolean
lt
Default shipping optio displayed on the PayPal pages. This field is required if you
specify the Callback URL. It is one of the following values:
 true – This is the default flat-rate shipping option. PayPal displays this option
and its amount by default.
 false – This flat-rate shipping option and its amount are not displayed as the
default.
N O TE :

There must be ONE and ONLY ONE default. It is not OK to have no
default.

ShippingOptionName

xs:string
Internal name of the shipping option such as Air, Ground, Expedited, and so forth.
This field is required if you specify the Callback URL.
Character length and limitations: 50 character-string.

ShippingOptionAmount

ebl:BasicAmountType
Amount of the flat rate shipping option. This field is required if you specify the
Callback URL.
Character length and limitations: Value is a positive number which cannot exceed
$10,000 USD in any currency. It includes no currency symbol. It must have 2
decimal places, the decimal separator must be a period (.), and the optional
thousands separator must be a comma (,).

BillingAgreementDetailsType Fields
Field

Description

BillingType

ns:BillingCodeType
(Required) Type of billing agreement. For recurring payments, this field must be set
to RecurringPayments. In this case, you can specify up to ten billing agreements.
Other defined values are not valid.
Type of billing agreement for reference transactions. You must have permission from
PayPal to use this field. This field must be set to one of the following values:
 MerchantInitiatedBilling - PayPal creates a billing agreement for each
transaction associated with buyer. You must specify version 54.0 or higher to use
this option.
 MerchantInitiatedBillingSingleAgreement - PayPal creates a single
billing agreement for all transactions associated with buyer. Use this value unless
you need per-transaction billing agreements. You must specify version 58.0 or
higher to use this option.

SOAP API Developer Reference

August 2012

103

6

ExpressCheckout API Operations
SetExpressCheckout API Operation

Field

Description

BillingAgreement
Description

xs:string
Description of goods or services associated with the billing agreement. This field is
required for each recurring payment billing agreement. PayPal recommends that the
description contain a brief summary of the billing agreement terms and conditions.
For example, buyer is billed at “9.99 per month for 2 years”.
Character length and limitations: 127 single-byte alphanumeric characters

PaymentType

ns:MerchantPullPaymentCodeType
(Optional) Type of PayPal payment you require for the billing agreement. It is one of
the following values:
 Any
 InstantOnly
NOTE:

BillingAgreement
Custom

For recurring payments, this field is ignored.

xs:string
(Optional) Custom annotation field for your own use.
NOTE:

For recurring payments, this field is ignored.

Character length and limitations: 256 single-byte alphanumeric bytes
TaxIdDetailsType Type Fields

104

Field

Description

TaxIdType

xs:string
Buyer’s tax ID type. This field is required for Brazil and used for Brazil only.
For Brazil use only: The tax ID type is BR_CPF for individuals and BR_CNPJ for
businesses.
This field is introduced in API version 72.0.

TaxId

xs:string
Buyer’s tax ID. This field is required for Brazil and used for Brazil only.
For Brazil use only: The tax ID is 11 single-byte characters for individuals and 14
single-byte characters for businesses.
This field is introduced in API version 72.0.

August 2012

SOAP API Developer Reference

ExpressCheckout API Operations
SetExpressCheckout API Operation

6

SetExpressCheckout Response Message

NOT E :

Not all fields shown are available for use. Only use fields described in the
documentation.

SetExpressCheckout Response Fields
Field

Description

Token

xs:string
A timestamped token by which you identify to PayPal that you are processing this
payment with Express Checkout. The token expires after three hours. If you set the
token in the SetExpressCheckout request, the value of the token in the response is
identical to the value in the request.
Character length and limitations: 20 single-byte characters

SOAP API Developer Reference

August 2012

105

6

ExpressCheckout API Operations
GetExpressCheckoutDetails API Operation

G e t E x p r e s s C h e c k o u t D e ta i l s A P I O p e r a t i o n
The GetExpressCheckoutDetails API operation obtains information about an Express
Checkout transaction.

GetExpressCheckoutDetails Request Message

NOT E :

Not all fields shown are available for use. Use only the fields described in the
documentation.

GetExpressCheckoutDetails Request Fields

106

Field

Description

Token

xs:string
(Required) A timestamped token, the value of which was returned by
SetExpressCheckout response.
Character length and limitations: 20 single-byte characters

August 2012

SOAP API Developer Reference

ExpressCheckout API Operations
GetExpressCheckoutDetails API Operation

6

GetExpressCheckoutDetails Response Message

NOT E :

Not all fields shown are available for use. Use only the fields described in the
documentation.

SOAP API Developer Reference

August 2012

107

6

ExpressCheckout API Operations
GetExpressCheckoutDetails API Operation

NOT E :

108

Not all fields shown are available for use. Use only the fields described in the
documentation.

August 2012

SOAP API Developer Reference

ExpressCheckout API Operations
GetExpressCheckoutDetails API Operation

NOT E :

6

Not all fields shown are available for use. Use only the fields described in the
documentation.

SOAP API Developer Reference

August 2012

109

6

110

ExpressCheckout API Operations
GetExpressCheckoutDetails API Operation

August 2012

SOAP API Developer Reference

ExpressCheckout API Operations
GetExpressCheckoutDetails API Operation
NOT E :

Not all fields shown are available for use. Use only the fields described in the
documentation.

NOT E :

Not all fields shown are available for use. Use only the fields described in the
documentation.

NOT E :

Not all fields shown are available for use. Use only the fields described in the
documentation.

NOT E :

Not all fields shown are available for use. Use only the fields described in the
documentation.

SOAP API Developer Reference

August 2012

6

111

6

112

ExpressCheckout API Operations
GetExpressCheckoutDetails API Operation

NOT E :

Not all fields shown are available for use. Use only the fields described in the
documentation.

NOT E :

Not all fields shown are available for use. Use only the fields described in the
documentation.

August 2012

SOAP API Developer Reference

ExpressCheckout API Operations
GetExpressCheckoutDetails API Operation

NOT E :

6

Not all fields shown are available for use. Use only the fields described in the
documentation.

SOAP API Developer Reference

August 2012

113

6

ExpressCheckout API Operations
GetExpressCheckoutDetails API Operation

NOT E :

Not all fields shown are available for use. Use only the fields described in the
documentation.

NOT E :

Not all fields shown are available for use. Use only the fields described in the
documentation.

GetExpressCheckoutDetails Response Fields

114

Field

Description

Token

xs:string
The timestamped token value that was returned by SetExpressCheckout response
and passed on GetExpressCheckoutDetails request.
Character length and limitations: 20 single-byte characters

PayerInfo

ebl:PayerInfoType
Information about the payer.

Custom

xs:string
A free-form field for your own use, as set by you in the Custom element of the
SetExpressCheckout request.
Character length and limitations: 256 single-byte alphanumeric characters

InvoiceID

xs:string
Your own invoice or tracking number, as set by you in the element of the same name
in the SetExpressCheckout request.
Character length and limitations: 127 single-byte alphanumeric characters

August 2012

SOAP API Developer Reference

ExpressCheckout API Operations
GetExpressCheckoutDetails API Operation

Field

Description

ContactPhone

xs:string
Buyer’s contact phone number.
N O TE :

6

PayPal returns a contact phone number only if your Merchant Account
Profile settings require that the buyer enter one.

Character length and limitations: Field mask is XXX-XXX-XXXX (for US numbers)
or +XXX XXXXXXXX (for international numbers)
PaymentDetails

ebl:PaymentDetailsType
Information about the payment.

PayPalAdjustment

cc:BasicAmountType
A discount or gift certificate offered by PayPal to the buyer. This amount is
represented by a negative amount. If the buyer has a negative PayPal account
balance, PayPal adds the negative balance to the transaction amount, which is
represented as a positive value.
Character length and limitations: Must not exceed $10,000 USD in any currency. No
currency symbol. Must have 2 decimal places, decimal separator must be a period (.),
and the optional thousands separator must be a comma (,).

Note

xs:string
Text entered by the buyer on the PayPal website if you set the AllowNote field to 1
in SetExpressCheckout.
Character length and limitations: 255 single-byte characters
This field is deprecated.

RedirectRequired

xs:boolean
Flag to indicate whether you need to redirect the buyer back to PayPal after
successfully completing the transaction.
N O TE :

Use this field only if you are using giropay or bank transfer payment methods
in Germany.

UserSelectedOptions

ebl:UserSelectedOptionsType
Shipping options and insurance.

CheckoutStatus

ebl:CheckoutStatusType
Status of the checkout session. If payment is completed, the transaction identification
number of the resulting transaction is returned. It is one of the following values:
 PaymentActionNotInitiated
 PaymentActionFailed
 PaymentActionInProgress
 PaymentCompleted

GiftMessage

xs:string
Gift message entered by the buyer on the PayPal checkout pages.
Character length and limitations: 150 single-byte characters

SOAP API Developer Reference

August 2012

115

6

ExpressCheckout API Operations
GetExpressCheckoutDetails API Operation

Field

Description

GiftReceiptEnable

xs:string
Whether the buyer requested a gift receipt. It is one of the following values:
 true – The buyer requested a gift receipt.
 false – The buyer did not request a gift receipt.

GiftWrapName

xs:string
Returns the gift wrap name only if the buyer selects gift option on the PayPal pages.
Character length and limitations: 25 single-byte characters

GiftWrapAmount

ebl:BasicAmountType
Returns the gift wrap amount only if the buyer selects the gift option on the PayPal
pages.
N O TE :

You must set the currencyID attribute to one of the 3-character currency
codes for any of the supported PayPal currencies.

Character length and limitations: Must not exceed $10,000 USD in any currency. No
currency symbol. Must have two decimal places, decimal separator must be a period
(.), and the optional thousands separator must be a comma (,).
BuyerMarketingEmail

ebl:EmailAddressType
Buyer’s email address if the buyer provided it on the PayPal pages.
Character length and limitations: 127 single-byte characters

SurveyQuestion

xs:string
Survey question on the PayPal checkout pages.
Character length and limitations: 50 single-byte characters

SurveyChoiceSelecte
d

xs:string
Survey response the buyer selects on the PayPal pages.
Character length and limitations: 15 single-byte characters

PaymentRequestInfo

ns:PaymentRequestInfoType
Payment request information for each bucket in the cart.

PayerInfoType Fields

116

Field

Description

Payer

ebl:EmailAddressType
Email address of buyer.
Character length and limitations: 127 single-byte characters

PayerID

ebl:UserIDType
Unique PayPal Customer Account identification number.
Character length and limitations: 13 single-byte alphanumeric characters

August 2012

SOAP API Developer Reference

ExpressCheckout API Operations
GetExpressCheckoutDetails API Operation

Field

Description

PayerStatus

ebl:PayPalUserStatusCodeType
Status of buyer. It is one of the following values:
 verified
 unverified

6

Character length and limitations: 10 single-byte alphabetic characters
PayerName

ebl:PersonNameType
First and last name of buyer.

PayerCountry

ebl:CountryCodeType
Buyer’s country of residence in the form of ISO standard 3166 two-character country
codes.
Character length and limitations: 2 single-byte characters

PayerBusiness

xs:string
Buyer’s business name.
Character length and limitations: 127 single-byte characters

Address

xs:string
Buyer’s shipping address information.

TaxIdDetails

ns:TaxIdDetailsType
Details about the buyer’s tax information.
This field is introduced in API version 72.0.

PayerNameType Fields
Field

Description

Salutation

xs:string
Buyer’s salutation.
Character length and limitations: 20 single-byte characters

FirstName

ebl:PersonNameType
Buyer’s first name.
Character length and limitations: 25 single-byte characters

MiddleName

ebl:NameUser
Buyer’s middle name.
Character length and limitations: 25 single-byte characters

LastName

ebl:NameType
Buyer’s last name.
Character length and limitations: 25 single-byte characters

Suffix

ebl:SuffixType
Buyer’s suffix.
Character length and limitations: 12 single-byte characters

SOAP API Developer Reference

August 2012

117

6

ExpressCheckout API Operations
GetExpressCheckoutDetails API Operation

AddressType Fields
Field

Description

Name

xs:string
Person’s name associated with this shipping address.
Character length and limitations: 32 single-byte characters

Street1

xs:string
First street address.
Character length and limitations: 100 single-byte characters

Street2

xs:string
Second street address.
Character length and limitations: 100 single-byte characters

CityName

xs:string
Name of city.
Character length and limitations: 40 single-byte characters

StateOrProvince

xs:string
State or province.
Character length and limitations: 40 single-byte characters

PostalCode

xs:string
U.S. ZIP code or other country-specific postal code.
Character length and limitations: 20 single-byte characters

Country

ebl:CountryCodeType
Country code.
Character length and limitations: 2 single-byte characters

Phone

xs:string
Phone number.
Character length and limitations: 20 single-byte characters

AddressStatus

ebl:AddressStatusTypeCode
Status of street address on file with PayPal. It is one of the following values:
 none
 Confirmed
 Unconfirmed

PaymentDetailsType Fields

When implementing parallel payments, you can create up to 10 sets of payment details type
parameter fields, each representing one payment you are hosting on your marketplace.

118

August 2012

SOAP API Developer Reference

ExpressCheckout API Operations
GetExpressCheckoutDetails API Operation

Field

Description

OrderTotal

ebl:BasicAmountType
The total cost of the transaction to the buyer. If shipping cost (not applicable to
digital goods) and tax charges are known, include them in this value. If not, this
value should be the current sub-total of the order. If the transaction includes one
or more one-time purchases, this field must be equal to the sum of the purchases.
Set this field to 0 if the transaction does not include a one-time purchase such as
when you set up a billing agreement for a recurring payment that is not
immediately charged. Purchase-specific fields are ignored. For digital goods, the
following must be true:
 total cost > 0
 total cost <= total cost passed in the call to SetExpressCheckout
NOTE:

6

You must set the currencyID attribute to one of the 3-character
currency codes for any of the supported PayPal currencies.

Character length and limitations: Value is a positive number which cannot
exceed $10,000 USD in any currency. It includes no currency symbol. It must
have 2 decimal places, the decimal separator must be a period (.), and the
optional thousands separator must be a comma (,).
ItemTotal

ebl:BasicAmountType
Sum of cost of all items in this order. For digital goods, this field is required.
PayPal recommends that you pass the same value in the call to
DoExpressCheckoutPayment that you passed in the call to
SetExpressCheckout.
NOTE:

You must set the currencyID attribute to one of the 3-character
currency codes for any of the supported PayPal currencies.

Character length and limitations: Value is a positive number which cannot
exceed $10,000 USD in any currency. It includes no currency symbol. It must
have 2 decimal places, the decimal separator must be a period (.), and the
optional thousands separator must be a comma (,).
ShippingTotal

ebl:BasicAmountType
(Optional) Total shipping costs for this order.
NOTE:

You must set the currencyID attribute to one of the 3-character
currency codes for any of the supported PayPal currencies.

Character length and limitations: Value is a positive number which cannot
exceed $10,000 USD in any currency. It includes no currency symbol. It must
have 2 decimal places, the decimal separator must be a period (.), and the
optional thousands separator must be a comma (,).

SOAP API Developer Reference

August 2012

119

6

ExpressCheckout API Operations
GetExpressCheckoutDetails API Operation

Field

Description

InsuranceTotal

ebl:BasicAmountType
(Optional) Total shipping insurance costs for this order. The value must be a
non-negative currency amount or null if you offer insurance options.
NOTE:

You must set the currencyID attribute to one of the 3-character
currency codes for any of the supported PayPal currencies.

Character length and limitations: Value is a positive number which cannot
exceed $10,000 USD in any currency. It includes no currency symbol. It must
have 2 decimal places, the decimal separator must be a period (.), and the
optional thousands separator must be a comma (,).
InsuranceTotal is available since version 53.0.
ShippingDiscount

ebl:BasicAmountType
(Optional) Shipping discount for this order, specified as a negative number.
NOTE:

You must set the currencyID attribute to one of the 3-character
currency codes for any of the supported PayPal currencies.

Character length and limitations: Value is a positive number which cannot
exceed $10,000 USD in any currency. It includes no currency symbol. It must
have 2 decimal places, the decimal separator must be a period (.), and the
optional thousands separator must be a comma (,).
ShippingDiscount is available since version 53.0.
InsuranceOptionOffered

xs:boolean
(Optional) Indicates whether insurance is available as an option the buyer can
choose on the PayPal pages. Is one of the following values:
 true – The Insurance option displays the string ‘Yes’ and the insurance
amount. If true, the total shipping insurance for this order must be a
positive number.
 false – The Insurance option displays ‘No.’

HandlingTotal

ebl:BasicAmountType
(Optional) Total handling costs for this order.
NOTE:

You must set the currencyID attribute to one of the 3-character
currency codes for any of the supported PayPal currencies.

Character length and limitations: Value is a positive number which cannot
exceed $10,000 USD in any currency. It includes no currency symbol. It must
have 2 decimal places, the decimal separator must be a period (.), and the
optional thousands separator must be a comma (,).

120

August 2012

SOAP API Developer Reference

ExpressCheckout API Operations
GetExpressCheckoutDetails API Operation

Field

Description

TaxTotal

ebl:BasicAmountType
(Optional) Sum of tax for all items in this order.
NOTE:

6

You must set the currencyID attribute to one of the 3-character
currency codes for any of the supported PayPal currencies.

Character length and limitations: Value is a positive number which cannot
exceed $10,000 USD in any currency. It includes no currency symbol. It must
have 2 decimal places, the decimal separator must be a period (.), and the
optional thousands separator must be a comma (,).
OrderDescription

xs:string
(Optional) Description of items the buyer is purchasing.
NOTE:

The value you specify is available only if the transaction includes a
purchase. This field is ignored if you set up a billing agreement for a
recurring payment that is not immediately charged.

Character length and limitations: 127 single-byte alphanumeric characters
Custom

xs:string
(Optional) A free-form field for your own use.
NOTE:

The value you specify is available only if the transaction includes a
purchase. This field is ignored if you set up a billing agreement for a
recurring payment that is not immediately charged.

Character length and limitations: 256 single-byte alphanumeric characters
InvoiceID

xs:string
(Optional) Your own invoice or tracking number.
NOTE:

The value you specify is available only if the transaction includes a
purchase. This field is ignored if you set up a billing agreement for a
recurring payment that is not immediately charged.

Character length and limitations: 256 single-byte alphanumeric characters
NotifyURL

xs:string
Your URL for receiving Instant Payment Notification (IPN) about this
transaction. If you do not specify this value in the request, the notification URL
from your Merchant Profile is used, if one exists.
I M POR T ANT :

The notify URL applies only to
DoExpressCheckoutPayment. This value is ignored when
set in SetExpressCheckout or
GetExpressCheckoutDetails.

Character length and limitations: 2,048 single-byte alphanumeric characters
ShipToAddress

ns:AddressType
Address the order is shipped to.

PaymentDetailsItem

ebl:PaymentDetailsItemType
Details about each individual item included in the order.

SOAP API Developer Reference

August 2012

121

6

ExpressCheckout API Operations
GetExpressCheckoutDetails API Operation

Field

Description

EnhancedPaymentData

ed:EnhancedPaymentDataType
Enhanced Data section to accept channel-specific data.

NoteText

xs:string
Note to the merchant.
Character length and limitations: 255 single-byte characters

TransactionId

xs:string
Transaction identification number of the transaction that was created.
NOTE:

This field is only returned after a successful transaction for
DoExpressCheckout has occurred.

AllowedPaymentMethodTy
pe

xs:string
The payment method type. Specify the value InstantPaymentOnly.

PaymentRequestID

xs:string
A unique identifier of the specific payment request. Required when
implementing parallel payments.
Character length and limitations: Up to 127 single-byte characters

PaymentDetailsItemType Fields
Field

Description

Name

xs:string
Item name.
Character length and limitations: 127 single-byte characters

Description

xs:string
Item description.
Character length and limitations: 127 single-byte characters
This field is available since version 53.0.

Amount

ebl:BasicAmountType
Cost of item.
NOT E :

You must set the currencyID attribute to one of the 3-character
currency codes for any of the supported PayPal currencies.

Character length and limitations: Value is a positive number which cannot
exceed $10,000 USD in any currency. It includes no currency symbol. It must
have 2 decimal places, the decimal separator must be a period (.), and the
optional thousands separator must be a comma (,).
Number

122

xs:string
Item number.
Character length and limitations: 127 single-byte characters

August 2012

SOAP API Developer Reference

ExpressCheckout API Operations
GetExpressCheckoutDetails API Operation

Field

Description

Quantity

xs:integer
Item quantity.
Character length and limitations: Any positive integer

Tax

ebl:BasicAmountType
Item sales tax.
NOT E :

6

You must set the currencyID attribute to one of the 3-character
currency codes for any of the supported PayPal currencies.

Character length and limitations: Value is a positive number which cannot
exceed $10,000 USD in any currency. It includes no currency symbol. It must
have 2 decimal places, the decimal separator must be a period (.), and the
optional thousands separator must be a comma (,).
ItemWeight

xs:integer
Weight of the item. You can pass this data to the shipping carrier as is without
having to make an additional database query.
Character length and limitations: Any positive integer

ItemLength

xs:integer
Length of the item. You can pass this data to the shipping carrier as is without
having to make an additional database query.
Character length and limitations: Any positive integer

ItemWidth

xs:integer
Width of the item. You can pass this data to the shipping carrier as is without
having to make an additional database query.
Character length and limitations: Any positive integer

ItemHeight

xs:integer
Height of the item. You can pass this data to the shipping carrier as is without
having to make an additional database query.
Character length and limitations: Any positive integer

EbayItemPayment
DetailsItem

eBl:ebayItemPaymentDetailsItemType
Information relating to an auction sale on eBay.

ItemCategory

ns:ItemCategoryType
Indicates whether the item is digital or physical. For digital goods
(ItemCategory=Digital), this field is required. It is one of the following
values:
 Digital
 Physical
This field is available since version 65.1.

SOAP API Developer Reference

August 2012

123

6

ExpressCheckout API Operations
GetExpressCheckoutDetails API Operation

EbayItemPaymentDetailsItemType Fields
Field

Description

ItemNumber

xs:string
Auction item number.
Character length: 765 single-byte characters

AuctionTransactionId

xs:string
Auction transaction identification number.
Character length: 255 single-byte characters

OrderID

xs:string
Auction order identification number.
Character length: 64 single-byte characters

CartID

xs:string
The unique identifier provided by eBay for this order from the buyer.
Character length: 255 single-byte characters
UserSelectedOptionsType Fields

Field

Description

ShippingCalculationM
ode

xs:string
Describes how the options that were presented to the buyer were determined. It is
one of the following values:
 API - Callback
 API - Flatrate

InsuranceOptionSelec
ted

xs:boolean
The option that the buyer chose for insurance. It is one of the following values:
 Yes – The buyer opted for insurance.
 No – The buyer did not opt for insurance.

ShippingOptionIsDefa
ult

xs:boolean
Indicates whether the buyer chose the default shipping option. It is one of the
following values:
 true – The buyer chose the default shipping option.
 false – The buyer did not choose the default shipping option.
Character length and limitations: true or false

ShippingOptionAmount

124

ebl:BasicAmountType
The shipping amount that the buyer chose.
Character length and limitations: Value is a positive number which cannot exceed
$10,000 USD in any currency. It includes no currency symbol. It must have 2
decimal places, the decimal separator must be a period (.), and the optional
thousands separator must be a comma (,).

August 2012

SOAP API Developer Reference

ExpressCheckout API Operations
GetExpressCheckoutDetails API Operation

Field

Description

ShippingOptionName

xs:string
The name of the shipping option, such as air or ground.

6

SellerDetailsType Fields
Field

Description

PayPalAccountID

xs:string
Unique identifier for the merchant. For parallel payments, this field contains
either the Payer Id or the email address of the merchant.
Character length and limitations: 127 single-byte alphanumeric characters

PaymentRequestInfoType Fields
Field

Description

TransactionId

xs:string
Transaction ID for up to 10 parallel payment requests.
This field is available since version 64.0.

PaymentRequestID

xs:string
Payment request ID for up to 10 payment requests.
This field is available since version 64.0.

PaymentError

ns:ErrorType
Errors associated with the bucket of parallel payment requests.
This field is available since version 64.0.

PaymentErrorType Fields
Field

Description

ShortMessage

xs:string
Payment error short message.

LongMessage

xs:string
Payment error long message.

ErrorCode

xs:string
Payment error code.

SeverityCode

xs:string
Payment error severity code.

ErrorParameters

xs:string
Application-specific error values indicating more about the error condition.

SOAP API Developer Reference

August 2012

125

6

ExpressCheckout API Operations
DoExpressCheckoutPayment API Operation

TaxIdDetailsType Fields
Field

Description

TaxIdType

xs:string
Buyer’s tax ID type. This field is required for Brazil and used for Brazil only.
For Brazil use only: The tax ID type is BR_CPF for individuals and BR_CNPJ for
businesses.
This field is introduced in API version 72.0.

TaxId

xs:string
Buyer’s tax ID. This field is required for Brazil and used for Brazil only.
For Brazil use only: The tax ID is 11 single-byte characters for individuals and 14
single-byte characters for businesses.
This field is introduced in API version 72.0.

DoExpressCheckoutPayment API Operation
The DoExpressCheckoutPayment API operation completes an Express Checkout
transaction.
If you set up a billing agreement in your SetExpressCheckout API call, the billing
agreement is created when you call the DoExpressCheckoutPayment API operation.

DoExpressCheckoutPayment Request Message

NOT E :

126

Not all fields shown are available for use. Use only the fields described in the
documentation.

August 2012

SOAP API Developer Reference

ExpressCheckout API Operations
DoExpressCheckoutPayment API Operation

NOT E :

6

Not all fields shown are available for use. Use only the fields described in the
documentation.

SOAP API Developer Reference

August 2012

127

6

ExpressCheckout API Operations
DoExpressCheckoutPayment API Operation

NOT E :

Not all fields shown are available for use. Use only the fields described in the
documentation.

DoExpressCheckoutPayment Request Fields
Field

Description

Token

xs:string
(Required) The timestamped token value that was returned in the
SetExpressCheckout response and passed in the
GetExpressCheckoutDetails request.
Character length and limitations: 20 single-byte characters

PaymentAction
(deprecated)

ebl:PaymentActionCodeType
(Required) How you want to obtain payment. It is one of the following values:
 Authorization – This payment is a basic authorization subject to settlement
with PayPal Authorization and Capture.
 Order – This payment is an order authorization subject to settlement with PayPal
Authorization and Capture.
 Sale – This is a final sale for which you are requesting payment.
NOTE:

You cannot set this value to Sale in the SetExpressCheckout request and
then change this value to Authorization in the
DoExpressCheckoutPayment request.

Character length and limitations: Up to 13 single-byte alphabetic characters
This field is deprecated. Use PaymentAction in PaymentDetailsType instead.

128

August 2012

SOAP API Developer Reference

ExpressCheckout API Operations
DoExpressCheckoutPayment API Operation

Field

Description

PayerID

ebl:UserIDType
(Required) Unique PayPal buyer account identification number as returned in the
GetExpressCheckoutDetails response
Character length and limitations: 13 single-byte alphanumeric characters

PaymentDetails

ebl:PaymentDetailsType
(Required) Information about the payment.

UserSelectedOptions

ebl:UserSelectedOptionsType
(Optional) Shipping options and insurance selected by the buyer.

ReturnFMFDetails

xs:boolean
(Optional) Flag to indicate whether you want the results returned by Fraud
Management Filters. By default, you do not receive this information. It is one of the
following values:
 0 – Do not receive FMF details (default).
 1 – Receive FMF details.

GiftMessage

xs:string
(Optional) The gift message the buyer entered on the PayPal pages.
Character length and limitations: 150 single-byte characters

GiftReceiptEnable

xs:string
(Optional) Whether the buyer selected a gift receipt on the PayPal pages. It is one of
the following vaues:
 true – The buyer selected a gift message.
 false – The buyer did not select a gift message.

GiftWrapName

xs:string
(Optional) Return the gift wrap name only if the buyer selected the gift option on the
PayPal pages.
Character length and limitations: 25 single-byte characters

GiftWrapAmount

ebl:BasicAmounttType
(Optional) Amount only if the buyer selected the gift option on the PayPal pages.
NOTE:

6

You must set the currencyID attribute to one of the three-character
currency codes for any of the supported PayPal currencies.

Character length and limitations: Value is a positive number which cannot exceed
$10,000 USD in any currency. It includes no currency symbol. It must have 2 decimal
places, the decimal separator must be a period (.), and the optional thousands
separator must be a comma (,).
BuyerMarketingEmail

SOAP API Developer Reference

ebl:EmailAddressType
(Optional) The buyer email address opted in by the buyer on the PayPal pages.
Character length and limitations: 127 single-byte characters

August 2012

129

6

ExpressCheckout API Operations
DoExpressCheckoutPayment API Operation

Field

Description

SurveyQuestion

xs:string
(Optional) Survey question on the PayPal pages.
Limitations: 50 single-byte characters

SurveyChoiceSelecte
d

xs:string
(Optional) Survey response that the buyer selected on the PayPal pages.
Character length and limitations: 15 single-byte characters

ButtonSource

xs:string
(Optional) Identification code for use by third-party applications to identify
transactions.
Character length and limitations: 32 single-byte alphanumeric characters

AddressType Fields

130

Field

Description

Name

xs:string
Person’s name associated with this shipping address. It is required if using a
shipping address.
Character length and limitations: 32 single-byte characters

Street1

xs:string
First street address. It is required if using a shipping address.
Character length and limitations: 100 single-byte characters

Street2

xs:string
(Optional) Second street address.
Character length and limitations: 100 single-byte characters

CityName

xs:string
Name of city. It is required if using a shipping address.
Character length and limitations: 40 single-byte characters

StateOrProvince

xs:string
State or province. It is required if using a shipping address.
Character length and limitations: 40 single-byte characters

PostalCode

xs:string
U.S. ZIP code or other country-specific postal code. It is required if using a
U.S. shipping address and may be required for other countries.
Character length and limitations: 20 single-byte characters

Country

ebl:CountryCodeType
Country code. It is required if using a shipping address.
Character length and limitations: 2 single-byte characters

August 2012

SOAP API Developer Reference

ExpressCheckout API Operations
DoExpressCheckoutPayment API Operation

Field

Description

Phone

xs:string
(Optional) Phone number.
Character length and limitations: 20 single-byte characters

6

PaymentDetailsType Fields

When implementing parallel payments, you can create up to 10 sets of payment details type
parameter fields, each representing one payment you are hosting on your marketplace.
Field

Description

OrderTotal

ebl:BasicAmountType
(Required) The total cost of the transaction to the buyer. If shipping cost (not
applicable to digital goods) and tax charges are known, include them in this
value. If not, this value should be the current sub-total of the order. If the
transaction includes one or more one-time purchases, this field must be equal
to the sum of the purchases. Set this field to 0 if the transaction does not
include a one-time purchase such as when you set up a billing agreement for a
recurring payment that is not immediately charged. When the field is set to 0,
purchase-specific fields are ignored. For digital goods, the following must be
true:
 total cost > 0
 total cost <= total cost passed in the call to SetExpressCheckout
N O TE :

You must set the currencyID attribute to one of the 3-character
currency codes for any of the supported PayPal currencies.

Character length and limitations: Value is a positive number which cannot
exceed $10,000 USD in any currency. It includes no currency symbol. It must
have 2 decimal places, the decimal separator must be a period (.), and the
optional thousands separator must be a comma (,).
ItemTotal

ebl:BasicAmountType
Sum of cost of all items in this order. For digital goods, this field is required.
PayPal recommends that you pass the same value in the call to
DoExpressCheckoutPayment that you passed in the call to
SetExpressCheckout.
N O TE :

You must set the currencyID attribute to one of the 3-character
currency codes for any of the supported PayPal currencies.

Character length and limitations: Value is a positive number which cannot
exceed $10,000 USD in any currency. It includes no currency symbol. It must
have 2 decimal places, the decimal separator must be a period (.), and the
optional thousands separator must be a comma (,).

SOAP API Developer Reference

August 2012

131

6

ExpressCheckout API Operations
DoExpressCheckoutPayment API Operation

Field

Description

ShippingTotal

ebl:BasicAmountType
(Optional) Total shipping costs for this order.
N O TE :

You must set the currencyID attribute to one of the 3-character
currency codes for any of the supported PayPal currencies.

Character length and limitations: Value is a positive number which cannot
exceed $10,000 USD in any currency. It includes no currency symbol. It must
have 2 decimal places, the decimal separator must be a period (.), and the
optional thousands separator must be a comma (,).
InsuranceTotal

ebl:BasicAmountType
(Optional) Total shipping insurance costs for this order. The value must be a
non-negative currency amount or null if you offer insurance options.
N O TE :

You must set the currencyID attribute to one of the 3-character
currency codes for any of the supported PayPal currencies.

Character length and limitations: Value is a positive number which cannot
exceed $10,000 USD in any currency. It includes no currency symbol. It must
have 2 decimal places, the decimal separator must be a period (.), and the
optional thousands separator must be a comma (,).
InsuranceTotal is available since version 53.0.
ShippingDiscount

ebl:BasicAmountType
(Optional) Shipping discount for this order, specified as a negative number.
N O TE :

You must set the currencyID attribute to one of the 3-character
currency codes for any of the supported PayPal currencies.

Character length and limitations: Value is a negative number. It includes no
currency symbol. It must have 2 decimal places, the decimal separator must be
a period (.), and the optional thousands separator must be a comma (,).
ShippingDiscount is available since version 53.0.
InsuranceOptionOffered

xs:boolean
(Optional) Indicates whether insurance is available as an option the buyer can
choose on the PayPal Review page. Is one of the following values:
 true – The Insurance option displays the string ‘Yes’ and the insurance
amount. If true, the total shipping insurance for this order must be a
positive number.
 false – The Insurance option displays ‘No.’

HandlingTotal

ebl:BasicAmountType
(Optional) Total handling costs for this order.
N O TE :

You must set the currencyID attribute to one of the 3-character
currency codes for any of the supported PayPal currencies.

Character length and limitations: Value is a positive number which cannot
exceed $10,000 USD in any currency. It includes no currency symbol. It must
have 2 decimal places, the decimal separator must be a period (.), and the
optional thousands separator must be a comma (,).

132

August 2012

SOAP API Developer Reference

ExpressCheckout API Operations
DoExpressCheckoutPayment API Operation

Field

Description

TaxTotal

ebl:BasicAmountType
(Optional) Sum of tax for all items in this order.
N O TE :

6

You must set the currencyID attribute to one of the 3-character
currency codes for any of the supported PayPal currencies.

Character length and limitations: Value is a positive number which cannot
exceed $10,000 USD in any currency. It includes no currency symbol. It must
have 2 decimal places, the decimal separator must be a period (.), and the
optional thousands separator must be a comma (,).
OrderDescription

xs:string
(Optional) Description of items the buyer is purchasing.
N O TE :

The value you specify is available only if the transaction includes a
purchase. This field is ignored if you set up a billing agreement for a
recurring payment that is not immediately charged.

Character length and limitations: 127 single-byte alphanumeric characters
Custom

xs:string
(Optional) A free-form field for your own use.
N O TE :

The value you specify is available only if the transaction includes a
purchase. This field is ignored if you set up a billing agreement for a
recurring payment that is not immediately charged.

Character length and limitations: 256 single-byte alphanumeric characters
InvoiceID

xs:string
(Optional) Your own invoice or tracking number.
N O TE :

The value you specify is available only if the transaction includes a
purchase. This field is ignored if you set up a billing agreement for a
recurring payment that is not immediately charged.

Character length and limitations: 256 single-byte alphanumeric characters
ButtonSource (deprecated)

SOAP API Developer Reference

xs:string
(Optional) An identification code for use by third-party applications to identify
transactions.
(Optional) An identification code for use by third-party applications to identify
transactions. You can specify up to 10 payments, where n is a digit between 0
and 9, inclusive.
Character length and limitations: 32 single-byte alphanumeric characters
ButtonSource is deprecated since version 63.0. Use ButtonSource in the
DoExpressCheckoutPayment request fields instead.

August 2012

133

6

ExpressCheckout API Operations
DoExpressCheckoutPayment API Operation

Field

Description

NotifyURL

xs:string
(Optional) Your URL for receiving Instant Payment Notification (IPN) about
this transaction. If you do not specify this value in the request, the notification
URL from your Merchant Profile is used, if one exists.
I MP O R TAN T :

The notify URL applies only to
DoExpressCheckoutPayment. This value is ignored when
set in SetExpressCheckout or
GetExpressCheckoutDetails.

Character length and limitations: 2,048 single-byte alphanumeric characters
ShipToAddress

ns:AddressType
(Optional) Address to which the order is shipped.

PaymentDetailsItem

ebl:PaymentDetailsItemType
(Optional) Details about each individual item included in the order.

EnhancedPaymentData

ed:EnhancedPaymentDataType
(Optional) Enhanced Data section to accept channel-specific data (eBay).

NoteText

xs:string
(Optional) Note to the merchant.
Character length and limitations: 255 single-byte characters

SoftDescriptor

xs:string
A per transaction description of the payment that is passed to the buyer’s credit
card statement.
N O TE :

Ignore when PaymentAction=Order.

SellerDetails

ns:SellerDetailsType
(Optional) Details about the merchant. This information is used for emails sent
out for eBay transactions.

TransactionId

xs:string
(Optional) Transaction identification number of the transaction that was
created.
N O TE :

This field is only returned after a successful transaction for
DoExpressCheckout has occurred.

AllowedPaymentMethodType xs:string
(Optional) The payment method type. Specify the value
InstantPaymentOnly.

134

August 2012

SOAP API Developer Reference

ExpressCheckout API Operations
DoExpressCheckoutPayment API Operation

Field

Description

PaymentAction

ebl:PaymentActionCodeType
How you want to obtain payment. When implementing parallel payments, this
field is required and must be set to Order. When implementing digital goods,
this field is required and must be set to Sale. If the transaction does not
include a one-time purchase, this field is ignored. It is one of the following
values:
 Sale – This is a final sale for which you are requesting payment (default).
 Authorization – This payment is a basic authorization subject to
settlement with PayPal Authorization and Capture.
 Order – This payment is an order authorization subject to settlement with
PayPal Authorization and Capture.
N O TE :

6

You cannot set this field to Sale in SetExpressCheckout request
and then change the value to Authorization or Order in the
DoExpressCheckoutPayment request. If you set the field to
Authorization or Order in SetExpressCheckout, you may set
the field to Sale.

Character length and limitations: Up to 13 single-byte alphabetic characters
PaymentRequestID

xs:string
A unique identifier of the specific payment request. Required when
implementing parallel payments.
Character length and limitations: Up to 127 single-byte characters

PaymentDetailsItemType Fields
Field

Description

Name

xs:string
Item name. This field is required when you pass a value for ItemCategory.
Character length and limitations: 127 single-byte characters
This field is introduced in version 53.0.

Description

xs:string
(Optional) Item description.
Character length and limitations: 127 single-byte characters
This field is introduced in version 53.0.

SOAP API Developer Reference

August 2012

135

6

ExpressCheckout API Operations
DoExpressCheckoutPayment API Operation

Field

Description

Amount

ebl:BasicAmountType
Cost of item. This field is required when you pass a value for ItemCategory.
NOT E :

You must set the currencyID attribute to one of the 3-character currency
codes for any of the supported PayPal currencies.

Character length and limitations: Value is a positive number which cannot exceed
$10,000 USD in any currency. It includes no currency symbol. It must have 2
decimal places, the decimal separator must be a period (.), and the optional
thousands separator must be a comma (,).
This field is introduced in version 53.0.
Number

xs:string
(Optional) Item number.
Character length and limitations: 127 single-byte characters
This field is introduced in version 53.0.

Quantity

xs:integer
Item quantity. This field is required when you pass a value for ItemCategory.
For digital goods (ItemCategory=Digital), this field is required.
Character length and limitations: Any positive integer
This field is introduced in version 53.0.

Tax

ebl:BasicAmountType
(Optional) Item sales tax.
NOT E :

You must set the currencyID attribute to one of the 3-character currency
codes for any of the supported PayPal currencies.

Character length and limitations: Value is a positive number which cannot exceed
$10,000 USD in any currency. It includes no currency symbol. It must have 2
decimal places, the decimal separator must be a period (.), and the optional
thousands separator must be a comma (,).

136

ItemWeight

xs:integer
(Optional) Item weight corresponds to the weight of the item. You can pass this
data to the shipping carrier as is without having to make an additional database
query.
Character length and limitations: Any positive integer

ItemLength

xs:integer
(Optional) Item length corresponds to the length of the item. You can pass this
data to the shipping carrier as is without having to make an additional database
query.
Character length and limitations: Any positive integer

ItemWidth

xs:integer
(Optional) Item width corresponds to the width of the item. You can pass this data
to the shipping carrier as is without having to make an additional database query.
Character length and limitations: Any positive integer

August 2012

SOAP API Developer Reference

ExpressCheckout API Operations
DoExpressCheckoutPayment API Operation

Field

Description

ItemHeight

xs:integer
(Optional) Item height corresponds to the height of the item. You can pass this
data to the shipping carrier as is without having to make an additional database
query.
Character length and limitations: Any positive integer

EbayItemPayment
DetailsItem

eBl:ebayItemPaymentDetailsItemType
(Optional) Information relating to an auction sale on eBay.

ItemURL

xs:string
(Optional) URL for the item.

EnhancedItemData

ed:EnhancedItemDataType
(Optional) Enhanced data for each item in the cart. For eBay use only.

ItemCategory

ns:ItemCategoryType
Indicates whether an item is digital or physical. For digital goods, this field is
required and must be set to Digital. It is one of the following values:
 Digital
 Physical

6

This field is available since version 65.1.
EbayItemPaymentDetailsItemType Fields
Field

Description

ItemNumber

xs:string
(Optional) Auction item number.
Character length: 765 single-byte characters

AuctionTransactionId

xs:string
(Optional) Auction transaction identification number.
Character length: 255 single-byte characters

OrderID

xs:string
(Optional) Auction order identification number.
Character length: 64 single-byte characters

CartID

xs:string
(Optional) The unique identifier provided by eBay for this order from the buyer.
Character length: 255 single-byte characters

SOAP API Developer Reference

August 2012

137

6

ExpressCheckout API Operations
DoExpressCheckoutPayment API Operation

UserSelectedOptions Fields
Field

Description

InsuranceOptionSelec
ted

xs:boolean
(Optional) The option that the buyer chose for insurance. It is one of the following
values:
 Yes – The buyer opted for insurance.
 No – The buyer did not opt for insurance.

ShippingOptionIsDefa
ult

xs:boolean
(Optional) Whether the buyer chose the default shipping option. It is one of the
following values:
 true – The buyer chose the default shipping option.
 false – The buyer did not choose the default shipping option.

ShippingOptionAmount

ebl:BasicAmountType
(Optional) The shipping amount that the buyer chose.
Character length and limitations: Value is a positive number which cannot exceed
$10,000 USD in any currency. It includes no currency symbol. It must have 2
decimal places, the decimal separator must be a period (.), and the optional
thousands separator must be a comma (,).

ShippingOptionName

xs:string
(Optional) The name of the shipping option, such as air or ground.

SellerDetailsType Fields

138

Field

Description

SellerID

xs:string
(Optional) Unique non-changing identifier for the merchant at the marketplace
site. This ID is not displayed.
Character length and limitations: 13 single-byte alphanumeric characters

SellerUserName

xs:string
(Optional) Current name of the merchant or business at the marketplace site. This
name may be shown to the buyer.

SellerRegistrationDat
e

xs:dateTime
(Optional) Date when the merchant registered with the marketplace.
Character length and limitations: Date and time are in UTC/GMTformat, for
example, 2011-06-24T05:38:48Z

August 2012

SOAP API Developer Reference

ExpressCheckout API Operations
DoExpressCheckoutPayment API Operation

6

DoExpressCheckoutPayment Response Message

NOT E :

Not all fields shown are available for use. Use only the fields described in the
documentation.

SOAP API Developer Reference

August 2012

139

6

ExpressCheckout API Operations
DoExpressCheckoutPayment API Operation

NOT E :

140

Not all fields shown are available for use. Use only the fields described in the
documentation.

August 2012

SOAP API Developer Reference

ExpressCheckout API Operations
DoExpressCheckoutPayment API Operation

NOT E :

6

Not all fields shown are available for use. Use only the fields described in the
documentation.

SOAP API Developer Reference

August 2012

141

6

ExpressCheckout API Operations
DoExpressCheckoutPayment API Operation

NOT E :

Not all fields shown are available for use. Use only the fields described in the
documentation.

NOT E :

Not all fields shown are available for use. Use only the fields described in the
documentation.

DoExpressCheckoutPayment Response Fields
Field

Description

Token

xs:string
The timestamped token value that was returned by SetExpressCheckout response
and passed on GetExpressCheckoutDetails request.
Character length and limitations: 20 single-byte characters

PaymentInfo

ebl:PaymentInfoType
Information about the payment.

Note

xs:string
The text entered by the buyer on the PayPal website if you set the AllowNote field
to 1 in SetExpressCheckout.
This field is available since version 53.0.
Character length and limitations: 255 single-byte characters

RedirectRequired

xs:boolean
Flag to indicate whether you need to redirect the buyer back to PayPal after
successfully completing the transaction.
If set to true, you can redirect users to the following URL with the token value
appended:
https://www.paypal.com/cgi-bin/webscr?cmd=_complete-expresscheckout&token=(token)
N O TE :

142

Use this field only if you are using giropay or bank transfer payment methods
in Germany.

August 2012

SOAP API Developer Reference

ExpressCheckout API Operations
DoExpressCheckoutPayment API Operation

Field

Description

SuccessPageRedirect
Requested

xs:boolean
Flag to indicate whether you would like to redirect the buyer to sign up for
PayPal after completing the transaction.
If set to true, you can redirect users to the following URL with the token value
appended::
https://www.paypal.com/cgi-bin/webscr?cmd=_express-checkoutsuccess&token=(token)

BillingAgreementID

xs:string
The ID of the billing agreement associated with the Express Checkout transaction.

FMFDetails
(deprecated)

ebl:FMFDetailsType
Fraud filter details.
This field is deprecated since version 63.0. Use FMFDetails in PaymentInfoType
instead.

ShipAmount

xs:string
Amount of shipping charged on this transaction.
Character length and limitations: Must not exceed $10,000 USD in any currency. No
currency symbol. Regardless of currency, decimal separator must be a period (.), and
the optional thousands separator must be a comma (,). Equivalent to nine characters
maximum for USD.

SellerId

xs:string
Unique, non-changing identifier for the merchant at the marketplace site. (Optional)
Character length and limitations: 13 single-byte alphanumeric characters.

SellerUserName

xs:string
Current name of the merchant or business at the marketplace site. This name may be
shown to the buyer.

SellerRegistrationD
ate

xs:dateTime
Date when the merchant registered with the marketplace.
Character length and limitations: Date and time are in UTC/GMT format. For
example: 2011-06-24T05:38:?48Z.

SOAP API Developer Reference

August 2012

6

143

6

ExpressCheckout API Operations
DoExpressCheckoutPayment API Operation

Field

Description

ParentTransactionID

ns:TransactionId
Parent or related transaction identification number. This field is populated for the
following transaction types:
 Reversal
 Capture of an authorized transaction
 Reauthorization of a transaction
 Capture of an order. The value of ParentTransactionID is the original
OrderID.
 Authorization of an order. The value of ParentTransactionID is the original
OrderID.
 Capture of an order authorization
 Void of an order. The value of ParentTransactionID is the original OrderID.
Character length and limits: 19 single-byte characters maximum.

ReceiptID

ns:ReceiptID
Character length and limitations: 16 digits in xxxx-xxxx-xxxx-xxxx format.

ExpectedeCheckClear
Date

xs:dateTime
eCheck latest expected clear date.

ShippingMethod

xs:string
Shipping method selected by the user during check-out.

InstrumentCategory

xs:string
This field holds the category of the instrument only when it is promotional. Return
value 1 represents BML.

OfferCode

xs:string
Code used to identify the promotion offer.

OfferTrackingID

xs:string
Unique identification for merchant/buyer/offer combo.

PaymentInfoType Fields

When implementing parallel payments, up to 10 payment information type sets of payment
information type parameter fields can be returned, each representing one payment you are
hosting on your marketplace.

144

August 2012

SOAP API Developer Reference

ExpressCheckout API Operations
DoExpressCheckoutPayment API Operation

Field

Description

TransactionID

xs:string
Unique transaction ID of the payment.
Unique transaction ID of the payment. You can specify up to 10 payments, where n is
a digit between 0 and 9, inclusive.
Store this number for tracking the order. It represents an order placeholder in the
PayPal system for a subsequent authorization by UATP.
NOTE:

6

If the PaymentAction of the request was Authorization or Order, this
value is your AuthorizationID for use with the Authorization & Capture
APIs.

Character length and limitations: 19 single-byte characters
TransactionType

ns:PaymentTransactionCodeType
Type of transaction. It is one of the following values:
Type of transaction. You can specify up to 10 payments, where n is a digit between 0
and 9, inclusive. It is one of the following values:
 cart
 express-checkout
Character length and limitations: 15 single-byte characters

PaymentType

ebl:PaymentCodeType
Indicates whether the payment is instant or delayed. It is one of the following values:
You can specify up to 10 payments, where n is a digit between 0 and 9, inclusive. It is
one of the following values:
 none
 echeck
 instant
Character length and limitations: 7 single-byte characters

PaymentDate

xs:dateTime
Time/date stamp of payment.
Character length and limitations: Date and time are in UTC/GMTformat, for
example, 2011-06-24T05:38:48Z

GrossAmount

ebl:BasicAmountType
The final amount charged, including any shipping and taxes from your Merchant
Profile.
The final amount charged, including any shipping and taxes from your Merchant
Profile. You can specify up to 10 payments, where n is a digit between 0 and 9,
inclusive.
Character length and limitations: Value is a positive number which cannot exceed
$10,000 USD in any currency. It includes no currency symbol. It must have 2 decimal
places, the decimal separator must be a period (.), and the optional thousands
separator must be a comma (,).

SOAP API Developer Reference

August 2012

145

6

146

ExpressCheckout API Operations
DoExpressCheckoutPayment API Operation

Field

Description

FeeAmount

ebl:BasicAmountType
PayPal fee amount charged for the transaction.
PayPal fee amount charged for the transaction. You can specify up to 10 payments,
where n is a digit between 0 and 9, inclusive.
Character length and limitations: Value is a positive number which cannot exceed
$10,000 USD in any currency. It includes no currency symbol. It must have 2 decimal
places, the decimal separator must be a period (.), and the optional thousands
separator must be a comma (,).

SettleAmount

ebl:BasicAmountType
Amount deposited in your PayPal account after a currency conversion.
Amount deposited in your PayPal account after a currency conversion. You can
specify up to 10 payments, where n is a digit between 0 and 9, inclusive.
Character length and limitations: Value is a positive number which cannot exceed
$10,000 USD in any currency. It includes no currency symbol. It must have 2 decimal
places, the decimal separator must be a period (.), and the optional thousands
separator must be a comma (,).

TaxAmount

ebl:BasicAmountType
Tax charged on the transaction.
You can specify up to 10 payments, where n is a digit between 0 and 9, inclusive.
Character length and limitations: Value is a positive number which cannot exceed
$10,000 USD in any currency. It includes no currency symbol. It must have 2 decimal
places, the decimal separator must be a period (.), and the optional thousands
separator must be a comma (,).

ExchangeRate

xs:string
Exchange rate if a currency conversion occurred. Relevant only if your are billing in
their non-primary currency. If the buyer chooses to pay with a currency other than the
non-primary currency, the conversion occurs in the buyer’s account.
Exchange rate if a currency conversion occurred. Relevant only if your are billing in
their non-primary currency. If the buyer chooses to pay with a currency other than the
non-primary currency, the conversion occurs in the buyer’s account. You can specify
up to 10 payments, where n is a digit between 0 and 9, inclusive.
Character length and limitations: Decimal value that does not exceed 17 characters,
including decimal point

August 2012

SOAP API Developer Reference

ExpressCheckout API Operations
DoExpressCheckoutPayment API Operation

Field

Description

PaymentStatus

ebl:PaymentStatusCodeType
The status of the payment. It is one of the following values:
The status of the payment. You can specify up to 10 payments, where n is a digit
between 0 and 9, inclusive. It is one of the following values:
 None – No status.
 Canceled-Reversal – A reversal has been canceled; for example, when you
win a dispute and the funds for the reversal have been returned to you.
 Completed – The payment has been completed, and the funds have been added
successfully to your account balance.
 Denied – You denied the payment. This happens only if the payment was
previously pending because of possible reasons described for the
PendingReason element.
 Expired – the authorization period for this payment has been reached.
 Failed – The payment has failed. This happens only if the payment was made
from your buyer’s bank account.
 In-Progress – The transaction has not terminated, e.g. an authorization may be
awaiting completion.
 Partially-Refunded – The payment has been partially refunded.
 Pending – The payment is pending. See the PendingReason field for more
information.
 Refunded – You refunded the payment.
 Reversed – A payment was reversed due to a chargeback or other type of
reversal. The funds have been removed from your account balance and returned to
the buyer. The reason for the reversal is specified in the ReasonCode element.
 Processed – A payment has been accepted.
 Voided – An authorization for this transaction has been voided.
 Completed-Funds-Held – The payment has been completed, and the funds
have been added successfully to your pending balance.
See the HoldDecision field for more information.

SOAP API Developer Reference

August 2012

6

147

6

ExpressCheckout API Operations
DoExpressCheckoutPayment API Operation

Field

Description

PendingReason

ebl:PendingStatusCodeType
Reason the payment is pending. It is one of the following values:
Reason the payment is pending. You can specify up to 10 payments, where n is a digit
between 0 and 9, inclusive. It is one of the following values:
 none – No pending reason.
 address – The payment is pending because your buyer did not include a
confirmed shipping address and your Payment Receiving Preferences is set such
that you want to manually accept or deny each of these payments. To change your
preference, go to the Preferences section of your Profile.
 authorization – The payment is pending because it has been authorized but
not settled. You must capture the funds first.
 echeck – The payment is pending because it was made by an eCheck that has not
yet cleared.
 intl – The payment is pending because you hold a non-U.S. account and do not
have a withdrawal mechanism. You must manually accept or deny this payment
from your Account Overview.
 multi-currency – You do not have a balance in the currency sent, and you do
not have your Payment Receiving Preferences set to automatically
convert and accept this payment. You must manually accept or deny this payment.
 order – The payment is pending because it is part of an order that has been
authorized but not settled.
 paymentreview – The payment is pending while it is being reviewed by PayPal
for risk.
 unilateral – The payment is pending because it was made to an email address
that is not yet registered or confirmed.
 verify – The payment is pending because you are not yet verified. You must
verify your account before you can accept this payment.
 other – The payment is pending for a reason other than those listed above. For
more information, contact PayPal customer service.
NOTE:

148

PendingReason is returned in the response only if PaymentStatus is
Pending.

August 2012

SOAP API Developer Reference

ExpressCheckout API Operations
DoExpressCheckoutPayment API Operation

Field

Description

ReasonCode

ebl:ReasonCodeType
Reason for a reversal if TransactionType is reversal. It is one of the following values:
Reason for a reversal if TransactionType is reversal. You can specify up to 10
payments, where n is a digit between 0 and 9, inclusive. It is one of the following
values:
 none – No reason code.
 chargeback – A reversal has occurred on this transaction due to a chargeback by
your buyer.
 guarantee – A reversal has occurred on this transaction due to your buyer
triggering a money-back guarantee.
 buyer-complaint – A reversal has occurred on this transaction due to a
complaint about the transaction from your buyer.
 refund – A reversal has occurred on this transaction because you have given the
buyer a refund.
 other – A reversal has occurred on this transaction due to a reason not listed
above.

HoldDecision

xs:string
Reason that this payment is being held. It is one of the following values:
Reason that this payment is being held. You can specify up to 10 payments, where n
is a digit between 0 and 9, inclusive. It is one of the following values:
 newsellerpaymenthold – This is a new merchant.
 paymenthold – A hold is placed on the merchant’s transaction for a reason not
listed.

6

This field is available since version 71.0 and is returned only if PaymentStatus is
Completed-Funds-Held.
This field is available since version 71.0 and is returned only if
PAYMENTINFO_n_PAYMENTSTATUS is Completed-Funds-Held.
ProtectionEligibili
ty

SOAP API Developer Reference

xs:string
Prior to version 64.4, the kind of seller protection in force for the transaction. It is one
of the following values:
Prior to version 64.4, the kind of seller protection in force for the transaction. You can
specify up to 10 payments, where n is a digit between 0 and 9, inclusive. It is one of
the following values:
 Eligible – Merchant is protected by PayPal's Seller Protection Policy for
Unauthorized Payments and Item Not Received.
 PartiallyEligible – Merchant is protected by PayPal's Seller Protection
Policy for Item Not Received.
 Ineligible – Merchant is not protected under the Seller Protection Policy.

August 2012

149

6

ExpressCheckout API Operations
DoExpressCheckoutPayment API Operation

Field

Description

ProtectionEligibili
tyType

xs:string
Since version 64.4, the kind of seller protection in force for the transaction. It is one
of the following values:
Since version 64.4, the kind of seller protection in force for the transaction. You can
specify up to 10 payments, where n is a digit between 0 and 9, inclusive. It is one of
the following values:
 Eligible – Merchant is protected by PayPal's Seller Protection Policy for both
Unauthorized Payment and Item Not Received
 ItemNotReceivedEligible – Merchant is protected by PayPal's Seller
Protection Policy for Item Not Received
 UnauthorizedPaymentEligible – Merchant is protected by PayPal's Seller
Protection Policy for Unauthorized Payment
 Ineligible – Merchant is not protected under the Seller Protection Policy
This field is available since version 64.4.

150

StoreId

xs:string
StoreId as entered in the transaction

TerminalId

xs:string
TerminalId as entered in the transaction

EbayTransactionId

xs:string
eBay transaction identification number.
eBay transaction identification number. You can specify up to 10 payments, where n
is a digit between 0 and 9, inclusive.
Character length and limitations: 255 single-byte characters

PaymentRequestID

xs:string
Unique identifier of the specific payment request. The value should match the one
you passed in the DoExpressCheckout request.
Unique identifier of the specific payment request. The value should match the one
you passed in the DoExpressCheckout request. You can specify up to 10 payments,
where n is a digit between 0 and 9, inclusive.
Character length and limitations: Up to 127 single-byte characters

EnhancedPaymentInfo

xs:EnhancedPaymentInfoType
Enhanced payment information.

SellerDetails

xs:SellerDetailsType
Details about this merchant.

FMFDetails

xs:FMFDetailsType
List of fraud management filters.

PaymentError

ns:ErrorType
Indicates the payment status for an individual payment request in the case of parallel
payments.

August 2012

SOAP API Developer Reference

ExpressCheckout API Operations
DoExpressCheckoutPayment API Operation

Field

Description

InstrumentDetails

ns:InstrumentDetailsType
Promotional instrument information.
This field is introduced in API version 71.0.

OfferDetails

ns:OfferDetailsType
Specific information for an offer.
This field is introduced in API version 71.0.

6

UserSelectedOptions Fields
Field

Description

ShippingCalculationM
ode

xs:string
Describes how the options that were presented to the buyer were determined. It is
one of the following values:
 API - Callback
 API - Flatrate

InsuranceOptionSelec
ted

xs:boolean
The option that the buyer chose for insurance. It is one of the following values:
 Yes – The buyer opted for insurance.
 No – The buyer did not opt for insurance.

ShippingOptionIsDefa
ult

xs:boolean
Indicates whether the buyer chose the default shipping option. It is one of the
following values:
 true – The buyer chose the default shipping option.
 false – The buyer did not choose the default shipping option.
Character length and limitations: true or false

ShippingOptionAmount

ebl:BasicAmountType
The shipping amount that the buyer chose.
Character length and limitations: Value is a positive number which cannot exceed
$10,000 USD in any currency. It includes no currency symbol. It must have 2
decimal places, the decimal separator must be a period (.), and the optional
thousands separator must be a comma (,).

ShippingOptionName

xs:string
The name of the shipping option, such as air or ground.

PaymentErrorType Fields
Field

Description

ShortMessage

xs:string
Payment error short message.

SOAP API Developer Reference

August 2012

151

6

ExpressCheckout API Operations
DoExpressCheckoutPayment API Operation

Field

Description

LongMessage

xs:string
Payment error long message.

ErrorCode

xs:string
Payment error code.

SeverityCode

xs:string
Payment error severity code.

ErrorParameters

xs:string
Application-specific error values indicating more about the error condition.

SellerDetailsType Fields
Field

Description

PayPalAccountID

xs:string
Unique identifier for the merchant. For parallel payments, this field contains
either the Payer Id or the email address of the merchant.
Character length and limitations: 127 single-byte alphanumeric characters

SecureMerchantAccountID

xs:useridtype
Unique PayPal customer account number (of the merchant). This field is
returned in the response. It is ignored if passed in the request.

FMFDetailsType Fields

152

Field

Description

AcceptFilters

xs:RiskFilterListType
List of filters that recommend acceptance of the payment.

DenyFilters

xs:RiskFilterListType
List of filters that recommend denial of the payment.

PendingFilters

xs:RiskFilterListType
List of filters that caused the payment to become pending.

ReportsFilters

xs:RiskFilterListType
List of filters that caused the payment to become flagged.

August 2012

SOAP API Developer Reference

ExpressCheckout API Operations
DoExpressCheckoutPayment API Operation

6

RiskFilterListType Fields
Field

Description

ID

xs:int
Filter ID. It is one of the following values:
 1 - AVS No Match
 2 - AVS Partial Match
 3 - AVS Unavailable/Unsupported
 4 - Card Security Code (CSC) Mismatch
 5 - Maximum Transaction Amount
 6 - Unconfirmed Address
 7 - Country Monitor
 8 - Large Order Number
 9 - Billing/Shipping Address Mismatch
 10 - Risky ZIP Code
 11 - Suspected Freight Forwarder Check
 12 - Total Purchase Price Minimum
 13 - IP Address Velocity
 14 - Risky Email Address Domain Check
 15 - Risky Bank Identification Number (BIN) Check
 16 - Risky IP Address Range
 17 - PayPal Fraud Model

Name

xs:string
Filter name.

Description

xs:string
Filter description.

SOAP API Developer Reference

August 2012

153

6

154

ExpressCheckout API Operations
DoExpressCheckoutPayment API Operation

August 2012

SOAP API Developer Reference

7

GetBalance API Operation

The GetBalance API Operation obtains the available balance for a PayPal account.

GetBalance Request Message

NOT E :

Not all fields shown are available for use. Use only the fields described in the
documentation.

GetBalance Request Fields
Field

Description

ReturnAllCurrencies

xs:string
(Optional) Indicates whether to return all currencies. It is one of the following values:
 0 – Return only the balance for the primary currency holding.
 1 – Return the balance for each currency holding.
NOTE:

SOAP API Developer Reference

This field is availalble since version 51. Prior versions return only the
balance for the primary currency holding.

August 2012

155

7

GetBalance API Operation
GetBalance Response Message

GetBalance Response Message

NOT E :

Not all fields shown are available for use. Use only the fields described in the
documentation.

GetBalance Response Fields

156

Field

Description

Balance

ebl:BasicAmountType
Available balance and associated currency code for the primary currency holding.

BalanceTimeStamp

xs:dateTime
Time that the balance was reported.

BalanceHoldings

ebl:BasicAmountType
Available balance and associated currency code for each currency held, including the
primary currency. The first currency is the primary currency.

August 2012

SOAP API Developer Reference

8

GetPalDetails API Operation

The GetPalDetails API operation obtains your Pal ID, which is the PayPal-assigned
merchant account number, and other information about your account. You need the account
number when working with dynamic versions of PayPal buttons and logos.

GetPalDetails Request Message

NOT E :

Not all fields shown are available for use. Use only the fields described in the
documentation.

SOAP API Developer Reference

August 2012

157

8

GetPalDetails API Operation
GetPalDetails Response Message

G e t P a l D e ta i l s R e s p o n s e M e s s a g e

NOT E :

Not all fields shown are available for use. Use only the fields described in the
documentation.

GetPalDetails Response Fields

158

Field

Description

Pal

xs:string
PayPal-assigned merchant account number.

August 2012

SOAP API Developer Reference

GetPalDetails API Operation
GetPalDetails Response Message

Field

Description

Locale

xs:string
Country code representing the merchant’s default locale. It is one of the following
locales:
 AU – Australia
 AT – Austria
 BE – Belgium
 BR – Brazil
 CA – Canada
 CH – Switzerland
 CN – China
 DE – Germany
 ES – Spain
 GB – United Kingdom
 FR – France
 IT – Italy
 NL – Netherlands
 PL – Poland
 PT – Portugal
 RU – Russia
 US – United States
 The following 5-character codes are also supported for languages in specific
countries:
da_DK – Danish (for Denmark only)
he_IL – Hebrew (all)
id_ID – Indonesian (for Indonesia only)
jp_JP – Japanese (for Japan only)
no_NO – Norwegian (for Norway only)
pt_BR – Brazilian Portuguese (for Portugal and Brazil only)
ru_RU – Russian (for Lithuania, Latvia, and Ukraine only)
sv_SE – Swedish (for Sweden only)
th_TH – Thai (for Thailand only)
tr_TR – Turkish (for Turkey only)
zh_CN – Simplified Chinese (for China only)
zh_HK – Traditional Chinese (for Hong Kong only)
zh_TW – Traditional Chinese (for Taiwan only)

8

Character length and limitations: 2 single-byte characters

SOAP API Developer Reference

August 2012

159

8

160

GetPalDetails API Operation
GetPalDetails Response Message

August 2012

SOAP API Developer Reference

9

GetTransactionDetails API
Operation
The GetTransactionDetails API operation obtains information about a specific
transaction.

GetTransactionDetails Request Message

NOT E :

Not all fields shown are available for use. Use only the fields described in the
documentation.

GetTransactionDetails Request Fields
Field

Description

TransactionID

xs:string
(Required) Unique identifier of a transaction.
NOTE:

The details for some kinds of transactions cannot be retrieved with
GetTransactionDetails. You cannot obtain details of bank transfer
withdrawals, for example.

Character length and limitations: 17 single-byte alphanumeric characters

SOAP API Developer Reference

August 2012

161

9

GetTransactionDetails API Operation
GetTransactionDetails Response Message

GetTransactionDetails Response Message

162

NOT E :

All fields defined in the formal structure of GetTransactionDetailsResponse
are not necessarily returned. Data are returned in a response only if PayPal has
recorded data that corresponds to the field.

NOT E :

Not all fields shown are available for use. Use only the fields described in the
documentation.

August 2012

SOAP API Developer Reference

GetTransactionDetails API Operation
GetTransactionDetails Response Message

SOAP API Developer Reference

August 2012

9

163

9

GetTransactionDetails API Operation
GetTransactionDetails Response Message

NOT E :

164

Not all fields shown are available for use. Use only the fields described in the
documentation.

August 2012

SOAP API Developer Reference

GetTransactionDetails API Operation
GetTransactionDetails Response Message

NOT E :

9

Not all fields shown are available for use. Use only the fields described in the
documentation.

SOAP API Developer Reference

August 2012

165

9

GetTransactionDetails API Operation
GetTransactionDetails Response Message

NOT E :

166

Not all fields shown are available for use. Use only the fields described in the
documentation.

August 2012

SOAP API Developer Reference

GetTransactionDetails API Operation
GetTransactionDetails Response Message

NOT E :

9

Not all fields shown are available for use. Use only the fields described in the
documentation.

SOAP API Developer Reference

August 2012

167

9

GetTransactionDetails API Operation
GetTransactionDetails Response Message

NOT E :

Not all fields shown are available for use. Use only the fields described in the
documentation.

NOT E :

Not all fields shown are available for use. Use only the fields described in the
documentation.

GetTransactionDetails Response Fields

168

Field

Description

PaymentTransaction
Details

Wrapper structure.

ShippingCalculation
Mode

xs:string
Describes how the options that were presented to the buyer were determined.
It is one of the following values:
 Callback – Shipping option rates are based on the buyer’s location.
 FlatRate – Shipping options are flat rates.

August 2012

SOAP API Developer Reference

GetTransactionDetails API Operation
GetTransactionDetails Response Message

Field

Description

InsuranceOptionSele
cted

xs:boolean
Whether the buyer selected the insurance option. It is one of the following values:
 true – The buyer selected Yes for the insurance option.
 false – The buyer did not select the insurance option. The option is No.

9

The value true is returned if the buyer selected the option. Otherwise false is
returned.
ShippingOptionIsDef
ault

xs:boolean
Default shipping option displayed on the PayPal pages. This field is required if you
specify the Callback URL. It is one of the following values:
 true – This is the default flat-rate shipping option. PayPal displays this option by
default.
 false – This flat-rate shipping option is not displayed as the default.
N O TE :

There must be ONE and ONLY ONE default. It is not OK to have no default.

ShippingOptionName

xs:string
Internal name of the shipping option such as Air, Ground, Expedited, and so forth.
This field is required if you specify the Callback URL.
Character length and limitations: 50 character-string.

ShippingOptionAmoun
t

ebl:BasicAmountType
Amount of the flat rate shipping option. This field is required if you specify the
Callback URL.
Character length and limitations: Value is a positive number which cannot exceed
$10,000 USD in any currency. It includes no currency symbol. It must have 2 decimal
places, the decimal separator must be a period (.), and the optional thousands
separator must be a comma (,).

GiftMessage

xs:string
The gift message the buyer entered on the PayPal pages.
Limitations: 100 single-byte characters

GiftReceiptEnable

xs:string
Indicates whether a gift receipt widget is enabled on the PayPal pages. It is one of the
following values:
 0 – Do not enable gift receipt widget.
 1 – Enable gift receipt widget.

GiftWrapName

xs:string
Label for the gift wrap option such as “Blue box with ribbon”.
Limitations: 25 single-byte characters

SOAP API Developer Reference

August 2012

169

9

GetTransactionDetails API Operation
GetTransactionDetails Response Message

Field

Description

GiftWrapAmount

ebl:BasicAmounttype
Amount to be charged to the buyer for the gift wrap.
Character length and limitations: Value is a positive number which cannot exceed
$10,000 USD in any currency. It includes no currency symbol. It must have 2 decimal
places, the decimal separator must be a period (.), and the optional thousands
separator must be a comma (,).
N O TE :

You must set the currencyID attribute to one of the three-character
currency codes for any of the supported PayPal currencies.

BuyerMarketingEmail

ebl:EmailAddressType
The email address the buyer entered on the PayPal pages to be notified of promotions
or special events.
Limitations: 127 single-byte characters

SurveyQuestion

xs:string
Text for the survey question on the PayPal pages. If the survey question is present, at
least 2 survey answer options need to be present.
Limitations: 50 single-byte characters

SurveyChoiceSelecte
d

xs:string
Survey response the buyer selected on the PayPal pages.
Limitations: 15 single-byte characters

PaymentTransactionDetailsType Fields

170

Field

Description

ReceiverInfo

ebl:ReceiverInfoType
Information about the merchant, such as details of a single transaction, primary email
address, and unique account ID.

PayerInfo

ebl:PayerInfoType
Information about the buyer, such as the buyer’s email address, customer account
identification number, shipping address, and country of residence.

PaymentInfo

ebl:PaymentInfoType
Information about the transaction, such as the transaction ID, the type of transaction,
and whether the payment is instant or delayed.

PaymentItemInfo

ebl:PaymentItemInfoType
Information about the payment item, such as the sales tax, the invoice number, and
whether the buyer left a note to the merchant.

August 2012

SOAP API Developer Reference

GetTransactionDetails API Operation
GetTransactionDetails Response Message

9

ReceiverInfoType Fields
Field

Description

Business

xs:string
Details about a single transaction. This field is not application for point-of-sale
transactions.

Receiver

xs:string
Primary email address of the payment recipient (the merchant).
If you are the recipient of the payment and the payment is sent to your non-primary
email address, the value of Receiver is still your primary email address.
Character length and limitations: 127 single-byte alphanumeric characters

ReceiverID

xs:string
Unique account ID of the payment recipient (the merchant). This value is the same as
the value of the recipient's referral ID.

PayerInfoType Fields
Field

Description

Payer

ebl:EmailAddressType
Email address of buyer.
Character length and limitations: 127 single-byte characters

PayerID

ebl:UserIDType
Unique PayPal Customer Account identification number.
Character length and limitations:13 single-byte alphanumeric characters

PayerStatus

ebl:PayPalUserStatusCodeType
Status of buyer. It is one of the following values:
 verified
 unverified
Character length and limitations: 10 single-byte alphabetic characters

PayerName

ebl:PersonNameType
First and last name of buyer.

PayerCountry

ebl:CountryCodeType
Buyer’s country of residence in the form of ISO standard 3166 2-character country
codes.
Character length and limitations: 2 single-byte characters

PayerBusiness

xs:string
Buyer’s business name.
Character length and limitations: 127 single-byte characters

SOAP API Developer Reference

August 2012

171

9

GetTransactionDetails API Operation
GetTransactionDetails Response Message

Field

Description

Address

ns:AddressType
Buyer’s shipping address information.

PayerName Fields
Field

Description

Salutation

xs:string
Buyer’s salutation.
Character length and limitations: 20 single-byte characters

FirstName

ebl:PersonNameType
Buyer’s first name.
Character length and limitations: 25 single-byte characters

MiddleName

ebl:NameUser
Buyer’s middle name.
Character length and limitations: 25 single-byte characters

LastName

ebl:NameType
Buyer’s last name.
Character length and limitations: 25 single-byte characters

Suffix

ebl:SuffixType
Buyer’s suffix.
Character length and limitations: 12 single-byte characters

AddressType Fields

172

Field

Description

AddressOwner

ebl:AddressOwnerTypeCode
eBay company that maintains this address. It is one of the following values:
 eBay
 PayPal

AddressStatus

ebl:AddressStatusTypeCode
Status of street address on file with PayPal. It is one of the following values:
 none
 Confirmed
 Unconfirmed

Name

xs:string
Person’s name associated with this address.
Character length and limitations: 32 single-byte characters

August 2012

SOAP API Developer Reference

GetTransactionDetails API Operation
GetTransactionDetails Response Message

Field

Description

Street1

xs:string
First street address.
Character length and limitations: 100 single-byte characters

Street2

xs:string
Second street address.
Character length and limitations: 100 single-byte characters

CityName

xs:string
Name of city.
Character length and limitations: 40 single-byte characters

StateOrProvince

xs:string
State or province. Required for U.S. addresses only.
Character length and limitations: 40 single-byte characters

PostalCode

xs:string
U.S. ZIP code or other country-specific postal code.
Character length and limitations: 20 single-byte characters

Country

ns:CountryCode
Country code.
Character length and limitations: 2 single-byte characters

CountryName

xs:string
Expanded name of country.
Character length and limitations: 64 single-byte alphanumeric characters

Phone

xs:string
Phone number.
Character length and limitations: 20 single-byte characters

9

PaymentInfoType Fields
Field

Description

TransactionID

xs:string
Unique transaction ID of the payment.
Character length and limitations: 17 single-byte characters

SOAP API Developer Reference

August 2012

173

9

GetTransactionDetails API Operation
GetTransactionDetails Response Message

Field

Description

ParentTransactionID

xs:string
Parent or related transaction identification number. This value in this field is for the
following transaction types:
 Reversal – Capture of an authorized transaction.
 Reversal – Reauthorization of a transaction.
 Capture of an order – The value of ParentTransactionID is the original
OrderID.
 Authorization of an order – The value of ParentTransactionID is the original
OrderID.
 Capture of an order authorization.
 Void of an order – The value of ParentTransactionID is the original
OrderID.
Character length and limitations: 16 digits

ReceiptID

xs:string
Receipt identification number
Character length and limitations: 16 digits in xxxx-xxxx-xxxx-xxxx format

TransactionType

ns:PaymentTransactionCodeType
The type of transaction. It is one of the following values:
 cart
 express-checkout
Character length and limitations:15 single-byte characters

PaymentType

ebl:PaymentCodeType
Indicates whether the payment is instant or delayed. It is one of the following values:
 none
 echeck
 instant
Character length and limitations: 7 single-byte characters

174

PaymentDate

xs:dateTime
Time/date stamp of payment,
Character length and limitations: Date and time are in UTC/GMTformat, for
example, 2011-06-24T05:38:48Z

GrossAmount

ebl:BasicAmountType
The final amount charged, including any shipping and taxes from your Merchant
Profile.
Character length and limitations: Value is a positive number which cannot exceed
$10,000 USD in any currency. It includes no currency symbol. It must have 2 decimal
places, the decimal separator must be a period (.), and the optional thousands
separator must be a comma (,).

August 2012

SOAP API Developer Reference

GetTransactionDetails API Operation
GetTransactionDetails Response Message

Field

Description

FeeAmount

ebl:BasicAmountType
PayPal fee amount charged for the transaction.
Character length and limitations: Value is a positive number which cannot exceed
$10,000 USD in any currency. It includes no currency symbol. It must have 2 decimal
places, the decimal separator must be a period (.), and the optional thousands
separator must be a comma (,).

SettleAmount

ebl:BasicAmountType
Amount deposited in your PayPal account after a currency conversion.
Character length and limitations: Value is a positive number which cannot exceed
$10,000 USD in any currency. It includes no currency symbol. It must have 2 decimal
places, the decimal separator must be a period (.), and the optional thousands
separator must be a comma (,).

TaxAmount

ebl:BasicAmountType
Tax charged on the transaction.
Character length and limitations: Value is a positive number which cannot exceed
$10,000 USD in any currency. It includes no currency symbol. It must have 2 decimal
places, the decimal separator must be a period (.), and the optional thousands
separator must be a comma (,).

ExchangeRate

xs:string
Exchange rate if a currency conversion occurred. Relevant only if your are billing in
their non-primary currency. If the buyer chooses to pay with a currency other than the
non-primary currency, the conversion occurs in the buyer’s account.
Character length and limitations: Decimal value that does not exceed 17 characters,
including decimal point

SOAP API Developer Reference

August 2012

9

175

9

176

GetTransactionDetails API Operation
GetTransactionDetails Response Message

Field

Description

PaymentStatus

ebl:PaymentStatusCodeType
Status of the payment. It is one of the following values:
 None – No status
 Canceled-Reversal– A reversal has been canceled, for example, when you
win a dispute and the funds for the reversal have been returned to you.
 Completed – The payment has been completed, and the funds have been added
successfully to your account balance.
 Denied – You denied the payment. This happens only if the payment was
previously pending because of possible reasons described for the
PendingReason element.
 Expired – The authorization period for this payment has been reached.
 Failed – The payment has failed. This happens only if the payment was made
from your buyer’s bank account.
 In-Progress – The transaction has not terminated, for example, an
authorization may be awaiting completion.
 Partially-Refunded – The payment has been partially refunded.
 Pending – The payment is pending. See the PendingReason field for more
information.
 Refunded – You refunded the payment.
 Reversed – A payment was reversed due to a chargeback or other type of
reversal. The funds have been removed from your account balance and returned to
the buyer. The reason for the reversal is specified in the ReasonCode element.
 Processed – A payment has been accepted.
 Voided – An authorization for this transaction has been voided.

August 2012

SOAP API Developer Reference

GetTransactionDetails API Operation
GetTransactionDetails Response Message

Field

Description

PendingReason

ebl:PendingStatusCodeType
The reason the payment is pending. It is one of the following values:
 none – No pending reason.
 address – The payment is pending because your buyer did not include a
confirmed shipping address and your Payment Receiving Preferences is set such
that you want to manually accept or deny each of these payments. To change your
preference, go to the Preferences section of your Profile.
 authorization – The payment is pending because it has been authorized but
not settled. You must capture the funds first.
 echeck – The payment is pending because it was made by an eCheck that has not
yet cleared.
 intl – The payment is pending because you hold a non-U.S. account and do not
have a withdrawal mechanism. You must manually accept or deny this payment
from your Account Overview.
 multi-currency – You do not have a balance in the currency sent, and you do
not have your Payment Receiving Preferences set to automatically
convert and accept this payment. You must manually accept or deny this payment.
 order – The payment is pending because it is part of an order that has been
authorized but not settled.
 paymentreview – The payment is pending while it is being reviewed by PayPal
for risk.
 unilateral – The payment is pending because it was made to an email address
that is not yet registered or confirmed.
 verify –The payment is pending because you are not yet verified. You must
verify your account before you can accept this payment.
 other – The payment is pending for a reason other than those listed above. For
more information, contact PayPal Customer Service.
NOTE:

ReasonCode

SOAP API Developer Reference

9

PendingReason is returned in the response only if PaymentStatus is
Pending.

ebl:ReasonCodeType
The reason for a reversal if the transaction type is reversal. It is one of the following
values:
 none – No reason code.
 chargeback – A reversal has occurred on this transaction due to a chargeback by
your buyer.
 guarantee – A reversal has occurred on this transaction due to your buyer
triggering a money-back guarantee.
 buyer-complaint – A reversal has occurred on this transaction due to a
complaint about the transaction from your buyer.
 refund – A reversal has occurred on this transaction because you have given the
buyer a refund.
 other – A reversal has occurred on this transaction due to a reason not listed
above.

August 2012

177

9

GetTransactionDetails API Operation
GetTransactionDetails Response Message

Field

Description

ProtectionEligibili
ty

xs:string
Prior to version 64.4, the kind of seller protection in force for the transaction. It is one
of the following values:
 Eligible – Merchant is protected by PayPal's Seller Protection Policy for
Unauthorized Payments and Item Not Received.
 PartiallyEligible – Merchant is protected by PayPal's Seller Protection
Policy for Item Not Received.
 Ineligible – Merchant is not protected under the Seller Protection Policy.

ProtectionEligibili
tyType

xs:string
Since version 64.4, the kind of seller protection in force for the transaction. It is one
of the following values:
 Eligible – Merchant is protected by PayPal's Seller Protection Policy for both
Unauthorized Payment and Item Not Received.
 ItemNotReceivedEligible – Merchant is protected by PayPal's Seller
Protection Policy for Item Not Received.
 UnauthorizedPaymentEligible – Merchant is protected by PayPal's Seller
Protection Policy for Unauthorized Payment.
 Ineligible – Merchant is not protected under the Seller Protection Policy.
This field is introduced in API version 64.4.

StoreId

xs:string
StoreId as entered in the transaction.

TerminalId

xs:string
TerminalId as entered in the transaction.

PaymentItemInfoType Fields

178

Field

Description

InvoiceID

xs:string
Invoice number you set in the original transaction.
Character length and limitations: 256 single-byte alphanumeric characters

Custom

xs:string
Custom field you set in the original transaction.
Character length and limitations: 127 single-byte alphanumeric characters

Memo

xs:string
Memo entered by your customer in PayPal Website Payments note field.
Character length and limitations: 255 single-byte alphanumeric characters

SalesTax

xs:string
Amount of tax charged on payment.

August 2012

SOAP API Developer Reference

GetTransactionDetails API Operation
GetTransactionDetails Response Message

Field

Description

PaymentItem

ebl:PaymentItemType
Amount of tax charged on payment.

Subscription

ebl:SubscriptionInfoType
Subscription information.

Auction

ebl:AuctionInfoType
Subscription information.

9

PaymentItemType Fields
Field

Description

EbayItemTxnId

xs:string
(Optional) The eBay auction transaction ID of the item that you use to identify items
that the buyer purchased.
Character length and limitations: 255 single-byte characters

Name

xs:string
Item name set by you or entered by the customer.
NOTE:

Character length and limitations: 127 single-byte alphanumeric characters.

Number

xs:string
Item number set by you. If this was a shopping cart transaction, PayPal appends the
number of the item to the HTML item_number variable, for example,
item_number1, item_number2, and so forth.
Character length and limitations: 127 single-byte alphanumeric characters

Quantity

xs:string
Quantity set by you or entered by the buyer.
Character length and limitations: no limit

CouponID

xs:string
(Optional) Coupon identification number.

CouponAmount

xs:string
(Optional) Amount (value) of the coupon.

CouponAmountCurrenc
y

xs:string
(Optional) Currency of the coupon amount, e.g., a 3-character currency code.

LoyaltyCardDiscount
Amount

xs:string
(Optional) Amount of discount associated with this Loyalty Card incentive.
NOTE:

SOAP API Developer Reference

Use character string as shown.

August 2012

179

9

GetTransactionDetails API Operation
GetTransactionDetails Response Message

Field

Description

LoyaltyCardDiscount
Currency

xs:string
(Optional) Currency of the loyalty card discount, for example, a 3-character currency
code.
NOTE:

Use character string as shown.

Amount

ebl:BasicAmountType
Cost of item.

Options

ns:OptionType
name: xs:string
value: xs:string
PayPal item options for shopping cart.

AuctionInfoType Fields
Field

Description

BuyerID

xs:string
Buyer’s auction ID.

ClosingDate

xs:string
Auction’s close date.

MultiItem

xs:string
Counter used for multi-item auction payments.

SubscriptionInfoType Fields

180

Field

Description

SubscriptionID

xs:string
ID generated by PayPal for the subscriber.
Character length and limitations: No limit

SubscriptionDate

xs:dateTime
Subscription start date.

EffectiveDate

xs:dateTime
Date when the subscription modification is effective.

RetryTime

xs:dateTime
Date PayPal retrys a failed subscription payment.

August 2012

SOAP API Developer Reference

GetTransactionDetails API Operation
GetTransactionDetails Response Message

Field

Description

UserName

xs:string
Username that PayPal generates and gives to the subscriber to access the subscription.
Character length and limitations: 64 alphanumeric single-byte characters

Password

xs:string
Password that PayPal generates and gives to the subscriber to access the subscription.
For security, the value of the password is hashed.
Character length and limitations: 128 alphanumeric single-byte characters

Recurrences

xs:string
The number of payment installments that occur at the regular rate.
Character length and limitations: No limit

reattempt

xs:string
Indicates whether reattempts should occur upon payment failures.

recurring

xs:string
Indicates whether regular rate recurs. It is one of the following values:
 1 – Yes

SubscriptionTermsTy
pe

ns:SubscriptionTermsType
Subscription terms.

9

SubscriptionTermsType Fields
Field

Description

Amount

eb:BasicAmountType
Amount subscriber is to be charged in 1 payment.
Character length and limitations: No limit

Period

xs:string
Period of time that the subscriber is charged.
Character length and limitations: No limit

SOAP API Developer Reference

August 2012

181

9

182

GetTransactionDetails API Operation
GetTransactionDetails Response Message

August 2012

SOAP API Developer Reference

10

ManagePendingTransactionStatus
API Operation
The ManagePendingTransactionStatus API operation accepts or denys a pending transaction
held by Fraud Management Filters.

ManagePendingTransactionStatus Request Message

NOT E :

Not all fields shown are available for use. Use only the fields described in the
documentation.

ManagePendingTransactionStatus Request Fields
Field

Description

TransactionID

(Required) The transaction ID of the payment transaction.

Action

(Required) The operation you want to perform on the transaction. It is one of the
following values:
 Accept – Accepts the payment
 Deny – Rejects the payment

SOAP API Developer Reference

August 2012

183

10

ManagePendingTransactionStatus API Operation
ManagePendingTransactionStatus Response Message

ManagePendingTransactionStatus Response Message

NOT E :

Not all fields shown are available for use. Use only the fields described in the
documentation.

ManagePendingTransactionStatus Response Fields

184

Field

Description

TransactionID

The transaction ID of the transaction whose payment has been denied or accepted.

Status

Displays in the following message:
“The Status of the transaction after running your action (accept/deny) is
TransactionStatus.”
TransactionStatus is one of the following values:
 Pending
 Processing
 Completed
 Denied
 Reversed
 Display Only
 Partially Refunded
 Created Refunded

August 2012

SOAP API Developer Reference

11

MassPay API Operation

The MassPay API operation makes a payment to one or more PayPal account holders.

MassPay Request Message

NOT E :

Not all fields shown are available for use. Use only the fields described in the
documentation.

MassPay Request Fields
Field

Description

EmailSubject

xs:string
(Optional) The subject line of the email that PayPal sends when the transaction
completes. The subject line is the same for all recipients.
Character length and limitations: 255 single-byte alphanumeric characters

SOAP API Developer Reference

August 2012

185

11

MassPay API Operation
MassPay Response Message

Field

Description

MassPayItem

ebl:MassPayItemType
(Required) Details of each payment.
NOTE:

ReceiverType

A single MassPayRequest can include up to 250 MassPayItems.

ebl:ReceiverInfoCodeType
(Optional) How you identify the recipients of payments in this call to MassPay. It is
one of the following values:
 EmailAddress
 UserID
 PhoneNumber

MassPay Response Message

NOT E :

Not all fields shown are available for use. Use only the fields described in the
documentation.

MassPay Response Fields
The elements returned are the same as for AbstractResponseType.

186

August 2012

SOAP API Developer Reference

Recurring Payments and
Reference Transactions API
Operations

12

The PayPal API includes the following API operations supporting recurring payments and
reference transactions:

CreateRecurringPaymentsProfile API Operation
The CreateRecurringPaymentsProfile API operation creates a recurring payments
profile.
You must invoke the CreateRecurringPaymentsProfile API operation for each profile
you want to create. The API operation creates a profile and an associated billing agreement.
NOT E :

There is a one-to-one correspondence between billing agreements and recurring
payments profiles. To associate a recurring payments profile with its billing
agreement, you must ensure that the description in the recurring payments profile
matches the description of a billing agreement. For version 54.0 and later, use
SetExpressCheckout to initiate creation of a billing agreement.

CreateRecurringPaymentsProfile Request Message

NOT E :

Not all fields shown are available for use. Use only the fields described in the
documentation.

SOAP API Developer Reference

August 2012

187

12

Recurring Payments and Reference Transactions API Operations
CreateRecurringPaymentsProfile API Operation

NOT E :

188

Not all fields shown are available for use. Use only the fields described in the
documentation.

August 2012

SOAP API Developer Reference

Recurring Payments and Reference Transactions API Operations
CreateRecurringPaymentsProfile API Operation

NOT E :

12

Not all fields shown are available for use. Use only the fields described in the
documentation.

SOAP API Developer Reference

August 2012

189

12

Recurring Payments and Reference Transactions API Operations
CreateRecurringPaymentsProfile API Operation

NOT E :

190

Not all fields shown are available for use. Use only the fields described in the
documentation.

August 2012

SOAP API Developer Reference

Recurring Payments and Reference Transactions API Operations
CreateRecurringPaymentsProfile API Operation

NOT E :

Not all fields shown are available for use. Use only the fields described in the
documentation.

NOT E :

Not all fields shown are available for use. Use only the fields described in the
documentation.

SOAP API Developer Reference

August 2012

12

191

12

Recurring Payments and Reference Transactions API Operations
CreateRecurringPaymentsProfile API Operation

NOT E :

Not all fields shown are available for use. Use only the fields described in the
documentation.

NOT E :

Not all fields shown are available for use. Use only the fields described in the
documentation.

CreateRecurringPaymentsProfile Request Fields
Field

Description

Token

xs:string
A timestamped token, the value of which was returned in the response to the first call
to SetExpressCheckout. You can also use the token returned in the
SetCustomerBillingAgreement response. Either this token or a credit card
number is required. If you include both token and credit card number, the token is
used and credit card number is ignored Call CreateRecurringPaymentsProfile
once for each billing agreement included in SetExpressCheckout request and use
the same token for each call. Each CreateRecurringPaymentsProfile request
creates a single recurring payments profile.
NOTE:

192

Tokens expire after approximately 3 hours.

August 2012

SOAP API Developer Reference

Recurring Payments and Reference Transactions API Operations
CreateRecurringPaymentsProfile API Operation

Field

Description

CreditCard

ns:CreditCardDetailsType
Credit card information for recurring payments using direct payments. Either a token
or a credit card number is required. If you include both token and credit card number,
the token is used and credit card number is ignored.

RecurringPayments
ProfileDetails

ns:RecurringPaymentsProfileDetails
(Required) You can include up to 10 recurring payments profiles per request. The
order of the profile details must match the order of the billing agreement details
specified in the SetExpressCheckout request.

ScheduleDetails

ns:ScheduleDetailsType
(Required) Describes the recurring payments schedule, including the regular payment
period, whether there is a trial period, and the number of payments that can fail before
a profile is suspended.

12

RecurringPaymentsProfileDetailsType Fields
Field

Description

SubscriberName

xs:string
(Optional) Full name of the person receiving the product or service paid for by the
recurring payment. If not present, the name in the buyer’s PayPal account is used.
Character length and limitations: 32 single-byte characters

SubscriberShipping
Address

ns:AddressType
(Optional) The subscriber’s shipping address associated with this profile, if
applicable. If not specified, the ship-to address from buyer’s PayPal account is used.
NOTE:

BillingStartdate

Shipping Address is optional, but if you include it, certain fields are required.

xs:dateTime
(Required) The date when billing for this profile begins.
NOTE:

The profile may take up to 24 hours for activation.

Character length and limitations: Must be a valid date, in UTC/GMT format
ProfileReference

SOAP API Developer Reference

xs:string
(Optional) The merchant’s own unique reference or invoice number.
Character length and limitations: 127 single-byte alphanumeric characters

August 2012

193

12

Recurring Payments and Reference Transactions API Operations
CreateRecurringPaymentsProfile API Operation

ScheduleDetailsType Fields
Field

Description

Description

xs:string
(Required) Description of the recurring payment.
NOTE:

You must ensure that this field matches the corresponding billing agreement
description included in the SetExpressCheckout request.

Character length and limitations: 127 single-byte alphanumeric characters

194

ActivationDetails

ns:ActivationDetailsType
(Optional) Information about activating a profile, such as whether there is an initial
non-recurring payment amount immediately due upon profile creation and how to
override a pending profile PayPal suspends when the initial payment amount fails.

TrialPeriod

ns:BillingPeriodDetailsType
(Optional) Trial period for this schedule.

PaymentPeriod

ns:BillingPeriodDetailsType
(Required) Regular payment period for this schedule.

MaxFailedPayments

xs:int
(Optional) Number of scheduled payments that can fail before the profile is
automatically suspended. An IPN message is sent to the merchant when the specified
number of failed payments is reached.
Character length and limitations: Number string representing an integer

AutoBillOutstanding
Amount

ns:AutoBillType
(Optional) Indicates whether you would like PayPal to automatically bill the
outstanding balance amount in the next billing cycle. The outstanding balance is the
total amount of any previously failed scheduled payments that have yet to be
successfully paid. It is one of the following values:
 NoAutoBill – PayPal does not automatically bill the outstanding balance.
 AddToNextBilling – PayPal automatically bills the outstanding balance.

August 2012

SOAP API Developer Reference

Recurring Payments and Reference Transactions API Operations
CreateRecurringPaymentsProfile API Operation

12

BillingPeriodDetailsType Fields
Field

Description

PaymentPeriod.Billi
ngPeriod

ns:BillingPeriodType
(Required) Unit for billing during this subscription period. It is one of the following
values:
 Day
 Week
 SemiMonth
 Month
 Year
For SemiMonth, billing is done on the 1st and 15th of each month.
NOTE:

PaymentPeriod.Billi
ngFrequency

The combination of BillingPeriod and BillingFrequency cannot
exceed one year.

xs:int
(Required) Number of billing periods that make up one billing cycle.
The combination of billing frequency and billing period must be less than or equal to
one year. For example, if the billing cycle is Month, the maximum value for billing
frequency is 12. Similarly, if the billing cycle is Week, the maximum value for billing
frequency is 52.
NOTE:

If the billing period is SemiMonth., the billing frequency must be 1.

PaymentPeriod.Total
BillingCycles

xs:int
(Optional) Number of billing cycles for payment period.
 For the regular payment period, if no value is specified or the value is 0, the
regular payment period continues until the profile is canceled or deactivated.
 For the regular payment period, if the value is greater than 0, the regular payment
period will expire after the trial period is finished and continue at the billing
frequency for TotalBillingCycles cycles.

PaymentPeriod.Amoun
t

cc:BasicAmountType
(Required) Billing amount for each billing cycle during this payment period. This
amount does not include shipping and tax amounts.
NOTE:

All amounts in the CreateRecurringPaymentsProfile request must
have the same currency.

Character length and limitations: Value is a positive number which cannot exceed
$10,000 USD in any currency. It includes no currency symbol. It must have 2 decimal
places, the decimal separator must be a period (.), and the optional thousands
separator must be a comma (,).

SOAP API Developer Reference

August 2012

195

12

Recurring Payments and Reference Transactions API Operations
CreateRecurringPaymentsProfile API Operation

Field

Description

TrialPeriod.Billing
Period

ns:BillingPeriodType
Unit for billing during this subscription period; required if you specify an optional
trial period. It is one of the following values:
 Day
 Week
 SemiMonth
 Month
 Year
For SemiMonth, billing is done on the 1st and 15th of each month.
NOTE:

TrialPeriod.Billing
Frequency

The combination of BillingPeriod and BillingFrequency cannot
exceed one year.

xs:int
Number of billing periods that make up one billing cycle; required if you specify an
optional trial period.
The combination of billing frequency and billing period must be less than or equal to
one year. For example, if the billing cycle is Month, the maximum value for billing
frequency is 12. Similarly, if the billing cycle is Week, the maximum value for billing
frequency is 52.
NOTE:

If the billing period is SemiMonth., the billing frequency must be 1.

TrialPeriod.TotalBi
llingCycles

xs:int
(Optional) Number of billing cycles for trial payment period.

TrialPeriod.Amount

cc:BasicAmountType
Billing amount for each billing cycle during this payment period; required if you
specify an optional trial period. This amount does not include shipping and tax
amounts.
NOTE:

All amounts in the CreateRecurringPaymentsProfile request must
have the same currency.

Character length and limitations: Value is a positive number which cannot exceed
$10,000 USD in any currency. It includes no currency symbol. It must have 2 decimal
places, the decimal separator must be a period (.), and the optional thousands
separator must be a comma (,).
ShippingAmount

cc:BasicAmountType
(Optional) Shipping amount for each billing cycle during this payment period.
NOTE:

All amounts in the request must have the same currency.

Character length and limitations: Value is a positive number which cannot exceed
$10,000 USD in any currency. It includes no currency symbol. It must have 2 decimal
places, the decimal separator must be a period (.), and the optional thousands
separator must be a comma (,).

196

August 2012

SOAP API Developer Reference

Recurring Payments and Reference Transactions API Operations
CreateRecurringPaymentsProfile API Operation

Field

Description

TaxAmount

cc:BasicAmountType
(Optional) Taxamount for each billing cycle during this payment period.
NOTE:

12

All amounts in the request must have the same currency.

Character length and limitations: Value is a positive number which cannot exceed
$10,000 USD in any currency. It includes no currency symbol. It must have 2 decimal
places, the decimal separator must be a period (.), and the optional thousands
separator must be a comma (,).
ActivationDetailsType Fields
Field

Description

InitialAmount

cc:BasicAmountType
(Optional) Initial non-recurring payment amount due immediately upon profile
creation. Use an initial amount for enrolment or set-up fees.
NOTE:

All amounts included in the request must have the same currency.

Character length and limitations: Value is a positive number which cannot exceed
$10,000 USD in any currency. It includes no currency symbol. It must have 2 decimal
places, the decimal separator must be a period (.), and the optional thousands
separator must be a comma (,).
FailedInitialAmount
Action

SOAP API Developer Reference

ns:FailedPaymentAction
(Optional) Action you can specify when a payment fails. It is one of the following
values:
 ContinueOnFailure – By default, PayPal suspends the pending profile in the
event that the initial payment amount fails. You can override this default behavior
by setting this field to ContinueOnFailure. Then, if the initial payment amount
fails, PayPal adds the failed payment amount to the outstanding balance for this
recurring payment profile.
When you specify ContinueOnFailure, a success code is returned to you in the
CreateRecurringPaymentsProfile response and the recurring payments
profile is activated for scheduled billing immediately. You should check your IPN
messages or PayPal account for updates of the payment status.
 CancelOnFailure – If this field is not set or you set it to CancelOnFailure,
PayPal creates the recurring payment profile, but places it into a pending status
until the initial payment completes. If the initial payment clears, PayPal notifies
you by IPN that the pending profile has been activated. If the payment fails,
PayPal notifies you by IPN that the pending profile has been canceled.

August 2012

197

12

Recurring Payments and Reference Transactions API Operations
CreateRecurringPaymentsProfile API Operation

AddressType (Shipping) Fields

198

Field

Description

Name

xs:string
Person’s name associated with this shipping address. It is required if using a
shipping address.
Character length and limitations: 32 single-byte characters

Street1

xs:string
First street address. It is required if using a shipping address.
Character length and limitations: 100 single-byte characters

Street2

xs:string
(Optional) Second street address.
Character length and limitations: 100 single-byte characters

CityName

xs:string
Name of city. It is required if using a shipping address.
Character length and limitations: 40 single-byte characters

StateOrProvince

xs:string
State or province. It is required if using a shipping address.
Character length and limitations: 40 single-byte characters

PostalCode

xs:string
U.S. ZIP code or other country-specific postal code. It is required if using a
U.S. shipping address; may be required for other countries.
Character length and limitations: 20 single-byte characters

Country

ebl:CountryCodeType
Country code. It is required if using a shipping address.
Character length and limitations: 2 single-byte characters

Phone

xs:string
(Optional) Phone number.
Character length and limitations: 20 single-byte characters

August 2012

SOAP API Developer Reference

Recurring Payments and Reference Transactions API Operations
CreateRecurringPaymentsProfile API Operation

12

CreditCardDetailsType Fields
Field

Description

CreditCardType

ebl:CreditCardType
(Optional) Type of credit card. For UK, only Maestro, MasterCard, Discover,
and Visa are allowable. For Canada, only MasterCard and Visa are allowable and
Interac debit cards are not supported. It is one of the following values:
 Visa
 MasterCard
 Discover
 Amex
 Maestro: See note.
NOTE:

If the credit card type is Maestro, you must set currencyId to GBP. In
addition, you must specify either StartMonth and StartYear or
IssueNumber.

Character length and limitations: Up to 10 single-byte alphabetic characters
CreditCardNumber

xs:string
(Required) Credit card number.
Character length and limitations: Numeric characters only with no spaces or
punctutation. The string must conform with modulo and length required by each
credit card type.

ExpMonth

xs:int
(Required) Credit card expiration month.
Character length and limitations: 2 single-byte numeric characters, including leading
zero

ExpYear

xs:int
(Required) Credit card expiration year.
Character length and limitations: 4 single-byte numeric characters

CVV2

xs:string
Card Verification Value, version 2. Your Merchant Account settings determine
whether this field is required. To comply with credit card processing regulations, you
must not store this value after a transaction has been completed.
Character length and limitations: For Visa, MasterCard, and Discover, the value is
exactly 3 digits. For American Express, the value is exactly 4 digits.

CardOwner

ns:PayerInfoType
(Required) Details about the owner of the credit card.

StartMonth

xs:int
(Optional) Month that Maestro card was issued.
Character length and limitations: 2-digit, zero-filled if necessary

StartYear

xs:int
(Optional) Year that Maestro card was issued.
Character length and limitations: 4 digits

SOAP API Developer Reference

August 2012

199

12

Recurring Payments and Reference Transactions API Operations
CreateRecurringPaymentsProfile API Operation

Field

Description

IssueNumber

xs:string
(Optional) Issue number of Maestro card.
Character length and limitations: 2 numeric digits maximum

PayerInfoType Fields
Field

Description

Payer

ebl:EmailAddressType
(Required) Email address of buyer.
Character length and limitations: 127 single-byte characters

PayerID

ebl:UserIDType
(Optional) Unique PayPal Customer Account identification number.
Character length and limitations:13 single-byte alphanumeric characters

PayerStatus

ebl:PayPalUserStatusCodeType
(Optional) Status of buyer. It is one of the following values:
 verified
 unverified
Character length and limitations: 10 single-byte alphabetic characters

PayerName

ebl:PersonNameType
(Optional) First and last name of buyer.

PayerCountry

ebl:CountryCodeType
(Optional) Buyer’s country of residence in the form of ISO standard 3166 twocharacter country codes.
Character length and limitations: 2 single-byte characters

PayerBusiness

xs:string
(Optional) Buyer’s business name.
Character length and limitations: 127 single-byte characters

Address

xs:string
(Optional) Buyer’s shipping address information.
PayerNameType Fields

200

Field

Description

Salutation

xs:string
(Optional) Buyer’s salutation.
Character length and limitations: 20 single-byte characters

August 2012

SOAP API Developer Reference

Recurring Payments and Reference Transactions API Operations
CreateRecurringPaymentsProfile API Operation

Field

Description

FirstName

ebl:PersonNameType
(Optional) Buyer’s first name.
Character length and limitations: 25 single-byte characters

MiddleName

ebl:NameUser
(Optional) Buyer’s middle name.
Character length and limitations: 25 single-byte characters

LastName

ebl:NameType
(Optional) Buyer’s last name.
Character length and limitations: 25 single-byte characters

Suffix

ebl:SuffixType
(Optional) Buyer’s suffix.
Character length and limitations: 12 single-byte characters

12

AddressType Fields
Field

Description

Street1

xs:string
(Required) First street address.
Character length and limitations: 100 single-byte characters

Street2

xs:string
(Optional) Second street address.
Character length and limitations: 100 single-byte characters

CityName

xs:string
(Required) Name of city.
Character length and limitations: 40 single-byte characters

StateOrProvince

xs:string
(Required) State or province.
Character length and limitations: 40 single-byte characters

Country

ebl:CountryCodeType
(Required) Country code.
Character length and limitationst: 2 single-byte characters

PostalCode

xs:string
(Required) U.S. ZIP code or other country-specific postal code.
Character length and limitations: 20 single-byte characters

Phone

xs:string
(Optional) Phone number.
Character length and limitations: 20 single-byte characters

SOAP API Developer Reference

August 2012

201

12

Recurring Payments and Reference Transactions API Operations
CreateRecurringPaymentsProfile API Operation

PaymentDetailsItemType Fields
Field

Description

ItemCategory

ns:ItemCategoryType
Indicates whether the item is digital or physical. For digital goods, this field is
required and must be set to Digital to get the best rates. Is one of the following
values:
 Digital
 Physical
This field is introduced in version 69.0.

Name

xs:string
Item name. This field is required when ItemCategory is passed.
Character length and limitations: 127 single-byte characters
This field is introduced in version 69.0.

Description

xs:string
(Optional) Item description.
Character length and limitations: 127 single-byte characters
This field is introduced in version 69.0.

Amount

ebl:BasicAmountType
Cost of item. This field is required when ItemCategory is passed.
NOT E :

You must set the currencyID attribute to one of the 3-character currency
codes for any of the supported PayPal currencies.

Character length and limitations: Value is a positive number which cannot exceed
$10,000 USD in any currency. It includes no currency symbol. It must have 2
decimal places, the decimal separator must be a period (.), and the optional
thousands separator must be a comma (,).
This field is introduced in version 69.0.

202

Number

xs:string
(Optional) Item number.
Character length and limitations: 127 single-byte characters
This field is introduced in version 69.0.

Quantity

xs:integer
Item quantity. This field is required when ItemCategory is passed.
Character length and limitations: Any positive integer
This field is introduced in version 69.0.

August 2012

SOAP API Developer Reference

Recurring Payments and Reference Transactions API Operations
CreateRecurringPaymentsProfile API Operation

Field

Description

Tax

ebl:BasicAmountType
(Optional) Item sales tax.
NOT E :

12

You must set the currencyID attribute to one of the 3-character currency
codes for any of the supported PayPal currencies.

Character length and limitations: Value is a positive number which cannot exceed
$10,000 USD in any currency. It includes no currency symbol. It must have 2
decimal places, the decimal separator must be a period (.), and the optional
thousands separator must be a comma (,).
This field is introduced in version 69.0.

CreateRecurringPaymentsProfile Response Message

NOT E :

Not all fields shown are available for use. Use only the fields described in the
documentation.

CreateRecurringPaymentsProfile Response Fields
Field

Description

ProfileID

xs:string
A unique identifier for future reference to the details of this recurring payment.
Character length and limitations: Up to 14 single-byte alphanumeric characters.

ProfileStatus

ns:RecurringPaymentsProfileStatusType
Status of the recurring payment profile.
 ActiveProfile – The recurring payment profile has been successfully created
and activated for scheduled payments according the billing instructions from the
recurring payments profile.
 PendingProfile – The system is in the process of creating the recurring
payment profile. Please check your IPN messages for an update.

SOAP API Developer Reference

August 2012

203

12

Recurring Payments and Reference Transactions API Operations
GetRecurringPaymentsProfileDetails API Operation

GetRecurringPaymentsProfileDetails API Operation
The GetRecurringPaymentsProfileDetails API operation obtains information about a
recurring payments profile.

GetRecurringPaymentsProfileDetails Request Message

NOT E :

Not all fields shown are available for use. Use only the fields described in the
documentation.

GetRecurringPaymentsProfileDetails Request Fields

204

Field

Description

ProfileID

xs:string
(Required) Recurring payments profile ID returned in the
CreateRecurringPaymentsProfile response. 19-character profile IDs are
supported for compatibility with previous versions of the PayPal API.
Character length and limitations: 14 single-byte alphanumeric characters

August 2012

SOAP API Developer Reference

Recurring Payments and Reference Transactions API Operations
GetRecurringPaymentsProfileDetails API Operation

12

GetRecurringPaymentsProfileDetails Response Message

NOT E :

Not all fields shown are available for use. Use only the fields described in the
documentation.

SOAP API Developer Reference

August 2012

205

12

206

Recurring Payments and Reference Transactions API Operations
GetRecurringPaymentsProfileDetails API Operation
NOT E :

Not all fields shown are available for use. Use only the fields described in the
documentation.

NOT E :

Not all fields shown are available for use. Use only the fields described in the
documentation.

August 2012

SOAP API Developer Reference

Recurring Payments and Reference Transactions API Operations
GetRecurringPaymentsProfileDetails API Operation

NOT E :

Not all fields shown are available for use. Use only the fields described in the
documentation.

NOT E :

Not all fields shown are available for use. Use only the fields described in the
documentation.

SOAP API Developer Reference

August 2012

12

207

12

Recurring Payments and Reference Transactions API Operations
GetRecurringPaymentsProfileDetails API Operation

NOT E :

208

Not all fields shown are available for use. Use only the fields described in the
documentation.

August 2012

SOAP API Developer Reference

Recurring Payments and Reference Transactions API Operations
GetRecurringPaymentsProfileDetails API Operation

NOT E :

12

Not all fields shown are available for use. Use only the fields described in the
documentation.

GetRecurringPaymentsProfileDetails Response Fields
Field

Description

ProfileID

xs:string
Recurring payments profile ID returned in the
CreateRecurringPaymentsProfile response.

ProfileStatus

ns:RecurringPaymentsProfileStatusType
Status of the recurring payment profile. It is one of the following values:
 Active
 Pending
 Cancelled
 Suspended
 Expired

Description

xs:string
Description of the recurring payment.
Character length and limitations: 127 single-byte alphanumeric characters

SOAP API Developer Reference

August 2012

209

12

Recurring Payments and Reference Transactions API Operations
GetRecurringPaymentsProfileDetails API Operation

Field

Description

AutoBillOutstanding
Amount

ns:AutoBillType
Indicates whether you would like PayPal to automatically bill the outstanding balance
amount in the next billing cycle. The outstanding balance is the total amount of any
previously failed scheduled payments that have yet to be successfully paid. It is one
of the following values:
 NoAutoBill – PayPal does not automatically bill the outstanding balance
amount.
 AddToNextBilling – PayPal automatically bills the outstanding balance amount.

MaxFailedPayments

xs:int
Number of scheduled payments that can fail before the profile is automatically
suspended.
Character length and limitations: Number string representing an integer

RecurringPayments
ProfileDetails

ns:RecurringPaymentsProfileDetailsType
Buyer information for this recurring payments profile.

CurrentRecurring
PaymentsPeriod

ns:BillingPeriodDetailsType
Details of the current subscription period. This field is not returned if the profile is
canceled or expired.

RecurringPayments
Summary

ns:RecurringPaymentsSummaryDetailsType
Payment summary for this recurring payments profile.

AggregateAmount

ns:AmountType
Total amount collected thus far for scheduled payments.
Character length and limitations: Value is a positive number which cannot exceed
$10,000 USD in any currency. It includes no currency symbol. It must have 2 decimal
places, the decimal separator must be a period (.), and the optional thousands
separator must be a comma (,).

AggregateOptionalAm
ount

ns:AmountType
Total amount collected thus far for optional payments.
Character length and limitations: Value is a positive number which cannot exceed
$10,000 USD in any currency. It includes no currency symbol. It must have 2 decimal
places, the decimal separator must be a period (.), and the optional thousands
separator must be a comma (,).

FinalPaymentDueDate

ns:DateTime
Final scheduled payment due date before the profile expires.

CreditCard

ns:CreditCardDetailsType
If this is a recurring payments profile using direct payments, this field contains the
credit card information for this profile.
N O TE :

210

Only the last 4 digits of the credit card account number are returned. The
CVV2 value is not returned.

August 2012

SOAP API Developer Reference

Recurring Payments and Reference Transactions API Operations
GetRecurringPaymentsProfileDetails API Operation

12

RecurringPaymentsProfileDetailsType Fields
Field

Description

SubscriberName

xs:string
Full name of the person receiving the product or service paid for by the recurring
payment. If not present, the name in the buyer’s PayPal account is used.
Character length and limitations: 32 single-byte characters.

SubscriberShipping
Address

ns:AddressType
The subscriber’s shipping address associated with this profile, if applicable. If you do
not specify it, the ship-to address from buyer’s PayPal account is used.
NOTE:

BillingStartdate

xs:dateTime
The date when billing for this profile begins.
Must be a valid date, in UTC/GMT format.
NOTE:

ProfileReference

Shipping Address is optional, but if you include it, you are required to pass
certain fields.

The profile may take up to 24 hours for activation.

xs:string
The merchant’s own unique reference or invoice number.
Character length and limitations: 127 single-byte alphanumeric characters.

AddressType (Shipping) Fields
Field

Description

AddressStatus

ebl:AddressStatusTypeCode
Status of street address on file with PayPal. It is one of the following values:
 none
 Confirmed
 Unconfirmed

Name

xs:string
Person’s name associated with this address.
Character length and limitations: 32 single-byte characters

Street1

xs:string
First street address.
Character length and limitations: 100 single-byte characters

Street2

xs:string
Second street address.
Character length and limitations: 100 single-byte characters

CityName

xs:string
Name of city.
Character length and limitations: 40 single-byte characters

SOAP API Developer Reference

August 2012

211

12

Recurring Payments and Reference Transactions API Operations
GetRecurringPaymentsProfileDetails API Operation

Field

Description

StateOrProvince

xs:string
State or province. Required for U.S. addresses only.
Character length and limitations: 40 single-byte characters

PostalCode

xs:string
U.S. ZIP code or other country-specific postal code.
Character length and limitations: 20 single-byte characters

Country

ebl:CountryCode
Country code.
Character length and limitations: 2 single-byte characters
BillingPeriodDetailsType Fields

Field

Description

BillingPeriod

ns:BillingPeriodType
Unit for billing during this subscription period. It is one of the following values:
 Day
 Week
 SemiMonth
 Month
 Year
For SemiMonth, billing is done on the 1st and 15th of each month.
NOTE:

BillingFrequency

xs:int
Number of billing periods that make up one billing cycle. The combination of billing
frequency and billing period must be less than or equal to one year. For example, if
the billing cycle is Month, the maximum value for billing frequency is 12. Similarly,
if the billing cycle is Week, the maximum value for billing frequency is 52.
NOTE:

TotalBillingCycles

212

The combination of BillingPeriod and BillingFrequency cannot
exceed one year.

If the billing period is SemiMonth., the billing frequency must be 1.

xs:int
Number of billing cycles for payment period (either the regular payment period or the
trial period).
 For the trial period, the value must be greater than 0.
 For the regular payment period, if no value is specified or the value is 0, the
regular payment period continues until the profile is canceled or deactivated.
 For the regular payment period, if the value is greater than 0, the regular payment
period will expire after the trial period is finished and continue at the billing
frequency for TotalBillingCycles cycles.

August 2012

SOAP API Developer Reference

Recurring Payments and Reference Transactions API Operations
GetRecurringPaymentsProfileDetails API Operation

Field

Description

Amount

cc:BasicAmountType
Billing amount for each billing cycle during this payment period. This amount does
not include shipping and tax amounts.
NOTE:

12

All amounts in the CreateRecurringPaymentsProfile request must
have the same currency.

Character length and limitations: Value is a positive number which cannot exceed
$10,000 USD in any currency. It includes no currency symbol. It must have 2 decimal
places, the decimal separator must be a period (.), and the optional thousands
separator must be a comma (,).
ShippingAmount

cc:BasicAmountType
Shipping amount for each billing cycle during this payment period.
NOTE:

All amounts in the request must have the same currency.

Character length and limitations: Value is a positive number which cannot exceed
$10,000 USD in any currency. It includes no currency symbol. It must have 2 decimal
places, the decimal separator must be a period (.), and the optional thousands
separator must be a comma (,).
TaxAmount

cc:BasicAmountType
Tax amount for each billing cycle during this payment period.
NOTE:

All amounts in the request must have the same currency.

Character length and limitations: Value is a positive number which cannot exceed
$10,000 USD in any currency. It includes no currency symbol. It must have 2 decimal
places, the decimal separator must be a period (.), and the optional thousands
separator must be a comma (,).
RecurringPaymentsSummaryDetailsType Fields
Field

Description

NextBillingDate

xs:dateTime
The next scheduled billing date, in YYYY-MM-DD format.

NumberCycles
Completed

xs:int
The number of billing cycles completed in the current active subscription period. A
billing cycle is considered completed when payment is collected or after retry
attempts to collect payment for the current billing cycle have failed.

NumberCycles
Remaining

xs:int
The number of billing cycles remaining in the current active subscription period.

SOAP API Developer Reference

August 2012

213

12

Recurring Payments and Reference Transactions API Operations
GetRecurringPaymentsProfileDetails API Operation

Field

Description

OutstandingBalance

cc:BasicAmountType
The current past due or outstanding balance for this profile.
Character length and limitations: Does not exceed $10,000 USD in any currency. No
currency symbol. Regardless of currency, decimal separator is a period (.), and the
optional thousands separator is a comma (,). Equivalent to nine characters maximum
for USD.

FailedPaymentCount

xs:int
The total number of failed billing cycles for this profile.

LastPaymentDate

xs:dateTime
The date of the last successful payment received for this profile, in YYYY-MM-DD
format.

LastPaymentAmount

cc:BasicAmountType
The amount of the last successful payment received for this profile.
Character length and limitations: Does not exceed $10,000 USD in any currency. No
currency symbol. Regardless of currency, decimal separator is a period (.), and the
optional thousands separator is a comma (,). Equivalent to nine characters maximum
for USD.

CreditCardDetailsType Fields
Field

Description

CreditCardType

ebl:CreditCardType
Type of credit card. Is one of the following values:
 Visa
 MasterCard
 Discover
 Amex
 Maestro – See note.
NOTE:

If the credit card type is Maestro, you must set the currencyId to GBP. In
addition, you must specify either StartMonth and StartYear or
IssueNumber.

Character length and limitations: Up to 10 single-byte alphabetic characters

214

CreditCardNumber

xs:string
Credit card number. Only the last 4 digits of the credit card number are returned.
Character length and limitations: Numeric characters only with no spaces or
punctutation. The string must conform with modulo and length required by each
credit card type.

ExpMonth

xs:int
Credit card expiration month.
Character length and limitations: 2 single-byte numeric characters, including leading
zero

August 2012

SOAP API Developer Reference

Recurring Payments and Reference Transactions API Operations
GetRecurringPaymentsProfileDetails API Operation

Field

Description

ExpYear

xs:int
Credit card expiration year.
Character length and limitations: 4 single-byte numeric characters

CardOwner

ns:PayerInfoType
Details about the owner of the credit card.

StartMonth

xs:int
Month that Maestro card was issued.
Character length and limitations: 2-digit, zero-filled if necessary

StartYear

xs:int
Year that Maestro card was issued.
Character length and limitations: 4 digits

IssueNumber

xs:string
Issue number of Maestro card.
Character length and limitations: 2 numeric digits

12

PayerInfoType Fields
Field

Description

Payer

ns:EmailAddressType
Email address of buyer.
Character length and limitations: 127 single-byte characters

FirstName

ns:PersonNameType
Buyer’s first name.
Character length and limitations: 25 single-byte characters

LastName

ns:PersonNameType
Buyer’s last name.
Character length and limitations: 25 single-byte characters

Address

ns:AddressType
Buyer’s billing address information.
AddressType Fields

Field

Description

AddressOwner

ebl:AddressOwnerTypeCode
eBay company that maintains this address. It is one of the following values:
 eBay
 PayPal

SOAP API Developer Reference

August 2012

215

12

216

Recurring Payments and Reference Transactions API Operations
GetRecurringPaymentsProfileDetails API Operation

Field

Description

AddressStatus

ebl:AddressStatusTypeCode
Status of street address on file with PayPal. It is one of the following values:
 none
 Confirmed
 Unconfirmed

Name

xs:string
Person’s name associated with this address.
Character length and limitations: 32 single-byte characters

Street1

xs:string
First street address.
Character length and limitations: 100 single-byte characters

Street2

xs:string
Second street address.
Character length and limitations: 100 single-byte characters

CityName

xs:string
Name of city.
Character length and limitations: 40 single-byte characters

StateOrProvince

xs:string
State or province. Required for U.S. addresses only.
Character length and limitations: 40 single-byte characters

PostalCode

xs:string
U.S. ZIP code or other country-specific postal code.
Character length and limitations: 20 single-byte characters

Country

ns:CountryCode
Country code.
Character length and limitations: 2 single-byte characters

CountryName

xs:string
Expanded name of country.
Character length and limitations: 64 single-byte alphanumeric characters

Phone

xs:string
Phone number.
Character length and limitations: 20 single-byte characters

August 2012

SOAP API Developer Reference

Recurring Payments and Reference Transactions API Operations
ManageRecurringPaymentsProfileStatus API Operation

12

M a n a g e R e c u r r i n g P a y m e n ts P r o f i l e Sta t u s A P I O p e r a t i o n
The ManageRecurringPaymentsProfileStatus API operation cancels, suspends, or
reactivates a recurring payments profile.

ManageRecurringPaymentsProfileStatus Request Message

NOT E :

Not all fields shown are available for use. Use only the fields described in the
documentation.

ManageRecurringPaymentsProfileStatus Request Fields
Field

Description

ProfileID

xs:string
(Required) Recurring payments profile ID returned in the
CreateRecurringPaymentsProfile response.
Character length and limitations: 14 single-byte alphanumeric characters. 19
character profile IDs are supported for compatibility with previous versions of the
PayPal API.

Action

ns:StatusChangeActionType
(Required) The action to be performed to the recurring payments profile. Must be one
of the following:
 Cancel – Only profiles in Active or Suspended state can be canceled.
 Suspend – Only profiles in Active state can be suspended.
 Reactivate – Only profiles in a suspended state can be reactivated.

Note

xs:string
(Optional) The reason for the change in status. For profiles created using Express
Checkout, this message is included in the email notification to the buyer when the
status of the profile is successfully changed, and can also be seen by both you and the
buyer on the Status History page of the PayPal account.

SOAP API Developer Reference

August 2012

217

12

Recurring Payments and Reference Transactions API Operations
ManageRecurringPaymentsProfileStatus API Operation

ManageRecurringPaymentsProfileStatus Response Message

NOT E :

Not all fields shown are available for use. Use only the fields described in the
documentation.

ManageRecurringPaymentsProfileStatus Response Fields

218

Field

Description

ProfileID

xs:string
Recurring payments profile ID returned in the
CreateRecurringPaymentsProfile response. For each action, an error is
returned if the recurring payments profile has a status that is not compatible with the
action. Errors are returned in the following cases:
 Cancel – Profile status is not Active or Suspended.
 Suspend – Profile status is not Active.
 Reactivate – Profile status is not Suspended.

August 2012

SOAP API Developer Reference

Recurring Payments and Reference Transactions API Operations
BillOutstandingAmount API Operation

12

B i l l O u ts ta n d i n g A m o u n t A P I O p e r a t i o n
The BillOutstandingAmount API operation bills the buyer for the outstanding balance
associated with a recurring payments profile.

BillOutstandingAmount Request Message

NOT E :

Not all fields shown are available for use. Use only the fields described in the
documentation.

NOT E :

Not all fields shown are available for use. Use only the fields described in the
documentation.

BillOutstandingAmount Request Fields
Field

Description

ProfileID

xs:string
(Required) Recurring payments profile ID returned in the
CreateRecurringPaymentsProfile response.
NOTE:

The profile must have a status of either Active or Suspended.

Character length and limitations: 14 single-byte alphanumeric characters. 19
character profile IDs are supported for compatibility with previous versions of the
PayPal API.

SOAP API Developer Reference

August 2012

219

12

Recurring Payments and Reference Transactions API Operations
BillOutstandingAmount API Operation

Field

Description

Amount

cc:BasicAmountType
(Optional) The amount to bill. The amount must be less than or equal to the current
outstanding balance of the profile. If no value is specified, PayPal attempts to bill the
entire outstanding balance amount.
Character length and limitations: Value is a positive number which cannot exceed
$10,000 USD in any currency. It includes no currency symbol. It must have 2 decimal
places, the decimal separator must be a period (.), and the optional thousands
separator must be a comma (,).

Note

xs:string
(Optional) The reason for the non-scheduled payment. For profiles created using
Express Checkout, this message is included in the email notification to the buyer for
the non-scheduled payment transaction, and can also be seen by both you and the
buyer on the Status History page of the PayPal account.

BillOutstandingAmount Response Message

NOT E :

Not all fields shown are available for use. Use only the fields described in the
documentation.

BillOutstandingAmount Response Fields

220

Field

Description

ProfileID

xs:string
Recurring payments profile ID returned in the
CreateRecurringPaymentsProfile response. An error is returned if the profile
specified in the BillOutstandingAmount request has a status of canceled or
expired.

August 2012

SOAP API Developer Reference

Recurring Payments and Reference Transactions API Operations
UpdateRecurringPaymentsProfile API Operation

12

UpdateRecurringPaymentsProfile API Operation
The UpdateRecurringPaymentsProfile API operation updates a recurring payments profile.

UpdateRecurringPaymentsProfile Request Message

NOT E :

Not all fields shown are available for use. Use only the fields described in the
documentation.

SOAP API Developer Reference

August 2012

221

12

Recurring Payments and Reference Transactions API Operations
UpdateRecurringPaymentsProfile API Operation

NOT E :

222

Not all fields shown are available for use. Use only the fields described in the
documentation.

August 2012

SOAP API Developer Reference

Recurring Payments and Reference Transactions API Operations
UpdateRecurringPaymentsProfile API Operation

NOT E :

12

Not all fields shown are available for use. Use only the fields described in the
documentation.

SOAP API Developer Reference

August 2012

223

12

224

Recurring Payments and Reference Transactions API Operations
UpdateRecurringPaymentsProfile API Operation

NOT E :

Not all fields shown are available for use. Use only the fields described in the
documentation.

NOT E :

Not all fields shown are available for use. Use only the fields described in the
documentation.

August 2012

SOAP API Developer Reference

Recurring Payments and Reference Transactions API Operations
UpdateRecurringPaymentsProfile API Operation

12

UpdateRecurringPaymentsProfile Request Fields
Field

Description

ProfileID

xs:string
(Required) Recurring payments profile ID returned in the
CreateRecurringPaymentsProfile response.
Character length and limitations: 14 single-byte alphanumeric characters. 19
character profile IDs are supported for compatibility with previous versions of the
PayPal API.

Note

xs:string
(Optional) The reason for the update to the recurring payments profile. This message
is included in the email notification to the buyer for the recurring payments profile
update. This note can also be seen by both you and the buyer on the Status History
page of the PayPal account.

Description

xs:string
(Optional) Description of the recurring payment.
Character length and limitations: 127 single-byte alphanumeric characters

SubscriberName

xs:string
(Optional) Full name of the person receiving the product or service paid for by the
recurring payment. If not present, the name in the buyer’s PayPal account is used.
Character length and limitations: 32 single-byte characters

SubscriberShipping
Address

ns:AddressType
(Optional) The subscriber’s shipping address associated with this profile, if
applicable. If you do not specify it, the ship-to address from buyer’s PayPal account is
used.
NOTE:

Shipping Address is optional, but if you update any of the address fields, you
must enter all of them. For example, if you want to update the subsriber’s
street address, you must specify all of the fields listed in
ShipTo: AddressType, not just the field for the street address.

ProfileReference

xs:string
(Optional) The merchant’s own unique reference or invoice number.
Character length and limitations: 127 single-byte alphanumeric characters

AdditionalBilling
Cycles

xs:int
(Optional) The number of additional billing cycles to add to this profile.

SOAP API Developer Reference

August 2012

225

12

Recurring Payments and Reference Transactions API Operations
UpdateRecurringPaymentsProfile API Operation

Field

Description

Amount

cc:BasicAmountType
(Optional) Billing amount for each cycle in the subscription period, not including
shipping and tax amounts.
NOTE:

For recurring payments with Express Checkout, the payment amount can be
increased by no more than 20% every 180 days (starting when the profile is
created).

Character length and limitations: Value is a positive number which cannot exceed
$10,000 USD in any currency. It includes no currency symbol. It must have 2 decimal
places, the decimal separator must be a period (.), and the optional thousands
separator must be a comma (,).
ShippingAmount

cc:BasicAmountType
(Optional) Shipping amount for each billing cycle during the regular payment period.
NOTE:

All amounts in the request must have the same currency.

Character length and limitations: Value is a positive number which cannot exceed
$10,000 USD in any currency. It includes no currency symbol. It must have 2 decimal
places, the decimal separator must be a period (.), and the optional thousands
separator must be a comma (,).
TaxAmount

cc:BasicAmountType
(Optional) Tax amount for each billing cycle during the regular payment period.
NOTE:

All amounts in the request must have the same currency.

Character length and limitations: Value is a positive number which cannot exceed
$10,000 USD in any currency. It includes no currency symbol. It must have 2 decimal
places, the decimal separator must be a period (.), and the optional thousands
separator must be a comma (,).

226

OutstandingBalance

cc:BasicAmountType
(Optional) The current past due or outstanding amount for this profile. You can only
decrease the outstanding amount. It cannot be increased.
Character length and limitations: Value is a positive number which cannot exceed
$10,000 USD in any currency. It includes no currency symbol. It must have 2 decimal
places, the decimal separator must be a period (.), and the optional thousands
separator must be a comma (,).

AutoBillOutstanding
Amount

ns:AutoBillType
(Optional) This field indicates whether you would like PayPal to automatically bill
the outstanding balance amount in the next billing cycle. It is one of the following
values:
 NoAutoBill – PayPal does not automatically bill the outstanding balance.
 AddToNextBilling – PayPal automatically bills the outstanding balance

August 2012

SOAP API Developer Reference

Recurring Payments and Reference Transactions API Operations
UpdateRecurringPaymentsProfile API Operation

Field

Description

MaxFailedPayments

xs:int
(Optional) The number of failed payments allowed before the profile is automatically
suspended. The specified value cannot be less than the current number of failed
payments for this profile.
Character length and limitations: Number string representing an integer

BillingStartdate

xs:dateTime
(Optional) The date when billing for this profile begins.
NOTE:

12

The profile may take up to 24 hours for activation.

Character length and limitations: Must be a valid date, in UTC/GMT format
TrialPeriod

ns:BillingPeriodDetailsType
(Optional) The trial period for this schedule.

PaymentPeriod

ns:BillingPeriodDetailsType
(Optional) The regular payment period for this schedule.

CreditCard

ns:CreditCardDetailsType
(Optional) Credit card information for this profile, if applicable. Credit card billing
address is optional, but if you update any of the address fields, you must enter all of
them. For example, if you want to update the street address, you must specify all of
the address fields listed in CreditCardDetailsType, not just the field for the
street address.
NOTE:

Only enter credit card details for recurring payments with direct payments.

AddressType (Shipping) Fields
Field

Description

Name

xs:string
Person’s name associated with this shipping address. It is required if using a
shipping address.
Character length and limitations: 32 single-byte characters

Street1

xs:string
First street address. It is required if using a shipping address.
Character length and limitations: 100 single-byte characters

Street2

xs:string
(Optional) Second street address.
Character length and limitations: 100 single-byte characters

CityName

xs:string
Name of city. It is required if using a shipping address.
Character length and limitations: 40 single-byte characters

SOAP API Developer Reference

August 2012

227

12

Recurring Payments and Reference Transactions API Operations
UpdateRecurringPaymentsProfile API Operation

Field

Description

StateOrProvince

xs:string
State or province. It is required if using a shipping address.
Character length and limitations: 40 single-byte characters

PostalCode

xs:string
U.S. ZIP code or other country-specific postal code. It is required if using a
U.S. shipping address; may be required for other countries.
Character length and limitations: 20 single-byte characters

Country

ebl:CountryCodeType
Country code. It is required if using a shipping address.
Character length and limitations: 2 single-byte characters

Phone

xs:string
(Optional) Phone number.
Character length and limitations: 20 single-byte characters
BillingPeriodDetailsType Fields

Field

Description

PaymentPeriod.Total
BillingCycles

xs:int
(Optional) Number of billing cycles for payment period.
 For the regular payment period, if no value is specified or the value is 0, the
regular payment period continues until the profile is canceled or deactivated.
 For the regular payment period, if the value is greater than 0, the regular payment
period will expire after the trial period is finished and continue at the billing
frequency for TotalBillingCycles cycles.

PaymentPeriod.Amoun
t

cc:BasicAmountType
(Required) Billing amount for each billing cycle during this payment period. This
amount does not include shipping and tax amounts.
NOTE:

All amounts in the CreateRecurringPaymentsProfile request must
have the same currency.

Character length and limitations: Value is a positive number which cannot exceed
$10,000 USD in any currency. It includes no currency symbol. It must have 2 decimal
places, the decimal separator must be a period (.), and the optional thousands
separator must be a comma (,).
TrialPeriod.TotalBi
llingCycles

228

xs:int
(Optional) Number of billing cycles for trial payment period.

August 2012

SOAP API Developer Reference

Recurring Payments and Reference Transactions API Operations
UpdateRecurringPaymentsProfile API Operation

Field

Description

TrialPeriod.Amount

cc:BasicAmountType
Billing amount for each billing cycle during this payment period; required if you
specify an optional trial period. This amount does not include shipping and tax
amounts.
NOTE:

12

All amounts in the CreateRecurringPaymentsProfile request must
have the same currency.

Character length and limitations: Value is a positive number which cannot exceed
$10,000 USD in any currency. It includes no currency symbol. It must have 2 decimal
places, the decimal separator must be a period (.), and the optional thousands
separator must be a comma (,).
ShippingAmount

cc:BasicAmountType
(Optional) Shipping amount for each billing cycle during this payment period.
NOTE:

All amounts in the request must have the same currency.

Character length and limitations: Value is a positive number which cannot exceed
$10,000 USD in any currency. It includes no currency symbol. It must have 2 decimal
places, the decimal separator must be a period (.), and the optional thousands
separator must be a comma (,).
TaxAmount

cc:BasicAmountType
(Optional) Tax amount for each billing cycle during this payment period.
NOTE:

All amounts in the request must have the same currency.

Character length and limitations: Value is a positive number which cannot exceed
$10,000 USD in any currency. It includes no currency symbol. It must have 2 decimal
places, the decimal separator must be a period (.), and the optional thousands
separator must be a comma (,).
CreditCardDetailsType Fields
Field

Description

CreditCardType

ebl:CreditCardType
(Optional) Type of credit card. For UK, only Maestro, MasterCard, Discover,
and Visa are allowable. For Canada, only MasterCard and Visa are allowable and
Interac debit cards are not supported. It is one of the following values:
 Visa
 MasterCard
 Discover
 Amex
 Maestro: See note.
NOTE:

If the credit card type is Maestro, you must set currencyId to GBP. In
addition, you must specify either StartMonth and StartYear or
IssueNumber.

Character length and limitations: Up to 10 single-byte alphabetic characters

SOAP API Developer Reference

August 2012

229

12

Recurring Payments and Reference Transactions API Operations
UpdateRecurringPaymentsProfile API Operation

Field

Description

CreditCardNumber

xs:string
(Required) Credit card number.
Character length and limitations: Numeric characters only with no spaces or
punctutation. The string must conform with modulo and length required by each
credit card type.

ExpMonth

xs:int
(Required) Credit card expiration month.
Character length and limitations: 2 single-byte numeric characters, including leading
zero

ExpYear

xs:int
(Required) Credit card expiration year.
Character length and limitations: 4 single-byte numeric characters

CVV2

xs:string
Card Verification Value, version 2. Your Merchant Account settings determine
whether this field is required. To comply with credit card processing regulations, you
must not store this value after a transaction has been completed.
Character length and limitations: For Visa, MasterCard, and Discover, the value is
exactly 3 digits. For American Express, the value is exactly 4 digits.

CardOwner

ns:PayerInfoType
(Required) Details about the owner of the credit card.

StartMonth

xs:int
(Optional) Month that Maestro card was issued.
Character length and limitations: 2-digit, zero-filled if necessary

StartYear

xs:int
(Optional) Year that Maestro card was issued.
Character length and limitations: 4 digits

IssueNumber

xs:string
(Optional) Issue number of Maestro card.
Character length and limitations: 2 numeric digits maximum

PayerInfoType Fields

230

Field

Description

Payer

ns:EmailAddressType
(Optional) Email address of buyer.
Character length and limitations: 127 single-byte characters

FirstName

ns:PersonNameType
(Required) Buyer’s first name.
Character length and limitations: 25 single-byte characters

August 2012

SOAP API Developer Reference

Recurring Payments and Reference Transactions API Operations
UpdateRecurringPaymentsProfile API Operation

Field

Description

LastName

ns:PersonNameType
(Required) Buyer’s last name.
Character length and limitations: 25 single-byte characters

Address

ns:AddressType
(Required) Buyer’s billing address information.

12

AddressType Fields
Field

Description

Street1

xs:string
(Required) First street address.
Character length and limitations: 100 single-byte characters

Street2

xs:string
(Optional) Second street address.
Character length and limitations: 100 single-byte characters

CityName

xs:string
(Required) Name of city.
Character length and limitations: 40 single-byte characters

StateOrProvince

xs:string
(Required) State or province.
Character length and limitations: 40 single-byte characters

Country

ebl:CountryCodeType
(Required) Country code.
Character length and limitationst: 2 single-byte characters

PostalCode

xs:string
(Required) U.S. ZIP code or other country-specific postal code.
Character length and limitations: 20 single-byte characters

Phone

xs:string
(Optional) Phone number.
Character length and limitations: 20 single-byte characters

SOAP API Developer Reference

August 2012

231

12

Recurring Payments and Reference Transactions API Operations
UpdateRecurringPaymentsProfile API Operation

UpdateRecurringPaymentsProfile Response Message

NOT E :

Not all fields shown are available for use. Use only the fields described in the
documentation.

UpdateRecurringPaymentsProfile Response Fields

232

Field

Description

ProfileID

xs:string
Recurring payments profile ID returned in the
CreateRecurringPaymentsProfile response. An error is returned if the profile
specified in the BillOutstandingAmount request has a status of canceled or
expired.

August 2012

SOAP API Developer Reference

Recurring Payments and Reference Transactions API Operations
SetCustomerBillingAgreement API Operation

12

SetCustomerBillingAgreement API Operation
The SetCustomerBillingAgreement API operation initiates the creation of a billing
agreement.
NOT E :

If you are using Express Checkout with version 54.0 or later of the API, do not use the
SetCustomerBillingAgreement API operation to set up a billing agreement. Use
the SetExpressCheckout API operation instead.

SetCustomerBillingAgreement Request Message

NOT E :

Not all fields shown are available for use. Use only the fields described in the
documentation.

NOT E :

Not all fields shown are available for use. Use only the fields described in the
documentation.

SetCustomerBillingAgreement Request Fields
Field

Description

BillingAgreement
Details

ns:BillingAgreementDetailsType
(Required) Details of the billing agreement such as the billing type, billing agreement
description, and payment type.

SOAP API Developer Reference

August 2012

233

12

Recurring Payments and Reference Transactions API Operations
SetCustomerBillingAgreement API Operation

Field

Description

ReturnURL

xs:string
(Required) URL to which the buyer’s browser is returned after choosing to pay with
PayPal.
NOTE:

PayPal recommends that the value be the final review page on which the
buyer confirms the billing agreement.

Character length and limitations: no limit
CancelURL

xs:string
(Required) URL to which the customer is returned if he does not approve the use of
PayPal to pay you.
NOTE:

PayPal recommends that the value be the original page on which the
customer chose to pay with PayPal or establish a billing agreement.

Character length and limitations: no limit

234

August 2012

SOAP API Developer Reference

Recurring Payments and Reference Transactions API Operations
SetCustomerBillingAgreement API Operation

Field

Description

LocaleCode

xs:string
(Optional) Locale of pages displayed by PayPal during checkout. PayPal supports the
following 2-character country codes:
 AU – Australia
 AT – Austria
 BE – Belgium
 BR – Brazil
 CA – Canada
 CH – Switzerland
 CN – China
 DE – Germany
 ES – Spain
 GB – United Kingdom
 FR – France
 IT – Italy
 NL – Netherlands
 PL – Poland
 PT – Portugal
 RU – Russia
 US – United States
 The following 5-character codes are also supported for languages in specific
countries:
da_DK – Danish (for Denmark only)
he_IL – Hebrew (all)
id_ID – Indonesian (for Indonesia only)
jp_JP – Japanese (for Japan only)
no_NO – Norwegian (for Norway only)
pt_BR – Brazilian Portuguese (for Portugal and Brazil only)
ru_RU – Russian (for Lithuania, Latvia, and Ukraine only)
sv_SE – Swedish (for Sweden only)
th_TH – Thai (for Thailand only)
tr_TR – Turkish (for Turkey only)
zh_CN – Simplified Chinese (for China only)
zh_HK – Traditional Chinese (for Hong Kong only)
zh_TW – Traditional Chinese (for Taiwan only)

12

Any other value defaults to US.
Character length and limitations: 2 single-byte characters
PageStyle

SOAP API Developer Reference

xs:string
(Optional) Sets the Custom Payment Page Style for payment pages associated with
this button/link. This value corresponds to the HTML variable page_style for
customizing payment pages. The value is the same as the Page Style Name you chose
when adding or editing the page style in your PayPal account.
Character length and limitations: 30 single-byte alphabetic characters

August 2012

235

12

Recurring Payments and Reference Transactions API Operations
SetCustomerBillingAgreement API Operation

Field

Description

cpp-header-image

xs:string
(Optional) A URL for the image you want to appear at the top left of the payment
page. The image has a maximum size of 750 pixels wide by 90 pixels high. PayPal
recommends that you provide an image that is stored on a secure (https) server.
Character length and limitations: 127 single-byte alphanumeric characters

cpp-header-border

xs:string
(Optional) Sets the border color around the header of the payment page. The border is
a 2-pixel perimeter around the header space, which is 750 pixels wide by 90 pixels
high.
Character length and limitations: 6-character HTML hexadecimal color code in
ASCII

cpp-header-backcolor

xs:string
(Optional) Sets the background color for the header of the payment page. By default,
the color is white.
Character length and limitation: 6-character HTML hexadecimal color code in ASCII

cpp-payflow-color

xs:string
(Optional) Sets the background color for the payment page.
Character length and limitation: 6-character HTML hexadecimal color code in ASCII

BuyerEmail

ns:EmailAddressType
(Optional) Email address of the buyer as entered during checkout. PayPal uses this
value to pre-fill the PayPal membership sign-up portion of the PayPal login page.
Character length and limit: 127 single-byte alphanumeric characters

BillingAgreementDetails Fields

236

Field

Description

BillingType

ns:BillingCodeType
(Required) Type of billing agreement. For recurring payments, this field must be set
to RecurringPayments. In this case, you can specify up to ten billing agreements.
Other defined values are not valid.
Type of billing agreement for reference transactions. You must have permission from
PayPal to use this field. This field must be set to one of the following values:
 MerchantInitiatedBilling - PayPal creates a billing agreement for each
transaction associated with buyer. You must specify version 54.0 or higher to use
this option.
 MerchantInitiatedBillingSingleAgreement - PayPal creates a single
billing agreement for all transactions associated with buyer. Use this value unless
you need per-transaction billing agreements. You must specify version 58.0 or
higher to use this option.

August 2012

SOAP API Developer Reference

Recurring Payments and Reference Transactions API Operations
SetCustomerBillingAgreement API Operation

Field

Description

BillingAgreement
Description

xs:string
Description of goods or services associated with the billing agreement. This field is
required for each recurring payment billing agreement. PayPal recommends that the
description contain a brief summary of the billing agreement terms and conditions.
For example, buyer is billed at “9.99 per month for 2 years”.
Character length and limitations: 127 single-byte alphanumeric characters

PaymentType

ns:MerchantPullPaymentCodeType
(Optional) Type of PayPal payment you require for the billing agreement. It is one of
the following values:
 Any
 InstantOnly
NOTE:

BillingAgreement
Custom

12

For recurring payments, this field is ignored.

xs:string
(Optional) Custom annotation field for your own use.
NOTE:

For recurring payments, this field is ignored.

Character length and limitations: 256 single-byte alphanumeric bytes

SetCustomerBillingAgreement Response Message

NOT E :

Not all fields shown are available for use. Use only the fields described in the
documentation.

SOAP API Developer Reference

August 2012

237

12

Recurring Payments and Reference Transactions API Operations
CreateBillingAgreement API Operation

SetCustomerBillingAgreement Response Fields
Field

Description

Token

xs:string
A unique time-stamped token, which uniquely identifies this transaction in
subsequent API calls.
N O TE :

The token expires after 3 hours.

Character length and limitations: 20 single-byte characters

CreateBillingAgreement API Operation
The CreateBillingAgreement API operation creates a billing agreement with a PayPal
account holder. CreateBillingAgreement is only valid for reference transactions.

CreateBillingAgreement Request Message

NOT E :

Not all fields shown are available for use. Use only the fields described in the
documentation.

CreateBillingAgreement Request Fields
Field

Description

Token

xs:string
(Required) The time-stamped token returned in the
SetCustomerBillingAgreement response.
NOTE:

The token expires after 3 hours.

Character length and limitations: 20 single-byte characters

238

August 2012

SOAP API Developer Reference

Recurring Payments and Reference Transactions API Operations
CreateBillingAgreement API Operation

12

CreateBillingAgreement API Response Message

NOT E :

Not all fields shown are available for use. Use only the fields described in the
documentation.

CreateBillingAgreement Response Fields
Field

Description

BillingAgreementID

xs:string
Identification number of the billing agreement.

SOAP API Developer Reference

August 2012

239

12

Recurring Payments and Reference Transactions API Operations
GetBillingAgreementCustomerDetails API Operation

G e t B i l l i n g A g r e e m e n t C u s t o m e r D e ta i l s A P I O p e r a t i o n
The GetBillingAgreementCustomerDetails API operation obtains information about a billing
agreement’s PayPal account holder.

GetBillingAgreementCustomerDetails Request Message

NOT E :

Not all fields shown are available for use. Use only the fields described in the
documentation.

GetBillingAgreementCustomerDetails Request Fields
Field

Description

Token

xs:string
(Required) The time-stamped token returned in the
SetCustomerBillingAgreement response.
NOTE:

The token expires after 3 hours.

Character length and limitations: 20 single-byte characters

240

August 2012

SOAP API Developer Reference

Recurring Payments and Reference Transactions API Operations
GetBillingAgreementCustomerDetails API Operation

12

GetBillingAgreementCustomerDetails Response Message

NOT E :

Not all fields shown are available for use. Use only the fields described in the
documentation.

NOT E :

Not all fields shown are available for use. Only use fields described in the
documentation.

SOAP API Developer Reference

August 2012

241

12

Recurring Payments and Reference Transactions API Operations
GetBillingAgreementCustomerDetails API Operation

NOT E :

Not all fields shown are available for use. Only use fields described in the
documentation.

GetBillingAgreementCustomerDetails Response Fields

242

Field

Description

PayerInfo

ns:PayerInfoType
Information about the buyer such as the buyer’s name, email address, and country of
residence.

August 2012

SOAP API Developer Reference

Recurring Payments and Reference Transactions API Operations
GetBillingAgreementCustomerDetails API Operation

12

PayerInfoType Fields
Field

Description

Payer

ebl:EmailAddressType
Email address of buyer.
Character length and limitations: 127 single-byte characters

PayerID

ebl:UserIDType
Unique PayPal Customer Account identification number.
Character length and limitations:13 single-byte alphanumeric characters

PayerStatus

ebl:PayPalUserStatusCodeType
Status of buyer. It is one of the following values:
 verified
 unverified
Character length and limitations: 10 single-byte alphabetic characters

PayerName

ebl:PersonNameType
First and last name of buyer.

PayerCountry

ebl:CountryCodeType
Buyer’s country of residence in the form of ISO standard 3166 2-character country
codes.
Character length and limitations: 2 single-byte characters

PayerBusiness

xs:string
Buyer’s business name.
Character length and limitations: 127 single-byte characters

Address

ns:AddressType
Buyer’s shipping address information.
PayerNameType Fields

Field

Description

Salutation

xs:string
Buyer’s salutation.
Character length and limitations: 20 single-byte characters

FirstName

ebl:PersonNameType
Buyer’s first name.
Character length and limitations: 25 single-byte characters

MiddleName

ebl:NameUser
Buyer’s middle name.
Character length and limitations: 25 single-byte characters

SOAP API Developer Reference

August 2012

243

12

Recurring Payments and Reference Transactions API Operations
GetBillingAgreementCustomerDetails API Operation

Field

Description

LastName

ebl:NameType
Buyer’s last name.
Character length and limitations: 25 single-byte characters

Suffix

ebl:SuffixType
Buyer’s suffix.
Character length and limitations: 12 single-byte characters
AddressType Fields

244

Field

Description

AddressStatus

ebl:AddressStatusTypeCode
Status of street address on file with PayPal. It is one of the following values:
 none
 Confirmed
 Unconfirmed

Name

xs:string
Person’s name associated with this address.
Character length and limitations: 32 single-byte characters

Street1

xs:string
First street address.
Character length and limitations: 100 single-byte characters

Street2

xs:string
Second street address.
Character length and limitations: 100 single-byte characters

CityName

xs:string
Name of city.
Character length and limitations: 40 single-byte characters

StateOrProvince

xs:string
State or province. Required for U.S. addresses only.
Character length and limitations: 40 single-byte characters

PostalCode

xs:string
U.S. ZIP code or other country-specific postal code.
Character length and limitations: 20 single-byte characters

Country

ebl:CountryCode
Country code.
Character length and limitations: 2 single-byte characters

August 2012

SOAP API Developer Reference

Recurring Payments and Reference Transactions API Operations
BAUpdate API Operation

12

BAUpdate API Operation
The BAUpdate API operation updates or deletes a billing agreement.

BAUpdate Request Message

NOT E :

Not all fields shown are available for use. Use only the fields described in the
documentation.

BAUpdate Request Fields
Field

Description

ReferenceID

xs:string
(Required) An ID, such as a billing agreement ID or a reference transaction ID that is
associated with a billing agreement.

BillingAgreementSta
tus

ebl:MerchantPullStatusCodeType
(Optional) Use to cancel a billing agreement. To cancel a billing agreement, pass the
value Canceled.
NOTE:

SOAP API Developer Reference

If you do not pass the value Canceled, BAUpdate returns the buyer’s latest
billing address.

August 2012

245

12

Recurring Payments and Reference Transactions API Operations
BAUpdate API Operation

Field

Description

BillingAgreement
Description

xs:string
(Optional) Description of goods or services associated with the billing agreement.
This field is required for each recurring payment billing agreement. PayPal
recommends that the description contain a brief summary of the billing agreement
terms and conditions. For example, buyer will be billed at “9.99 per month for 2
years”.
Character length and limitations: 127 single-byte alphanumeric characters

BillingAgreement
Custom

xs:string
(Optional) Custom annotation field for your own use.
NOTE:

For recurring payments, this field is ignored.

Character length and limitations: 256 single-byte alphanumeric characters

BAUpdate Response Message

246

NOT E :

Not all fields show are available for use. Use only the fields described in the
documentation.

NOT E :

Not all fields shown are available for use. Use only the fields described in the
documentation.

August 2012

SOAP API Developer Reference

Recurring Payments and Reference Transactions API Operations
BAUpdate API Operation

NOT E :

12

Not all fields shown are available for use. Use only the fields described in the
documentation.

SOAP API Developer Reference

August 2012

247

12

Recurring Payments and Reference Transactions API Operations
BAUpdate API Operation

NOT E :

Not all fields shown are available for use. Use only the fields described in the
documentation.

BAUpdate Response Fields

248

Field

Description

BillingType

ns:BillingCodeType
Type of billing agreement.

BillingAgreement
Description

xs:string
Description of goods or services associated with the billing agreement. This field is
required for each recurring payment billing agreement.
Character length and limitations: 127 single-byte alphanumeric characters

August 2012

SOAP API Developer Reference

Recurring Payments and Reference Transactions API Operations
BAUpdate API Operation

Field

Description

BillingAgreement
Custom

xs:string
Custom annotation field for your own use.
Character length and limitations: 256 single-byte alphanumeric characters

BillingAgreementSta
tus

ebl:MerchantPullStatusCodeType
(Optional) Use to cancel a billing agreement. To cancel a billing agreement, pass the
value Canceled.
N O TE :

BillingAgreementMax

12

If you do not pass the value Canceled, BAUpdate returns the buyer’s latest
billing address.

cc:BasicAmountType
Maximum amount for this billing agreement.
N O TE :

This field only has a value if the buyer signed up for PayPal using
Preapproved Payments; it is included for backwards compatibility with
legacy systems.

Character length and limitations: Value is a positive number which cannot exceed
$10,000 USD in any currency. It includes no currency symbol. It must have 2 decimal
places, the decimal separator must be a period (.), and the optional thousands
separator must be a comma (,).
PayerInfo

ns:PayerInfoType
Information about the buyer such as the buyer’s name, email address, and country of
residence.

PayerInfoType Fields
Field

Description

Payer

ebl:EmailAddressType
Email address of buyer.
Character length and limitations: 127 single-byte characters

PayerID

ebl:UserIDType
Unique PayPal Customer Account identification number.
Character length and limitations:13 single-byte alphanumeric characters

PayerStatus

ebl:PayPalUserStatusCodeType
Status of buyer. It is one of the following values:
 verified
 unverified
Character length and limitations: 10 single-byte alphabetic characters

PayerName

SOAP API Developer Reference

ebl:PersonNameType
First and last name of buyer.

August 2012

249

12

Recurring Payments and Reference Transactions API Operations
BAUpdate API Operation

Field

Description

PayerCountry

ebl:CountryCodeType
Buyer’s country of residence in the form of ISO standard 3166 2-character country
codes.
Character length and limitations: 2 single-byte characters

PayerBusiness

xs:string
Buyer’s business name.
Character length and limitations: 127 single-byte characters

Address

ns:AddressType
Buyer’s shipping address information.
PayerNameType Fields

Field

Description

Salutation

xs:string
Buyer’s salutation.
Character length and limitations: 20 single-byte characters

FirstName

ebl:PersonNameType
Buyer’s first name.
Character length and limitations: 25 single-byte characters

MiddleName

ebl:NameUser
Buyer’s middle name.
Character length and limitations: 25 single-byte characters

LastName

ebl:NameType
Buyer’s last name.
Character length and limitations: 25 single-byte characters

Suffix

ebl:SuffixType
Buyer’s suffix.
Character length and limitations: 12 single-byte characters
AddressType Fields

250

Field

Description

Name

xs:string
Billing name associated with this billing address.
Character length and limitations: 32 single-byte characters

Street1

xs:string
First billing street address.
Character length and limitations: 100 single-byte characters

August 2012

SOAP API Developer Reference

Recurring Payments and Reference Transactions API Operations
DoReferenceTransaction API Operation

Field

Description

Street2

xs:string
Second billing street address.
Character length and limitations: 100 single-byte characters

CityName

xs:string
Name of billing city.
Character length and limitations: 40 single-byte characters

StateOrProvince

xs:string
Billing state or province. Required for U.S. addresses only.
Character length and limitations: 40 single-byte characters

PostalCode

xs:string
U.S. billing ZIP code or other country-specific postal code.
Character length and limitations: 20 single-byte characters

Country

ebl:CountryCode
Billing country code.
Character length and limitations: 2 single-byte characters

12

DoReferenceTransaction API Operation
The DoReferenceTransaction API operation processes a payment from a buyer’s account,
which is identified by a previous transaction.

DoReferenceTransaction Request Message

NOT E :

Not all fields shown are available for use. Use only the fields described in the
documentation.

SOAP API Developer Reference

August 2012

251

12

Recurring Payments and Reference Transactions API Operations
DoReferenceTransaction API Operation

NOT E :

252

Not all fields shown are available for use. Use only the fields described in the
documentation.

August 2012

SOAP API Developer Reference

Recurring Payments and Reference Transactions API Operations
DoReferenceTransaction API Operation

SOAP API Developer Reference

August 2012

12

253

12

254

Recurring Payments and Reference Transactions API Operations
DoReferenceTransaction API Operation

NOT E :

Not all fields shown are available for use. Use only the fields described in the
documentation.

NOT E :

Not all fields shown are available for use. Use only the fields described in the
documentation.

August 2012

SOAP API Developer Reference

Recurring Payments and Reference Transactions API Operations
DoReferenceTransaction API Operation

NOT E :

12

Not all fields shown are available for use. Use only the fields described in the
documentation.

DoReferenceTransaction Request Fields
Field

Description

ReferenceID

xs:string
(Required) A transaction ID from a previous purchase, such as a credit card charge
using the DoDirectPayment API, or a billing agreement ID.

PaymentAction

xs:string
(Optional) How you want to obtain payment. It is one of the following values:
 Authorization – This payment is a basic authorization subject to settlement
with PayPal Authorization and Capture.
 Sale – This is a final sale for which you are requesting payment.

PaymentDetails

ebl:PaymentDetailsType
(Required) Information about the payment.

SOAP API Developer Reference

August 2012

255

12

Recurring Payments and Reference Transactions API Operations
DoReferenceTransaction API Operation

Field

Description

IPAddress

xs:string
(Optional) IP address of the buyer’s browser.
NOTE:

PayPal records this IP addresses as a means to detect possible fraud.

Character length and limitations: 15 single-byte characters, including periods, for
example, 255.255.255.255
ReqConfirmShipping

Whether you require that the buyer’s shipping address on file with PayPal be a
confirmed address. You must have permission from PayPal to not require a confirmed
address. It is one of the following values:
 0 – You do not require that the buyer’s shipping address be a confirmed address.
 1 – You require that the buyer’s shipping address be a confirmed address.
NOTE:

Setting this field overrides the setting you have specified in your Merchant
Account Profile.

Character length and limitations: 1 single-byte numeric character
MerchantSessionId

xs:string
(Optional) Your buyer session identification token.
NOTE:

PayPal records this optional session identification token as an additional
means to detect possible fraud.

Character length and limitations: 64 single-byte numeric characters
ReturnFMFDetails

256

xs:boolean
(Optional) Flag to indicate whether you want the results returned by Fraud
Management Filters. By default, you do not receive this information. It is one of the
following values:
 0 – Do not receive FMF details (default)
 1 – Receive FMF details

August 2012

SOAP API Developer Reference

Recurring Payments and Reference Transactions API Operations
DoReferenceTransaction API Operation

Field

Description

SoftDescriptor

xs:string
(Optional) Per transaction description of the payment that is passed to the consumer’s
credit card statement.
If the API request provides a value for the soft descriptor field, the full descriptor
displayed on the buyer’s statement has the following format:
<1 space>
The soft descriptor can contain only the following characters:
 Alphanumeric characters
 - (dash)
 * (asterisk)
 . (period)
 {space}

12

If you use any other characters (such as “,”), PayPal returns an error code. The soft
descriptor does not include the phone number, which can be toggled between the
merchant’s customer service number and PayPal’s customer service number. The
maximum length of the total soft descriptor is 22 characters. Of this, the PayPal prefix
uses either 4 or 8 characters shown in the data format. Thus, the maximum length of
the soft descriptor passed in the API request is:
22 - len() - len( + 1)
For example, assume the following conditions:
 The PayPal prefix toggle is set to PAYPAL * in PayPal’s administration tools.
 The merchant descriptor set in the Payment Receiving Preferences is set to EBAY.
 The soft descriptor is passed in as JanesFlowerGifts LLC
The resulting descriptor string on the credit card would be:
PAYPAL *EBAY JanesFlow
PaymentReason

ns:PaymentReasonType
Indicates the type of transaction. It is one of the following values:
 None – Transaction is not identified as a particular type.
 Refund – Identifies the transaction as a refund.

MsgSubId

xs:string
(Optional) A message ID used for idempotence to uniquely identify a message. This
ID can later be used to request the latest results for a previous request without
generating a new request. Examples of this include requests due to timeouts or errors
during the original request.
Character length and limitations: string of up to 38 single-byte characters.
This field is available since version 92.0.

SOAP API Developer Reference

August 2012

257

12

Recurring Payments and Reference Transactions API Operations
DoReferenceTransaction API Operation

AddressType (Shipping) Fields

258

Field

Description

Name

xs:string
Person’s name associated with this shipping address. It is required if using a
shipping address.
Character length and limitations: 32 single-byte characters

Street1

xs:string
First street address. It is required if using a shipping address.
Character length and limitations: 100 single-byte characters

Street2

xs:string
(Optional) Second street address.
Character length and limitations: 100 single-byte characters

CityName

xs:string
Name of city. It is required if using a shipping address.
Character length and limitations: 40 single-byte characters

StateOrProvince

xs:string
State or province. It is required if using a shipping address.
Character length and limitations: 40 single-byte characters

PostalCode

xs:string
U.S. ZIP code or other country-specific postal code. It is required if using a
U.S. shipping address; may be required for other countries.
Character length and limitations: 20 single-byte characters

Country

ebl:CountryCodeType
Country code. It is required if using a shipping address.
Character length and limitations: 2 single-byte characters

Phone

xs:string
(Optional) Phone number.
Character length and limitations: 20 single-byte characters

August 2012

SOAP API Developer Reference

Recurring Payments and Reference Transactions API Operations
DoReferenceTransaction API Operation

12

PaymentDetailsType Fields
Field

Description

OrderTotal

ebl:BasicAmountType
(Required) The total cost of the transaction to the buyer. If shipping cost and tax
charges are known, include them in this value. If not, this value should be the current
subtotal of the order. If the transaction includes one or more one-time purchases, this
field must be equal to the sum of the purchases. Set this field to 0 if the transaction
does not include a one-time purchase such as when you set up a billing agreement for
a recurring payment that is not immediately charged. When the field is set to 0,
purchase-specific fields are ignored.
NOTE:

You must set the currencyID attribute to one of the 3-character currency
codes for any of the supported PayPal currencies.

Character length and limitations: Value is a positive number which cannot exceed
$10,000 USD in any currency. It includes no currency symbol. It must have 2 decimal
places, the decimal separator must be a period (.), and the optional thousands
separator must be a comma (,).
ItemTotal

ebl:BasicAmountType
(Optional) Sum of cost of all items in this order.
NOTE:

You must set the currencyID attribute to one of the 3-character currency
codes for any of the supported PayPal currencies.

Character length and limitations: Value is a positive number which cannot exceed
$10,000 USD in any currency. It includes no currency symbol. It must have 2 decimal
places, the decimal separator must be a period (.), and the optional thousands
separator must be a comma (,).
ShippingTotal

ebl:BasicAmountType
(Optional) Total shipping costs for this order.
NOTE:

You must set the currencyID attribute to one of the 3-character currency
codes for any of the supported PayPal currencies.

Character length and limitations: Value is a positive number which cannot exceed
$10,000 USD in any currency. It includes no currency symbol. It must have 2 decimal
places, the decimal separator must be a period (.), and the optional thousands
separator must be a comma (,).
HandlingTotal

ebl:BasicAmountType
(Optional) Total handling costs for this order.
NOTE:

You must set the currencyID attribute to one of the 3-character currency
codes for any of the supported PayPal currencies.

Character length and limitations: Value is a positive number which cannot exceed
$10,000 USD in any currency. It includes no currency symbol. It must have 2 decimal
places, the decimal separator must be a period (.), and the optional thousands
separator must be a comma (,).

SOAP API Developer Reference

August 2012

259

12

Recurring Payments and Reference Transactions API Operations
DoReferenceTransaction API Operation

Field

Description

TaxTotal

ebl:BasicAmountType
(Optional) Sum of tax for all items in this order.
NOTE:

You must set the currencyID attribute to one of the 3-character currency
codes for any of the supported PayPal currencies.

Character length and limitations: Value is a positive number which cannot exceed
$10,000 USD in any currency. It includes no currency symbol. It must have 2 decimal
places, the decimal separator must be a period (.), and the optional thousands
separator must be a comma (,).
OrderDescription

xs:string
(Optional) Description of items the buyer is purchasing.
NOTE:

The value you specify is available only if the transaction includes a purchase.
This field is ignored if you set up a billing agreement for a recurring payment
that is not immediately charged.

Character length and limitations: 127 single-byte alphanumeric characters
Custom

xs:string
(Optional) A free-form field for your own use.
NOTE:

The value you specify is available only if the transaction includes a purchase.
This field is ignored if you set up a billing agreement for a recurring payment
that is not immediately charged.

Character length and limitations: 256 single-byte alphanumeric characters
InvoiceID

xs:string
(Optional) Your own invoice or tracking number.
NOTE:

The value you specify is available only if the transaction includes a purchase.
This field is ignored if you set up a billing agreement for a recurring payment
that is not immediately charged.

Character length and limitations: 256 single-byte alphanumeric characters
ButtonSource

xs:string
(Optional) An identification code for use by third-party applications to identify
transactions.
Character length and limitations: 32 single-byte alphanumeric characters

NotifyURL

xs:string
(Optional) Your URL for receiving Instant Payment Notification (IPN) about this
transaction. If you do not specify this value in the request, the notification URL from
your Merchant Profile is used, if one exists.
I MP O R T ANT :

The notify URL applies only to DoExpressCheckoutPayment.
This value is ignored when set in SetExpressCheckout or
GetExpressCheckoutDetails.

Character length and limitations: 2,048 single-byte alphanumeric characters

260

August 2012

SOAP API Developer Reference

Recurring Payments and Reference Transactions API Operations
DoReferenceTransaction API Operation

Field

Description

ShipToAddress

ns:AddressType
(Optional) Address the order is shipped to.

PaymentDetailsItem

ebl:PaymentDetailsItemType
(Optional) Details about each individual item included in the order.

Recurring

ns:RecurringFlagType
(Optional) Flag to indicate a recurring transaction. It is one of the following values:
 Any value other than Y – This is not a recurring transaction (default).
 Y – This is a recurring transaction.
NOTE:

12

To pass Y in this field, you must have established a billing agreement with the
buyer specifying the amount, frequency, and duration of the recurring
payment.

This field is introduced in version 80.0 of the API.
PaymentDetailsItemType Fields
Field

Description

ItemCategory

ns:ItemCategoryType
Indicates whether the item is digital or physical. For digital goods, this field is
required and you must set it to Digital to get the best rates. It is one of the
following values:
 Digital
 Physical
This field is introduced in version 69.0.

Name

xs:string
Item name. This field is required when you pass a value for ItemCategory.
Character length and limitations: 127 single-byte characters

Description

xs:string
(Optional) Item description.
This field is available since version 53.0.
Character length and limitations: 127 single-byte characters

Amount

ebl:BasicAmountType
Cost of item. This field is required when you pass a value for ItemCategory.
NOTE:

You must set the currencyID attribute to one of the 3-character currency
codes for any of the supported PayPal currencies.

Character length and limitations: Value is a positive number which cannot exceed
$10,000 USD in any currency. It includes no currency symbol. It must have 2 decimal
places, the decimal separator must be a period (.), and the optional thousands
separator must be a comma (,).

SOAP API Developer Reference

August 2012

261

12

Recurring Payments and Reference Transactions API Operations
DoReferenceTransaction API Operation

Field

Description

Number

xs:string
(Optional) Item number.
Character length and limitations: 127 single-byte characters

Quantity

xs:integer
Item quantity. This field is required when you pass a value forItemCategory.
Character length and limitations: Any positive integer

Tax

ebl:BasicAmountType
(Optional) Item sales tax.
NOTE:

You must set the currencyID attribute to one of the 3-character currency
codes for any of the supported PayPal currencies.

Character length and limitations: Value is a positive number which cannot exceed
$10,000 USD in any currency. It includes no currency symbol. It must have 2 decimal
places, the decimal separator must be a period (.), and the optional thousands
separator must be a comma (,).
EbayItemPaymentDetailsItemType Fields

262

Field

Description

ItemNumber

xs:string
(Optional) Auction item number.
Character length: 765 single-byte characters

AuctionTransaction
Id

xs:string
(Optional) Auction transaction identification number.
Character length: 255 single-byte characters

OrderID

xs:string
(Optional) Auction order identification number.
Character length: 64 single-byte characters

August 2012

SOAP API Developer Reference

Recurring Payments and Reference Transactions API Operations
DoReferenceTransaction API Operation

12

ReferenceCreditCardDetailsType Fields
Field

Description

CreditCardType

ebl:CreditCardType
(Optional) Type of credit card. Is one of the following values:
 Visa
 MasterCard
 Discover
 Amex
 Maestro: See note.
For UK, only Maestro, MasterCard, Discover, and Visa are allowable. For
Canada, only MasterCard and Visa are allowable. Interac debit cards are not
supported.
NOTE:

If the credit card type is Maestro, you must set the currencyId to GBP. In
addition, you must specify either StartMonth and StartYear or
IssueNumber.

Character length and limitations: Up to 10 single-byte alphabetic characters
CreditCardNumber

xs:string
(Optional) Credit card number.
Character length and limitations: Numeric characters only with no spaces or
punctutation. The string must conform with modulo and length required by each
credit card type.

ExpMonth

xs:int
(Optional) Credit card expiration month.
Character length and limitations: 2 single-byte numeric characters, including leading
zero

ExpYear

xs:int
(Optional) Credit card expiration year.
Character length and limitations: 4 single-byte numeric characters

CVV2

xs:string
(Optional) Card Verification Value, version 2. To comply with credit card processing
regulations, you must not store this value after a transaction has been completed.
Character length and limitations: For Visa, MasterCard, and Discover, the value is
exactly 3 digits. For American Express, the value is exactly 4 digits.

CardOwner

ns:PayerInfoType
(Optional) Details about the owner of the credit card.

StartMonth

xs:int
(Optional) Month that Maestro card was issued.
Character length and limitations: 2-digit, zero-filled if necessary

SOAP API Developer Reference

August 2012

263

12

Recurring Payments and Reference Transactions API Operations
DoReferenceTransaction API Operation

Field

Description

StartYear

xs:int
(Optional) Year that Maestro card was issued.
Character length and limitations: 4 digits

IssueNumber

xs:string
(Optional) Issue number of Maestro card.
Character length and limitations: 2 numeric digits maximum.

PayerNameType Fields

264

Field

Description

Salutation

xs:string
(Optional) Buyer’s salutation.
Character length and limitations: 20 single-byte characters

FirstName

ebl:PersonNameType
(Optional) Buyer’s first name.
Character length and limitations: 25 single-byte characters

MiddleName

ebl:NameUser
(Optional) Buyer’s middle name.
Character length and limitations: 25 single-byte characters

LastName

ebl:NameType
(Optional) Buyer’s last name.
Character length and limitations: 25 single-byte characters

Suffix

ebl:SuffixType
(Optional) Buyer’s suffix.
Character length and limitations: 12 single-byte characters

August 2012

SOAP API Developer Reference

Recurring Payments and Reference Transactions API Operations
DoReferenceTransaction API Operation

12

DoReferenceTransaction Response Message

NOT E :

Not all fields shown are available for use. Use only the fields described in the
documentation.

SOAP API Developer Reference

August 2012

265

12

Recurring Payments and Reference Transactions API Operations
DoReferenceTransaction API Operation

NOT E :

266

Not all fields shown are available for use. Use only the fields described in the
documentation.

August 2012

SOAP API Developer Reference

Recurring Payments and Reference Transactions API Operations
DoReferenceTransaction API Operation

NOT E :

Not all fields shown are available for use. Use only the fields described in the
documentation.

NOT E :

Not all fields shown are available for use. Use only the fields described in the
documentation.

12

DoReferenceTransaction Response Fields for Express Checkout
Field

Description

PaymentInfo

ns:PaymentInfoType
Information about the payment such as the transaction ID, whether the payment is
instant or delayed, and the settlement amount.

SOAP API Developer Reference

August 2012

267

12

Recurring Payments and Reference Transactions API Operations
DoReferenceTransaction API Operation

Field

Description

AVSCode

xs:string
Address Verification System response code.
Character limit: 1 single-byte alphanumeric character

CVV2Code

xs:string
Result of the CVV2 check by PayPal.

BillingAgreementID

xs:string
Billing agreement identifier returned if the value of ReferenceID in the request is a
billing agreement identification number.

FMFDetails

ebl:FMFDetailsType
Fraud filter details.

PaymentAdviceCode

xs:string
Response code from the processor when a recurring transaction is declined. For
details on the meanings of the codes, see https://merchant.paypal.com/us/cgibin/?&cmd=_render-content&content_ID=merchant/cc_compliance_error_codes
This field is available since version 84.0.

MsgSubId

xs:string
(Optional) A message ID used for idempotence to uniquely identify a message. This
ID can later be used to request the latest results for a previous request without
generating a new request. Examples of this include requests due to timeouts or errors
during the original request.
Character length and limitations: string of up to 38 single-byte characters.
This field is available since version 92.0.
PaymentInfoType Fields

268

Field

Description

TransactionID

xs:string
Unique transaction ID of the payment.
Character length and limitations: 17 single-byte characters

August 2012

SOAP API Developer Reference

Recurring Payments and Reference Transactions API Operations
DoReferenceTransaction API Operation

Field

Description

ParentTransactionID

xs:string
Parent or related transaction identification number. This value in this field is for the
following transaction types:
 Reversal – Capture of an authorized transaction.
 Reversal – Reauthorization of a transaction.
 Capture of an order – The value of ParentTransactionID is the original
OrderID.
 Authorization of an order – The value of ParentTransactionID is the original
OrderID.
 Capture of an order authorization.
 Void of an order – The value of ParentTransactionID is the original
OrderID.

12

Character length and limitations: 16 digits
ReceiptID

xs:string
Receipt identification number
Character length and limitations: 16 digits in xxxx-xxxx-xxxx-xxxx format

TransactionType

ns:PaymentTransactionCodeType
The type of transaction. It is one of the following values:
 cart
 express-checkout
Character length and limitations:15 single-byte characters

PaymentType

ebl:PaymentCodeType
Indicates whether the payment is instant or delayed. It is one of the following values:
 none
 echeck
 instant
Character length and limitations: 7 single-byte characters

PaymentDate

xs:dateTime
Time/date stamp of payment,
Character length and limitations: Date and time are in UTC/GMTformat, for
example, 2011-06-24T05:38:48Z

GrossAmount

ebl:BasicAmountType
The final amount charged, including any shipping and taxes from your Merchant
Profile.
Character length and limitations: Value is a positive number which cannot exceed
$10,000 USD in any currency. It includes no currency symbol. It must have 2 decimal
places, the decimal separator must be a period (.), and the optional thousands
separator must be a comma (,).

SOAP API Developer Reference

August 2012

269

12

270

Recurring Payments and Reference Transactions API Operations
DoReferenceTransaction API Operation

Field

Description

FeeAmount

ebl:BasicAmountType
PayPal fee amount charged for the transaction.
Character length and limitations: Value is a positive number which cannot exceed
$10,000 USD in any currency. It includes no currency symbol. It must have 2 decimal
places, the decimal separator must be a period (.), and the optional thousands
separator must be a comma (,).

SettleAmount

ebl:BasicAmountType
Amount deposited in your PayPal account after a currency conversion.
Character length and limitations: Value is a positive number which cannot exceed
$10,000 USD in any currency. It includes no currency symbol. It must have 2 decimal
places, the decimal separator must be a period (.), and the optional thousands
separator must be a comma (,).

TaxAmount

ebl:BasicAmountType
Tax charged on the transaction.
Character length and limitations: Value is a positive number which cannot exceed
$10,000 USD in any currency. It includes no currency symbol. It must have 2 decimal
places, the decimal separator must be a period (.), and the optional thousands
separator must be a comma (,).

ExchangeRate

xs:string
Exchange rate if a currency conversion occurred. Relevant only if your are billing in
their non-primary currency. If the buyer chooses to pay with a currency other than the
non-primary currency, the conversion occurs in the buyer’s account.
Character length and limitations: Decimal value that does not exceed 17 characters,
including decimal point

August 2012

SOAP API Developer Reference

Recurring Payments and Reference Transactions API Operations
DoReferenceTransaction API Operation

Field

Description

PaymentStatus

ebl:PaymentStatusCodeType
Status of the payment. It is one of the following values:
 None – No status
 Canceled-Reversal– A reversal has been canceled, for example, when you
win a dispute and the funds for the reversal have been returned to you.
 Completed – The payment has been completed, and the funds have been added
successfully to your account balance.
 Denied – You denied the payment. This happens only if the payment was
previously pending because of possible reasons described for the
PendingReason element.
 Expired – The authorization period for this payment has been reached.
 Failed – The payment has failed. This happens only if the payment was made
from your buyer’s bank account.
 In-Progress – The transaction has not terminated, for example, an
authorization may be awaiting completion.
 Partially-Refunded – The payment has been partially refunded.
 Pending – The payment is pending. See the PendingReason field for more
information.
 Refunded – You refunded the payment.
 Reversed – A payment was reversed due to a chargeback or other type of
reversal. The funds have been removed from your account balance and returned to
the buyer. The reason for the reversal is specified in the ReasonCode element.
 Processed – A payment has been accepted.
 Voided – An authorization for this transaction has been voided.

SOAP API Developer Reference

August 2012

12

271

12

Recurring Payments and Reference Transactions API Operations
DoReferenceTransaction API Operation

Field

Description

PendingReason

ebl:PendingStatusCodeType
The reason the payment is pending. It is one of the following values:
 none – No pending reason.
 address – The payment is pending because your buyer did not include a
confirmed shipping address and your Payment Receiving Preferences is set such
that you want to manually accept or deny each of these payments. To change your
preference, go to the Preferences section of your Profile.
 authorization – The payment is pending because it has been authorized but
not settled. You must capture the funds first.
 echeck – The payment is pending because it was made by an eCheck that has not
yet cleared.
 intl – The payment is pending because you hold a non-U.S. account and do not
have a withdrawal mechanism. You must manually accept or deny this payment
from your Account Overview.
 multi-currency – You do not have a balance in the currency sent, and you do
not have your Payment Receiving Preferences set to automatically
convert and accept this payment. You must manually accept or deny this payment.
 order – The payment is pending because it is part of an order that has been
authorized but not settled.
 paymentreview – The payment is pending while it is being reviewed by PayPal
for risk.
 unilateral – The payment is pending because it was made to an email address
that is not yet registered or confirmed.
 verify –The payment is pending because you are not yet verified. You must
verify your account before you can accept this payment.
 other – The payment is pending for a reason other than those listed above. For
more information, contact PayPal Customer Service.
NOTE:

ReasonCode

272

PendingReason is returned in the response only if PaymentStatus is
Pending.

ebl:ReasonCodeType
The reason for a reversal if the transaction type is reversal. It is one of the following
values:
 none – No reason code.
 chargeback – A reversal has occurred on this transaction due to a chargeback by
your buyer.
 guarantee – A reversal has occurred on this transaction due to your buyer
triggering a money-back guarantee.
 buyer-complaint – A reversal has occurred on this transaction due to a
complaint about the transaction from your buyer.
 refund – A reversal has occurred on this transaction because you have given the
buyer a refund.
 other – A reversal has occurred on this transaction due to a reason not listed
above.

August 2012

SOAP API Developer Reference

Recurring Payments and Reference Transactions API Operations
DoReferenceTransaction API Operation

Field

Description

ProtectionEligibili
ty

xs:string
Prior to version 64.4, the kind of seller protection in force for the transaction. It is one
of the following values:
 Eligible – Merchant is protected by PayPal's Seller Protection Policy for
Unauthorized Payments and Item Not Received.
 PartiallyEligible – Merchant is protected by PayPal's Seller Protection
Policy for Item Not Received.
 Ineligible – Merchant is not protected under the Seller Protection Policy.

ProtectionEligibili
tyType

xs:string
Since version 64.4, the kind of seller protection in force for the transaction. It is one
of the following values:
 Eligible – Merchant is protected by PayPal's Seller Protection Policy for both
Unauthorized Payment and Item Not Received.
 ItemNotReceivedEligible – Merchant is protected by PayPal's Seller
Protection Policy for Item Not Received.
 UnauthorizedPaymentEligible – Merchant is protected by PayPal's Seller
Protection Policy for Unauthorized Payment.
 Ineligible – Merchant is not protected under the Seller Protection Policy.

12

This field is introduced in API version 64.4.
StoreId

xs:string
StoreId as entered in the transaction.

TerminalId

xs:string
TerminalId as entered in the transaction.

FMFDetailsType Fields
Field

Description

AcceptFilters

xs:RiskFilterListType
List of filters that recommend acceptance of the payment.

DenyFilters

xs:RiskFilterListType
List of filters that recommend denial of the payment.

PendingFilters

xs:RiskFilterListType
List of filters that caused the payment to become pending.

ReportsFilters

xs:RiskFilterListType
List of filters that caused the payment to become flagged.

SOAP API Developer Reference

August 2012

273

12

Recurring Payments and Reference Transactions API Operations
DoReferenceTransaction API Operation

RiskFilterListType Fields

274

Field

Description

ID

xs:int
Filter ID. It is one of the following values:
 1 - AVS No Match
 2 - AVS Partial Match
 3 - AVS Unavailable/Unsupported
 4 - Card Security Code (CSC) Mismatch
 5 - Maximum Transaction Amount
 6 - Unconfirmed Address
 7 - Country Monitor
 8 - Large Order Number
 9 - Billing/Shipping Address Mismatch
 10 - Risky ZIP Code
 11 - Suspected Freight Forwarder Check
 12 - Total Purchase Price Minimum
 13 - IP Address Velocity
 14 - Risky Email Address Domain Check
 15 - Risky Bank Identification Number (BIN) Check
 16 - Risky IP Address Range
 17 - PayPal Fraud Model

Name

xs:string
Filter name.

Description

xs:string
Filter description.

August 2012

SOAP API Developer Reference

13

RefundTransaction API Operation

The RefundTransaction API operation issues a refund to the PayPal account holder associated
with a transaction.

RefundTransaction Request Message

SOAP API Developer Reference

August 2012

275

13

RefundTransaction API Operation
RefundTransaction Request Message
NOT E :

Not all fields shown are available for use. Use only the fields described in the
documentation.

RefundTransaction Request Fields
Field

Description

TransactionID

xs:string
(Required) Unique identifier of the transaction to be refunded.
Character length and limitations: 17 single-byte alphanumeric characters

InvoiceID

xs:string
(Optional) Your own invoice or tracking number.
Character length and limitations: 127 single-byte alphanumeric characters

RefundType

ebl:RefundPurposeTypeCodeType
Type of refund you are making. It is one of the following values:
 Full – Full refund (default).
 Partial – Partial refund.
 ExternalDispute – External dispute. (Value available since version 82.0)
 Other – Other type of refund. (Value available since version 82.0)

Amount

ebl:BasicAmountType
(Optional) Refund amount. The amount is required if RefundType is Partial.
NOTE:

If RefundType is Full, do not set the amount.

Character length and limitations: Value is a positive number which cannot exceed
$10,000 USD in any currency. It includes no currency symbol. It must have 2 decimal
places, the decimal separator must be a period (.), and the optional thousands
separator must be a comma (,).
Memo

xs:string
(Optional) Custom memo about the refund.
Character length and limitations: 255 single-byte alphanumeric characters

RetryUntil

xs:dateTime
(Optional) Maximum time until you must retry the refund.
NOTE:

This field does not apply to point-of-sale transactions.

This field is available since version 82.0.

276

August 2012

SOAP API Developer Reference

RefundTransaction API Operation
RefundTransaction Request Message

Field

Description

RefundSource

ebl:RefundSourceCodeType
(Optional)Type of PayPal funding source (balance or eCheck) that can be used for
auto refund. It is one of the following values:
 any – The merchant does not have a preference. Use any available funding
source.
 default – Use the merchant’s preferred funding source, as configured in the
merchant’s profile.
 instant – Use the merchant’s balance as the funding source.
 eCheck – The merchant prefers using the eCheck funding source. If the
merchant’s PayPal balance can cover the refund amount, use the PayPal balance.
NOTE:

13

This field does not apply to point-of-sale transactions.

This field is available since version 82.0.
MerchantStoreDetail
s

ns:MerchantStoreDetailsType
(Optional) Information about the merchant store.
This field is available since version 82.0.

RefundAdvice

xs:boolean
(Optional) Flag to indicate that the buyer was already given store credit for a given
transaction. It is one of the following values:
 true – The buyer was already given store credit for a given transaction.
 false – The buyer was not given store credit for a given transaction.
This field is available since version 85.0.

RefundItemDetails

ebl:InvoiceItemType
(Optional) Details about the individual items to be returned.

MsgSubId

xs:string
(Optional) A message ID used for idempotence to uniquely identify a message. This
ID can later be used to request the latest results for a previous request without
generating a new request. Examples of this include requests due to timeouts or errors
during the original request.
Character length and limitations: string of up to 38 single-byte characters.
This field is available since version 92.0.

MerchantStoreDetailsTypeFields
Field

Description

StoreID

xs:string
Identifier of the merchant store at which the refund is given. This field is
required for point-of-sale transactions.
Character length and limitations: 50 single-byte characters
This field is available since version 82.0.

SOAP API Developer Reference

August 2012

277

13

RefundTransaction API Operation
RefundTransaction Response Message

Field

Description

TerminalID

xs:string
(Optional) ID of the terminal.
Character length and limitations: 50 single-byte characters
This field is available since version 82.0.

RefundTransaction Response Message

NOT E :

Not all fields shown are available for use. Use only the fields described in the
documentation.

RefundTransaction Response Fields

278

Field

Description

RefundTransactionID

xs:string
Unique transaction ID of the refund.
Character length and limitations:17 single-byte characters

August 2012

SOAP API Developer Reference

RefundTransaction API Operation
RefundTransaction Response Message

Field

Description

FeeRefundAmount

ebl:BasicAmountType
Transaction fee refunded to original recipient of payment.
Character length and limitations: Value is a positive number which cannot exceed
$10,000 USD in any currency. It includes no currency symbol. It must have 2 decimal
places, the decimal separator must be a period (.), and the optional thousands
separator must be a comma (,).

GrossRefundAmount

ebl:BasicAmountType
Amount refunded to the original payer. Say, for example, a buyer makes $100
purchase, the buyer was refunded $20 a week ago and is refunded $30 in this
transaction. The gross refund amount is $30 (in this transaction).
Character length and limitations: Value is a positive number which cannot exceed
$10,000 USD in any currency. It includes no currency symbol. It must have 2 decimal
places, the decimal separator must be a period (.), and the optional thousands
separator must be a comma (,).

NetRefundAmount

ebl:BasicAmountType
Amount subtracted from PayPal balance of the original recipient of payment, to make
this refund.
Character length and limitations: Value is a positive number which cannot exceed
$10,000 USD in any currency. It includes no currency symbol. It must have 2 decimal
places, the decimal separator must be a period (.), and the optional thousands
separator must be a comma (,).

TotalRefundedAmount

ebl:BasicAmountType
Total amount refunded so far from the original purchase. Say, for example, a buyer
makes $100 purchase, the buyer was refunded $20 a week ago and is refunded $30 in
this transaction. The gross refund amount is $30 (in this transaction). The total
refunded amount is $50.
Character length and limitations: Value is a positive number which cannot exceed
$10,000 USD in any currency. It includes no currency symbol. It must have 2 decimal
places, the decimal separator must be a period (.), and the optional thousands
separator must be a comma (,).
This field is available since version 67.0.

RefundInfo

ebl:RefundInfoType
Contains refund payment status information.
This field is available since version 84.0.

MsgSubId

xs:string
(Optional) A message ID used for idempotence to uniquely identify a message. This
ID can later be used to request the latest results for a previous request without
generating a new request. Examples of this include requests due to timeouts or errors
during the original request.
Character length and limitations: string of up to 38 single-byte characters.
This field is available since version 92.0.

SOAP API Developer Reference

August 2012

13

279

13

RefundTransaction API Operation
RefundTransaction Response Message

RefundInfoType Fields
Field

Description

RefundStatus

ns:PaymentStatusCodeType
Status of the refund. It is one of the following values:
 instant
 delayed
This field is available since version 84.0.

PendingReason

xs:PendingStatusCodeType
Reason that the refund payment status is delayed. It is one of the following values:
 none – The refund status is instant.
 echeck – The refund status is delayed.
This field is available since version 84.0.

280

August 2012

SOAP API Developer Reference

14

TransactionSearch API Operation

The TransactionSearch API searches transaction history for transactions that meet the
specified criteria.
NOT E :

The maximum number of transactions that can be returned from a TransactionSearch
API call is 100.

TransactionSearch Request Message

NOT E :

Not all fields shown are available for use. Use only the fields described in the
documentation.

SOAP API Developer Reference

August 2012

281

14

TransactionSearch API Operation
TransactionSearch Request Message

TransactionSearch Request Fields
Field

Description

StartDate

xs:dateTime
(Required) The earliest transaction date at which to start the search.
Character length and limitations: No wildcards are allowed. The value must be in
UTC/GMT.

EndDate

xs:dateTime
(Optional) The latest transaction date to be included in the search.
Character length and limitations: No wildcards are allowed. The value must be in
UTC/GMT.

Payer

xs:string
ebl:EmailAddressType
(Optional) Search by the buyer’s email address.
Character length and limitations: 127 single-byte alphanumeric characters

Receiver

ebl:EmailAddressType
(Optional) Search by the receiver’s email address. If the merchant account has only
one email address, this is the primary email. It can also be a non-primary email
address.

ReceiptID

xs:string
(Optional) Search by the PayPal Account Optional receipt ID. This field is not
applicable to point-of-sale transactions.

TransactionID

ebl:TransactionID
(Optional) Search by the transaction ID. The returned results are from the merchant’s
transaction records.
Character length and limitations: 19 single-byte characters maximum

InvoiceID

xs:string
(Optional) Search by invoice identification key, as set by you for the original
transaction. This field searches the records for items the merchant sells.
Character length and limitations: 127 single-byte characters maximum with no
wildcards allowed

CardNumber

xs:string
(Optional) Search by credit card number, as set by you for the original transaction.
This field searches the records for items the merchant sells. The field is not applicable
to point-of-sale.
NOTE:

No wildcards are allowed.

Character length and limitations: Must be at least 11 and no more than 25 single-byte
numeric characters maximum. Special punctuation, such as dashes or spaces, is
ignored.
PayerName

282

ebl:PersonNameType
(Optional) Search by the buyer’s name.

August 2012

SOAP API Developer Reference

TransactionSearch API Operation
TransactionSearch Request Message

Field

Description

AuctionItemNumber

xs:string
(Optional) Search by auction item number of the purchased goods. This field is not
applicable to point-of-sale.

TransactionClass

ePaymentTransactionClassCodeType
(Optional) Search by classification of transaction. Some kinds of possible classes of
transactions are not searchable with this field. You cannot search for bank transfer
withdrawals, for example. It is one of the following values:
 All – All transaction classifications
 Sent – Only payments sent
 Received – Only payments received
 MassPay – Only mass payments
 MoneyRequest – Only money requests
 FundsAdded – Only funds added to balance
 FundsWithdrawn – Only funds withdrawn from balance
 Referral – Only transactions involving referrals
 Fee – Only transactions involving fees
 Subscription – Only transactions involving subscriptions
 Dividend – Only transactions involving dividends
 Billpay – Only transactions involving BillPay Transactions
 Refund – Only transactions involving funds
 CurrencyConversions – Only transactions involving currency conversions
 BalanceTransfer – Only transactions involving balance transfers
 Reversal – Only transactions involving BillPay reversals
 Shipping – Only transactions involving UPS shipping fees
 BalanceAffecting – Only transactions that affect the account balance
 ECheck – Only transactions involving eCheck

Amount

ebl:BasicAmountType
(Optional) Search by transaction amount.
NOTE:

14

You must set the currencyID attribute to one of the 3-character currency
codes for any of the supported PayPal currencies.

Character length and limitations: Value is a positive number which cannot exceed
$10,000 USD in any currency. It includes no currency symbol. It must have 2 decimal
places, the decimal separator must be a period (.), and the optional thousands
separator must be a comma (,).
CurrencyCode

SOAP API Developer Reference

xs:token
(Optional) Search by 3-character, ISO 4217 currency code.

August 2012

283

14

TransactionSearch API Operation
TransactionSearch Request Message

Field

Description

Status

ebl:PaymentTransactionStatusCodeType
(Optional) Search by transaction status. It is one of the following values:
 Pending – The payment is pending. The specific reason the payment is pending
is returned by the GetTransactionDetails API PendingReason field.
 Processing – The payment is being processed.
 Success – The payment has been completed and the funds have been added
successfully to your account balance.
 Denied – You denied the payment. This happens only if the payment was
previously pending.
 Reversed – A payment was reversed due to a chargeback or other type of
reversal. The funds have been removed from your account balance and returned to
the buyer.

ProfileID

xs:string
(Optional) An alphanumeric string (generated by PayPal) that uniquely identifies a
recurring profile. You can specify the Profile ID in the TransactionSearch API
operation to obtain all payments associated with the identified profile.

PayerName Fields

284

Field

Description

Salutation

xs:string
(Optional) Buyer’s salutation.
Character length and limitations: 20 single-byte characters

FirstName

ebl:PersonNameType
(Optional) Buyer’s first name.
Character length and limitations: 25 single-byte characters

MiddleName

ebl:NameUser
(Optional) Buyer’s middle name.
Character length and limitations: 25 single-byte characters

LastName

ebl:NameType
(Optional) Buyer’s last name.
Character length and limitations: 25 single-byte characters

Suffix

ebl:SuffixType
(Optional) Buyer’s suffix.
Character length and limitations: 12 single-byte characters

August 2012

SOAP API Developer Reference

TransactionSearch API Operation
TransactionSearch Response Message

14

TransactionSearch Response Message

NOT E :

Not all fields shown are available for use. Use only the fields described in the
documentation.

NOT E :

Not all fields shown are available for use. Use only the fields described in the
documentation.

TransactionSearch Response Fields
Field

Description

Timestamp

xs:dateTime
Date and time in UTC/GMT that the transaction occurred.

SOAP API Developer Reference

August 2012

285

14

286

TransactionSearch API Operation
TransactionSearch Response Message

Field

Description

Timezone

xs:string
Time zone of the transaction. The value is always GMT.

Type

xs:string
Type of the transaction. It is one of the following values:
 Currency Conversion (credit)
 Currency Conversion (debit)
 Payment
 Recurring Payment
 Temporary Hold
 Transfer
 Donation

Payer

ebl:EmailAddressType
Email address of either the buyer or the payment recipient (the “payee”). If the
payment amount is positive, this field is the recipient of the funds. If the payment is
negative, this field is the paying buyer.

PayerDisplayName

xs:string
Display name of the buyer.

TransactionID

xs:string
Merchant’s transaction ID.

Status

xs:string
The status of the transaction.

GrossAmount

ebl:BasicAmountType
The total gross amount charged, including any profile shipping cost and taxes.

FeeAmount

ebl:BasicAmountType
The fee that PayPal charged for the transaction.

NetAmount

ebl:BasicAmountType
The net amount of the transaction.

August 2012

SOAP API Developer Reference

A

API Error Codes

The PayPal API can return multiple errors for any operation.

General API Errors
General API Errors
Error
Code

Short Message

Long Message

Correcting This Error

10002

Authentication/Authoriza
tion Failed

Username/Password is incorrect

This error can be caused by an incorrect
API username, an incorrect API
password, or an invalid API signature.
Make sure that all three of these values
are correct. For your security, PayPal
does not report exactly which of these
three values might be in error.

10002

Authentication/Authoriza
tion Failed

You do not have permission to
make this API call

10002

Authentication/Authoriza
tion Failed

Account is locked or inactive

10002

Internal Error

Internal Error

10002

Authentication/Authoriza
tion Failed

Internal Error

10002

Authentication/Authoriza
tion Failed

Account is not verified

10002

Authentication/Authoriza
tion Failed

This call is not defined in the
database!

10002

Authentication/Authoriza
tion Failed

Token is not valid

10002

Restricted account

Account is restricted

10002

Authentication/Authoriza
tion Failed

API access is disabled for this
account

SOAP API Developer Reference

August 2012

Your PayPal merchant account has been
restricted. Contact your PayPal account
manager for resolution.

287

A

API Error Codes
Validation Errors

Error
Code

Short Message

Long Message

Correcting This Error

10002

Authentication/Authoriza
tion Failed

Client certificate is disabled

10006

Version error

Version is not supported

10008

Security error

Security header is not valid

10101

This API Temporarily
Unavailable

This API is temporarily
unavailable. Please try later.

Validation Errors
Validation Errors

288

Error Code

Short Message

Long Message

81000

Missing Parameter

Required Parameter Missing : Unable to identify
parameter

81001

Invalid Parameter

A Parameter is Invalid : Unable to identify parameter

81002

Unspecified Method

Method Specified is not Supported

81003

Unspecified Method

No Method Specified

81004

Unspecified Method

No Request Received

81100

Missing Parameter

OrderTotal (Amt) : Required parameter missing

81101

Missing Parameter

MaxAmt : Required parameter missing

81102

Missing Parameter

ReturnURL: Required parameter missing

81103

Missing Parameter

NotifyURL : Required parameter missing

81104

Missing Parameter

CancelURL : Required parameter missing

81105

Missing Parameter

ShipToStreet : Required parameter missing

81106

Missing Parameter

ShipToStreet2 : Required parameter missing

81107

Missing Parameter

ShipToCity : Required parameter missing

81108

Missing Parameter

ShipToState : Required parameter missing

81109

Missing Parameter

ShipToZip : Required parameter missing

81110

Missing Parameter

Country : Required parameter missing

81111

Missing Parameter

ReqConfirmShipping : Required parameter missing

81112

Missing Parameter

NoShipping : Required parameter missing

81113

Missing Parameter

AddrOverride : Required parameter missing

August 2012

SOAP API Developer Reference

API Error Codes
Validation Errors

Error Code

Short Message

Long Message

81114

Missing Parameter

LocaleCode : Required parameter missing

81115

Missing Parameter

PaymentAction : Required parameter missing

81116

Missing Parameter

Email : Required parameter missing

81117

Missing Parameter

Token : Required parameter missing

81118

Missing Parameter

PayerID : Required parameter missing

81119

Missing Parameter

ItemAmt : Required parameter missing

81120

Missing Parameter

ShippingAmt : Required parameter missing

81121

Missing Parameter

HandlingAmt : Required parameter missing

81122

Missing Parameter

TaxAmt : Required parameter missing

81123

Missing Parameter

IPAddress : Required parameter missing

81124

Missing Parameter

ShipToName : Required parameter missing

81125

Missing Parameter

L_Amt : Required parameter missing

81126

Missing Parameter

Amt : Required parameter missing

81127

Missing Parameter

L_TaxAmt : Required parameter missing

81128

Missing Parameter

AuthorizationID : Required parameter missing

81129

Missing Parameter

CompleteType : Required parameter missing

81130

Missing Parameter

CurrencyCode : Required parameter missing

81131

Missing Parameter

TransactionID : Required parameter missing

81132

Missing Parameter

TransactionEntity : Required parameter missing

81133

Missing Parameter

Acct : Required parameter missing

81134

Missing Parameter

ExpDate : Required parameter missing

81135

Missing Parameter

FirstName : Required parameter missing

81136

Missing Parameter

LastName : Required parameter missing

81137

Missing Parameter

Street : Required parameter missing

81138

Missing Parameter

Street2 : Required parameter missing

81139

Missing Parameter

City : Required parameter missing

81140

Missing Parameter

State : Required parameter missing

81141

Missing Parameter

Zip : Required parameter missing

81142

Missing Parameter

CountryCode : Required parameter missing

81143

Missing Parameter

RefundType : Required parameter missing

81144

Missing Parameter

StartDate : Required parameter missing

SOAP API Developer Reference

August 2012

A

289

A

290

API Error Codes
Validation Errors

Error Code

Short Message

Long Message

81145

Missing Parameter

EndDate : Required parameter missing

81146

Missing Parameter

MPID : Required parameter missing

81147

Missing Parameter

CreditCardType : Required parameter missing

81148

Missing Parameter

User : Required parameter missing

81149

Missing Parameter

Pwd : Required parameter missing

81150

Missing Parameter

Version : Required parameter missing

81200

Missing Parameter

Amt : Invalid parameter

81201

Invalid Parameter

MaxAmt : Invalid parameter

81203

Invalid Parameter

NotifyURL : Invalid parameter

81205

Invalid Parameter

ShipToStreet : Invalid parameter

81206

Invalid Parameter

ShipToStreet2 : Invalid parameter

81207

Invalid Parameter

ShipToCity : Invalid parameter

81208

Invalid Parameter

ShipToState : Invalid parameter

81209

Invalid Parameter

ShipToZip : Invalid parameter

81210

Invalid Parameter

Country : Invalid parameter

81211

Invalid Parameter

ReqConfirmShipping : Invalid parameter

81212

Invalid Parameter

Noshipping : Invalid parameter

81213

Invalid Parameter

AddrOverride : Invalid parameter

81214

Invalid Parameter

LocaleCode : Invalid parameter

81215

Invalid Parameter

PaymentAction : Invalid parameter

81219

Invalid Parameter

ItemAmt : Invalid parameter

81220

Invalid Parameter

ShippingAmt : Invalid parameter

81221

Invalid Parameter

HandlingTotal Amt : Invalid parameter

81222

Invalid Parameter

TaxAmt : Invalid parameter

81223

Invalid Parameter

IPAddress : Invalid parameter

81224

Invalid Parameter

ShipToName : Invalid parameter

81225

Invalid Parameter

L_Amt : Invalid parameter

81226

Invalid Parameter

Amt : Invalid parameter

81227

Invalid Parameter

L_TaxAmt : Invalid parameter

81229

Invalid Parameter

CompleteType : Invalid parameter

81230

Invalid Parameter

CurrencyCode : Invalid parameter

August 2012

SOAP API Developer Reference

API Error Codes
DirectPayment API Errors

Error Code

Short Message

Long Message

81232

Invalid Parameter

TransactionEntity : Invalid parameter

81234

Invalid Parameter

ExpDate : Invalid parameter

81235

Invalid Parameter

FirstName : Invalid parameter

81236

Invalid Parameter

LastName : Invalid parameter

81237

Invalid Parameter

Street : Invalid parameter

81238

Invalid Parameter

Street2 : Invalid parameter

81239

Invalid Parameter

City : Invalid parameter

81243

Invalid Parameter

RefundType : Invalid parameter

81244

Invalid Parameter

StartDate : Invalid parameter

81245

Invalid Parameter

EndDate : Invalid parameter

81247

Invalid Parameter

CreditCardType : Invalid parameter

81248

Invalid Parameter

Username : Invalid parameter

81249

Invalid Parameter

Password : Invalid parameter

81250

Invalid Parameter

Version : Invalid parameter

81251

Internal Error

Internal Service Error

99998

Transaction refused because of an
invalid argument. See additional
error messages for details.

Currency is not supported

A

DirectPayment API Errors
DirectPayment API Errors
Error
Code

Short Message

Long Message

10102

PaymentAction of Order
Temporarily Unavailable

PaymentAction of Order is
temporarily unavailable. Please
try later or use other
PaymentAction.

10401

Transaction refused
Order total is missing.
because of an invalid
argument. See additional
error messages for details.

SOAP API Developer Reference

August 2012

Corrective Action

291

A

API Error Codes
DirectPayment API Errors

Error
Code

292

Short Message

Long Message

Corrective Action

10418

Transaction refused
The currencies of the shopping
because of an invalid
cart amounts must be the same.
argument. See additional
error messages for details.

10426

Transaction refused
Item total is invalid.
because of an invalid
argument. See additional
error messages for details.

10427

Transaction refused
Shipping total is invalid.
because of an invalid
argument. See additional
error messages for details.

10428

Transaction refused
Handling total is invalid.
because of an invalid
argument. See additional
error messages for details.

10429

Transaction refused
Tax total is invalid.
because of an invalid
argument. See additional
error messages for details.

10432

Invalid argument

Invoice ID value exceeds
maximum allowable length.

10485

Payment not authorized

Payment has not been authorized
by the user.

10500

Invalid Configuration

This transaction cannot be
processed due to an invalid
merchant configuration.

Occurs when you have not agreed to the
billing agreement.

10501

Invalid Configuration

This transaction cannot be
processed due to an invalid
merchant configuration.

Occurs when the billing agreement is
disabled or inactive.

10502

Invalid Data

This transaction cannot be
processed. Please use a valid
credit card.

The credit card used is expired.

10504

Invalid Data

This transaction cannot be
processed. Please enter a valid
Credit Card Verification Number.

The CVV provided is invalid. The CVV
is between 3-4 digits long.

10505

Gateway Decline

This transaction cannot be
processed.

The transaction was refused because the
AVS response returned the value of N,
and the merchant account is not able to
accept such transactions.

August 2012

SOAP API Developer Reference

API Error Codes
DirectPayment API Errors

Error
Code

Short Message

Long Message

Corrective Action

10507

Invalid Configuration

This transaction cannot be
processed. Please contact PayPal
Customer Service.

Your PayPal account is restricted.
Contact PayPal for more information.

10508

Invalid Data

This transaction cannot be
processed. Please enter a valid
credit card expiration date.

The expiration date must be a two-digit
month and four-digit year.

10509

Invalid Data

This transaction cannot be
processed.

You must submit an IP address of the
buyer with each API call.

10510

Invalid Data

The credit card type is not
supported. Try another card type.

The credit card type entered is not
currently supported by PayPal.

10511

Invalid Data

This transaction cannot be
processed.

The merchant selected a value for the
PaymentAction field that is not
supported.

10512

Invalid Data

This transaction cannot be
processed. Please enter a first
name.

The first name of the buyer is required
for this merchant.

10513

Invalid Data

This transaction cannot be
processed. Please enter a last
name.

The last name of the buyer is required
for this merchant.

10519

Invalid Data

Please enter a credit card.

The credit card field was blank.

10520

Invalid Data

This transaction cannot be
processed.

The total amount and item amounts do
not match.

10521

Invalid Data

This transaction cannot be
processed. Please enter a valid
credit card.

The credit card entered is invalid.

10523

Internal Error

This transaction cannot be
processed.

None. This is a PayPal internal error.

10525

Invalid Data

This transaction cannot be
processed. The amount to be
charged is zero.

The merchant entered an amount of zero.

10526

Invalid Data

This transaction cannot be
processed. The currency is not
supported at this time.

The currency code entered is not
supported.

10527

Invalid Data

This transaction cannot be
processed. Please enter a valid
credit card number and type.

The credit card entered is invalid.

10534

Gateway Decline

This transaction cannot be
processed. Please enter a valid
credit card number and type.

The credit card entered is currently
restricted by PayPal. Contact PayPal for
more information.

SOAP API Developer Reference

August 2012

A

293

A

294

API Error Codes
DirectPayment API Errors

Error
Code

Short Message

Long Message

Corrective Action

10535

Gateway Decline

This transaction cannot be
processed. Please enter a valid
credit card number and type.

The credit card entered is invalid.

10536

Invalid Data

This transaction cannot be
processed.

The merchant entered an invoice ID that
is already associated with a transaction
by the same merchant. By default, the
invoice ID must be unique for all
transactions. To change this setting, log
into PayPal or contact customer service.

10537

Filter Decline

This transaction cannot be
processed.

The transaction was declined by the
country filter managed by the merchant.
To accept this transaction, change your
risk settings on PayPal.

10538

Filter Decline

This transaction cannot be
processed.

The transaction was declined by the
maximum amount filter managed by the
merchant. To accept this transaction,
change your risk settings on PayPal.

10539

Filter Decline

This transaction cannot be
processed.

The transaction was declined by PayPal.
Contact PayPal for more information.

10540

Invalid Data

The transaction cannot be
processed due to an invalid
address.

The transaction was declined by PayPal
because of an invalid address.

10541

Gateway Decline

This transaction cannot be
processed. Please enter a valid
credit card number and type.

The credit card entered is currently
restricted by PayPal. Contact PayPal for
more information.

10542

Invalid Data

This transaction cannot be
processed. Please enter a valid
email address.

The email address provided by the buyer
is in an invalid format.

10544

Gateway Decline

This transaction cannot be
processed.

The transaction was declined by PayPal.
Contact PayPal for more information.

10545

Gateway Decline

This transaction cannot be
processed.

The transaction was declined by PayPal
because of possible fraudulent activity.
Contact PayPal for more information.

10546

Gateway Decline

This transaction cannot be
processed.

The transaction was declined by PayPal
because of possible fraudulent activity
on the IP address. Contact PayPal for
more information.

10547

Internal Error

This transaction cannot be
processed.

None. This is a PayPal internal error.

August 2012

SOAP API Developer Reference

API Error Codes
DirectPayment API Errors

Error
Code

Short Message

Long Message

Corrective Action

10548

Invalid Configuration

This transaction cannot be
processed. The merchant’s
account is not able to process
transactions.

The merchant account attempting the
transaction is not a business account at
PayPal. Check your account settings.

10549

Invalid Configuration

This transaction cannot be
processed. The merchan’s
account is not able to process
transactions.

The merchant account attempting the
transaction is not able to process Direct
Payment transactions. Contact PayPal
for more information.

10550

Invalid Configuration

This transaction cannot be
processed.

Access to Direct Payment was disabled
for your account. Contact PayPal for
more information.

10552

Invalid Configuration

This transaction cannot be
processed.

The merchant account attempting the
transaction does not have a confirmed
email address with PayPal. Check your
account settings.

10553

Gateway Decline

This transaction cannot be
processed.

The merchant attempted a transaction
where the amount exceeded the upper
limit for that merchant.

10554

Filter Decline

This transaction cannot be
processed.

The transaction was declined because of
a merchant risk filter for AVS.
Specifically, the merchant has set to
decline transaction when the AVS
returned a no match (AVS = N).

10555

Filter Decline

This transaction cannot be
processed.

The transaction was declined because of
a merchant risk filter for AVS.
Specifically, the merchant has set the
filter to decline transactions when the
AVS returns a partial match.

10556

Filter Decline

This transaction cannot be
processed.

The transaction was declined because of
a merchant risk filter for AVS.
Specifically, the merchant has set the
filter to decline transactions when the
AVS is unsupported.

10561

Invalid Data

There’s an error with this
transaction. Please enter
complete billing address.

10562

Invalid Data

This transaction cannot be
processed. Please enter a valid
credit card expiration year.

10563

Invalid Data

This transaction cannot be
processed. Please enter a valid
credit card expiration month.

SOAP API Developer Reference

August 2012

A

295

A

296

API Error Codes
DirectPayment API Errors

Error
Code

Short Message

Long Message

Corrective Action

10564

Gateway Decline

This transaction cannot be
processed.

There was a problem processing this
transaction.

10565

Merchant country
unsupported

The merchant country is not
supported.

10566

Credit card type
unsupported

The credit card type is not
supported.

10567

Invalid Data

This transaction cannot be
processed. Please enter a valid
credit card number and type.

10571

Transaction approved, but
with invalid Card
Security Code (CSC)
format.

This transaction was approved,
although the Card Security Code
(CSC) had too few, too many, or
invalid characters. Based on your
account profile settings, the
invalid CSC was not given to the
card issuer for its approval
process.

If you want to require valid CVV values,
change the risk control settings in your
account profile.

10701

Invalid Data

There’s an error with this
transaction. Please enter a valid
billing address.

There was a problem with a particular
field in the address. The long error
message tells you which field is invalid.

10702

Invalid Data

There’s an error with this
transaction. Please enter a valid
address1 in the billing address.

There was a problem with a particular
field in the address. The long error
message tells you which field is invalid.

10703

Invalid Data

There’s an error with this
transaction. Please enter a valid
address2 in the billing address.

There was a problem with a particular
field in the address. The long error
message tells you which field is invalid.

10704

Invalid Data

There’s an error with this
transaction. Please enter a valid
city in the billing address.

There was a problem with a particular
field in the address. The long error
message tells you which field is invalid.

10705

Invalid Data

There’s an error with this
transaction. Please enter a valid
state in the billing address.

There was a problem with a particular
field in the address. The long error
message tells you which field is invalid.

10706

Invalid Data

There’s an error with this
transaction. Please enter a valid
postal code in the billing address.

There was a problem with a particular
field in the address. The long error
message tells you which field is invalid.

10707

Invalid Data

There’s an error with this
transaction. Please enter a valid
country in the billing address.

There was a problem with a particular
field in the address. The long error
message tells you which field is invalid.

August 2012

SOAP API Developer Reference

API Error Codes
DirectPayment API Errors

Error
Code

Short Message

Long Message

Corrective Action

10708

Invalid Data

There’s an error with this
transaction. Please enter a
complete billing address.

There was a problem with a particular
field in the address. The long error
message tells you which field is invalid.

10709

Invalid Data

There’s an error with this
transaction. Please enter an
address1 in the billing address.

There was a problem with a particular
field in the address. The long error
message tells you which field is invalid.

10709

Invalid Data

There’s an error with this
transaction. Please enter an
address1 in the billing address.

There was a problem with a particular
field in the address. The long error
message tells you which field is invalid.

10710

Invalid Data

There’s an error with this
transaction. Please enter a city in
the billing address.

There was a problem with a particular
field in the address. The long error
message tells you which field is invalid.

10710

Invalid Data

There’s an error with this
transaction. Please enter a city in
the billing address.

There was a problem with a particular
field in the address. The long error
message tells you which field is invalid.

10711

Invalid Data

There’s an error with this
transaction. Please enter your
state in the billing address.

There was a problem with a particular
field in the address. The long error
message tells you which field is invalid.

10712

Invalid Data

There’s an error with this
transaction. Please enter your
five digit postal code in the
billing address.

There was a problem with a particular
field in the address. The long error
message tells you which field is invalid.

10713

Invalid Data

There’s an error with this
transaction. Please enter a
country in the billing address.

There was a problem with a particular
field in the address. The long error
message tells you which field is invalid.

10713

Invalid Data

There’s an error with this
transaction. Please enter a
country in the billing address.

There was a problem with a particular
field in the address. The long error
message tells you which field is invalid.

10714

Invalid Data

There’s an error with this
transaction. Please enter a valid
billing address.

There was a problem with a particular
field in the address. The long error
message tells you which field is invalid.

10715

Invalid Data

There’s an error with this
transaction. Please enter a valid
state in the billing address.

There was a problem with a particular
field in the address. The long error
message tells you which field is invalid.

10716

Invalid Data

There’s an error with this
transaction. Please enter your
five digit postal code in the
billing address.

There was a problem with a particular
field in the address. The long error
message tells you which field is invalid.

SOAP API Developer Reference

August 2012

A

297

A

298

API Error Codes
DirectPayment API Errors

Error
Code

Short Message

Long Message

Corrective Action

10717

Invalid Data

There’s an error with this
transaction. Please enter a valid
postal code in the billing address.

There was a problem with a particular
field in the address. The long error
message tells you which field is invalid.

10718

Invalid Data

There’s an error with this
transaction. Please enter a valid
city and state in the billing
address.

There was a problem with a particular
field in the address. The long error
message tells you which field is invalid.

10719

Invalid Data

There’s an error with this
transaction. Please enter a valid
shipping address.

There was a problem with a particular
field in the address. The long error
message tells you which field is invalid.

10720

Invalid Data

There’s an error with this
transaction. Please enter a valid
address1 in the shipping address.

There was a problem with a particular
field in the address. The long error
message tells you which field is invalid.

10721

Invalid Data

There’s an error with this
transaction. Please enter a valid
address2 in the shipping address.

There was a problem with a particular
field in the address. The long error
message tells you which field is invalid.

10722

Invalid Data

There’s an error with this
transaction. Please enter a valid
city in the shipping address.

There was a problem with a particular
field in the address. The long error
message tells you which field is invalid.

10723

Invalid Data

There’s an error with this
transaction. Please enter a valid
state in the shipping address.

There was a problem with a particular
field in the address. The long error
message tells you which field is invalid.

10724

Invalid Data

There’s an error with this
transaction. Please enter your
five digit postal code in the
shipping address.

There was a problem with a particular
field in the address. The long error
message tells you which field is invalid.

10725

Invalid Data

There’s an error with this
transaction. Please enter a valid
country in the shipping address.

There was a problem with a particular
field in the address. The long error
message tells you which field is invalid.

10726

Invalid Data

There’s an error with this
transaction. Please enter a
complete shipping address.

There was a problem with a particular
field in the address. The long error
message tells you which field is invalid.

10726

Invalid Data

There’s an error with this
transaction. Please enter a
complete shipping address.

There was a problem with a particular
field in the address. The long error
message tells you which field is invalid.

10727

Invalid Data

There’s an error with this
transaction. Please enter an
address1 in the shipping address.

There was a problem with a particular
field in the address. The long error
message tells you which field is invalid.

August 2012

SOAP API Developer Reference

API Error Codes
DirectPayment API Errors

Error
Code

Short Message

Long Message

Corrective Action

10727

Invalid Data

There’s an error with this
transaction. Please enter an
address1 in the shipping address.

There was a problem with a particular
field in the address. The long error
message tells you which field is invalid.

10728

Invalid Data

There’s an error with this
transaction. Please enter a city in
the shipping address.

There was a problem with a particular
field in the address. The long error
message tells you which field is invalid.

10728

Invalid Data

There’s an error with this
transaction. Please enter a city in
the shipping address.

There was a problem with a particular
field in the address. The long error
message tells you which field is invalid.

10729

Invalid Data

There’s an error with this
transaction. Please enter your
state in the shipping address.

There was a problem with a particular
field in the address. The long error
message tells you which field is invalid.

10730

Invalid Data

There’s an error with this
transaction. Please enter your
five digit postal code in the
shipping address.

There was a problem with a particular
field in the address. The long error
message tells you which field is invalid.

10731

Invalid Data

There’s an error with this
transaction. Please enter a
country in the shipping address.

There was a problem with a particular
field in the address. The long error
message tells you which field is invalid.

10731

Invalid Data

There’s an error with this
transaction. Please enter a
country in the shipping address.

There was a problem with a particular
field in the address. The long error
message tells you which field is invalid.

10732

Invalid Data

There’s an error with this
transaction. Please enter a valid
shipping address.

There was a problem with a particular
field in the address. The long error
message tells you which field is invalid.

10733

Invalid Data

There’s an error with this
transaction. Please enter a valid
state in the shipping address.

There was a problem with a particular
field in the address. The long error
message tells you which field is invalid.

10734

Invalid Data

There’s an error with this
transaction. Please enter your
five digit postal code in the
shipping address.

There was a problem with a particular
field in the address. The long error
message tells you which field is invalid.

10735

Invalid Data

There’s an error with this
transaction. Please enter your
five digit postal code in the
shipping address.

There was a problem with a particular
field in the address. The long error
message tells you which field is invalid.

10736

Invalid Data

There’s an error with this
transaction. Please enter a valid
city and state in the shipping
address.

There was a problem with a particular
field in the address. The long error
message tells you which field is invalid.

SOAP API Developer Reference

August 2012

A

299

A

300

API Error Codes
DirectPayment API Errors

Error
Code

Short Message

Long Message

Corrective Action

10744

Invalid Data

This transaction cannot be
processed. Please enter a valid
country code in the billing
address.

There was a problem with a particular
field in the address. The long error
message tells you which field is invalid.

10745

Invalid Data

This transaction cannot be
processed. Please enter a valid
country code in the shipping
address.

There was a problem with a particular
field in the address. The long error
message tells you which field is invalid.

10746

Invalid Data

This transaction cannot be
processed. Please use a valid
country on the billing address.

There was a problem with a particular
field in the address. The long error
message tells you which field is invalid.

10747

Invalid Data

This transaction cannot be
processed.

The merchant entered an IP address that
was in an invalid format. The IP address
must be in a format such as
123.456.123.456.

10748

Invalid Data

This transaction cannot be
processed without a Credit Card
Verification Number.

The merchant’s configuration requires a
CVV to be entered, but no CVV was
provided with this transaction. Contact
PayPal if you wish to change this setting.

10750

Invalid Data

There’s an error with this
transaction. Please enter a valid
state in the shipping address.

There was a problem with a particular
field in the address. The long error
message tells you which field is invalid.

10751

Invalid Data

There’s an error with this
transaction. Please enter a valid
state in the billing address.

The merchant provided an address either
in the United States or Canada, but the
state provided is not a valid state in
either country.

10752

Gateway Decline

This transaction cannot be
processed.

The transaction was declined by the
issuing bank, not PayPal. The merchant
should attempt another card.

10754

Gateway Decline

This transaction cannot be
processed.

The transaction was declined by PayPal.
Contact PayPal for more information.

10755

Invalid Data

This transaction cannot be
processed due to an unsupported
currency.

The currency code entered by the
merchant is not supported.

10756

Gateway Decline

The transaction cannot be
processed. The country and
billing address associated with
this credit card do not match.

None. This is a PayPal internal error.

10758

Invalid Configuration

There’s been an error due to
invalid API username and/or
password.

The API username or password is
incorrect for this merchant.

August 2012

SOAP API Developer Reference

API Error Codes
DirectPayment API Errors

Error
Code

Short Message

Long Message

Corrective Action

10759

Gateway Decline

This transaction cannot be
processed. Please enter a valid
credit card number and type.

The transaction was declined by PayPal.
Contact PayPal for more information.

10760

Invalid Configuration

This transaction cannot be
processed. The country listed for
your business address is not
currently supported.

The merchant’s country of residence
listed in their PayPal account is not
currently supported to allow Direct
Payment transactions.

10761

Gateway Decline

This transaction cannot be
processed. Please check the
status of your first transaction
before placing another order.

The transaction was declined because
PayPal is currently processing a
transaction by the same buyer for the
same amount. Can occur when a buyer
submits multiple, identical transactions
in quick succession.

10762

Gateway Decline

This transaction cannot be
processed.

The CVV provide is invalid. The CVV is
between 3-4 digits long.

10763

Invalid Data

This transaction cannot be
processed.

None - this is a PayPal internal error.

10764

This transaction cannot be
processed at this time.
Please try again later.

This transaction cannot be
processed at this time. Please try
again later.

The transaction was declined by PayPal.
Please try again later. If the problem
persists, please contact PayPal.

11068

Seller restriction.

All sellers restricted.

11610

Payment Pending your
review in Fraud
Management Filters

Payment Pending your review in
Fraud Management Filters

11611

Transaction blocked by
your settings in FMF

Transaction blocked by your
settings in FMF

11612

Could not process your
request to accept/deny the
transaction

Could not process your request to
accept/deny the transaction

11821

This transaction cannot be
processed

This transaction cannot be
processed because it has already
been denied by a Fraud
Management Filter

You cannot capture a payment after it
has been denied by a Fraud Management
Filter. You can control whether a Fraud
Management Filter denies a transaction
by changing the filter's settings in the
profile.

12000

Transaction is not
compliant due to missing
or invalid 3-D Secure
authentication values.

Transaction is not compliant due
to missing or invalid 3-D Secure
authentication values.

Check ECI, ECI3DS, CAVV, XID fields.

SOAP API Developer Reference

August 2012

A

301

A

API Error Codes
DirectPayment API Errors

Error
Code

302

Short Message

Long Message

Corrective Action

12001

Transaction is not
compliant due to missing
or invalid 3-D Secure
authentication values.

Transaction is not compliant due
to missing or invalid 3-D Secure
authentication values.

Check ECI, ECI3DS, CAVV, XID fields.

15001

Gateway Decline

This transaction cannot be
processed.

The transaction was rejected by PayPal
because of excessive failures over a
short period of time for this credit card.
Contact PayPal for more information.

15002

Gateway Decline

This transaction cannot be
processed.

The transaction was declined by PayPal.
Contact PayPal for more information.

15003

Invalid Configuration

This transaction cannot be
processed.

The transaction was declined because
the merchant does not have a valid
commercial entity agreement on file
with PayPal. Contact PayPal for more
information.

15004

Gateway Decline

This transaction cannot be
processed. Please enter a valid
Credit Card Verification Number.

The transaction was declined because
the CVV entered does not match the
credit card.

15005

Processor Decline

This transaction cannot be
processed.

The transaction was declined by the
issuing bank, not PayPal. The merchant
should attempt another card.

15006

Processor Decline

This transaction cannot be
processed. Please enter a valid
credit card number and type.

The transaction was declined by the
issuing bank, not PayPal. The merchant
should attempt another card.

15007

Processor Decline

This transaction cannot be
processed. Please use a valid
credit card.

The transaction was declined by the
issuing bank because of an expired
credit card. The merchant should attempt
another card.

15008

Invalid Data

This transaction has been
completed, but the total of items
in the cart did not match the total
of all items.

15011

Gateway Decline

This credit card was issued from
an unsupported country.

August 2012

SOAP API Developer Reference

API Error Codes
SetExpressCheckout API Errors

A

SetExpressCheckout API Errors
SetExpressCheckout API Errors
Error
Code

Short Message

Long Message

10001

ButtonSource value
truncated.

The transaction could not be loaded

10001

Internal Error

Internal Error

10003

Missing argument.

OtherPaymentMethodID is missing.

10003

Missing argument.

OtherPaymentMethodLabel is
missing.

10003

Missing argument.

OtherPaymentMethodType is
missing.

10003

Missing argument.

One or more of these giropay URLs
is missing: giropaySuccessURL,
giropayCancelURL,
BanktxnPendingURL.

10004

Transaction refused because
of an invalid argument. See
additional error messages for
details.

Transaction refused because of an
invalid argument. See additional
error messages for details.

10004

Transaction refused because
of an invalid argument. See
additional error messages for
details.

The transaction id is not valid

10004

Transaction refused because
of an invalid argument. See
additional error messages for
details.

Invalid value for request billing
address parameter.

10004

Transaction refused because
of an invalid argument. See
additional error messages for
details.

Invalid item URL.

10004

Transaction refused because
of an invalid argument. See
additional error messages for
details.

OtherPaymentMethodType is
invalid.

10004

Transaction refused because
of an invalid argument. See
additional error messages for
details.

RegistrationDate of buyer is invalid.

SOAP API Developer Reference

August 2012

Correcting This Error...

303

A

API Error Codes
SetExpressCheckout API Errors

Error
Code

304

Short Message

Long Message

10004

Transaction refused because
of an invalid argument. See
additional error messages for
details.

Invalid eBay buyer feedback overall
positive count.

10004

Transaction refused because
of an invalid argument. See
additional error messages for
details.

Invalid eBay buyer feedback overall
negative count.

10004

Transaction refused because
of an invalid argument. See
additional error messages for
details.

Invalid eBay buyer feedback total
positive count.

10004

Transaction refused because
of an invalid argument. See
additional error messages for
details.

Invalid eBay buyer feedback total
negative count.

10004

Transaction refused because
of an invalid argument. See
additional error messages for
details.

Invalid eBay buyer feedback recent
positive count.

10004

Transaction refused because
of an invalid argument. See
additional error messages for
details.

Invalid eBay buyer feedback recent
negative count.

10004

Transaction refused because
of an invalid argument. See
additional error messages for
details.

SellerRegistrationDate is invalid.

10004

Transaction refused because
of an invalid argument. See
additional error messages for
details.

Invalid eBay seller feedback overall
positive count.

10004

Transaction refused because
of an invalid argument. See
additional error messages for
details.

Invalid eBay seller feedback overall
negative count.

10004

Transaction refused because
of an invalid argument. See
additional error messages for
details.

Invalid eBay seller feedback total
positive count.

August 2012

Correcting This Error...

SOAP API Developer Reference

API Error Codes
SetExpressCheckout API Errors

Error
Code

Short Message

Long Message

10004

Transaction refused because
of an invalid argument. See
additional error messages for
details.

Invalid eBay seller feedback total
negative count.

10004

Transaction refused because
of an invalid argument. See
additional error messages for
details.

Invalid eBay seller feedback recent
positive count.

10004

Transaction refused because
of an invalid argument. See
additional error messages for
details.

Invalid eBay seller feedback recent
negative count.

10004

Transaction refused because
of an invalid argument. See
additional error messages for
details.

Invalid eBay item transaction date.

10004

Transaction refused because
of an invalid argument. See
additional error messages for
details.

Invalid eBay item buyer protection
type.

10004

Transaction refused because
of an invalid argument. See
additional error messages for
details.

Invalid eBay item payment hold risk.

10004

Transaction refused because
of an invalid argument. See
additional error messages for
details.

Multiple eBay order IDs not allowed.

10004

Transaction refused because
of an invalid argument. See
additional error messages for
details.

AllowPushFunding value specified is
invalid. It must be 0 or 1 or an empty
string.

10005

Option not supported.

Merchant not enabled to use
enhanced checkout data.

10005

Option not supported.

Merchant not enabled to use
OtherPaymentMethodDetails.

10005

Option not supported.

Transaction ID is not supported.

10007

Permission denied

You do not have permission to make
this API call

SOAP API Developer Reference

August 2012

A

Correcting This Error...

305

A

306

API Error Codes
SetExpressCheckout API Errors

Error
Code

Short Message

Long Message

10010

Invalid Invoice

Non-ASCII invoice id is not
supported.

10101

Option not supported.

Express Checkout temporarily
unavailable. Please try later.

10102

PaymentAction of Order
Temporarily Unavailable

PaymentAction of Order is
temporarily unavailable. Please try
later or use other PaymentAction.

10103

Please use another Solution
Type.

Your Solution Type is temporarily
unavailable. If possible, please use
another Solution Type.

10400

Transaction refused because
of an invalid argument. See
additional error messages for
details.

OrderTotal is missing.

10401

Transaction refused because
of an invalid argument. See
additional error messages for
details.

Order total is invalid.

10402

Authorization only is not
allowed for merchant.

This merchant account is not
permitted to set PaymentAction to
Authorization. Please contact
Customer Service.

10404

Transaction refused because
of an invalid argument. See
additional error messages for
details.

ReturnURL is missing.

10405

Transaction refused because
of an invalid argument. See
additional error messages for
details.

CancelURL is missing.

10407

Transaction refused because
of an invalid argument. See
additional error messages for
details.

Invalid buyer email address
(BuyerEmail).

10409

You’re not authorized to
access this info.

Express Checkout token was issued
for a merchant account other than
yours.

10410

Invalid token

Invalid token.

August 2012

Correcting This Error...

SOAP API Developer Reference

API Error Codes
SetExpressCheckout API Errors

Error
Code

Short Message

Long Message

Correcting This Error...

10411

This Express Checkout
session has expired.

This Express Checkout session has
expired. Token value is no longer
valid.

If you receive this error, you
must return your buyer to
PayPal to approve the use of
PayPal again. Display an error
message to inform the buyer
that the transaction expired,
and provide a button to return
to PayPal. In this situation, you
are effectively restarting the
entire checkout process. (Do
not reuse the expired token
value on
SetExpressCheckout
request.) However, because
you already know the final
OrderTotal, be sure to
update the value for that
element if appropriate. You
might also want to update the
values for ReturnURL and
CancelURL, if necessary.

10412

Duplicate invoice

Payment has already been made for
this InvoiceID.

PayPal checks that
InvoiceID values are unique
for any particular merchant. If
you send an InvoiceID value
already associated with another
transaction in the PayPal
system, PayPal returns error
code 10412.
You might not be able to
correct this error during an
actual checkout. If you receive
this error, research why it
might occur and modify your
implementation of Express
Checkout to ensure that you
generate unique invoice
identification numbers.

10413

Transaction refused because
of an invalid argument. See
additional error messages for
details

The totals of the cart item amounts
do not match order amounts.

If you receive this error, be
sure the total of the payment
detail item parameters, such as
ItemTotal, HandlingTotal,
TaxTotal, and so forth add up
to the order total.

SOAP API Developer Reference

August 2012

A

307

A

API Error Codes
SetExpressCheckout API Errors

Error
Code

308

Short Message

Long Message

Correcting This Error...

10415

Transaction refused because
of an invalid argument. See
additional error messages for
details.

A successful transaction has already
been completed for this token.

PayPal allows a token only
once for a successful
transaction.
If you determine that your
buyers are clicking your “Place
Order” button twice, PayPal
recommends that you disable
the button after your buyer has
clicked it.

10418

Transaction refused because
of an invalid argument. See
additional error messages for
details

The currencies of the shopping cart
amounts must be the same.

10425

Express Checkout has been
disabled for this merchant.

Express Checkout has been disabled
for this merchant. Please contact
Customer Service.

10426

Transaction refused because
of an invalid argument. See
additional error messages for
details

Item total is invalid.

10427

Transaction refused because
of an invalid argument. See
additional error messages for
details

Shipping total is invalid.

10428

Transaction refused because
of an invalid argument. See
additional error messages for
details

Handling total is invalid.

10429

Transaction refused because
of an invalid argument. See
additional error messages for
details

Tax total is invalid.

10430

Transaction refused because
of an invalid argument. See
additional error messages for
details

Item amount is missing.

10431

Transaction refused because
of an invalid argument. See
additional error messages for
details

Item amount is invalid.

August 2012

SOAP API Developer Reference

API Error Codes
SetExpressCheckout API Errors

Error
Code

Short Message

Long Message

10432

Transaction refused because
of an invalid argument. See
additional error messages for
details

Invoice ID value exceeds maximum
allowable length.

10433

Transaction refused because
of an invalid argument. See
additional error messages for
details

Value of Order Description has been
truncated.

10434

Transaction refused because
of an invalid argument. See
additional error messages for
details

Value of Custom element has been
truncated.

10436

Transaction refused because
of an invalid argument. See
additional error messages for
details.

PageStyle value exceeds maximum
allowable length.

10437

Transaction refused because
of an invalid argument. See
additional error messages for
details.

cpp-header-image value exceeds
maximum allowable length.

10438

Transaction refused because
of an invalid argument. See
additional error messages for
details.

cpp-header-image value exceeds
maximum allowable length.

10439

Transaction refused because
of an invalid argument. See
additional error messages for
details.

cpp-header-image value exceeds
maximum allowable length.

10440

Transaction refused because
of an invalid argument. See
additional error messages for
details.

cpp-header-image value exceeds
maximum allowable length.

10441

Transaction refused because
of an invalid argument. See
additional error messages for
details

The NotifyURL element value
exceeds maximum allowable length.

10442

ButtonSource value
truncated.

The ButtonSource element value
exceeds maximum allowable length.

10446

Transaction refused because
of an invalid argument. See
additional error messages for
details.

Sale is only allowed PaymentAction.

SOAP API Developer Reference

August 2012

A

Correcting This Error...

309

A

API Error Codes
SetExpressCheckout API Errors

Error
Code

310

Short Message

Long Message

10457

Error occurred in
communicating to eBay

eBay API creation error

10458

Error occurred in
communicating to eBay

eBay API unknown failure

10459

Error occurred in
communicating to eBay

eBay API failure

10460

Error occurred in
communicating to eBay

Parsing error

10461

Error occurred in
communicating to eBay

Item number invalid, removed, or
unavailable

10462

Error occurred in
communicating to eBay

Order not found

10463

Error occurred in
communicating to eBay

eBay user password incorrect

10464

Error occurred in
communicating to eBay

Item ID and Transaction ID
mismatch

10465

Error occurred in
communicating to eBay

eBay user invalid

10467

Error occurred in
communicating to eBay

Duplicate Item ID

10468

Transaction refused because
of an invalid argument. See
additional error messages for
details

Duplicate Order ID

10469

PaymentAction of Order
Temporarily Unavailable

Express Auctions is unavailable

10470

Wowo flag is off for
ExpressO feature

Solution Type passed as Sole while
ExpressO feature is turned off

10471

Transaction refused because
of an invalid argument. See
additional error messages for
details

ReturnURL is missing

10472

Transaction refused because
of an invalid argument. See
additional error messages for
details

CancelURL is missing

10473

Error occurred in
communicating to eBay

Multiple Order IDs are not supported

August 2012

Correcting This Error...

SOAP API Developer Reference

API Error Codes
SetExpressCheckout API Errors

Error
Code

Short Message

Long Message

10474

Invalid Data

This transaction cannot be processed.
The country code in the shipping
address must match the buyer's
country of residence

10475

Transaction refused because
of an invalid argument. See
additional error messages for
details

This transaction cannot be completed
with PaymentAction of Sale

10476

Invalid Data

Maximum number of billing
agreements exceeded

10477

Invalid Data

More than one billing agreement
specified for reference transaction

10478

Invalid Data

Recurring payments profile
description must be provided if the
billing agreement type is recurring
payments

10479

Invalid Data

Billing agreement types cannot be
mixed in the same request

10480

Invalid Data

Invalid billing agreement type

10485

Payment not authorized

Payment has not been authorized by
the user.

10537

Risk Control Country Filter
Failure

The transaction was refused because
the country was prohibited as a result
of your Country Monitor Risk
Control Settings.

10538

Risk Control Max Amount
Failure

The transaction was refused because
the maximum amount was excceeded
as a result of your Maximum
Amount Risk Control Settings.

10539

Payment declined by your
Risk Controls settings:
PayPal Risk Model.

Payment declined by your Risk
Controls settings: PayPal Risk
Model.

10725

Shipping Address Country
Error

There was an error in the Shipping
Address Country field

10727

Shipping Address1 Empty

The field Shipping Address1 is
required

10728

Shipping Address City
Empty

The field Shipping Address City is
required

SOAP API Developer Reference

August 2012

A

Correcting This Error...

311

A

API Error Codes
SetExpressCheckout API Errors

Error
Code

312

Short Message

Long Message

10729

Shipping Address State
Empty

The field Shipping Address State is
required

10730

Shipping Address Postal
Code Empty

The field Shipping Address Postal
Code is required

10731

Shipping Address Country
Empty

The field Shipping Address Country
is required

10736

Shipping Address Invalid
City State Postal Code

A match of the Shipping Address
City, State, and Postal Code failed.

10800

Invalid Data

Your request is too long. Check
URLs and other long strings.

11001

Exceeds maximum length.

Value of NoteText element is
truncated.

11001

Exceeds maximum length.

OtherPaymentMethodID exceeds
maximum length.

11001

Exceeds maximum length.

OtherPaymentMethodLabel exceeds
maximum length.

11001

Exceeds maximum length.

OtherPaymentMethodLabelDescripti
on exceeds maximum length.

11001

Exceeds maximum length.

OtherPaymentMethodLongDescripti
on exceeds maximum length.

11001

Exceeds maximum length.

OtherPaymentMethodLongDescripti
onTitle exceeds maximum length.

11001

Exceeds maximum length.

OtherPaymentMethodIcon exceeds
maximum length.

11068

Seller restriction.

All sellers restricted.

11547

Recurring payments
temporarily unavailable; try
again later

Recurring payments temporarily
unavailable.

11547

Permission denied.

Permission Denied. You are not
authorized to do this kind of
transaction

11601

Request for billing address
failed

Billing address request is not enabled
for merchant

11602

Request for billing address
failed

Feature not yet available

11801

Invalid Data

You cannot pass both new and
deprecated parameter address fields.

August 2012

Correcting This Error...

SOAP API Developer Reference

API Error Codes
SetExpressCheckout API Errors

Error
Code

Short Message

Long Message

11802

Invalid Data

You cannot pass both the new and
deprecated Custom parameter.

11803

Invalid Data

You cannot pass both the new and
deprecated Invoice ID parameter.

11804

Invalid Data

You cannot pass both the new and
deprecated order description.

11805

Invalid Data

You cannot pass both the new and
deprecated order total or amount
parameters.

11806

Invalid Data

You cannot pass both the new and
deprecated
ProfileAddressChangeDate
parameter.

11807

Invalid Data

You cannot pass both the new and
deprecated ShippingMethod
parameter.

11810

Transaction refused because
of an invalid argument. See
additional error messages for
details

Invalid Insurance Amount.

11811

Transaction refused because
of an invalid argument. See
additional error messages for
details

Invalid Shipping Discount.

11812

Invalid Data

The value of Description parameter
has been truncated.

11813

Transaction refused because
of an invalid argument. See
additional error messages for
details

Invalid callback URL.

Callback URL is wrong type

Callback URL is wrong type; you
must use the HTTPS

11814

Invalid data

Invalid value for AllowNote.

11815

Transaction refused because
of an invalid argument. See
additional error messages for
details

Item sales tax is invalid.

Callback options missing

You must specify callback options
when you specify a callback URL

SOAP API Developer Reference

August 2012

A

Correcting This Error...

Ensure that your callback URL
starts with https://.

313

A

API Error Codes
SetExpressCheckout API Errors

Error
Code

314

Short Message

Long Message

Invalid callback timeout

The callback timeout is is zero; you
must specify a longer timeout

Line items missing

Line items are required when specify
a callback URL for flate rate
shipping options

Callback URL is too long

The callback URL must not exceed
1,024 characters

Multiple default shipping
options specified

You can only specify one default
shipping option at a time

No default shipping option
specified

You must specify a default shipping
option

Invalid shipping total

Invalid shipping total; it should equal
the shipping amount of the default
shipping option

Invalid shipping options

Invalid shipping options; you must
specify a name and amount for each
shipping option

11821

Invalid shipping options

Invalid shipping options; you must
specify a name and amount for each
shipping option type

11822

Multiple default shipping
options specified

More than one shipping option type
is marked as the default; you can
only specify one default shipping
option at a time

11823

No default shipping option
specified

You must specify one shipping
option type as the default

11824

Invalid callback timeout

The callback timeout is zero; you
must specify a longer timeout value

11825

Flat-rate shipping options
are missing

Flat-rate shipping options are
missing; you must specify flat-rate
shipping options when you specify a
callback URL

11826

Invalid shipping total

Invalid shipping total; it should equal
the shipping amount of the selected
shipping option

11827

Line items missing

Line items missing; line items are
required when you specify a callback
URL for flat-rate shipping options

August 2012

Correcting This Error...

SOAP API Developer Reference

API Error Codes
SetExpressCheckout API Errors

Error
Code

Short Message

Long Message

11828

Maximum amount of order
not specified

Maximum amount of order not
specified; you must specify the
estimated value of the order when
using a flat-rate shipping option

11829

Shipping total is missing

Shipping total is missing; you must
specify a shipping total when using a
flat-rate shipping option

11830

Insurance amount is missing

Insurance amount is missing; you
have offered insurance but have not
specified an amount.

11831

Callback URL is too long

Callback URL is too long; it must not
exceed 1,024 characters

11832

Maximum amount of order
Maximum amount of order is less
is less than itemized amounts than itemized amounts; the value of
all items, including handling,
shipping, tax, and insurance cannot
be greater than the maximum amount
of the order

12109

Option not supported.

Seller blocks payments via eBay
checkout for all eBay items.

12124

Option not supported.

Express Checkout not supported for
you.

12200

Buyer ID is not present.

Buyer ID must be specified to
process an Immediate Payment item.

12201

Immediate Payment item
was not found.

The item specified is either not valid
or is not currently available for
purchase as an Immediate Payment
item.

12202

More than one eBay item is
present.

Only one Immediate Payment item
can be paid for in a single PayPal
payment transaction.

12205

eBay Transaction ID and
eBay Order ID must be null.

Requests for eBay Immediate
Payment items should not contain
either eBay transaction ID or eBay
order ID. If the fields are present,
they should contain null values.

12207

Cart ID is required for
Immediate Payment item.

Cart ID is required for Immediate
Payment item.

SOAP API Developer Reference

August 2012

A

Correcting This Error...

Please check that the item is a
valid Immediate Payment item.

315

A

API Error Codes
SetExpressCheckout API Errors

Error
Code

316

Short Message

Long Message

12208

eBay item amount does not
match Express Checkout
API item amount.

eBay item amount must match
Express Checkout API item amount.

13100

Parallel payments
functionality is not available

Parallel payments functionality is not
available

13101

Invalid Data

Payment action of Order is only
supported for parallel payments

13102

Payment Request ID is
missing

Payment Request ID is mandatory
for parallel payments

13103

Duplicate Payment Request
ID passed

Payment Request ID must be unique
for parallel payments

13104

Transaction refused because
of an invalid argument. See
Additional error messages
for details.

Number of payment requests exceeds
maximum number of supported
requests.

13105

Invalid Data

Billing Agreement is not supported
for parallel payments.

13106

Invalid Data

You cannot pass both the new and
deprecated PaymentAction
parameter.

13108

Merchant is not eligible.

Merchant is not eligible for parallel
payments.

13110

Multi Payments Sale is Not
allowed

Due to some technical diffculties the
Multi Payments for Sale is not
avaliable now please try again later.

13111

Mixed Payment action not
supported

The Payment Action passed should
be unique, mixed Payment Action
not supported

13114

Buyer Didn't Complete

The Buyer returned without
completing the payment

13115

Seller ID Missing

Seller ID is mandatory for parallel
payments

13116

Transaction refused because
of an invalid argument. See
additional error messages for
details.

The transaction is in progress for this
token.

August 2012

Correcting This Error...

SOAP API Developer Reference

API Error Codes
GetExpressCheckoutDetails API Errors

A

GetExpressCheckoutDetails API Errors
GetExpressCheckoutDetails API Errors
Error
Code

Short Message

Long Message

10001

Internal Error

Internal Error

10001

Internal Error

Transaction failed due to internal error

10001

ButtonSource value
truncated.

The transaction could not be loaded

10001

ButtonSource value
truncated.

The transaction could not be loaded

10003

Missing argument.

OtherPaymentMethodID is missing.

10003

Missing argument.

OtherPaymentMethodLabel is missing.

10003

Missing argument.

OtherPaymentMethodType is missing.

10003

Missing argument.

One or more of these giropay URLs is
missing: giropaySuccessURL,
giropayCancelURL,
BanktxnPendingURL.

10004

Transaction refused because
of an invalid argument. See
additional error messages for
details.

Transaction refused because of an
invalid argument. See additional error
messages for details.

10004

Transaction refused because
of an invalid argument. See
additional error messages for
details.

The transaction id is not valid

10004

Invalid transaction type

You can not get the details for this type
of transaction

10004

Transaction refused because
of an invalid argument. See
additional error messages for
details.

The transaction could not be loaded

10004

Transaction refused because
of an invalid argument. See
additional error messages for
details.

The transaction id is not valid

10007

Permission denied

You do not have permission to make
this API call

10007

Permission denied

You do not have permission to get the
details of this transaction

SOAP API Developer Reference

August 2012

Correcting This Error...

317

A

API Error Codes
DoExpressCheckoutPayment API Errors

Error
Code

Short Message

Long Message

10007

Permission denied

You do not have permission to make
this API call

10408

Express Checkout token is
missing.

Express Checkout token is missing.

10409

You’re not authorized to
access this info.

Express Checkout token was issued for
a merchant account other than yours.

10410

Invalid token

Invalid token.

10411

This Express Checkout
session has expired.

This Express Checkout session has
expired. Token value is no longer valid.

13112

Cannot Pay Seller.

The Buyer will not be able to Pay the
seller for this transaction

13116

Transaction refused because
of an invalid argument. See
additional error messages for
details.

The transaction is in progress for this
token.

Correcting This Error...

DoExpressCheckoutPayment API Errors
DoExpressCheckoutPayment API Errors

318

Error
Code

Short Message

Long Message

10001

Internal Error

Transaction failed due to
internal error

10001

Internal Error

Warning an internal error has
occurred. The transaction id
may not be correct

10001

ButtonSource value
truncated.

The transaction could not be
loaded

10001

Internal Error

Internal Error

10004

Transaction refused
because of an invalid
argument. See additional
error messages for details.

Transaction refused because of
an invalid argument. See
additional error messages for
details.

10004

Transaction refused
because of an invalid
argument. See additional
error messages for details.

The transaction id is not valid

August 2012

Correcting This Error...

SOAP API Developer Reference

API Error Codes
DoExpressCheckoutPayment API Errors

Error
Code

Short Message

Long Message

10004

Transaction refused
because of an invalid
argument. See additional
error messages for details.

Invalid item URL.

10004

Transaction refused
because of an invalid
argument. See additional
error messages for details.

SellerRegistrationDate is
invalid.

10004

Transaction refused
because of an invalid
argument. See additional
error messages for details.

Invalid eBay seller feedback
overall positive count.

10004

Transaction refused
because of an invalid
argument. See additional
error messages for details.

Invalid eBay seller feedback
overall negative count.

10004

Transaction refused
because of an invalid
argument. See additional
error messages for details.

Invalid eBay seller feedback
total positive count.

10004

Transaction refused
because of an invalid
argument. See additional
error messages for details.

Invalid eBay seller feedback
total negative count.

10004

Transaction refused
because of an invalid
argument. See additional
error messages for details.

Invalid eBay seller feedback
recent positive count.

10004

Transaction refused
because of an invalid
argument. See additional
error messages for details.

Invalid eBay seller feedback
recent negative count.

10004

Transaction refused
because of an invalid
argument. See additional
error messages for details.

Invalid eBay item transaction
date.

10004

Transaction refused
because of an invalid
argument. See additional
error messages for details.

Invalid eBay item buyer
protection type.

SOAP API Developer Reference

August 2012

A

Correcting This Error...

319

A

API Error Codes
DoExpressCheckoutPayment API Errors

Error
Code

320

Short Message

Long Message

10004

Transaction refused
because of an invalid
argument. See additional
error messages for details.

Invalid eBay item payment
hold risk.

10004

Transaction refused
because of an invalid
argument. See additional
error messages for details.

Multiple eBay order IDs not
allowed.

10007

Permission denied

You do not have permissions to
make this API call

10406

Transaction refused
because of an invalid
argument. See additional
error messages for details.

The PayerID value is invalid.

10408

Express Checkout token is
missing.

Express Checkout token is
missing.

10409

You’re not authorized to
access this info.

Express Checkout token was
issued for a merchant account
other than yours.

10410

Invalid token

Invalid token.

10411

This Express Checkout
session has expired.

This Express Checkout session
has expired. Token value is no
longer valid.

10412

Duplicate invoice

Payment has already been
made for this InvoiceID.

10413

Transaction refused
because of an invalid
argument. See additional
error messages for details

The totals of the cart item
amounts do not match order
amounts.

10414

Transaction refused
because of an invalid
argument. See additional
error messages for details.

The amount exceeds the
maximum amount for a single
transaction.

10415

Transaction refused
because of an invalid
argument. See additional
error messages for details.

A successful transaction has
already been completed for this
token.

August 2012

Correcting This Error...

If you receive this error, be sure the
total of the payment detail item
parameters, such as ItemTotal,
HandlingTotal, TaxTotal, and so forth
add up to the order total.

SOAP API Developer Reference

API Error Codes
DoExpressCheckoutPayment API Errors

Error
Code

Short Message

Long Message

10416

Transaction refused
because of an invalid
argument. See additional
error messages for details.

You have exceeded the
maximum number of payment
attempts for this token.

10417

Transaction cannot
complete.

The transaction cannot
complete successfully. Instruct
the customer to use an
alternative payment method.

10418

Transaction refused
because of an invalid
argument. See additional
error messages for details.

The currencies of the shopping
cart amounts must be the same.

10419

Express Checkout
PayerID is missing.

Express Checkout PayerID is
missing.

10420

Transaction refused
because of an invalid
argument. See additional
error messages for details.

Express Checkout
PaymentAction is missing.

10421

This Express Checkout
session belongs to a
different customer.

This Express Checkout session
belongs to a different customer.
Token value mismatch.

10422

Customer must choose
new funding sources.

The customer must return to
PayPal to select new funding
sources.

10424

Transaction refused
because of an invalid
argument. See additional
error messages for details.

Shipping address is invalid.

10426

Transaction refused
because of an invalid
argument. See additional
error messages for details.

Item total is invalid.

10427

Transaction refused
because of an invalid
argument. See additional
error messages for details.

Shipping total is invalid.

SOAP API Developer Reference

August 2012

A

Correcting This Error...

Instruct the buyer that PayPal is unable
to process the payment and redisplay
alternative payment methods with
which the buyer can pay.

Verify that your programs are properly
associating the Tokens and PayerIDs.

If you receive this error message,
PayPal recommends that you return
your buyer to PayPal to review and
approve new valid funding sources.
Although this error is rare, you should
consider trapping the error to display a
message to the buyer describing what
happened, along with a button or
hyperlink to return to PayPal.

321

A

API Error Codes
DoExpressCheckoutPayment API Errors

Error
Code

322

Short Message

Long Message

10428

Transaction refused
because of an invalid
argument. See additional
error messages for details.

Handling total is invalid.

10429

Transaction refused
because of an invalid
argument. See additional
error messages for details.

Tax total is invalid.

10431

Item amount is invalid.

Item amount is invalid.

10432

Transaction refused
because of an invalid
argument. See additional
error messages for details.

Invoice ID value exceeds
maximum allowable length.

10433

Transaction refused
because of an invalid
argument. See additional
error messages for details.

Value of OrderDescription
element has been truncated.

10434

Transaction refused
because of an invalid
argument. See additional
error messages for details.

Value of Custom element has
been truncated.

10435

Transaction refused
because of an invalid
argument. See additional
error messages for details.

The customer has not yet
confirmed payment for this
Express Checkout session.

10441

Transaction refused
because of an invalid
argument. See additional
error messages for details.

The NotifyURL element value
exceeds maximum allowable
length.

10442

ButtonSource value
truncated.

The ButtonSource element
value exceeds maximum
allowable length.

10443

Transaction refused
because of an invalid
argument. See additional
error messages for details.

This transaction cannot be
completed with
PaymentAction of Order.

10444

Transaction refused
because of an invalid
argument. See additional
error messages for details.

The transaction currency
specified must be the same as
previously specified.

August 2012

Correcting This Error...

SOAP API Developer Reference

API Error Codes
DoExpressCheckoutPayment API Errors

Error
Code

Short Message

Long Message

10445

This transaction cannot be
processed at this time.
Please try again later.

This transaction cannot be
processed at this time. Please
try again later.

10446

Unconfirmed email

A confirmed email is required
to make this API call.

10474

Invalid Data

This transaction cannot be
processed. The country code in
the shipping address must
match the buyer’s country of
residence.

10481

Transaction refused
because of an invalid
argument. See additional
error messages for details.

PaymentAction of
Authorization is not allowed
with Unilateral and NonCredentialed authentication.

10486

This transaction couldn't
be completed.

This transaction couldn't be
completed. Please redirect your
customer to PayPal.

10482

Transaction refused
because of an invalid
argument. See additional
error messages for details.

PaymentAction of Order is not
allowed with Unilateral and
Non-Credentialed
authentication.

10537

Risk Control Country
Filter Failure

The transaction was refused
because the country was
prohibited as a result of your
Country Monitor Risk Control
Settings.

10538

Risk Control Max Amount
Failure

The transaction was refused
because the maximum amount
was excceeded as a result of
your Maximum Amount Risk
Control Settings.

10539

Payment declined by your
Risk Controls settings:
PayPal Risk Model.

Payment declined by your Risk
Controls settings: PayPal Risk
Model.

10725

Shipping Address Country
Error

There was an error in the
Shipping Address Country
field

10727

Shipping Address1 Empty

The field Shipping Address1 is
required

SOAP API Developer Reference

August 2012

A

Correcting This Error...

The buyer selects the country of
residence when they sign up for their
PayPal account. The country of
residence displays after the dash in the
title on the Account Overview page.

Redirect the buyer back to PayPal using
the original token so that the customer
can use or add a new funding
instrument.

323

A

API Error Codes
DoExpressCheckoutPayment API Errors

Error
Code

324

Short Message

Long Message

10728

Shipping Address City
Empty

The field Shipping Address
City is required

10729

Shipping Address State
Empty

The field Shipping Address
State is required

10730

Shipping Address Postal
Code Empty

The field Shipping Address
Postal Code is required

10731

Shipping Address Country
Empty

The field Shipping Address
Country is required

10736

Shipping Address Invalid
City State Postal Code

A match of the Shipping
Address City, State, and Postal
Code failed.

11001

Exceeds maximum length.

Value of NoteText element is
truncated.

11610

Payment Pending your
review in Fraud
Management Filters

Payment Pending your review
in Fraud Management Filters

11611

Transaction blocked by
your settings in FMF

Transaction blocked by your
settings in FMF

11612

Could not process your
request to accept/deny the
transaction

Could not process your request
to accept/deny the transaction

11820

Transaction refused
because of an invalid
argument. See additional
error messages for details

Invalid Order URL.

Invalid shipping amount

Invalid shipping amount; it
should equal the shipping
amount of the selected
shipping option

Invalid shipping options

Invalid shipping options; you
must specify a name and
amount for each shipping
option

11821

Invalid shipping options

Invalid shipping options; you
must specify a name and
amount for each shipping
option type

11826

Invalid shipping total

Invalid shipping total; it should
equal the shipping amount of
the selected shipping option

August 2012

Correcting This Error...

SOAP API Developer Reference

API Error Codes
DoExpressCheckoutPayment API Errors

Error
Code

Short Message

Long Message

12125

PP incentive no longer
available.

There's a problem with the
redemption code(s) you
entered and can't be used at this
time. Your payment has not
been processed. Please go back
to PayPal so that the code(s)
can be removed, your order
total can be updated and then
you'll be able to complete
checkout.

12126

Payment could not be
processed at this time.
Incentive temporarily
unavailable.

We're having problems
processing redemption codes at
this time. Your payment has
not been processed. You can
try to check out again at a later
time or complete your payment
without the discount applied.

12201

Immediate Payment item
was not found.

The item specified is either not
valid or is not currently
available for purchase as an
Immediate Payment item.

12203

Payment rolled back
because of pending item.

Payment was not created
because it would have been in a
pending state, which is
unacceptable for Immediate
Payment items.

12204

Transaction reversed.

Error occurred causing
transaction reversal.

12206

The value of
PaymentAction must be
Sale for Immediate
Payment item.

Order and Authorization are
not acceptable values for
PaymentAction when the item
is an Immediate Payment

12207

Cart ID is required for
Immediate Payment item.

Cart ID is required for
Immediate Payment item.

12208

eBay item amount does
not match Express
Checkout API item
amount.

eBay item amount does not
match Express Checkout API
item amount.

13100

Parallel payments
functionality is not
available

Parallel payments functionality
is not available

SOAP API Developer Reference

August 2012

A

Correcting This Error...

Please check that the item is a valid
Immediate Payment item.

325

A

326

API Error Codes
DoExpressCheckoutPayment API Errors

Error
Code

Short Message

Long Message

13101

Invalid Data

Payment action of Order is
only supported for parallel
payments

13102

Payment Request ID is
missing

Payment Request ID is
mandatory for parallel
payments

13103

Duplicate Payment
Request ID passed

Payment Request ID must be
unique for parallel payments

13104

Transaction refused
because of an invalid
argument. See Additional
error messages for details.

Number of payment requests
exceeds maximum number of
supported requests.

13106

Invalid Data

You cannot pass both the new
and deprecated PaymentAction
parameter.

13107

Parallel payments partially
successful.

One or more payment requests
failed. Check individual
payment responses for more
information.

13110

Multi Payments Sale is
Not allowed

Due to some technical
diffculties the Multi Payments
for Sale is not avaliable now
please try again later.

13111

Mixed Payment action not
supported

The Payment Action passed
should be unique, mixed
Payment Action not supported

13113

Buyer Cannot Pay.

The Buyer cannot pay with
PayPal for this transaction.

13115

Seller ID Missing

Seller ID is mandatory for
parallel payments

13116

Transaction refused
because of an invalid
argument. See additional
error messages for details.

The transaction is in progress
for this token.

13751

Could not retrieve the
original successful
response.

Transaction completed
successfully, but could not
retrieve the original successful
response.

August 2012

Correcting This Error...

SOAP API Developer Reference

API Error Codes
Authorization and Capture API Errors

A

Authorization and Capture API Errors
Authorization and Capture API Error Messages
Error
Code

Short
Message

Long Message

10001

Internal Error

Internal Error

10001

Internal Error

Transaction failed due to
internal error

10004

Internal Error

Invalid argument

10007

Permission
denied

You do not have
permissions to make this
API call

10009

Transaction
refused

Account is locked or
inactive

10010

Transaction
refused because
of an invalid
argument. See
additional error
messages for
details.

Invalid argument

10202

Exceed max

Transaction would
exceed user’s monthly
maximum

DoAuthorization
DoCapture

10600

Authorization
voided.

Authorization is voided.

DoAuthorization
DoCapture
DoReauthorization
DoVoid

Close the order or
authorization.

10601

Authorization
expired.

Authorization has
expired.

DoAuthorization
DoCapture
DoReauthorization
DoVoid

Close the order or
authorization.

10602

Authorization
completed.

Authorization has already
been completed.

DoAuthorization
DoCapture
DoReauthorization
DoVoid

Close the order or
authorization.

10603

The buyer is
restricted.

The buyer account is
restricted.

DoAuthorization
DoCapture
DoReauthorization
DoVoid

Contact the buyer.

SOAP API Developer Reference

Returned By API
Call...

Correcting This
Error...

Retry the request at a
later time or close order.

August 2012

327

A

328

API Error Codes
Authorization and Capture API Errors

Error
Code

Short
Message

Returned By API
Call...

Correcting This
Error...

10604

Authorization
must include
both buyer and
seller.

Authorization transaction
cannot be unilateral. It
must include both buyer
and seller to make an
auth.

DoAuthorization

Review the order to
ensure customer and
seller are both PayPal
members.

10605

Unsupported
currency.

Currency is not
supported.

DoAuthorization
DoCapture

Retry the request with a
PayPal-supported
currency.

10606

Buyer cannot
pay.

Transaction rejected,
please contact the buyer.

DoAuthorization
DoCapture
DoReauthorization

Contact the buyer.

10607

Auth&Capture
unavailable.

Authorization & Capture
feature unavailable.

DoAuthorization
DoCapture
DoReauthorization
DoVoid

Contact PayPal Customer
Service.

10608

Funding source
missing.

The funding source is
missing.

DoAuthorization
DoCapture
DoReauthorization

Contact the buyer.

10609

Invalid
transactionID.

Transaction id is invalid.

DoAuthorization
DoCapture
DoReauthorization
DoVoid

Check the validity of the
authorization ID and
reattempt the request.

10610

Amount limit
exceeded.

Amount specified
exceeds allowable limit.

DoAuthorization
DoCapture
DoReauthorization

Reattempt the request
with a lower amount.

10611

Not enabled.

Authorization & Capture
feature is not enabled for
the merchant. Contact
customer service.

DoAuthorization
DoCapture
DoReauthorization

Contact PayPal Customer
Service.

10612

No more
settlement.

Maxmimum number of
allowable settlements has
been reached. No more
settlement for the
authorization.

DoCapture

Close the order.

10613

Currency
mismatch.

Currency of capture must
be the same as currency
of authorization.

DoCapture

Ensure that the currencies
are the same, and retry
the request.

10614

Cannot void
reauth.

You can void only the
original authorization,
not a reauthorization.

DoVoid

Void the authorization.

Long Message

August 2012

SOAP API Developer Reference

API Error Codes
Authorization and Capture API Errors

Error
Code

Short
Message

Returned By API
Call...

Correcting This
Error...

10615

Cannot reauth
reauth.

You can reauthorize only
the original authorization,
not a reauthorization.

DoReauthorization

Capture the
reauthorization.

10616

Maximum
number of
reauthorization
allowed for the
auth is reached.

Maximum number of
reauthorization allowed
for the auth is reached.

DoReauthorization

Capture or close the
authorization.

10617

Reauthorization
not allowed.

Reauthorization is not
allowed inside honor
period.

DoReauthorization

Capture the authorization
or reauthorize outside of
honor period.

10618

Transaction
already voided
or expired.

Transaction has already
been voided or expired.

DoAuthorization
DoCapture
DoReauthorization
DoVoid

Close the order or
authorization.

10619

Invoice ID value
exceeds
maximum
allowable
length.

Invoice ID value exceeds
maximum allowable
length.

DoCapture

Check the length of the
invoice ID and reattempt
the request.

10620

Order has
already been
voided, expired,
or completed.

Order has already been
voided, expired, or
completed.

DoAuthorization
DoCapture
DoVoid

Close this order.

10621

Order has
expired.

Order has expired.

DoAuthorization
DoCapture
DoVoid

Close this order.

10622

Order is voided.

Order is voided.

DoAuthorization
DoCapture
DoVoid

Close this order.

10623

Maximum
number of
authorization
allowed for the
order is reached.

Maximum number of
authorization allowed for
the order is reached.

DoAuthorization
DoCapture
DoReauthorization
DoVoid

Capture this order.

10624

Duplicate
invoice

Payment has already
been made for this
Invoice ID.

DoAuthorization

Review the invoice ID
and reattempt the request.

SOAP API Developer Reference

Long Message

August 2012

A

329

A

330

API Error Codes
Authorization and Capture API Errors

Error
Code

Short
Message

Long Message

Returned By API
Call...

Correcting This
Error...

10625

Transaction
refused because
of an invalid
argument. See
additional error
messages for
details.

The amount exceeds the
maximum amount for a
single transaction.

DoAuthorization
DoCapture
DoReauthorization

Reattempt the request
with a lower amount.

10626

Risk

Transaction refused due
to risk model.

DoAuthorization
DoCapture
DoReauthorization

Contact the buyer.

10627

Transaction
refused because
of an invalid
argument. See
additional error
messages for
details.

The invoice ID field is
not supported for basic
authorizations.

DoAuthorization
DoReauthorization
DoVoid

The Invoice ID field can
be used only with
DoCapture.

10628

This transaction
cannot be
processed at this
time. Please try
again later.

This transaction cannot
be processed at this time.
Please try again later.

DoAuthorization
DoCapture
DoReauthorization
DoVoid

Retry the request at a
later time.

10629

Reauthorization
not allowed.

Reauthorization is not
allowed for this type of
authorization.

DoReauthorization

Use DoAuthorization to
authorize the order.

10630

Item amount is
invalid.

Item amount is invalid.

DoAuthorization
DoCapture

Check the item amount to
ensure that it is not zero
or negative.

10631

Processor
Warning.

The authorization is
being processed.

DoAuthorization

11094

This
authorization
cannot be
voided,
reauthorized, or
captured against.

This authorization can
only be handled through
the marketplace which
created it. It cannot
directly be voided,
reauthorized, or captured
against.

13122

Transaction
refused.

Transaction violates
PayPal use

DoCapture

August 2012

SOAP API Developer Reference

API Error Codes
GetTransactionDetails API Errors

A

GetTransactionDetails API Errors
GetTransactionDetails API Errors
Error Code

Short Message

Long Message

10001

Internal Error

Internal Error

10004

Transaction refused because of an
invalid argument. See additional
error messages for details.

Store ID is required if Terminal ID is specified.

TransactionSearch API Errors
TransactionSearch API Errors
Error
Code

Short Message

Long Message

10001

Internal Error

Internal Error

10001

ButtonSource value
truncated.

The transaction could not be loaded

10003

Transaction refused because
of an invalid argument. See
additional error messages for
details.

Start date is a required parameter

10004

Transaction refused because
of an invalid argument. See
additional error messages for
details.

Start date is invalid

10004

Transaction refused because
of an invalid argument. See
additional error messages for
details.

End date is invalid

10004

Transaction refused because
of an invalid argument. See
additional error messages for
details.

Currency is not supported

10004

Transaction refused because
of an invalid argument. See
additional error messages for
details.

Transaction class is not supported

SOAP API Developer Reference

August 2012

331

A

API Error Codes
TransactionSearch API Errors

Error
Code

332

Short Message

Long Message

10004

Transaction refused because
of an invalid argument. See
additional error messages for
details.

Receipt id is not valid

10004

Transaction refused because
of an invalid argument. See
additional error messages for
details.

Payer email is invalid

10004

Transaction refused because
of an invalid argument. See
additional error messages for
details.

Auction item id is not valid

10004

Transaction refused because
of an invalid argument. See
additional error messages for
details.

Receiver email is invalid

10004

Transaction refused because
of an invalid argument. See
additional error messages for
details.

You can not search for a transaction id and a receipt id

10004

Transaction refused because
of an invalid argument. See
additional error messages for
details.

Receiver can only be specified for payments you’ve received

10004

Transaction refused because
of an invalid argument. See
additional error messages for
details.

The transaction id is not valid

10007

Permission denied

You do not have permission to search for this transaction

10007

Permission denied

You do not have permission to make this API call

11002

Search warning

The number of results were truncated. Please change your search
parameters if you wish to see all your results.

August 2012

SOAP API Developer Reference

API Error Codes
RefundTransaction API Errors

A

RefundTransaction API Errors
RefundTransaction API Errors
Error
Code

Short Message

Long Message

10001

Internal Error

Internal Error

10001

Internal Error

Warning an internal error has occurred.
The transaction id may not be correct

10001

Internal Error

The transaction could not be loaded.

10002

Restricted account

Account is restricted.

10004

Transaction refused
because of an invalid
argument. See additional
error messages for details.

The partial refund amount must be a
positive amount

10004

Transaction refused
because of an invalid
argument. See additional
error messages for details.

You can not specify a partial amount
with a full refund

10004

Transaction refused
because of an invalid
argument. See additional
error messages for details.

A transaction id is required

10004

Transaction refused
because of an invalid
argument. See additional
error messages for details.

The transaction id is not valid

10007

Permission denied

You do not have permission to refund
this transaction

10007

Permission denied

You do not have permissions to make
this API call

SOAP API Developer Reference

August 2012

Correcting This Error...

333

A

API Error Codes
RefundTransaction API Errors

Error
Code

Short Message

Long Message

Correcting This Error...

10009

Transaction refused

You do not have a verified ACH

This error can be caused by
insufficient funds in your
PayPal balance to cover the
amount of the refund and either
of the following:
 Not having yet verified the
bank account associated
with your PayPal account
 Not having any bank
account associated with
your PayPal account
Be sure that you have sufficient
funds in your PayPal balance
and that you have verified the
associated bank account.

334

10009

Transaction refused

The partial refund amount must be less
than or equal to the original transaction
amount

10009

Transaction refused

The partial refund amount must be less
than or equal to the remaining amount

10009

Transaction refused

The partial refund amount is not valid

10009

Transaction refused

Because a complaint case exists on this
transaction, only a refund of the full or
full remaining amount of the
transaction can be issued

10009

Transaction refused

You are over the time limit to perform a
refund on this transaction

10009

Transaction refused

Can not do a full refund after a partial
refund

10009

Transaction refused

Account is locked or inactive

10009

Transaction refused

The partial refund must be the same
currency as the original transaction

10009

Transaction refused

This transaction has already been fully
refunded

10009

Transaction refused

Account is restricted

10009

Transaction refused

You can not refund this type of
transaction

10009

Transaction refused

You can not do a partial refund on this
transaction

August 2012

SOAP API Developer Reference

API Error Codes
RefundTransaction API Errors

Error
Code

Short Message

Long Message

10009

Transaction refused

The account for the counterparty is
locked or inactive

10009

Transaction refused

This transaction already has a
chargeback filed

10009

Transaction refused

You have not filled out the Direct Debit
Instruction

10011

Invalid transaction id value

Transaction refused because of an
invalid transaction id value

10755

Unsupported currency

Currency is not supported

11603

Conflict with prior request
with same Message
Submission ID.

One or more critical fields in the
request conflict with prior message
with the same Message Submission ID
(specified in MSGSUBID parameter).

11604

Request for Message
Submission ID already in
progress.

Request for the specified Message
Submission ID (specified in
MSGSUBID parameter) cannot be
started until the previous request
finishes.

Retry the request at a later
time.

11607

Duplicate request for
specified Message
Submission ID.

The specified Message Submission ID
(specified in MSGSUBID parameter) is
a duplicate; result parameters of the
original request are attached.

Retry the request at a later
time.

11996

Use Adaptive Payment
Refund API

To do a refund on an Adaptive Payment
transaction, please use the Adaptive
Payment Refund API

12302

Dispute Refund Not
Allowed

This transaction already has a PayPal
dispute filed

13513

Duplicate request for
specified Invoice ID.

The specified Invoice ID is a duplicate.

13531

Funding source provided
for this operation is not
supported

The funding source provided for this
operation is not supported. Please
provide a valid value.

13601

Refund cannot exceed the
transaction amount.

Refunds to users without PayPal
accounts cannot exceed the transaction
amount.

13602

Insufficient funds

Refund failed due to insufficient funds
in your PayPal account

SOAP API Developer Reference

August 2012

A

Correcting This Error...

335

A

API Error Codes
MassPay API Errors

MassPay API Errors
MassPay API Errors

336

Error
Code

Short Message

Long Message

10001

Invalid account number.

The transaction failed as a result of an invalid credit card number.
Check the number or attempt with another card.

10001

Internal Error

Internal Error

10001

Internal Error

The transaction could not be loaded

10001

ButtonSource value truncated.

The transaction could not be loaded

10001

Transaction refused because of
an invalid argument. See
additional error messages for
details.

The masspay receiver_type is not a recognizable type

10002

Account locked

The user account is locked

10004

Transaction refused because of
an invalid argument. See
additional error messages for
details.

The number of input records is greater than maximum allowed

10004

Transaction refused because of
an invalid argument. See
additional error messages for
details.

The number of input records is less than or equal to zero

10004

Transaction refused because of
an invalid argument. See
additional error messages for
details.

The note string length exceeds the maximum limit of 4000
characters

10004

Transaction refused because of
an invalid argument. See
additional error messages for
details.

The amount is missing

10004

Transaction refused because of
an invalid argument. See
additional error messages for
details.

The currency is missing

10004

Transaction refused because of
an invalid argument. See
additional error messages for
details.

Currency is not supported

August 2012

SOAP API Developer Reference

API Error Codes
MassPay API Errors

Error
Code

Short Message

Long Message

10004

Transaction refused because of
an invalid argument. See
additional error messages for
details.

The amount is not a valid number

10004

Transaction refused because of
an invalid argument. See
additional error messages for
details.

The amount exceeds the max limit of a single mass pay item
~1

10004

Transaction refused because of
an invalid argument. See
additional error messages for
details.

The amount is less than or equal to zero

10004

Transaction refused because of
an invalid argument. See
additional error messages for
details.

The unique id string length exceeds the maximum limit of 30
characters

10004

Transaction refused because of
an invalid argument. See
additional error messages for
details.

The unique id string contains a space as a character

10004

Transaction refused because of
an invalid argument. See
additional error messages for
details.

The transaction id is not valid

10007

Permission denied

You do not have permissions to make this API call

10301

User not allowed

The user is not allowed to send money through Mass Pay

10303

Restricted account

Account is restricted

10304

Unconfirmed email

The user account has unconfirmed email

10305

Limit Exceeded

The user account needs to have its sending limit removed in order to
make a mass payment.

10306

Limit Exceeded

The user’s international account needs to have its sending limit
removed in order to make a mass payment

10307

Receive only account

The user account is receive only and therefore cannot send payments
out

10308

Masspay server configuration
error

There is some configuration error

10309

Masspay server unavailable

The mass pay server is unavailable

10310

Unable to create payment

Unable to create payments for masspay

SOAP API Developer Reference

August 2012

A

337

A

API Error Codes
Recurring Payments Errors

Error
Code

Short Message

Long Message

10311

Unable to submit payment

Unable to submit payments for masspay

10312

Masspay server error

The masspay server has reported errors

10313

Masspay Invalid Data

The masspay input file includes invalid data

10314

Masspay input parse error

The input to the masspay server is incorrect. Please make sure that
you are using a correctly formatted input.

10317

Masspay Invalid Email

The masspay input file includes invalid Email

10320

Internal Error

Internal Error

10321

Insufficient funds

The account does not have sufficient funds to do this masspay

10327

Masspay Invalid UserID

The masspay input file includes invalid UserID

Recurring Payments Errors
The following table lists errors for the following APIs that handle recurring payments profiles:


CreateRecurringPaymentsProfile



GetRecurringPaymentsProfileDetails



ManageRecurringPaymentsProfileStatus



UpdateRecurringPaymentsProfile



BillOutstandingAmount

Recurring Payments Errors

338

Error
Code

Short Message

Long Message

10001

Invalid account number

The transaction failed as a result of
invalid credit card number. Check
the number or attempt with another
credit card.

10003

Missing argument

Item name, amount and quantity
are required if item category is
provided.

Scenario: Merchant passes item
category as either Digital or
Physical but does not also pass
one of the following parameters:
name, amount, or quantity.

10004

Transaction refused
because of an invalid
argument. See additional
error messages for details.

You are not signed up to accept
payment for digitally delivered
goods.

Scenario: Merchant is not signed
up for digital goods but passes
item category as Digital.

August 2012

Additional Information

SOAP API Developer Reference

API Error Codes
Recurring Payments Errors

Error
Code

Short Message

Long Message

Additional Information

10004

Cart item calculation
mismatch.

Cart item calculation mismatch.
The regular non-trial billing period
amount is different than the sum of
the amounts for each item in the
cart.

Scenario: When the regular nontrial billing period amount is
different than the sum of the
amounts for each item in the
cart.

10004

Tax calculation mismatch.

Tax calculation mismatch. The tax
amount for the regular non-trial
billing period is different than the
sum of the tax for each item in the
cart.

Scenario: When the tax for the
regular non-trial billing period is
different than the sum of the tax
for each item in the cart.

10478

Invalid Data

Recurring payments profile
description must be provided if the
billing agreement type is recurring
payments.

10501

Invalid Configuration

This transaction cannot be
processed due to an invalid
merchant configuration.

Occurs when the billing
agreement is disabled or
inactive.

10502

Invalid Data

This transaction cannot be
processed. Please use a valid credit
card.

The credit card used is expired.

10504

Invalid Data

This transaction cannot be
processed. Please enter a valid
Credit Card Verification Number.

The CVV provided is invalid.
The CVV is between 3-4 digits
long.

10505

Gateway Decline

This transaction cannot be
processed.

The transaction was refused
because the AVS response
returned the value of N, and the
merchant account is not able to
accept such transactions.

10507

Invalid Configuration

This transaction cannot be
processed. Please contact PayPal
Customer Service.

Your PayPal account is
restricted. Contact PayPal for
more information.

10508

Invalid Data

This transaction cannot be
processed. Please enter a valid
credit card expiration date.

The expiration date must be a
two-digit month and four-digit
year.

10509

Invalid Data

This transaction cannot be
processed.

You must submit an IP address
of the buyer with each API call.

10510

Invalid Data

The credit card type is not
supported. Try another card type.

The credit card type entered is
not currently supported by
PayPal.

SOAP API Developer Reference

August 2012

A

339

A

340

API Error Codes
Recurring Payments Errors

Error
Code

Short Message

Long Message

Additional Information

10511

Invalid Data

This transaction cannot be
processed.

The merchant selected an value
for the PaymentAction field that
is not supported.

10512

Invalid Data

This transaction cannot be
processed. Please enter a first
name.

The first name of the buyer is
required for this merchant.

10513

Invalid Data

This transaction cannot be
processed. Please enter a last
name.

The last name of the buyer is
required for this merchant.

10535

Gateway decline

This transaction cannot be
processed. Please enter a valid
credit card number and type.

10548

Invalid Configuration

This transaction cannot be
processed. The merchant’s account
is not able to process transactions.

The merchant account
attempting the transaction is not
a business account at PayPal.
Check your account settings.

10550

Invalid Configuration

This transaction cannot be
processed.

Access to Direct Payment was
disabled for your account.
Contact PayPal for more
information.

10561

Invalid Data

There’s an error with this
transaction. Please enter complete
billing address.

10565

Merchant country
unsupported

The merchant country is not
supported.

10709

Invalid Data

There’s an error with this
transaction. Please enter an
address1 in the billing address.

There was a problem with a
particular field in the address.
The long error message tells you
which field is invalid.

10710

Invalid Data

There’s an error with this
transaction. Please enter a city in
the billing address.

There was a problem with a
particular field in the address.
The long error message tells you
which field is invalid.

10711

Invalid Data

There’s an error with this
transaction. Please enter your state
in the billing address.

There was a problem with a
particular field in the address.
The long error message tells you
which field is invalid.

10712

Invalid Data

There’s an error with this
transaction. Please enter your five
digit postal code in the billing
address.

There was a problem with a
particular field in the address.
The long error message tells you
which field is invalid.

August 2012

SOAP API Developer Reference

API Error Codes
Recurring Payments Errors

Error
Code

Short Message

Long Message

Additional Information

10713

Invalid Data

There’s an error with this
transaction. Please enter a country
in the billing address.

There was a problem with a
particular field in the address.
The long error message tells you
which field is invalid.

10744

Invalid Data

This transaction cannot be
processed. Please enter a valid
country code in the billing address.

There was a problem with a
particular field in the address.
The long error message will tells
you which field is invalid.

10748

Invalid Data

This transaction cannot be
processed without a Credit Card
Verification Number.

The merchant’s configuration
requires a CVV to be entered,
but no CVV was provided with
this transaction. Contact PayPal
if you wish to change this
setting.

10751

Invalid Data

There’s an error with this
transaction. Please enter a valid
state in the billing address.

The merchant provided an
address either in the United
States or Canada, but the state
provided is not a valid state in
either country.

10752

Gateway Decline

This transaction cannot be
processed.

The transaction was declined by
the issuing bank, not PayPal. The
merchant should attempt another
card.

10760

Invalid Configuration

This transaction cannot be
processed. The country listed for
your business address is not
currently supported.

The merchant’s country of
residence listed in their PayPal
account is not currently
supported to allow Direct
Payment transactions.

11089

Transaction Refused.

Account is locked or inactive.

11501

Invalid merchant country

The merchant’s country is
currently not supported

Missing token

11502

The token is missing or is
invalid

The token is missing or is invalid

One or more subscription detail
fields are missing from the
request.

11503

Missing subscription details

Missing subscription details

One or more schedule detail
fields are missing from the
request.

11504

Missing schedule details

Missing schedule details

11505

Start date should be greater
than current date

Subscription start date should be
greater than current date

SOAP API Developer Reference

August 2012

A

341

A

API Error Codes
Recurring Payments Errors

Error
Code

342

Short Message

Long Message

11506

Invalid max failed
payments

Max failed payments, if supplied,
must be >= 0

11507

Invalid trial amount

Trial amount must be >= 0

11508

Invalid trial total billing
cycles

Trial total billing cycles must be >
0

11509

Invalid trial billing period

Trial billing period must be one of
Day, Week, Month, SemiMonth, or
Year

11510

Invalid trial amount

Trial amount must be >= 0

11511

Invalid currency for trial
amount

This currency is currently not
supported for trial amount.

Currency must be USD.

11512

Invalid trial shipping
amount

Trial shipping amount must be >=
0

If a trial shipping amount is
supplied, it must be >= 0.

11513

Invalid currency for trial
shipping amount

This currency is currently not
supported for trial shipping amount

Currency must be USD.

11514

Invalid profile status

The profile status is invalid.

11515

Invalid currency for trial tax
amount

This currency is currently not
supported for trial tax amount

Currency must be USD.

11516

Invalid billing frequency

Billing Frequency must be > 0 and
be less than or equal to one year

The combination of billing
frequency and billing period
cannot exceed one year.

11517

Invalid total billing cycles

Total billing cycles must be >= 0 (0
means continuous)

11518

Invalid billing period

Billing period must be one of Day,
Week, Month, SemiMonth, or Year

11519

Invalid amount

Bill amount must be greater than 0

11520

Invalid currency for amount

This currency is currently not
supported for amount

11521

Invalid shipping amount

Shipping amount must be >= 0

11522

Invalid currency for
shipping amount

This currency is currently not
supported for shipping amount

11523

Invalid tax amount

Tax amount must be >= 0

11524

Invalid currency for tax
amount

This currency is currently not
supported for tax amount

11531

Invalid profile status

The profile status must be one of
(A)ctive, (C)ancelled, or e(X)pired

August 2012

Additional Information

Currency must be USD.

Currency must be USD.

Currency must be USD.

SOAP API Developer Reference

API Error Codes
Recurring Payments Errors

Error
Code

Short Message

Long Message

11543

Invalid payer country

The payer’s country is currently
not supported

11544

Invalid period status

The trial period status must be one
of (A)ctive or (C)ancelled

11545

Denied

Payer’s account is denied

11546

Denied

Merchant account is denied

11547

This feature is not available
at this time

Recurring payments feature is not
currently available; try again later

11548

Invalid currency code

Invalid currency code, all currency
codes much match

11549

Start Date is required

Subscription start date is required

11550

Start Date should be valid

Subscription start date should be
valid

11551

Profile ID is missing from
the request

Profile ID is missing from the
request

11552

Invalid profile ID

The profile ID is invalid

11553

Invalid action value
provided

Invalid action value provided

11554

Note is missing from the
request

Note is missing from the request

11556

Invalid profile status for
cancel action; profile
should be active or
suspended

Invalid profile status for suspend
action; profile should be active

11557

Invalid profile status for
suspend action; profile
should be active

Invalid profile status for reactivate
action; profile should be suspended

11558

Invalid profile status for
reactivate action; profile
should be suspended

The activation type is invalid

11560

Invalid activation type

The activation type is invalid

11561

Invalid initial amount

The initial amount is invalid

11562

Invalid auto bill type

The auto bill type is invalid

A

Additional Information

11555

SOAP API Developer Reference

August 2012

343

A

API Error Codes
Recurring Payments Errors

Error
Code

344

Short Message

Long Message

11564

The number of failed
payments should be greater
than the current number of
failed payments

The number of failed payments
should be greater than the current
number of failed payments

11567

The time of the update is
too close to the billing date

The time of the update is too close
to the billing date

11568

Invalid currency for
delinquent amount

Invalid currency for delinquent
amount

11569

Cannot increase delinquent
amount

Cannot increase delinquent amount

11570

The maximum number of
failed payments should be
greater than the current
number of failed payments

The maximum number of failed
payments should be greater than
the current number of failed
payments

11571

The total amount cannot
exceed 120% increment per
180 days

The total amount cannot exceed
120% increment per 180 days

11576

Bill amount is greater than
outstanding balance

Bill amount is greater than
outstanding balance

11577

Another outstanding
payment is scheduled

Another outstanding payment is
scheduled

11578

Bill outstanding amount not
processed because of
scheduled payment

Recurring payment scheduled
within 24 hours, so we are not
processing the bill outstanding
amount

11579

Payment is failing

Payment is failing

11581

Invalid Data

Profile description is invalid.

11582

No payment in queue

No scheduled payment has been
found.

11583

DPRP feature is unavailable

DPRP feature is unavailable

11584

Inactive profile

Profile is not active

11585

Missing Token or buyer
credit card

Missing token or payment source

11586

DPRP is disabled

DPRP is disabled for this
merchant.

11587

Billing Address is Partial

Billing Address is Partial

August 2012

Additional Information

SOAP API Developer Reference

API Error Codes
SetCustomerBillingAgreement Errors

Error
Code

Short Message

Long Message

11590

Profile update is not
required

Based on your input request,
profile already up to date.

11592

Subscription profiles are
not supported for recurring
payments

Subscription profiles are not
supported for recurring payments

13122

Transaction refused

Transaction violates PayPal use

13701

Invalid Data

Item Category value is invalid.
Only Digital or Physical are
allowed.

15004

Gateway Decline

This transaction cannot be
processed. Please enter a valid
Credit Card Verification Number.

A

Additional Information

Scenario: When merchant passes
an item category value other than
Digital or Physical.

SetCustomerBillingAgreement Errors
SetCustomerBillingAgreement Errors
Error
Code

Short Message

Long Message

10004

Transaction refused
because of an invalid
argument. See additional
error messages for details.

Invalid argument; BillingType
input field is set to None

10404

Transaction refused
because of an invalid
argument. See additional
error messages for details.

ReturnURL is missing.

10004

Transaction refused
because of an invalid
argument. See additional
error messages for details.

Invalid value for request billing
address parameter.

10405

Transaction refused
because of an invalid
argument. See additional
error messages for details.

CancelURL is missing.

CancelURL tag has no content.

10407

Transaction refused
because of an invalid
argument. See additional
error messages for details.

Invalid buyer email address
(BuyerEmail).

Invalid BuyerEmail (badly
formatted or violates SMTP
protocol defined email address
format) or BuyerEmail is passed
as an empty tag.

SOAP API Developer Reference

August 2012

Additional Information

ReturnURL tag has no content.

345

A

API Error Codes
SetCustomerBillingAgreement Errors

Error
Code

346

Short Message

Long Message

Additional Information

10436

Transaction refused
because of an invalid
argument. See additional
error messages for details.

PageStyle value exceeds maximum
allowable length.

PageStyle tag is too long.

10437

Transaction refused
because of an invalid
argument. See additional
error messages for details.

cpp-header-image value exceeds
maximum allowable length.

cpp_header_image tag is too
long; maximum length is 127.

10438

Transaction refused
because of an invalid
argument. See additional
error messages for details.

cpp-header-border-color value
exceeds maximum allowable
length.

cpp_header_border_color tag is
too long; maximum length is 6.

10439

Transaction refused
because of an invalid
argument. See additional
error messages for details.

cpp-header-back-color value
exceeds maximum allowable
length.

cpp_header_back_color tag is
too long; maximum length is 6.

10440

Transaction refused
because of an invalid
argument. See additional
error messages for details.

cpp-payflow-color value exceeds
maximum allowable length.

cpp_payflow_color tag is too
long; maximum length is 6.

10471

Transaction refused
because of an invalid
argument. See additional
error messages for details.

ReturnURL is invalid.

ReturnURL tag contains invalid
URL.

10472

Transaction refused
because of an invalid
argument. See additional
error messages for details.

CancelURL is invalid.

CancelURL tag contains invalid
URL.

10476

Transaction refused
because of an invalid
argument. See additional
error messages for details.

10477

Transaction refused
because of an invalid
argument. See additional
error messages for details.

10485

Payment not authorized

Payment has not been authorized
by the user.

11452

Merchant not enabled for
reference transactions

Merchant not enabled for reference
transactions

August 2012

This merchant is not enabled for
Mark reference transaction.
Warning only.

SOAP API Developer Reference

API Error Codes
GetBillingAgreementCustomerDetails Errors

Error
Code

Short Message

Long Message

Additional Information

11453

Reference transactions
temporarily unavailable.

Reference transaction feature not
currently available; try again later

Feature not enabled because
system is running in standin
mode. Warning only.

11601

Request for billing address
failed

Billing address request is not
enabled for merchant

11602

Request for billing address
failed

Feature not yet available

A

GetBillingAgreementCustomerDetails Errors
GetBillingAgreementCustomerDetails Errors
Error
Code

Short Message

Long Message

Additional Information

10408

Missing token

Token is missing

Token is missing.

10409

You’re not authorized to
access this info.

Express Checkout token was
issued for a merchant account
other than yours.

Token belongs to a different
merchant.

10410

Invalid token

Invalid token

Token is invalid.

10411

This Express Checkout
session has expired.

This Express Checkout session has
expired. Token value is no longer
valid.

Token expired.

CreateBillingAgreement Errors
CreateBillingAgreement Errors
Error
Code

Short Message

Long Message

Additional Information

10408

Missing token

Token is missing

Token is missing.

10409

You’re not authorized to
access this info.

Express Checkout token was
issued for a merchant account
other than yours.

Token belongs to a different
merchant.

10410

Invalid token

Invalid token

Token is invalid.

10411

This Express Checkout
session has expired.

This Express Checkout session has
expired. Token value is no longer
valid.

Token expired.

SOAP API Developer Reference

August 2012

347

A

API Error Codes
UpdateBillingAgreement Errors

Error
Code

Short Message

Long Message

Additional Information

11455

Buyer did not accept billing
agreement

Buyer did not accept billing
agreement

Buyer has not agreed to the
billing agreement.

11456

A successful Billing
Agreement has already
been created for this token.

Transaction refused because of an
invalid argument. See additional
error messages for details.

Token has already been used to
create a billing agreement.

10408

Missing token

Token is missing

Token is missing.

10409

You’re not authorized to
access this info.

Express Checkout token was
issued for a merchant account
other than yours.

Token belongs to a different
merchant.

10410

Invalid token

Invalid token

Token is invalid.

10411

This Express Checkout
session has expired.

This Express Checkout session has
expired. Token value is no longer
valid.

Token expired.

UpdateBillingAgreement Errors
UpdateBillingAgreement Errors

348

Error
Code

Short Message

Long Message

10001

Internal Error

Internal Error

10004

Transaction refused
because of an invalid
argument. See additional
error messages for details.

Invalid argument; description field
or custom field is empty and the
status is active

Check the description and
custom fields of the billing
agreement. Either the description
or custom field is empty and the
status is active or the contents of
one of these fields exceeds the
maximum field length.

10201

Billing Agreement was
cancelled

Billing Agreement was cancelled

Billing agreement has been
cancelled.

10204

User’s account is closed or
restricted

User’s account is closed or
restricted

10209

Disabled

Preapproved Payments not
enabled.

Merchant pull is not enabled for
the country or merchant is not
enabled for merchant pull.

10209

Disabled

Preapproved Payments not
enabled.

Account number mismatch
exists for the API caller and the
account the billing agreement
belongs to.

August 2012

Additional Information

SOAP API Developer Reference

API Error Codes
DoReferenceTransaction Errors

Error
Code

Short Message

Long Message

10211

Invalid billing agreement
ID

Invalid transaction or billing
agreement ID; could not find
Billing Agreement in database

11451

Billing Agreement Id or
transaction Id is not valid

Billing Agreement Id or
transaction Id is not valid

ReferenceID field is empty.

11451

Billing Agreement Id or
transaction Id is not valid

Billing Agreement Id or
transaction Id is not valid

Reference id refers to an invalid
transaction.

11452

Merchant not enabled for
reference transactions

Merchant not enabled for reference
transactions

This merchant is not enabled for
Mark reference transaction.

A

Additional Information

DoReferenceTransaction Errors
All Reference Transactions-Related API Errors
Error
Code

Short Message

Long Message

10001

Internal Error

Internal Error

10002

Authentication/Authorizati
on Failed

10003

Missing argument

Item name, amount and quantity
are required if item category is
provided.

Scenario: Merchant passes item
category as either Digital or
Physical but does not also pass
one of the following parameters:
name, amount, or quantity.

10004

Transaction refused
because of an invalid
argument. See additional
error messages for details.

You are not signed up to accept
payment for digitally delivered
goods.

Scenario: Merchant is not signed
up for digital goods but passes
item category as Digital.

10004

Cart item calculation
mismatch.

Cart item calculation mismatch.
The regular non-trial billing period
amount is different than the sum of
the amounts for each item in the
cart.

Scenario: When the regular nontrial billing period amount is
different than the sum of the
amounts for each item in the
cart.

10004

Tax calculation mismatch.

Tax calculation mismatch. The tax
amount for the regular non-trial
billing period is different than the
sum of the tax for each item in the
cart.

Scenario: When the regular nontrial billing period is different
than the sum of the tax for each
item in the cart.

SOAP API Developer Reference

August 2012

Additional Information

349

A

API Error Codes
DoReferenceTransaction Errors

Error
Code

Short Message

Long Message

10004

Transaction refused
because of an invalid
argument. See additional
error messages for details.

Invalid payment type argument

10009

Transaction refused

The account for the counterparty is
locked or inactive

Merchant is
locked/close/restricted.

10010

Invalid Invoice

Non-ASCII invoice id is not
supported

Non-ASCII characters are used
in InvoiceID field.

10201

Agreement canceled

Billing Agreement was cancelled

Billing agreement is not active.

10202

Exceed max

Transaction would exceed user’s
monthly maximum

Transaction would exceed the
monthly limit.

10203

Action required

Transaction failed, action required
by user

10204

User’s account is closed or
restricted

User’s account is closed or
restricted

10205

Risk

Transaction refused due to risk
model

10206

Duplicate

Transaction was already processed

10207

Retry

Transaction failed but user has
alternate funding source

Retry the transaction with an
alternate funding source.

10209

Disabled

Preapproved Payments not
enabled.

Merchants is not enabled for
preapproved payments (PAP);
applies only to legacy PAP
billing agreements.

10210

No Funding

Transaction failed because has no
funding sources

Payee has no funding sources.

Invalid MP ID

Invalid MP ID.
A profile preference is set that
automatically denies this kind of
transaction.

10211
10212

Profile preference setting

A profile preference is set to
automatically deny certain
transactions

10213

Invalid Soft Descriptor

The soft descriptor passed in
contains invalid characters

10214

350

Additional Information

Soft descriptor format error.

10215

Soft Descriptor truncated

The soft descriptor was truncated

10216

Confirmed address required

Transaction refused because a
confirmed address is not available

August 2012

Transaction refused because a
confirmed address is not
available.

SOAP API Developer Reference

API Error Codes
DoReferenceTransaction Errors

Error
Code

Short Message

Long Message

Additional Information

10400

Transaction refused
because of an invalid
argument. See additional
error messages for details.

Order total is missing.

TotalOrder amount is missing.

10401

Transaction refused
because of an invalid
argument. See additional
error messages for details.

Order total is invalid.

TotalOrder amount is invalid.

10402

Authorization only is not
allowed for merchant.

This merchant account is not
permitted to set PaymentAction? to
Authorization. Please contact
Customer Service.

Merchant is not eligible for auth
settlement.

10406

Transaction refused
because of an invalid
argument. See additional
error messages for details.

The PayerID? value is invalid.

Merchant account number is
invalid.

10412

Duplicate invoice

Payment has already been made
for this InvoiceID?.

Payment already made for the
invoice.

10413

Transaction refused
because of an invalid
argument. See additional
error messages for details.

The totals of the cart item amounts
do not match order amounts.

Total of cart items does not
match order total.

10414

Transaction refused
because of an invalid
argument. See additional
error messages for details.

The amount exceeds the maximum
amount for a single transaction.

Amount exceeds the max
amount for a single txn.

10417

Transaction cannot
complete.

The transaction cannot complete
successfully. Instruct the customer
to use an alternative payment
method.

Account not associated with a
usable funding source.

10417

Transaction cannot
complete.

The transaction cannot complete
successfully. Instruct the customer
to use an alternative payment
method.

Credit card or Billing Agreement
is required to complete payment.

10418

Transaction refused
because of an invalid
argument. See additional
error messages for details.

The currencies of the shopping cart
amounts must be the same.

Currencies in the shopping cart
must be the same.

10420

Transaction refused
because of an invalid
argument. See additional
error messages for details.

PaymentAction? tag is missing.

PaymentAction? tag is missing.

SOAP API Developer Reference

August 2012

A

351

A

API Error Codes
DoReferenceTransaction Errors

Error
Code

352

Short Message

Long Message

Additional Information

10426

Transaction refused
because of an invalid
argument. See additional
error messages for details.

Item total is invalid.

ItemTotal amount is invalid.

10427

Transaction refused
because of an invalid
argument. See additional
error messages for details.

Shipping total is invalid.

ShippingTotal amount is invalid.

10428

Transaction refused
because of an invalid
argument. See additional
error messages for details.

Handling total is invalid.

HandlingTotal amount is invalid.

10429

Transaction refused
because of an invalid
argument. See additional
error messages for details.

Tax total is invalid.

TaxTotal amount is invalid.

10429

Transaction refused
because of an invalid
argument. See additional
error messages for details.

Item sales tax is invalid

PaymentDetailsItem.Tax field is
invalid. Warning only; API
executes.

10430

Transaction refused
because of an invalid
argument. See additional
error messages for details.

Item amount is missing.

PaymentDetailsItem.Amount
field is missing. Warning only;
API executes.

10431

Transaction refused
because of an invalid
argument. See additional
error messages for details.

Item amount is invalid.

PaymentDetailsItem.Amount
field is invalid. Warning only;
API executes.

10432

Transaction refused
because of an invalid
argument. See additional
error messages for details.

Invoice ID value exceeds
maximum allowable length.

InvoiceID field is too long;
maximum length is 256.

10433

Transaction refused
because of an invalid
argument. See additional
error messages for details.

Value of OrderDescription element
has been truncated.

OrderDescription field is too
long; maximum length is 127.
Warning only; API executes.

10434

Transaction refused
because of an invalid
argument. See additional
error messages for details.

Value of Custom element has been
truncated.

Custom field is too long;
maximum length is 256.
Warning only; API executes.

August 2012

SOAP API Developer Reference

API Error Codes
DoReferenceTransaction Errors

Error
Code

Short Message

Long Message

Additional Information

10441

Transaction refused
because of an invalid
argument. See additional
error messages for details.

The NotifyURL element value
exceeds maximum allowable
length.

NotifyURL field is too long;
maximum length for notify URL
is 2048.

10442

ButtonSource value
truncated.

The ButtonSource element value
exceeds maximum allowable
length.

ButtonSource field is too long;
maximum length is 32. Warning
only; API executes.

10504

The cvv2 is invalid.

This transaction cannot be
processed. Please enter a valid
Credit Card Verification Number.

CVV2 field is invalid.

10527

Invalid Data

This transaction cannot be
processed. Please enter a valid
credit card number and type.

CreditCardNumber and/or
CreditCardType is invalid.

10537

Risk Control Country Filter
Failure

The transaction was refused
because the country was prohibited
as a result of your Country Monitor
Risk Control Settings.

Transaction refused due to
country monitor risk control.

10538

Risk Control Max Amount
Failure

The transaction was refused
because the maximum amount was
excused as a result of your
Maximum Amount Risk Control
Settings.

Transaction refused due to max
amount risk control.

10539

Payment declined by your
Risk Controls settings:
PayPal Risk Model.

Payment declined by your Risk
Controls settings: PayPal Risk
Model.

Transaction declined by Risk
Control settings: PayPal Risk
model.

10546

Gateway Decline

This transaction cannot be
processed.

IP fraud models failed.

10560

Invalid Data

The issue number of the credit card
is invalid.

IssueNumber is invalid.

10567

Invalid Data

A Start Date or Issue Number is
required.

None of Start date or issue
number is specified (only applies
to Switch credit cards).

10600

Authorization voided

Authorization voided.

10601

Authorization expired.

Authorization has expired

10621

Order has expired.

Order has expired.

10622

Order is voided.

Order is voided.

10623

Maximum number of
authorization allowed for
the order is reached.

Maximum number of authorization
allowed for the order is reached.

SOAP API Developer Reference

August 2012

A

353

A

API Error Codes
DoReferenceTransaction Errors

Error
Code

354

Short Message

Long Message

Additional Information

10725

Shipping Address Country
Error

There was an error in the Shipping
Address Country field

Shipping address error in
country field.

10727

Shipping Address1 Empty

The field Shipping Address1 is
required

Shipping address error in
address1 field.

10728

Shipping Address City
Empty

The field Shipping Address City is
required

Shipping address error in city
field.

10729

Shipping Address State
Empty

The field Shipping Address State is
required

Shipping address error in state
field.

10730

Shipping Address Postal
Code Empty

The field Shipping Address Postal
Code is required

Shipping address error in postal
code.

10731

Shipping Address Country
Empty

The field Shipping Address
Country is required

Country code is empty in
shipping address.

10736

Shipping Address Invalid
City State Postal Code

A match of the Shipping Address
City, State, and Postal Code failed.

Match of shipping address, city,
state, and postal code failed.

10747

Invalid Data

This transaction cannot be
processed without a valid IP
address.

IPAddress field is invalid.

10748

Invalid Data

This transaction cannot be
processed without a Credit Card
Verification number.

CVV2 field is missing.

10755

Unsupported Currency.

This transaction cannot be
processed due to an unsupported
currency.

11084

User does not have a good
funding source with which
to pay.

User does not have a good funding
source with which to pay.

Scenario: The credit card
associated with the account
could not be used and there is no
other funding source with which
to complete the transaction.

11091

The transaction was
blocked as it would exceed
the sending limit for this
buyer.

The transaction was blocked as it
would exceed the sending limit for
this buyer.

The transaction was declined by
PayPal. Please have the buyer
contact PayPal Customer
Service.

11302

Cannot pay self

The transaction was refused
because you cannot send money to
yourself.

Cannot pay self. Merchant is
referencing own transaction.

11451

Billing Agreement Id or
transaction Id is not valid

Billing Agreement Id or
transaction Id is not valid

Invalid reference id.

August 2012

SOAP API Developer Reference

API Error Codes
DoReferenceTransaction Errors

Error
Code

Short Message

Long Message

Additional Information

11451

Billing Agreement Id or
transaction Id is not valid

Billing Agreement Id or
transaction Id is not valid

Reference transaction is not
associated with a billing
agreement.

11451

Billing Agreement Id or
transaction Id is not valid

Billing Agreement Id or
transaction Id is not valid

Reference id either not found or
could not be decrypted.

11451

Billing Agreement Id or
transaction Id is not valid

Billing Agreement Id or
transaction Id is not valid

Reference id either not found or
could not be decrypted.

11452

Merchant not enabled for
reference transactions

Merchant not enabled for reference
transactions

This merchant is not enabled for
Mark reference transaction.

11453

Reference transactions
temporarily unavailable.

Reference transaction feature not
currently available; try again later

Feature wired off.

11453

Reference transactions
temporarily unavailable.

Reference transaction feature not
currently available; try again later

Feature not supported in standin.

11454

Warning: Could not send
email to the buyer

Warning: Could not send email to
the buyer

Failed to send email to buyer.
This error is not fatal and
generates a warning.

11459

Invalid Data

The shipping address must match
the user’s address in the PayPal
account.

The shipping address on file
does not match the requested
shipping address.

11610

Payment Pending your
review in Fraud
Management Filters

Payment Pending your review in
Fraud Management Filters

11611

Transaction blocked by
your settings in FMF

Transaction blocked by your
settings in FMF

11612

Could not process your
request to accept/deny the
transaction

Could not process your request to
accept/deny the transaction

13122

Transaction refused

Transaction violates PayPal Use

13701

Invalid Data

Item Category value is invalid.
Only Digital or Physical are
allowed.

Scenario: When merchant passes
an item category value other than
Digital or Physical.

18014

Gateway Decline

This transaction cannot be
processed.

This transaction cannot be
processed without a Credit Card
Verification number.

SOAP API Developer Reference

August 2012

A

355

A

API Error Codes
AddressVerify API Errors

AddressVerify API Errors
AddressVerify API Errors
Error Code

Short Message

Long Message

10004

Transaction refused because
of an invalid argument. See
additional error messages
for details.

Invalid email format.

10004

Transaction refused because
of an invalid argument. See
additional error messages
for details.

Invalid street format

10004

Transaction refused because
of an invalid argument. See
additional error messages
for details.

Invalid zip format

10009

The API is disabled.

The Address API is currently disabled

ManagePendingTransactionStatus API Errors
ManagePendingTransactionStatus API Errors

356

Error Code

Short Message

Long Message

11614

Could not process your request
to accept/deny the transaction

Could not process your request to accept/deny the transaction

11614

The transaction has already
been Accepted/Denied and the
status cannot be changed

The transaction has already been Accepted/Denied and the
status cannot be changed

August 2012

SOAP API Developer Reference

B

Countries and Regions
Supported by PayPal
PayPal uses 2-character IS0-3166-1 codes for specifying countries and regions that are
supported in fields and variables. Countries marked with an asterisk ( * ) are not supported for
PayPal Payments Pro and Virtual Terminal.

Country or Region

Country or Region Code

ÅLAND ISLANDS

AX

ALBANIA

AL

ALGERIA *

DZ *

AMERICAN SAMOA

AS

ANDORRA

AD

ANGUILLA

AI

ANTARCTICA *

AQ *

ANTIGUA AND BARBUDA

AG

ARGENTINA

AR

ARMENIA

AM

ARUBA

AW

AUSTRALIA

AU

AUSTRIA

AT

AZERBAIJAN

AZ

BAHAMAS

BS

BAHRAIN

BH

BANGLADESH

BD

BARBADOS

BB

BELGIUM

BE

BELIZE

BZ

BENIN

BJ

BERMUDA

BM

BHUTAN

BT

BOSNIA-HERZEGOVINA

BA

SOAP API Developer Reference

August 2012

357

B

358

Countries and Regions Supported by PayPal

Country or Region

Country or Region Code

BOTSWANA

BW

BOUVET ISLAND *

BV *

BRAZIL

BR

BRITISH INDIAN OCEAN TERRITORY *

IO *

BRUNEI DARUSSALAM

BN

BULGARIA

BG

BURKINA FASO

BF

CANADA

CA

CAPE VERDE

CV

CAYMAN ISLANDS

KY

CENTRAL AFRICAN REPUBLIC *

CF *

CHILE

CL

CHINA

CN

CHRISTMAS ISLAND *

CX *

COCOS (KEELING) ISLANDS

CC

COLOMBIA

CO

COOK ISLANDS

CK

COSTA RICA

CR

CYPRUS

CY

CZECH REPUBLIC

CZ

DENMARK

DK

DJIBOUTI

DJ

DOMINICA

DM

DOMINICAN REPUBLIC

DO

ECUADOR

EC

EGYPT

EG

EL SALVADOR

SV

ESTONIA

EE

FALKLAND ISLANDS (MALVINAS)

FK

FAROE ISLANDS

FO

FIJI

FJ

August 2012

SOAP API Developer Reference

Countries and Regions Supported by PayPal

Country or Region

Country or Region Code

FINLAND

FI

FRANCE

FR

FRENCH GUIANA

GF

FRENCH POLYNESIA

PF

FRENCH SOUTHERN TERRITORIES

TF

GABON

GA

GAMBIA

GM

GEORGIA

GE

GERMANY

DE

GHANA

GH

GIBRALTAR

GI

GREECE

GR

GREENLAND

GL

GRENADA

GD

GUADELOUPE

GP

GUAM

GU

GUERNSEY

GG

GUYANA

GY

HEARD ISLAND AND MCDONALD ISLANDS *

HM *

HOLY SEE (VATICAN CITY STATE)

VA

HONDURAS

HN

HONG KONG

HK

HUNGARY

HU

ICELAND

IS

INDIA

IN

INDONESIA

ID

IRELAND

IE

ISLE OF MAN

IM

ISRAEL

IL

ITALY

IT

JAMAICA

JM

SOAP API Developer Reference

August 2012

B

359

B

360

Countries and Regions Supported by PayPal

Country or Region

Country or Region Code

JAPAN

JP

JERSEY

JE

JORDAN

JO

KAZAKHSTAN

KZ

KIRIBATI

KI

KOREA, REPUBLIC OF

KR

KUWAIT

KW

KYRGYZSTAN

KG

LATVIA

LV

LESOTHO

LS

LIECHTENSTEIN

LI

LITHUANIA

LT

LUXEMBOURG

LU

MACAO

MO

MACEDONIA

MK

MADAGASCAR

MG

MALAWI

MW

MALAYSIA

MY

MALTA

MT

MARSHALL ISLANDS

MH

MARTINIQUE

MQ

MAURITANIA

MR

MAURITIUS

MU

MAYOTTE

YT

MEXICO

MX

MICRONESIA, FEDERATED STATES OF

FM

MOLDOVA, REPUBLIC OF

MD

MONACO

MC

MONGOLIA

MN

MONTENEGRO

ME

MONTSERRAT

MS

August 2012

SOAP API Developer Reference

Countries and Regions Supported by PayPal

Country or Region

Country or Region Code

MOROCCO

MA

MOZAMBIQUE

MZ

NAMIBIA

NA

NAURU

NR

NEPAL *

NP *

NETHERLANDS

NL

NETHERLANDS ANTILLES

AN

NEW CALEDONIA

NC

NEW ZEALAND

NZ

NICARAGUA

NI

NIGER

NE

NIUE

NU

NORFOLK ISLAND

NF

NORTHERN MARIANA ISLANDS

MP

NORWAY

NO

OMAN

OM

PALAU

PW

PALESTINE

PS

PANAMA

PA

PARAGUAY

PY

PERU

PE

PHILIPPINES

PH

PITCAIRN

PN

POLAND

PL

PORTUGAL

PT

PUERTO RICO

PR

QATAR

QA

REUNION

RE

ROMANIA

RO

RUSSIAN FEDERATION

RU

RWANDA

RW

SOAP API Developer Reference

August 2012

B

361

B

362

Countries and Regions Supported by PayPal

Country or Region

Country or Region Code

SAINT HELENA

SH

SAINT KITTS AND NEVIS

KN

SAINT LUCIA

LC

SAINT PIERRE AND MIQUELON

PM

SAINT VINCENT AND THE GRENADINES

VC

SAMOA

WS

SAN MARINO

SM

SAO TOME AND PRINCIPE *

ST *

SAUDI ARABIA

SA

SENEGAL

SN

SERBIA

RS

SEYCHELLES

SC

SINGAPORE

SG

SLOVAKIA

SK

SLOVENIA

SI

SOLOMON ISLANDS

SB

SOUTH AFRICA

ZA

SOUTH GEORGIA AND THE SOUTH SANDWICH ISLANDS

GS

SPAIN

ES

SURINAME

SR

SVALBARD AND JAN MAYEN

SJ

SWAZILAND

SZ

SWEDEN

SE

SWITZERLAND

CH

TAIWAN, PROVINCE OF CHINA

TW

TANZANIA, UNITED REPUBLIC OF

TZ

THAILAND

TH

TIMOR-LESTE

TL

TOGO

TG

TOKELAU

TK

TONGA

TO

August 2012

SOAP API Developer Reference

Countries and Regions Supported by PayPal

Country or Region

Country or Region Code

TRINIDAD AND TOBAGO

TT

TUNISIA

TN

TURKEY

TR

TURKMENISTAN

TM

TURKS AND CAICOS ISLANDS

TC

TUVALU

TV

UGANDA

UG

UKRAINE

UA

UNITED ARAB EMIRATES

AE

UNITED KINGDOM

GB

UNITED STATES

US

UNITED STATES MINOR OUTLYING ISLANDS

UM

URUGUAY

UY

UZBEKISTAN

UZ

VANUATU

VU

VENEZUELA

VE

VIET NAM

VN

VIRGIN ISLANDS, BRITISH

VG

VIRGIN ISLANDS, U.S.

VI

WALLIS AND FUTUNA

WF

WESTERN SAHARA

EH

ZAMBIA

ZM

SOAP API Developer Reference

August 2012

B

363

B

364

Countries and Regions Supported by PayPal

August 2012

SOAP API Developer Reference

C

State and Province Codes

Canadian Province or U.S. State

Abbreviation

Alberta

AB

British Columbia

BC

Manitoba

MB

New Brunswick

NB

Newfoundland and Labrador

NL

Northwest Territories

NT

Nova Scotia

NS

Nunavut

NU

Ontario

ON

Prince Edward Island

PE

Quebec

QC

Saskatchewan

SK

Yukon

YT

Alabama

AL

Alaska

AK

American Samoa

AS

Arizona

AZ

Arkansas

AR

California

CA

Colorado

CO

Connecticut

CT

Delaware

DE

District of Columbia

DC

Federated States of Micronesia

FM

Florida

FL

Georgia

GA

SOAP API Developer Reference

August 2012

365

C

366

State and Province Codes

Canadian Province or U.S. State

Abbreviation

Guam

GU

Hawaii

HI

Idaho

ID

Illinois

IL

Indiana

IN

Iowa

IA

Kansas

KS

Kentucky

KY

Louisiana

LA

Maine

ME

Marshall Islands

MH

Maryland

MD

Massachusetts

MA

Michigan

MI

Minnesota

MN

Mississippi

MS

Missouri

MO

Montana

MT

Nebraska

NE

Nevada

NV

New Hampshire

NH

New Jersey

NJ

New Mexico

NM

New York

NY

North Carolina

NC

North Dakota

ND

Northern Mariana Islands

MP

Ohio

OH

Oklahoma

OK

Oregon

OR

Palau

PW

August 2012

SOAP API Developer Reference

State and Province Codes

Canadian Province or U.S. State

Abbreviation

Pennsylvania

PA

Puerto Rico

PR

Rhode Island

RI

South Carolina

SC

South Dakota

SD

Tennessee

TN

Texas

TX

Utah

UT

Vermont

VT

Virgin Islands

VI

Virginia

VA

Washington

WA

West Virginia

WV

Wisconsin

WI

Wyoming

WY

Armed Forces Americas

AA

Armed Forces

AE

Armed Forces Pacific

AP

SOAP API Developer Reference

August 2012

C

367

C

368

State and Province Codes

August 2012

SOAP API Developer Reference

D

Currency Codes

PayPal uses 3-character ISO-4217 codes for specifying currencies in fields and variables.
Currencies and Currency Codes Supported by PayPal
Currency

Currency Code

Australian Dollar

AUD

Brazilian Real

BRL

N O TE :

This currency is supported as a payment
currency and a currency balance for in-country
PayPal accounts only.

Canadian Dollar

CAD

Czech Koruna

CZK

Danish Krone

DKK

Euro

EUR

Hong Kong Dollar

HKD

Hungarian Forint

HUF

Israeli New Sheqel

ILS

Japanese Yen

JPY

Malaysian Ringgit

MYR

N O TE :

This currency is supported as a payment
currency and a currency balance for in-country
PayPal accounts only.

Mexican Peso

MXN

Norwegian Krone

NOK

New Zealand Dollar

NZD

Philippine Peso

PHP

Polish Zloty

PLN

Pound Sterling

GBP

Singapore Dollar

SGD

Swedish Krona

SEK

Swiss Franc

CHF

Taiwan New Dollar

TWD

SOAP API Developer Reference

August 2012

369

D

Currency Codes

Currency

Currency Code

Thai Baht

THB

Turkish Lira

TRY

N O TE :

This currency is supported as a payment
currency and a currency balance for in-country
PayPal accounts only.

U.S. Dollar

USD

Currencies and Currency Codes Supported by Express Checkout and Direct Payment

370

Express
Checkout
Currency

Currency
Code

Direct Payment
Currency for Specified
Card in United States

Direct Payment
Currency for Specified
Card in United Kingdom

Direct Payment
Currency for Specified
Card in Canada

Australian
Dollar

AUD

Visa, MasterCard

Visa, MasterCard

Visa, MasterCard

Canadian
Dollar

CAD

Visa, MasterCard

Visa, MasterCard

Visa, MasterCard

Czech Koruna

CZK

Visa, MasterCard

Visa, MasterCard

Danish Krone

DKK

Visa, MasterCard

Visa, MasterCard

Euro

EUR

Visa, MasterCard

Visa, MasterCard

Hong Kong
Dollar

HKD

Visa, MasterCard

Visa, MasterCard

Hungarian
Forint

HUF

Visa, MasterCard

Visa, MasterCard

Japanese Yen

JPY

Visa, MasterCard

Visa, MasterCard

Norwegian
Krone

NOK

Visa, MasterCard

Visa, MasterCard

New Zealand
Dollar

NZD

Visa, MasterCard

Visa, MasterCard

Polish Zloty

PLN

Visa, MasterCard

Visa, MasterCard

Pound Sterling

GBP

Visa, MasterCard, Maestro

Visa, MasterCard

Singapore
Dollar

SGD

Visa, MasterCard

Visa, MasterCard

Swedish Krona

SEK

Visa, MasterCard

Visa, MasterCard

Swiss Franc

CHF

Visa, MasterCard

Visa, MasterCard

U.S. Dollar

USD

Visa, MasterCard

Visa, MasterCard

Visa, MasterCard

Visa, MasterCard

Visa, MasterCard

Visa, MasterCard,
Discover, American
Express

August 2012

SOAP API Developer Reference

E

AVS and CVV2 Response Codes

AVS Response Codes
Related information:
DoDirectPayment Response Fields

AVS Response Codes for Visa, MasterCard, Discover, and American
Express
AVS Code

Meaning

Matched Details

A

Address

Address only (no ZIP code)

B

International “A”

Address only (no ZIP code)

C

International “N”

None
NOT E :

The transaction is declined.

D

International “X”

Address and Postal Code

E

Not allowed for MOTO
(Internet/Phone) transactions

Not applicable

F

UK-specific “X”

Address and Postal Code

G

Global Unavailable

Not applicable

I

International Unavailable

Not applicable

M

Address

Address and Postal Code

N

No

None

NOT E :

NOT E :

The transaction is declined.

The transaction is declined.

P

Postal (International “Z”)

Postal Code only (no Address)

R

Retry

Not applicable

S

Service not Supported

Not applicable

U

Unavailable

Not applicable

W

Whole ZIP

Nine-digit ZIP code (no Address)

SOAP API Developer Reference

August 2012

371

E

AVS and CVV2 Response Codes
AVS Response Codes

AVS Code

Meaning

Matched Details

X

Exact match

Address and nine-digit ZIP code

Y

Yes

Address and five-digit ZIP

Z

ZIP

Five-digit ZIP code (no Address)

All others

Error

Not applicable

Related information:
DoDirectPayment Response Fields

AVS Response Codes for Maestro
AVS Code

Meaning

Matched Details

0

All the address information matched.

All information matched

1

None of the address information
matched.

None

2

Part of the address information
matched.

Partial

3

The merchant did not provide AVS
information. Not processed.

Not applicable

4

Address not checked, or acquirer had
no response. Service not available.

Not applicable

Null

No AVS response was obtained.
Default value of field.

Not applicable

N O TE :

The transaction is declined.

Related information:
DoDirectPayment Response Fields

372

August 2012

SOAP API Developer Reference

AVS and CVV2 Response Codes
CVV2 Response Codes

E

CVV2 Response Codes

CVV2 Response Codes for Visa, MasterCard, Discover, and American
Express
CVV2 Code

Meaning

Matched Details

E

Error - Unrecognized or Unknown
response

Not applicable

I

Invalid or Null

Not applicable

M

Match

CVV2CSC

N

No match

None

P

Not processed

Not applicable

S

Service not supported

Not applicable

U

Service not available

Not applicable

X

No response

Not applicable

CVV2 Response Codes for Maestro
CVV2 Code

Meaning

Matched Details

0

Matched

CVV2

1

No match

None

2

The merchant has not implemented
CVV2 code handling

Not applicable

3

Merchant has indicated that CVV2 is
not present on card

Not applicable

4

Service not available

Not applicable

All others

Error

Not applicable

SOAP API Developer Reference

August 2012

373

E

374

AVS and CVV2 Response Codes
CVV2 Response Codes

August 2012

SOAP API Developer Reference

About Previous Versions of the
API
Previous versions of the API can still be used; however, PayPal recommends using the latest
version whenever possible. Unless specifically specified, API operations default to the latest
version.

What’s New in Version 92.0
Updated for 92.0. Added new MsgSubID field for the following APIs for both requests and
responsees: RefundTransaction; DoReferenceTransaction; DoAuthorization; and DoCapture.

What’s New in Version 89.0
Updated for 89.0. Added new field to SetExpressCheckout and DoReferenceTransaction
Request APIs. Added new error to DoReferenceTransaction Request API.

What’s New in Version 88.0
Maintenance release, updated for 88.0.

What’s New in Version 85.0
No new features added; solely a maintenance release.

What’s New in Version 84.0

SOAP API Developer Reference

August 2012

375

What’s New in Version 84.0

New Field in RefundTransaction Response

Field

Description

RefundInfo

ebl:RefundInfoType
Contains refund payment status information.
This field is available since version 84.0.

New RefundInfoType in RefundTransaction Response
Field

Description

RefundStatus

xs:PaymentStatusCodeType
Status of the refund. It is one of the following values:
 instant
 delayed
This field is available since version 84.0.

PendingReason

xs:PendingStatusCodeType
Reason that the payment is delayed. It is one of the following values:
 none – The refund is instant.
 echeck – The refund is delayed.
This field is available since version 84.0.

New Field in DoReferenceTransactionResponseDetailsType

376

Field

Description

PaymentAdviceCode

xs:string
Response code from the processor when a recurring transaction is declined.
For details on the meanings of the codes, see
https://merchant.paypal.com/us/cgi-bin/?&cmd=_rendercontent&content_ID=merchant/cc_compliance_error_codes
This field is available since version 84.0.

August 2012

SOAP API Developer Reference

What’s New in Version 82.0

New Field in DoDirectPaymentResponse
Field

Description

PaymentAdviceCode

xs:string
Response code from the processor when a recurring transaction is declined.
For details on the meanings of the codes, see
https://merchant.paypal.com/us/cgi-bin/?&cmd=_rendercontent&content_ID=merchant/cc_compliance_error_codes
This field is available since version 84.0.

What’s New in Version 82.0

New Field in DoCapture Request

Field

Description

MerchantStoreDetails

ns:MerchantStoreDetailsType
(Optional) Information about the merchant store.
This field is available since version 82.0.

New MerchantStoreDetailsType in DoCapture Request
Field

Description

StoreID

xs:string
ID of the merchant store. This field is required for point-of-sale transactions.
Character length and limitations: 50 single-byte characters
This field is available since version 84.0.

TerminalID

xs:string
(Optional) ID of the terminal.
Character length and limitations: 50 single-byte characters
This field is available since version 82.0.

SOAP API Developer Reference

August 2012

377

What’s New in Version 82.0

New Fields in RefundTransaction Request

Field

Description

MerchantStoreDetails

ns:MerchantStoreDetailsType
(Optional) Information about the merchant store.
This field is available since version 82.0.

RetryUntil

xs:dateTime
(Optional) Maximum time until you must retry the refund.
NOT E :

This field does not apply to point-of-sale transactions.

This field is available since version 82.0.
RefundSource

ebl:RefundSourceCodeType
(Optional)Type of PayPal funding source (balance or eCheck) that can be used for
auto refund. It is one of the following values:
 any – The merchant does not have a preference. Use any available funding
source.
 default – Use the merchant’s preferred funding source, as configured in the
merchant’s profile.
 instant – Use the merchant’s balance as the funding source.
 eCheck – The merchant prefers using the eCheck funding source. If the
merchant’s PayPal balance can cover the refund amount, use the PayPal
balance.
NOT E :

This field does not apply to point-of-sale transactions.

This field is available since version 82.0.
RefundType

ebl:RefundPurposeTypeCodeType
Type of refund you are making. It is one of the following values:
 Full – Full refund (default).
 Partial – Partial refund.
 ExternalDispute – External dispute. (Value available since version 82.0)
 Other – Other type of refund. (Value available since version 82.0)

New MerchantStoreDetailsType in RefundTransaction Request

378

Field

Description

StoreID

xs:string
ID of the merchant store. This field is required for point-of-sale transactions.
Character length and limitations: 50 single-byte characters
This field is available since version 84.0.

August 2012

SOAP API Developer Reference

What’s New in Version 80.0

Field

Description

TerminalID

xs:string
(Optional) ID of the terminal.
Character length and limitations: 50 single-byte characters
This field is available since version 82.0.

What’s New in Version 80.0
New Field in PaymentDetailsType in DoDirectPayment Request

Field

Description

Recurring

ns:RecurringFlagType
(Optional) Flag to indicate a recurring transaction. It is one of the following
values:
 Any value other than Y – This is not a recurring transaction (default).
 Y – This is a recurring transaction.
NOT E :

To pass Y in this field, you must have established a billing agreement with
the buyer specifying the amount, frequency, and duration of the recurring
payment.

This field is introduced in version 80.0 of the API.

New Fields in PaymentDetailsType in DoReferenceTransaction Request

Field

Description

Recurring

ns:RecurringFlagType
(Optional) Flag to indicate a recurring transaction. It is one of the following
values:
 Any value other than Y – This is not a recurring transaction (default).
 Y – This is a recurring transaction.
NOT E :

To pass Y in this field, you must have established a billing agreement with
the buyer specifying the amount, frequency, and duration of the recurring
payment.

This field is introduced in version 80.0 of the API.

SOAP API Developer Reference

August 2012

379

What’s New in Version 74.0

What’s New in Version 74.0
New Behavior of DoExpressCheckoutPayment
By default, the DoExpressCheckoutPayment API operation is idempotent for all API
callers. You can call DoExpressCheckoutPayment up to a maximum of 10 times, and it
returns the same result. The exceptions are when DoExpressCheckoutPayment generates
an error or the token expires.
This functionality only works with version 74.0 or greater. There is no change to
DoExpressCheckoutPayment functionality if you are not updating to the latest version of
the API.
If you update to version 74.0 or higher but want to opt out of this functionality, contact PayPal.

New DoExpressCheckoutPayment Error Code
Error
Code
13751

Short Message

Long Message

Could not retrieve the
original successful
response.

Transaction completed
successfully, but could not
retrieve the original successful
response.

Correcting This Error...

What’s New in Version 72.0
Changes to BuyerDetailsType in SetExpressCheckout Request
BuyerDetailsType Fields

380

Field

Description

TaxIdDetails

ebl:TaxIdDetailsType
Details about the buyer’s tax information. This field is required for Brazil and is
for Brazil use only.

August 2012

SOAP API Developer Reference

What’s New in Version 72.0

New TaxIdDetailsType Structure in SetExpressCheckout Request
TaxIdDetailsType Fields
Field

Description

TaxIdType

New field
xs:string
The buyer’s tax ID type. This field is required for Brazil and used for Brazil only.
For Brazil use only: The tax ID type is BR_CPF for individuals and BR_CNPJ for
businesses.

TaxId

New field
xs:string
The buyer’s tax ID. This field is required for Brazil and used for Brazil only.
For Brazil use only: The tax ID is 11 single-byte character for individuals and 14
single-byte characters for businesses.

New TaxIdDetailsType Structure in GetExpressCheckoutDetails Response
TaxIdDetailsType Fields
Field

Description

TaxIdType

New field
xs:string
The buyer’s tax ID type. This field is required for Brazil and used for Brazil only.
For Brazil use only: The tax ID type is BR_CPF for individuals and BR_CNPJ for
businesses.

TaxId

New field
xs:string
The buyer’s tax ID. This field is required for Brazil and used for Brazil only.
For Brazil use only: The tax ID is 11 single-byte character for individuals and 14
single-byte characters for businesses.

SOAP API Developer Reference

August 2012

381

What’s New in Version 69

What’s New in Version 69
New PaymentDetailsItemType Structure in
CreateRecurringPaymentsProfile Request
PaymentDetailsItemType Fields
Field

Description

ItemCategory

New field
ns:ItemCategoryType
Indicates whether the item is digital or physical goods. For digital goods, this field
is required and you must set it to Digital to get the best rates. It is one of the
following values:
 Digital
 Physical

Name

New field
xs:string
Item name.This field is required when you pass a value for ItemCategory.
Character length and limitations: 127 single-byte characters

Description

New field
xs:string
(Optional) Item description.
Character length and limitations: 127 single-byte characters

Amount

New field
ebl:BasicAmountType
Cost of item. This field is required when you pass a value for ItemCategory.
NOT E :

You must set the currencyID attribute to one of the 3-character currency
codes for any of the supported PayPal currencies.

Character length and limitations: Must not exceed $10,000 USD in any currency.
No currency symbol. Regardless of currency, decimal separator must be a period
(.), and the optional thousands separator must be a comma (,). Equivalent to nine
characters maximum for USD.

382

Number

New field
xs:string
(Optional) Item number.

Quantity

New field
xs:integer
Item quantity. This field is required when you pass a value for ItemCategory.
Character length and limitations: Any positive integer

August 2012

SOAP API Developer Reference

What’s New in Version 69

Field

Description

Tax

New field
ebl:BasicAmountType
(Optional) Item sales tax.
NOT E :

You must set the currencyID attribute to one of the 3-character currency
codes for any of the supported PayPal currencies.

Character length and limitations: Must not exceed $10,000 USD in any currency.
No currency symbol. Regardless of currency, decimal separator must be a period
(.), and the optional thousands separator must be a comma (,). Equivalent to nine
characters maximum for USD.

Changes to PaymentDetailsItemType in DoReferenceTransaction Request
PaymentDetailsItemType Fields
Field

Description

ItemCategory

New field
ns:ItemCategoryType
Indicates whether the item is digital or physical goods. For digital goods, this
field is required and you must set it to Digital to get the best rates. It is one
of the following values:
 Digital
 Physical

Name

xs:string
Item name. This field is required when you pass a value for ItemCategory.
Character length and limitations: 127 single-byte characters

Amount

ebl:BasicAmountType
Cost of item. This field is required when you pass a value for ItemCategory.
N O TE :

You must set the currencyID attribute to one of the 3-character
currency codes for any of the supported PayPal currencies.

Character length and limitations: Must not exceed $10,000 USD in any
currency. No currency symbol. Regardless of currency, decimal separator must
be a period (.), and the optional thousands separator must be a comma (,).
Equivalent to nine characters maximum for USD.
Quantity

SOAP API Developer Reference

xs:integer
Item quantity. This field is required when you pass a value for
ItemCategory.
Character length and limitations: Any positive integer

August 2012

383

What’s New in Version 66

What’s New in Version 66
Changes to PaymentDetailsType in SetExpressCheckout and
DoExpressCheckoutPayment Requests
PaymentDetailsType Fields
Field

Description

ItemTotal

ebl:BasicAmountType
Sum of cost of all items in this order. For digital goods, this field is required.
N O TE :

PaymentAction

You must set the currencyID attribute to one of the three-character
currency codes for any of the supported PayPal currencies.

ebl:PaymentActionCodeType
How you want to obtain payment. When implementing digital goods, this field
is required and you must set it to Sale.

Changes to PaymentDetailsItemTypein SetExpressCheckout and
DoExpressCheckoutPayment Requests
PaymentDetailsItemType Fields

384

Field

Description

ItemCategory

ns:ItemCategoryType
New field
Indicates whether the item is digital or physical goods. This field is available
since version 65.1. For digital goods this field is required and you must set it to
Digital. It is one of the following values:
 Digital
 Physical

Name

xs:string
Item name. For digital goods, this field is required.
Character length and limitations: 127 single-byte characters
L_NAMEn is deprecated since version 63.0. Use
L_PAYMENTREQUEST_0_NAMEm instead.

Description

xs:string
Item description. For digital goods, this field is required.
Character length and limitations: 127 single-byte characters

August 2012

SOAP API Developer Reference

What’s New in Version 66

Field

Description

Amount

ebl:BasicAmountType
Cost of item. For digital goods, this field is required.
N O TE :

You must set the currencyID attribute to one of the three-character
currency codes for any of the supported PayPal currencies.

Character length and limitations: Must not exceed $10,000 USD in any
currency. No currency symbol. Regardless of currency, decimal separator must
be a period (.), and the optional thousands separator must be a comma (,).
Equivalent to nine characters maximum for USD.
Quantity

xs:integer
Item quantity. For digital goods, this field is required.
Character length and limitations: Any positive integer

Changes to PaymentDetailsItemType in GetExpressCheckoutDetails
Response
Field

Description

ItemCategory

ns:ItemCategoryType
New field
Inicates whethe item is digital or physical goods. For digital goods this field is
required and you must set it to Digital. It is one of the following values:
 Digital
 Physical
This field is available since version 65.1.

SOAP API Developer Reference

August 2012

385

What’s New in Version 66

386

August 2012

SOAP API Developer Reference

Revision History

Date

Description

10 August 2012

Maintenance release. Added CVV2 response codes E and I for Visa,
Mastercard, Discover and American Express.

7 August 2012

Maintenance release. New 10486 error code added for redirects when the
process declines the transaction: The transaction couldn’t be completed. Please
redirect your customer to PayPal.

10 July 2012

Updated for 92.0. Added new MsgSubID field for the following APIs for both
requests and responsees: RefundTransaction; DoReferenceTransaction;
DoAuthorization; and DoCapture.

12 June 2012

Maintenance release

22 May 2012

Maintenance release

2 May 2012

Updated for 89.0. Added new field to SetExpressCheckout and
DoReferenceTransaction Request APIs. Added new error to
DoReferenceTransaction Request API.

3 April 2012

Updated references to Website Payments Standard and Website Payments Pro to
PayPal Payments Standard and PayPal Payments Pro, respectively.

14 February 2012

Maintenance release

24 January 2012

Maintenance release, updated for 85.0.

1November 2011

Updated for 84.0. Added new field and a new type to RefundTransaction API
request. Added new field to DoDirectPayment API and
DoReferenceTransaction API responses. Edits to improve accuracy.

1 September 2011

General edits to improve consistency.

5 April 2011

Updated for 71.0. Added new fields to the DoExpressCheckout API response to
return information about funds that are being held and the seller’s encrypted
account number.

8 March 2011

Updated for 69.0. Added more digital goods support to the
CreateRecurringPaymentsProfile and DoReferenceTransaction APIs to enable
the merchant to obtain the best rates for digital goods.

26 January 2011

Updated for 66.0. Describes changes to the ExpressCheckout API for
implementing Digital Goods.

15 September 2010

Updated for 64.4, including addition of ProtectionEligibilityType field.

SOAP API Developer Reference

August 2012

387

Date

Description

11 May 2010

Updated for 63.0. Added new NVP API fields to use in version 63.0 Express
Checkout integrations. Deprecated old fields. Updated billing agreement API
with functionality to obtain the latest billing address and to skip billing
agreement creation. Added ReverseTransaction API.

10 March 2010

Updated information for 62.0: Describes Express Checkout fields recommended
to be used in applications that enable implementing parallel payments for a
marketplace.

21 January 2010

Updated information for 61.0: Added Express Checkout fields enabling you to
provide gift and insurance options to the PayPal checkout pages.

7 October 2009

Updated information for 60.0: updated currency table with new currencies, and
added Express Checkout API fields for Immediatee Payment and eBay.

16 June 2009

Updated information for 58.0: added GetPalDetails API and fields for payment
review.

22 May 2009

Minor update to version 57.0; added CreateBillingAgreement to
Enterprise edition.

08 April 2009

Updated information for 57.0: Express Checkout Callback API and error codes.

26 Nov. 2008

Updated information for 55.0.

23 Sept. 2008

Added information about using billing agreements with SetExpressCheckout.

3 Sept. 2008

Added information about payment review to GetTransactionDetails.

June 2008

Rearranged material, added error codes, and moved some material to the
Express Checkout Integration Guide.

April 2008

Added Fraud Management Filters information. Changed recurring payments
information.

February 2008

Added that ther VERSION parameter must be 50.0 in the API call to use
recurring payments.

January 2008






September 2007





August 2007

388

Added billing agreement fields to SetExpressCheckout for recurring
payments
Updated CreateRecurringPaymentsProfile for new recurring payments
features.
Added new recurring payments APIs
Added DoNonReferencedCredit API
Update eBay auctions for Express Checkout section
Added fields for the giropay payment method to Express Checkout APIs
Added Direct Payment error 10571.

Added recurring payments concepts, modified SetExpressCheckout,
DoExpressCheckoutPayment, DoReferenceTransaction, and added
additional DoReferenceTransaction error codes.

August 2012

SOAP API Developer Reference

Date

Description

April 2007

Added Recurring Payments APIs: SetCustomerBillingAgreement,
GetBillingAgreementCustomerDetails, and
CreateRecurringPaymentsProfile.

February 2007

Bug fixes including updating Line Item Details for Direct Payment and Express
Checkout APIs, changing some parameters to optional in DoDirectPayment,
adding SHIPTOCOUNTRYCODE, and adding Switch/Solo codes for AVS and
CVV2.

December 2006

Updates for bug fixes.

October 2006

First public release.

11 May 2010

Added new NVP API fields to use in version 63.0 Express Checkout
integrations. Deprecated old fields. Updated billing agreement API with
functionality to obtain the latest billing address and to skip billing agreement
creation. Added ReverseTransaction API.

SOAP API Developer Reference

August 2012

389

390

August 2012

SOAP API Developer Reference

Index

A
AcceptFilters response field 68, 152, 273
Action request field 183, 217
ActivationDetails request field 194
ActivationDetailsType request fields 197
AdditionalBilling Cycles request field 225
Address Owner response field 172, 215
Address request field 59, 77, 88, 200, 231
Address response field 117, 172, 215, 243, 250
AddressOverride request field 89
AddressStatus response field 118, 172, 211, 216, 244
AddressType (Shipping) request fields 65, 95, 130, 198,
227, 258
AddressType (Shipping) response fields 118
AddressType request fields 60, 77, 201, 231
AddressType response fields 172, 211, 215, 244
AddressVerify API operation 27
AddressVerify request fields 27
AddressVerify request message 27
AddressVerify response fields 29
AddressVerify response message 28
AggregateAmount response field 210
AggregateOptionalAmount response field 210
AllowedPaymentMethod request field 102
AllowedPaymentMethodType request field 98, 122,
134
AllowNote request field 88
AllowPushFunding request field 102
American Express AVS response codes 371
American Express CVV2 response codes 373
Amount request field 32, 40, 45, 64, 73, 99, 136, 202,
220, 226, 261, 276, 382, 383, 385
Amount response field 41, 68, 78, 122, 180, 181, 213
Auction response field 179
AuctionInfoType response fields 180
AuctionItemNumber request field 283
AuctionTransaction Id request field 65, 101, 137, 262
AuctionTransaction Id response field 124
AUD 369, 370
Australian Dollar 369, 370
Authorization and Capture API Operation Reference 31

SOAP API Developer Reference

AuthorizationID request field 32, 45, 49
AuthorizationID response field 35, 45, 50
AuthorizationType response fields 42, 46
AuthStatus3ds request field 66
AutoBillOutstandingAmount request field 194, 226
AutoBillOutstandingAmount response field 210
AVS and CVV2 response codes 371
AVS response codes 371
AVSCode response field 68, 268

B
Balance response field 156
BalanceHoldings response field 156
BalanceTimeStamp response field 156
BanktxnPendingURL request field 92
BAUpdate API operation 245
BAUpdate request fields 245
BAUpdate request message 245
BAUpdate response fields 248
BAUpdate response message 246
BillingAgreement Details request field 92, 233
BillingAgreementCustom request field 104, 237, 246
BillingAgreementCustom response field 249
BillingAgreementDescription request field 104, 237,
246
BillingAgreementDescription response field 248
BillingAgreementDetails request fields 103, 236
BillingAgreementID response field 143, 239, 268
BillingAgreementMax response field 249
BillingAgreementStatus request field 245
BillingAgreementStatus response field 249
BillingFrequency response field 212
BillingPeriod response field 212
BillingPeriodDetailsType request fields 195, 228
BillingPeriodDetailsType response fields 212
BillingStartdate request field 193, 227
BillingStartdate response field 211
BillingType request field 103, 236
BillingType response field 248
BillOutstanding API operation 219

August 2012

391

Index

BillOutstandingAmount request fields 219
BillOutstandingAmount request message 219
BillOutstandingAmount response fields 220
BillOutstandingAmount response message 220
BrandName request field 93
Brazilian Real 369
BRL 369
Business response field 171
ButtonSource request field 63, 130, 133, 260
BuyerDetails request field 93
BuyerDetailsType request fields 102
BuyerEmail request field 91, 236
BuyerEmailOpti nEnable request field 94
BuyerId request field 102
BuyerID response field 180
BuyerMarketingEmail request field 129
BuyerMarketingEmail response field 116, 170
BuyerRegistrationDate request field 102
BuyerUserName request field 102

C
CAD 369, 370
CallbackTimeout request field 87
CallbackURL request field 87
Canadian Dollar 369, 370
CancelURL request field 87, 234
CardNumber request field 282
CardOwner request field 58, 75, 199, 230, 263
CardOwner response field 215
CartID request field 101, 137
CartID response field 124
Cavv request field 66
ChannelType request field 92
character encoding 24
CheckoutStatus response field 115
CHF 369, 370
CityName request field 60, 77, 201, 231
CityName response field 173, 211, 216, 244, 251
ClosingDate response field 180
Comment request field 74
CompleteType request f ield 32
ConfirmationCode response field 29
ContactPhone response field 115
CorrelationID 24
Country request field 60, 66, 77, 95, 130, 198, 201,
228, 231, 258

392

Country response field 118, 173, 212, 216, 244, 251
CountryCode response field 29
CountryCodeType 66, 95, 118, 130, 198, 228, 258
CountryName response field 173, 216
CouponAmount response field 179
CouponAmountCurrency 179
CouponID 179
cpp-header-back-color request field 91, 236
cpp-header-border request field 236
cpp-header-border-color request field 91
cpp-header-image request field 91, 236
cpp-payflow-color request field 91, 236
CreateBillingAgreement API operation 238
CreateBillingAgreement request fields 238
CreateBillingAgreement request message 238
CreateBillingAgreement response fields 239
CreateBillingAgreement response message 239
CreateRecurringPaymentsProfile API operation 187
CreateRecurringPaymentsProfile request fields 192
CreateRecurringPaymentsProfile request message 187
CreateRecurringPaymentsProfile response fields 203
CreateRecurringPaymentsProfile response
message 203
CreditCard request field 57, 74, 193, 227
CreditCard response field 210
CreditCardDetailsType request fields 58, 75, 199, 229,
263
CreditCardDetailsType response fields 214
CreditCardNumber request field 58, 75, 199, 230, 263
CreditCardNumber response field 214
CreditCardType request field 58, 75, 199, 229, 263
CreditCardType response field 214
currencies 24
currency codes 369, 370
CurrencyCode request field 283
CurrentRecurring PaymentsPeriod response field 210
Custom request field 63, 87, 98, 133, 260
Custom response field 114, 121, 178
CustomerServiceNumber request field 93
CVV2 request field 58, 75, 199, 230, 263
CVV2 response codes 373
CVV2Code response field 68, 268
Czech Koruna 369, 370
CZK 369, 370

August 2012

SOAP API Developer Reference

Index

D
Danish Krone 369, 370
dateÚtime formats 24
DenyFilters response field 68, 152, 273
Description request field 64, 99, 135, 194, 202, 225,
261, 382, 384
Description response field 69, 122, 153, 209, 274
Discover AVS response codes 371
Discover CVV2 response codes 373
DKK 369, 370
Do Reauthorization request fields 45
Do Reauthorization response fields 45
DoAuthorization API operation 40
DoAuthorization request fields 40
DoAuthorization request message 40
DoAuthorization response fields 41
DoAuthorization response message 41
DoCapture API operation 31
DoCapture request fields 32
DoCapture request message 31
DoCapture response fields 35
DoCapture response message 34
DoDirectPayment API operation 51
DoDirectPayment request fields 56
DoDirectPayment request message 51
DoDirectPayment response fields 68
DoDirectPayment response message 67
DoExpressCheckoutPayment API operation 126
DoExpressCheckoutPayment request fields 128
DoExpressCheckoutPayment request message 126
DoExpressCheckoutPayment response fields 142
DoExpressCheckoutPayment response message 139
DoNonReferencedCredit API operation 71
DoNonReferencedCredit request fields 73
DoNonReferencedCredit request message 71
DoNonReferencedCredit response fields 78
DoNonReferencedCredit response message 78
DoReauthorization API operation 44
DoReauthorization request message 44
DoReauthorization response message 45
DoReferenceTransaction API operation 251
DoReferenceTransaction request fields 255
DoReferenceTransaction request message 251
DoReferenceTransaction response fields 267
DoReferenceTransaction response message 265
DoVoid API operation 48

SOAP API Developer Reference

DoVoid request fields 49
DoVoid request message 48
DoVoid response fields 50
DoVoid response message 49

E
EbayItemPayment DetailsItem request field 100, 137
EbayItemPayment DetailsItem response field 123
EbayItemPaymentDetailsItem request field 64
EbayItemPaymentDetailsItemType request fields 65,
101, 137, 262
EbayItemPaymentDetailsItemType response fields 124
EbayItemTxnId response field 179
EbayTransactionId response field 150
Eci3ds request field 66
EciSubmitted3ds response field 70
EffectiveDate response field 180
Email request field 27
EmailSubject request field 185
EndDate request field 282
Enhanced CheckoutData request field 92
EnhancedItemData request field 101, 137
EnhancedPaymentData request field 98, 134
EnhancedPaymentData response field 122
EnhancedPaymentInfo response field 150
error codes 287
error responses 22
ErrorCode response field 125, 152
ErrorParameters response field 125, 152
EUR 369, 370
Euro 369, 370
ExchangeRate response field 146, 175, 270
ExpMonth request field 58, 75, 199, 230, 263
ExpMonth response field 214
ExpressCheckout API Operatons 79
ExpYear request field 58, 75, 199, 230, 263
ExpYear response field 215

F
FailedInitialAmountAction request field 197
FailedPaymentCount response field 214
FeeAmount response field 146, 175, 270, 286
FeeRefundAmount response field 279
FinalPaymentDueDate response field 210
FirstName request field 60, 76, 201, 230, 264, 284

August 2012

393

Index

FirstName response field 117, 172, 215, 243, 250
FlatR ateShippingOptions request field 88
FMFDetails response field 68, 143, 150, 268
FMFDetailsType response fields 68, 152, 273
Forint 369, 370
FundingSourceDetails request field 93
FundingSourceDetailsType request fields 102

G
GBP 369, 370
Get ExpressCheckout Details request fields 106
GetBalance API operation 155
GetBalance request fields 155
GetBalance request message 155
GetBalance response fields 156
GetBalance response message 156
GetBillingAgreementCustomerDetails API
operation 240
GetBillingAgreementCustomerDetails request
fields 240
GetBillingAgreementCustomerDetails request
message 240
GetBillingAgreementCustomerDetails response
fields 242
GetBillingAgreementCustomerDetails response
message 241
GetExpressCheckoutDetails API operation 106
GetExpressCheckoutDetails request message 106
GetExpressCheckoutDetails response fields 114
GetExpressCheckoutDetails response message 107
GetPalDetails API operation 157
GetPalDetails request message 157
GetPalDetails response fields 158
GetPalDetails response message 158
GetRecurringPaymentsProfileDetails API
operation 204
GetRecurringPaymentsProfileDetails request fields 204
GetRecurringPaymentsProfileDetails request
message 204
GetRecurringPaymentsProfileDetails response
fields 209
GetRecurringPaymentsProfileDetails response
message 205
GetTransactionDetails API operation 161
GetTransactionDetails request fields 161
GetTransactionDetails request message 161
GetTransactionDetails response fields 168

394

GetTransactionDetails response message 162
GiftMessage requ est field 129
GiftMessage response field 115, 169
GiftMessageEnable request field 93
GiftReceiptEnable request field 93, 129
GiftReceiptEnable response field 116, 169
GiftWrapAmount request field 93, 129
GiftWrapAmount response field 116, 170
GiftWrapEnable request field 93
GiftWrapName request field 93, 129
GiftWrapName response field 116, 169
giropayCancelURL request field 92
giropaySuccessURL requ est field 92
GrossAmount response field 145, 174, 269, 286
GrossRefundAmount response field 279

H
HandlingTotal request field 62, 97, 132, 259
HandlingTotal response field 120
HKD 369
HoldDecision response field 149
Hong Kong Dollar 369
HUF 369, 370
Hungarian Forint 369, 370

I
ID response field 69, 153, 274
ILS 369
InitialAmount request field 197
InstrumentDetails response field 151
InsuranceOp tion Offered response field 120
InsuranceOptionOffered request field 97, 132
InsuranceOptionSelected request field 138
InsuranceOptionSelected response field 124, 151, 169
InsuranceTotal request field 62, 96, 132
InsuranceTotal response field 120
InvoiceID request field 32, 63, 87, 98, 133, 260, 276,
282
InvoiceID response field 114, 178
InvoiceID responsefield 121
IPAddress request field 57, 256
Israeli Sheqel 369
IssueNumber request field 59, 76, 200, 230, 264
IssueNumber response field 215
Ite mCategory 261

August 2012

SOAP API Developer Reference

Index

ItemCategory 383
ItemCategory request field 101, 137, 202, 382
ItemCategory response field 123
ItemHeight request field 100, 137
ItemHeight response field 123
ItemLength request field 100, 136
ItemLength response field 123
ItemNumber request field 65, 101, 137, 262
ItemNumber response field 124
ItemTotal reque stfield 61
ItemTotal request field 96, 131, 259, 384
ItemTotal response field 119
ItemURL request field 100, 137
ItemWeight request field 100, 136
ItemWeight response field 123
ItemWidth request field 100, 123, 136

J
Japanese Yen 369, 370
JPY 369, 370

K
Koruna 369, 370
Krona 369, 370
Krone 369, 370

L
LandingPage request field 92
LastName request field 60, 76, 77, 201, 231, 264, 284
LastName response field 117, 172, 215, 244, 250
LastPaymentAmount response field 214
LastPaymentDate response field 214
Locale response field 159
LocaleCode request field 90, 235
LongMessage response field 125, 152
LoyaltyCardDiscountAmount 179
LoyaltyCardDiscountCurrency 180

M
Maestro AVS response codes 372
Maestro CVV2 response codes 373
Malaysian Ringgit 369
ManagePendingTransactionStatus API operation 183

SOAP API Developer Reference

ManagePendingTransactionStatus request fields 183
ManagePendingTransactionStatus request message 183
ManagePendingTransactionStatus response fields 184
ManagePendingTransactionStatus response
message 184
ManageRecurringPaymentsProfileStatus API
operation 217
ManageRecurringPaymentsProfileStatus request
fields 217
ManageRecurringPaymentsProfileStatus request
message 217
ManageRecurringPaymentsProfileStatus response
fields 218
ManageRecurringPaymentsProfileStatus response
message 218
Mass Payment response fields 186
MassPay API operation 185
MassPay request fields 185
MassPay request message 185
MassPay response message 186
MassPayItem request field 186
MasterCard AVS response codes 371
MasterCard CVV2 response codes 373
MaxAmount request field 86
MaxFailedPayments request field 194, 227
MaxFailedPayments response field 210
Memo response field 178
MerchantSessionId request field 57, 256
MerchantStoreDetails request field 33, 277
message style 21
Mexican Peso 369
MiddleName request field 60, 76, 201, 264, 284
MiddleName response field 117, 172, 243, 250
MpiVendor3ds request field 66
MsgSubID request field 33, 36, 41, 42, 257, 268, 277,
279
MultiItem response field 180
MXN 369
MYR 369

N
Name request field 64, 65, 95, 99, 130, 135, 198, 202,
227, 258, 261, 382, 383, 384
Name response field 69, 118, 122, 153, 172, 179, 211,
216, 244, 250, 274
NetAmount request field 74
NetAmount response field 286

August 2012

395

Index

NetRefundAmount response field 279
New Zealand Dollar 369, 370
NextBillingDate response field 213
NOK 369, 370
Norwegian Krone 369, 370
NoShipping request field 88
Note request field 32, 49, 217, 220, 225
Note response field 115, 142
NoteT ext request field 98
NoteText request field 134
NoteText response field 122
NoteToBuyer request field 94
Noti fyURL request field 63
NotifyURL request field 98, 134, 260
NotifyURL response field 121
NotToBuyer request field 94
Number request field 64, 100, 136, 202, 262, 382
Number response field 122, 179
NumberCycles Completed response field 213
NumberCycles Remaining response field 213
NZD 369, 370

O
OfferDetails response field 151
Opti ons response field 180
OrderDescription request field 62, 86, 97, 133, 260
OrderDescription response field 121
OrderID request field 65, 101, 137, 262
OrderID response field 124
OrderTotal request field 61, 86, 96, 131, 259
OrderTotal response field 119
OtherPaymentMethods request field 92
OutstandingBalance request field 226
OutstandingBalance response field 214

P
Pa yerStatus request field 59, 200
PageStyle request field 90, 235
Pal response field 158
Pare ntTransactionID response field 174, 269
Payer request field 59, 76, 200, 230, 282
Payer response field 116, 171, 215, 243, 249, 286
PayerBusiness request field 59, 200
PayerBusiness response field 117, 171, 243, 250
PayerCountry request field 59, 200

396

PayerCountry response field 117, 171, 243, 250
PayerDisplayName response field 286
PayerID request field 59, 129, 200
PayerID response field 116, 171, 243, 249
PayerInfo response field 114, 170, 242, 249
PayerInfoType request fields 59, 76, 200, 230
PayerInfoType response fields 116, 171, 215, 243, 249
PayerName request field 59, 200, 282
PayerName request fields 60, 76, 200, 264, 284
PayerName response field 117, 171, 243, 249
PayerName response fields 117, 172, 243, 250
PayerStatus response field 117
Paym entDetailsItem request field 134
Payment DetailsItem response field 121
PaymentAction request field 56, 91, 99, 128, 135, 255,
384
PaymentDate response field 145, 174, 269
PaymentDetai ls request field 88
PaymentDetails request field 57, 129, 255
PaymentDetails response field 115
PaymentDetailsItem request field 63, 98, 261
PaymentDetailsItemType request fields 64, 99, 135,
202, 261, 382, 383, 384
PaymentDetailsItemType response fields 122
PaymentDetailsType request fields 61, 96, 131, 259
PaymentDetailsType response fields 119
PaymentError response field 125, 150
PaymentErrorType response fields 125, 151
PaymentInfo respo nse field 35
PaymentInfo response field 142, 170, 267
PaymentInfoType response fields 145, 173, 268
PaymentItem response field 179
PaymentItemInfo response field 170
PaymentItemInfoType response fields 178
PaymentItemType response fields 179
PaymentPeriod request field 194, 227
PaymentPeriod.Amount request field 195, 196, 228
PaymentPeriod.BillingFrequency request field 195
PaymentPeriod.BillingPeriod request field 195
PaymentPeriod.TotalBillingCycles request field 195,
228
PaymentReason request field 94, 257
PaymentRequestID request field 99, 135
PaymentRequestID response field 122, 125, 150
PaymentRequestInfo response field 116
PaymentRequestInfoType response fields 125
PaymentStatus response field 42, 46, 147, 176, 271

August 2012

SOAP API Developer Reference

Index

PaymentTransactionDetails response field 168
PaymentTransactionDetails response fields 170
PaymentType request field 104, 237
PaymentType response field 145, 174, 269
PayPalAccountID request field 101
PayPalAccountID response field 125, 152
PayPalAdjustment response field 115
PayPalToken response field 29
PendingFilters response field 68, 152, 273
PendingReason request field 280
PendingReason response field 43, 47, 148, 177, 272
Period response field 181
Peso 369
Philippine Peso 369
Phone request field 61, 66, 77, 95, 131, 198, 201, 228,
231, 258
Phone response field 118, 173, 216
PHP 369
PLN 369, 370
Polish Zloty 369, 370
PostalCode re sponse field 118
PostalCode request field 61, 65, 77, 95, 130, 198, 201,
228, 231, 258
PostalCode response field 173, 212, 216, 244, 251
Pound Sterling 369, 370
previous versions 375
ProfileID request field 204, 217, 219, 225, 284
ProfileID response field 203, 209, 218, 220, 232
ProfileReference request field 193, 225
ProfileReference response field 211
ProfileStatus response field 203, 209
ProtectionEligibility response field 43, 47, 149, 178,
273
ProtectionEligibilityType response field 44, 48, 150,
178, 273

Q
Quantity request field 64, 100, 136, 202, 262, 382, 383,
385
Quantity response field 123, 179

R
ReasonCode response field 149, 177, 272
reattempt response field 181
ReceiptID request field 282

SOAP API Developer Reference

ReceiptID response field 174, 269
Receiver request field 282
Receiver response field 171
ReceiverEmail request field 74
ReceiverID response field 171
ReceiverInfo response field 170
ReceiverInfoType response fields 171
ReceiverType request field 186
Recurrences response field 181
Recurring Payments API Operations 187
Recurring request field 63, 261, 379
recurring response field 181
RecurringPayments ProfileDetails response field 210
RecurringPayments Summary response field 210
RecurringPaymentsProfileDetails request field 193
RecurringPaymentsProfileDetailsType request
fields 193
RecurringPaymentsProfileDetailsType response
fields 211
RecurringPaymentsSummaryDetailsType response
fields 213
RedirectRequired response field 115, 142
Reference Transactions API Operations 187
ReferenceID request field 245, 255
RefundAdvice request field 277
RefundInfo request field 279
RefundItemDetails request field 277
RefundSource request field 277
RefundStatus request field 280
RefundTransaction API operation 275
RefundTransaction request fields 276
RefundTransaction request message 275
RefundTransaction response fields 278
RefundTransaction response message 278
RefundTransactionID response field 278
RefundType request field 276, 378
ReportsFilters response field 69, 152, 273
ReqConfirmShipping request field 88, 256
request structure 19
RequesterCredentials 17
response structure 21
RetryTime response field 180
RetryUntil request field 276
ReturnAllCurrencies request field 155
ReturnFMFDetails request field 57, 129, 256
ReturnURL request field 87, 234
RiskFilterListType response fields 69, 153, 274

August 2012

397

Index

S
SalesTax response field 178
Salutation request field 60, 76, 200, 264, 284
Salutation response field 117, 172, 243, 250
ScheduleDetails request field 193
ScheduleDetailsType request fields 194
SecureMerchantAccountID response field 152
security 17
SEK 369, 370
SellerDetails request field 98, 134
SellerDetails response field 150
SellerDetailsType request fields 138
SellerID request field 138
SellerRegistrationDate request field 138
SellerUserName request field 138
service architecture 15
service endpoints 18
SetCustomerBillingAgreement API operation 233
SetCustomerBillingAgreement request fields 233
SetCustomerBillingAgreement request message 233
SetCustomerBillingAgreement response fields 238
SetCustomerBillingAgreement response message 237
SetExpressCheckout API operation 79
SetExpressCheckout request message 79
SetExpressCheckout response fields 105
SetExpressCheckout response message 105
SettleAmount response field 146, 175, 270
SeverityCode response field 125, 152
SGD 369, 370
Sheqel 369
Shipp ingDiscountrequest field 132
ShippingAmount request field 74, 226, 229
ShippingAmount response field 213
ShippingCalculationMode response field 124, 151, 168
ShippingDiscount request field 62, 97
ShippingDiscount response field 120
ShippingOptionAmount request field 103, 138
ShippingOptionAmount response field 124, 151, 169
ShippingOptionIsDefault request field 103, 138
ShippingOptionIsDefault response field 124, 151, 169
ShippingOptionName request field 103, 138
ShippingOptionName response field 125, 151, 169
ShippingOptionsType request fields 103
ShippingTotal request field 61, 96, 132, 259
ShippingTotal response field 119
ShipToAddress request field 63, 98, 134, 261

398

ShipToAddress response field 121
ShortMessage response field 125, 151
Singapore Dollar 369, 370
SOAP API definitions 16
SOAP request envelope 18
SoftDescriptor request field 33, 134, 257
SolutionType request field 92
StartDate request field 282, 283
StartMonth request field 58, 75, 199, 230, 263
StartMonth response field 215
StartYear request fie ld 59, 76, 199, 230, 264
StartYear response field 215
state and proivince codes 365
StateOrProvince request field 60, 65, 77, 95, 130, 198,
201, 228, 231, 258
StateOrProvince respon se field 118
StateOrProvince response field 173, 212, 216, 244, 251
Status request field 284
Status response field 184, 286
StoreId 150, 178, 273
StoreID request field 34, 277, 377, 378
Street request field 28
Street1 request field 60, 65, 77, 95, 130, 198, 201, 227,
231, 258
Street1 response field 118, 173, 211, 216, 244, 250
Street2 request field 60, 65, 77, 95, 130, 198, 201, 227,
231, 258
Street2 response field 118, 173, 211, 216, 244, 251
StreetMatch response field 29
SubscriberName request field 193, 225
SubscriberName response field 211
SubscriberShipping Address request field 193, 225
SubscriberShipping Address response field 211
Subscription response field 179
SubscriptionDate response field 180
SubscriptionID response field 180, 181
SubscriptionInfoType response fields 180
SubscriptionTermsType response field 181
SubscriptionTermsType response fields 181
SuccessPageRedirectRequested response field 143
Suffix request field 60
Suffix requestfi eld 76, 201, 264, 284
Suffix response field 117, 172, 244, 250
SurveyChoice request field 94
SurveyChoiceSelected request field 130
SurveyChoiceSelected response field 116, 170
SurveyEnable request field 94

August 2012

SOAP API Developer Reference

Index

SurveyQuestion request field 94, 130
SurveyQuestion response field 116
SurveyQuestionresponse field 170
Swedish Krona 369, 370
Swiss Franc 369, 370

T
Taiwan New Dollar 369
Tax request field 64, 100, 136, 203, 262, 383
Tax response field 123
TaxAmount request field 74, 197, 226, 229
TaxAmount response field 146, 175, 213, 270
TaxId request field 104
TaxId response field 126
TaxIdDetails request field 102
TaxIdDetailsType request fields 104
TaxIdDetailsType response fields 126
TaxIdType request field 104
TaxIdType response field 126
TaxTotal request field 62, 97, 133, 260
TaxTotal response field 121
TerminalId 150, 178, 273
TerminalID response field 34, 278, 377, 379
Thai Baht 370
THB 370
ThreeDSecure request fields 66
ThreeDSecure response fields 70
ThreeDSecureRequest request field 57
Timestamp response field 285
Timezone response field 286
Token request field 106, 128, 192, 238, 240
Token response field 105, 114, 142, 238
TotalBillingCycles response field 212
TotalRefundedAmount response field 279
TotalType request field 94
TransactionClass request field 283
TransactionEntity request field 40
TransactionID request field 40, 161, 183, 276, 282
TransactionId request field 98, 134
TransactionID response field 41, 68, 78, 145, 173, 184,
268, 286
TransactionId response field 122, 125
TransactionSearch API operation 281
TransactionSearch request fields 282
TransactionSearch request message 281
TransactionSearch response fields 285

SOAP API Developer Reference

TransactionSearch response message 285
TransactionTyp eresponse field 145
TransactionType response field 174, 269
TrialPeriod request field 194, 227
TrialPeriod.Amount request field 196, 229
TrialPeriod.BillingFrequency request field 196
TrialPeriod.BillingPeriod request field 196
TrialPeriod.TotalBillingCycles request field 196, 228
TRY 370
Turkish Lira 370
TWD 369
Type response field 286

U
U.S. Dollar 370
UpdateRecurringPaymentsProfile API operation 221
UpdateRecurringPaymentsProfile request fields 225
UpdateRecurringPaymentsProfile request message 221
UpdateRecurringPaymentsProfile response fields 232
UpdateRecurringPaymentsProfile response
message 232
USD 370
UserName response field 181
UserSelectedOptions request field 129
UserSelectedOptions response field 115
UserSelectedOptions response fields 124, 151

V
Visa AVS response codes 371
Visa CVV2 response codes 373
VPAS response field 70

W
WSDL/XSD schema definitions 16

X
XID request field 66

Y
Yen 369, 370

August 2012

399

Index

Z
Zip request field 28
ZipMatch response field 29
Zloty 369, 370

400

August 2012

SOAP API Developer Reference



Source Exif Data:
File Type                       : PDF
File Type Extension             : pdf
MIME Type                       : application/pdf
PDF Version                     : 1.5
Linearized                      : No
Author                          : PayPal, Inc.
Create Date                     : 2012:08:09 22:54:34Z
Modify Date                     : 2012:08:09 23:18:03-05:00
Tagged PDF                      : Yes
XMP Toolkit                     : Adobe XMP Core 4.2.1-c043 52.372728, 2009/01/18-15:08:04
Creator Tool                    : FrameMaker 9.0
Metadata Date                   : 2012:08:09 23:18:03-05:00
Producer                        : Acrobat Distiller 9.0.0 (Windows)
Format                          : application/pdf
Title                           : PayPal SOAP API Developer Reference
Creator                         : PayPal, Inc.
Document ID                     : uuid:b4fb1a60-e96b-4f30-87dc-9e2eca6ae2fb
Instance ID                     : uuid:71947015-4ac2-482b-b7ac-74ec101a4bb7
Page Mode                       : UseOutlines
Page Count                      : 400
EXIF Metadata provided by EXIF.tools

Navigation menu