swagger: '2.0' info: title: Mastercard Bill Payment Validator Account Opening Subscriptions API description: This service is provided on behalf of the Mastercard Remote Payment and Presentment (RPPS) Bill Payment Processing Network, which supports consumer to business "push" bill payments (i.e. those which are not funded by debit/credit card transactions) in the U.S. version: '1.0' x-artifactId: billpay-api contact: name: Bill Pay Development Support email: Bill_Pay_Development_Support@mastercard.com host: sandbox.api.mastercard.com basePath: /billpayAPI/v1 schemes: - https consumes: - application/json produces: - application/json tags: - name: Subscriptions paths: /subscriptions: post: summary: Creating subscriptions description: Create a subscription that will cause notifications to be generated for the specified events. tags: - Subscriptions operationId: createSubscription requestBody: $ref: '#/components/requestBodies/CreateSubscription' responses: '201': $ref: '#/components/responses/CreatedSubscription' '400': $ref: '#/components/responses/BadRequest' '403': $ref: '#/components/responses/Forbidden' callbacks: pushNotificationsMessage: to registered notification url: post: requestBody: description: Push Notifications message for subscribed events content: application/json: schema: type: array items: $ref: '#/components/schemas/notification' responses: '200': description: 'Your server implementation should return this HTTP status code if the data was received successfully ' get: summary: Retrieving subscriptions description: Retrieve the subscriptions defined for this client. tags: - Subscriptions operationId: getAllSubscriptions parameters: - $ref: '#/components/parameters/subscriptionsOffsetParam' - $ref: '#/components/parameters/subscriptionsLimitParam' - $ref: '#/components/parameters/sortParam' responses: '200': $ref: '#/components/responses/GetSubscription' '400': $ref: '#/components/responses/BadRequest' '403': $ref: '#/components/responses/Forbidden' /subscriptions/{id}: get: summary: Retrieving subscription by id description: Retrieve the details of a subscription. tags: - Subscriptions operationId: getSubscription parameters: - $ref: '#/components/parameters/subscriptionIdParam' responses: '200': $ref: '#/components/responses/GetSubscriptionsById' '403': $ref: '#/components/responses/Forbidden' '404': $ref: '#/components/responses/NotFound' put: summary: Updating subscription description: Update an existing subscription. tags: - Subscriptions operationId: updateSubscription parameters: - $ref: '#/components/parameters/subscriptionIdParam' requestBody: $ref: '#/components/requestBodies/UpdateSubscription' responses: '200': $ref: '#/components/responses/UpdatedSubscription' '400': $ref: '#/components/responses/BadRequest' '403': $ref: '#/components/responses/Forbidden' '404': $ref: '#/components/responses/NotFound' delete: summary: Deleting subscription description: Deletes a subscription, with the effect that no further notifications will be generated for that subscription. tags: - Subscriptions operationId: deleteSubscription parameters: - $ref: '#/components/parameters/subscriptionIdParam' responses: '204': description: No content, indicates that the subscription has been deleted successfully '403': $ref: '#/components/responses/Forbidden' '404': $ref: '#/components/responses/NotFound' /subscription-inquiries: post: summary: Mastercard Inquire on a Subscription to Determine if an Account Is Already Being Watched or Not. tags: - Subscriptions description: An inquiry request is used to check if an account is already being watched or not. Based on the response back, the ABU Integrator can choose to take action if necessary; to subscribe to watch an account or unsubscribe, to stop watching an account. operationId: subscriptionInquiry requestBody: $ref: '#/components/requestBodies/SubscriptionInquiryRequest' responses: '200': $ref: '#/components/responses/SubscriptionInquiryResponse' '400': $ref: '#/components/responses/BadRequestErrorResponse' '401': $ref: '#/components/responses/UnauthorizedErrorResponse' x-microcks-operation: delay: 0 dispatcher: FALLBACK /subscription-deletions: post: summary: Mastercard Unsubscribe From an Account to Stop Receiving Updates for Account Information in the Future. tags: - Subscriptions description: ABU Integrators can unsubscribe from an account to stop automatically receiving notifications with account information when updates occur. operationId: accountSubscriptionDeletion requestBody: $ref: '#/components/requestBodies/SubscriptionDeletionRequest' responses: '202': $ref: '#/components/responses/SubscriptionDeletionResponse' '400': $ref: '#/components/responses/BadRequestErrorResponse' '401': $ref: '#/components/responses/UnauthorizedErrorResponse' x-microcks-operation: delay: 0 dispatcher: FALLBACK components: examples: BPSPaymentUpdateUpdatedSubscriptionResponse: value: id: 0CNSee76a6d031ba2166fe83ed7203f74b52134758270d1339c995b3be6c68a918211718964283 name: TestSubscription_PaymentUpdateUpdated subjectType: PAYMENT_UPDATE subscriberId: C94BC2953D52DCE1E05368459E0ADF8E active: true specifications: [] CreateICMPLifecycleSubscription: value: name: TestSubscription_ICMPTokenLifeCycle subjectType: TOKEN_LIFECYCLE_EVENT active: true specifications: - type: FIELD operator: WHERE children: [] fieldMappingName: purchaseRequest.rcnAlias fieldOperator: EQUALS expectedContent: value: TEXT contentType: TEXT ICCPAuthorizationSubscriptionResponse: value: id: 0CNSf829c8c968765f86f51418c28d6b0430daa657174c3920a474890e540be5495d1718867617 name: TestSubscription_ICCPAuth subjectType: PAYMENT_AUTHORIZATION subscriberId: A49875790BBF5F19E0535B449E0A5014 active: true specifications: - id: 0CNSa6d4b038aa40e844f3e521e8062c242de051c72be96cbc206666ea467069e9401718867617 type: FIELD operator: WHERE children: [] fieldMapping: id: 0CNSa6d4a329d377bb296957df43e9f2f1ab5b35c997f88bcbc34939bc1525990be51556724071 name: virtualpaymentcard.number displayName: VirtualPaymentCard Number subjectType: PAYMENT_AUTHORIZATION contentType: TEXT fieldOperator: EQUALS expectedContent: value: '1234567890123456' contentType: TEXT CreateBPSPaymentUpdateSubscription: value: name: TestSubscription_ICCPPaymentUpdate subjectType: PAYMENT_UPDATE active: true specifications: [] UpdateICMPProvisioningSubscription: value: name: TestSubscription_ICMPTokenProvisioningUpdated subjectType: TOKEN_PROVISIONING_EVENT active: true specifications: - type: FIELD operator: WHERE children: [] fieldMappingName: purchaseRequest.rcnAlias fieldOperator: EQUALS expectedContent: value: TEXT contentType: TEXT UpdateICCPAuthorizationSubscription: value: name: TestSubscription_ICCPPaymentAuthorization_Updated subjectType: PAYMENT_AUTHORIZATION active: true specifications: - type: FIELD operator: WHERE children: - type: FIELD operator: AND fieldMappingName: purchaseRequest.rcnAlias fieldOperator: EQUALS expectedContent: value: Travel Expense RCN contentType: TEXT children: [] fieldMappingName: purchaseRequest.rcnAlias fieldOperator: EQUALS expectedContent: value: BOC contentType: TEXT ICMPLifecycleUpdatedSubscriptionResponse: value: id: 0CNSa56c4e01133b472a532678ab1e02b394de1886b3692eb42c99287ef10cffa59c1720083461 name: TestSubscription_ICMPTokenProvisioningUpdated subjectType: TOKEN_LIFECYCLE_EVENT subscriberId: A49875790BBF5F19E0535B449E0A5014 active: true specifications: - id: 0CNS63299c1c2fcd133327b88e12457b67333543ba4be3c1f77880b3fb99e25e31421720087279 type: FIELD operator: WHERE children: [] fieldMapping: id: 1AD42C3FCAF12726E06368459E0A9487 name: purchaseRequest.rcnAlias displayName: Purchase Request RCN Alias subjectType: TOKEN_LIFECYCLE_EVENT contentType: TEXT fieldOperator: EQUALS expectedContent: value: TEXT contentType: TEXT CreateBPCAuthorizationSubscription: value: name: TestSubscription_BPCPaymentAuthorization subjectType: BPC_PAYMENT_AUTHORIZATION active: true specifications: - type: FIELD operator: WHERE children: [] fieldMappingName: virtualPaymentCard.number fieldOperator: EQUALS expectedContent: value: '1234567890123456' contentType: TEXT CreateICCPAuthorizationSubscription: value: name: TestSubscription_ICCPPaymentAuthorization subjectType: PAYMENT_AUTHORIZATION active: true specifications: - type: FIELD operator: WHERE children: - type: FIELD operator: AND fieldMappingName: virtualPaymentCard.number fieldOperator: EQUALS expectedContent: value: '1234567890123456' contentType: TEXT children: [] fieldMappingName: purchaseRequest.rcnAlias fieldOperator: EQUALS expectedContent: value: BOC contentType: TEXT ICCPAuthorizationUpdatedSubscriptionResponse: value: id: 0CNSf829c8c968765f86f51418c28d6b0430daa657174c3920a474890e540be5495d1718867617 name: TestSubscription_ICCPAuthUpdated subjectType: PAYMENT_AUTHORIZATION subscriberId: A49875790BBF5F19E0535B449E0A5014 active: true specifications: - id: 0CNS9e4f526d9641a7e65247f832e6f98505330cfcdd2e1955fabaa711ad052160971718952594 type: FIELD operator: WHERE children: [] fieldMapping: id: 0CNSa6d4a329d377bb296957df43e9f2f1ab5b35c997f88bcbc34939bc1525990be51556724071 name: messageTypeIndicator displayName: Message type indicator subjectType: PAYMENT_AUTHORIZATION contentType: TEXT fieldOperator: EQUALS expectedContent: value: '12312' contentType: TEXT GetSubscriptionICCPResponse: value: - id: CNSa91bf379b48a593fd17f07f431bad8fb296796498f4e9982ea134394c1fa4f071556724070 name: TestSubscription_PaymentAuthorization subjectType: PAYMENT_AUTHORIZATION subscriberId: CNSa91bf379b48a593fd17f07f431bad8fb296796498f4e9982ea134394c1fa4f071556724071 active: true specifications: - id: CNSa91bf379b48a593fd17f07f431bad8fb296796498f4e9982ea134394c1fa4f071556724072 type: FIELD operator: WHERE fieldMapping: id: CNSa91bf379b48a593fd17f07f431bad8fb296796498f4e9982ea134394c1fa4f071556724073 name: purchaseRequest.rcnAlias displayName: Purchase request RCN alias subjectType: PAYMENT_AUTHORIZATION contentType: TEXT fieldOperator: EQUALS expectedContent: contentType: TEXT value: Travel Expense RCN anotherValue: {} children: - string - id: ABSa91bf379b48a593fd17f07f431bad8fb296796498f4e9982ea134394c1fa4f071556724070 name: TestSubscription_PaymentUpdate subjectType: PAYMENT_UPDATE subscriberId: CNSa91bf379b48a593fd17f07f431bad8fb296796498f4e9982ea134394c1fa4f071556724071 active: true specifications: [] - id: 0CNS00773977af91478d9a21643947955dbbb7038e4958bda83e308689725096c4ac1712210079 name: TestSubscription_Clearing subjectType: CLEARING subscriberId: A49875790BBF5F19E0535B449E0A5014 active: true specifications: - id: 0CNS9cc3a869f3010b380f72ebd92001cad9c0c7446609895f30b020f8e7e6aae7cc1712210079 type: FIELD operator: WHERE children: [] fieldMapping: id: 135E59332C54BF9AE06368459E0ACEF0 name: purchaseRequest.rcnAlias displayName: purchaseRequest rcnAlias subjectType: CLEARING contentType: TEXT fieldOperator: EQUALS expectedContent: value: RcnAliasText contentType: TEXT GetSubscriptionBPCResponse: value: - id: 0CNS2f3a8d6bbda7dcc282e0946a9b886231c99fd2e53ab8d3ca9c35144412c590121712030697 name: TestSubscription_BPC subjectType: BPC_PAYMENT_AUTHORIZATION subscriberId: 0CED10E7921EFFF6E06368459E0AD156 active: true specifications: - id: 0CNS9f5a947e901b39a123ed6a9cf2cbedcf019d5880f6d65321c78e89a546043f6f1712030697 type: FIELD operator: WHERE children: [] fieldMapping: id: 141747A087B5DC9DE06368459E0AC116 name: corpGuid displayName: CorpGuid subjectType: BPC_PAYMENT_AUTHORIZATION contentType: TEXT fieldOperator: EQUALS expectedContent: value: SENTTYA75A95EEE00B3DC279FCBF82AC3CD834F9C6DDCEFA44B22CEBF842EF4E9750921701908872 contentType: TEXT GetSubscriptionBPSResponse: value: - id: ABSa91bf379b48a593fd17f07f431bad8fb296796498f4e9982ea134394c1fa4f071556724070 name: TestSubscription_PaymentUpdate subjectType: PAYMENT_UPDATE subscriberId: CNSa91bf379b48a593fd17f07f431bad8fb296796498f4e9982ea134394c1fa4f071556724071 active: true specifications: [] UpdateICMPLifecycleSubscription: value: name: TestSubscription_ICMPTokenProvisioningUpdated subjectType: TOKEN_LIFECYCLE_EVENT active: true specifications: - type: FIELD operator: WHERE children: [] fieldMappingName: purchaseRequest.rcnAlias fieldOperator: EQUALS expectedContent: value: TEXT contentType: TEXT UpdateBPSPaymentUpdateSubscription: value: name: TestSubscription_ICCPPaymentUpdate_Updated subjectType: PAYMENT_UPDATE active: true specifications: [] BPCAuthorizationSubscriptionResponse: value: id: 0CNS5f3aee95730c70a70ca85cb66f13ac40eeb79c6bc508cbe58e1c74ae97f18bb01718868027 name: TestSubscription_BPCAuth subjectType: BPC_PAYMENT_AUTHORIZATION subscriberId: A49875790BBF5F19E0535B449E0A5014 active: true specifications: - id: 0CNSa14d1f4baaadae35a8a83f65bb74914b002fbab44b4abf47039b687d5149fc3b1718868027 type: FIELD operator: WHERE children: [] fieldMapping: id: 1360ACE9C4D4CBFEE06368459E0ADD50 name: virtualPaymentCard.number displayName: VirtualPaymentCard Number subjectType: BPC_PAYMENT_AUTHORIZATION contentType: TEXT fieldOperator: EQUALS expectedContent: value: '1234567890123456' contentType: TEXT UpdateBPCAuthorizationSubscription: value: name: TestSubscription_BPCPaymentAuthorization_Updated subjectType: BPC_PAYMENT_AUTHORIZATION active: true specifications: - type: FIELD operator: WHERE children: [] fieldMappingName: messageTypeIndicator fieldOperator: EQUALS expectedContent: value: '12312' contentType: TEXT GetSubscriptionICMPResponse: value: id: 0CNS8d3bb4d6a02504515a15c631eb60d03de5b9cf760348439320b4fdc135ef1e111719205036 name: TestICMPProvisioningSubscription subjectType: TOKEN_PROVISIONING_EVENT subscriberId: A49875790BBF5F19E0535B449E0A5014 active: true specifications: - id: 0CNSfb3b539f47e9b95a267237c801e8818fd44b5b3c6aa957275bfd4d6dc9e9b2901719205036 type: FIELD operator: WHERE children: [] fieldMapping: id: 1AD42C3FCAF22726E06368459E0A9487 name: purchaseRequest.companyId displayName: Purchase Request Company Id subjectType: TOKEN_PROVISIONING_EVENT contentType: INTEGER fieldOperator: EQUALS expectedContent: value: 248947 contentType: INTEGER - id: 0CNSfe566e15084e64a9c2baa0183aaa8b901ac6defebf5f413365ecad64ab604ec11721373472 name: OpenAPITest_SUBSC_NAME_DONT_DELETE1790226083 subjectType: TOKEN_LIFECYCLE_EVENT subscriberId: A49875790BBF5F19E0535B449E0A5014 active: true specifications: - id: 0CNS658f593db73c43ff9a1cc28a9053007ffdba8894649ce9d34f9cdedf430939eb1721373472 type: FIELD operator: WHERE children: [] fieldMapping: id: 1B9E8BCF021563E6E06368459E0AB38F name: purchaseRequest.rcnAlias displayName: Purchase Request RCN Alias subjectType: TOKEN_LIFECYCLE_EVENT contentType: TEXT fieldOperator: EQUALS expectedContent: value: RcnAliasText contentType: TEXT BPCAuthorizationUpdatedSubscriptionResponse: value: id: 0CNS5f3aee95730c70a70ca85cb66f13ac40eeb79c6bc508cbe58e1c74ae97f18bb01718868027 name: TestSubscription_BPCAuthUpdated subjectType: BPC_PAYMENT_AUTHORIZATION subscriberId: A49875790BBF5F19E0535B449E0A5014 active: true specifications: - id: 0CNS12fe24ddd5529bbfb317894e15b946ed3e5878b2382163ae9534b1cf38a3875a1718952480 type: FIELD operator: WHERE children: [] fieldMapping: id: 1360ACE9C4D4CBFEE06368459E0ADD50 name: messageTypeIndicator displayName: MessageTypeIndicator subjectType: BPC_PAYMENT_AUTHORIZATION contentType: TEXT fieldOperator: EQUALS expectedContent: value: '12312' contentType: TEXT ICMPProvisioningSubscriptionResponse: value: id: 0CNSa56c4e01133b472a532678ab1e02b394de1886b3692eb42c99287ef10cffa59c1720083461 name: TestSubscription_ICMPTokenProvisioning subjectType: TOKEN_PROVISIONING_EVENT subscriberId: A49875790BBF5F19E0535B449E0A5014 active: true specifications: - id: 0CNSb12ce4d40ae45a3ff9cb9928f66ded61345e1cd45fc8d4991a0ce200d2b11ee11720083461 type: FIELD operator: WHERE children: [] fieldMapping: id: 1AD42C3FCAF12726E06368459E0A9487 name: purchaseRequest.rcnAlias displayName: Purchase Request RCN Alias subjectType: TOKEN_PROVISIONING_EVENT contentType: TEXT fieldOperator: EQUALS expectedContent: value: TEXT contentType: TEXT BPSPaymentUpdateSubscriptionResponse: value: id: 0CNSee76a6d031ba2166fe83ed7203f74b52134758270d1339c995b3be6c68a918211718964283 name: TestSubscription_ICCPPaymentUpdate subjectType: PAYMENT_UPDATE subscriberId: C94BC2953D52DCE1E05368459E0ADF8E active: true specifications: [] ICMPProvisioningUpdatedSubscriptionResponse: value: id: 0CNSa56c4e01133b472a532678ab1e02b394de1886b3692eb42c99287ef10cffa59c1720083461 name: TestSubscription_ICMPTokenProvisioningUpdated subjectType: TOKEN_PROVISIONING_EVENT subscriberId: A49875790BBF5F19E0535B449E0A5014 active: true specifications: - id: 0CNS63299c1c2fcd133327b88e12457b67333543ba4be3c1f77880b3fb99e25e31421720087279 type: FIELD operator: WHERE children: [] fieldMapping: id: 1AD42C3FCAF12726E06368459E0A9487 name: purchaseRequest.rcnAlias displayName: Purchase Request RCN Alias subjectType: TOKEN_PROVISIONING_EVENT contentType: TEXT fieldOperator: EQUALS expectedContent: value: TEXT contentType: TEXT UpdateICCPClearingSubscription: value: name: TestSubscription_ICCPClearing_Updated subjectType: CLEARING active: true specifications: - type: FIELD operator: WHERE children: [] fieldMappingName: purchaseRequest.rcnAlias fieldOperator: EQUALS expectedContent: value: test rcn alias contentType: TEXT ICCPClearingUpdatedSubscriptionResponse: value: id: 0CNS0aa3f4e102b6f00976f9556d9af9951951ca3218f5d64d80c91b9057cdcff0a21718868785 name: TestSubscription_ICCPClearingUpdated subjectType: CLEARING subscriberId: A49875790BBF5F19E0535B449E0A5014 active: true specifications: - id: 0CNS91d2a2d3c9a517aee50830da16e83ed675262ca013fb9f82119867ccf4c5c1231718952258 type: FIELD operator: WHERE children: [] fieldMapping: id: 135E59332C54BF9AE06368459E0ACEF0 name: purchaseRequest.rcnAlias displayName: purchaseRequest rcnAlias subjectType: CLEARING contentType: TEXT fieldOperator: EQUALS expectedContent: value: test rcn alias contentType: TEXT CreateICMPProvisioningSubscription: value: name: TestSubscription_ICMPTokenProvisioning subjectType: TOKEN_PROVISIONING_EVENT active: true specifications: - type: FIELD operator: WHERE children: [] fieldMappingName: purchaseRequest.rcnAlias fieldOperator: EQUALS expectedContent: value: TEXT contentType: TEXT ICMPLifecycleSubscriptionResponse: value: id: 0CNSa56c4e01133b472a532678ab1e02b394de1886b3692eb42c99287ef10cffa59c1720083461 name: TestSubscription_ICMPTokenLifecycle subjectType: TOKEN_LIFECYCLE_EVENT subscriberId: A49875790BBF5F19E0535B449E0A5014 active: true specifications: - id: 0CNSb12ce4d40ae45a3ff9cb9928f66ded61345e1cd45fc8d4991a0ce200d2b11ee11720083461 type: FIELD operator: WHERE children: [] fieldMapping: id: 1AD42C3FCAF12726E06368459E0A9487 name: purchaseRequest.rcnAlias displayName: Purchase Request RCN Alias subjectType: TOKEN_LIFECYCLE_EVENT contentType: TEXT fieldOperator: EQUALS expectedContent: value: TEXT contentType: TEXT CreateICCPClearingSubscription: value: name: TestSubscription_ICCPClearing subjectType: CLEARING active: true specifications: - type: FIELD operator: WHERE children: [] fieldMappingName: purchaseRequest.rcnAlias fieldOperator: EQUALS expectedContent: value: test rcn alias contentType: TEXT ICCPClearingSubscriptionResponse: value: id: 0CNS0aa3f4e102b6f00976f9556d9af9951951ca3218f5d64d80c91b9057cdcff0a21718868785 name: TestSubscription_ICCPClearing subjectType: CLEARING subscriberId: A49875790BBF5F19E0535B449E0A5014 active: true specifications: - id: 0CNS4ab8577afb3a04ffa75e1ae75beb4509ac850d259b322b3b8dc3c721ec56777d1718868785 type: FIELD operator: WHERE children: [] fieldMapping: id: 135E59332C54BF9AE06368459E0ACEF0 name: purchaseRequest.rcnAlias displayName: purchaseRequest rcnAlias subjectType: CLEARING contentType: TEXT fieldOperator: EQUALS expectedContent: value: test rcn alias contentType: TEXT UnauthorizedExample: value: Errors: Error: - Source: Security.Credential ReasonCode: AUTHENTICATION_FAILED Description: Unauthorized Access to Web Service. Recoverable: false Details: No ICA configured for clientID BadRequestExample: value: Errors: Error: - Source: Validation ReasonCode: ICA_VALUE_REQUIRED Description: ICA required for ABU client eligibility validation. Recoverable: false Details: ICA is mandatory. SubscriptionAccountInquirySubscribed: value: subscribed: true AccountInquiryAccountUpdate: value: responseIndicator: ACCOUNT_UPDATE account: number: '5573491171029999' expiry: '1221' AccountInquiryExpiry: value: responseIndicator: EXPIRY account: number: '5573491171027315' expiry: '1221' AccountInquiryUnknown: value: responseIndicator: UNKNOWN AccountInquiryNonParticipating: value: responseIndicator: NON_PARTICIPATING SubscriptionAccountInquiryNotSubscribed: value: subscribed: false AccountInquiryValid: value: responseIndicator: VALID AccountInquiryContact: value: responseIndicator: CONTACT responses: CreatedSubscription: description: CREATED headers: Location: description: URI with the ID that identifies the newly created subscription schema: type: string content: application/json: schema: $ref: '#/components/schemas/SubscriptionDetails' examples: BPC PAYMENT AUTHORIZATION: $ref: '#/components/examples/BPCAuthorizationSubscriptionResponse' ICCP CLEARING: $ref: '#/components/examples/ICCPClearingSubscriptionResponse' ICCP PAYMENT AUTHORIZATION: $ref: '#/components/examples/ICCPAuthorizationSubscriptionResponse' BPS PAYMENT UPDATE: $ref: '#/components/examples/BPSPaymentUpdateSubscriptionResponse' ICMP TOKEN LIFECYCLE: $ref: '#/components/examples/ICMPLifecycleSubscriptionResponse' ICMP TOKEN PROVISIONING: $ref: '#/components/examples/ICMPProvisioningSubscriptionResponse' Forbidden: description: Forbidden content: application/json: schema: $ref: '#/components/schemas/Error-403' UpdatedSubscription: description: OK content: application/json: schema: $ref: '#/components/schemas/SubscriptionDetails' examples: BPC PAYMENT AUTHORIZATION: $ref: '#/components/examples/BPCAuthorizationUpdatedSubscriptionResponse' ICCP CLEARING: $ref: '#/components/examples/ICCPClearingUpdatedSubscriptionResponse' ICCP PAYMENT AUTHORIZATION: $ref: '#/components/examples/ICCPAuthorizationUpdatedSubscriptionResponse' BPS PAYMENT UPDATE: $ref: '#/components/examples/BPSPaymentUpdateUpdatedSubscriptionResponse' ICMP TOKEN LIFECYCLE: $ref: '#/components/examples/ICMPLifecycleUpdatedSubscriptionResponse' ICMP TOKEN PROVISIONING: $ref: '#/components/examples/ICMPProvisioningUpdatedSubscriptionResponse' GetSubscription: description: OK content: application/json: schema: type: array items: $ref: '#/components/schemas/SubscriptionDetails' examples: Business Payments Control: $ref: '#/components/examples/GetSubscriptionBPCResponse' In Control for Commercial Payments(ICCP): $ref: '#/components/examples/GetSubscriptionICCPResponse' In Control for Mobile Payments(ICMP): $ref: '#/components/examples/GetSubscriptionICMPResponse' Business Payment Service(STP): $ref: '#/components/examples/GetSubscriptionBPSResponse' NotFound: description: Not Found content: application/json: schema: $ref: '#/components/schemas/Error-404' GetSubscriptionsById: description: OK content: application/json: schema: $ref: '#/components/schemas/SubscriptionDetails' examples: BPC PAYMENT AUTHORIZATION: $ref: '#/components/examples/BPCAuthorizationSubscriptionResponse' ICCP CLEARING: $ref: '#/components/examples/ICCPClearingSubscriptionResponse' ICCP PAYMENT AUTHORIZATION: $ref: '#/components/examples/ICCPAuthorizationSubscriptionResponse' BPS PAYMENT UPDATE: $ref: '#/components/examples/BPSPaymentUpdateSubscriptionResponse' ICMP TOKEN LIFECYCLE: $ref: '#/components/examples/ICMPLifecycleSubscriptionResponse' ICMP TOKEN PROVISIONING: $ref: '#/components/examples/ICMPProvisioningSubscriptionResponse' BadRequest: description: Bad Request content: application/json: schema: $ref: '#/components/schemas/Error-400' UnauthorizedErrorResponse: description: Authentication information was missing or invalid content: application/json: schema: $ref: '#/components/schemas/ErrorWrapper' examples: UnauthorizedExample: $ref: '#/components/examples/UnauthorizedExample' SubscriptionInquiryResponse: description: The status of a subscription inquiry. content: application/json: schema: $ref: '#/components/schemas/OutSubscriptionInquiry' examples: Subscribed: $ref: '#/components/examples/SubscriptionAccountInquirySubscribed' Not Subscribed: $ref: '#/components/examples/SubscriptionAccountInquiryNotSubscribed' BadRequestErrorResponse: description: Something was wrong with the request content: application/json: schema: $ref: '#/components/schemas/ErrorWrapper' examples: BadRequestExample: $ref: '#/components/examples/BadRequestExample' SubscriptionDeletionResponse: description: Successfully unsubscribed customer from account number for a given merchant. SubscriptionResponse: description: Customer account inquiry response, account will only be populated if response indicator is of type `EXPIRY` or `ACCOUNT_UPDATE`. content: application/json: schema: $ref: '#/components/schemas/OutSubscription' examples: Valid: $ref: '#/components/examples/AccountInquiryValid' Unknown: $ref: '#/components/examples/AccountInquiryUnknown' Non Participating: $ref: '#/components/examples/AccountInquiryNonParticipating' Contact: $ref: '#/components/examples/AccountInquiryContact' Expiry: $ref: '#/components/examples/AccountInquiryExpiry' Account Update: $ref: '#/components/examples/AccountInquiryAccountUpdate' schemas: ICCPAuthorizationNotificationContent: description: The content of the notification, the structure of which depends on the subject. type: object properties: messageTypeIndicator: description: 'Message Type Identifier. Following are the possible values for messageTypeIndicator: 0110 (Authorization Response), 0120 (Authorization Advice), 0400 (Reversal Request) and 0420 (Reversal Advice).' type: string minLength: 4 maxLength: 4 example: '0110' systemTraceAuditNumber: description: Systems Trace Audit Number (STAN) is a number a message initiator assigns to uniquely identify a transaction. This value is derived from DE 11. type: string minLength: 1 maxLength: 255 example: '011174' financialNetworkCode: description: Financial network code derived from DE 63, subfield 1 identifies the specific program or service (for example, the financial network, financial program, or card program) with which the transaction is associated. type: string example: MCC banknetReferenceNumber: description: Banknet reference number derived from DE 63, subfield 2 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: Q4A91A transactionAmount: description: The transaction amount represented in minor units, which are the smallest units of a currency. The value is determined by the number of decimal places associated with the currency. Refers to DE 63, subfield 2. type: number example: 7550 transactionCurrencyCode: description: Currency of the transaction (merchant currency) refers to DE 49. type: string example: USD billingAmount: description: Cardholder billing amount (DE 6) indicates the transaction amount in the issuers currency. It is the amount billed to the cardholder in the cardholder account currency, excluding cardholder billing fees and is represented in minor units, which are the smallest units of a currency. The value is determined by the number of decimal places associated with the currency. type: number example: 7550 billingCurrencyCode: description: The currency code of the cardholder billing defines the currency of DE 6 (Amount, Cardholder Billing). type: string example: USD responseCode: description: DE 39 (Response Code) defines the disposition of a previous message or an action taken as a result of receipt of a previous message. Response codes also are used to indicate approval or decline of a transaction. In the event an authorization is declined, the response code indicates the reason for rejection and may indicate an action to be taken at the card acceptor (for example, capture card). type: string example: '00' authorizationCode: description: DE 38 (Authorization ID Response) contains the online authorization code provided by the issuer on the original authorization response. It is a transaction response ID code that the authorizing institution assigns. DE 38 is used to transmit a card issuers authorization code for Authorization transactions. In general, the authorization code used in DE 38 may be any combination of alphanumeric characters. type: string example: '502359' transmissionRawDate: description: DE 7, subfield 1 (Date) is the date (UTC) that the message was entered into the Mastercard Network in the format MMDD. type: string example: '1103' transmissionRawTime: description: DE 7, subfield 2 (Time) is the time (UTC) that the message was entered into the Mastercard Network in the format HHmmss. type: string example: '101611' settlementDate: description: Referring to DE 15, the reporting date to which a transaction applies in the format MMDD. This is the UTC date that the authorization is processed, not the date on which settlement will occur. type: string example: 0930 cardHolderTransactionTypeCode: description: DE 3, subfield 1 describes the specific transaction type. type: string example: '00' posTransactionStatus: description: 'DE 61, subfield 7 indicates the purpose or status of the request. Following are the possible values for posTransactionStatus: 0 (Normal request [original presentment]), 2 (Identity Check Phone Order), 3 (ATM Installment Inquiry), 4 (Preauthorization request), 5 (Time Based Payment Authorization RequestBrazil domestic transactions), 6 (ATC Update), 8 (Account Status Inquiry Service (ASI)), 9 (Tokenization Request/Notification).' type: string example: '0' traceId: description: Contains data from DE 63 (Network Data), subfield 1 (Financial Network Code) and subfield 2 (Banknet Reference Number) and DE 15 (Date, Settlement) that is in the original Authorization Request Response/0110 message. type: string example: 'MCC9999991231 ' merchant: description: Merchant details type: object properties: merchantId: description: DE 42 (Card Acceptor ID Code) identifies the card acceptor that defines the point of the transaction in both local and interchange environments. DE 42 is used as a merchant ID to uniquely identify the merchant in a POS transaction. type: string example: '497520000000000' categoryCode: description: DE 18 (Merchant Type) is the classification (card acceptor business code/merchant category code [MCC]) of the merchants type of business or service. type: string example: '5542' name: description: DE 43 (Acceptor Name and Location), subfield 1 (Acceptor Name) contains the merchant name against the merchant id. Merchant name is the merchant doing business as name. type: string example: JASPERHITECH city: description: ContainsDE 43 (Acceptor Name and Location), subfield 3 (Acceptor City) indicates the city of the merchant. type: string example: Jasper stateOrCountryCode: description: DE 43, subfield 5 contains the ISO 3166-1 country code of the merchant. type: string example: TN realPaymentCard: description: Real Payment Card Details type: object properties: number: description: DE 2 (Primary Account Number [PAN]) is a series of digits (represented masked) used to identify a customer account or relationship. type: string example: '************0112' expiryMonth: description: DE 14 (Date, Expiration) specifies the year and month after which an issuer assigns a cardholders card to be expired. type: string example: '12' expiryYear: description: DE 14 (Year, Expiration) specifies the year and month after which an issuer assigns a cardholders card to be expired. type: string example: '24' virtualPaymentCard: description: Virtual Payment Card Details type: object properties: number: description: DE 48, subelement 33, subfield 2 (Account Number) indicates the PAN (represented masked) mapping account number. type: string example: '************6213' expiryMonth: description: DE 48, subelement 33, subfield 3 (Expiration Date) indicates the expiration date of the PAN mapping account in format YYMM. type: string example: 09 expiryYear: description: DE 48, subelement 33, subfield 3 (Expiration Date) indicates the expiration date of the PAN mapping account in format YYMM. type: string example: '27' inControlOnBehalfServiceResult: description: In Control Service Result details, derived from DE 48 (Additional DataPrivate Use). DE 48 is reserved for private organizations to define data unique to specific networks or specific programs and services. DE 48 provides other supplemental data in a message when a specific ISO-designated data element is not available. It is a free-format, variable-length data element that may be used for multiple purposes. type: object properties: rcnServiceResultCode: description: In Control RCN Spend Control Service (generally will be null). DE 48, subelement 71 (On-behalf [OB] Services) notifies the issuer of the On-behalf Service performed on the transaction and the results. Subelement 71 will support up to ten services for a transaction. type: string example: '' vcnServiceResultCode: description: VCN Service Result Code. DE 48, subelement 71 (On-behalf [OB] Services) notifies the issuer of the On-behalf Service performed on the transaction and the results. Subelement 71 will support up to ten services for a transaction. type: string example: V originalMessage: description: Original message identifying information, in the case of a follow-up message. DE 90 (Original Data Elements) is the data elements in the original message, intended to identify a transaction for correction or reversal. type: object properties: messageTypeIndicator: description: DE 90, subfield 1 (Original Message Type Identifier) indicates the Message Type Identifier (MTI) of the original message. type: string minLength: 4 maxLength: 4 example: '0110' systemTraceAuditNumber: description: DE 90, subfield 2 (Original DE 11 [Systems Trace Audit Number]) indicates the Systems Trace Audit Number (STAN) that was in DE 11 of the original message. type: string example: '11174' transmissionRawDateTime: description: DE 90, subfield 3 (Original DE 7 [Transmission Date and Time]) indicates the Transmission Date and Time that was in DE 7 of the original message. type: string example: '1029112800' advice: description: Advice information (valid for advice messages only, MTI=04xx). type: object properties: reasonCode: description: DE 60, subfield 1 (Advice Reason Code) indicates to the receiver of an Advice message the specific reason for the transmission of the Advice message. type: string example: '650' replacementAmounts: description: Replacement amounts, applicable for reversals, indicate the new values that replace the amounts in the original transaction. These amounts are represented in minor units, which are the smallest unit of a currency and vary depending on the number of decimal places used by the currency. type: object properties: transactionAmount: description: DE 95, subfield 1 (Actual Amount, Transaction) indicates the actual transaction amount. The amount for the replacement transaction represented in minor units, which are the smallest units of a currency. The value is determined by the number of decimal places associated with the currency. type: number example: 1200 settlementAmount: description: DE 95, subfield 2 (Actual Amount, Settlement) indicates the actual settlement amount in the settlement currency. The amount for the settlement transaction represented in minor units, which are the smallest units of a currency. The value is determined by the number of decimal places associated with the currency. type: number example: 1200 billingAmount: description: DE 95, subfield 3 (Actual Amount, Cardholder Billing) the actual amount in the issuer currency represented in minor units, which are the smallest units of a currency. The value is determined by the number of decimal places associated with the currency. type: number example: 1200 purchaseRequest: description: Purchase Request Details type: object properties: purchaseRequestId: description: ICCP Purchase Request ID - uniquely identifies the purchase request and VCN type: integer example: 5213 rcnAlias: description: Real card number alias type: string example: Travel Expense RCN companyId: description: ICCP Company ID - uniquely identifies the company that created the VCN type: integer example: 233191 companyGuid: description: ICCP Company GUID - alternative ID to uniquely identify the company that created the VCN type: string example: SENTTY9951972A6FC0206CB494B560E5E6DC5D02A2BD21D89612EF4A18358ECC777DCF1494921797 issuerGuid: description: ICCP Issuer GUID - uniquely identifies the issuer of the RCN funding the VCN type: string example: SENTTY5E4C4B4E0D1BF5991E64A1E0745F40A85B2510CE48EB537011DCED3C483669D61494938440 Error-400: type: object required: - Errors properties: Errors: type: object required: - Error properties: Error: type: array description: An array of error objects giving information about relevant errors. items: type: object properties: Source: type: string description: The origin of the error example: Commercial Event Notifications ReasonCode: type: string description: A unique error code representing the error that occurred example: format.invalid Description: type: string description: A developer-friendly description of the error that occurred example: One or more fields contain invalid data Recoverable: type: boolean description: Can the error be recovered by retrying the same request later? example: false Details: type: string description: Additional details regarding the error that occurred example: Invalid content in request payload SpecificationDetails: description: Specifies criteria to determine whether an event should cause a notification to be generated. type: object properties: id: description: Specification id, auto-generated by the system and read-only for the client type: string minLength: 1 maxLength: 255 readOnly: true example: CNSa91bf379b48a593fd17f07f431bad8fb296796498f4e9982ea134394c1fa4f071556724072 type: description: The type of item to which the criteria refers. Currently the type 'FIELD' is allowed, which refers to matching a field in the notification itself type: string minLength: 1 maxLength: 255 default: FIELD example: FIELD operator: description: The operator that defines how this specification (criteria) logically relates to other specifications in the list. The first specification in the list will have an operator of 'WHERE' and subsequent specifications will have an 'AND' or 'OR' relationship with their preceding specification type: string minLength: 1 maxLength: 255 default: WHERE example: WHERE fieldMapping: readOnly: true allOf: - $ref: '#/components/schemas/FieldMapping' fieldOperator: description: The check operation that is to be performed. Currently one of allowed values are 'EQUALS', 'GREATER_THAN', 'LESS_THAN', 'BETWEEN' type: string minLength: 1 maxLength: 255 default: EQUALS example: EQUALS expectedContent: $ref: '#/components/schemas/FieldContent' children: description: A list of nested child specifications, used where needed to implement complex matching logic type: array items: $ref: '#/components/schemas/SpecificationDetails' required: - type - operator - fieldMappingName - fieldOperator - expectedContent ICCPClearingNotificationContent: description: The content of the notification, the structure of which depends on the subject. type: object properties: clearingTransactionId: description: Specifies the Clearing Incontrol transaction id. type: integer example: 123 type: description: Incontrol specific field indicating if its a D(Debit) or C(Credit) type: string example: C acquirerReferenceData: description: The twenty-three-character alphanumeric acquirer Reference Data is data an acquirer supplies in an acquirer-originated message that may be required for an issuer to return to the acquirer in a subsequent message. DE 31 (Acquirer Reference Data) is data an acquirer supplies in an acquirer-originated message that may be required for an issuer to return to the acquirer in a subsequent message. type: string example: '39663858658842283834864' functionCode: description: The three-digit numeric function Code indicates a message specific purpose. DE 24 (Network International ID) identifies a single international network of card issuers. type: integer example: 200 messageTypeId: description: 'Four-digit numeric field describing the type of message being interchanged. Possible values are: 1240-Presentment, 1442-Chargeback, 1644-Administrative, 1740-Fee Collection' type: integer example: 1240 txnType: description: Specifies the ICCP derived field from Message Type. type: string example: First Presentment isMastercardSwitched: description: Specifies the flag used to indicate if transaction is to or from issuer. Possible values are T(True) or F(False), where T = To Issuer (switched), F = From Issuer (non-switched). type: string example: T receiverId: description: Identifies the transaction destination institution. DE 100 (Receiving Institution ID Code) is the identity of the institution receiving a Request or Advice message in an interchange system if not the same as identified in DE 2 (Primary Account Number [PAN]) or DE 34 (Primary Account Number [PAN], Extended). type: string example: '105678' messageReasonCode: description: The four-digit numeric code provides the message receiver with the reason for sending the message. DE 25 (Point-of-Service [POS] Condition Code) is an ID of the condition under which the transaction takes place at the point of interaction. type: integer example: 1401 originalTransactionId: description: Specifies the In Control identifier for linked transaction. In Control txn ID of an original message. type: integer example: 127 conversionRateCardholderBilling: description: Transaction exchange rate. DE 10 (Conversion Rate, Cardholder Billing) is the factor used in the conversion from transaction to cardholder billing amount. DE 4 (Amount, Transaction) is multiplied by DE 10 to determine DE 6 (Amount, Cardholder Billing). type: number example: 2 authCode: description: The six-digit alphanumeric code used as authorization approval code of the issuer. DE 38 (Authorization ID Response) is a transaction response ID code that the authorizing institution assigns. DE 38 is used to transmit a card issuers authorization code for Authorization transactions. type: string example: '111111' processingCode: description: The processing Code. DE 3 (Processing Code) describes the effect of a transaction on the customer account and the type of accounts affected. type: string example: '010000' tokenPan: description: Specifies the PAN associated with the token, with digits 0-9, where minimum length is 12, and maximum length is 19. type: string example: '1234567891011' posEntryMode: description: Codes that identify terminal capability, terminal environment, and point-of-interaction (POI) security data. DE 22 (Point-of-Service [POS] Entry Mode) indicates the method used for PAN entry to initiate a transaction and the PIN entry capabilities. type: string example: 099999B99001 dateTimeTransactionLocal: description: Transaction timestamp is a string type which indicates the Datetime at which the transaction takes place at the card acceptor location. It should be in ISO Date Time with Offset format yyyy-MM-ddTHH:mm:ssXXX. It is combination of DE 12 and DE 13. DE12 - DE 12 (Time, Local Transaction) is the local time at which the transaction takes place at the point of card acceptor location. DE 13 - DE 13 (Date, Local Transaction) is the local month and day on which the transaction takes place at the point of card acceptor location. type: string example: '2020-07-16T11:09:42.10+01:00' settlementAmount: description: Specifies the amount of funds to be transferred between the acquirer and the issuer type: object properties: amount: description: DE 5 (Amount, Settlement) is the amount of funds to be transferred between the acquirer and the issuer equal to DE 4 (Amount, Transaction) in the settlement currency. Mastercard programs and services use U.S. dollars as the currency of settlement. type: number example: 1234.56 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 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' isMatched: description: 'Status of the transaction. Values: S - Settled, F - Fraudulent. Incontrol specific status Clearing event should have only True or False value for this attribute. When value for event is Settled - S, it should be translated as True or else False.' type: string example: 'true' originalOrLinked: description: Determines if it is an Original or linked transaction. Possible values can be O (Original), or L (Linked) type: string example: L controlsAppliedDateTime: description: Specifies the Settlement date, and should be in ISO Date Time with Offset format "yyyy-MM-dd'T'HH:mm:ssXXX". Defaults to System Date if not written by Settlement Process in Incontrol. type: string example: '2019-07-03T11:09:42.10+01:00' 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. DE 63 (Network Data) is generated by the Authorization Platform for each originating message routed through the network. The receiver must retain the data element and use it in any response or acknowledgement message associated with the originating message. type: string example: 4977D7 destinationInstitutionIdCode: description: Identity of the institution receiving a request is a numeric value range from 6 to 11 digits. DE 100 (Receiving Institution ID Code) is the identity of the institution receiving a Request or Advice message in an interchange system if not the same as identified in DE 2 (Primary Account Number [PAN]) or DE 34 (Primary Account Number [PAN], Extended). The Authorization Platform uses DE 100 to determine the destination routing of Administrative/06xx messages. For these messages, DE 33 (Forwarding Institution ID Code) identifies the sender of the message; DE 100 identifies the receiver of the message. type: integer example: 111111 acquirerInstitutionIdCode: description: Interbank Card Association ID of the acquirer is numeric value range from 1 to 11 digits. DE 32 (Acquiring Institution ID Code) identifies the acquiring institution (for example, merchant bank) or its agent. type: integer example: 123456 forwardingInstitutionIdCode: description: ICA of the processer if available. DE 33 (Forwarding Institution ID Code) identifies the institution forwarding a Request or Advice message in an interchange system if it is not the same institution as specified in DE 32 (Acquiring Institution ID Code). DE 33 is used within a message to contain the Mastercard six-digit customer ID number of the CPS or INF responsible for directly routing that message to the Authorization Platform. type: integer example: 322222 cardHolderAmount: description: Indicates the transaction amount in the issuers currency. It is the amount billed to the cardholder in the cardholder account currency, excluding cardholder billing fees. type: object properties: amount: description: Indicates the value of transaction amount in the issuers currency. type: integer example: 1234.56 currencyCode: description: Indicates the currency code of the transaction amount in the issuers currency. type: string example: 840 currencyCodeAlphabetic: description: Indicates the currency name of the transaction amount in the issuers currency. It is the amount billed to the cardholder in the cardholder account currency, excluding cardholder billing fees type: string example: USD authorization: description: '' type: object properties: authorizationTransactionId: description: Specifies the Authorization Transaction ID used for matching. type: integer example: 2450 systemTraceAuditNumber: description: Systems Trace Audit Number (STAN) is a number a message initiator assigns to uniquely identify a transaction. type: integer example: 2450 type: description: 'Indicates the type of transaction. Valid values include: 0 = Auth, 1 = Advice, 2 = Reversal, 3 = Reversal advice, 4 = Offline Auth, 5 = Offline purchase return, 8 = Offline Auth for purchase return. 6,7 = Transaction types 6 & 7 are reserved for internal use' type: integer example: 0 acceptorLocalDate: description: Transaction local date in the format of MMDD. DE 13 (Date, Local Transaction) is the local month and day on which the transaction takes place at the point of card acceptor location. This date must be specified in local time zone units, not in UTC units. The original value of this data element must not be changed. type: string example: 0912 acceptorLocalTime: description: Transaction local time. DE 12 (Time, Local Transaction) is the local time at which the transaction takes place at the point of card acceptor location. Time must be specified in local time zone units, not in UTC units. The original value of this data element must not be changed. type: string example: '175603' mtIdType: description: Message Type Identifier. One of 0100 - Auth, 0120 - Advice, 0400 - Reversal, 0420 - Reversal Advice. type: string example: '0100' cardHolderAmount: description: '' type: object properties: amount: description: DE 6 (Amount, Cardholder Billing) indicates the transaction amount in the issuers currency. It is the amount billed to the cardholder in the cardholder account currency, excluding cardholder billing fees. type: number example: 75 currencyCode: description: Indicates the currency code of the transaction amount in the issuers currency. It is the amount billed to the cardholder in the cardholder account currency, excluding cardholder billing fees. type: string example: 840 currencyCodeAlphabetic: description: Indicates the currency name of the transaction amount in the issuers currency. It is the amount billed to the cardholder in the cardholder account currency, excluding cardholder billing fees. type: string example: USD effectOnBalance: description: This value will be same as DE 6 in event of Partial Replacement. In Partial replacement DE 95.3 will replace DE 6. type: integer example: 75 acceptorAmount: description: '' type: object properties: amount: description: DE 4 (Amount, Transaction) is the amount of funds the cardholder requested in the local currency of the acquirer or source location of the transaction. type: number example: 999 currencyCode: description: Specifies the currency code of amount of funds the cardholder requested in the local currency of the acquirer or source location of the transaction. type: string example: 840 currencyCodeAlphabetic: description: Specifies the currency name of amount of funds the cardholder requested in the local currency of the acquirer or source location of the transaction. type: string example: USD virtualPaymentCard: description: Virtual Payment Card Details type: object properties: number: description: Specifies the Primary Account Number (PAN) of the VCN, which can have digits between 0 to 9, and has a length of 12 to 19 digits. The value is masked and only last four digits are visible. type: string example: '"************1234' expiry: description: Specifies the cardholders expiry in the format yyyy-MM type: string example: 2024-11 realPaymentCard: description: Real Payment Card Details type: object properties: number: description: Specifies the Primary Account Number (PAN) of the RCN, which can have digits between 0 to 9, and has a length of 12 to 19 digits. The value is masked and only last four digits are visible. type: string example: '************7890' expiry: description: Specifies the cardholders expiry in the format yyyy-MM type: string example: 2026-11 acceptor: description: '' type: object properties: merchantCategoryCode: description: Specifies the classification (card acceptor business code/merchant category [MCC] code) of the merchants type of business or service type: string example: '0041' merchantCategoryCodeDescription: description: Specifies the classification (card acceptor business code/merchant category [MCC] name) of the merchants type of business or service type: string example: GAMBLING TRANSACTIONS id: description: Identifies the card acceptor that defines the point of the transaction in both local and interchange environments. DE 42 is used as a merchant ID to uniquely identify the merchant in a POS transaction. type: string example: '305678' terminalId: description: Specifies the Point of Sale terminal Id type: string example: '98123456' name: description: Name of the supplier can be represented by max 22 alphanumeric character type: string example: AUTH_TEST additionalMerchantName: description: PDS 0171 (Alternate Card Acceptor Description Data) may provide a local language version of the data in DE 43 (Card Acceptor Name/Location) using a non-standard character set type: string example: GAMBLING TRANSACTIONS PVT LTD retrievalReferenceNumber: description: Specifies the Terminal transaction Number in a number format type: string example: '123456' streetAddress: description: Specifies the address of the merchant type: string example: 123 THE DRIVE cityName: description: City in which the merchant operates can be represented by max thirteen-character alphanumeric. type: string example: USA subDivisionCode: description: Specifies the three-character alphabetic State Code type: string example: CA postalCode: description: Specifies the post code for merchant address type: string example: '90213' countryCode: description: Specifies the merchant country codes, 3 digit country code type: string example: USA countryCodeDescription: description: Specifies the merchant country name type: string example: United States" amount: description: '' type: object properties: value: description: Specifies the amount of funds the cardholder requested in the local currency of the acquirer or source location of the transaction type: number example: 999 currencyCode: description: Specifies the currency code of the funds the cardholder requested in the local currency of the acquirer or source location of the transaction type: string example: 840 currencyCodeAlphabetic: description: Specifies the currency name of the funds the cardholder requested in the local currency of the acquirer or source location of the transaction type: string example: USD purchaseRequest: description: Purchase Request Details type: object properties: purchaseRequestId: description: ICCP Purchase Request ID - uniquely identifies the purchase request and VCN type: integer example: 5213 rcnAlias: description: Real card number alias type: string example: Travel Expense RCN companyId: description: ICCP Company ID - uniquely identifies the company that created the VCN type: integer example: 233191 companyGuid: description: ICCP Company GUID - alternative ID to uniquely identify the company that created the VCN type: string example: SENTTY9951972A6FC0206CB494B560E5E6DC5D02A2BD21D89612EF4A18358ECC777DCF1494921797 issuerGuid: description: ICCP Issuer GUID - uniquely identifies the issuer of the RCN funding the VCN type: string example: SENTTY5E4C4B4E0D1BF5991E64A1E0745F40A85B2510CE48EB537011DCED3C483669D61494938440 FieldContent: description: The structure used to specify what content in the field should cause a match. type: object required: - contentType - value properties: contentType: description: The type of value that is being checked. Currently one of allowed values are 'INTEGER', 'number', 'TEXT', 'DATE', 'CURRENCY' type: string minLength: 1 maxLength: 255 default: TEXT example: TEXT value: description: The actual value to be checked type: object example: Travel Expense RCN anotherValue: description: An additional value to be checked, if the match operator takes more than one value (e.g. 'BETWEEN') type: object example: Travel Expense RCN SubscriptionDetails: properties: id: description: Subscription id, auto-generated by the system and read-only for the client type: string minLength: 1 maxLength: 255 readOnly: true example: CNSa91bf379b48a593fd17f07f431bad8fb296796498f4e9982ea134394c1fa4f071556724070 name: description: Subscription name - must be unique for the client and must comprise letters, numbers, dashes and underscores only. To check for uniqueness, you can retrieve the existing collection of subscriptions by performing a GET on the /subscriptions resource type: string minLength: 1 maxLength: 50 example: TEST_SUBSCRIPTION subjectType: description: The type of event to which this subscription refers. Currently allowed values are 'PAYMENT_AUTHORIZATION', 'PAYMENT_UPDATE', 'CLEARING', 'BPC_PAYMENT_AUTHORIZATION', 'TOKEN_PROVISIONING_EVENT', 'TOKEN_LIFECYCLE_EVENT' type: string minLength: 1 maxLength: 50 example: PAYMENT_AUTHORIZATION subscriberId: description: The id of the subscriber (client) to which the subscription belongs type: string minLength: 1 maxLength: 255 readOnly: true example: CNSa91bf379b48a593fd17f07f431bad8fb296796498f4e9982ea134394c1fa4f071556724071 active: description: Denotes whether the subscription is active (in which case notifications will be generated for matching events) or not (in which case no notifications will be generated for this subscription) type: boolean example: true specifications: description: A list of criteria specifications that define what events will cause notifications to be generated. If the list of specifications is empty, then notifications will be generated for all events for the specified subject type that the client is entitled to receive. type: array items: $ref: '#/components/schemas/SpecificationDetails' required: - name - active - subjectType Error-403: type: object required: - Errors properties: Errors: type: object required: - Error properties: Error: type: array description: An array of error objects giving information about relevant errors. items: type: object properties: Source: type: string description: The origin of the error example: Commercial Event Notifications ReasonCode: type: string description: A unique error code representing the error that occurred example: subscriber.notAllowed Description: type: string description: A developer-friendly description of the error that occurred example: Access not allowed Recoverable: type: boolean description: Can the error be recovered by retrying the same request later? example: false Details: type: string description: Additional details regarding the error that occurred example: Subscriber with consumerKey 'INVALID_CONSUMER_KEY' doesn't have permissions to complete the request ICMPLifecycleNotificationContent: type: object properties: tokenInfo: type: object properties: accountNumber: description: Conatins the Token Account Number. type: string minLength: 12 maxLength: 19 example: XXXXXXXXXX4733 expiry: description: Contains the token expiry date in YYYY-MM format. type: string minLength: 7 maxLength: 7 example: 2026-12 accountGuid: description: The globally unique identifier of the token. type: string example: afb79fa1-da6c-44c7-adda-6d7f3931dda9 createdDate: description: Date when the account was created, in ISO 8601 extended format. It can be either in UTC "YYYY-MM-DDThh:mm:ss[.sss]Z" or with an offset "YYYY-MM-DDThh:mm:ss[.sss]�hh:mm", where [.sss] is optional and can be 1 to 3 digits. type: string example: '2024-02-01T00:00:00Z' activatedDate: description: Date when the account was activated, in ISO 8601 extended format. It can be either in UTC "YYYY-MM-DDThh:mm:ss[.sss]Z" or with an offset "YYYY-MM-DDThh:mm:ss[.sss]�hh:mm", where [.sss] is optional and can be 1 to 3 digits. type: string example: '2024-02-12T00:00:00Z' lastUpdatedDate: description: Date when the account was last updated, in ISO 8601 extended format. It can be either in UTC "YYYY-MM-DDThh:mm:ss[.sss]Z" or with an offset "YYYY-MM-DDThh:mm:ss[.sss]�hh:mm", where [.sss] is optional and can be 1 to 6 digits. type: string example: '2024-02-12T15:19:36.633965Z' tokenType: description: Refers to the type of token requested for this digitization. Valid values are EMBEDDED_SE = Embedded Secure Element, CLOUD = Mastercard Cloud-Based, Payments | STATIC = Static token. type: string minLength: 1 maxLength: 16 example: CLOUD eventType: description: Refers to the type of the provisioning event. Valid values are CREATED, UPDATED, DELETED. type: string example: CREATED tokenRequestorId: description: Refers to the party that requested the digitization. This field is conditional and is required only if the tokens are assigned by MDES. type: string minLength: 11 maxLength: 11 example: '50134085386' correlationId: description: Contains the value linking pre-digitization messages generated during provisioning. type: string minLength: 1 maxLength: 14 example: D0013529619845 status: description: 'The current status of token. Must be one of: - INACTIVE - Token has not yet been activated, - ACTIVE - Token is active and ready to transact, - SUSPENDED - Token is suspended and unable to transact, - DEACTIVATED - Token has been permanently deactivated.' type: string minLength: 1 maxLength: 32 example: SUSPENDED reasonCode: description: 'Contains the reason code for why the notification is being sent. This applies to all tokens in the Tokens array. Must be one of: - STATUS_UPDATE- The status of the tokens has been changed, - REDIGITIZATION_COMPLETE - The token has been re-digitized to the device, - DELETED_FROM_CONSUMER_APP - The token has been deleted from the consumer application. The token may still be active.' type: string minLength: 1 maxLength: 32 example: STATUS_UPDATE suspensionReasons: description: 'Refers to who or what caused the token to be suspended. The field is optional and is required only if status is SUSPENDED. Can have one or more values of: - ISSUER = Suspended by the Issuer, - TOKEN_REQUESTOR = Suspended by the Token Requestor, - MOBILE_PIN_LOCKED = Suspended due to the Mobile PIN being locked, - CARDHOLDER = Suspended by the Cardholder.' type: array items: type: string example: CARDHOLDER requestedBy: description: 'Refers to who or what requested the token event. Can have one or more values of: - ISSUER = Requested by the Issuer, - TOKEN_REQUESTOR = Requested by the Token Requestor, - MOBILE_PIN_LOCK = Requested by a Mobile PIN Lock, - CARDHOLDER = Requested by the Cardholder, - SYSTEM = Requested by the System.' type: string example: CARDHOLDER walletInfo: description: Contains information about the wallet. type: object properties: walletId: description: The identifier of the Wallet Provider who requested the digitization. Only present when the token is provided to a Wallet Provider. type: string minLength: 1 maxLength: 3 example: '123' paymentAppInstanceId: description: The identifier of the Payment App instance within a device that will be provisioned with a token. Only present when supplied by a Wallet Provider. type: string minLength: 1 maxLength: 48 example: 047C4395D11690022347075090475326A02CB5118F774F2F secureElementId: description: The identifier of the Secure Element to be provisioned with the token. Present only when the token is provisioned to a Secure Element and when provided by the Wallet Provider. type: string minLength: 1 maxLength: 128 example: 1b24f24a24ba98e27d43e345b532a245e4723d7a9c4f624e93452c vcnInfo: description: Contains information about the virtual card account. type: object properties: accountGuid: description: The globally unique identifier of the virtual card account. type: string example: 4fd7fe39-48de-464e-bed2-c148250d7047 ownerInfo: description: Contains information about the Issuer and Corporate. type: object properties: issuerGuid: description: The globally unique identifier of the Issuer. type: string example: SENTTY83BAA6404E87C4D18F67669A687E8D8E86C9E74740FFE8EE403956EBEFF373661648820215 corpGuid: description: The globally unique identifier of the Corporate. type: string example: SENTTYA9C1DB157A85313B10E11ACA0B508844145FB98B7A8529E3DA099F1E5D744ADD1692330249 createdDate: description: Date when the account was created, in ISO 8601 extended format. It can be either in UTC "YYYY-MM-DDThh:mm:ss[.sss]Z" or with an offset "YYYY-MM-DDThh:mm:ss[.sss]�hh:mm", where [.sss] is optional and can be 1 to 3 digits. type: string example: '2024-02-01T00:00:00Z' lastUpdatedDate: description: Date when the account was last updated, in ISO 8601 extended format. It can be either in UTC "YYYY-MM-DDThh:mm:ss[.sss]Z" or with an offset "YYYY-MM-DDThh:mm:ss[.sss]�hh:mm", where [.sss] is optional and can be 1 to 3 digits. type: string example: '2024-02-12T15:19:36.633965Z' accountNumber: description: Contains the Card Account Number. type: string minLength: 12 maxLength: 19 example: XXXXXXXXXXX4547 expiry: description: Card expiry date in YYYY-MM format. type: string minLength: 7 maxLength: 7 example: 2026-12 rcnInfo: description: Contains information about the real card account. type: object properties: accountGuid: description: The globally unique identifier of the real card account. type: string example: 8f89407e-1c7f-4b4b-bfc7-a7ef47207022 accountNumber: description: Contains the Card Account Number. type: string minLength: 12 maxLength: 19 example: XXXXXXXXXXX1234 expiry: description: Card expiry date in YYYY-MM format. type: string minLength: 7 maxLength: 7 example: 2026-12 purchaseRequest: description: Purchase Request Details. type: object properties: purchaseRequestId: description: ICCP Purchase Request ID - uniquely identifies the purchase request and VCN type: integer example: 5213 rcnAlias: description: Real card number alias. type: string example: Travel Expense RCN companyId: description: ICCP Company ID - uniquely identifies the company that created the VCN. type: integer example: 233191 notification: description: The notification structure - contains information about the notification and the notification content itself type: object properties: subject: description: The subject or type of event responsible for the notification to generate. Currently, this API supports PAYMENT_AUTHORIZATION, PAYMENT_UPDATE, CLEARING, BPC_PAYMENT_AUTHORIZATION , TOKEN_PROVISIONING_EVENT and TOKEN_LIFECYCLE_EVENT events. type: string example: BPC_PAYMENT_AUTHORIZATION subscriptionName: description: Name of the subscription for which this notification was generated type: string example: subscription name pushStatus: description: 'Indicates the status of the push delivery for this notification. The possible values are: NOT_APPLICABLE: The service will not push the notification, because push delivery for this subscriber is disabled. PENDING: The notification is in the process of being delivered. DELIVERED: The service has pushed the notification to the push endpoint successfully. FAILED: The services attempts to deliver the notification have failed and no future deliveries will be performed. The notification is available via the pull approach until its retention period expires.' type: string example: DELIVERED createdTimestamp: description: Indicates the UTC date and time when the notification was created. Note that this is independent of time that the event itself occurred. The time the event occurred may be present in the notification content. type: string example: '2019-01-01T12:00:00.000Z' idempotencyKey: description: The idempotency key is a free identifier created by the client to identify a request. It is used by the service to identify subsequent retries of the same request and ensure idempotent behavior by sending the same response without executing the request a second time. This field is only available for ICMP events (TOKEN_PROVISIONING_EVENT and TOKEN_LIFECYCLE_EVENT). type: string example: 0CNSe09a5d3a26ae170adcc8b089cf8ea56c82c7d63df0e107cedee5199bac022a921724033906 content: type: object oneOf: - $ref: '#/components/schemas/BPCAuthorizationNotificationContent' - $ref: '#/components/schemas/ICCPClearingNotificationContent' - $ref: '#/components/schemas/ICCPAuthorizationNotificationContent' - $ref: '#/components/schemas/BPSPaymentUpdateNotificationContent' - $ref: '#/components/schemas/ICMPLifecycleNotificationContent' - $ref: '#/components/schemas/ICMPProvisioningNotificationContent' ICMPProvisioningNotificationContent: type: object properties: tokenInfo: type: object properties: accountNumber: description: Conatins the Token Account Number. type: string minLength: 12 maxLength: 19 example: XXXXXXXXXX4733 expiry: description: Contains the token expiry date in YYYY-MM format. type: string minLength: 7 maxLength: 7 example: 2026-12 accountGuid: description: The globally unique identifier of the token. type: string example: afb79fa1-da6c-44c7-adda-6d7f3931dda9 createdDate: description: Date when the account was created, in ISO 8601 extended format. It can be either in UTC "YYYY-MM-DDThh:mm:ss[.sss]Z" or with an offset "YYYY-MM-DDThh:mm:ss[.sss]�hh:mm", where [.sss] is optional and can be 1 to 3 digits. type: string example: '2024-02-01T00:00:00Z' activatedDate: description: Date when the account was activated, in ISO 8601 extended format. It can be either in UTC "YYYY-MM-DDThh:mm:ss[.sss]Z" or with an offset "YYYY-MM-DDThh:mm:ss[.sss]�hh:mm", where [.sss] is optional and can be 1 to 3 digits. type: string example: '2024-02-12T00:00:00Z' lastUpdatedDate: description: Date when the account was last updated, in ISO 8601 extended format. It can be either in UTC "YYYY-MM-DDThh:mm:ss[.sss]Z" or with an offset "YYYY-MM-DDThh:mm:ss[.sss]�hh:mm", where [.sss] is optional and can be 1 to 6 digits. type: string example: '2024-02-12T15:19:36.633965Z' tokenType: description: Refers to the type of token requested for this digitization. Valid values are EMBEDDED_SE = Embedded Secure Element, CLOUD = Mastercard Cloud-Based, Payments | STATIC = Static token. type: string minLength: 1 maxLength: 16 example: CLOUD eventType: description: Refers to the type of the provisioning event. Valid values are APPROVED, REQUIRE_ADDITIONAL_AUTHENTICATION, COMPLETED, REJECTED. type: string example: COMPLETED tokenRequestorId: description: Refers to the party that requested the digitization. This field is conditional and is required only if the tokens are assigned by MDES. type: string minLength: 11 maxLength: 11 example: '50134085386' reasonCode: description: 'Contains the reason code for why the notification is being sent. This applies to all tokens in the Tokens array. Must be one of: STATUS_UPDATE- The status of the tokens has been changed, REDIGITIZATION_COMPLETE - The token has been re-digitized to the device, DELETED_FROM_CONSUMER_APP - The token has been deleted from the consumer application. The token may still be active.' type: string minLength: 1 maxLength: 32 example: STATUS_UPDATE correlationId: description: Contains the value linking pre-digitization messages generated during provisioning. type: string minLength: 1 maxLength: 14 example: D0013529619845 source: description: 'Contains the source of the account information. Must be one of: - ACCOUNT_ON_FILE : Source was an existing account on file, - ACCOUNT_ADDED_MANUALLY: Source was a new account entered manually be the account holder, - ACCOUNT_ADDED_VIA_APPLICATION: Source was new account added by another application (for example, Issuer banking app), - EXISTING_TOKEN_CREDENTIAL: Source was an existing token, - ACCOUNT_ADDED_VIA_BROWSER: Source was browser.' type: string minLength: 1 maxLength: 32 example: ACCOUNT_ON_FILE tokenizedMetaData: type: object properties: accountHolderData: description: Contains the account holder's personal information. type: object properties: accountHolderName: description: Conatins the name of the account holder in the format LASTNAME/FIRSTNAME or FIRSTNAME LASTNAME. type: string minLength: 1 maxLength: 27 example: John Doe accountHolderAddress: description: Contains the address for the account holder. Verified as part of reaching the digitization decision. type: object properties: city: description: Refers to the city of the billing address. type: string minLength: 1 maxLength: 32 example: St. Louis country: description: Refers to the country of the billing address. Expressed as a 3-letter (alpha-3) country code as defined in ISO 3166-1. type: string minLength: 3 maxLength: 3 example: USA countrySubdivision: description: Refers to the country subdivision (for example, the state in the U.S.) of the billing address. type: string minLength: 1 maxLength: 12 example: MO line1: description: First line of the billing address. type: string minLength: 1 maxLength: 64 example: zSqLUXpVDvIlGHqBgwWwaqjefUprTD line2: description: Second line of the billing address. type: string minLength: 1 maxLength: 64 example: PzWcIVnnUAcwIhClfoRFCpXVBKXKTz postalCode: description: Refers to the postal code (for example, zipcode in the U.S.) of the billing address. type: string minLength: 1 maxLength: 16 example: '61000' accountHolderMobilePhoneNumber: description: accountHolderMobilePhoneNumber conatins the contact details/mobile number details of the account holder. type: object properties: countryDialInCode: description: Conatins the country code for the phone number. E.g. 1 for US or 44 for UK. type: string minLength: 1 maxLength: 4 example: '1' phoneNumber: description: Contains the phone number, may contain country code along with phone number when countryDialInCode is not present. type: string minLength: 1 maxLength: 20 example: '4692392391' consumerIdentifier: description: Consumer Identifier provided by the token requestor. It's not a mandatory field and is optionally present in AuthorizeService when provided by the wallet provider. type: string minLength: 1 maxLength: 88 example: 1b24f24a24ba98e27d43e345b532a245e4723d7a9c4f624e93452c1b24f24a24b accountHolderEmailAddress: description: The email address of the account holder. Not required - Optionally present in pushAccount request. Not present otherwise. type: string minLength: 6 maxLength: 320 example: abc@email.com deviceLocation: description: Latitude and longitude where the device the consumer is attempting to authorize is located. In the format "(sign) latitude/(sign) longitude" with a precision of 2 decimal places. Ex:"38.63/-90.2". Latitude is between -90 and 90 and longitude is between -180 and 180. type: string minLength: 1 maxLength: 64 example: 38.63/-90.2 sourceIp: description: Contains the IP of the device initiating the request. type: string minLength: 7 maxLength: 64 example: 127.0.0.1 paymentAccountReference: description: The unique account reference assigned to the PAN. type: string minLength: 29 maxLength: 29 example: 50017G8EU2RXB4YI1QIOT9R829RC4 deviceInfo: description: Contains information about the target device to be provisioned. type: object properties: cardCaptureTechnology: description: 'The technology used to capture the card details. New values can be added at any time and must not result in an error. Must be one of: - CAMERA = The card details were captured using the device camera, - MANUAL = The card details were manually entered, - UNKNOWN = It is not known how the card details were entered, READER_MODE = The card details were captured using reader mode.' type: string minLength: 1 maxLength: 32 example: CAMERA deviceName: description: Contains the name that the Account holder has associated to the device with the Payment App Provider. type: string minLength: 1 maxLength: 64 example: Emerson Phone formFactor: description: 'The form factor of the device to be provisioned. New values can be added without notice and should be accpeted. Must be one of: - PHONE = Mobile phone, - TABLET = Tablet computer, - TABLET_OR_EREADER = Tablet computer or e-reader, - WATCH = Watch, - WATCH_OR_WRISTBAND = Watch or wristband, including a fitness band, smart strap, disposable band, watch add-on, security/ID Band, - CARD = Card, STICKER = Sticker, - PC = PC or Laptop, - DEVICE_PERIPHERAL = Device peripherals, such as a mobile phone case or sleeve, - TAG = Tag, such as a key fob or mobile tag, - JEWELRY = Jewelry, such as a ring, bracelet, necklace and cuff links, - FASHION_ACCESSORY = Fashion accessory, such as a handbag, bag charm, glasses, - GARMENT = Garment, such as a dress, - DOMESTIC_APPLIANCE = Domestic appliance, such as a refrigerator, washing machine, - VEHICLE = Vehicle, including vehicle attached devices, - MEDIA_OR_GAMING_DEVICE = Media or gaming device, including a set top box, media player, television, - UNDEFINED = Device type that is not yet defined. Used for wallets introducing a new device type that is not yet public knowledge.' type: string minLength: 1 maxLength: 64 example: PHONE imei: description: The IMEI number of the device being provisioned. type: string minLength: 15 maxLength: 15 example: '352099001761481' isoDeviceType: description: Contains the 2 digit device type provided on the iso messages that the token is being provisioned to. Only present when provided by a Wallet Provider. type: string minLength: 1 maxLength: 2 example: 09 msisdn: description: The MSISDN of the device being provisioned. type: string minLength: 1 maxLength: 15 example: '7307406945' osName: description: 'The name of the device operating system. Must be one of: - ANDROID = Google Android operating system, - WINDOWS = Microsoft Windows operating system, - TIZEN = Tizen operating system, - IOS = Apple iOS operating system, - PAGARE_EMBEDDED_OS = FitPay embedded operating system, - ANDROID_WEAR = Android wear operating system, - EMBEDDED_OS = All Embedded operating system and Real time Operating systems.' type: string minLength: 1 maxLength: 32 example: ANDROID osVersion: description: The version of the device operating system. type: string minLength: 1 maxLength: 32 example: 4.4.4 paymentTypes: description: 'Different types of Payments supported for the token. Must be one of below and Array [String] type: - NFC = The token is NFC capable, - DSRP = The token is DSRP capable, - ECOMMERCE = The token can be used for e-commerce transactions.' type: array items: type: string example: NFC serialNumber: description: Contains the serial number of the device. May be masked. type: string minLength: 1 maxLength: 64 example: 2F6D63 storageTechnology: description: 'The architecture or technology used for token storage. Must be one of: - DEVICE_MEMORY = Device memory, - DEVICE_MEMORY_PROTECTED_TPM = Device memory using a protected trust platform module, - TEE = Trusted execution environment, - SE = Secure element, - SERVER = Server host, - VEE - Virtual Execution Environment.' type: string minLength: 1 maxLength: 32 example: SERVER accountIdHash: description: SHA-256 hash of the Account holder's account ID with the Payment App Provider. Typically expected to be an email address. Type - string (Alpha Numeric) Hex-encoded data (case-insensitive). type: string minLength: 1 maxLength: 64 example: 8F7A8970515A65202E24F7A7240557F467B5218433CD38BCA94778FB445A6952 activeTokenCount: description: The number of active tokens that already exist for the Funding Account based on the token type. Secure Element and Cloud tokens are counted together. Valid values are 0 to 99. A value of 99 means there are 99 or more active tokens. Tokens that have been deleted from the wallet are excluded from the count. type: string minLength: 1 maxLength: 2 example: '44' consumerFacingEntityName: description: Entity name that account holder recognizes as being where they store their PAN (wallets, merchants, commerce platforms&). type: string minLength: 1 maxLength: 100 example: MasterCard walletInfo: description: Contains information about the wallet. type: object properties: walletId: description: The identifier of the Wallet Provider who requested the digitization. Only present when the token is provided to a Wallet Provider. type: string minLength: 1 maxLength: 3 example: '103' paymentAppInstanceId: description: The identifier of the Payment App instance within a device that will be provisioned with a token. Only present when supplied by a Wallet Provider. type: string minLength: 1 maxLength: 48 example: 047C4395D11690022347075090475326A02CB5118F774F2F secureElementId: description: The identifier of the Secure Element to be provisioned with the token. Present only when the token is provisioned to a Secure Element and when provided by the Wallet Provider. type: string minLength: 1 maxLength: 128 example: 1b24f24a24ba98e27d43e345b532a245e4723d7a9c4f624e93452c walletProviderDecisioningInfo: description: Contains information about the decision recommended by the Wallet Provider. type: object properties: accountLifeTime: description: The lifetime of the account with the Token Requestor. type: string minLength: 1 maxLength: 2 example: '4' accountScore: description: Score given to the account by the Wallet Provider. Value must be between 1 and 5. type: string minLength: 1 maxLength: 64 example: '4' deviceScore: description: Score given to the device by the Wallet Provider. Value must be between 1 and 5. type: string minLength: 1 maxLength: 64 example: '3' phoneNumberScore: description: Score given to the phone number by the Wallet Provider. Value must be between 1 and 5. type: string minLength: 1 maxLength: 64 example: '3' recommendationReasons: description: Reasons provided to the Wallet Provider on how the recommended decision was reached. Please refer to the Reason Codes section in [Mastercard Developers](https://developer.mastercard.com/mdes-pre-digitization/documentation/code-formats/#reason-codes) for all eligible values. Type - Array [String]. type: array items: type: string example: ACCOUNT_TOO_NEW recommendationStandardVersion: description: The standards version used by the Wallet Provider to determine the recommended decision. type: string minLength: 1 maxLength: 64 example: 1.0.0 recommendedDecision: description: 'The decision recommended by the Wallet Provider. Must be one of: - APPROVED = Services request was approved, - DECLINED = Services request was declined, - REQUIRE_ADDITIONAL_AUTHENTICATION = Services request requires additional authentication to be approved.' type: string minLength: 1 maxLength: 64 example: APPROVED vcnInfo: description: Contains information about the virtual card account. type: object properties: accountGuid: description: The globally unique identifier of the virtual card account. type: string example: 4fd7fe39-48de-464e-bed2-c148250d7047 ownerInfo: description: Contains information about the Issuer and Corporate. type: object properties: issuerGuid: description: The globally unique identifier of the Issuer. type: string example: SENTTY83BAA6404E87C4D18F67669A687E8D8E86C9E74740FFE8EE403956EBEFF373661648820215 corpGuid: description: The globally unique identifier of the Corporate. type: string example: SENTTYA9C1DB157A85313B10E11ACA0B508844145FB98B7A8529E3DA099F1E5D744ADD1692330249 createdDate: description: Date when the account was created, in ISO 8601 extended format. It can be either in UTC "YYYY-MM-DDThh:mm:ss[.sss]Z" or with an offset "YYYY-MM-DDThh:mm:ss[.sss]�hh:mm", where [.sss] is optional and can be 1 to 3 digits. type: string example: '2024-02-01T00:00:00Z' lastUpdatedDate: description: Date when the account was last updated, in ISO 8601 extended format. It can be either in UTC "YYYY-MM-DDThh:mm:ss[.sss]Z" or with an offset "YYYY-MM-DDThh:mm:ss[.sss]�hh:mm", where [.sss] is optional and can be 1 to 3 digits. type: string example: '2024-02-12T15:19:36.633965Z' accountNumber: description: Contains the Card Account Number. type: string minLength: 12 maxLength: 19 example: XXXXXXXXXXX4547 expiry: description: Card expiry date in YYYY-MM format. type: string minLength: 7 maxLength: 7 example: 2026-12 rcnInfo: description: Contains information about the real card account. type: object properties: accountGuid: description: The globally unique identifier of the real card account. type: string example: 8f89407e-1c7f-4b4b-bfc7-a7ef47207022 accountNumber: description: Contains the Card Account Number. type: string minLength: 12 maxLength: 19 example: XXXXXXXXXXX1234 expiry: description: Card expiry date in YYYY-MM format. type: string minLength: 7 maxLength: 7 example: 2026-12 purchaseRequest: description: Purchase Request Details. type: object properties: purchaseRequestId: description: ICCP Purchase Request ID - uniquely identifies the purchase request and VCN type: integer example: 5213 rcnAlias: description: Real card number alias. type: string example: Travel Expense RCN companyId: description: ICCP Company ID - uniquely identifies the company that created the VCN. type: integer example: 233191 BPCAuthorizationNotificationContent: description: Payment authorization details for a virtual card generated by Business Payment Controls. type: object properties: messageTypeIndicator: description: DE 90, subfield 1 specifies the message type indicator (MTI) present in the authorization message. type: string minLength: 4 maxLength: 4 example: '0100' traceId: description: Contains data from DE 63 (Network Data), subfield 1 (Financial Network Code) and subfield 2 (Banknet Reference Number) and DE 15 (Date, Settlement) that is in the original Authorization Request Response/0110 message. type: string example: 'null' issuerGuid: description: The globally unique identifier of the issuer. type: string example: SENTTY5E4C4B4E0D1BF5991E64A1E0745F40A85B2510CE48EB537011DCED3C483669D61494938440 corpGuid: description: Alternative ID used to uniquely identify the company that created the VCN. type: string example: SENTTY9951972A6FC0206CB494B560E5E6DC5D02A2BD21D89612EF4A18358ECC777DCF1494921797 processor: description: '' type: object properties: issuerId: description: Unique identifier of the issuer type: integer example: 523456789 responseCode: description: Two-character alphanumeric reason code received from the processor for the Advice/Reversal. For all possible values refer to Customer Interface Specification field name DE-39. type: string example: '00' financialNetworkCode: description: DE 63, subfield 1 identifies the specific program or service (for example, the financial network, financial program, or card program) with which the transaction is associated. type: string example: MCC 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. This value is derived from DE63, subfield 2. type: string example: Q4A91A onBehalfResult: description: Letter representing the decision that has been made. This value is derived from DE-48 SF71 subfield-1. For all possible values refer to Customer Interface Specification field name DE-48 SF71. type: string example: V onBehalfService: description: This field notifies the issuer of the On-behalf Service performed on the transaction and the results. This value is derived from DE-48 SF71 subfield-2. For all possible values refer to Customer Interface Specification field name DE-48 SF71. type: string example: '17' realPaymentCard: description: '' type: object properties: number: description: DE 2 (Primary Account Number [PAN]) is a series of digits used to identify a customer account or relationship. type: string example: '5540590000100111' expiry: description: DE 14 (Date, Expiration) specifies the year and month after which an issuer designates a cardholders card as expired. type: string example: '2404' accountGuid: description: Business Payment Controls real card Guid. type: string example: 0ENT7d2bb852a22f822d441f61605054dab329ab2024a6c37cac5151e845cbb15d291698658882 virtualPaymentCard: description: '' type: object properties: number: description: DE 48, subelement 33, subfield 2 (Account Number) indicates the Primary Account Number (PAN) mapping account number. type: string example: '5522446433180570' expiry: description: DE 48, subelement 33, subfield 3 (Expiration Date) indicates the expiration date of the PAN mapping account. type: string example: '2402' accountGuid: description: Business Payment Controls virtual card Guid. type: string example: SENTTY13379505AC33CDA796BCBE850EADAF625FAD6B071E8D100CB1ECBEA acceptor: description: A collection of field definitions that provide acceptor (merchant) details type: object properties: name: description: DE 43 (Acceptor Name and Location), subfield 1 (Acceptor Name) contains the name of the acceptor that should be recognizable by the cardholder and may include other descriptors, such as a store number. type: string example: acceptor.name cityName: description: DE 43 (Acceptor Name and Location), subfield 3 (Acceptor City) indicates the city of the merchant. type: string example: cityName subDivisionCode: description: DE 43, subfield 5 contains the ISO 3166-1 state or country code of the acceptor. type: string example: TN terminalId: description: DE 41 contains the identifier assigned by the acceptor or the acquirer to the terminal, payment gateway, or other acceptance device used to capture account data to affect a transaction at the acceptor location. type: string example: '0001' id: description: DE 42 contains Identifies the acceptor ID assigned by the acquirer to the acceptor and its location, or to the payment facilitator. type: string example: '497520000000000' merchantCategoryCode: description: DE 18 (Merchant Type) is the classification (acceptor business code/merchant category code [MCC]) of the merchants type of business or service. type: string example: '0041' merchantCategoryCodeDescription: description: Description of the merchant category code defined under DE 18 (Merchant Type). type: string example: GAMBLING TRANSACTIONS environment: description: DE 22, subfield 1 (POS Terminal PAN Entry Mode) indicates the method (transaction environment) used for PAN entry to initiate a transaction. type: string example: 'null' localDate: description: DE 13 (Date, Local Transaction) is the local month and day on which the transaction takes place at the point of acceptor location. Date format in MMDD. type: string example: '0410' localTime: description: DE 12 (Time, Local Transaction) is the local time at which the transaction takes place at the point of acceptor location. Time format in hhmmss. type: string example: 092900 retrievalReferenceNumber: description: DE 37 (Retrieval Reference Number) is a document reference number supplied by the system retaining the original source document of the transaction and assists in locating that source document or a copy thereof. type: string example: 074975208903 posCountryCode: description: DE 61, subfield 13 (POS Country Code) indicates the country of the POS location (not the acquirer location) using ISO-specified codes. type: string example: '840' posCountryCodeDescription: description: Specifies the name of the country in which the merchant operates. type: string example: 'null' posTransactionStatus: description: Specifies the indicates the purpose or status of the request. For all possible values refer to Customer Interface Specification field name DE 61 S7. type: string example: '0' amount: description: '' type: object properties: amount: description: DE 4 (Amount, Transaction) specifies the amount requested by the cardholder, denominated in the local currency of the acquirer or the source location of the transaction. This value is represented in minor units, which are the smallest units of a currency and are determined by the number of decimal places. type: number example: 9110 currencyCode: description: DE 49 (Currency Code, Transaction) specifies the currency code of the funds the cardholder requested in the local currency of the acquirer or source location of the transaction. type: string example: 840 currencyCodeAlphabetic: description: Specifies the currency name of the funds the cardholder requested in the local currency of the acquirer or source location of the transaction. type: string example: USD cardHolderAmount: description: '' type: object properties: amount: description: DE 6 (Amount, Cardholder Billing) represents the transaction amount in the issuers currency. This is the amount billed to the cardholder in the cardholder's account currency, excluding any cardholder billing fees. The value is expressed in minor units, which are the smallest units of a currency and depend on the number of decimal places for that currency. type: number example: 16100 currencyCode: description: DE 51 (Currency Code, Cardholder Billing) defines the currency of DE 6 (Amount, Cardholder Billing). It indicates the currency code of the transaction amount in the issuers currency. type: string example: 840 currencyCodeAlphabetic: description: Indicates the currency name of the transaction amount in the issuers currency. type: string example: USD transactionInformation: description: '' type: object properties: acquirerInstitutionIdCode: description: DE 32 (Acquiring Institution ID Code) identifies the acquiring institution (for example, merchant bank) or its agent by Interbank Card Association ID. type: integer example: 5173 forwardingInstitutionIdCode: description: Specifies the Interbank Card Association ID of the processor. This data element contains the identifier assigned by the acquirer to the acceptor and its location, or to the payment facilitator. type: integer example: 497520000000000 conversionRateCardholderBilling: description: DE 10 (Conversion Rate, Cardholder Billing) is the factor used in the conversion (currency exchange rate) from transaction to cardholder billing amount. type: number example: 1234 processingCode: description: DE 3 (Processing Code) describes the effect of a transaction on the customer account and the type of accounts affected. type: string example: '00' authCode: description: DE 38 (Authorization ID Response) is a transaction response ID code that the authorizing institution assigns. DE 38 is used to transmit a card issuers authorization code for Authorization transactions. type: string example: '04' dateTime: description: DE 7 (Transmission Date and Time) is the date and time that a message is entered into the Mastercard Network. Date and time must be expressed in Coordinated Universal Time (UTC). Date and time format is MM-DD'T'HH:MM:SS.SSSXXX". type: string example: 'null' environment: description: DE 22, subfield 1 (POS Terminal PAN Entry Mode) indicates the method used for PAN entry to initiate a transaction. Possible values are UNKNOWN, POS, MOTO, ECOM, ATM, PAYPASS, PWCB. type: string example: 'null' issuerResponse: description: Two-character alphanumeric reason code received from the processor for the Advice/Reversal. For all possible values refer to Customer Interface Specification field name DE-39. type: string example: 'null' systemTraceAuditNumber: description: Unique six-digit identifier generated by the Acquirer, must be the same in the Advice, will be different for the reversal. type: string example: '011174' reversal: description: '' type: object properties: replacementTransactionAmount: description: DE 95, subfield 1 (Actual Amount, Transaction) indicates the amount for a reversal transaction in the case of a partial reversal. This amount is represented in the smallest unit of the currency, also known as minor units, and varies depending on the number of decimal places the currency uses. type: number example: 100000 replacementSettlementAmount: description: DE 95, subfield 2 (Actual Amount, Settlement) indicates the actual settlement amount in the settlement currency in the case of a partial reversal. This amount is represented in the smallest unit of the currency, also known as minor units, and varies depending on the number of decimal places the currency uses. type: number example: '000000200000' replacementCardholderAmount: description: DE 95, subfield 3 (Actual Amount, Cardholder Billing) the actual amount in the issuer currencyin the case of a partial reversal. This amount is represented in minor units, which are the smallest units of a currency, and is dependent on the number of decimal places in the currency. type: number example: 300000 posEntryMode: description: Indicates the method used for PAN entry to initiate a transaction and the PIN entry capabilities. type: string example: '801' originalMessage: description: '' type: object properties: messageTypeIndicator: description: Indicates the Message Type Identifier (MTI) of the original message. type: string minLength: 4 maxLength: 4 example: '0110' systemTraceAuditNumber: description: Unique six-digit identifier generated by the Acquirer, must be the same in the Advice, will be different for the reversal. type: string example: '011174' transmissionRawDateTime: description: Indicates the Transmission Date and Time that was in the original message when it entered into the Mastercard Network. Date and time must be expressed in Coordinated Universal Time (UTC). type: string example: 0412112800 advice: description: '' type: object properties: reasonCode: description: DE 60, subfield 1 (Advice Reason Code) indicates to the receiver of an Advice message the specific reason for the transmission of the Advice message. type: string example: '650' fundingSource: description: '' type: object properties: fundingSourceAlias: description: BPC Funding Source Alias type: string example: testFSAlias fundingSourceGuid: description: BPC Funding Source Guid. The globally unique identifier for the funding source. type: string example: 0ENTde1a52b828ca014dff5de6038bbfab426f8f05ac5a2fc143783aeb01d161d6b11698658887 Specification: description: Specifies criteria to determine whether an event should cause a notification to be generated. type: object properties: id: description: Specification id, auto-generated by the system and read-only for the client type: string minLength: 1 maxLength: 255 readOnly: true example: CNSa91bf379b48a593fd17f07f431bad8fb296796498f4e9982ea134394c1fa4f071556724072 type: description: The type of item to which the criteria refers. Currently the type 'FIELD' is allowed, which refers to matching a field in the notification itself type: string minLength: 1 maxLength: 255 default: FIELD example: FIELD operator: description: The operator that defines how this specification (criteria) logically relates to other specifications in the list. The first specification in the list will have an operator of 'WHERE' and subsequent specifications will have an 'AND' or 'OR' relationship with their preceding specification type: string minLength: 1 maxLength: 255 default: WHERE example: WHERE fieldMappingName: description: The name of the field that is to be checked type: string minLength: 1 maxLength: 255 example: purchaseRequest.rcnAlias fieldOperator: description: The check operation that is to be performed. Currently one of allowed values are 'EQUALS', 'GREATER_THAN', 'LESS_THAN', 'BETWEEN' type: string minLength: 1 maxLength: 255 default: EQUALS example: EQUALS expectedContent: $ref: '#/components/schemas/FieldContent' children: description: A list of nested child specifications, used where needed to implement complex matching logic type: array items: $ref: '#/components/schemas/Specification' required: - type - operator - fieldMappingName - fieldOperator - expectedContent Error-404: type: object required: - Errors properties: Errors: type: object required: - Error properties: Error: type: array description: An array of error objects giving information about relevant errors. items: type: object properties: Source: type: string description: The origin of the error example: Commercial Event Notifications ReasonCode: type: string description: A unique error code representing the error that occurred example: resource.not.found Description: type: string description: A developer-friendly description of the error that occurred example: The resource provided is not found Recoverable: type: boolean description: Can the error be recovered by retrying the same request later? example: false Details: type: string description: Additional details regarding the error that occurred example: The specified resource was not found Subscription: properties: id: description: Subscription id, auto-generated by the system and read-only for the client type: string minLength: 1 maxLength: 255 readOnly: true example: CNSa91bf379b48a593fd17f07f431bad8fb296796498f4e9982ea134394c1fa4f071556724070 name: description: Subscription name - must be unique for the client and must comprise letters, numbers, dashes and underscores only. To check for uniqueness, you can retrieve the existing collection of subscriptions by performing a GET on the /subscriptions resource type: string minLength: 1 maxLength: 50 example: TEST_SUBSCRIPTION subjectType: description: The type of event to which this subscription refers. Currently allowed values are 'PAYMENT_AUTHORIZATION', 'PAYMENT_UPDATE', 'CLEARING', 'BPC_PAYMENT_AUTHORIZATION', 'TOKEN_PROVISIONING_EVENT' and 'TOKEN_LIFECYCLE_EVENT'. type: string minLength: 1 maxLength: 50 enum: - PAYMENT_AUTHORIZATION - PAYMENT_UPDATE - CLEARING - BPC_PAYMENT_AUTHORIZATION - TOKEN_PROVISIONING_EVENT - TOKEN_LIFECYCLE_EVENT example: PAYMENT_AUTHORIZATION subscriberId: description: The id of the subscriber (client) to which the subscription belongs type: string minLength: 1 maxLength: 255 readOnly: true example: CNSa91bf379b48a593fd17f07f431bad8fb296796498f4e9982ea134394c1fa4f071556724071 active: description: Denotes whether the subscription is active (in which case notifications will be generated for matching events) or not (in which case no notifications will be generated for this subscription) type: boolean example: true specifications: description: A list of criteria specifications that define what events will cause notifications to be generated. If the list of specifications is empty, then notifications will be generated for all events for the specified subject type that the client is entitled to receive. type: array items: $ref: '#/components/schemas/Specification' required: - name - active - subjectType FieldMapping: description: A collection of field definitions any of which can be used to specify matching criteria when creating a subscription. type: object properties: id: description: Field mapping id type: string minLength: 1 maxLength: 255 readOnly: true example: CNSa91bf379b48a593fd17f07f431bad8fb296796498f4e9982ea134394c1fa4f071556724073 name: description: The name used to refer to the field in the specification criteria. type: string minLength: 1 maxLength: 255 example: purchaseRequest.rcnAlias displayName: description: Descriptive name of the field type: string minLength: 1 maxLength: 255 example: Purchase request RCN alias subjectType: description: The type of subject to which the field refers. Currently allowed values are 'PAYMENT_AUTHORIZATION', 'PAYMENT_UPDATE', 'CLEARING', 'BPC_PAYMENT_AUTHORIZATION', 'TOKEN_PROVISIONING_EVENT' and 'TOKEN_LIFECYCLE_EVENT'. type: string minLength: 1 maxLength: 50 example: PAYMENT_AUTHORIZATION contentType: description: What type of information the field (and therefore the matching criteria for that field) will contain. Currently one of allowed values are 'INTEGER', 'number', 'TEXT', 'DATE', 'CURRENCY'. type: string default: TEXT example: TEXT BPSPaymentUpdateNotificationContent: description: The content of the notification, the structure of which depends on the subject. type: object properties: source: description: Originating system of the notification, which is Business Payment Service (BPS). type: string example: BPS purchaseRequestId: description: ICCP Purchase Request ID - uniquely identifies the purchase request and VCN type: string example: '360147' bpsTransactionId: description: BPS Payment Instruction ID. type: string example: 65098ff7-54f9-42fe-b89c-3fff8470658c status: description: "Purchase request status in Business Payment Service (BPS).\n SUBMITTED: Payment instruction is submitted to Supplier Payment Agent.\n PENDING: Payment instruction is pending payment.\n RECEIVED: Payment instruction is received by Track BPS.\n ACCEPTED: Payment instruction is accepted by BPS based on the Suppliers Payment preferences.\n APPROVED: Payment instruction is approved by Supplier Payment Agent.\n DECLINED: Payment instruction is declined by Supplier Payment Agent." type: string example: APPROVED updatedDate: description: Last updated date (UTC) on which the purchase request is updated in BPS. type: string example: '2021-09-08T16:06:11.598505Z' transactionIdentification: description: Identification of the authorization transaction. type: object properties: approvalCode: description: Value assigned by the approval entity indicating approval. type: string example: SUBMITTED retrievalReferenceNumber: description: Reference supplied by the system retaining the original source information and used to assist in locating that information or a copy of the information. type: string example: testRetrievalReferenceNumber transactionReference: description: Identification of the transaction by the card acceptor. It may appear on the receipt of the cardholder. It remains unchanged throughout the lifetime of the transaction. type: string example: testTransactionReference transactionDateTime: description: Local date and time of the transaction assigned by the Point Of Interaction (POI). type: string example: '2021-08-17T17:37:23.230Z' statusReasonInformation: description: Identification of the authorization transaction. type: object properties: reasonCode: description: Specifies the reason for the status. type: string example: ALT_MOP_NOT_BPS description: description: Specifies the description for the status. type: string example: Does not accepts BPS payment errors: description: Error Codes type: object properties: reasonCode: description: Specifies the reason for the error. type: string example: parameter.limit.invalid description: description: Specifies the description for the error. type: string example: The start parameter is required but was not provided. Ica: type: string minLength: 4 maxLength: 15 example: '1111' description: A number assigned by Mastercard to a licensed customer to identify the member in transactions. This is used as an identifier for data submitted to ABU. SubscriptionInquiry: allOf: - $ref: '#/components/schemas/CustomerAccount' - type: object MerchantId: type: string maxLength: 15 minLength: 15 example: '000000000002535' description: A merchant ID or payment facilitator ID, previously registered with Mastercard. CustomerAccount: type: object required: - requestId - customer - account properties: requestId: type: string maxLength: 64 minLength: 1 example: 323e304f-1cfc-4f0d-ac07-e6037ce09925 description: An identifier established by the customer. customer: $ref: '#/components/schemas/Customer' account: $ref: '#/components/schemas/Account' OutSubscription: allOf: - $ref: '#/components/schemas/AccountUpdate' - type: object Error: type: object properties: Source: type: string example: Validation description: The application name that generated this error. Every error message that is generated and returned by the gateway will have this field equal to Gateway. maxLength: 100 minLength: 1 ReasonCode: type: string example: ICA_VALUE_REQUIRED description: A unique constant identifying the error case encountered during request processing. maxLength: 100 minLength: 1 Description: type: string example: ICA required for ABU client eligibility validation description: Short description of the ReasonCode field. maxLength: 1000 minLength: 10 Recoverable: type: boolean example: false description: Indicates whether this error will always be returned for this request, or retrying could change the outcome. Details: type: string description: (Optional) Where appropriate, indicates detailed information about data received and calculated during request processing, to help the customer with diagnosing errors. example: ICA is Mandatory maxLength: 5000 minLength: 0 Customer: description: Representation of a customer type: object allOf: - $ref: '#/components/schemas/BaseCustomer' - type: object properties: subMerchantId: $ref: '#/components/schemas/SubMerchantId' Account: description: Representation of an account type: object allOf: - $ref: '#/components/schemas/BaseAccount' - type: object Expiry: type: string maxLength: 4 minLength: 4 example: '1228' description: The expiration date associated to the account number being inquired upon. Must be in MMYY format. AccountUpdate: type: object properties: account: $ref: '#/components/schemas/Account' responseIndicator: $ref: '#/components/schemas/ResponseIndicator' SubscriptionDeletion: allOf: - $ref: '#/components/schemas/CustomerAccount' - type: object ResponseIndicator: type: string pattern: ^(VALID|UNKNOWN|NON_PARTICIPATING|CONTACT|EXPIRY|ACCOUNT_UPDATE) example: VALID description: 'An indicator to help explain the status of the account being inquired on. Possible values are: * `VALID` = Matches the account as reported by the issuer. * `UNKNOWN` = Account number is not known to ABU or part of a participating BIN (Bank Identification Number) and/or issuer. * `NON_PARTICIPATING` = Account number is not known to ABU or part of a non-participating BIN (Bank Identification Number) and/or issuer. * `CONTACT` (C) = Contact the issuer. * `EXPIRY` (E) = The card inquired on is expired, updated expiry date returned. * `ACCOUNT_UPDATE` (A) = The card inquired on is updated, updated card number and expiry date returned.' ErrorWrapper: type: object required: - Errors properties: Errors: $ref: '#/components/schemas/Errors' OutSubscriptionInquiry: type: object properties: subscribed: type: boolean example: true description: 'Indicate to the ABU Integrator if they are subscribed to the inquired account. account number for a given merchant. *`subscribed: true`: Customer is subscribed. *`subscribed: false`: Customer is not subscribed.' SubMerchantId: type: string maxLength: 15 minLength: 15 example: '000000000000001' description: An optional identifier for a sub-merchant of a payment facilitators under a registered merchant ID. AccountNumber: type: string maxLength: 19 minLength: 13 example: '5573491171027315' description: The account number being inquired upon. BaseCustomer: description: Properties common to all customer type: object required: - ica - merchantId properties: ica: $ref: '#/components/schemas/Ica' merchantId: $ref: '#/components/schemas/MerchantId' Errors: type: object required: - Error properties: Error: $ref: '#/components/schemas/ErrorList' BaseAccount: description: Properties common to all accounts type: object required: - accountNumber - expiryDate properties: accountNumber: $ref: '#/components/schemas/AccountNumber' expiryDate: $ref: '#/components/schemas/Expiry' Subscription_2: allOf: - $ref: '#/components/schemas/CustomerAccount' - type: object ErrorList: type: array minItems: 1 items: $ref: '#/components/schemas/Error' requestBodies: UpdateSubscription: description: Subscription required: true content: application/json: schema: $ref: '#/components/schemas/Subscription' examples: BPC PAYMENT AUTHORIZATION: $ref: '#/components/examples/UpdateBPCAuthorizationSubscription' ICCP CLEARING: $ref: '#/components/examples/UpdateICCPClearingSubscription' ICCP PAYMENT AUTHORIZATION: $ref: '#/components/examples/UpdateICCPAuthorizationSubscription' BPS PAYMENT UPDATE: $ref: '#/components/examples/UpdateBPSPaymentUpdateSubscription' ICMP TOKEN LIFECYCLE: $ref: '#/components/examples/UpdateICMPLifecycleSubscription' ICMP TOKEN PROVISIONING: $ref: '#/components/examples/UpdateICMPProvisioningSubscription' CreateSubscription: description: Subscription required: true content: application/json: schema: $ref: '#/components/schemas/Subscription' examples: BPC PAYMENT AUTHORIZATION: $ref: '#/components/examples/CreateBPCAuthorizationSubscription' ICCP CLEARING: $ref: '#/components/examples/CreateICCPClearingSubscription' ICCP PAYMENT AUTHORIZATION: $ref: '#/components/examples/CreateICCPAuthorizationSubscription' BPS PAYMENT UPDATE: $ref: '#/components/examples/CreateBPSPaymentUpdateSubscription' ICMP TOKEN LIFECYCLE: $ref: '#/components/examples/CreateICMPLifecycleSubscription' ICMP TOKEN PROVISIONING: $ref: '#/components/examples/CreateICMPProvisioningSubscription' SubscriptionDeletionRequest: description: ABU Integrator sends subscriptionDeletion request to unsubscribe from an account. required: true content: application/json: schema: $ref: '#/components/schemas/SubscriptionDeletion' SubscriptionRequest: description: ABU Integrator sends subscription request to subscribe to an account. required: true content: application/json: schema: $ref: '#/components/schemas/Subscription_2' SubscriptionInquiryRequest: description: ABU Integrator subscription request to inquire on a subscription for an account number. required: true content: application/json: schema: $ref: '#/components/schemas/SubscriptionInquiry' parameters: subscriptionIdParam: in: path name: id description: Subscription ID - Find a Subscription ID by running POST /subscriptions or GET /subscriptions schema: type: string required: true example: 0CNSa91bf379b48a593fd17f07f431bad8fb296796498f4e9982ea134394c1fa4f071556724070 subscriptionsLimitParam: in: query name: limit description: Number of Subscriptions to be returned per page. By Default 25 Subscriptions are returned per page schema: type: integer required: false example: 10 subscriptionsOffsetParam: in: query name: offset description: For pagination of responses - the offset from which to calculate the list of returned subscriptions. Defaults to 0 schema: type: integer required: false example: 0 sortParam: in: query name: sort description: Sort the returned subscriptions using the indicated fields and direction. For example, 'name' sorts by name ascending, '-id' sorts by subscription id descending. Defaults to sort by subscription name in ascending order schema: type: string required: false example: name