You can continue using PayPal Express Checkout Shortcut
The PayPal Express Checkout Shortcut integration (paypal_ecs) uses Hosted Payment Pages (HPP), but is not included in the HPP deprecation plan.
We are working on an alternative for the PayPal Express Checkout Shortcut integration with HPP.
If the payment is authorised on PayPal, the authResult URL parameter Adyen returns is authResult=PENDING. Send us a payment authorisation request to complete the PayPal Express Checkout transaction. Provide authentication credentials. You configure these details in the library you use for server-to-server communication with the Adyen payments platform. The username is automatically retrieved when you initiate a payment and should to match the username value you specify when you authenticate to send your authorise API call.
A predefined username is ws@Company.[YourCompanyAccount]. You set the corresponding password in the Customer Area > Developers > API credentials. The payment request authorise API call you make to Adyen always should include the payment token you receive from us in the payment.token HTTP POST return field as a key/value pair entry in the additionalData
container object. Also, the paypal_ecs value that you passed in the brandCode
field with the initial HTTP POST message while initiating the payment.
<?xml version="1.0" encoding="UTF-8"?>
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:com="http://common.services.adyen.com" xmlns:pay="http://payment.services.adyen.com" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<soapenv:Header />
<soapenv:Body>
<pay:authorise>
<pay:paymentRequest>
<pay:additionalData>
<pay:entry>
<pay:key xsi:type="xsd:string">payment.token</pay:key>
<pay:value xsi:type="xsd:string">eyJkYXRhIjoiYWR5ZW5ocHAwXzFfMSRoWXVGV0tkTUFEN25aRnlYSmRtRHJsYUZVcGpaTFYramxK
aVBlNHlnTEZmbjhzWkR4aVYxRVJjblQxdnZHNVwvb2xQZ1B3TnkwT2RcLzE5NDRsY0V1c2NNZjJc
L3V6RkN4M2duYWFDTGFHSU9ueE9heFVjSmQ3SFlyTDRoaGFHVGhySnN3eTl3aWJYbTU2S2NuZEdm
RXphUVV5VG16Q0NBdk93NnFZeTAzRHJCQ2RLS055bWpTZTBUSmExZ291UWJndUZYMnMxRXgwdzho
VXJ4OUNBWW5qMXVFOHljdTVreUdUQkZpb0Vsa1wvdWt1ZmNyWUdZdkd2YW1PazhQMnViaUhUMkkz
dWQ0V0JPN0JFaGNqdXRhOHpcLzNiNWFRTzJEcnlKaXM2N1NRRFhxbFI3QUxKYW9CblQ4bFNXakl4
c3lsODV6XC9cL1F6dXpvSFwvcitNWW9QSTJrUG04dz09JGlSOE5nZmY5QjEzeHZXQ0VZTjJIZjd4
TXFXRUpRVWVuckxcL1hheFZcLzFSMGJoTExvOGtscWxsYldyVTZLWUlnQU1Wa3hnUzdsOWJXQWZ2
NHVQY3NHMzBMWkE1bURkTkhKNVNTUlR1RFgrR1wvNFN5VE5VK0dzUno1QTNZQmRJYUwzU1Z4OEI4
WThLWXRkb1RnTGlaM1hhNktPNlg3ZVFSbm1QdU5LMGR0K3ZjS0V5aE1NeSt0SHErZ1Y2QTN5VTRN
dkVab0xHeTk0bTVRaklldzkrVnc3RjFcL3NpZW1seTkrZDBXUE5TNHlLVnVnZVZaWk9FSDdyWG9K
ZDFaN1JlQjJUak9SK3I0MVB2TXRnM05tbThPTFB0U1E3STA2UGxYVThjRUZXUHpDckg1WXM3N0o5
QXdlbDJzVGFhNzRja09YSDNZTENadVF6ZzRxbXFidVVBS0pSTmlveXJMQWxzSThcL1VRQlwvRlwv
SENcL1FOSzNXbXIzY1ArQ1Z4SnZ6c0U1ZWg2akxvdlYwU2YrK3QyRWdMVWFDdkRRRmh4MmJhd1kz
SklHQzJhMitYaDFoVXBpNFN4NDFlSHlcL1A4QkcrWUdJZ2Uzakt5aTVWTURBMTh1eEx5MnVySTBr
TVwvVnl2dXBuNWhWQ3ljWm9qQ2pQUjNPVnFhVTdMaWVzR0t6UEl6SlwvRmo1a3ZMVUVqY3VpS2pI
YUx5b0QyVVVKYmdSR1NiK1BpcE9ISDRuYnF3RVI4dkVFVUJcL3VSY3RscXJYQ0E4cjJJUWdESzBK
QWI4SkZhVGRqeXJQRTBDZ2pxK01lUFZ3RkJGZVNjaE56TTdpVWRqSkhycGc1UGpVaGdrNXFIS0NY
K1phd2xtdFlGZDBBdkZBdkYxdzlKR2M3Y294SVlxMlJaaUw5cFFOcHk4c2F3akNRaVZkK1RLTnVt
S2cxZHd2b0pPc0xoZ0w5RlpaenZqUjhWbWZIU1lETmp0ZFEzTitDbEZjVnI4VVdZdkgxZ2c3NjQy
S1UwVFNqa3B6WDQ1bHVDN2JKVkE4RDJEUGx3UGdwREpKYld3ZjVBd0RKNk5EK0tuNUIwUUNMS01P
TWxLUGpXXC9YSUxjWERtMWxpRnora0puVDVYN2lESCtcL29mVG9qUVwvT0hUUlJxNTMrRnltaERZ
PSIsInZlcnNpb24iOiJhZHllbi1lY192MSJ9</pay:value>
</pay:entry>
</pay:additionalData>
<pay:amount>
<com:currency>EUR</com:currency>
<com:value>600</com:value>
</pay:amount>
<pay:browserInfo>
<com:acceptHeader>text/xml,application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,/;q=0.5</com:acceptHeader>
<com:userAgent>Mozilla/5.0 (Macintosh; U; Intel Mac OS X; en-US; rv:1.8.1.6) Gecko/20070725 Firefox/2.0.0.6</com:userAgent>
</pay:browserInfo>
<pay:billingAddress>
<com:city>Amsterdam</com:city>
<com:country>NL</com:country>
<com:houseNumberOrName>1</com:houseNumberOrName>
<com:postalCode>1000 AB</com:postalCode>
<com:stateOrProvince />
<com:street>Main St.</com:street>
<pay:holderName>Joe Black</pay:holderName>
</pay:billingAddress>
<pay:deliveryAddress>
<com:city>Utrecht</com:city>
<com:country>NL</com:country>
<com:houseNumberOrName>2</com:houseNumberOrName>
<com:postalCode>9999 XY</com:postalCode>
<com:stateOrProvince />
<com:street>Second St.</com:street>
</pay:deliveryAddress>
<pay:selectedBrand>paypal_ecs</pay:selectedBrand>
<pay:merchantAccount>TestMerchant</pay:merchantAccount>
<pay:reference>ref123456</pay:reference>
<pay:shopperEmail>testmerchant@example.com</pay:shopperEmail>
<pay:shopperName>
<com:firstName>Mary</com:firstName>
<com:gender>UNKNOWN</com:gender>
<com:infix />
<com:lastName>Lou</com:lastName>
</pay:shopperName>
<pay:shopperReference>YOUR_UNIQUE_SHOPPER_ID_IOfW3k9G2PvXFu2j</pay:shopperReference>
<pay:shopperStatement>ADIDAS</pay:shopperStatement>
</pay:paymentRequest>
</pay:authorise>
</soapenv:Body>
</soapenv:Envelope>
<pay:additionalData>
<pay:entry>
<pay:key xsi:type="xsd:string">payment.token</pay:key>
<pay:value xsi:type="xsd:string">eyJkYXRhIjoiYWR5ZW5ocHAwXzFfMSRoWXVGV0tkTUFEN25aRnlYSmRtRHJsYUZVcGpaTFYramxK
aVBlNHlnTEZmbjhzWkR4aVYxRVJjblQxdnZHNVwvb2xQZ1B3TnkwT2RcLzE5NDRsY0V1c2NNZjJc
L3V6RkN4M2duYWFDTGFHSU9ueE9heFVjSmQ3SFlyTDRoaGFHVGhySnN3eTl3aWJYbTU2S2NuZEdm
RXphUVV5VG16Q0NBdk93NnFZeTAzRHJCQ2RLS055bWpTZTBUSmExZ291UWJndUZYMnMxRXgwdzho
VXJ4OUNBWW5qMXVFOHljdTVreUdUQkZpb0Vsa1wvdWt1ZmNyWUdZdkd2YW1PazhQMnViaUhUMkkz
dWQ0V0JPN0JFaGNqdXRhOHpcLzNiNWFRTzJEcnlKaXM2N1NRRFhxbFI3QUxKYW9CblQ4bFNXakl4
c3lsODV6XC9cL1F6dXpvSFwvcitNWW9QSTJrUG04dz09JGlSOE5nZmY5QjEzeHZXQ0VZTjJIZjd4
TXFXRUpRVWVuckxcL1hheFZcLzFSMGJoTExvOGtscWxsYldyVTZLWUlnQU1Wa3hnUzdsOWJXQWZ2
NHVQY3NHMzBMWkE1bURkTkhKNVNTUlR1RFgrR1wvNFN5VE5VK0dzUno1QTNZQmRJYUwzU1Z4OEI4
WThLWXRkb1RnTGlaM1hhNktPNlg3ZVFSbm1QdU5LMGR0K3ZjS0V5aE1NeSt0SHErZ1Y2QTN5VTRN
dkVab0xHeTk0bTVRaklldzkrVnc3RjFcL3NpZW1seTkrZDBXUE5TNHlLVnVnZVZaWk9FSDdyWG9K
ZDFaN1JlQjJUak9SK3I0MVB2TXRnM05tbThPTFB0U1E3STA2UGxYVThjRUZXUHpDckg1WXM3N0o5
QXdlbDJzVGFhNzRja09YSDNZTENadVF6ZzRxbXFidVVBS0pSTmlveXJMQWxzSThcL1VRQlwvRlwv
SENcL1FOSzNXbXIzY1ArQ1Z4SnZ6c0U1ZWg2akxvdlYwU2YrK3QyRWdMVWFDdkRRRmh4MmJhd1kz
SklHQzJhMitYaDFoVXBpNFN4NDFlSHlcL1A4QkcrWUdJZ2Uzakt5aTVWTURBMTh1eEx5MnVySTBr
TVwvVnl2dXBuNWhWQ3ljWm9qQ2pQUjNPVnFhVTdMaWVzR0t6UEl6SlwvRmo1a3ZMVUVqY3VpS2pI
YUx5b0QyVVVKYmdSR1NiK1BpcE9ISDRuYnF3RVI4dkVFVUJcL3VSY3RscXJYQ0E4cjJJUWdESzBK
QWI4SkZhVGRqeXJQRTBDZ2pxK01lUFZ3RkJGZVNjaE56TTdpVWRqSkhycGc1UGpVaGdrNXFIS0NY
K1phd2xtdFlGZDBBdkZBdkYxdzlKR2M3Y294SVlxMlJaaUw5cFFOcHk4c2F3akNRaVZkK1RLTnVt
S2cxZHd2b0pPc0xoZ0w5RlpaenZqUjhWbWZIU1lETmp0ZFEzTitDbEZjVnI4VVdZdkgxZ2c3NjQy
S1UwVFNqa3B6WDQ1bHVDN2JKVkE4RDJEUGx3UGdwREpKYld3ZjVBd0RKNk5EK0tuNUIwUUNMS01P
TWxLUGpXXC9YSUxjWERtMWxpRnora0puVDVYN2lESCtcL29mVG9qUVwvT0hUUlJxNTMrRnltaERZ
PSIsInZlcnNpb24iOiJhZHllbi1lY192MSJ9
</pay:value>
</pay:entry>
</pay:additionalData>
Include the paypal_ecs brandCode
...
<form id="adyenForm" name="adyenForm" onsubmit="return formValidate(this ,'default' );" autocomplete="off" method="post" action="https://live.adyen.com/hpp/skipDetails.shtml">
...
<input type="hidden" value="paypal_ecs" name="brandCode">
...
</form>
...
In the payment request authorise API call, you need to pass the paypal_ecs value in the selectedBrand
field:
...
<pay:selectedBrand>paypal_ecs</pay:selectedBrand>
...