POST {Type}/pre-transactions?api-version=2.0
Creates a new pre-transaction. Use the 'Location' http header to learn the resulting url of the created resource. SmsNotificationText, SmsReceiptText, ReturnUrl, StatusCallbackUrl and SmsStatusCallbackUrl are template-based and can reference values from the pre-transaction by using this expression form: '{{propertyName}}'. Pre-transaction properties have precedence over custom property names. Pre-transaction payment selection page url can be included by using '{{paymentSelectionPageUrl}}'.
Request Information
URI Parameters
Name | Description | Type | Required | Additional information |
---|---|---|---|---|
Type | string |
None. |
Body Parameters
Pre-transaction preTransactionRequest.
PreTransactionRequestV2Name | Description | Type | Required | Additional information |
---|---|---|---|---|
PartnerId |
PartnerId. Provided to you by LINK Mobility. |
integer |
Required Range: inclusive between 1 and 2147483647 |
|
ExpiryUtc |
The UTC (Coordinated Universal Time) date and time that the Transaction will expire an no longer be accessible to the user. |
date |
None. |
|
CorrelationId |
Correlation id - can be anything the consumer of the API needs. Note: Not to be used for personal information. |
string |
String length: inclusive between 0 and 50 |
|
ViewTemplateName |
View template id for custom html rendering - supplied by Link Mobility. |
string |
String length: inclusive between 0 and 50 |
|
ReturnUrl |
Return url/landing page after transaction is completed. |
string |
Matching regular expression pattern: ^(?:(?:https?|ftp):\/\/)?(?:\S+(?::\S*)?@)?(?:(?!10(?:\.\d{1,3}){3})(?!127(?:\.\d{1,3}){3})(?!169\.254(?:\.\d{1,3}){2})(?!192\.168(?:\.\d{1,3}){2})(?!172\.(?:1[6-9]|2\d|3[0-1])(?:\.\d{1,3}){2})(?:[1-9]\d?|1\d\d|2[01]\d|22[0-3])(?:\.(?:1?\d{1,2}|2[0-4]\d|25[0-5])){2}(?:\.(?:[1-9]\d?|1\d\d|2[0-4]\d|25[0-4]))|(?:(?:[a-z\u00a1-\uffff0-9]+-?)*[a-z\u00a1-\uffff0-9]+)(?:\.(?:[a-z\u00a1-\uffff0-9]+-?)*[a-z\u00a1-\uffff0-9]+)*(?:\.(?:[a-z\u00a1-\uffff]{2,})))(?::\d{2,5})?(?:\/[^\s]*)?$ String length: inclusive between 0 and 2000 |
|
StatusCallbackUrl |
Transaction status callback url that will be called for each step of the transaction and provide information about the current status. Supports callback parameters with values from transactionResponse by using this expressions form '{{propertyName}}'. |
string |
Matching regular expression pattern: ^(?:(?:https?|ftp):\/\/)?(?:\S+(?::\S*)?@)?(?:(?!10(?:\.\d{1,3}){3})(?!127(?:\.\d{1,3}){3})(?!169\.254(?:\.\d{1,3}){2})(?!192\.168(?:\.\d{1,3}){2})(?!172\.(?:1[6-9]|2\d|3[0-1])(?:\.\d{1,3}){2})(?:[1-9]\d?|1\d\d|2[01]\d|22[0-3])(?:\.(?:1?\d{1,2}|2[0-4]\d|25[0-5])){2}(?:\.(?:[1-9]\d?|1\d\d|2[0-4]\d|25[0-4]))|(?:(?:[a-z\u00a1-\uffff0-9]+-?)*[a-z\u00a1-\uffff0-9]+)(?:\.(?:[a-z\u00a1-\uffff0-9]+-?)*[a-z\u00a1-\uffff0-9]+)*(?:\.(?:[a-z\u00a1-\uffff]{2,})))(?::\d{2,5})?(?:\/[^\s]*)?$ String length: inclusive between 0 and 2000 |
|
SmsStatusCallbackUrl |
Sms notification status callback that will be called when the SmsNotification message has been delivered to the user. Or if message delivery failed. For example because the phone is turned off or outside of cell reception.. Supports callback parameters with values from preTransactionResponse by using this expressions form '{{propertyName}}'. |
string |
Matching regular expression pattern: ^(?:(?:https?|ftp):\/\/)?(?:\S+(?::\S*)?@)?(?:(?!10(?:\.\d{1,3}){3})(?!127(?:\.\d{1,3}){3})(?!169\.254(?:\.\d{1,3}){2})(?!192\.168(?:\.\d{1,3}){2})(?!172\.(?:1[6-9]|2\d|3[0-1])(?:\.\d{1,3}){2})(?:[1-9]\d?|1\d\d|2[01]\d|22[0-3])(?:\.(?:1?\d{1,2}|2[0-4]\d|25[0-5])){2}(?:\.(?:[1-9]\d?|1\d\d|2[0-4]\d|25[0-4]))|(?:(?:[a-z\u00a1-\uffff0-9]+-?)*[a-z\u00a1-\uffff0-9]+)(?:\.(?:[a-z\u00a1-\uffff0-9]+-?)*[a-z\u00a1-\uffff0-9]+)*(?:\.(?:[a-z\u00a1-\uffff]{2,})))(?::\d{2,5})?(?:\/[^\s]*)?$ String length: inclusive between 0 and 2000 |
|
ExpiredUrl |
Expired url where the user will be redirected when accessing a expired invoice. |
string |
Matching regular expression pattern: ^(?:(?:https?|ftp):\/\/)?(?:\S+(?::\S*)?@)?(?:(?!10(?:\.\d{1,3}){3})(?!127(?:\.\d{1,3}){3})(?!169\.254(?:\.\d{1,3}){2})(?!192\.168(?:\.\d{1,3}){2})(?!172\.(?:1[6-9]|2\d|3[0-1])(?:\.\d{1,3}){2})(?:[1-9]\d?|1\d\d|2[01]\d|22[0-3])(?:\.(?:1?\d{1,2}|2[0-4]\d|25[0-5])){2}(?:\.(?:[1-9]\d?|1\d\d|2[0-4]\d|25[0-4]))|(?:(?:[a-z\u00a1-\uffff0-9]+-?)*[a-z\u00a1-\uffff0-9]+)(?:\.(?:[a-z\u00a1-\uffff0-9]+-?)*[a-z\u00a1-\uffff0-9]+)*(?:\.(?:[a-z\u00a1-\uffff]{2,})))(?::\d{2,5})?(?:\/[^\s]*)?$ String length: inclusive between 0 and 2000 |
|
CancelUrl |
Where the user will be redirected when a payment is cancelled. |
string |
Matching regular expression pattern: ^(?:(?:https?|ftp):\/\/)?(?:\S+(?::\S*)?@)?(?:(?!10(?:\.\d{1,3}){3})(?!127(?:\.\d{1,3}){3})(?!169\.254(?:\.\d{1,3}){2})(?!192\.168(?:\.\d{1,3}){2})(?!172\.(?:1[6-9]|2\d|3[0-1])(?:\.\d{1,3}){2})(?:[1-9]\d?|1\d\d|2[01]\d|22[0-3])(?:\.(?:1?\d{1,2}|2[0-4]\d|25[0-5])){2}(?:\.(?:[1-9]\d?|1\d\d|2[0-4]\d|25[0-4]))|(?:(?:[a-z\u00a1-\uffff0-9]+-?)*[a-z\u00a1-\uffff0-9]+)(?:\.(?:[a-z\u00a1-\uffff0-9]+-?)*[a-z\u00a1-\uffff0-9]+)*(?:\.(?:[a-z\u00a1-\uffff]{2,})))(?::\d{2,5})?(?:\/[^\s]*)?$ String length: inclusive between 0 and 2000 |
|
SkipLandingPage |
Flag for skipping a landing page and register the transaction at paymen provider API directly It will be ignored (set to false) if more than one payment provider is provided in the array of PaymentProviders property should be used with Vipps and Swish payment providers for now |
boolean |
None. |
|
ReferenceId |
Client reference id (must be unique for per client transaction if used). Note: Not to be used for personal information. |
string |
String length: inclusive between 0 and 50 |
|
Ocr |
Ocr(NETS TransactionReconRef). Note: Not to be used for personal information. |
string |
String length: inclusive between 0 and 32 |
|
Msisdn |
Phone number used by phone payment and for sending sms notification (if SmsNotificationOriginator and SmsNotificationText is set). |
string |
String length: inclusive between 1 and 20 |
|
SmsNotificationOriginator |
This is the name or number that will be displayed as the sender of the pretransaction SMS notification. Names can be up to 11 characters, Numbers can be longer, but have special requirements. |
string |
String length: inclusive between 2 and 20 |
|
SmsNotificationText |
The text in the SMS notification message sent to the user. To include the link to the payment selection page in the text, set '{{paymentSelectionPageUrl}}'. You can also reference other fields from the Pre-Transaction by using this expression form: '{{propertyName}}'. |
string |
String length: inclusive between 0 and 918 |
|
SmsNotificationSendTimeUtc |
Specifies (in UTC) what date and time you want the SMS notification to be sent. If not specified, the message will be sent at once (with a small delay). |
date |
None. |
|
Description |
A description of the Product or Transaction. |
string |
String length: inclusive between 0 and 500 |
|
Currency |
Currency code (ISO-4217) in UPPER case. For example 'NOK' for Norwegian Kroner. |
string |
Required String length: inclusive between 0 and 3 |
|
Amount |
Amount to charge customer. With or without 2 decimals. Example: 1 or 1.00 |
decimal number |
Required Matching regular expression pattern: ^\d+(.\d{1,2})?$ Range: inclusive between 0 and 999999.99 |
|
PaymentProviders |
Possible PaymentProviders that you support. The user will be able to choose from these on the payment landing page. Currently support payment by Nets, NetsVipps, NetsMobilePay, NetsPaytrail, Swish, Vipps, NetsEasy, Neonomics See each provider for settings. |
Collection of string |
Required |
|
PaymentOperation |
Last operation performed on the transaction when user performs payment. Possible values: - Reserve = Register transaction and reserve amount. - Capture = Register transaction and capture amount. If not provided default value will be Capture. When it is set to Reserve api/transactions{partnerId}/{transactionId}/capture should be called If the amount in the provided body is less than original,it will be used captured. For full capture it should be set to the same amount as the registered transaction. |
string |
Matching regular expression pattern: Reserve|Capture |
|
CampaignId |
Uses default settings if CampaginId is not set |
integer |
None. |
|
Authentication |
Optional authentication method to authenticate user before displaying mobile invoice |
AuthenticationV2 |
None. |
|
CustomProperties |
Custom properties of your choice associated with the pre-transaction. These properties can be displayed on the payment landingpage. |
Dictionary of string [key] and string [value] |
None. |
|
AccessedURLDateUtc |
The UTC (Coordinated Universal Time) date and time that the payment page has first been accessed. |
date |
None. |
|
EnableRecurring |
Enables recurring and displays checkbox and ToS on payment selection page, all selected payment providers must support recurring payment. |
boolean |
None. |
|
CustomAmountEnabled |
Custom amounts enabled. User will be able to input an amount that will pay |
boolean |
None. |
|
SubscriberId |
CBR SubscriberId |
string |
None. |
|
RecurringOptional |
If recurring is optional. Recurring agreement will only be created if users selects a payment provider that supports it. |
boolean |
None. |
|
RecurringId |
Add a transactions to a already setup agreement |
globally unique identifier |
None. |
|
SendSms |
Specifies if sms with mobile invoice should be sent. Set to 'true' by default |
boolean |
None. |
|
OrderNumber | string |
String length: inclusive between 0 and 50 |
||
Language |
Language on ISO 639-1 format. Available values are defind in |
string |
String length: inclusive between 0 and 20 |
|
Segment |
Segment is used for analytics, aggregating statistics based on this segment-information. Ask LinkMobility for further details about usage for using mobile intelligence. |
string |
String length: inclusive between 0 and 50 |
|
CustomLandingPageUrl |
This field is for adding an extra step in the payment flow. Specifically it adds an extra step before the PaymentSelection step. Note: This is not in any way related to CustomDomain. |
string |
String length: inclusive between 0 and 2000 |
|
MinAmount |
This field is for adding a way for customer to pay custom amount. Note: If this is greater than zero means that customer will have a functionality to set the amount that he wants to pay story LP-2221. |
decimal number |
None. |
|
CustomAmounts |
This field is for adding a way for customer to choose from amounts. Note: If this has some values it means the customer will have a functionality to choose to pay from one of them. Story LP-2220. |
Collection of integer |
None. |
|
SourceId |
SourceId is to be ommitted when using the api. This is just for identifying the calling application. |
integer |
None. |
Request Formats
application/json, text/json
{ "sourceId": 1, "partnerId": 1, "expiryUtc": "2024-11-08T17:45:18.5993297Z", "correlationId": "sample string 2", "viewTemplateName": "sample string 3", "returnUrl": "sample string 4", "statusCallbackUrl": "sample string 5", "smsStatusCallbackUrl": "sample string 6", "expiredUrl": "sample string 7", "cancelUrl": "sample string 8", "skipLandingPage": true, "referenceId": "sample string 10", "ocr": "sample string 11", "msisdn": "sample string 12", "smsNotificationOriginator": "sample string 13", "smsNotificationText": "sample string 14", "smsNotificationSendTimeUtc": "2024-11-08T17:45:18.5993297Z", "description": "sample string 15", "currency": "sample string 16", "amount": 17.0, "paymentProviders": [ "sample string 1", "sample string 2" ], "paymentOperation": "sample string 18", "campaignId": 1, "authentication": { "authenticationMethods": [ "sample string 1", "sample string 2" ], "socialSecurityNumber": "sample string 1" }, "customProperties": { "sample string 1": "sample string 2", "sample string 3": "sample string 4" }, "accessedURLDateUtc": "2024-11-08T17:45:18.6149608Z", "enableRecurring": true, "customAmountEnabled": true, "subscriberId": "sample string 21", "recurringOptional": true, "recurringId": "98628595-338a-4a6c-a492-d4f1c0f185cb", "sendSms": true, "orderNumber": "sample string 23", "language": "sample string 24", "segment": "sample string 25", "customLandingPageUrl": "sample string 26", "minAmount": 27.0, "customAmounts": [ 1, 2 ] }
Response Information
Resource Description
None.