killbill-adyen plugin giving '401: Unauthorized' while authorizing payment

287 views
Skip to first unread message

saikrri...@gmail.com

unread,
May 6, 2017, 7:58:11 AM5/6/17
to Kill Bill users mailing-list
I am getting "'401: Unauthorized' when communicating with https://pal-test.adyen.com/pal/servlet/Payment/v12" while trying to authorize a payment.

When I hit the Adyen API with the same token, I could authorize the payment. I cross verified the killbill-adyen configuration(in tenant_kvs), I stored the right adyen ws account & password.

curl -v \
-X POST \
-u admin:password \
-H 'X-Killbill-ApiKey: bob' \
-H 'X-Killbill-ApiSecret: lazar' \
-H 'X-Killbill-CreatedBy: admin' \
-H 'Content-Type: text/plain' \
-d 'org.killbill.billing.plugin.adyen.paymentUrl=https://pal-test.adyen.com/pal/servlet/Payment/v12
org.killbill.billing.plugin.adyen.merchantAccount=XXXXX
org.killbill.billing.plugin.adyen.username=ws_1...@Company.XXXXX
org.killbill.billing.plugin.adyen.password=XXXXXXXX
org.killbill.billing.plugin.adyen.hpp.target=https://test.adyen.com/hpp/pay.shtml
org.killbill.billing.plugin.adyen.directoryUrl=https://test.adyen.com/hpp/directory.shtml
org.killbill.billing.plugin.adyen.hmac.secret=XXXXXX
org.killbill.billing.plugin.adyen.skin=XXXXXXX
' \
http://192.168.99.100:8080/1.0/kb/tenants/uploadPluginConfig/killbill-adyen

curl -v \
-u admin:password \
-H "X-Killbill-ApiKey: bob" \
-H "X-Killbill-ApiSecret: lazar" \
-H "Content-Type: application/json" \
-H "X-Killbill-CreatedBy: demo" \
-X POST \
--data-binary '{
"pluginName": "killbill-adyen",
"pluginInfo": {"properties": [{"key":"encryptedJson", "value":"adyenjs_0_1_18$QMNaH7cgtAM0ihZusQ7ki30SPe97AuxO2G+Vwsi4bFIaaj6d+OPsfsOmk7Heb25Uy+O9PR5bp4nhBqCd5oOsto2VnPEEoqetMBd1qEElYHYn7oKg31CRX4T1Ashu1fldxRhpm8ZM7VV10PYmu9CqIKKNffiqgXNBHQ7oP7ZBVUFY9mD7JHpecOF/OzrHMGjzikeJq6wTWfzK5TQRKwJv0mWU3B7uJCjWeMukY90OhMoM7SfSjfQPUWxc+YG9awzkTpIu4RW2XAdappIaTMwWGwg4ySnRKsPuyHgWDBDffu6T2Jpf2U//wgaeWAc4M5P9hktuUehJsDeTJEvqTE3nEA==$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"}]}
}' \
"http://192.168.99.100:8080/1.0/kb/accounts/4aa63393-b417-42dd-bd42-14bb6b8e0ce2/paymentMethods?isDefault=true"


curl -v \
-X POST \
-u admin:password \
-H 'Content-Type: application/json' \
-H 'X-Killbill-ApiKey:bob' \
-H 'X-Killbill-ApiSecret:lazar' \
-H 'X-Killbill-CreatedBy: creator' \
--data-binary '{"transactionType":"AUTHORIZE","amount":"10","currency":"USD","transactionExternalKey":"INV-AD5-AUTH"}' \
"http://192.168.99.100:8080/1.0/kb/accounts/4aa63393-b417-42dd-bd42-14bb6b8e0ce2/payments"


Thank you for support.

saikrri...@gmail.com

unread,
May 6, 2017, 8:26:22 AM5/6/17
to Kill Bill users mailing-list, saikrri...@gmail.com
In the logs, I observed that the plugin is not sending the token with the special character +(e.g. +)that it actually had in the token to Adyen.


