m2pfintech

Activate Card (Basic)

Activates a customer's card using basic validation: card last 6 digits, CVV, and expiry date. This is the simpler activation flow — for more comprehensive validation, use the Activate Card with Rules endpoint.

Prerequisites

  • Card must be in ALLOCATED status
  • Customer must have the physical card to provide CVV and last-6 digits

Post-Activation

  • Card status changes from ALLOCATEDACTIVE
  • Customer can immediately start transacting
POST
/v1/customers/activate

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

mobile?
cardLastSix?string

Last 6 digits of the card number

cvv?string

Card CVV

expiryDate?string

Card expiry (format: MM/YY)

kitNo?string

Kit number (optional additional validation)

Response Body

application/json

application/json

application/json

curl -X POST "https://sandbox-api.m2pprepaid.com/prepaid/customer/v1/customers/activate" \  -H "X-TENANT-ID: ACME_CORP" \  -H "Content-Type: application/json" \  -d '{    "mobile": {      "value": "9876543210",      "countryCode": 91    },    "cardLastSix": "021076",    "cvv": "801",    "expiryDate": "10/27"  }'
{
  "result": {
    "message": "Card Activated Successfully"
  },
  "pagination": null
}
{
  "type": "https://www.m2pfintech.com/problem/problem-with-message",
  "title": "Bad Request",
  "status": 400,
  "detail": "Unable to convert http message",
  "message": "error.http.400"
}

{
  "type": "https://www.m2pfintech.com/problem/problem-with-message",
  "title": "Cvv Validation Failed",
  "status": 409,
  "detail": "Cvv Validation Failed",
  "message": "error.business",
  "businessCode": "PPCUST_014"
}

Update Beneficiary Status POST

Activates or deactivates an existing IMPS beneficiary. Use this endpoint to: - **Deactivate** a beneficiary that is no longer needed (status: `INACTIVE`) - **Reactivate** a previously deactivated beneficiary (status: `ACTIVE`) ### Key Business Rules - Only `ACTIVE` and `INACTIVE` status transitions are allowed - Deactivating a beneficiary does not delete it — it can be reactivated later - Fund transfers to `INACTIVE` beneficiaries will be rejected - Status changes are immediate and do not require OTP verification

Activate Card (With Validation Rules) POST

Activates a customer's card using comprehensive validation rules including card details, customer personal information, and optional OTP/PIN verification. ### Validation Fields (in `rule` object) | Field | Required | Description | |-------|----------|-------------| | `cardLastSix` | ✅ | Last 6 digits of card number | | `expiryDate` | ✅ | Card expiry (MM/YY) | | `cvv` | ✅ | Card CVV | | `customerFirstName` | ✅ | Must match registered name | | `customerLastName` | ✅ | Must match registered name | | `customerDob` | ✅ | Must match DOB (DD/MM/YYYY) | | `govtId` | ✅ | PAN number | | `otp` | Optional | OTP if OTP-based activation | | `traceNumber` | Optional | From Generate OTP (required with OTP) | | `pin` | Optional | PIN if PIN-based activation | | `email` | Optional | Customer email | | `kitNumber` | Optional | Kit number for additional validation | ### When to Use (vs Basic Activate) Use this endpoint when your product requires comprehensive identity verification before card activation (e.g., high-value cards, full KYC products).