Skip to content

Payment Notification

Information

Notification Callback is a feature for sending payment notifications to the merchant's callback URL.

Path/v1.1/bnpl/payment-notify
HTTP MethodPOST
Service Code93
Type FormatJSON

Request Body

Details
ParameterData TypeMandatoryLengthDescription
originalPartnerReferenceNoStringM64ID transaction generated by the merchant
originalReferenceNoStringM64ID transaction generated by Ifortepay
paymentDetailsObjectM
paymentDetails.amountObjectAmount of the transaction
paymentDetails.amount.valueStringM16,2
paymentDetails.amount.currencyStringM3
paymentDetails.totalAmountObject
paymentDetails.totalAmount.valueStringM16,2Total amount of the transaction. If it's IDR then value includes 2 decimal digits.
e.g. IDR 10.000,- will be placed as 10000.00 with 2 decimals
paymentDetails.totalAmount.currencyStringM3Currency
paymentChannelStringM30Description name of the payment channel
paymentSystemStringM50
itemDetailsArray of ObjectsM
itemDetails.itemIdStringM64Can be product SKU. For item fee such as: shipping fee, admin fee etc you have to use one of these: shippingfee, adminfee, taxfee, discount, additionalfee, insurancefee
itemDetails.nameStringM128Product name
itemDetails.amountObjectMProduct price
itemDetails.amount.valueStringM16,2If it's IDR then the value includes 2 decimal digits. e.g. IDR 10.000,- will be placed with 10000.00 with 2 decimals
itemDetails.amount.currencyStringM3Currency (Format: ISO4217), fixed value: IDR
itemDetails.urlStringM256URL of the product on the merchant’s site/platform
itemDetails.imageUrlStringO256URL of the product image on the merchant’s site/platform
itemDetails.categoryEnumM256Category of the product.
Mandatory for payment type checkout URL
itemDetails.qtyIntegerM8Quantity of the product
itemDetails.parentTypeStringMPossible values: SELLER
Mandatory for payment type checkout URL
itemDetails.parentIdStringMIt will correspond to the SELLER ID if the parentType is SELLER
tenureStringMInstallment options chosen by the customer. Possible values: 30_days, 3_months, 6_months, 12_months, 15_months, 18_months
Mandatory for payment type checkout URL
latestTransactionStatusStringM2Refer to Appendix 1 - Transaction Status for specific transaction statuses
transactionStatusDescStringM50Description of transaction status
createdAtStringM25Created time
paidTimeStringCThe value will be returned for successful payment
customerDetailsObjectMCustomer details
customerDetails.firstNameStringM16Customer’s first name
customerDetails.lastNameStringO16Customer’s last name
customerDetails.emailStringM64The customer’s email registered in the merchant site/platform
customerDetails.phoneStringM16The customer’s phone registered in the merchant site/platform
callbackUrlStringMMerchant payment notification URL
cancelReturnUrlStringORedirect to the merchant’s URL if the customer cancels the payment before completion
returnUrlStringORedirect to the merchant’s URL after the transaction is complete
validityPeriodStringOThe time when the payment is valid. Use format ISO-8601.
Maximum expiry time is 1×24 hours

Example Request

Details
sh
{
  "originalPartnerReferenceNo": "41945783730517",
  "originalReferenceNo": "01970fd9-3610-7211-be99-7d6c2363f01c",
  "latestTransactionStatus": "00",
  "transactionStatusDesc": "Success",
  "paymentDetails": {
    "amount": {
      "value": "350000.00",
      "currency": "IDR"
    },
    "totalAmount": {
      "value": "350000.00",
      "currency": "IDR"
    }
  },
  "paymentChannel": "INDODANA",
  "paymentSystem": "JUMPAPP",
  "itemDetails": [
    {
      "itemId": "FOOD01",
      "name": "RUJAK",
      "amount": {
        "value": "350000.00",
        "currency": "IDR"
      },
      "url": "https://www.google.com/",
      "category": "0017",
      "qty": 1,
      "parentType": "SELLER",
      "parentId": "123"
    }
  ],
  "tenure": "3_months",
  "paidTime": "2025-05-27T10:46:23+07:00",
  "customerDetails": {
    "firstName": "Quality",
    "lastName": "Assurance",
    "email": "qa@ifortepay.id",
    "phone": "089121313131"
  },
  "callbackUrl": "https://mcpid.proxy.beeceptor.com/BNPL",
  "cancelReturnUrl": "https://www.google.com/",
  "returnUrl": "https://www.google.com/",
  "validityPeriod": "2025-05-27T11:01:22+07:00",
  "createdAt": "2025-05-27T10:46:23+07:00"
}

Response

Details
ParameterData TypeMandatoryLengthDescription
responseCodeStringM7Response code
responseMessageStringM150Response description

Example Response

Details
{
   "responseCode":"2009300",
   "responseMessage":"Request has been processed successfully"
}

iFortepay API Documentation