Skip to main content

Create Session for Invoice Order

This endpoint allows you to export an order as an invoice to Front Payment Go. Upon successful submission, it returns:

  • Order UUID
  • Customer UUID
  • Bank ID Verification URL (for customer identity verification)

Request

  • Endpoint: https://demo-api.frontpayment.no/api/v1/connect/orders/invoice/submit
  • Method: POST
  • Authorization: Bearer <token>

Validation Rules

Ensure your payload adheres to the following validation rules:

Field Type Description
products.*.name string Required. The name of the product.
products.*.productId string Optional. The unique ID of the product.
products.*.quantity numeric Required. Quantity of the product.
products.*.rate numeric Required. Rate per unit of the product.
products.*.discount numeric Optional. Discount applied to the product.
products.*.tax numeric Required. Tax rate must be (e.g., 0, 12, 15, 25), Unless you have other configuration unless otherwise configured.
products.*.amount numeric Required. Total amount for the product line item.
orderSummary.subTotal numeric Required. Subtotal of all products before tax and discount.
orderSummary.totalTax numeric Required. The total tax for the order.
orderSummary.totalDiscount numeric Required. Total discount for the order.
orderSummary.grandTotal numeric Required. Grand total of the order.
orderDate string Required. Unix timestamp for the Date of the order.
referenceNo string Optional. Any reference information from your side. example: Order Uuid generated from your application.
customerReference string Optional. Customer reference
orderFrom string Conditionally Required if fpgoUuid is present. If provided, the value must be PARTNER. This indicates that the request originates from a registered partner and is intended to update an existing record.
fpgoUuid string Optional Use this to prevent duplicates. Pass the orderUuid from a previous response to update that specific order. If omitted, a new order is created.
invoiceInterval numeric Optional Invoice interval (allowed: 0,1,2).
separateInvoices boolean Optional Whether invoices should be separated.
invoiceFeeApplicable boolean Required Whether invoice fee applies.
invoiceMaturity numeric Optional Invoice maturity period.
settings.secureDetails boolean Optional Enable secure details.
customerDetails.type string Required Customer type (private / corporate)
customerDetails.countryCode string Required Country code for the customer's phone number (e.g., "+47")
customerDetails.msisdn string Required Mobile Subscriber MSISDN Number (phone number).
customerDetails.email email Required Customer's email address.
customerDetails.name string Required Customer full name.
customerDetails.personalNumber string Required if customer type is private. Customer's personal identification number, must be 11 characters.
customerDetails.organizationId string Required if customer type is corporate. Must be alphanumeric.
customerDetails.preferredLanguage string Optional Customer preferred language. Available languages are en , no , sv , da , de. If nothing is given it will set default to no.
customerDetails.address.street string Required Street address of the customer.
customerDetails.address.zip string Required Zip code of the customer's address.
customerDetails.address.city string Required City of the customer's address.
customerDetails.address.country string Required ISO Alpha-2 country code (e.g., "NO"). Custom validation IsoAlpha2Country applies.
callback.callbackUrl url Required The URL to which Front Payment will send updates. Must be a valid url.
callback.success url Required The URL to redirect to upon successful payment. Must be a valid url.
callback.failure url Required The URL to redirect to upon failed payment. Must be a valid url.

Example Request

{
  "products": [
    {
      "name": "Router",
      "productId": "R_1",
      "quantity": "1",
      "rate": 40,
      "discount": 0,
      "tax": "0",
      "amount": 40
    }
  ],
  "orderSummary": {
    "subTotal": "40",
    "totalTax": "0",
    "totalDiscount": "0.00",
    "grandTotal": "40"
  },
  "orderDate": "1755150488",
  "customerDetails": {
    "type": "private",
    "countryCode": "+47",
    "msisdn": "46567468",
    "email": "[email protected]",
    "name": "Zahidul",
    "preferredLanguage": "en",
    "personalNumber": "28038712383",
    "organizationId": "",
    "address": {
      "street": "Klosterenget 144",
      "zip": "7030",
      "city": "Trondheim",
      "country": "NO"
    }
  },
  "referenceNo": "Dhaka",
  "customerReference": "3500",
  "invoiceInterval": 0,
  "separateInvoices": true,
  "invoiceFeeApplicable": true,
  "invoiceMaturity": 10,
  "callback": {
    "callbackUrl": "https://wp.frontpayment.no/?order_identifier=rRbl1FWZG59o&order_status=success",
    "success": "https://wp.frontpayment.no/?order_identifier=rRbl1FWZG59o&order_status=success",
    "failure": "https://frontpayment.no/?order_identifier=rRbl1FWZG59o&order_status=failed"
  }
}

Example Success Response

{
  "status_code": 201,
  "status_message": "OK",
  "message": "orderCreatedSuccessfully",
  "is_data": true,
  "data": {
    "orderUuid": "ODR4286244937",
    "customerUuid": "CSRT3419523642",
    "bankIdUrl": "https://auth.current.bankid.no/precheck/auth?...state=eyJvcmRlclV1aWQiOiJPRFI0Mjg2MjQ0OTM3IiwiY29ubmVjdCI6InllcyJ9"
  }
}

Other Responses

Internal Error (500)

{
  "status_code": 500,
  "status_message": "Internal Dependency Error",
  "message": "Internal Error Occurred Please Try Again Later",
  "is_error": true,
  "errors": {
    "happenedAt": "String",
    "internalErrorDetails": "Array"
  }
}

Execution Exception (510)

{
  "status_code": 510,
  "status_message": "Execution Exception Occurred",
  "message": "Something Went Wrong",
  "is_error": true,
  "errors": "Array"
}

Notifications via Callback URL

Go To Notication Via Callback Url Page