m2pfintech
API LibraryIssuance

Validate Pre-Issuance

Pre-validates whether a wallet issuance request is within configured limits (monthly and yearly) for both purchaser and beneficiary.

When to Use

Call this before creating the wallet issuance to check eligibility and provide real-time feedback to users about limit status.

Checks Performed

  • Product-level issuance limits (monthly/yearly)
  • Issuer-level issuance limits
  • Purchaser-level limits (how many wallets can this purchaser buy)
  • Beneficiary-level limits (how many wallets can this person receive)
POST
/v1/wallet-issuances/validate-wallet-issuance-limit

Authorization

bearerAuth tenantId
AuthorizationBearer <token>

JWT Bearer token from the Authentication API

In: header

X-TENANT-ID<token>

Your unique tenant identifier assigned during onboarding

In: header

Header Parameters

X-TENANT-ID*string

Your unique tenant identifier

Request Body

application/json

applicationNumber*string

Required. Unique application number

Length1 <= length
issuanceType?string
Value in"Single" | "Bulk"
ntbApplication?boolean

true for new customers, false for existing

customer?

Customer details for card issuance

beneficiaries*

Required. List of card beneficiaries

Items1 <= items
summary?

Issuance fee and tax breakdown. All values must be obtained from the issuance fee summary API and echoed back — do not compute these fields independently.

Deprecated Fields (do not use for new integrations)

  • fees → use feeDetails.LOAD_FEE or feeDetails.REGISTRATION_FEE
  • issuanceFee → use feeDetails.REGISTRATION_FEE.feeAmount
  • issuanceTax → use feeDetails.REGISTRATION_FEE.taxAmount
issuer*

Issuer hierarchy details

loadDescription?object
mobile?
otp?string

Response Body

application/json

application/json

curl -X POST "https://sandbox-api.m2pprepaid.com/prepaid/middleware/v1/wallet-issuances/validate-wallet-issuance-limit" \  -H "X-TENANT-ID: ACME_CORP" \  -H "Content-Type: application/json" \  -d '{    "applicationNumber": "string",    "beneficiaries": [      {        "mobile": {          "value": "9876543210"        },        "product": {          "productId": "s8RpmmrN9J"        }      }    ],    "issuer": {      "hierarchyId": "CORP123456"    }  }'
{
  "result": {},
  "pagination": {
    "list": true,
    "pageSize": 0,
    "pageNo": 0,
    "totalPages": 0,
    "totalElements": 0
  }
}
{
  "type": "https://www.m2pfintech.com/problem/problem-with-message",
  "title": "Customer has exceeded the maximum limit for wallet issuance",
  "status": 409,
  "detail": "Customer has exceeded the maximum limit for wallet issuance",
  "message": "error.business",
  "businessCode": "PP_CORP_082"
}