openapi: 3.0.1 info: title: Core AccessGroup Mobills IVR API version: core tags: - name: Mobills IVR paths: /Mobills/Ivr/Pay/GetCustomerInvoiceDetails: post: tags: - Mobills IVR summary: Get Customer Invoice Details description: "This endpoint creates a record in payment transaction table.\n\n## Request\n\n| Property | Description |\r\n| ------------------------- | ------------------------------------------------------------------------|\r\n| CustomerARCode | The account code used for Accounts Receivable. (AMCS will provide the account ARCode) |\r\n| Channel | Channel can be only MOBILL OR IVR | \n\n ## Response\n\n| Property | Description |\r\n| ------------------------- | ------------------------------------------------------------------------|\r\n| CustomerGuid | The GUID associated to the customer. |\r\n| CustomerName |The customer's name. |\r\n| CustomerBalance |The amount associated to the payment. |\r\n| CustomerCurrency | Customer Currency associated with the Customer account. |\r\n| InvoiceDetails |It will show all the invoices associated with the account |\r\n| InvoiceNumber |The invoice number associated to the invoice. Filterable. |\r\n| InvoiceGUID |The GUID associated to the invoice. |\r\n| InvoiceDate |The invoiceDate associated to the invoice in ISO format (YYYY-MM-DD). |\r\n| ZipCode |Zip code is associated with the account |\r\n| InvoiceDueDate |The dueDate associated to the invoice in ISO format (YYYY-MM-DD). |\r\n| UnallocatedAmount |The Unallocated Amount on the customers account. |\r\n| InvoiceCurrency |Invoice Currency asscoaited with the customer account |\r\n| TransactionReference |Transaction Reference associated with account |\r\n| ZipCode |ZipCode associated with the account address |\r\n| InvoiceDate |The invoiceDate associated to the invoice in ISO format (YYYY-MM-DD). |\r\n| LastPaymentDate |When the last payment was made |\r\n| MakePaymentLink |It shows the payment link (if any invoice available) |\r\n| IsActive |Whether the customer is active |\r\n| MobillsEnrollment |Whether the mobills enrollment is active. |\r\n| GUID |Guid associated with the account" requestBody: content: application/json: schema: $ref: '#/components/schemas/AMCSPayMobillsIvrRequest' responses: '200': description: Ok content: application/json: schema: $ref: '#/components/schemas/AMCSPayMobillsIvrResponse' '204': description: No Content content: application/json: schema: $ref: '#/components/schemas/AMCSPayErrorContentResponse' '404': description: Not Found content: application/json: schema: $ref: '#/components/schemas/AMCSPayErrorResponse' /payACIInteractiveVoiceResponse: post: tags: - Mobills IVR summary: Post Back IVR Response description: "This endpoint updates an existing record in the payment transaction table and creates a record in the Amcs-Pay Database.\n\n## Request\n\n| Property | Description |\r\n| ------------------------- | ------------------------------------------------------------------------|\r\n| TransactionReference | The Transaction Reference can get from the GetCustomerInvoce API. |\r\n| PaymentAmount | The payment amount associated to the payment request. |\r\n| Currency | Currency associated with the Customer account.|\r\n| Timestamp | The time stamp associated to the response payload. |\r\n| TransactionPaymentType | Transaction payment type can be any of \"CARD\", \"ACH\". |\r\n| IsIVR |IsIVR is a flag and should be set to true.. |\r\n| Code |The codes for successfully processed transactions. |\r\n| Description |Description associated with the Code. |\r\n| Bin |The first six digits of the card.number. |\r\n| Last4Digits |Last 4 digits of the \"Credit\", \"Debit\" Card. |\r\n| PaymentType |Payment Type DB, Debit: Debits the account of the end customer and credits the merchant account. |\r\n| Holder |Holder of the credit card account. |\r\n| ExpiryMonth | The expiry month of the card. |\r\n| ExpiryYear |The expiry year of the card. |\r\n| ConfirmationNumber |The Confirmation Number (payment reference) data sent by the provider associated to the original payment response.| \n\n ## Response\n\n| Property | Description |\r\n| ------------------------- | ------------------------------------------------------------------------|\r\n| |\r\n| Response |It returns the success response." requestBody: content: application/json: schema: $ref: '#/components/schemas/AMCSPayPostBackIvrRequest' responses: '200': description: Ok content: application/json: schema: $ref: '#/components/schemas/AMCSPayIvrResponse' '404': description: Not Found content: application/json: schema: $ref: '#/components/schemas/AMCSPayErrorResponse' '500': description: Internal Server Error content: application/json: schema: $ref: '#/components/schemas/AMCSPayErrorResponse' /ivr/pay/getCustomerAccountDetail: post: tags: - Mobills IVR summary: Get Customer Account Detail description: "If the credit balance flag is false, then this endpoint initiates a payment for the IVR and returns the customer's details. If it's true, then it returns the customer's name along with the available credit balance in the account.\n\n## Request\n\n| Property | Description |\r\n| ------------------------- | ------------------------------------------------------------------------|\r\n| CustomerARCode | The account code used for Accounts Receivable. (AMCS will provide the account ARCode) |\r\n| Channel | Channel can be only MOBILL OR IVR. |\r\n| Amount | Amount that customer wants to make a payment. |\r\n| CreditBalance | The credit balance flag can be true or false. | \n\n ## Response\n\n| Property | Description |\r\n| ------------------------- | ------------------------------------------------------------------------|\r\n| CustomerId | The account code used for Accounts Receivable. (AMCS will provide the account ARCode) |\r\n|CustomerGuid | The GUID associated to the customer. |\r\n| CustomerName |The customer's name. |\r\n| CustomerBalance |The amount associated to the payment.|\r\n| CustomerCurrency | Customer Currency associated with the Customer account.|\r\n| CreditBalance |The Credit Balance available balance.|\r\n| ZipCode |ZipCode associated with the account address |\r\n| LastPaymentAmount |what was the last payment amount. |\r\n| LastPaymentDate |When the last payment was made. |\r\n| TransactionReference |Transaction Reference associated with account." requestBody: content: application/json: schema: $ref: '#/components/schemas/AMCSPayAccountDetailIvrRequest' responses: '200': description: Ok content: application/json: schema: $ref: '#/components/schemas/AMCSPayAccountDetailIvrResponse' '204': description: No Content content: application/json: schema: $ref: '#/components/schemas/AMCSPayErrorContentResponse' '404': description: Not Found content: application/json: schema: $ref: '#/components/schemas/AMCSPayErrorResponse' '500': description: Internal Server Error content: application/json: schema: $ref: '#/components/schemas/AMCSPayErrorResponse' components: schemas: AMCSPayAccountDetailIvrRequest: type: object required: - customerARCode - channel - amount properties: customerARCode: type: string example: ACC1007 nullable: false channel: type: string example: MOBILL / IVR nullable: false amount: type: integer example: 10 nullable: true creditBalance: type: boolean example: true nullable: true additionalProperties: false AMCSPayInvoiceDetails: type: object properties: invoiceNumber: type: string example: INV001 nullable: false invoiceGUID: format: uuid example: 00000000-0000-0000-0000-000000000000 type: string nullable: false invoiceDate: type: string example: YYYY-MM-DD nullable: false zipCode: type: string example: '00501' nullable: true invoiceDueDate: type: string example: YYYY-MM-DD nullable: false unallocatedAmount: type: integer example: '120.95' nullable: true invoiceCurrency: type: string example: EUR nullable: false additionalProperties: false AMCSPayIvrResponse: type: object example: Success AMCSPayErrorContentResponse: type: string nullable: true AMCSPayErrorResponse: type: object properties: message: type: string example: error message nullable: true description: The exception message. type: type: string example: error message nullable: true description: The type of exception thrown. stackTrace: type: string example: error message nullable: true description: The stack trace of the error encountered. AMCSPayAccountDetailIvrResponse: type: object properties: creditBalanceAsTrue: type: array items: $ref: '#/components/schemas/AMCSPayAccountDetailIvrResponseCreditBalanceResponse' nullable: true creditBalanceAsFalse: type: array items: $ref: '#/components/schemas/AMCSPayAccountDetailIvrResponseCreditBalanceAsFalse' nullable: true AMCSPayMobillsIvrRequest: type: object required: - customerARCode - channel - amount properties: customerARCode: type: string example: ACC1007 nullable: false channel: type: string example: MOBILL / IVR nullable: false additionalProperties: false AMCSPayAccountDetailIvrResponseCreditBalanceResponse: type: object properties: customerid: format: string type: string example: ACC1001 nullable: false customerName: type: string example: Mark Smith nullable: false creditBalance: type: integer example: '200.00' nullable: true AMCSPayAccountDetailIvrResponseCreditBalanceAsFalse: type: object properties: customerid: format: uuid type: string example: ACC1001 nullable: false customerGuid: format: uuid type: string example: 00000000-0000-0000-0000-000000000000 nullable: false customerName: type: string example: Mark Smith nullable: false customerBalance: type: integer example: '120.95' nullable: true customerCurrency: type: string example: EUR creditBalance: type: integer example: '200.00' nullable: true zipCode: type: string example: '00501' nullable: true lastPaymentAmount: type: string example: '155.50' nullable: true lastPaymentDate: type: string example: YYYY-MM-DD nullable: true transactionReference: type: string format: uuid example: 00000000-0000-0000-0000-000000000000 nullable: true AMCSPayPostBackIvrRequest: type: object required: - transactionReference - paymentAmount - currency - timestamp - transactionPaymentType - isIVR - code - description - bin - last4Digits - paymentType - holder - expiryMonth - expiryYear - confirmationNumber properties: transactionReference: type: string format: uuid nullable: false example: c4521490-c0dd-40e5-94c6-afe90073aa1b paymentAmount: type: integer example: 10.2 nullable: false currency: type: string example: EUR nullable: false timestamp: type: string format: datetime example: 2021-10-21-17:20:30 nullable: false transactionPaymentType: type: string example: Credit Card nullable: false isIVR: type: boolean example: 'true' nullable: false code: type: string example: 000.100.112 nullable: false description: type: string example: Request successfully processed in 'Merchant In Connect nullable: false bin: type: string example: '545454' nullable: false last4Digits: type: string example: '5454' nullable: false paymentType: type: string example: DB nullable: false holder: type: string example: SK_Test nullable: false expiryMonth: type: string example: '06' nullable: false expiryYear: type: string example: '2034' nullable: false confirmationNumber: type: string format: uuid nullable: false example: c4521490-c0dd-40e5-94c6-afe90073aa1b additionalProperties: false AMCSPayMobillsIvrResponse: type: object properties: customerGuid: format: uuid type: string example: 00000000-0000-0000-0000-000000000000 nullable: false customerName: type: string example: Mark Smith nullable: false customerBalance: type: integer example: '120.95' nullable: true customerCurrency: type: string example: EUR invoiceDetails: type: object $ref: '#/components/schemas/AMCSPayInvoiceDetails' transactionReference: type: string format: uuid example: 00000000-0000-0000-0000-000000000000 nullable: true zipCode: type: string example: '00501' nullable: true dueDate: type: string example: YYYY-MM-DD nullable: true invoiceDate: type: string example: YYYY-MM-DD nullable: true lastPaymentDate: type: string example: YYYY-MM-DD nullable: true lastPaymentAmount: type: string example: '155.50' nullable: true makePaymentLink: format: url type: string example: https://localhost/paybylink?key=092159d8-9e57-41a5-af6c-745bd45ff2f7 nullable: true isActive: type: boolean example: 'true' mobillsEnrollment: type: boolean example: 'true' guid: format: uuid type: string example: 00000000-0000-0000-0000-000000000000 nullable: true