FILTER BY TAG

Update an Authorized Payment

Successfully processed authorizations can be updated as follow-on authorizations before you capture or reverse the payment. Follow-on authorizations enable you to update the billing, shipping, itemization, and item break up information of already submitted orders. When updating an authorization, set the
linkToRequest
field to the
requestID
field value from the original authorization response in order to link your request to the original authorization.

Endpoints

Set the
apAuthService_run
field to
true
, and send the request to one of these endpoints:
Production:
https://ics2ws.ic3.com/commerce/1.x/transactionProcessor
Test:
https://ics2wstest.ic3.com/commerce/1.x/transactionProcessor

Response Status

The authorization service responds with one of these statuses as the
apAuthReply_status
field value:
  • AUTHORIZED
    : The payment is successfully authorized.
  • FAILED
    : The authorization request failed.
  • PENDING
    : The authorization request is accepted but is not authorized. Request the check status service to retrieve status updates. For more information, see Check Status.

Required Fields for Updating an Authorization

Set to the token generated by Klarna.
Set to
true
.
Set to
KLI
.
Set to the same value used in the sessions request.
Set to the
requestID
from the initial authorization response.
merchantDefinedData_mddField_5
Set to the same value used in the create session request. Possible values:
  • HOP
    : display the Klarna widget on your checkout page
  • inline
    : redirect the customer to the Klarna-hosted page
Set to the same value as the
purchaseTotals_grandTotalAmount
field in the latest sessions update request.

Country-Specific Fields

Include these country-specific field in addition to the required fields listed above.

Example: Updating an Authorized Payment

Follow-on Authorization Request
<requestMessage xmlns="urn:schemas-cybersource-com:transaction-data-1.213"> <merchantID>test_merchant</merchantID> <merchantReferenceCode>refnum-1234</merchantReferenceCode> <billTo> <firstName>Jane</firstName> <lastName>Smith</lastName> <street1>Happy St</street1> <street2>456</street2> <city>Austin</city> <district>TX</district> <state>TX</state> <postalCode>78797</postalCode> <country>US</country> <email>
test@cybs.com
</email> </billTo> <purchaseTotals> <currency>USD</currency> <grandTotalAmount>10.00</grandTotalAmount> </purchaseTotals> <merchantDefinedData> <field5>inline</field5> </merchantDefinedData>
<linkToRequest>6958684668456844304007</linkToRequest>
<apPaymentType>KLI</apPaymentType> <apAuthService run="true"> <preapprovalToken>9cb0b304-c901-5a58-afd5-06c87d7bb217</preapprovalToken> </apAuthService> </requestMessage>
Follow-on Authorization Response
<replyMessage xmlns:c="urn:schemas-cybersource-com:transaction-data-1.213"> <merchantReferenceCode>refnum-1234</merchantReferenceCode> <requestID>6958688084846249104011</requestID> <decision>ACCEPT</decision> <reasonCode>100</reasonCode> <requestToken>AxjnrwSTeTsyWHVD+dKL/6IZYjWmjCbZrSIzSWojmjst4nSBX0GY0MmkmXoxZaH/pN5OzJYdUP50osAA8wHb</requestToken> <purchaseTotals> <currency>USD</currency> </purchaseTotals> <exportReply> <reasonCode>100</reasonCode> <ipCountryConfidence>-1</ipCountryConfidence> </exportReply> <apReply> <productID>paylaterbycard</productID> </apReply> <apAuthReply> <reasonCode>100</reasonCode> <status>AUTHORIZED</status> <processorResponse>00003</processorResponse> <amount>10.00</amount> <dateTime>2023-09-28T02:40:10Z</dateTime> <paymentStatus>authorized</paymentStatus> <responseCode>00003</responseCode> <merchantURL>https://js.playground.klarna.com/na/kp/v1/sessions/f2bebdbb-b46c-551e-a8a4-048a4a185c10/redirect</merchantURL> <reconciliationID>XFZ40MYVHF4K</reconciliationID> <processorTransactionID>fc2b177e-f70a-4ff6-8847-3ab7b8db6d9c</processorTransactionID> </apAuthReply> </replyMessage>