ID: 7
Address: https://pal-test.adyen.com/pal/servlet/Payment/v12
Encoding: UTF-8
Http-Method: POST
Content-Type: text/xml
Headers: {Accept=[*/*], Authorization=[****], SOAPAction=[""], x-request-id=[a44f3bf8-c409-4004-b80c-5b6e4011bd63]}
Payload: <soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"><soap:Body><authorise xmlns="http://payment.services.adyen.com" xmlns:ns2="http://common.services.adyen.com" xmlns:ns3="http://recurring.services.adyen.com"><paymentRequest><additionalAmount xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:nil="true"/><additionalData><entry><key xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xs="http://www.w3.org/2001/XMLSchema" xsi:type="xs:string">card.encrypted.json</key><value xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xs="http://www.w3.org/2001/XMLSchema" xsi:type="xs:string">adyenjs_0_1_18$QMNaH7cgtAM0ihZusQ7ki30SPe97AuxO2G Vwsi4bFIaaj6d OPsfsOmk7Heb25Uy O9PR5bp4nhBqCd5oOsto2VnPEEoqetMBd1qEElYHYn7oKg31CRX4T1Ashu1fldxRhpm8ZM7VV10PYmu9CqIKKNffiqgXNBHQ7oP7ZBVUFY9mD7JHpecOF/OzrHMGjzikeJq6wTWfzK5TQRKwJv0mWU3B7uJCjWeMukY90OhMoM7SfSjfQPUWxc YG9awzkTpIu4RW2XAdappIaTMwWGwg4ySnRKsPuyHgWDBDffu6T2Jpf2U//wgaeWAc4M5P9hktuUehJsDeTJEvqTE3nEA==$GahnmOc4iQJOQKDXL8pcOo1ZrVnwfLZEFUvmc4kTkxsrJvyYJxGNPUeo0zJHJRe3TlUXjcinaIPJDx E JW9EWZSCk4j6w2dplds TdWRnNVm82vp0IyBAVlHyvPons1jnB4/d/DRoryZLYwWu4Mk0Z/s2nKb9QBkN8JlutObsNulPi Tb/5cbDyaFsaLalpwV6PU 8tpyK3 lMpI49S/pb6DWxpstR Y5a8chGRBFYrpCmAUMyLBit0bOki/zowDijXJufgl1LdKfTcaewIZkdpBQBfC3razEjz9H3gctTzJ2Pxv7smXeWEL9BN5M/1Q/V91dFXV4jlWKSDehsQYNHRlR9MOfzCmIbtREiqnpQm qNY12Y9ww6afKrPG8tnbJsB1U 1LEnTdqLRmuC1FWo0Hlk7cmbC/Q6d5 tOWSs7vlNkBQABszHJxs1j6iB809IeME9Pjy CT twEcmFNtcevDddjCJGEIGr/UE0N/4K8AlE7DYzZoapZR8ZSJsIf5U/Mq5/F6RE5rvEOtcbOnOyPnW6/uOuGX677lQu7nYe8mGmu9YzXggjGzQ9VmFE9F2QbQv1QOuL9FuIh431coBrlojT8GO8nYp3Yx4HNkWLGMscLvhs3mGbLRC3rAQ2Wsa70XU/WNiMxRfLRKdKkR 9txNfpIdpyvw3tOdRYdLOf4/1bRsXBc/0/XyZksb 5GwjuZUzYREJQ NkZ7Ccfele11hmvJQS0f8dvaG jk3lgmFBdX5k15YE4lFDWnEz9o6WMA48ArAq1V7uzpo8ls26trrOkUSXxv zgYX6fetiWdwyVz1Y hrsWyQ0 bLR6hjrFE9IFriulm85vxEoNRgXi7qXifiEIvmw1Mq72tAW915nsGzmXGJaCxr2qKh7WF3XrMkSaPx30XBzIR3r9V1ekAqUab1iD/gko0YktTzL3wYwL7sfLSjYUZfPOfT0RLVbokWkhjPuijk gpO7u09s5w lVBfLRy8WL593RWtNxKssba/ZR/5SztQsIgbPbzc9HtSyNtfmXHv WAH4v/nG6Idbju1CHx7VcWoHP3JGl5iftttfRjEK5L9BFfKU1nSUbCJgu8D72rDOb/ BVwQV2KxN5ln567Twk4qW0AsVT7Lg7Mf9NtaTNTx5eksvSBrAX0zQeF1/hPcV/bhbY NFQ07zVPhJOCoxkP8NoNRvgbhFTXuG0Vj/He/ipIjDgUS9ViZyJTJp2h0mPsTeZO0bNkPyO9RfR8I4wO4eGGPOLQGd07IoNwNAmEFK2pa4FYogbiGXg2z2fQAuN8gauTL6kXGrMoiRdbZ60DjO/3fFcutC7N jXLBXKuS4YmqcCXPMvbvCmQEKUiJx kZIrWHYLxRUt4X6/CbOK9mwvuf8PnXH/yixJYPhyU0Z33r/PkRI4cFrT06jMzlnVN0L6su03NW3V/6MtE0yutt/joYoe8zaJVHhiWDULnyMvQx17kKr 5GcaIdiX jBaKAlwb0BVzFHA5xCcOJS8YgLDO0OU3SSGOswQSvuPdm6XpQ4z3Sci5vdrOT68Wsb/ldUvl50kDy2B6LwGrxcPei gvLxP7u988WD28e6gnlUY/ihqYiii5psKfwpW/PU7aghlGc7cniuM9PxKz6xv6SJPLWpwh9ejoEGXrwYCk7069ULY7UkkDAuokgtSWlhYe5ZAtsGgftoUO5wEARPrUcJSYaW28O0KWa9qTcfY4JwYajkCB7xlBDLaEVhREWdfUVe44fSAnwEGM UaC/jNKJ3xhOgLABwa0J8xur3GSFDNz07PAn3K5ws8RLxG70Z/Wi6baEWkFY4LbVnJyjsG1hVRem5dwCJUnqvL7sFyI169oqwpcdCakB29AA6cCAJZPsaXSV1NaIF6xrl2F8G9D6xB47d77M9VcADV9uLpzMp viYJhBg52HEKvCXpFudmrD51ONQdfYTg/g2LvrvsD5pO9YP092hEVU8MoccHjrQiKl1nRAgzKvmD y1Yc9zqlq/8yaEbVvqcrjDDTmoymHeha71b/uhLbv7bbWYhKaWIrwDN9H9fGbmUJxdfM1h9QTWOZlQGm4XmGwm8Bmo9kAFzPTiMOXHTI5tG12v4KB3idLLtan2KoPElrjr0/00/9 g01s/ZKJUQrGarehU2DXral3xGBMRA9YirvZastijymTNCRnS9q7e57Qo9neE1h Lb6iWoSrSorUomYIxouDyUAYS/gjBPB4h l8eSKVBAVpmtFdwI3wI9P1ap79QP1Z4TYQPJYBO6gd8ZeUGxQIXrFL/NopWlhwpHr7EsxrYXqGqwkBmt2DjzZ6tf30hRL1ikr/cSu8Olo1VQnM2wxsgJseQPObrulGfpKaLeJ29QnI24N8cHbTnKV1TlhukD0zignFYDSPgfzsj1eXUdgAIitg6hoKqg7vyExFWUc vfw==</value></entry></additionalData><amount><ns2:currency>USD</ns2:currency><ns2:value>1000</ns2:value></amount><bankAccount xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:nil="true"/><billingAddress xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:nil="true"/><browserInfo xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:nil="true"/><captureDelayHours xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:nil="true"/><card><billingAddress xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:nil="true"/><cvc xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:nil="true"/><holderName>****</holderName><issueNumber xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:nil="true"/><startMonth xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:nil="true"/><startYear xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:nil="true"/></card><dateOfBirth xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:nil="true"/><dccQuote xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:nil="true"/><deliveryAddress xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:nil="true"/><deliveryDate xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:nil="true"/><deviceFingerprint xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:nil="true"/><fraudOffset xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:nil="true"/><installments xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:nil="true"/><mcc xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:nil="true"/><merchantAccount>HarmanConnectedServicesUSA</merchantAccount><merchantOrderReference xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:nil="true"/><mpiData xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:nil="true"/><orderReference xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:nil="true"/><recurring xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:nil="true"/><reference>INV-AD5-AUTH</reference><selectedBrand xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:nil="true"/><selectedRecurringDetailReference xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:nil="true"/><sessionId xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:nil="true"/><shopperEmail>************************</shopperEmail><shopperIP xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:nil="true"/><shopperInteraction>ContAuth</shopperInteraction><shopperLocale xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:nil="true"/><shopperName><ns2:firstName>*****</ns2:firstName><ns2:gender xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:nil="true"/><ns2:infix xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:nil="true"/><ns2:lastName>*************</ns2:lastName></shopperName><shopperReference>saikrishna14</shopperReference><shopperStatement xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:nil="true"/><socialSecurityNumber xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:nil="true"/><telephoneNumber xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:nil="true"/></paymentRequest></authorise></soap:Body></soap:Envelope>

Pierre-Alexandre Meyer

unread,
May 8, 2017, 4:06:59 AM5/8/17
to saikrishna chunchu, Kill Bill users mailing-list
On Sat, May 6, 2017 at 5:26 AM, <saikrri...@gmail.com> wrote:
In the logs, I observed that the plugin is not sending the token with the special character +(e.g. +)that it actually had in the token to Adyen.

I'm confused about what "token" refers to.

Are you saying that the Authorization header below is invalid (i.e. wrong username/password sent)?

Headers: {Accept=[*/*], Authorization=[****], SOAPAction=[""], x-request-id=[a44f3bf8-c409-4004-b80c-5b6e4011bd63]}

Or is it the card.encrypted.json field that is invalid?

To debug the former, the easiest is to set a breakpoint here:


For the latter, make sure to encode (x-www-form-urlencoded) the plugin property value in the POST:


Let us know how it goes,

--
Pierre
Reply all
Reply to author
Forward
0 new messages