Paypal Rest Payment Integration

About Paypal Rest:

PayPal APIs use REST, authenticate with OAuth 2.0 access tokens, and return HTTP response codes and responses encoded in JSON.

FeatureLevel of Support
AuthImplemented
Sale (Auth+Capture)Implemented
CaptureImplemented
VoidImplemented
CreditImplemented
Gateway TokenizeImplemented

Authentication and Security Credentials:

Supported Parameters:

Key NameFormatMandatoryDescriptions
apiVersionNumericalRequired“1.0.1”
apiTypeAlphabeticalRequired“pxyhpci”
userNameAlphanumericRequiredAPI Username
userPassKeyAlphanumericRequiredAPI PassKey
pxyCreditCard.creditCardNumberNumericalRequiredHostedPCI Token Representing Credit Card
pxy.CreditCard.cardCodeVerificationNumericalOptionalHostedPCI Token Representing CVV Code
pxyCreditCard.expirationMonthNumericalRequiredExpiration month with 2 digits for example, for December use “12”
pxyCreditCard.expirationYearNumericalRequiredExpiration year with 4 digits for example, for 2025, use “2025”
pxyTransaction.txnCurISOAlphabeticalRequired3 letter ISO Currency Code for example, “USD” or “CAD”
pxyTransaction.txnAmountNumericalRequiredAmount to Authorize, for example for $10.50 use 10.50
pxyTransaction.merchantRefIdNumericalRequiredMerchant reference number can be order id or invoice id
pxyTransaction.txnPayNameAlphanumericRequiredHostedPCI payment profile name, for example “DEF”
pxyTransaction.txnCommentAlphabeticalOptionalShort comment
pxyCustomerInfo.emailAlphanumericOptionalCustomer’s Email Address
pxyCustomerInfo.billingLocation.firstNameAlphabeticalOptionalCustomer’s First Name
pxyCustomerInfo.billingLocation.lastNameAlphabeticalOptionalCustomer’s Last Name
pxyCustomerInfo.billingLocation.phoneNumberNumericalOptionalBilling Phone Number
pxyCustomerInfo.billingLocation.addressAlphanumericOptionalCustomer’s Billing Address
pxyCustomerInfo.billingLocation.address2AlphanumericOptionalSecondary Billing Address
pxyCustomerInfo.billingLocation.cityAlphabeticalOptionalCustomer’s Billing City
pxyCustomerInfo.billingLocation.stateAlphabeticalOptionalCustomer’s Billing State or Province
pxyCustomerInfo.billingLocation.zipCodeNumericalOptionalCustomer’s Billing Zip Code or Postal Code
pxyCustomerInfo.billingLocation.countryAlphabeticalOptionalCustomer’s Billing Country
pxyCustomerInfo.shippingLocation.firstNameAlphabeticalOptionalCustomer’s First Name
pxyCustomerInfo.shippingLocation.lastNameAlphabeticalOptionalCustomer’s Last Name
pxyCustomerInfo.shippingLocation.phoneNumberNumericalOptionalBilling Phone Number
pxyCustomerInfo.shippingLocation.addressAlphanumericOptionalCustomer’s Billing Address
pxyCustomerInfo.shippingLocation.address2AlphanumericOptionalSecondary Billing Address
pxyCustomerInfo.shippingLocation.cityAlphabeticalOptionalCustomer’s Billing City
pxyCustomerInfo.shippingLocation.stateAlphabeticalOptionalCustomer’s Billing State or Province
pxyCustomerInfo.shippingLocation.zipCodeNumericalOptionalCustomer’s Billing Zip Code or Postal Code
pxyCustomerInfo.shippingLocation.countryAlphabeticalOptionalCustomer’s Billing Country

API Endpoint URL:

https://[HPCI_API_HOSTENAME]/iSynSApp/paymentAuth.action

API Request Body:

