This page describes the API used to validate eligibility and retrieve available installment plans for Slice (Easy Payment Plan - EPP).
Slice capabilities are exposed dynamically via the N-Genius Online order response using link relations.
Test in Postman
Use the Postman collection to explore and test the Slice Installment Payments API.
The collection includes the complete integration flow:
- Generate an access token
- Create a payment order
- Check Slice eligibility and retrieve installment plans
- Submit a payment with the selected Slice plan
👉 This is the fastest way to validate your integration in the sandbox environment.
How It Works
When a payment order is created, the response may include a Slice eligibility endpoint.
{
"_embedded": {
"payment": [
{
"_links": {
"payment:slice-eligibility-check": {
"href": "https://api-gateway/.../slice/eligibility-check"
}
}
}
]
}
}
Key Insight
Thepayment:slice-eligibility-checklink is returned only when the transaction is potentially eligible for Slice.
Use this endpoint to retrieve installment plans.
Check Slice Eligibility
Retrieves available installment plans for a transaction.
Endpoint
POST {payment:slice-eligibility-check}Headers
Authorization: Bearer {accessToken}
Content-Type: application/jsonRequest
{
"orderReference": "ORDER-12345",
"amount": {
"currencyCode": "AED",
"value": 50000
}
}Card Details (Required)
To perform the Slice eligibility check, card details must be included in the request.
You can provide either:
- A card token (recommended), or
- Raw card details (PAN and expiry date)
Example (Using Card Token)
{
"cardToken": "ZGE2MWIwY2YtOGNhOC00MTEyLTg3NzEtZWIzZmQwNTBhYjg1"
}Example (Using PAN and Expiry)
{
"pan": "4012001037141112",
"expiry": "2041-02"
}Notes
- Either
cardTokenorpanandexpirymust be provided - Card details are used to validate eligibility and retrieve available installment plans
- Ensure PCI compliance when handling raw card data
Parameters
| Field | Type | Description |
|---|---|---|
| orderReference | string | Unique order reference |
| amount.currencyCode | string | Transaction currency (must be AED) |
| amount.value | number | Amount in minor units (e.g. 50000 = AED 500.00) |
Response
{
"eligible": true,
"plans": [
{
"tenure": 3,
"monthlyAmount": 16666
},
{
"tenure": 6,
"monthlyAmount": 8333
}
]
}Response Fields
| Field | Type | Description |
|---|---|---|
| eligible | boolean | Indicates whether Slice is available |
| plans | array | List of available installment plans |
| plans.tenure | number | Number of monthly installments |
| plans.monthlyAmount | number | Monthly installment amount (minor units) |
Behaviour
Eligible Transaction
When eligible = true:
- One or more installment plans are returned
- The merchant should display these options to the customer
Ineligible Transaction
When eligible = false or the endpoint is not returned:
- No installment plans are available
- The merchant should continue with the standard payment flow
Integration Notes
-
Slice eligibility is validated in real time based on:
- Transaction amount
- Currency
- Card BIN
- Issuer validation
-
The eligibility endpoint is dynamic:
- It is returned only when applicable
- It should not be hardcoded
-
All amounts are represented in minor units
Error Handling
Common scenarios include:
| Scenario | Behaviour |
|---|---|
| Invalid currency | eligible: false |
| Below threshold | eligible: false |
| Unsupported card BIN | eligible: false |
| Unsupported issuer | eligible: false |
In all failure scenarios, continue with the standard payment flow.
Example Integration Flow
- Create payment order
- Check for
payment:slice-eligibility-checklink - Call eligibility endpoint
- Display available plans (if eligible)
- Submit payment with selected plan
Related Guides
- Direct API Integration
- Hosted Session Integration
- Slice Overview
- Test Cards

