Sending back the authorization token
How to submit a payment request to Klarna
Your customer has authorized the purchase on Klarna through the client SDK. You need to create the order on Klarna with the authorization token returned by the client to proceed with the payment flow.
To create an order on Klarna you have to update the Klarna payment object first. To do that, send a
PATCH
request to the /api/klarna_payments/:id
endpoint, filling the auth_token
attribute returned by the client SDK.Request
Response
The following request updates the Klarna payment source identified by the "ertHJlpPTR" ID with the
auth_token
received from the client:curl -g -X PATCH \
'http://yourdomain.commercelayer.io/api/klarna_payments/ertHJlpPTR' \
-H 'Accept: application/vnd.api+json' \
-H 'Authorization: Bearer your-access-token' \
-H 'Content-Type: application/vnd.api+json' \
-d '{
"data": {
"type": "klarna_payments",
"id": "ertHJlpPTR",
"attributes": {
"auth_token": "0b1d9815-165e-42e2-8867-35bc03789e00"
}
}
}'
On success, the API responds with a
200 OK
status code, returning the updated Klarna payment object:{
"data": {
"id": "ertHJlpPTR",
"type": "klarna_payments",
"links": {
"self": "https://yourdomain.commercelayer.io/api/klarna_payments/ertHJlpPTR"
},
"attributes": {
"auth_token": "0b1d9815-165e-42e2-8867-35bc03789e00",
"payment_request_data": {
"client_token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.ewogICJzZXNzaW9uX2lkIiA6ICIw",
"payment_method_categories": [
{...}
],
"session_id": "0b1d9815-165e-42e2-8867-35bc03789e00"
},
"payment_response": {},
"payment_instrument":{...},
"created_at": "2018-01-01T12:00:00.000Z",
"updated_at": "2018-01-01T12:00:00.000Z",
"reference": null,
"reference_origin": null,
"metadata": {}
},
"relationships": {
"order": {
"links": {...}
}
},
"meta": {
"mode": "test"
}
}
}
See our documentation if you need more information on how to update a Klarna payment. See our Checkout guide for more details on how to place an order.
Last modified 9mo ago