swagger: '2.0' info: title: Mastercard Bill Payment Validator Account Opening Account 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: Account Subscriptions paths: /subscription-deletions: post: summary: Mastercard Unsubscribe From an Account to Stop Receiving Updates for Account Information in the Future. tags: - Account 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: schemas: 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. 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' 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. SubscriptionDeletion: allOf: - $ref: '#/components/schemas/CustomerAccount' - type: object ErrorWrapper: type: object required: - Errors properties: Errors: $ref: '#/components/schemas/Errors' 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' ErrorList: type: array minItems: 1 items: $ref: '#/components/schemas/Error' 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 examples: 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. responses: UnauthorizedErrorResponse: description: Authentication information was missing or invalid content: application/json: schema: $ref: '#/components/schemas/ErrorWrapper' examples: UnauthorizedExample: $ref: '#/components/examples/UnauthorizedExample' 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. requestBodies: SubscriptionDeletionRequest: description: ABU Integrator sends subscriptionDeletion request to unsubscribe from an account. required: true content: application/json: schema: $ref: '#/components/schemas/SubscriptionDeletion'