openapi: 3.0.0 info: description: >- The Notifications API allows client to retrieve notifications for specific subscriptions and paginate the response using offset and limit parameters. version: 2.0.0 title: vca events notifications x-ibm-name: vca-events-notifications contact: name: GLOBAL Commercial Cards API Production support email: >- dl.icg.global.commercial.cards.digital.production.support@imcap.ap.ssmb.com tags: - name: Get Notifications description: Operations for retrieving VCA transaction notifications servers: - url: https://tts.apib2b.citi.com description: Base URL for the API paths: /tts/cards/vca/v2/events/notifications: post: summary: Get Notification description: VCA clients can pull the notifications from the master card network. operationId: getNotification tags: - Get Notifications parameters: - name: Authorization in: header description: Bearer token obtained from the OAuth2 Client Credentials flow schema: type: string required: true - name: Region in: header description: '' schema: type: string required: true - name: Country in: header description: '' schema: type: string required: true - name: Req-sys-id in: header description: '' schema: type: string required: true requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/TransactionRequest' responses: '200': description: >-
CodeDetails
TransactionResponseOK
content: application/json: schema: $ref: '#/components/schemas/TransactionResponse' examples: Authorization Transaction Response: $ref: >- #/components/examples/AuthorizationTransactionResponseExample Clearing Transaction Presentment Response: $ref: >- #/components/examples/ClearingTransactionResponsePresentmentExample Clearing Transaction Credit Adjustment Response: $ref: >- #/components/examples/ClearingTransactionResponseCreditAdjustmentExample Clearing Transaction Debit Adjustment Response: $ref: >- #/components/examples/ClearingTransactionResponseDebitAdjustmentExample Clearing Transaction Debit Refund Response: $ref: >- #/components/examples/ClearingTransactionResponseRefundExample Clearing Transaction Force Post Response: $ref: >- #/components/examples/ClearingTransactionResponseForcePostExample '400': description:
ErrorBad Request
content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' '404': description:
ErrorNot Found
content: application/json: schema: $ref: '#/components/schemas/ErrorMessage' '500': description: >-
Error-500Internal Server Error
content: application/json: schema: $ref: '#/components/schemas/ErrorMessage' components: securitySchemes: ClientCredentials: type: oauth2 description: '' flows: clientCredentials: tokenUrl: https://tts.apib2b.citi.com/tts/api/v1/oauth2/token scopes: /api: '' schemas: TransactionRequest: properties: start: description: >- Specify an end date and time to retrieve notifications generated up to this date from the start date specified.
Must be in UTC and formatted according to the ISO 8601.
This value is inclusive.
Must be in the past.
Must be after the start date type: string example: '2019-01-30T09:00:00.000Z' end: description: >- Specify an end date and time to retrieve notifications generated up to this date from the start date specified.
Must be in UTC and formatted according to the ISO 8601.
This value is exclusive.
Must be in the past.
Must be after the start date type: string example: '2019-02-04T09:00:00.000Z' subscriptionName: description: >- Specify a subscription name to return notifications only for that subscription. Provide multiple values separated by commas. type: string maxLength: 50 minLength: 1 eventType: description: >- Client Allowed values are either 1 of the below:If not provided default to 'PAYMENT_AUTHORIZATION' type: string example: PAYMENT_AUTHORIZATION offset: description: >- The number of notifications to skip before selecting the notifications to return. The default value is zero, which selects the first subscription. type: integer limit: description: A maximum of 100 notifications can be returned in 1 response type: integer pushStatus: description: >- Specify a push status.

PENDING: The notification is in the process of being delivered.

DELIVERED: The service has pushed the notification to the push endpointsuccessfully.

FAILED: The service s attempts to deliver the notification have failed and nofuture deliveries will be performed. The notification is available via the pullapproach until its retention period expires.

Accepts multiple values separated by comma
If not included, notifications with the status at the time of retrieving will be returned. type: string required: - start - end - subscriptionName TransactionResponse: properties: count: description: The total number of notifications returned in a GET request. type: integer example: 1 offset: description: The offset value used in a GET request. type: integer example: 0 limit: description: The limit value used in a GET request. type: integer example: 50 total: description: >- The total number of notifications that fall within the scope of the GET request. This value may dynamically update in subsequent calls, to reflect new notifications or expired notifications type: integer example: 1 notifications: description: List of Notification requests type: array items: $ref: '#/components/schemas/NotificationResponse' NotificationResponse: properties: eventType: description: >- The event type for which the client wants the notifications
Possible Values: type: string example: PAYMENT_AUTHORIZATION maxLength: 100 subscriptionName: description: The subscription that created the notification. type: string maxLength: 50 minLength: 1 pushStatus: description: >- PENDING: The notification is in the process of being delivered.

DELIVERED: The service has pushed the notification to the push endpointsuccessfully.

