openapi: 3.2.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 Get Notifications API
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
servers:
- url: https://tts.apib2b.citi.com
description: Base URL for the API
tags:
- name: Get Notifications
description: Operations for retrieving VCA transaction notifications
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:
| Code | Details |
|
| TransactionResponse | OK |
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:
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
'404':
description:
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorMessage'
'500':
description: | Error-500 | Internal Server Error |
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorMessage'
components:
schemas:
BillingAmount:
properties:
billingCurrencyAmount:
description: Specifies the value of the transaction amount which is converted to the cardholder's billling currency, excluding cardholder billing fees.
type: string
example: '123.45'
maxLength: 12
billingCurrencyCode:
description: Specifies the ISO currency code of accounts that was initially set up for billing the transactions
type: string
example: '840'
maxLength: 3
required:
- billingCurrencyAmount
- billingCurrencyCode
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
ReplacementAmounts:
properties:
transactionCurrencyAmount:
description: Replacement Amounts - corrected transaction amounts for a reversal. Values must be zero or not present for a full reversal, corrected amount for a partial reversal. Indicates the actual transaction amount.
12, Upto 4 decimal (depends on currency exponent)
type: string
format: string
example: '100.00'
maxLength: 12
settlementCurrencyAmount:
description: Indicates the actual settlement amount in the settlement currency.
12, Upto 4 decimal (depends on currency exponent)
type: string
format: string
example: '100.00'
maxLength: 12
billingCurrencyAmount:
description: The actual amount in the issuer currency.
12, Upto 4 decimal (depends on currency exponent)
type: string
format: string
example: '100.00'
maxLength: 12
FundingAccount:
properties:
accountNumber:
description: Account number of the real card. The value is masked and only last four digits are visible
type: string
example: '************7890'
maxLength: 19
required:
- accountNumber
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:- PAYMENT_AUTHORIZATION
- CLEARING
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
VirtualCardDetails:
properties:
virtualCardAccountNumber:
description: 'The virtual card account number associated to the PAN that was used for the transaction
Mastercard: The virtual card account number is masked with only the last 4 digits
Max legnth - MC :19'
type: string
example: '************4586'
maxLength: 19
required:
- virtualCardAccountNumber
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:- '1240' - Presentment
- '1442' - Chargeback
- '1644' - Administrative
- '1740' - Fee Collection
type: string
example: '1442'
maxLength: 4
transactionType:
description: Specifies the type of transaction
Possible Values- First Presentment
- Second Presentment (Full)
- Second Presentment (Partial)
- First Chargeback (Full)
- Arbitration Chargeback (Full)
- First Chargeback (Partial)
- Arbitration Chargeback (Partial)
type: string
example: First Presentment
maxLength: 50
messageReasonCode:
description: Four-digit data element that indicates the reason for sending a message
type: string
example: '1401'
maxLength: 4
originalMessageTransactionId:
description: Original transaction ID indicates the transaction ID that was in the original message.
type: string
example: '127'
maxLength: 50
transactionExchangeRate:
description: Currency exchange from transaction curency to cardholder billing curency.
type: string
example: '23.23'
minLength: 1
maxLength: 7
authorizationCode:
description: Transaction response ID assigned by the authorizing institution for Authorization transactions
type: string
example: '111111'
maxLength: 50
transactionDateTime:
description: The date and timestamp the transaction ocurred at the card acceptor location.
Format
ISO Date Time format “yyyy-MM-dd HH:mm:ss”
type: string
example: '2020-07-16 11:09:42'
maxLength: 28
settlementAmount:
$ref: '#/components/schemas/SettlementAmount'
reversalIndicator:
description: Flag which indicates the Reversal of a clearing. Supported values are true if this is a reversal, false otherwise.
type: boolean
example: false
settledIndicator:
description: 'Flag which indicates whether the transaction is settled or unsettled with an associated cleared transaction record.
Possible values:
''True'' is transaction is settled
''False'' is transaction is unsettled'
type: boolean
example: true
originalOrLinked:
description: Determines if it is an Original or linked transaction.
Possible values
'O' - Original
'L' - Linked
type: string
example: L
maxLength: 1
settlementDate:
description: Specifies the Settlement date. Represented in ISO Date Time format 'yyyy-MM-dd HH:mm:ss'. Defaults to System Date if not written by Settlement Process in Mastercard Incontrol platfrom.
type: string
example: '2019-07-03 11:09:42'
banknetReferenceNumber:
description: Banknet Reference Number is generated by the Authorization Platform for each originating message it routes. The reference number is guaranteed to be a unique value for any transaction within the specified financial network on any processing day.
type: string
example: 4977D7
billingCurrencyAmount:
$ref: '#/components/schemas/BillingCurrencyAmount'
authorization:
$ref: '#/components/schemas/Authorization'
virtualCardAccount:
$ref: '#/components/schemas/VirtualCardAccount'
fundingAccount:
$ref: '#/components/schemas/FundingAccount'
merchant:
$ref: '#/components/schemas/Merchant'
virtualCard:
$ref: '#/components/schemas/VirtualCard'
required:
- clearingTransactionId
- clearingType
- acquirerReferenceData
- functionCode
- messageTypeIndicator
- transactionType
- messageReasonCode
- transactionExchangeRate
- authorizationCode
- settlementAmount
- reversalIndicator
- settledIndicator
- originalOrLinked
- settlementDate
- banknetReferenceNumber
- billingCurrencyAmount
- authorization
- virtualCard
BillingCurrencyAmount:
properties:
amount:
description: Specifies the value of the transaction amount which is converted to the cardholder's billling currency, excluding cardholder billing fees.
type: string
example: '123.45'
maxLength: 12
currencyCode:
description: Specifies the ISO currency code of accounts that was initially set up for billing the transactions
type: string
example: '840'
maxLength: 3
currencyCodeAlphabetic:
description: Indicates the currency name of the transaction amount in the issuer’s currency
type: string
example: USD
maxLength: 3
required:
- amount
- currencyCode
- currencyCodeAlphabetic
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'
ClearingMerchant:
properties:
merchantCategoryCode:
description: The category under which the merchant is been assigned by the network
type: string
example: '0041'
maxLength: 4
mccDescription:
description: The decsription of the category on which merchant has been assigned by the card network
type: string
example: GAMBLING TRANSACTIONS
maxLength: 200
merchantId:
description: The ID created for a specific merchant by the card network
type: string
example: '305678'
maxLength: 50
terminalId:
description: The ID under which the terminal has been categorised
type: string
example: '98123456'
maxLength: 50
merchantName:
description: The merchant name that corresponds to merchant id defined by the card netwrok
type: string
example: AUTH_TEST
maxLength: 200
additionalMerchantName:
description: Alternate Card Acceptor Description Data may provide a local language version of the data using a non-standard character set
type: string
example: GAMBLING TRANSACTIONS PVT LTD
maxLength: 200
retrievalReferenceNumber:
description: Specifies the Terminal transaction Number in a number format
type: string
example: '123456'
maxLength: 50
merchantStreetAddress:
description: Specifies the address of the merchant
type: string
example: 123 THE DRIVE
maxLength: 200
merchantCity:
description: Merchant city
type: string
example: New York
maxLength: 100
merchantState:
description: Alphabetic code for the Merchant state
type: string
example: CA
maxLength: 3
merchantPostalCode:
description: Postal code for merchant address
type: string
example: '90213'
maxLength: 50
merchantCountryCode:
description: 3 digit country code for the merchant country
type: string
example: USA
maxLength: 3
merchantCountryCodeDescription:
description: Merchant country name
type: string
example: United States
maxLength: 200
transactionCurrencyAmount:
$ref: '#/components/schemas/TransactionCurrencyAmount'
required:
- merchantCategoryCode
- mccDescription
- merchantId
- terminalId
- merchantName
- retrievalReferenceNumber
- merchantStreetAddress
- merchantCity
- merchantCountryCode
RealCardDetails:
properties:
accountNumber:
description: Account number of the real card
Account number is masked with only the last 4 digits
type: string
example: '************0112'
maxLength: 16
required:
- accountNumber
SettlementAmount:
properties:
amount:
description: Specifies the amount of funds to be transferred between the acquirer and the issuer in the settlement currency.
type: string
example: '123.45'
maxLength: 12
currencyCode:
description: Specifies the currency code of funds to be transferred between the acquirer and the issuer.
type: string
example: '840'
currencyCodeAlphabetic:
description: Specifies the currency name of funds to be transferred between the acquirer and the issuer.
type: string
example: USD
required:
- amount
- currencyCode
- currencyCodeAlphabetic
OriginalMessage:
properties:
messageTypeIndicator:
description: The data elements in the original message, intended to identify a transaction for correction or reversal.
Original Message Type Identifier indicates the Message Type Identifier (MTI) of the original message.
Possible Values
"0110" - Authorization Request Response
"0120" - Authorization Advice
"0400" - Reversal (full or partial)
"0420" - Reversal Response (full or partial)
type: string
example: '0110'
maxLength: 4
transactionId:
description: Original transaction ID indicates the transaction ID that was in the original message.
type: string
example: '1234539320977930'
maxLength: 50
transactionDate:
description: The date of the transaction that was initiated
YYYY-MM-DD (ISO-8601)
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: 06:11:33
maxLength: 8
PurchaseRequest:
properties:
vcaId:
description: A reference number that uniquely identifies the virtual card account.
type: string
format: string
example: '94840311'
maxLength: 19
fundingSourceName:
description: Name of the funding source to which the virtual card rolls up.
type: string
example: Bank VCA Funding Acount
maxLength: 200
programId:
description: Unique ID of the company record defined in the virtual cards system.
type: string
format: string
example: '701089'
maxLength: 19
required:
- vcaId
- fundingSourceName
- programId
TransactionCurrencyAmount:
properties:
amount:
description: Specifies the value of the transaction amount in the local currency of the merchant or acquirer of the transaction
type: string
example: '123.45'
maxLength: 12
currencyCode:
description: Specifies the ISO currency code of the local currency of the merchant or acquirer of the transaction
type: string
example: '840'
maxLength: 3
currencyCodeAlphabetic:
description: Indicates the currency name local currency of the merchant or acquirer of the transaction
type: string
example: USD
maxLength: 3
required:
- amount
- currencyCode
- currencyCodeAlphabetic
AuthMerchant:
properties:
merchantId:
description: The ID created for a specific merchant by the card network
type: string
example: '305678'
maxLength: 50
merchantCategoryCode:
description: The category under which the merchant is been assigned by the network
type: string
example: '0041'
maxLength: 4
merchantName:
description: The merchant name that corresponds to merchant id defined by the card netwrok
type: string
example: AUTH_TEST
maxLength: 200
merchantCity:
description: Merchant city
type: string
example: New York
maxLength: 100
merchantState:
description: Alphabetic code for the Merchant state
type: string
example: CA
maxLength: 3
merchantCountryCode:
description: 3 digit country code for the merchant country
type: string
example: USA
maxLength: 3
required:
- merchantId
- merchantCategoryCode
- merchantName
- merchantCity
- merchantState
- merchantCountryCode
additionalProperties: false
InControlOnBehalfServiceResult:
properties:
vcaAuthorizationResponseDetail:
description: 'Authorization status/reason description from Networks Payment Control
MC: 100
Possbile Values
Mastercard
A - Virtual Card Number expiration date does not match
B - Virtual Card Number expiration date expired
C - Virtual Card Number Virtual CVC 2 does not match
D - In Control Validity Period Limit
E - In Control Transaction Amount Limit Check
F - In Control Cumulative Amount Limit Check
G - In Control Transaction Number Usage
H - In Control Merchant ID Limit
I - In Control Invalid Virtual Card Number Real Card Number mapping relationship
J - In Control MCC Limit
K - In Control Database Status Bad
L - In Control Geographic Restriction
M - In Control Transaction Type Restriction
P - In Control Transaction Time/Date Restriction
U - Unable to process
V - Valid (all controls passed)'
type: string
example: V - Valid (all controls passed)
maxLength: 100
required:
- vcaAuthorizationResponseDetail
ErrorMessage:
properties:
errorCode:
description: desc
type: string
enum:
- EVB0750
- EVB0751
- EVB0752
- EVB0756
- EVB0753
- EVB0754
- EVB0755
- EVB0757
- EVB0758
- EVB0759
- EVB0700
- GRC003
- EVB0760
- EVB0761
- EVB0762
- GRC0004
- GRC0016
- GRC0010
- GRC0005
errorDescription:
description: "The error description that corresponds to error code when there is any
error occurred while retrieving the trsansaction.
* `EVB0750` - start date is mandatory
* `EVB0751` - start date should be in ISO 8601 format
* `EVB0752` - start date should be before end date
* `EVB0756` - start date should be in the past
* `EVB0753` - end date is mandatory
* `EVB0754` - end date should be in ISO 8601 format
* `EVB0755` - end date should be after start date
* `EVB0757` - end date should be in the past
* `EVB0758` - pushStatus field is invalid and can only have pending, delivered, failed or combination of comma separated values
* `EVB0759` - subscriptionName length should contain a min of 1 character and a max of 50 characters or combination of comma separated subscription names
\t\t\t * `EVB0760` - Invalid offset value. Offset must be a numeric value between 0 and 999,999,999
\t\t\t * `EVB0761` - Invalid limit value. limit must be between 1 and 100
* `EVB0700` - subscriptionName is Mandatory
* `EVB0762` - eventType field is invalid and can only have one of the following values:'PAYMENT_AUTHORIZATION','CLEARING'
* `GRC003` - Invalid JSON input
* `GRC0004` - Region ID is not available in the request
* `GRC0016` - Country code is not available in the request
* `GRC0010` - Client Tracking ID length should contain a min of 1 character and a max of 36 characters
* `GRC0005` - Client Tracking ID is missing in the request header"
type: string
required:
- errorCode
- errorDescription
ErrorResponse:
properties:
errors:
type: array
items:
$ref: '#/components/schemas/ErrorMessage'
VirtualCard:
properties:
vcaId:
description: 'A reference number that uniquely identifies the virtual card account. '
type: string
example: '5213'
maxLength: 19
fundingSourceName:
description: Name of the funding source to which the virtual card rolls up.
type: string
example: Bank VCA Funding Acount
maxLength: 200
programId:
description: Unique ID of the company record defined in the virtual cards system.
type: string
format: string
example: '701089'
maxLength: 19
required:
- vcaId
Merchant:
type: object
oneOf:
- $ref: '#/components/schemas/AuthMerchant'
- $ref: '#/components/schemas/ClearingMerchant'
Authorization:
properties:
authorizationTransactionId:
description: Specifies the Authorization Transaction ID used for matching.
type: string
example: '2450'
systemTraceAuditNumber:
description: Systems Trace Audit Number (STAN) is a number a message initiator assigns to uniquely identify a transaction.
type: string
example: '2450'
type:
description: Indicates the type of transaction.
Possible Values- '0' - Auth
- '1' - Advice
- '2' - Reversal
- '3' - Reversal advice
- '4' - Offline Auth
- '5' - Offline purchase return
- '6' = Reserved for use internal to the Mastercard ICCP platform
- '7' = Reserved for use internal to the Mastercard ICCP platform
- '8' = Offline Auth for purchase return
type: string
example: '0'
maxLength: 1
merchantLocalDate:
description: Transaction local date (month and day) in the format of MMDD on which the transaction takes place at the point of card acceptor location. This date is represneted in local time zone units, not in UTC time zone.
type: string
example: 0912
maxLength: 4
merchantLocalTime:
description: Transaction local time at which the transaction takes place at the point of card acceptor location. Time is repreented in local time zone units, not in UTC time zone.
type: string
example: '175603'
maxLength: 6
messageTypeIndicator:
description: Message Type Identifier.
Possible values:
'0100' - Authorization
'0120' - Authorization Advice
'0400' - Reversal (full or partial)
'0420' - Reversal advice (full or partial)
type: string
example: '0420'
maxLength: 4
billingCurrencyAmount:
$ref: '#/components/schemas/BillingCurrencyAmount'
effectOnBalance:
description: 'This value will be same as the billing currency amount in event of a Partial Replacement. In Partial replacement the actual billing currency amount will replace the billing currency amount '
type: string
example: '75'
transactionCurrencyAmount:
$ref: '#/components/schemas/TransactionCurrencyAmount'
required:
- authorizationTransactionId
- systemTraceAuditNumber
- type
- merchantLocalDate
- messageTypeIndicator
- billingCurrencyAmount
NotificationResponse:
properties:
eventType:
description: The event type for which the client wants the notifications
Possible Values:- PAYMENT_AUTHORIZATION
- CLEARING
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'
VirtualCardAccount:
properties:
virtualCardAccountNumber:
description: The virtual card account number associated to the PAN that was used for the transaction
type: string
example: '************7890'
maxLength: 19
required:
- virtualCardAccountNumber
TransactionContent:
type: object
oneOf:
- $ref: '#/components/schemas/ClearingTransactionContent'
- $ref: '#/components/schemas/AuthTransactionContent'
TransactionAmount:
properties:
transactionCurrencyAmount:
description: Specifies the value of the transaction amount in the local currency of the merchant or acquirer of the transaction
type: string
example: '123.45'
maxLength: 12
transactionCurrencyCode:
description: Specifies the ISO currency code of the local currency of the merchant or acquirer of the transaction
type: string
example: '840'
maxLength: 3
required:
- transactionCurrencyAmount
- transactionCurrencyCode
examples:
ClearingTransactionResponseForcePostExample:
value:
count: 1
offset: 0
limit: 50
total: 1
notifications:
- eventType: CLEARING
subscriptionName: string
pushStatus: string
createdTimestamp: '2024-06-02T00:52:11.268Z'
transactionContent:
clearingTransactionId: '900001'
clearingType: Debit
acquirerReferenceData: '25502590195480000239999'
functionCode: '200'
messageTypeIndicator: '1240'
transactionType: First Presentment
messageReasonCode: ''
originalMessageTransactionId: '123456'
transactionExchangeRate: '14.5'
authorizationCode: ''
transactionDateTime: '2024-05-23 01:05:50'
settlementAmount:
amount: '12.3'
currencyCode: '840'
currencyCodeAlphabetic: USD
reversalIndicator: false
settledIndicator: false
originalOrLinked: O
settlementDate: '2024-05-23 01:05:50'
banknetReferenceNumber: '1234'
billingCurrencyAmount:
amount: '41.2'
currencyCode: '840'
currencyCodeAlphabetic: USD
authorization:
authorizationTransactionId: '567890'
systemTraceAuditNumber: '1234'
type: '0'
merchantLocalDate: ''
merchantLocalTime: ''
messageTypeIndicator: '1240'
billingCurrencyAmount:
amount: '123.2'
currencyCode: '840'
currencyCodeAlphabetic: USD
effectOnBalance: '1'
transactionCurrencyAmount:
amount: '21'
currencyCode: '840'
currencyCodeAlphabetic: USD
virtualCardAccount:
virtualCardAccountNumber: '***************1878'
fundingAccount:
accountNumber: '***************2222'
merchant:
merchantCategoryCode: '1711'
mccDescription: HEATING, PLUMBING, AIR CONDITIONING CONTRACTORS
merchantId: '520009999999'
terminalId: 01999999
merchantName: sample name
additionalMerchantName: SAMPLE MERCHANT
retrievalReferenceNumber: '123'
merchantStreetAddress: Wheel street
merchantCity: dublin
merchantState: dub
merchantPostalCode: '432531'
merchantCountryCode: '840'
merchantCountryCodeDescription: XXX
transactionCurrencyAmount:
amount: '14.1'
currencyCode: '840'
currencyCodeAlphabetic: USD
virtualCard:
vcaId: '7022463'
fundingSourceName: test
programId: '498764'
ClearingTransactionResponsePresentmentExample:
value:
count: 1
offset: 0
limit: 50
total: 1
notifications:
- eventType: CLEARING
subscriptionName: string
pushStatus: string
createdTimestamp: '2024-06-02T00:52:11.268Z'
transactionContent:
clearingTransactionId: '900001'
clearingType: Debit
acquirerReferenceData: '25502590195480000239999'
functionCode: '200'
messageTypeIndicator: '1240'
transactionType: First Presentment
messageReasonCode: '1401'
originalMessageTransactionId: '123456'
transactionExchangeRate: '14.5'
authorizationCode: '123'
transactionDateTime: '2024-05-23 01:05:50'
settlementAmount:
amount: '12.3'
currencyCode: '840'
currencyCodeAlphabetic: USD
reversalIndicator: false
settledIndicator: true
originalOrLinked: O
settlementDate: '2024-05-23 01:05:50'
banknetReferenceNumber: '1234'
billingCurrencyAmount:
amount: '41.2'
currencyCode: '840'
currencyCodeAlphabetic: USD
authorization:
authorizationTransactionId: '567890'
systemTraceAuditNumber: '1234'
type: '0'
merchantLocalDate: ''
merchantLocalTime: ''
messageTypeIndicator: '1240'
billingCurrencyAmount:
amount: '123.2'
currencyCode: '840'
currencyCodeAlphabetic: USD
effectOnBalance: '1'
transactionCurrencyAmount:
amount: '21'
currencyCode: '840'
currencyCodeAlphabetic: USD
virtualCardAccount:
virtualCardAccountNumber: '***************1878'
fundingAccount:
accountNumber: '***************2222'
merchant:
merchantCategoryCode: '1711'
mccDescription: HEATING, PLUMBING, AIR CONDITIONING CONTRACTORS
merchantId: '520009999999'
terminalId: 01999999
merchantName: sample name
additionalMerchantName: SAMPLE MERCHANT
retrievalReferenceNumber: '123'
merchantStreetAddress: Wheel street
merchantCity: dublin
merchantState: dub
merchantPostalCode: '432531'
merchantCountryCode: '840'
merchantCountryCodeDescription: XXX
transactionCurrencyAmount:
amount: '14.1'
currencyCode: '840'
currencyCodeAlphabetic: USD
virtualCard:
vcaId: '7022463'
fundingSourceName: test
programId: '498764'
ClearingTransactionResponseCreditAdjustmentExample:
value:
count: 1
offset: 0
limit: 50
total: 1
notifications:
- eventType: CLEARING
subscriptionName: string
pushStatus: string
createdTimestamp: '2024-04-02T00:52:11.268Z'
transactionContent:
clearingTransactionId: '900001'
clearingType: Credit
acquirerReferenceData: '25502590195480000239999'
functionCode: '205'
messageTypeIndicator: '1240'
transactionType: Second Presentment
messageReasonCode: '2011'
originalMessageTransactionId: '123456'
transactionExchangeRate: '14.5'
authorizationCode: '123'
transactionDateTime: '2024-05-23 01:05:50'
settlementAmount:
amount: '12.3'
currencyCode: '840'
currencyCodeAlphabetic: USD
reversalIndicator: true
settledIndicator: true
originalOrLinked: L
settlementDate: '2024-05-23 01:05:50'
banknetReferenceNumber: '1234'
billingCurrencyAmount:
amount: '41.2'
currencyCode: '840'
currencyCodeAlphabetic: USD
authorization:
authorizationTransactionId: '567890'
systemTraceAuditNumber: '1234'
type: '0'
merchantLocalDate: ''
merchantLocalTime: ''
messageTypeIndicator: '1240'
billingCurrencyAmount:
amount: '123.2'
currencyCode: '840'
currencyCodeAlphabetic: USD
effectOnBalance: '1'
transactionCurrencyAmount:
amount: '21'
currencyCode: '840'
currencyCodeAlphabetic: USD
virtualCardAccount:
virtualCardAccountNumber: '***************1878'
fundingAccount:
accountNumber: '***************2222'
merchant:
merchantCategoryCode: '1711'
mccDescription: HEATING, PLUMBING, AIR CONDITIONING CONTRACTORS
merchantId: '520009999999'
terminalId: 01999999
merchantName: sample name
additionalMerchantName: SAMPLE MERCHANT
retrievalReferenceNumber: '123'
merchantStreetAddress: Wheel street
merchantCity: dublin
merchantState: dub
merchantPostalCode: '432531'
merchantCountryCode: '840'
merchantCountryCodeDescription: XXX
transactionCurrencyAmount:
amount: '14.1'
currencyCode: '840'
currencyCodeAlphabetic: USD
virtualCard:
vcaId: '7022463'
fundingSourceName: test
programId: '498764'
ClearingTransactionResponseRefundExample:
value:
count: 1
offset: 0
limit: 50
total: 1
notifications:
- eventType: CLEARING
subscriptionName: string
pushStatus: string
createdTimestamp: '2026-01-13T00:52:11.268Z'
transactionContent:
clearingTransactionId: '900001'
clearingType: Credit
acquirerReferenceData: '25502590195480000239999'
functionCode: '453'
messageTypeIndicator: '1442'
transactionType: First Chargeback
messageReasonCode: '4837'
originalMessageTransactionId: '123456'
transactionExchangeRate: '1.0'
authorizationCode: '123'
transactionDateTime: '2026-01-10 00:00:00'
settlementAmount:
amount: '12.3'
currencyCode: '978'
currencyCodeAlphabetic: EUR
reversalIndicator: false
settledIndicator: true
originalOrLinked: L
settlementDate: '2026-01-11 01:40:17'
banknetReferenceNumber: '1234'
billingCurrencyAmount:
amount: '12.3'
currencyCode: '978'
currencyCodeAlphabetic: EUR
authorization:
authorizationTransactionId: '567890'
systemTraceAuditNumber: '1234614'
type: '0'
merchantLocalDate: 0109
merchantLocalTime: '151824'
messageTypeIndicator: '0100'
billingCurrencyAmount:
amount: '12.3'
currencyCode: '978'
currencyCodeAlphabetic: EUR
effectOnBalance: '12.3'
transactionCurrencyAmount:
amount: '12.3'
currencyCode: '978'
currencyCodeAlphabetic: EUR
virtualCardAccount:
virtualCardAccountNumber: '***************1878'
fundingAccount:
accountNumber: '***************2222'
merchant:
merchantCategoryCode: '1711'
mccDescription: HEATING, PLUMBING, AIR CONDITIONING CONTRACTORS
merchantId: '520009999999'
terminalId: 01999999
merchantName: All Source HVAC
additionalMerchantName: SAMPLE MERCHANT
retrievalReferenceNumber: '123667'
merchantStreetAddress: Wheel street
merchantCity: DUBLIN
merchantState: LEN
merchantPostalCode: D01 F5P2
merchantCountryCode: '372'
merchantCountryCodeDescription: Ireland
transactionCurrencyAmount:
amount: '12.3'
currencyCode: '978'
currencyCodeAlphabetic: EUR
virtualCard:
vcaId: '7022463'
fundingSourceName: test
programId: '498764'
ClearingTransactionResponseDebitAdjustmentExample:
value:
count: 1
offset: 0
limit: 50
total: 1
notifications:
- eventType: CLEARING
subscriptionName: string
pushStatus: string
createdTimestamp: '2024-04-02T00:52:11.268Z'
transactionContent:
clearingTransactionId: '900001'
clearingType: Debit
acquirerReferenceData: '25502590195480000239999'
functionCode: '205'
messageTypeIndicator: '1240'
transactionType: Second Presentment
messageReasonCode: '2011'
originalMessageTransactionId: '123456'
transactionExchangeRate: '14.5'
authorizationCode: '123'
transactionDateTime: '2024-05-23 01:05:50'
settlementAmount:
amount: '12.3'
currencyCode: '840'
currencyCodeAlphabetic: USD
reversalIndicator: true
settledIndicator: true
originalOrLinked: L
settlementDate: '2024-05-23 01:05:50'
banknetReferenceNumber: '1234'
billingCurrencyAmount:
amount: '41.2'
currencyCode: '840'
currencyCodeAlphabetic: USD
authorization:
authorizationTransactionId: '567890'
systemTraceAuditNumber: '1234'
type: '0'
merchantLocalDate: ''
merchantLocalTime: ''
messageTypeIndicator: '1240'
billingCurrencyAmount:
amount: '123.2'
currencyCode: '840'
currencyCodeAlphabetic: USD
effectOnBalance: '1'
transactionCurrencyAmount:
amount: '21'
currencyCode: '840'
currencyCodeAlphabetic: USD
virtualCardAccount:
virtualCardAccountNumber: '***************1878'
fundingAccount:
accountNumber: '***************2222'
merchant:
merchantCategoryCode: '1711'
mccDescription: HEATING, PLUMBING, AIR CONDITIONING CONTRACTORS
merchantId: '520009999999'
terminalId: 01999999
merchantName: sample name
additionalMerchantName: SAMPLE MERCHANT
retrievalReferenceNumber: '123'
merchantStreetAddress: Wheel street
merchantCity: dublin
merchantState: dub
merchantPostalCode: '432531'
merchantCountryCode: '840'
merchantCountryCodeDescription: XXX
transactionCurrencyAmount:
amount: '14.1'
currencyCode: '840'
currencyCodeAlphabetic: USD
virtualCard:
vcaId: '7022463'
fundingSourceName: test
programId: '498764'
AuthorizationTransactionResponseExample:
value:
count: 1
offset: 0
limit: 50
total: 1
notifications:
- eventType: PAYMENT_AUTHORIZATION
subscriptionName: string
pushStatus: string
createdTimestamp: '2022-03-02T00:52:11.268Z'
transactionContent:
messageTypeIndicator: '0110'
transactionId: '1234539320977930'
transactionAmount:
transactionCurrencyAmount: '123.45'
transactionCurrencyCode: '840'
billingAmount:
billingCurrencyAmount: '123.45'
billingCurrencyCode: '840'
authorizationResponseDetail: string
authorizationCode: ''
transactionDate: '2021-05-25'
transactionTime: hh:mm:ss
transactionType: ''
preAuthorizationFlag: 'Yes'
merchant:
merchantId: '305678'
merchantCategoryCode: '0041'
merchantName: AUTH_TEST
merchantCity: New York
merchantState: CA
merchantCountryCode: USA
realCardDetails:
accountNumber: '************0112'
virtualCardDetails:
virtualCardAccountNumber: '************4586'
inControlOnBehalfServiceResult:
vcaAuthorizationResponseDetail: V - Valid (all controls passed)
originalMessage:
messageTypeIndicator: '0110'
transactionId: '1234539320977930'
transactionDate: '2021-05-25'
transactionTime: 06:11:33
adviceReasonCode: string
replacementAmounts:
transactionCurrencyAmount: '100.00'
settlementCurrencyAmount: '100.00'
billingCurrencyAmount: '100.00'
purchaseRequest:
vcaId: '94840311'
fundingSourceName: Bank VCA Funding Acount
programId: '701089'
acquirerIdentifier: ''
securitySchemes:
ClientCredentials:
type: oauth2
description: ''
flows:
clientCredentials:
tokenUrl: https://tts.apib2b.citi.com/tts/api/v1/oauth2/token
scopes:
/api: ''