Create Session for One - Time Payment Link
This API endpoint allows you to submit new orders to Front Payment and receive a payment URL in return.
Request
- Endpoint:
https://demo-api.frontpayment.no/api/v1/connect/orders/regular/submit
- Method:
POST
- Authorization:
Bearer <token>
Example Payload
{
"products": [
{
"name": "Router",
"productId": "R_1",
"quantity": 1,
"rate": 4500,
"discount": 0,
"tax": 12,
"amount": 4500
}
],
"orderSummary": {
"subTotal": 4017.86,
"totalTax": 482.14,
"totalDiscount": 0.00,
"grandTotal": 4500.00
},
"referenceNo": "",
"customerReference": "",
"orderDate": "1754556624",
"withCustomer": true,
"customerDetails": {
"type": "private",
"countryCode": "+47",
"msisdn": "46567468",
"email": "[email protected]",
"name": "Kari Nordmann",
"preferredLanguage": "en",
"personalNumber": null,
"address": {
"street": "Luramyrveien 65",
"zip": "4313",
"city": "Sandnes",
"country": "NO"
}
},
"submitPayment": {
"via": "visa"
},
"callback": {
"callbackUrl": "https://your-callback-url.com/callback",
"success": "https://your-callback-url.com/success",
"failure": "https://your-callback-url.com/failure"
}
}
Payload Schema
Field | Type | Description |
---|---|---|
products.*.name |
string |
The name of the product. Required. |
products.*.productId |
string |
The unique ID of the product. Optional. |
products.*.quantity |
numeric |
The number of units. Required. |
products.*.rate |
numeric |
The price per unit. Required. |
products.*.discount |
numeric |
Any discount applied to the product. Optional. |
products.*.tax |
numeric |
The tax percentage. Required. Must be one of 0 , 12 , 15 , or 25 unless otherwise configured. |
products.*.amount |
numeric |
The total amount for this product. Required. |
orderSummary.subTotal |
numeric |
The subtotal of the order before tax and discounts. Required. |
orderSummary.totalTax |
numeric |
The total tax for the order. Required. |
orderSummary.totalDiscount |
numeric |
The total discount for the order. Required. |
orderSummary.grandTotal |
numeric |
The final total of the order. Required. |
orderDate |
string |
Unix timestamp for the Date of the order, which must be current or future date. Required. |
referenceNo |
string |
Any reference information from your side. example: Order Uuid generated from your application. |
customerReference |
nullable |string |
Customer reference Optional |
withCustomer |
boolean |
If withCustomer value is true then you must provide customer details Required |
customerDetails.type |
string |
The customer type. Optional. Must be either private or corporate . |
customerDetails.countryCode |
string |
The customer's phone country code. Optional. |
customerDetails.msisdn |
string |
The customer's phone number. Optional. |
customerDetails.email |
string |
The customer's email address. Optional. |
customerDetails.name |
string |
The customer's name. Required. |
customerDetails.preferredLanguage |
string |
The customer's preferred language. Required. |
customerDetails.personalNumber |
string |
The customer's personal ID number (must be 11 characters). Optional. |
customerDetails.address |
object |
An object containing the customer's address. Required. |
customerDetails.address.street |
string |
The street name. Required. |
customerDetails.address.zip |
string |
The postal code. Required. |
customerDetails.address.city |
string |
The city. Required. |
customerDetails.address.country |
string |
The country code in ISO Alpha 2 format. Required. |
submitPayment.via |
string |
The payment method. Required. Must be vipps , visa , mastercard , applepay , or googlepay . |
callback |
object |
An object for callback URLs. Required. |
callback.callbackUrl |
string |
The URL to which Front Payment will send updates. Optional. |
callback.success |
string |
The URL to redirect to upon successful payment. Required. |
callback.failure |
string |
The URL to redirect to upon failed payment. Required. |
Response Structure
Success Response (HTTP 202)
{
"status_code": 202,
"status_message": "OK",
"message": "Order Submitted Successfully",
"is_data": true,
"data": {
"orderUuid": "ODR123456789",
"customerUuid": "CSRT40567996",
"paymentUrl": "https://v1.checkout.bambora.com/a403d3df20af4888bd8f7dd38f3cd7f1"
}
}
Error Responses
HTTP 500: Internal Dependency Error
{
"status_code": 500,
"status_message": "Internal Dependency Error",
"message": "Internal Error Occurred Please Try Again Later",
"is_error": true,
"errors": {
"happenedAt": "String",
"internalErrorDetails": "Array"
}
}
HTTP 510: Execution Exception
{
"status_code": 510,
"status_message": "Execution Exception Occurred",
"message": "Something Went Wrong",
"is_error": true,
"errors": "Array"
}