Create a checkout session
curl --request POST \
--url https://sandbox-platform.jupico.com/v1/checkouts \
--header 'Authorization: Basic <encoded-value>' \
--header 'Content-Type: application/json' \
--data '
{
"subMerchantId": "jpt-sim-md-1",
"totalAmount": 55,
"description": "<string>",
"hostedSession": {
"paymentMethods": {
"defaultMethod": "creditCard",
"creditCard": {
"enabled": true
},
"eCheck": {
"enabled": false
},
"applePay": {
"enabled": false
},
"googlePay": {
"enabled": false
}
},
"flow": {
"redirect": {
"successUrl": "https://yoursite.com/successUrl",
"cancelUrl": "https://yoursite.com/cancelUrl",
"backUrl": "https://yoursite.com/backUrl"
}
},
"functions": {
"collectBillingAddress": {
"enabled": true
},
"collectShippingAddress": {
"enabled": false
},
"collectPhoneNumber": {
"enabled": true
},
"callToAction": {
"enabled": true,
"label": "Pay",
"note": "Note desc."
},
"notes": {
"enabled": false
},
"collectEmail": {
"enabled": false,
"updateCustomer": false
}
},
"constraints": {
"timeLimit": 1000
}
}
}
'import requests
url = "https://sandbox-platform.jupico.com/v1/checkouts"
payload = {
"subMerchantId": "jpt-sim-md-1",
"totalAmount": 55,
"description": "<string>",
"hostedSession": {
"paymentMethods": {
"defaultMethod": "creditCard",
"creditCard": { "enabled": True },
"eCheck": { "enabled": False },
"applePay": { "enabled": False },
"googlePay": { "enabled": False }
},
"flow": { "redirect": {
"successUrl": "https://yoursite.com/successUrl",
"cancelUrl": "https://yoursite.com/cancelUrl",
"backUrl": "https://yoursite.com/backUrl"
} },
"functions": {
"collectBillingAddress": { "enabled": True },
"collectShippingAddress": { "enabled": False },
"collectPhoneNumber": { "enabled": True },
"callToAction": {
"enabled": True,
"label": "Pay",
"note": "Note desc."
},
"notes": { "enabled": False },
"collectEmail": {
"enabled": False,
"updateCustomer": False
}
},
"constraints": { "timeLimit": 1000 }
}
}
headers = {
"Authorization": "Basic <encoded-value>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: 'Basic <encoded-value>', 'Content-Type': 'application/json'},
body: JSON.stringify({
subMerchantId: 'jpt-sim-md-1',
totalAmount: 55,
description: '<string>',
hostedSession: {
paymentMethods: {
defaultMethod: 'creditCard',
creditCard: {enabled: true},
eCheck: {enabled: false},
applePay: {enabled: false},
googlePay: {enabled: false}
},
flow: {
redirect: {
successUrl: 'https://yoursite.com/successUrl',
cancelUrl: 'https://yoursite.com/cancelUrl',
backUrl: 'https://yoursite.com/backUrl'
}
},
functions: {
collectBillingAddress: {enabled: true},
collectShippingAddress: {enabled: false},
collectPhoneNumber: {enabled: true},
callToAction: {enabled: true, label: 'Pay', note: 'Note desc.'},
notes: {enabled: false},
collectEmail: {enabled: false, updateCustomer: false}
},
constraints: {timeLimit: 1000}
}
})
};
fetch('https://sandbox-platform.jupico.com/v1/checkouts', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));const url = 'https://sandbox-platform.jupico.com/v1/checkouts';
const options = {
method: 'POST',
headers: {Authorization: 'Basic <encoded-value>', 'Content-Type': 'application/json'},
body: JSON.stringify({
subMerchantId: 'jpt-sim-md-1',
totalAmount: 55,
description: '<string>',
hostedSession: {
paymentMethods: {
defaultMethod: 'creditCard',
creditCard: {enabled: true},
eCheck: {enabled: false},
applePay: {enabled: false},
googlePay: {enabled: false}
},
flow: {
redirect: {
successUrl: 'https://yoursite.com/successUrl',
cancelUrl: 'https://yoursite.com/cancelUrl',
backUrl: 'https://yoursite.com/backUrl'
}
},
functions: {
collectBillingAddress: {enabled: true},
collectShippingAddress: {enabled: false},
collectPhoneNumber: {enabled: true},
callToAction: {enabled: true, label: 'Pay', note: 'Note desc.'},
notes: {enabled: false},
collectEmail: {enabled: false, updateCustomer: false}
},
constraints: {timeLimit: 1000}
}
})
};
fetch(url, options)
.then(res => res.json())
.then(json => console.log(json))
.catch(err => console.error(err));Checkouts
Create a checkout session
Creates a hosted checkout session where the customer completes payment on a Jupico-hosted page. Configure accepted payment methods, data collection, and redirect behavior through the hosted session settings.
POST
https://sandbox-platform.jupico.com
/
v1
/
checkouts
Create a checkout session
curl --request POST \
--url https://sandbox-platform.jupico.com/v1/checkouts \
--header 'Authorization: Basic <encoded-value>' \
--header 'Content-Type: application/json' \
--data '
{
"subMerchantId": "jpt-sim-md-1",
"totalAmount": 55,
"description": "<string>",
"hostedSession": {
"paymentMethods": {
"defaultMethod": "creditCard",
"creditCard": {
"enabled": true
},
"eCheck": {
"enabled": false
},
"applePay": {
"enabled": false
},
"googlePay": {
"enabled": false
}
},
"flow": {
"redirect": {
"successUrl": "https://yoursite.com/successUrl",
"cancelUrl": "https://yoursite.com/cancelUrl",
"backUrl": "https://yoursite.com/backUrl"
}
},
"functions": {
"collectBillingAddress": {
"enabled": true
},
"collectShippingAddress": {
"enabled": false
},
"collectPhoneNumber": {
"enabled": true
},
"callToAction": {
"enabled": true,
"label": "Pay",
"note": "Note desc."
},
"notes": {
"enabled": false
},
"collectEmail": {
"enabled": false,
"updateCustomer": false
}
},
"constraints": {
"timeLimit": 1000
}
}
}
'import requests
url = "https://sandbox-platform.jupico.com/v1/checkouts"
payload = {
"subMerchantId": "jpt-sim-md-1",
"totalAmount": 55,
"description": "<string>",
"hostedSession": {
"paymentMethods": {
"defaultMethod": "creditCard",
"creditCard": { "enabled": True },
"eCheck": { "enabled": False },
"applePay": { "enabled": False },
"googlePay": { "enabled": False }
},
"flow": { "redirect": {
"successUrl": "https://yoursite.com/successUrl",
"cancelUrl": "https://yoursite.com/cancelUrl",
"backUrl": "https://yoursite.com/backUrl"
} },
"functions": {
"collectBillingAddress": { "enabled": True },
"collectShippingAddress": { "enabled": False },
"collectPhoneNumber": { "enabled": True },
"callToAction": {
"enabled": True,
"label": "Pay",
"note": "Note desc."
},
"notes": { "enabled": False },
"collectEmail": {
"enabled": False,
"updateCustomer": False
}
},
"constraints": { "timeLimit": 1000 }
}
}
headers = {
"Authorization": "Basic <encoded-value>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: 'Basic <encoded-value>', 'Content-Type': 'application/json'},
body: JSON.stringify({
subMerchantId: 'jpt-sim-md-1',
totalAmount: 55,
description: '<string>',
hostedSession: {
paymentMethods: {
defaultMethod: 'creditCard',
creditCard: {enabled: true},
eCheck: {enabled: false},
applePay: {enabled: false},
googlePay: {enabled: false}
},
flow: {
redirect: {
successUrl: 'https://yoursite.com/successUrl',
cancelUrl: 'https://yoursite.com/cancelUrl',
backUrl: 'https://yoursite.com/backUrl'
}
},
functions: {
collectBillingAddress: {enabled: true},
collectShippingAddress: {enabled: false},
collectPhoneNumber: {enabled: true},
callToAction: {enabled: true, label: 'Pay', note: 'Note desc.'},
notes: {enabled: false},
collectEmail: {enabled: false, updateCustomer: false}
},
constraints: {timeLimit: 1000}
}
})
};
fetch('https://sandbox-platform.jupico.com/v1/checkouts', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));const url = 'https://sandbox-platform.jupico.com/v1/checkouts';
const options = {
method: 'POST',
headers: {Authorization: 'Basic <encoded-value>', 'Content-Type': 'application/json'},
body: JSON.stringify({
subMerchantId: 'jpt-sim-md-1',
totalAmount: 55,
description: '<string>',
hostedSession: {
paymentMethods: {
defaultMethod: 'creditCard',
creditCard: {enabled: true},
eCheck: {enabled: false},
applePay: {enabled: false},
googlePay: {enabled: false}
},
flow: {
redirect: {
successUrl: 'https://yoursite.com/successUrl',
cancelUrl: 'https://yoursite.com/cancelUrl',
backUrl: 'https://yoursite.com/backUrl'
}
},
functions: {
collectBillingAddress: {enabled: true},
collectShippingAddress: {enabled: false},
collectPhoneNumber: {enabled: true},
callToAction: {enabled: true, label: 'Pay', note: 'Note desc.'},
notes: {enabled: false},
collectEmail: {enabled: false, updateCustomer: false}
},
constraints: {timeLimit: 1000}
}
})
};
fetch(url, options)
.then(res => res.json())
.then(json => console.log(json))
.catch(err => console.error(err));Authorizations
Basic authentication header of the form Basic <encoded-value>, where <encoded-value> is the base64-encoded string username:password.
Body
application/json
The subMerchantId associated with the checkout.
Example:
"jpt-sim-md-1"
The total amount of the checkout.
Example:
55
The checkout description.
Object to edit configuration of created hosted session.
Show child attributes
Show child attributes
Line items included in the total amount.
Show child attributes
Show child attributes
Adjustments applied to the total, such as discounts or additional fees.
Show child attributes
Show child attributes
Response
Checkout successfully created.
Last modified on July 14, 2026
Was this page helpful?
⌘I

