Cards
Symitar in Platform
>
Cards
openapi: 3.0.1
info:
title: Symitar in Platform API - Cards
version: v1
description: API to interact with Symitar in Platform
contact:
name: Picard
url: https://www.jackhenry.com/
email: DC-Picard-Product@jackhenry.com
servers:
- url: https://platform.banno.com
description: Production Endpoint
components:
securitySchemes:
OpenIDEnterprise:
type: openIdConnect
openIdConnectUrl: https://login.jackhenry.com/.well-known/openid-configuration
description: "Jack Henry Enterprise Authentication. \n\n ### Supported Flows\n \n #### 1. Authorization Code Flow\n * **Use Case:** Person-at-keyboard logins (FI or JH Employees).\n * **Security:** Supports/recommends PKCE (S256). Supports Pushed Authorization Requests (PAR), and DPoP token binding.\n * **Client Auth:** Supports/recommends `client_assertion` (Private Key JWT), also supports `client_secret`.\n \n #### 2. Client Credentials Flow\n * **Use Case:** System services and machine-to-machine integrations.\n * **Security:** Supports DPoP token binding.\n * **Client Auth:** **Requires** `client_assertion` (Private Key JWT).\n"
OpenIDConsumer:
type: openIdConnect
openIdConnectUrl: https://digital.garden-fi.com/.well-known/openid-configuration
description: "Jack Henry Consumer Authentication. \n\n> **WARNING: FI-SPECIFIC ROUTING**\n> The authorization server is currently pointing to our **Sandbox Environment** (`digital.garden-fi.com`) so you can test this documentation. In production code, this domain **must** be replaced with the specific Financial Institution's domain.\n> Example: Replace `{API-ENVIRONMENT}` in `https://{API-ENVIRONMENT}/.well-known/openid-configuration` with `digital.garden-fi.com` for the Garden financial institution.\n\n### Supported Flows\n\n#### 1. Authorization Code Flow\n* **Use Case:** Person-at-keyboard logins (customer or member of FI).\n* **Security:** Supports/recommends PKCE (S256). Supports Pushed Authorization Requests (PAR), and DPoP token binding.\n* **Client Auth:** Supports `client_secret`.\n"
tags:
- name: Cards
description: Card management operations
paths:
/a/api/picard/v1/{InstitutionUniversalId}/cards:
patch:
operationId: updateCard
tags:
- Cards
summary: Update Card
description: |
Update an existing card record on an account. This maps to the
SymXchange `updateCardByID` SOAP operation.
Supply `accountNumber` and `cardLocator` to identify the card.
Only the fields present in the request body are sent to SymXchange;
Symitar modifies only those fields that differ from the current record.
Field order in the SOAP request matches the Card element definition
in the `account_update.xsd` schema.
parameters:
- name: InstitutionUniversalId
in: path
description: A unique identifier to establish the identity of an Institution/Environment/Brand combination
required: true
schema:
type: string
requestBody:
required: true
content:
application/merge-patch+json:
schema:
type: object
description: |
Request body for `PATCH /cards`. Updates an existing Card record
in SymXchange. Supply `accountNumber` and `cardLocator` to identify
the card. All other fields are optional — only supplied fields are
sent to Symitar.
required:
- accountNumber
- cardLocator
properties:
accountNumber:
type: string
description: 10-digit account number.
example: 0000379758
cardLocator:
type: integer
description: Locator (unique identifier) of the card to update.
example: 1
activeDate:
type: string
description: Date the card was activated (YYYY-MM-DD).
atmCount:
type: integer
description: Current ATM transaction count.
atmCountLimit:
type: integer
description: ATM transaction count limit.
atmTempLimit:
type: string
description: Temporary ATM limit amount.
authAmount:
type: string
description: Current authorization amount.
authCount:
type: integer
description: Current authorization count.
authCountLimit:
type: integer
description: Authorization count limit.
authLimit:
type: string
description: Authorization limit amount.
authTempLimit:
type: string
description: Temporary authorization limit amount.
billPayAmount:
type: string
description: Current bill pay amount.
billPayCount:
type: integer
description: Current bill pay count.
billPayCountLimit:
type: integer
description: Bill pay count limit.
billPayLimit:
type: string
description: Bill pay limit amount.
billPayMax:
type: string
description: Bill pay maximum amount.
blockCode:
type: string
description: Block code restricting card usage.
chkId:
type: string
description: Checking account ID linked to the card.
closeDate:
type: string
description: Date the card was closed (YYYY-MM-DD).
createdAtBranch:
type: integer
description: Branch where the card was created.
createdByUser:
type: integer
description: User who created the card record.
credDebAmount:
type: string
description: Current credit/debit amount.
credDebCount:
type: integer
description: Current credit/debit count.
credDebCountLimit:
type: integer
description: Credit/debit count limit.
credDebLimit:
type: string
description: Credit/debit limit amount.
creditCardId:
type: string
description: Credit card identifier.
depAmount:
type: string
description: Current deposit amount.
depCount:
type: integer
description: Current deposit count.
depCountLimit:
type: integer
description: Deposit count limit.
depLimit:
type: string
description: Deposit limit amount.
depMax:
type: string
description: Deposit maximum amount.
description:
type: string
description: Card description.
digitalIssueExcept:
type: string
description: Digital issuance exception code.
digitalIssueStatus:
type: integer
description: Digital issuance status.
effectiveDate:
type: string
description: Card effective date (YYYY-MM-DD).
emvChipProfile:
type: string
description: EMV chip profile code.
expirationDate:
type: string
description: Card expiration date (YYYY-MM-DD).
extraEmboss:
type: string
description: Extra embossing text.
fileUpdateManagerException:
type: integer
description: File update manager exception code.
imageRefDate:
type: string
description: Image reference date.
imageRefIssueCount:
type: integer
description: Image reference issue count.
imageRefNumber:
type: string
description: Image reference number.
instantIssue:
type: integer
description: Instant issue flag.
issueCode:
type: integer
description: Issue code.
issueDate:
type: string
description: Date the card was issued (YYYY-MM-DD).
lastAddrChgDate:
type: string
description: Date the card address was last changed.
limitAmount:
type: string
description: Overall limit amount.
limitDays:
type: integer
description: Limit period in days.
locId:
type: string
description: Line of credit ID.
miscAmount:
type: string
description: Current miscellaneous amount.
miscCount:
type: integer
description: Current miscellaneous count.
miscCountLimit:
type: integer
description: Miscellaneous count limit.
miscLimit:
type: string
description: Miscellaneous limit amount.
nameType:
type: integer
description: Name type code.
onlineCardIssue:
type: integer
description: Online card issue flag.
onlineRushIssue:
type: integer
description: Online rush issue flag.
posAmount:
type: string
description: Current POS amount.
posCount:
type: integer
description: Current POS count.
posCountLimit:
type: integer
description: POS count limit.
posLimit:
type: string
description: POS limit amount.
posTempLimit:
type: string
description: Temporary POS limit amount.
prevActivationDate:
type: string
description: Previous card activation date.
reclassCode:
type: string
description: Reclassification code.
reissueCode:
type: integer
description: Reissue code.
reissueMonths:
type: integer
description: Months between automatic reissues.
savId:
type: string
description: Savings account ID linked to the card.
singleUsageMax:
type: string
description: Single transaction maximum amount.
status:
type: integer
description: Card status code.
statusReason:
type: integer
description: Reason for the current card status.
suffix:
type: string
description: Card suffix.
tempLimitEndDate:
type: string
description: Temporary limit end date (YYYY-MM-DD).
tempLimitStartDate:
type: string
description: Temporary limit start date (YYYY-MM-DD).
type:
type: integer
description: Card type code.
usageAmount:
type: string
description: Current usage amount.
usageDate:
type: string
description: Usage date.
usageLimit:
type: string
description: Usage limit amount.
wdCheckAmount:
type: string
description: Current withdrawal/check amount.
wdCheckCount:
type: integer
description: Current withdrawal/check count.
wdCheckCountLimit:
type: integer
description: Withdrawal/check count limit.
wdCheckLimit:
type: string
description: Withdrawal/check limit amount.
wdCheckMax:
type: string
description: Withdrawal/check maximum amount.
xferAmount:
type: string
description: Current transfer amount.
xferCount:
type: integer
description: Current transfer count.
xferCountLimit:
type: integer
description: Transfer count limit.
xferLimit:
type: string
description: Transfer limit amount.
xferMax:
type: string
description: Transfer maximum amount.
responses:
'200':
description: Card updated successfully
'400':
description: Bad request — missing required fields
content:
application/problem+json:
schema:
type: object
required:
- type
- title
- details
properties:
type:
description: A string path which uniquely classifies the domain of the error.
type: string
nullable: false
example: jackhenry/operation-failed
title:
description: A end-user readable string title of the error type.
nullable: false
type: string
details:
description: An array of end-user readable strings which provide additional details for the error message.
type: array
nullable: false
items:
type: string
data:
type: object
description: |
Additional data that could be useful to a developer or for handing the error programmatically. The schema for the data in this object is intentionally left undefined.
nullable: true
'401':
description: Although the HTTP standard specifies "unauthorized", semantically this response means "unauthenticated". That is, the client must authenticate itself to get the requested response.
'403':
description: The client does not have access rights to the content; that is, it is unauthorized, so the server is refusing to give the requested resource. Unlike 401, the clients identity is known to the server.
'500':
description: An unexpected internal server error occurred while processing the request.
content:
application/problem+json:
schema:
type: object
required:
- type
- title
- details
properties:
type:
description: A string path which uniquely classifies the domain of the error.
type: string
nullable: false
example: jackhenry/operation-failed
title:
description: A end-user readable string title of the error type.
nullable: false
type: string
details:
description: An array of end-user readable strings which provide additional details for the error message.
type: array
nullable: false
items:
type: string
data:
type: object
description: |
Additional data that could be useful to a developer or for handing the error programmatically. The schema for the data in this object is intentionally left undefined.
nullable: true
examples:
internalServerError:
summary: Internal server error
value:
type: general/internal-server-error
title: Internal server error
details:
- Unexpected internal server error
Did this page help you?
Why was this page helpful?
Why wasn't this page helpful?
Thank you for your feedback!
Last updated Tue Sep 15 2026