APG PayAPG Paydocs

Loans

Update loan product

PATCH/loan-products/{loanProductId}

Change a product's limits or its late-payment grace days. Nothing else about a product can be changed.

Permissions

Required permission
loanProducts:update

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

Path parameters

loanProductIdstring
required

Request body

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

Discriminated by type
type = "LprodUpdateAttributes"

The limits loans on this product are written within.

The late fee new loans of this product take. A monthlyRate and minimumFee of 0 turn it off.

curl -X PATCH https://api.tst.au.apgpay.dev/loan-products/{loanProductId} \
  -H "Authorization: Bearer $API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
  "type": "LprodUpdateAttributes",
  "limits": {
    "type": "LprodLimitsAttributes",
    "currency": "AUD",
    "minLoanLimit": 500000,
    "maxLoanLimit": 500000
  },
  "defaultLatePaymentFee": {
    "type": "LprodLatePaymentFeeAttributes",
    "monthlyRate": 0.9412,
    "minimumFee": 1250,
    "graceDays": 1250
  }
}'

Responses

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

Discriminated by type
type = "LprodUpdateRspAttributes"

The resource as it stands after the change.

Example
{
  "type": "LprodUpdateRspAttributes",
  "updated": {
    "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