Get session status
Get session details. The blocks returned mirror what the session was created with: an order session returns order, and a standalone tokenization session returns tokenize with its approval_url and no order block.
curl --request GET \
--url https://sandbox.gateway.sezzle.com/v2/session/{session_uuid} \
--header 'Authorization: <api-key>'import requests
url = "https://sandbox.gateway.sezzle.com/v2/session/{session_uuid}"
headers = {"Authorization": "<api-key>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: '<api-key>'}};
fetch('https://sandbox.gateway.sezzle.com/v2/session/{session_uuid}', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://sandbox.gateway.sezzle.com/v2/session/{session_uuid}",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: <api-key>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://sandbox.gateway.sezzle.com/v2/session/{session_uuid}"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "<api-key>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://sandbox.gateway.sezzle.com/v2/session/{session_uuid}")
.header("Authorization", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://sandbox.gateway.sezzle.com/v2/session/{session_uuid}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = '<api-key>'
response = http.request(request)
puts response.read_body{
"uuid": "fadbc642-05a4-4e38-9e74-80e325623af9",
"links": [
{
"href": "https://gateway.sezzle.com/v2/session/fadbc642-05a4-4e38-9e74-80e325623af9",
"method": "GET",
"rel": "self"
}
],
"order": {
"uuid": "12a34bc5-6de7-890f-g123-4hi1238jk902",
"intent": "CAPTURE",
"checkout_url": "https://checkout.sezzle.com/?id=12a34bc5-6de7-890f-g123-4hi1238jk902",
"links": [
{
"href": "https://gateway.sezzle.com/v2/order/12a34bc5-6de7-890f-g123-4hi1238jk902",
"method": "GET",
"rel": "self"
},
{
"href": "https://gateway.sezzle.com/v2/order/12a34bc5-6de7-890f-g123-4hi1238jk902",
"method": "PATCH",
"rel": "self"
},
{
"href": "https://gateway.sezzle.com/v2/order/12a34bc5-6de7-890f-g123-4hi1238jk902/release",
"method": "POST",
"rel": "release"
},
{
"href": "https://gateway.sezzle.com/v2/order/12a34bc5-6de7-890f-g123-4hi1238jk902/capture",
"method": "POST",
"rel": "capture"
},
{
"href": "https://gateway.sezzle.com/v2/order/12a34bc5-6de7-890f-g123-4hi1238jk902/refund",
"method": "POST",
"rel": "refund"
}
]
},
"tokenize": {
"token": "7ec98824-67cc-469c-86ab-f9e047f9cf1a",
"expiration": "2020-04-27T14:46:59.000Z",
"links": [
{
"href": "https://gateway.sezzle.com/v2/token/7ec98824-67cc-469c-86ab-f9e047f9cf1a/session",
"method": "GET",
"rel": "token"
}
]
}
}[
{
"code": "bad_request",
"message": "bad request"
}
][
{
"code": "unauthorized",
"message": "authorization not accepted"
}
][
{
"code": "record_not_found",
"message": "not found"
}
][
{
"code": "invalid",
"message": "Unprocessable entity"
}
]Authorizations
The authentication token generated from providing API Keys to Sezzle Gateway
Path Parameters
The Session UUID to receive (from Create Session response)
Response
Successful Operation
Note: This example response is a multi-purpose session (create order and tokenize)
The unique identifier for this response
Available API links prefilled with UUID with accompanying method
Hide child attributes
Hide child attributes
The fully qualified URL for the API endpoint
The relationship type indicating the purpose of this link (e.g., 'self' for the current resource, 'create' for creating a new resource, 'list' for listing resources)
self, capture, checkout, create, customer, list, order, preapprove, refund, release, session The HTTP method to use when calling this API endpoint
GET, POST, PATCH, DELETE Hide child attributes
Hide child attributes
The unique identifier for the order details provided by the merchant
- Use CAPTURE if payment should be captured immediately upon shopper authorization
- Use AUTH if there is any post-authorization validation needed prior to capture, such as inventory validation or regulatory requirements, or if merchant policy is to charge the payment method at time of shipment
- Submit a capture request via the API or your Merchant Dashboard before the authorization expires.
- The authorization expiration window can be set from 30 minutes up to 7 days in your Merchant Dashboard Settings.
- If not specified, the value will default to CAPTURE
AUTH, CAPTURE The URL to which the shopper should be directed to complete their order with Sezzle
Hide child attributes
Hide child attributes
The fully qualified URL for the API endpoint
The relationship type indicating the purpose of this link (e.g., 'self' for the current resource, 'create' for creating a new resource, 'list' for listing resources)
self, capture, checkout, create, customer, list, order, preapprove, refund, release, session The HTTP method to use when calling this API endpoint
GET, POST, PATCH, DELETE Hide child attributes
Hide child attributes
This token represents the merchant request to tokenize a customer. This token can only be used one time. Once a user accepts/denies tokenization, this token and its approval URL will be obsolete.
The expiration of the request token in ISO 8601 date/time format.
The URL for the user to accept tokenization. This URL does not create an order and the customer is not charged; it is only used for tokenizing a customer. Returned only for standalone tokenization — a session with customer.tokenize set to true and no order object — and only for merchants who have standalone tokenization enabled. It is omitted for sessions that include an order, where the customer authorizes tokenization during checkout instead. The URL expires 30 minutes after the session is created, which is sooner than the expiration field above. Create the session at the moment the customer clicks to authorize.
Hide child attributes
Hide child attributes
The fully qualified URL for the API endpoint
The relationship type indicating the purpose of this link (e.g., 'self' for the current resource, 'create' for creating a new resource, 'list' for listing resources)
self, capture, checkout, create, customer, list, order, preapprove, refund, release, session The HTTP method to use when calling this API endpoint
GET, POST, PATCH, DELETE curl --request GET \
--url https://sandbox.gateway.sezzle.com/v2/session/{session_uuid} \
--header 'Authorization: <api-key>'import requests
url = "https://sandbox.gateway.sezzle.com/v2/session/{session_uuid}"
headers = {"Authorization": "<api-key>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: '<api-key>'}};
fetch('https://sandbox.gateway.sezzle.com/v2/session/{session_uuid}', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://sandbox.gateway.sezzle.com/v2/session/{session_uuid}",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: <api-key>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://sandbox.gateway.sezzle.com/v2/session/{session_uuid}"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "<api-key>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://sandbox.gateway.sezzle.com/v2/session/{session_uuid}")
.header("Authorization", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://sandbox.gateway.sezzle.com/v2/session/{session_uuid}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = '<api-key>'
response = http.request(request)
puts response.read_body{
"uuid": "fadbc642-05a4-4e38-9e74-80e325623af9",
"links": [
{
"href": "https://gateway.sezzle.com/v2/session/fadbc642-05a4-4e38-9e74-80e325623af9",
"method": "GET",
"rel": "self"
}
],
"order": {
"uuid": "12a34bc5-6de7-890f-g123-4hi1238jk902",
"intent": "CAPTURE",
"checkout_url": "https://checkout.sezzle.com/?id=12a34bc5-6de7-890f-g123-4hi1238jk902",
"links": [
{
"href": "https://gateway.sezzle.com/v2/order/12a34bc5-6de7-890f-g123-4hi1238jk902",
"method": "GET",
"rel": "self"
},
{
"href": "https://gateway.sezzle.com/v2/order/12a34bc5-6de7-890f-g123-4hi1238jk902",
"method": "PATCH",
"rel": "self"
},
{
"href": "https://gateway.sezzle.com/v2/order/12a34bc5-6de7-890f-g123-4hi1238jk902/release",
"method": "POST",
"rel": "release"
},
{
"href": "https://gateway.sezzle.com/v2/order/12a34bc5-6de7-890f-g123-4hi1238jk902/capture",
"method": "POST",
"rel": "capture"
},
{
"href": "https://gateway.sezzle.com/v2/order/12a34bc5-6de7-890f-g123-4hi1238jk902/refund",
"method": "POST",
"rel": "refund"
}
]
},
"tokenize": {
"token": "7ec98824-67cc-469c-86ab-f9e047f9cf1a",
"expiration": "2020-04-27T14:46:59.000Z",
"links": [
{
"href": "https://gateway.sezzle.com/v2/token/7ec98824-67cc-469c-86ab-f9e047f9cf1a/session",
"method": "GET",
"rel": "token"
}
]
}
}[
{
"code": "bad_request",
"message": "bad request"
}
][
{
"code": "unauthorized",
"message": "authorization not accepted"
}
][
{
"code": "record_not_found",
"message": "not found"
}
][
{
"code": "invalid",
"message": "Unprocessable entity"
}
]