---
swagger: "2.0"
info:
title: SERV-SOR-D-AccountCashTransaction
description: Microservice to manage cash transactions
version: 1.0.3
x-ibm-name: serv-sor-d-accountcashtransaction
host: 127.0.0.1
schemes:
- https
basePath: /api
produces:
- application/json
paths:
/v1/servicing/accounts/deposits/cash-transactions/folio:
post:
tags:
- create-folio
operationId: create-folio
summary: Creates a folio number for authorize cash transactions
description: Generates a folio number to get a transaction approval according
to the limits of cash politics
consumes:
- application/json
produces:
- application/json
parameters:
- name: client_id
in: header
required: true
type: string
description: Client ID generated during application registration
- name: Authorization
in: header
required: true
type: string
description: The Authorization Token received during login
- name: Accept
in: header
required: true
type: string
description: Content-Types that are acceptable for the response
- name: uuid
in: header
required: true
type: string
description: 128 bit UUID that you generate for every request
- name: Accept-Language
in: header
required: false
type: string
description: List of acceptable human languages for response
- name: Content-Type
in: header
required: true
type: string
description: Content-Types that are sent in the request
- name: ChannelId
in: header
required: true
type: string
description: Channel where request originated
- name: sid
in: header
required: true
type: string
description: SessionId sent by Consumer
- name: saveFolioRequest
in: body
schema:
$ref: '#/definitions/SaveFolioRequest'
responses:
200:
description: Successful operation.
schema:
$ref: '#/definitions/SaveFolioResponse'
400:
description:
Type | Code | Details |
error | invalidRequest | Missing
or invalid Parameters |
schema:
$ref: '#/definitions/ErrorResponse'
401:
description: Type | Code | Details |
error | unAuthorized | Authorization
credentials are missing or invalid |
schema:
$ref: '#/definitions/ErrorResponse'
403:
description: Type | Code | Details | More
Info |
error | accessNotConfigured | The request
operation is not configured to access this resource | Channel/Country/Business
provided in the request is not supported currently |
schema:
$ref: '#/definitions/ErrorResponse'
404:
description: Type | Code | Details | More
Info |
error | resourceNotFound | The requested
resource was not found | Empty resource/resource not found |
schema:
$ref: '#/definitions/ErrorResponse'
422:
description: Type | Code | Details |
error | businessValidationFailed | Business
validation error occured on one or more parameters |
schema:
$ref: '#/definitions/ErrorResponse'
500:
description: Type | Code | Details |
fatal | serverUnavailable | The
request failed due to an internal error/server unavailability |
schema:
$ref: '#/definitions/ErrorResponse'
put:
tags:
- update-folio
operationId: update-folio
summary: Updates a folio status
description: Status change according to the business rules
consumes:
- application/json
produces:
- application/json
parameters:
- name: client_id
in: header
required: true
type: string
description: Client ID generated during application registration
- name: Authorization
in: header
required: true
type: string
description: The Authorization Token received during login
- name: Accept
in: header
required: true
type: string
description: Content-Types that are acceptable for the response
- name: uuid
in: header
required: true
type: string
description: 128 bit UUID that you generate for every request
- name: Accept-Language
in: header
required: false
type: string
description: List of acceptable human languages for response
- name: Content-Type
in: header
required: true
type: string
description: Content-Types that are sent in the request
- name: ChannelId
in: header
required: true
type: string
description: Channel where request originated
- name: sid
in: header
required: true
type: string
description: SessionId sent by Consumer
- name: updateFolioRequest
in: body
schema:
$ref: '#/definitions/UpdateFolioRequest'
responses:
200:
description: Successful operation.
schema:
$ref: '#/definitions/UpdateFolioResponse'
400:
description: Type | Code | Details |
error | invalidRequest | Missing
or invalid Parameters |
schema:
$ref: '#/definitions/ErrorResponse'
401:
description: Type | Code | Details |
error | unAuthorized | Authorization
credentials are missing or invalid |
schema:
$ref: '#/definitions/ErrorResponse'
403:
description: Type | Code | Details | More
Info |
error | accessNotConfigured | The request
operation is not configured to access this resource | Channel/Country/Business
provided in the request is not supported currently |
schema:
$ref: '#/definitions/ErrorResponse'
404:
description: Type | Code | Details | More
Info |
error | resourceNotFound | The requested
resource was not found | Empty resource/resource not found |
schema:
$ref: '#/definitions/ErrorResponse'
422:
description: Type | Code | Details |
error | businessValidationFailed | Business
validation error occured on one or more parameters |
schema:
$ref: '#/definitions/ErrorResponse'
500:
description: Type | Code | Details |
fatal | serverUnavailable | The
request failed due to an internal error/server unavailability |
schema:
$ref: '#/definitions/ErrorResponse'
/v1/servicing/accounts/deposits/cash-transactions/retrieve-folio:
post:
tags:
- retrieve-folio
operationId: retrieve-folio
summary: Recover the information of a folio given
description: Recover the information of a folio given
consumes:
- application/json
produces:
- application/json
parameters:
- name: client_id
in: header
required: true
type: string
description: Client ID generated during application registration
- name: Authorization
in: header
required: true
type: string
description: The Authorization Token received during login
- name: Accept
in: header
required: true
type: string
description: Content-Types that are acceptable for the response
- name: uuid
in: header
required: true
type: string
description: 128 bit UUID that you generate for every request
- name: Accept-Language
in: header
required: false
type: string
description: List of acceptable human languages for response
- name: Content-Type
in: header
required: true
type: string
description: Content-Types that are sent in the request
- name: ChannelId
in: header
required: true
type: string
description: Channel where request originated
- name: sid
in: header
required: true
type: string
description: SessionId sent by Consumer
- name: retrieveFolioRequest
in: body
schema:
$ref: '#/definitions/RetrieveFolioRequest'
responses:
200:
description: Successful operation.
schema:
$ref: '#/definitions/RetrieveFolioResponse'
400:
description: Type | Code | Details |
error | invalidRequest | Missing
or invalid Parameters |
schema:
$ref: '#/definitions/ErrorResponse'
401:
description: Type | Code | Details |
error | unAuthorized | Authorization
credentials are missing or invalid |
schema:
$ref: '#/definitions/ErrorResponse'
403:
description: Type | Code | Details | More
Info |
error | accessNotConfigured | The request
operation is not configured to access this resource | Channel/Country/Business
provided in the request is not supported currently |
schema:
$ref: '#/definitions/ErrorResponse'
404:
description: Type | Code | Details | More
Info |
error | resourceNotFound | The requested
resource was not found | Empty resource/resource not found |
schema:
$ref: '#/definitions/ErrorResponse'
422:
description: Type | Code | Details |
error | businessValidationFailed | Business
validation error occured on one or more parameters |
schema:
$ref: '#/definitions/ErrorResponse'
500:
description: Type | Code | Details |
fatal | serverUnavailable | The
request failed due to an internal error/server unavailability |
schema:
$ref: '#/definitions/ErrorResponse'
definitions:
SaveFolioRequest:
type: object
properties:
bankAccountTransaction:
$ref: '#/definitions/BankAccountTransaction'
BankAccountTransaction:
type: object
properties:
transactionAmount:
description: Transaction amount
type: number
format: double
maxLength: 12
example: 130000.580000
transactionDescription:
description: Reason why the customer is doing the cash transaction
type: string
maxLength: 180
example: HERENCIA
tellerStationName:
description: Terminal where the transaction was requested
type: string
maxLength: 4
example: "05"
accountNumber:
description: Account number which the transactions is related
type: string
maxLength: 16
example: 0000000006982770
branchId:
description: Branch where the transaction was requested
type: string
maxLength: 4
example: "0100"
customerId:
description: Customer number
type: string
maxLength: 12
example: 000003020297
sourceSystem:
description: System where the transaction was made
type: string
maxLength: 6
example: "2345"
agent:
$ref: '#/definitions/AgentCreateFolio'
document:
$ref: '#/definitions/Document'
transactionAuthorization:
$ref: '#/definitions/TransactionAuthorizationCreateFolio'
required:
- transactionAmount
- accountNumber
- branchId
- customerId
- transactionDescription
- tellerStationName
- sourceSystem
AgentCreateFolio:
type: object
properties:
agentId:
description: Agent SoeID
type: string
maxLength: 16
example: AG33022
employeeNumber:
description: Employee number of the agent
type: string
maxLength: 10
example: 003033020297
required:
- agentId
- employeeNumber
Document:
type: object
properties:
documentId:
description: Reference number of document type or voucher or receipt
type: string
maxLength: 18
example: "012345"
documentType:
description: Type of document
type: string
maxLength: 4
example: IFE
required:
- documentId
- documentType
SaveFolioResponse:
type: object
properties:
transactionReferenceId:
description: Folio number generated for the transaction
type: string
example: 000003020297000003
required:
- transactionReferenceId
UpdateFolioRequest:
type: object
properties:
bankAccountTransaction:
$ref: '#/definitions/BankAccountTransactionUpdate'
BankAccountTransactionUpdate:
type: object
properties:
transactionReferenceId:
description: Folio number
type: string
maxLength: 18
example: 000003020297000003
transactionStatus:
description: Folio status
type: integer
format: int32
maxLength: 1
example: 1
branchId:
description: Branch where the folio belongs
type: string
maxLength: 4
example: "2345"
tellerStationName:
description: Terminal where the transaction was requested
type: string
maxLength: 4
example: "05"
sourceSystem:
description: System where the transaction was made
type: string
maxLength: 6
example: "2345"
agent:
$ref: '#/definitions/AgentDetail'
transactionAuthorization:
$ref: '#/definitions/TransactionAuthorization'
required:
- transactionReferenceId
- transactionStatus
- branchId
- sourceSystem
- tellerStationName
AgentDetail:
type: object
properties:
agentId:
description: Agent soeid
type: string
maxLength: 16
example: AS33992
employeeNumber:
description: Employee number of the Agent
type: string
maxLength: 10
example: 0001315587
supervisorAgentId:
description: Authorizator agent soeid
type: string
maxLength: 16
example: SA33345
supervisorEmployeeNumber:
description: Employee number of the supervisor Agent
type: string
maxLength: 10
example: SA33345
jointAgentId:
description: Agent soeid for joint authorizations
type: string
maxLength: 16
example: AS33992
jointEmployeeNumber:
description: Employee number of the Agent for joint authorizations
type: string
maxLength: 10
example: 0001315587
required:
- agentId
- employeeNumber
UpdateFolioResponse:
type: object
properties:
bankAccountTransaction:
$ref: '#/definitions/BankAccountTransactionDetails'
BankAccountTransactionDetails:
type: object
properties:
transactionAmount:
description: Amount of the transaction
type: number
format: double
maxLength: 12
example: 20002.120000
transactionStatus:
description: Status of the folio
type: integer
format: int32
maxLength: 1
example: 2
branchId:
description: Branch where the folio belongs
type: string
maxLength: 4
example: "322"
transactionAuthorization:
$ref: '#/definitions/TransactionAuthorization'
required:
- transactionAmount
- transactionStatus
- branchId
TransactionAuthorization:
type: object
properties:
authorizationId:
description: Authorization number of the transaction
type: string
maxLength: 6
example: 003993882
TransactionAuthorizationCreateFolio:
type: object
properties:
authorizationId:
description: Authorization number of the transaction
type: string
maxLength: 6
example: 003993882
RetrieveFolioRequest:
type: object
properties:
bankAccountTransaction:
$ref: '#/definitions/BankAccountTransactionRetrieve'
BankAccountTransactionRetrieve:
type: object
properties:
transactionReferenceId:
description: Folio number to retrieve information
type: string
maxLength: 18
example: 000003020297000003
branchId:
description: Branch where the folio was created
type: string
maxLength: 4
example: 0001315587
tellerStationName:
description: Terminal where the transaction was requested
type: string
maxLength: 4
example: "05"
agentId:
description: Agent number soeid
type: string
maxLength: 16
example: AG12356
employeeNumber:
description: Employee number of the agent
type: string
maxLength: 10
example: "0023212356"
sourceSystem:
description: System where the transaction was made
type: string
maxLength: 6
example: "2345"
required:
- transactionReferenceId
- branchId
- sourceSystem
- tellerStationName
RetrieveFolioResponse:
type: object
properties:
bankAccountTransaction:
$ref: '#/definitions/BankAccountTransactionDetail'
BankAccountTransactionDetail:
type: object
properties:
transactionAmount:
description: Amount of the transaction
type: number
format: double
maxLength: 12
example: 300000
transactionStatus:
description: Folio estatus
type: integer
format: int32
maxLength: 1
example: 1
branchId:
description: Branch number where the transaction was made
type: string
maxLength: 4
example: "0100"
accountNumber:
description: Acount number of the transaction
type: string
maxLength: 16
example: 0000000006985773
transactionAuthorization:
$ref: '#/definitions/TransactionAuthorization'
required:
- transactionAmount
- transactionStatus
- branchId
- accountNumber
ErrorResponse:
properties:
type:
type: string
description: Invalid - Request did not confirm to the specification and was
unprocessed and rejected. Please fix the value and try again
enum:
- error
- warn
- invalid
- fatal
code:
description: Error code which qualifies the error
type: string
details:
description: Human readable explanation specific to the occurrence of the
problem
type: string
location:
description: The name of the field that resulted in the error
type: string
moreInfo:
description: More Info can be used to pass any additional details
type: string
uuid:
description: 128 bit UUID that you generate for every request
type: string
timestamp:
description: Timestamp of the error
type: string
required:
- type
- code
x-ibm-configuration:
enforced: true
testable: true
phase: realized
securityDefinitions:
OAuth2 Application Flow:
type: oauth2
description: ""
flow: application
scopes:
/api/v1: ""
tokenUrl: https://sandbox.externalapib2b.wlb.nam.nsroot.net:7101/mx-gcgapi-uat/sandbox2/api/v1/oauth/token
Client ID:
type: apiKey
description: ""
in: header
name: X-IBM-Client-Id
security:
- OAuth2 Application Flow:
- /api/v1
Client ID: []
x-ibm-endpoints:
- endpointUrl: https://sandbox.externalapib2b.wlb.nam.nsroot.net:7101/mx-gcgapi-uat/sandbox2
type:
- production
- development
...