Download OpenAPI specification:Download
The CIP Partner API exposes a JWT-authenticated surface for trusted partners to manage individuals they onboard, create and operate cards under those individuals, and query fees / delivery options.
All endpoints are mounted under /api/partner and require an ES512
Bearer JWT whose iss matches the partner's registered URL and whose
sub equals the partner's _id.
Generate a P-521 (secp521r1) ES512 keypair and provide the public key
to Paynovus — it is stored on the Partner record.
Sign a JWT with the partner's private key. The token must contain:
{
"iss": "https://your-registered-url.com",
"sub": "<partnerObjectId>",
"exp": <unix-seconds, +1 minute>,
"iat": <unix-seconds>
}
Send the token on every request:
Authorization: Bearer <jwt>
Partners are pre-trusted: a successful partnerAuth middleware pass grants
full access to every resource owned by req.auth.partnerId. No additional
role/permission checks are enforced.
Card-level endpoints additionally verify that the card (cardKey) belongs
to the calling partner via assertPartnerCardOwnership.
Endpoints that target the authenticated partner itself (/health-check,
/me). Useful for connectivity checks and self-introspection.
Returns the authenticated partner profile along with every B2B tenant and individual onboarding owned by that partner.
The partner object is sourced from the already-verified partner that
partnerAuth attaches to the request, so the response always
reflects exactly the authenticated partner.
object (Partner) | |
| activeTenantId | string or null The B2B tenant this request was scoped to (null when the partner has no B2B tenant — common for individual-only partners). |
Array of objects (B2BTenant) | |
Array of objects (IndividualAccountSummary) |
{- "partner": {
- "_id": "string",
- "name": "string",
- "status": "active",
- "webhooks": {
}, - "createdAt": "2019-08-24T14:15:22Z",
- "updatedAt": "2019-08-24T14:15:22Z"
}, - "activeTenantId": "string",
- "b2bAccounts": [
- {
- "_id": "string",
- "companyName": "string",
- "clientCode": "string",
- "status": "string",
- "email": "user@example.com",
- "phoneNumber": "string",
- "createdAt": "2019-08-24T14:15:22Z"
}
], - "individuals": [
- {
- "_id": "string",
- "clientID": "string",
- "personalInfo": { },
- "address": { },
- "applicationStatus": "string",
- "dashboardStatus": "string",
- "createdAt": "2019-08-24T14:15:22Z",
- "updatedAt": "2019-08-24T14:15:22Z"
}
]
}Endpoints for managing individual cardholders onboarded by the partner.
All paths under this tag are tenant-scoped via
assertPartnerIndividualAccess.
Returns every individual onboarding owned by the authenticated partner.
| page | integer >= 1 Default: 1 Page number for pagination |
| limit | integer [ 1 .. 100 ] Default: 20 Items per page |
| count | integer |
Array of objects (IndividualAccountSummary) |
{- "count": 0,
- "data": [
- {
- "_id": "string",
- "clientID": "string",
- "personalInfo": { },
- "address": { },
- "applicationStatus": "string",
- "dashboardStatus": "string",
- "createdAt": "2019-08-24T14:15:22Z",
- "updatedAt": "2019-08-24T14:15:22Z"
}
]
}Creates a partner-owned individual cardholder. The individual never logs into the CIP dashboard — the partner has its own dashboard for that; the record exists here only so CIP admins can see/control it.
Validates the payload against partnerCreateIndividualSchemaValidation
and delegates to createPartnerIndividualOnboarding, which creates
the User + IndividualOnboarding records and calls ryvyl-proxy-orasys
to create the upstream account. Rolls both records back if the proxy
call fails.
| baasAccountClientId | integer BaaS account/program the individual is created under |
| firstName required | string <= 200 characters |
| middleName required | string [ 2 .. 200 ] characters |
| lastName required | string <= 200 characters |
| country required | string = 2 characters ISO 3166-1 alpha-2 country code |
| city required | string <= 100 characters |
| stateProvince | string <= 100 characters |
| zipCode required | string <= 20 characters |
| buildingNumber required | string <= 100 characters |
| idType required | string Enum: "PASSPORT" "DRIVER_LICENSE" "RESIDENCE_CARD" "MINOR_WITHOUT_ID" "OTHER" |
| address1 required | string <= 200 characters |
| address2 | string <= 200 characters |
| passportNumber required | string <= 40 characters |
| issuingDate required | string yyyy-mm-dd |
| validityDate required | string yyyy-mm-dd |
| passportCountry required | string = 2 characters ISO 3166-1 alpha-2 country code |
| taxCountry | string |
| taxIdNumber | string Defaults to |
| birthCountry required | string = 2 characters |
| birthDate required | string yyyy-mm-dd |
| nationality required | string = 2 characters |
| fatca | string Defaults to |
| phone required | string |
| email required | string <email> |
| _id | string |
| clientID | string |
object | |
object | |
| applicationStatus | string |
| dashboardStatus | string |
| createdAt | string <date-time> |
| updatedAt | string <date-time> |
{- "baasAccountClientId": 0,
- "firstName": "string",
- "middleName": "string",
- "lastName": "string",
- "country": "st",
- "city": "string",
- "stateProvince": "string",
- "zipCode": "string",
- "buildingNumber": "string",
- "idType": "PASSPORT",
- "address1": "string",
- "address2": "string",
- "passportNumber": "string",
- "issuingDate": "string",
- "validityDate": "string",
- "passportCountry": "st",
- "taxCountry": "string",
- "taxIdNumber": "string",
- "birthCountry": "st",
- "birthDate": "string",
- "nationality": "st",
- "fatca": "string",
- "phone": "string",
- "email": "user@example.com"
}{- "_id": "string",
- "clientID": "string",
- "personalInfo": { },
- "address": { },
- "applicationStatus": "string",
- "dashboardStatus": "string",
- "createdAt": "2019-08-24T14:15:22Z",
- "updatedAt": "2019-08-24T14:15:22Z"
}Returns the individual onboarding identified by :id. Requires
assertPartnerIndividualAccess('id') — the partner must own the record.
| id required | string Individual onboarding |
| _id | string |
| clientID | string |
object | |
object | |
| applicationStatus | string |
| dashboardStatus | string |
| createdAt | string <date-time> |
| updatedAt | string <date-time> |
{- "_id": "string",
- "clientID": "string",
- "personalInfo": { },
- "address": { },
- "applicationStatus": "string",
- "dashboardStatus": "string",
- "createdAt": "2019-08-24T14:15:22Z",
- "updatedAt": "2019-08-24T14:15:22Z"
}Returns every active card owned by the given individual.
| id required | string Individual onboarding |
| cardKey | string |
| cardMask | string |
| type | string Enum: "virtual" "physical" |
| status | string (CardStatus) Enum: "ACTIVE" "LOCKED" "CLOSED" "LOST" "STOLEN" "FRAUD" "MOBILE_LOST" "RESTRICTED" "TEMP_LOCKED" |
| statusCode | string |
| currency | string |
| ownerType | string Enum: "individual" "b2b" |
| ownerId | string |
| createdAt | string <date-time> |
[- {
- "cardKey": "string",
- "cardMask": "string",
- "type": "virtual",
- "status": "ACTIVE",
- "statusCode": "string",
- "currency": "string",
- "ownerType": "individual",
- "ownerId": "string",
- "createdAt": "2019-08-24T14:15:22Z"
}
]Issues a virtual card under the given individual. Forwards the
request to IT-Card's POST /cards/v1/create-card-virtual and stores
the resulting card under the partner/individual ownership chain.
| id required | string |
| expDate required | string^(0[1-9]|1[0-2])\/\d{4}$ |
| clientCode required | string |
| currency required | string = 3 characters |
| productCode required | string |
| embossedName | string |
| shippingAddressId | string |
| cardKey | string |
| cardMask | string |
| type | string Enum: "virtual" "physical" |
| status | string (CardStatus) Enum: "ACTIVE" "LOCKED" "CLOSED" "LOST" "STOLEN" "FRAUD" "MOBILE_LOST" "RESTRICTED" "TEMP_LOCKED" |
| statusCode | string |
| currency | string |
| ownerType | string Enum: "individual" "b2b" |
| ownerId | string |
| createdAt | string <date-time> |
| productCode | string |
| holderClientCode | string |
| expDate | string |
| embossedName | string |
{- "expDate": "string",
- "clientCode": "string",
- "currency": "str",
- "productCode": "string",
- "embossedName": "string",
- "shippingAddressId": "string"
}{- "cardKey": "string",
- "cardMask": "string",
- "type": "virtual",
- "status": "ACTIVE",
- "statusCode": "string",
- "currency": "string",
- "ownerType": "individual",
- "ownerId": "string",
- "createdAt": "2019-08-24T14:15:22Z",
- "productCode": "string",
- "holderClientCode": "string",
- "expDate": "string",
- "embossedName": "string"
}Issues a physical card under the given individual.
| id required | string |
| expDate required | string^(0[1-9]|1[0-2])\/\d{4}$ |
| clientCode required | string |
| currency required | string = 3 characters |
| productCode required | string |
| embossedName | string |
| shippingAddressId | string |
| cardKey | string |
| cardMask | string |
| type | string Enum: "virtual" "physical" |
| status | string (CardStatus) Enum: "ACTIVE" "LOCKED" "CLOSED" "LOST" "STOLEN" "FRAUD" "MOBILE_LOST" "RESTRICTED" "TEMP_LOCKED" |
| statusCode | string |
| currency | string |
| ownerType | string Enum: "individual" "b2b" |
| ownerId | string |
| createdAt | string <date-time> |
| productCode | string |
| holderClientCode | string |
| expDate | string |
| embossedName | string |
{- "expDate": "string",
- "clientCode": "string",
- "currency": "str",
- "productCode": "string",
- "embossedName": "string",
- "shippingAddressId": "string"
}{- "cardKey": "string",
- "cardMask": "string",
- "type": "virtual",
- "status": "ACTIVE",
- "statusCode": "string",
- "currency": "string",
- "ownerType": "individual",
- "ownerId": "string",
- "createdAt": "2019-08-24T14:15:22Z",
- "productCode": "string",
- "holderClientCode": "string",
- "expDate": "string",
- "embossedName": "string"
}Returns the B2B audit log entries scoped to the given individual.
Pagination is via page and limit.
| id required | string |
| page | integer >= 1 Default: 1 Page number for pagination |
| limit | integer [ 1 .. 100 ] Default: 20 Items per page |
Array of objects (AuditLogEntry) | |
object (Pagination) |
{- "data": [
- {
- "_id": "string",
- "action": "string",
- "actor": "string",
- "payload": { },
- "createdAt": "2019-08-24T14:15:22Z"
}
], - "pagination": {
- "page": 0,
- "limit": 0,
- "total": 0,
- "pages": 0
}
}Returns every card-status change recorded for this individual.
| id required | string |
| page | integer >= 1 Default: 1 Page number for pagination |
| limit | integer [ 1 .. 100 ] Default: 20 Items per page |
Array of objects (CardStatusHistoryEntry) | |
object (Pagination) |
{- "data": [
- {
- "_id": "string",
- "cardKey": "string",
- "fromStatus": "string",
- "toStatus": "string",
- "fromStatusCode": "string",
- "toStatusCode": "string",
- "reason": "string",
- "createdAt": "2019-08-24T14:15:22Z"
}
], - "pagination": {
- "page": 0,
- "limit": 0,
- "total": 0,
- "pages": 0
}
}Fetches transactions from Card Processing by account identification and card id. Empty results are returned for partners who have not configured Card Processing yet.
| id required | string |
| page | integer >= 1 Default: 1 Page number for pagination |
| limit | integer [ 1 .. 100 ] Default: 20 Items per page |
Array of objects (Transaction) | |
object (Pagination) |
{- "data": [
- {
- "id": "string",
- "cardKey": "string",
- "amount": 0.1,
- "currency": "string",
- "merchant": "string",
- "mcc": "string",
- "status": "string",
- "createdAt": "2019-08-24T14:15:22Z"
}
], - "pagination": {
- "page": 0,
- "limit": 0,
- "total": 0,
- "pages": 0
}
}Card-level endpoints that operate on a single IT-Card cardKey.
The :id path parameter is the IT-Card cardKey (for example
KDRYV10100033065). Every endpoint under /cards/:id/... runs the
assertPartnerCardOwnership middleware before reaching the controller.
Returns every card owned by the authenticated partner across all account types (B2B + individual). Not tenant-scoped per-card — returns the full partner-wide list.
| page | integer >= 1 Default: 1 Page number for pagination |
| limit | integer [ 1 .. 100 ] Default: 20 Items per page |
| status | string (CardStatus) Enum: "ACTIVE" "LOCKED" "CLOSED" "LOST" "STOLEN" "FRAUD" "MOBILE_LOST" "RESTRICTED" "TEMP_LOCKED" Filter by IT-Card status |
| type | string Enum: "virtual" "physical"
|
| search | string Case-insensitive search on |
| success | boolean |
Array of objects (CardSummary) | |
object (Pagination) |
{- "success": true,
- "data": [
- {
- "cardKey": "string",
- "cardMask": "string",
- "type": "virtual",
- "status": "ACTIVE",
- "statusCode": "string",
- "currency": "string",
- "ownerType": "individual",
- "ownerId": "string",
- "createdAt": "2019-08-24T14:15:22Z"
}
], - "pagination": {
- "page": 0,
- "limit": 0,
- "total": 0,
- "pages": 0
}
}Returns full IT-Card card details. Does not include the PAN or CVV — use the dedicated sensitive endpoints below for those.
| id required | string IT-Card |
| cardKey | string |
| cardMask | string |
| type | string Enum: "virtual" "physical" |
| status | string (CardStatus) Enum: "ACTIVE" "LOCKED" "CLOSED" "LOST" "STOLEN" "FRAUD" "MOBILE_LOST" "RESTRICTED" "TEMP_LOCKED" |
| statusCode | string |
| currency | string |
| ownerType | string Enum: "individual" "b2b" |
| ownerId | string |
| createdAt | string <date-time> |
| productCode | string |
| holderClientCode | string |
| expDate | string |
| embossedName | string |
{- "cardKey": "string",
- "cardMask": "string",
- "type": "virtual",
- "status": "ACTIVE",
- "statusCode": "string",
- "currency": "string",
- "ownerType": "individual",
- "ownerId": "string",
- "createdAt": "2019-08-24T14:15:22Z",
- "productCode": "string",
- "holderClientCode": "string",
- "expDate": "string",
- "embossedName": "string"
}Returns the current IT-Card status + status code.
| id required | string IT-Card |
| cardKey | string |
| status | string (CardStatus) Enum: "ACTIVE" "LOCKED" "CLOSED" "LOST" "STOLEN" "FRAUD" "MOBILE_LOST" "RESTRICTED" "TEMP_LOCKED" |
| statusCode | string IT-Card raw status code (e.g. |
{- "cardKey": "string",
- "status": "ACTIVE",
- "statusCode": "string"
}Locks the card. The card stays in the holder's possession but cannot authorize transactions.
| id required | string IT-Card |
| expDate required | string^(0[1-9]|1[0-2])\/\d{4}$ Card expiration in |
| reason | string Audit reason (free-form) |
| cardKey | string |
| status | string (CardStatus) Enum: "ACTIVE" "LOCKED" "CLOSED" "LOST" "STOLEN" "FRAUD" "MOBILE_LOST" "RESTRICTED" "TEMP_LOCKED" |
| statusCode | string IT-Card raw status code (e.g. |
{- "expDate": "string",
- "reason": "string"
}{- "cardKey": "string",
- "status": "ACTIVE",
- "statusCode": "string"
}Unlocks a previously-locked card.
| id required | string IT-Card |
| expDate required | string^(0[1-9]|1[0-2])\/\d{4}$ Card expiration in |
| reason | string Audit reason (free-form) |
| cardKey | string |
| status | string (CardStatus) Enum: "ACTIVE" "LOCKED" "CLOSED" "LOST" "STOLEN" "FRAUD" "MOBILE_LOST" "RESTRICTED" "TEMP_LOCKED" |
| statusCode | string IT-Card raw status code (e.g. |
{- "expDate": "string",
- "reason": "string"
}{- "cardKey": "string",
- "status": "ACTIVE",
- "statusCode": "string"
}Activates a freshly-issued card.
| id required | string IT-Card |
| expDate required | string^(0[1-9]|1[0-2])\/\d{4}$ Card expiration in |
| reason | string Audit reason (free-form) |
| cardKey | string |
| status | string (CardStatus) Enum: "ACTIVE" "LOCKED" "CLOSED" "LOST" "STOLEN" "FRAUD" "MOBILE_LOST" "RESTRICTED" "TEMP_LOCKED" |
| statusCode | string IT-Card raw status code (e.g. |
{- "expDate": "string",
- "reason": "string"
}{- "cardKey": "string",
- "status": "ACTIVE",
- "statusCode": "string"
}Temporarily locks the card (e.g. while the holder travels).
| id required | string IT-Card |
| expDate required | string^(0[1-9]|1[0-2])\/\d{4}$ Card expiration in |
| reason | string Audit reason (free-form) |
| cardKey | string |
| status | string (CardStatus) Enum: "ACTIVE" "LOCKED" "CLOSED" "LOST" "STOLEN" "FRAUD" "MOBILE_LOST" "RESTRICTED" "TEMP_LOCKED" |
| statusCode | string IT-Card raw status code (e.g. |
{- "expDate": "string",
- "reason": "string"
}{- "cardKey": "string",
- "status": "ACTIVE",
- "statusCode": "string"
}Generic card restriction.
| id required | string IT-Card |
| expDate | string^(0[1-9]|1[0-2])\/\d{4}$ |
| reason | string |
| description | string |
| cardLocation | string Where the card was last seen |
| cardKey | string |
| status | string (CardStatus) Enum: "ACTIVE" "LOCKED" "CLOSED" "LOST" "STOLEN" "FRAUD" "MOBILE_LOST" "RESTRICTED" "TEMP_LOCKED" |
| statusCode | string IT-Card raw status code (e.g. |
{- "expDate": "string",
- "reason": "string",
- "description": "string",
- "cardLocation": "string"
}{- "cardKey": "string",
- "status": "ACTIVE",
- "statusCode": "string"
}Restricts the card as lost. The card cannot be used; the holder must request a replacement.
| id required | string IT-Card |
| expDate | string^(0[1-9]|1[0-2])\/\d{4}$ |
| reason | string |
| description | string |
| cardLocation | string Where the card was last seen |
| cardKey | string |
| status | string (CardStatus) Enum: "ACTIVE" "LOCKED" "CLOSED" "LOST" "STOLEN" "FRAUD" "MOBILE_LOST" "RESTRICTED" "TEMP_LOCKED" |
| statusCode | string IT-Card raw status code (e.g. |
{- "expDate": "string",
- "reason": "string",
- "description": "string",
- "cardLocation": "string"
}{- "cardKey": "string",
- "status": "ACTIVE",
- "statusCode": "string"
}Restricts the card as stolen.
| id required | string IT-Card |
| expDate | string^(0[1-9]|1[0-2])\/\d{4}$ |
| reason | string |
| description | string |
| cardLocation | string Where the card was last seen |
| cardKey | string |
| status | string (CardStatus) Enum: "ACTIVE" "LOCKED" "CLOSED" "LOST" "STOLEN" "FRAUD" "MOBILE_LOST" "RESTRICTED" "TEMP_LOCKED" |
| statusCode | string IT-Card raw status code (e.g. |
{- "expDate": "string",
- "reason": "string",
- "description": "string",
- "cardLocation": "string"
}{- "cardKey": "string",
- "status": "ACTIVE",
- "statusCode": "string"
}Restricts the card as closed.
| id required | string IT-Card |
| expDate | string^(0[1-9]|1[0-2])\/\d{4}$ |
| reason | string |
| description | string |
| cardLocation | string Where the card was last seen |
| cardKey | string |
| status | string (CardStatus) Enum: "ACTIVE" "LOCKED" "CLOSED" "LOST" "STOLEN" "FRAUD" "MOBILE_LOST" "RESTRICTED" "TEMP_LOCKED" |
| statusCode | string IT-Card raw status code (e.g. |
{- "expDate": "string",
- "reason": "string",
- "description": "string",
- "cardLocation": "string"
}{- "cardKey": "string",
- "status": "ACTIVE",
- "statusCode": "string"
}Restricts the card as fraud.
| id required | string IT-Card |
| expDate | string^(0[1-9]|1[0-2])\/\d{4}$ |
| reason | string |
| description | string |
| cardLocation | string Where the card was last seen |
| cardKey | string |
| status | string (CardStatus) Enum: "ACTIVE" "LOCKED" "CLOSED" "LOST" "STOLEN" "FRAUD" "MOBILE_LOST" "RESTRICTED" "TEMP_LOCKED" |
| statusCode | string IT-Card raw status code (e.g. |
{- "expDate": "string",
- "reason": "string",
- "description": "string",
- "cardLocation": "string"
}{- "cardKey": "string",
- "status": "ACTIVE",
- "statusCode": "string"
}Restricts the card as lost on mobile (device).
| id required | string IT-Card |
| expDate | string^(0[1-9]|1[0-2])\/\d{4}$ |
| reason | string |
| description | string |
| cardLocation | string Where the card was last seen |
| cardKey | string |
| status | string (CardStatus) Enum: "ACTIVE" "LOCKED" "CLOSED" "LOST" "STOLEN" "FRAUD" "MOBILE_LOST" "RESTRICTED" "TEMP_LOCKED" |
| statusCode | string IT-Card raw status code (e.g. |
{- "expDate": "string",
- "reason": "string",
- "description": "string",
- "cardLocation": "string"
}{- "cardKey": "string",
- "status": "ACTIVE",
- "statusCode": "string"
}Local-only — sets a friendly name for the card.
| id required | string IT-Card |
| nickname required | string <= 64 characters |
| cardKey | string |
| cardMask | string |
| type | string Enum: "virtual" "physical" |
| status | string (CardStatus) Enum: "ACTIVE" "LOCKED" "CLOSED" "LOST" "STOLEN" "FRAUD" "MOBILE_LOST" "RESTRICTED" "TEMP_LOCKED" |
| statusCode | string |
| currency | string |
| ownerType | string Enum: "individual" "b2b" |
| ownerId | string |
| createdAt | string <date-time> |
| productCode | string |
| holderClientCode | string |
| expDate | string |
| embossedName | string |
{- "nickname": "string"
}{- "cardKey": "string",
- "cardMask": "string",
- "type": "virtual",
- "status": "ACTIVE",
- "statusCode": "string",
- "currency": "string",
- "ownerType": "individual",
- "ownerId": "string",
- "createdAt": "2019-08-24T14:15:22Z",
- "productCode": "string",
- "holderClientCode": "string",
- "expDate": "string",
- "embossedName": "string"
}Updates the embossed name on the card. Note: IT-Card does not allow spaces in the emboss-name request.
| id required | string IT-Card |
| embossedName required | string <= 26 characters |
| cardKey | string |
| cardMask | string |
| type | string Enum: "virtual" "physical" |
| status | string (CardStatus) Enum: "ACTIVE" "LOCKED" "CLOSED" "LOST" "STOLEN" "FRAUD" "MOBILE_LOST" "RESTRICTED" "TEMP_LOCKED" |
| statusCode | string |
| currency | string |
| ownerType | string Enum: "individual" "b2b" |
| ownerId | string |
| createdAt | string <date-time> |
| productCode | string |
| holderClientCode | string |
| expDate | string |
| embossedName | string |
{- "embossedName": "string"
}{- "cardKey": "string",
- "cardMask": "string",
- "type": "virtual",
- "status": "ACTIVE",
- "statusCode": "string",
- "currency": "string",
- "ownerType": "individual",
- "ownerId": "string",
- "createdAt": "2019-08-24T14:15:22Z",
- "productCode": "string",
- "holderClientCode": "string",
- "expDate": "string",
- "embossedName": "string"
}Replaces the physical card. IT-Card returns a new cardKey;
the local AccountCard record is updated to the new key and a
card_created webhook is sent to Card Processing.
CIP then enriches the response with cardMask (not present in
IT-Card's replace response) by fetching the new card from
GET /cards/{newCardKey}.
| id required | string IT-Card |
| expDate required | string^(0[1-9]|1[0-2])\/\d{4}$ |
| reason | string |
| pinMailer | string Postal pin-mailer reference |
| cardKey | string |
| cardMask | string |
| type | string Enum: "virtual" "physical" |
| status | string (CardStatus) Enum: "ACTIVE" "LOCKED" "CLOSED" "LOST" "STOLEN" "FRAUD" "MOBILE_LOST" "RESTRICTED" "TEMP_LOCKED" |
| statusCode | string |
| currency | string |
| ownerType | string Enum: "individual" "b2b" |
| ownerId | string |
| createdAt | string <date-time> |
| productCode | string |
| holderClientCode | string |
| expDate | string |
| embossedName | string |
{- "expDate": "string",
- "reason": "string",
- "pinMailer": "string"
}{- "cardKey": "string",
- "cardMask": "string",
- "type": "virtual",
- "status": "ACTIVE",
- "statusCode": "string",
- "currency": "string",
- "ownerType": "individual",
- "ownerId": "string",
- "createdAt": "2019-08-24T14:15:22Z",
- "productCode": "string",
- "holderClientCode": "string",
- "expDate": "string",
- "embossedName": "string"
}Re-issues the card (e.g. PIN reissue, expiration). IT-Card returns
a new cardKey; the old card is closed locally and a
card_created webhook is sent to Card Processing.
The old statusCode is captured from the local AccountCard row
BEFORE the local update overwrites it, then forwarded to
POST /api/cip/update-card-status with the OLD cardKey.
| id required | string IT-Card |
| expDate required | string^(0[1-9]|1[0-2])\/\d{4}$ |
| reason | string |
| pinMailer | string Postal pin-mailer reference |
| cardKey | string |
| cardMask | string |
| type | string Enum: "virtual" "physical" |
| status | string (CardStatus) Enum: "ACTIVE" "LOCKED" "CLOSED" "LOST" "STOLEN" "FRAUD" "MOBILE_LOST" "RESTRICTED" "TEMP_LOCKED" |
| statusCode | string |
| currency | string |
| ownerType | string Enum: "individual" "b2b" |
| ownerId | string |
| createdAt | string <date-time> |
| productCode | string |
| holderClientCode | string |
| expDate | string |
| embossedName | string |
{- "expDate": "string",
- "reason": "string",
- "pinMailer": "string"
}{- "cardKey": "string",
- "cardMask": "string",
- "type": "virtual",
- "status": "ACTIVE",
- "statusCode": "string",
- "currency": "string",
- "ownerType": "individual",
- "ownerId": "string",
- "createdAt": "2019-08-24T14:15:22Z",
- "productCode": "string",
- "holderClientCode": "string",
- "expDate": "string",
- "embossedName": "string"
}Returns the CVV2 for the card. Sensitive — never log this
response. Requires expDate and securityKey (RSA-OAEP, base64).
| id required | string IT-Card |
| expDate required | string^(0[1-9]|1[0-2])\/\d{4}$ Card expiration in |
| securityKey required | string RSA-OAEP security key (base64) |
| cvv | string |
{- "cvv": "123"
}Returns the full PAN for the card. Highly sensitive — never log
this response. Requires expDate and securityKey (RSA-OAEP, base64).
| id required | string IT-Card |
| expDate required | string^(0[1-9]|1[0-2])\/\d{4}$ Card expiration in |
| securityKey required | string RSA-OAEP security key (base64) |
| cardNumber | string |
{- "cardNumber": "4111111111111111"
}Updates the 3-D Secure answer configured on the card.
| id required | string IT-Card |
| answer required | string <= 200 characters |
| cardKey | string |
| cardMask | string |
| type | string Enum: "virtual" "physical" |
| status | string (CardStatus) Enum: "ACTIVE" "LOCKED" "CLOSED" "LOST" "STOLEN" "FRAUD" "MOBILE_LOST" "RESTRICTED" "TEMP_LOCKED" |
| statusCode | string |
| currency | string |
| ownerType | string Enum: "individual" "b2b" |
| ownerId | string |
| createdAt | string <date-time> |
| productCode | string |
| holderClientCode | string |
| expDate | string |
| embossedName | string |
{- "answer": "string"
}{- "cardKey": "string",
- "cardMask": "string",
- "type": "virtual",
- "status": "ACTIVE",
- "statusCode": "string",
- "currency": "string",
- "ownerType": "individual",
- "ownerId": "string",
- "createdAt": "2019-08-24T14:15:22Z",
- "productCode": "string",
- "holderClientCode": "string",
- "expDate": "string",
- "embossedName": "string"
}Local-only — updates the 3-D Secure phone number on the card.
| id required | string IT-Card |
| phoneNumber required | string <= 32 characters |
| cardKey | string |
| cardMask | string |
| type | string Enum: "virtual" "physical" |
| status | string (CardStatus) Enum: "ACTIVE" "LOCKED" "CLOSED" "LOST" "STOLEN" "FRAUD" "MOBILE_LOST" "RESTRICTED" "TEMP_LOCKED" |
| statusCode | string |
| currency | string |
| ownerType | string Enum: "individual" "b2b" |
| ownerId | string |
| createdAt | string <date-time> |
| productCode | string |
| holderClientCode | string |
| expDate | string |
| embossedName | string |
{- "phoneNumber": "string"
}{- "cardKey": "string",
- "cardMask": "string",
- "type": "virtual",
- "status": "ACTIVE",
- "statusCode": "string",
- "currency": "string",
- "ownerType": "individual",
- "ownerId": "string",
- "createdAt": "2019-08-24T14:15:22Z",
- "productCode": "string",
- "holderClientCode": "string",
- "expDate": "string",
- "embossedName": "string"
}Resets the cardholder's PIN-attempt counter.
| id required | string IT-Card |
| cardKey | string |
| cardMask | string |
| type | string Enum: "virtual" "physical" |
| status | string (CardStatus) Enum: "ACTIVE" "LOCKED" "CLOSED" "LOST" "STOLEN" "FRAUD" "MOBILE_LOST" "RESTRICTED" "TEMP_LOCKED" |
| statusCode | string |
| currency | string |
| ownerType | string Enum: "individual" "b2b" |
| ownerId | string |
| createdAt | string <date-time> |
| productCode | string |
| holderClientCode | string |
| expDate | string |
| embossedName | string |
{- "cardKey": "string",
- "cardMask": "string",
- "type": "virtual",
- "status": "ACTIVE",
- "statusCode": "string",
- "currency": "string",
- "ownerType": "individual",
- "ownerId": "string",
- "createdAt": "2019-08-24T14:15:22Z",
- "productCode": "string",
- "holderClientCode": "string",
- "expDate": "string",
- "embossedName": "string"
}Changes the card PIN. pin is the RSA-OAEP encrypted PIN
(base64). Known limitation: IT-Card currently returns an error
on this operation.
| id required | string IT-Card |
| expDate required | string^(0[1-9]|1[0-2])\/\d{4}$ |
| pin required | string RSA-OAEP encrypted PIN (base64) |
| cardKey | string |
| cardMask | string |
| type | string Enum: "virtual" "physical" |
| status | string (CardStatus) Enum: "ACTIVE" "LOCKED" "CLOSED" "LOST" "STOLEN" "FRAUD" "MOBILE_LOST" "RESTRICTED" "TEMP_LOCKED" |
| statusCode | string |
| currency | string |
| ownerType | string Enum: "individual" "b2b" |
| ownerId | string |
| createdAt | string <date-time> |
| productCode | string |
| holderClientCode | string |
| expDate | string |
| embossedName | string |
{- "expDate": "string",
- "pin": "string"
}{- "cardKey": "string",
- "cardMask": "string",
- "type": "virtual",
- "status": "ACTIVE",
- "statusCode": "string",
- "currency": "string",
- "ownerType": "individual",
- "ownerId": "string",
- "createdAt": "2019-08-24T14:15:22Z",
- "productCode": "string",
- "holderClientCode": "string",
- "expDate": "string",
- "embossedName": "string"
}Forces a PIN-attempt lock on the card. Known limitation: IT-Card currently returns an error on this operation.
| id required | string IT-Card |
| expDate required | string^(0[1-9]|1[0-2])\/\d{4}$ |
| cardKey | string |
| status | string (CardStatus) Enum: "ACTIVE" "LOCKED" "CLOSED" "LOST" "STOLEN" "FRAUD" "MOBILE_LOST" "RESTRICTED" "TEMP_LOCKED" |
| statusCode | string IT-Card raw status code (e.g. |
{- "expDate": "string"
}{- "cardKey": "string",
- "status": "ACTIVE",
- "statusCode": "string"
}Returns the full set of card limits.
| id required | string IT-Card |
| name | string |
| value | number <double> |
| currency | string |
| used | number <double> |
| available | number <double> |
[- {
- "name": "dailyPurchase",
- "value": 0.1,
- "currency": "string",
- "used": 0.1,
- "available": 0.1
}
]Updates multiple card limits at once.
| id required | string IT-Card |
| name required | string |
| value required | number <double> |
| name | string |
| value | number <double> |
| currency | string |
| used | number <double> |
| available | number <double> |
[- {
- "name": "dailyPurchase",
- "value": 0.1
}
][- {
- "name": "dailyPurchase",
- "value": 0.1,
- "currency": "string",
- "used": 0.1,
- "available": 0.1
}
]Sets a named card limit (e.g. dailyPurchase).
| id required | string IT-Card |
| limitName required | string |
| name required | string |
| value required | number <double> |
| name | string |
| value | number <double> |
| currency | string |
| used | number <double> |
| available | number <double> |
{- "name": "dailyPurchase",
- "value": 0.1
}{- "name": "dailyPurchase",
- "value": 0.1,
- "currency": "string",
- "used": 0.1,
- "available": 0.1
}Returns the value of a single named limit.
| id required | string IT-Card |
| limitName required | string |
| name | string |
| value | number <double> |
| currency | string |
| used | number <double> |
| available | number <double> |
{- "name": "dailyPurchase",
- "value": 0.1,
- "currency": "string",
- "used": 0.1,
- "available": 0.1
}Returns the remaining available amount for the named limit.
| id required | string IT-Card |
| limitName required | string |
| available | number <double> |
{- "available": 0.1
}Fee and delivery-method lookups. The issuing/delivery fee endpoints
require a validateRequest pass against the shared
checkFeePayloadSchema.
Returns PocztaPost + DHL delivery methods available for the given ISO 3166-1 alpha-2 country code.
| country required | string = 2 characters ISO 3166-1 alpha-2 country code (e.g. |
object | |||||||
| |||||||
{- "data": {
- "success": true,
- "country": "string",
- "deliveryMethods": [
- { }
]
}
}Forwards a CheckTransactionFee request to Card Processing with
OperationType fixed server-side to Card Issuing Fee.
At least one of cardKey, clientId, or iban must be present.
| CustomerType required | string Enum: "Consumer Debit" "Business Debit" "Consumer Prepaid" "Business Prepaid" |
| ProductType required | string Enum: "R001" "R002" "R003" "R004" "R005" "R006" |
| cardKey | string At least one of cardKey / clientId / iban must be present |
| clientId | string |
| iban | string |
| OperationType | string |
| CustomerType | string |
| ProductType | string |
| fee | number <double> |
| currency | string |
{- "CustomerType": "Consumer Debit",
- "ProductType": "R001",
- "cardKey": "string",
- "clientId": "string",
- "iban": "string"
}{- "OperationType": "string",
- "CustomerType": "string",
- "ProductType": "string",
- "fee": 0.1,
- "currency": "string"
}Forwards a CheckTransactionFee request to Card Processing with
OperationType fixed server-side to Card Delivery Fee.
At least one of cardKey, clientId, or iban must be present.
| CustomerType required | string Enum: "Consumer Debit" "Business Debit" "Consumer Prepaid" "Business Prepaid" |
| ProductType required | string Enum: "R001" "R002" "R003" "R004" "R005" "R006" |
| cardKey | string At least one of cardKey / clientId / iban must be present |
| clientId | string |
| iban | string |
| OperationType | string |
| CustomerType | string |
| ProductType | string |
| fee | number <double> |
| currency | string |
{- "CustomerType": "Consumer Debit",
- "ProductType": "R001",
- "cardKey": "string",
- "clientId": "string",
- "iban": "string"
}{- "OperationType": "string",
- "CustomerType": "string",
- "ProductType": "string",
- "fee": 0.1,
- "currency": "string"
}