APG PayAPG Paydocs

Loans

Create loan products

POST/loan-products

Create a loan product against a facility.

Permissions

Required permission
loanProducts:create

Requires the `create` action on `loanProducts` for the supplied runtime context

Request body

This body is a tagged shape: type is always "LprodCmdCreate". Send it; more variants can be added, and a caller that switches on it keeps working when they are.

Discriminated by type
type = "LprodCmdCreate"
loanFacilityIdLfacIdrequired

Identifier of a loan facility.

Example lfac_9f2Kd8QpLzXw

descriptionstringrequired
currencyIsoCurrencyrequired
AFNDZDARSAMDAWGAUDAZNBSDBHDTHB
+156 more

PAB, BBD, BYR, BZD, BMD, VEF, BOB, BRL, BND, BGN, BIF, CAD, CVE, KYD, XOF, XAF, XPF, CLP, COP, KMF, CDF, BAM, NIO, CRC, HRK, CUP, CZK, GMD, DKK, MKD, DJF, STD, DOP, VND, XCD, EGP, SVC, ETB, EUR, FKP, FJD, HUF, GHS, GIP, HTG, PYG, GNF, GYD, HKD, UAH, ISK, INR, IRR, IQD, JMD, JOD, KES, PGK, LAK, KWD, MWK, AOA, MMK, GEL, LBP, ALL, HNL, SLL, LRD, LYD, SZL, LSL, MGA, MYR, MUR, MXN, MXV, MDL, MAD, MZN, BOV, NGN, ERN, NAD, NPR, ANG, ILS, TWD, NZD, BTN, KPW, NOK, PEN, MRU, PKR, MOP, TOP, CUC, UYU, PHP, GBP, BWP, QAR, GTQ, ZAR, OMR, KHR, RON, MVR, IDR, RUB, RWF, SHP, SAR, RSD, SCR, SGD, SBD, KGS, SOS, TJS, SSP, LKR, SDG, SRD, SEK, CHF, SYP, BDT, WST, TZS, KZT, TTD, MNT, TND, TRY, TMT, AED, UGX, COU, CLF, UYI, USD, USN, USS, UZS, VUV, CHE, CHW, KRW, YER, JPY, CNY, ZMW, ZWL, PLN

curl -X POST https://api.tst.au.apgpay.dev/loan-products \
  -H "Authorization: Bearer $API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
  "type": "LprodCmdCreate",
  "loanFacilityId": "lfac_9f2Kd8QpLzXw",
  "description": "string",
  "currency": "AUD",
  "specification": {
    "type": "LprodSpecRealtimeSettlement",
    "variableFee": 12.5
  }
}'

Responses

The response is a tagged shape: type is always "LprodCreateRspAttributes". Switch on it; subtypes can be added, and a client that already reads it will not break.

Discriminated by type
type = "LprodCreateRspAttributes"

The resource that was created.

Example
{
  "type": "LprodCreateRspAttributes",
  "created": {
    "type": "LprodViewAttributes",
    "loanProductId": "lprod_9f2Kd8QpLzXw",
    "loanFacilityId": "lfac_9f2Kd8QpLzXw",
    "enterpriseId": "ent_9f2Kd8QpLzXw",
    "description": "string",
    "currency": "AUD",
    "status": "Enabled",
    "productType": "RealtimeSettlement",
    "specification": {
      "type": "LprodSpecRealtimeSettlement",
      "variableFee": 12.5
    },
    "createdAt": "2026-08-19T04:21:07Z",
    "updatedAt": "2026-08-19T04:21:07Z"
  }
}

Error responses