Klarna Get Payment Authorization
Overview
Get Payment Authorization is the API call of Klarna's two-step checkout flow following Klarna JavaScript Initialization. The request is sent with the PaymentId and AuthenticationResult(redirectResult) appended in the return url to which the shopper gets returned(redirected) after the shopper finishes initial authentication process.
The same PaymentId must be used in the Get Payment Authorization request.
In Get Payment Authorization reply, ResponseCode is used to determine if the payment was successfully processed for that order. The order can be accepted when ResponseCode is APPROVED and must be rejected if the value is DECLINED.
URI Summary
Action |
URI Template |
URI Example |
Non-URI Request |
Response |
---|---|---|---|---|
POST |
/v[M.m]/stores/{StoreID}/payments/authorization/get.[format] |
/v1.0/stores/stores123/payments/authorization/get.xml |
XML |
200 + XML response |
Request Elements
Element |
Optional/Required |
Description |
Type |
Restriction |
---|---|---|---|---|
/GetPaymentAuthorizationRequest/ |
Required |
Unique identifier for an order across all transactions of the same order.
|
String |
Min 1 character
|
/GetPaymentAuthorizationRequest/ |
Required |
Reference id element appended in the return url to which the shopper get returned(redirected) after the shopper finishes initial authentication process. |
String |
Min 1 chars
|
/GetPaymentAuthorizationRequest/ |
Required |
redirectResult appended in the return url to which the shopper get returned(redirected) after the shopper finishes initial authentication process |
String |
Length > 0 |
Request Example
<?xml version="1.0" encoding="UTF-8"?>
<GetPaymentAuthorizationRequest xmlns="http://api.gsicommerce.com/schema/checkout/1.0" requestId="1234567">
<OrderId>Order-01</OrderId>
<PaymentId>123456789123456789123456789Abcde</PaymentId>
<AuthenticationResult>X3XtfGC7%21H4sIAAAAAAAAAGVSa2%2BjMBD8L3y6D4VSHgYinU4peTTXJqUQrlFVCRl7SWgScG0T
KWr738%2FOQ5dTJSSknZ3Z2R1%2FGBxozYHIBO%2B30MgBltjofRiY0lrWbYM35woTjENl9Iw5SpPYny%2BexovFeBY6xpWx3m
DeYHaUEJYAIRS3qKlqp2VZ3QQeMkMg1PTCG2RGflSZFFfYdQOXULCVBCbvnTLC%2B4S0XSMnmuoEkYM0qAx2nNfNMm4byTGRCp
S8AwWJVcsY8BQq4NAQ0DQWIeNLSW61kvau2QrcKzDPBoq1wxvF7rm2betGVv8Bri0bPRReGSXHDY1bqsWOqxX4aEtRD3%2B%2B
P8F5pkpb4GSFG3nyrsr9YfqYZwXE7bbIs37RB96yVki8gYv%2BS9PzaZZnn8dpJmuJKUFIU%2FlzPtGPaZFkhSK2vF7WKpNEs
EtuPJ8mt9P0dvSUnhPh8N4pgf63GM%2BzJ42EJccatOSeHWTuhvH9Yz4vxsPZMJ3EF04vu3fnUxko1GfmIDve5HyjKispmei9X
r9ekxWQddvJUz6HdSxM99BYpN1%2Bw%2F8VTg8xPaj%2BWrKa%2Fhwn%2Fmg0GEY%2BigdeELi3oQ5%2BXTenEFhXWjvHCu0bZ
Huqy45810WRNVi%2BxH4pZqMM3b89lHcL%2F%2BVtspo9eG6Z3z8H1e9FHu2fAxGv%2Fl8kwRxvhb4WB9FtdKCiI0S9ajVXtmv
Qy%2BOqDDzbj0yMHDC9AFdm6WAwI%2BoSpD5a2Ur16y9AtU0XYgMAAA%3D%3DKFmTC%2BBmZA0x8y1RAFc0uKzYygBKlZvyKxU
Kf43C0i4%3D
</AuthenticationResult>
</GetPaymentAuthorizationRequest>
Response Elements
Element |
Optional/Required |
Description |
Type |
Restriction |
---|---|---|---|---|
/GetPaymentAuthorizationReply/PaymentContext |
Required |
Unique identifier of the payment transaction for the order. |
ComplexType |
|
/GetPaymentAuthorizationReply/PaymentContext/OrderId |
Required |
Unique identifier of the order from the GetPaymentAuthorizationRequest |
String |
Min 1 char
|
/GetPaymentAuthorizationReply/ |
Required |
Identifies the tender type. |
String |
Min 2 char
|
/GetPaymentAuthorizationReply/ |
Required |
Either a raw PAN (payment account number such as a credit card number), a token
|
String |
Max 22 characters |
/GetPaymentAuthorizationReply/ |
Required |
Attribute that indicates whether the payment account number is tokenized |
Boolean |
true or false |
/GetPaymentAuthorizationReply/ |
Optional |
If the payment context in this reply is the final context. |
Boolean |
true or false |
/GetPaymentAuthorizationReply/ |
Required |
Status code describing the current state of the authorization. |
Enum |
Can be any of the below |
/GetPaymentAuthorizationReply/ |
Required |
The amount that has been authorized. |
Decimal |
Min 0.00
|
Response Example
Approved Payment Authorization Status Response
<?xml version="1.0" encoding="UTF-8"?>
<GetPaymentAuthorizationReply xmlns:payment="http://schema.gsicommerce.com/payments/types/1.0/"
xmlns="http://api.gsicommerce.com/schema/checkout/1.0">
<PaymentContext>
<OrderId>OrderId-01</OrderId>
<TenderType>KL</TenderType>
<PaymentAccountUniqueId isToken="true">INSTANTFINANCE</PaymentAccountUniqueId>
</PaymentContext>
<ResponseCode>APPROVED</ResponseCode>
<AmountAuthorized currencyCode="USD">50.00</AmountAuthorized>
</GetPaymentAuthorizationReply>
Cancelled Payment Authorization Status Response
<?xml version="1.0" encoding="UTF-8"?>
<GetPaymentAuthorizationReply xmlns:payment="http://schema.gsicommerce.com/payments/types/1.0/"
xmlns="http://api.gsicommerce.com/schema/checkout/1.0">
<PaymentContext>
<OrderId>OrderId-01</OrderId>
<TenderType>KL</TenderType>
<PaymentAccountUniqueId isToken="true">INSTANTFINANCE</PaymentAccountUniqueId>
</PaymentContext>
<ResponseCode>CANCELLED</ResponseCode>
<AmountAuthorized currencyCode="USD">0.00</AmountAuthorized>
</GetPaymentAuthorizationReply>
Declined Payment Authorization Status Response
<?xml version="1.0" encoding="UTF-8"?>
<GetPaymentAuthorizationReply xmlns:payment="http://schema.gsicommerce.com/payments/types/1.0/"
xmlns="http://api.gsicommerce.com/schema/checkout/1.0">
<PaymentContext>
<OrderId>OrderId-01</OrderId>
<TenderType>KL</TenderType>
<PaymentAccountUniqueId isToken="true">INSTANTFINANCE</PaymentAccountUniqueId>
</PaymentContext>
<ResponseCode>DECLINED</ResponseCode>
<AmountAuthorized currencyCode="USD">0.00</AmountAuthorized>
</GetPaymentAuthorizationReply>
Error Payment Authorization Status Response
<?xml version="1.0" encoding="UTF-8"?>
<GetPaymentAuthorizationReply xmlns:payment="http://schema.gsicommerce.com/payments/types/1.0/"
xmlns="http://api.gsicommerce.com/schema/checkout/1.0">
<PaymentContext>
<OrderId>OrderId-01</OrderId>
<TenderType>KL</TenderType>
<PaymentAccountUniqueId isToken="true">INSTANTFINANCE</PaymentAccountUniqueId>
</PaymentContext>
<ResponseCode>ERROR</ResponseCode>
<AmountAuthorized currencyCode="USD">0.00</AmountAuthorized>
</GetPaymentAuthorizationReply>
Timeout Payment Authorization Status Response
<?xml version="1.0" encoding="UTF-8"?>
<GetPaymentAuthorizationReply xmlns:payment="http://schema.gsicommerce.com/payments/types/1.0/"
xmlns="http://api.gsicommerce.com/schema/checkout/1.0">
<PaymentContext>
<OrderId>OrderId-01</OrderId>
<TenderType>KL</TenderType>
<PaymentAccountUniqueId isToken="true">INSTANTFINANCE</PaymentAccountUniqueId>
</PaymentContext>
<ResponseCode>TIMEOUT</ResponseCode>
<AmountAuthorized currencyCode="USD">0.00</AmountAuthorized>
</GetPaymentAuthorizationReply>