Create MIT Subscription
POST/payment/mit/subscription/creation
The API method Create Subscription Checkout initiates the subscription creation request.
Financial institution's risk management is applicable on storing and verifying payment options, even though no charge is made at that point in time. Therefore, your consumer's personal information is already required within this initialization request.
Request
Header Parameters
Must be application/json
Must be be en-US
The origin of the request
The client making the request
- application/json
- Body
- Example
Bodyrequired
- Array [
- ]
The Merchant Key is the unique identifier for your integration. Keep this credential secure, do not store client side.
Possible values: <= 36 characters
A unique identifier provided by the integrating merchant by which the user's account can be identified e.g., customer number.
Possible values: <= 255 characters
Consumer's stored payment option reference. When provided, SmartPay Widget will pre-select stored option with given reference in the list of options when it gets rendered. Suppresses the 'Default' payment option highlighting and 'Set default' functionality.
If the preselected SPO is deleted during the checkout process, the system will move the selection mark to the default payment option, if one exists. If no payment option is defined, the system will move the selection mark to another available payment option from the list.
Possible values: <= 36 characters
payment objectrequired
Includes currency, average payment amount of the later MIT transactions and description. Use "0" as amount, in case an average amount cannot be determined.
Possible values: <= 3 characters
Possible values: <= 127 characters
billingAddress objectrequired
Consumer's billing address data. See Address in Data model.
Street name.
Possible values: <= 60 characters
Max-Planck-StraßeApartment, suite, unit, building, floor or other secondary address information.
Possible values: <= 60 characters
Specific delivery instructions, department names, or additional floor information.
Possible values: <= 60 characters
The city or localitly of the address.
Possible values: <= 50 characters
BerlinISO-3 code of the address country (e.g., DEU for Germany).
Possible values: >= 3 characters and <= 3 characters
DEUThe house or building number corresponding to the street address.
Possible values: <= 10 characters
30The postal or ZIP code of the address.
Possible values: <= 10 characters
144733-letter code of the address state. Mandatory when countryCode corresponds to Canada or USA.
Possible values: <= 3 characters
consumer objectnullablerequired
Consumer's personal data, in case the consumer is a physical person. See consumer in Data model.
Conditional. Can be present if businessConsumer is missing from the request.
Consists of ISO 639-1 language code and ISO 3166-1 alpha-2 country code separated by dash. If this value is not provided the browser culture is used. Default culture is English (e.g., en-de). This field is not case sensitive.
Possible values: <= 5 characters
en-ENDate of birth. Format - YYYY-MM-DD. Mandatory for payment option registration flow. Minimum date allowed is 1900-01-01
Possible values: <= 10 characters, Value must match regular expression ^\d{4}-\d{2}-\d{2}$
1989-11-08Customer email address for any notification
Possible values: <= 255 characters
john.doe@gmail.comPerson first name
Possible values: <= 60 characters
JohnPerson gender
Possible values: <= 6 characters
MrPerson's home phone number (including the country code)
Possible values: <= 30 characters
496912345678Person last name
Possible values: <= 60 characters
DoeConsumer/Customer Account Id in the merchant system. When provided into the Create Checkout API, SmartPay will request e-wallet account creation which will have external account reference equals to the given merchantCustomerId value.
Possible values: <= 255 characters
abcd123The customer's middle name
Possible values: <= 60 characters
RobertPerson's mobile phone number (including the country code)
Possible values: <= 30 characters
496912345678Person's tax identification number
Possible values: <= 30 characters
123456789Person title
Possible values: <= 3 characters
MrPerson's work phone number (including the country code)
Possible values: <= 30 characters
496912345678businessConsumer objectnullablerequired
Company data, in case the consumer is a business or a legal entity. See businessConsumer in Data model.
Conditional. Can be present if consumer is missing from the request.
Name of the legal entity
Possible values: <= 100 characters
Company registration country ISO2 or ISO3 code
Possible values: >= 2 characters and <= 3 characters
Company registration number
Possible values: <= 50 characters
Possible values: <= 100 characters
Consists of ISO 639-1 language code and ISO 3166-1 alpha-2 country code separated by dash. If this value is not provided the browser culture is used. Default culture is English (e.g., en-de). This field is not case sensitive.
Possible values: <= 5 characters
en-ENCustomer email address for any notification
Possible values: <= 255 characters
Person's tax identification number
Possible values: <= 30 characters
Merchant internal transaction reference. If provided, enables SmartPay to block cases of double processing.
Possible values: <= 64 characters, Value must match regular expression ^[a-zA-Z0-9\-_]+$
criteria object[]
List of custom key-value pairs that the merchant can submit.
The names callBackUrl and redirectUrl will be disregarded.
Possible values: <= 50 characters
Possible values: <= 100 characters
{
"merchantKey": "73afeb44-432e-4b91-be37-a6b3d2fb7447",
"customerAccountId": "Test-123",
"payment": {
"amount": 0,
"currencyCode": "EUR",
"description": "SMP*SUBSCR*MIT"
},
"billingAddress": {
"addressLine1": "Leopoldstrasse",
"city": "München",
"countryCode": "DE",
"number": "244",
"postCode": "80807",
"homePhone": "333444555"
},
"businessConsumer": {
"dateOfBirth": "1980-01-01",
"title": "Mr",
"mobilePhone": "333444555",
"culture": "en-US",
"firstName": "John",
"lastName": "Doe",
"emailAddress": "john.doe@mail.com"
}
}
Responses
- 200
- 400
- 401
- 403
- 404
- 500
Successful response
The Create Subscription Checkout response includes checkoutToken which should be used for web widget rendering.
- application/json
- Schema
- Example (auto)
- Example
Schema
Unique identifier for the subscription.
Token for web widget rendering.
Time of the request.
{
"subscriptionId": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"checkoutToken": "string",
"requestTime": "2024-07-29T15:51:28.071Z"
}
{
"subscriptionId": "9038cf01-e066-4cf9-b62b-df19b5590eed",
"checkoutToken": "VpyBoZj54PNRfpWNkQQN7FnTzAb2UcXF4kfRpviAXPxq5WnhHwXIdY3dqRV9MGXM",
"requestTime": "2023-04-06T14:45:24.429Z"
}
Bad Request
For error handling, please refer to this section.
If you receive an HTTP status other than 2xx, the request failed. Please try to interpret the response message to correct your request and contact Customer Support in case of further questions.
- application/json
Unauthenticated
For error handling, please refer to this section.
- application/json
- Schema
- Example (auto)
- Example
Schema
- string
- string[]
errorDetails object
message object
{
"error": "string",
"errorDetails": {
"context": {},
"gatewayDescription": "string",
"paymentProviderDescription": "string"
},
"message": "string"
}
{
"traceId": "00-1234567890abcdef0123456789abcdef-0123456789abcdef-00",
"errors": [
{
"message": "You are not authenticated to perform this request.",
"code": "unauthorized"
}
]
}
Forbidden
For error handling, please refer to this section.
- application/json
- Schema
- Example (auto)
- Example
Schema
- string
- string[]
errorDetails object
message object
{
"error": "string",
"errorDetails": {
"context": {},
"gatewayDescription": "string",
"paymentProviderDescription": "string"
},
"message": "string"
}
{
"traceId": "00-1234567890abcdef0123456789abcdef-0123456789abcdef-00",
"errors": [
{
"message": "You do not have permissions to perform this request.",
"code": "forbidden"
}
]
}
Not Found
For error handling, please refer to this section.
- application/json
- Schema
- Example (auto)
- Example
Schema
- string
- string[]
errorDetails object
message object
{
"error": "string",
"errorDetails": {
"context": {},
"gatewayDescription": "string",
"paymentProviderDescription": "string"
},
"message": "string"
}
{
"traceId": "00-1234567890abcdef0123456789abcdef-0123456789abcdef-00",
"errors": [
{
"message": "Resource not found.",
"code": "not_found"
}
]
}
Internal Server Error
For error handling, please refer to this section.
- application/json
- Schema
- Example (auto)
- Example
Schema
- string
- string[]
errorDetails object
message object
{
"error": "string",
"errorDetails": {
"context": {},
"gatewayDescription": "string",
"paymentProviderDescription": "string"
},
"message": "string"
}
{
"traceId": "00-1234567890abcdef0123456789abcdef-0123456789abcdef-00",
"errors": [
{
"message": "Internal server error."
}
]
}