FAILED: The service s attempts to deliver the notification have failed and nofuture deliveries will be performed. The notification is available via the pullapproach until its retention period expires. type: string createdTimestamp: description: >- Indicates the UTC date and time when the notification was created. This does not refer to the time when the event has occurred. type: string example: '2022-03-02T00:52:11.268Z' transactionContent: $ref: '#/components/schemas/TransactionContent' TransactionContent: type: object oneOf: - $ref: '#/components/schemas/ClearingTransactionContent' - $ref: '#/components/schemas/AuthTransactionContent' AuthTransactionContent: properties: messageTypeIndicator: description: >- Message Type Identifier
Possible values:
"0100" - Authorization
"0110" - Authorization Request Response
"0120" - Authorization Advice
"0400" - Reversal (full or partial)
"0410" - Reversal response
"0420" - Reversal advice (full or partial))
"0430" - Reversal advice response (full or partial) type: string example: '0110' maxLength: 4 transactionId: description: Unique identifier of the transaction type: string example: '1234539320977930' maxLength: 50 transactionAmount: $ref: '#/components/schemas/TransactionAmount' billingAmount: $ref: '#/components/schemas/BillingAmount' authorizationResponseDetail: description: >- Authorization Status/Reason Description from Issuer
Max legnth - MC: 100

Mastercard

00 - Approved or completed successfully
01 - Refer to card issuer
03 - Invalid merchant Decline
04 - Capture card Capture
05 - Do not honor
06 - Error
08 - Honor with ID
10 - Partial Approval
12 - Invalid transaction
13 - Invalid amount
14 - Invalid card number
15 - Invalid issuer
17 - Customer cancellation
30 - Format error
32 - Partial reversal
34 - Suspect Fraud
41 - Lost card
43 - Stolen card
51 - Insufficient funds/over credit limit
54 - Expired card
55 - Invalid PIN
57 - Transaction not permitted to issuer/cardholder
58 - Transaction not permitted to acquirer/terminal
61 - Exceeds withdrawal amount limit
62 - Restricted card
63 - Security violation
65 - Exceeds withdrawal count limit
68 - Response received late
70 - Contact Card Issuer
71 - PIN Not Changed
75 - Allowable number of PIN tries exceeded
76 - Invalid/nonexistent To Account specified
77 - Invalid/nonexistent From Account specified
78 - Invalid/nonexistent account specified (general)
81 - Domestic Debit Transaction Not Allowed
82 - Timeout at issuer
84 - Invalid Authorization Life Cycle
85 - Not declined Valid for all zero amount transactions.
86 - PIN Validation not possible
87 - Purchase Amount Only, No Cash Back Allowed
88 - Cryptographic failure
89 - Unacceptable PIN Transaction Declined Retry
91 - Authorization System or issuer system inoperative
92 - Unable to route transaction
94 - Duplicate transmission detected
96 - System error type: string maxLength: 100 authorizationCode: description: >- Transaction response ID assigned by the authorizing institution for Authorization transactions type: string example: '' maxLength: 50 transactionDate: description: >- Masercard: Convert UTC date to format YYYY-MM-DD (ISO-8601) and enrich the YYYY value based on the current year type: string example: '2021-05-25' maxLength: 10 transactionTime: description: >- The time of the transaction that was initiated. hh:mm:ss (24 hours format) type: string example: hh:mm:ss maxLength: 8 transactionType: description: >- Specifies the nature of the transaction whether it was authorized or returned etc
Visa : 107 max length MC: 40 Max length type: string example: '' maxLength: 107 preAuthorizationFlag: description: >- Pre Authorization flag
Possible values: 'Yes' - When posTransactionStatus is 4 'No' - For all other values type: string example: 'Yes' merchant: $ref: '#/components/schemas/Merchant' realCardDetails: $ref: '#/components/schemas/RealCardDetails' virtualCardDetails: $ref: '#/components/schemas/VirtualCardDetails' inControlOnBehalfServiceResult: $ref: '#/components/schemas/InControlOnBehalfServiceResult' originalMessage: $ref: '#/components/schemas/OriginalMessage' adviceReasonCode: description: >- Advice Reason Code indicates to the receiver of an Advice message the specific reason for the transmission of the Advice message type: string format: string maxLength: 50 replacementAmounts: $ref: '#/components/schemas/ReplacementAmounts' purchaseRequest: $ref: '#/components/schemas/PurchaseRequest' acquirerIdentifier: description: The identifier under which the acquirer has been categorised type: string example: '' maxLength: 50 required: - messageTypeIndicator - transactionId - transactionAmount - billingAmount - authorizationResponseDetail - authorizationCode - transactionDate - transactionTime - transactionType - merchant - inControlOnBehalfServiceResult - originalMessage ClearingTransactionContent: properties: clearingTransactionId: description: Unique identifier of the transaction type: string example: '1234539320977930' maxLength: 50 clearingType: description: >- Specifies the type of transaction whether it is Credit or Debit.If Mastercard returns 'C', then GRACE returns 'Credit'If Mastercard returns 'D', then GRACE returns 'Debit' type: string example: C maxLength: 6 acquirerReferenceData: description: >- Data an acquirer supplies in an acquirer-originated message to an issuer type: string example: '382299507007100000000' maxLength: 23 functionCode: description: >- Three-digit data element that indicates the specific purpose of a message in a message class.Uniquely identifies all transaction functions the clearing system performs. type: string example: '200' maxLength: 3 messageTypeIndicator: description: >- Four-digit numeric field describing the type of message being interchanged.
Possible values: type: string example: '1442' maxLength: 4 transactionType: description: >- Specifies the type of transaction
Possible Values