pxyTransaction.cardOnFileTxnType=C&pxyCreditCard.creditCardNumber=545454..........&pxyCustomerInfo.shippingLocation.address=1+main+St&pxyCustomerInfo.billingLocation.city=Old+City&pxyOrder.description=New+Product+Statement&userPassKey=9dG-............................&pxyCustomerInfo.billingLocation.address2=main+St&pxyTransaction.txnAmount=1500.00&pxyCustomerInfo.shippingLocation.zipcode=12345&pxyCreditCard.cardCodeVerification=737&pxyTransaction.txnPayName=DEF&pxyCustomerInfo.shippingLocation.lastName=Jones&pxyCustomerInfo.shippingLocation.city=Old+City&apiVersion=1.0.1&pxyCustomerInfo.shippingLocation.state=ZZ&pxyCustomerInfo.shippingLocation.phoneNumber=444-456-1234&pxyCustomerInfo.customerIP=127.0.0.1&pxyCustomerInfo.shippingLocation.firstName=Jane&pxyCustomerInfo.billingLocation.firstName=Jane&pxyCustomerInfo.billingLocation.state=ZZ&pxyTransaction.merchantPhoneNum=123-456-7890&pxyCustomerInfo.billingLocation.country=US&pxyCustomerInfo.billingLocation.phoneNumber=444-456-1234&pxyTransaction.merchantProductName=New+Product+Statement&pxyCreditCard.expirationMonth=03&pxyCustomerInfo.customerId=CST2&pxyCustomerInfo.shippingLocation.country=US&userName=[APIUsername]&pxyTransaction.txnCurISO=GBP&pxyTransaction.merchantAccountName=Merchant1&pxyCustomerInfo.email=null%40email.com&pxyTransaction.cardOnFileTxnRef=0&pxyCreditCard.expirationYear=2030&pxyCustomerInfo.billingLocation.lastName=Jones&pxyCustomerInfo.billingLocation.address=1&apiType=pxyhpci&pxyCustomerInfo.billingLocation.zipcode=12345

Paypal Rest Gateway Tokenization:

Parameters Required for Gateway Tokenization:
PARAMETERSVALUE
pxyCreditCard.creditCardNumber[HostedPCI Token]
pxyCreditCard.cardCodeVerification[HostedPCI CVV place holder]
pxyCreditCard.expirationMonth[Credit Card expire month]
pxyCreditCard.expirationYear[Credit Card expire year]
pxyTransaction.txnPayName[Profile Name provided by HostedPCI]
pxyCustomerInfo.billingLocation.firstName[Client’s first name as it appears on the card]
pxyCustomerInfo.billingLocation.lastName[Client’s last name as it appears on the card]
PayTrace Gateway Tokenization API Call:
Request:
pxyCreditCard.creditCardNumber=4444000015201111&apiVersion=1.0.1&userPassKey=[APIPasskey]&pxyCreditCard.expirationMonth=09&pxyCreditCard.expirationYear=2022&pxyCustomerInfo.billingLocation.lastName=Customer&pxyCustomerInfo.billingLocation.firstName=Test&userName=[APIUsername]&pxyCreditCard.cardCodeVerification=200&pxyTransaction.txnPayName=DEF&pxyTransaction.txnCurISO=USD&apiType=pxyhpci
Response:
status=success&operId=&tokenId=583746815&mappedCC=4444000015201111&ccBIN=&pxyResponse.threeDSEnrolled=&pxyResponse.threeDSAcsUrl=&pxyResponse.threeDSErrorDesc=&pxyResponse.processorRefId=&pxyResponse.processorType=paytraceResponse&pxyResponse.threeDSMessageId=&pxyResponse.threeDSSessionId=&pxyResponse.cardOnFileIssuerId=&pxyResponse.mappedParams=txnResponse.ccTypeEst%3DVISA&pxyResponse.threeDSARS=&pxyResponse.threeDSOrderId=&pxyResponse.gatewayToken.status=&pxyResponse.responseStatus.name=&pxyResponse.responseAVS2=&pxyResponse.responseStatus=approved&pxyResponse.gatewayToken=337894420-2979258728&pxyResponse.responseAVS1=&pxyResponse.responseAVS4=&pxyResponse.responseStatus.description=&pxyResponse.threeDSCAVV=&pxyResponse.responseAVS3=&pxyResponse.gatewayToken.fullNativeResp=&pxyResponse.threeDSXid=&pxyResponse.threeDSProtoVersion=&pxyResponse.responseStatus.reasonCode=&pxyResponse.threeDSPARequest=&pxyResponse.responseCVV1=&pxyResponse.threeDSECI=&pxyResponse.responseCVV2=&pxyResponse.fullNativeResp=%7B%22success%22%3Atrue%2C%22response_code%22%3A160%2C%22status_message%22%3A%22The+customer+profile+for+337894420-2979258728%2FTest+Customer+was+successfully+created.%22%2C%22customer_id%22%3A%22337894420-2979258728%22%2C%22masked_card_number%22%3A%22xxxxxxxxxxxx1111%22%7D&pxyResponse.threeDSAcsPageData=&pxyResponse.gatewaySubToken2=&pxyResponse.threeDSTransactionId=&pxyResponse.gatewaySubToken1=&pxyResponse.gatewaySubToken3=&pxyResponse.merchantRefId=&pxyResponse.threeDSErrorId=&pxyResponse.txnPayName=DEF&pxyResponse.responseStatus.code=160&pxyResponse.threeDSSRS=