---
swagger: "2.0"
info:
description: This microservice contains the functionalities to retrieve the details
and totals of the payments transactions by transactions status, these payments
files were processed by the payments systems (Global Pay Plus (GPP) or File Message
Layer(FML))
title: paym-pyo-d-payroll-file-detail
version: 1.0.1
x-ibm-name: paym-pyo-d-payroll-file-detail
host: 127.0.0.1
basePath: /api
schemes:
- https
produces:
- application/json
paths:
/v1/payments/payroll-files/information/retrieve:
post:
tags:
- retrieve-payroll-file-information
summary: 'LOB: MPTP; Feature: Payroll files B2B; Functionality: Query '
description: Retrieve the file data and totals, according to the internal filters
fields processed in payments systems (Global Pay Plus (GPP) or File Message
Layer(FML))
operationId: retrieve-payroll-file-information
consumes:
- 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: countryCode
in: header
required: true
type: string
description: Country code in 2 character ISO 3166 format
- name: businessCode
in: header
required: true
type: string
description: Business code identified during application registration
- in: body
name: retrievePayrollFileInfoRequest
required: true
schema:
$ref: '#/definitions/RetrievePayrollFileInfoRequest'
responses:
200:
description: Successful operation.
schema:
$ref: '#/definitions/RetrievePayrollFileInfoResponse'
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/payments/payroll-files/{fileReferenceNumber}/transaction:
get:
tags:
- retrieve-payroll-file-transaction
summary: 'LOB: MPTP; Feature: Payroll details files B2B; Functionality: Query'
description: 'Searches for transactions of a processed payroll file and retrieves
detailed information about each transaction '
operationId: retrieve-payroll-file-transaction
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: false
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: countryCode
in: header
required: true
type: string
description: Country code in 2 character ISO 3166 format
- name: businessCode
in: header
required: true
type: string
description: Business code identified during application registration
- name: fileReferenceNumber
in: path
required: true
type: string
description: Reference Number of file from the backend
- name: pageId
in: query
required: true
type: integer
description: Number of the page to show
- name: rowLimit
in: query
required: true
type: integer
description: Quantity of rows to show on the page indicated
- name: transactionSummaryFlag
in: query
required: true
type: boolean
default: true
description: Validation flag to indicate whether or not the totals per request
are required to be processed
responses:
200:
description: Successful operation.
schema:
$ref: '#/definitions/PayrollFileTransactionResponse'
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/payments/payroll-files/pending-authorizations/retrieve:
post:
tags:
- retrieve-pending-payroll-file
summary: 'LOB: MPTP; Feature: Payroll files with pending second authorization;
Functionality: Query'
description: The API returns the detail of the information of the files pending
remote authorization processed by Global Pay Plus (GPP) and File Message Layer(FML)
to later carry out the dispersion of funds
operationId: retrieve-pending-payroll-file
consumes:
- 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: countryCode
in: header
required: true
type: string
description: Country code in 2 character ISO 3166 format
- name: businessCode
in: header
required: true
type: string
description: Business code identified during application registration
- in: body
name: pendingPayrollFileRequest
required: true
schema:
$ref: '#/definitions/PendingPayrollFileRequest'
responses:
200:
description: Successful operation.
schema:
$ref: '#/definitions/PendingPayrollFileResponse'
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:
RetrievePayrollFileInfoRequest:
type: object
properties:
customerId:
description: Numeric Id with is that the Client is identified within the bank
type: string
minLength: 1
maxLength: 12
pattern: ^[0-9]{0,12}
example: "887779"
pageId:
type: integer
format: int32
description: Number of the page to show
example: 8
rowLimit:
type: integer
format: int32
description: Quantity of rows to show on the page indicated
example: 25
payrollFile:
$ref: '#/definitions/PayrollFile'
required:
- customerId
- payrollFile
PayrollFile:
type: object
properties:
queryStartDate:
description: Start date of the payments file.Date in ISO 8601, YYYY-MM-DD
format
type: string
format: date
example: "2020-08-16"
queryEndDate:
description: End date of the payments file.Date in ISO 8601, YYYY-MM-DD format
type: string
format: date
example: "2020-08-16"
fileStatus:
description: Description of the status of the processed file
type: string
example: Completed
productCode:
description: Product hired by the customer
type: string
example: PAGOM
fileSource:
description: Entity where the payment files comes from (customer or system)
type: string
example: C
channelName:
description: Name of the channel who send the file
type: string
example: BNE
sequenceNumber:
description: Sequential number of the payment file
type: integer
format: int32
example: 10
required:
- queryStartDate
- queryEndDate
- fileStatus
- productCode
- fileSource
- channelName
RetrievePayrollFileInfoResponse:
type: object
properties:
totalTransactionCount:
type: integer
format: int64
description: Number of elements in the query
example: 10
default: 0
pageCount:
type: integer
format: int32
description: Total number of pages in the query
example: 2
default: 0
customer:
$ref: '#/definitions/Customer'
required:
- totalTransactionCount
- pageCount
Customer:
type: object
properties:
customerId:
description: Numeric Id with is that the Client is identified within the bank
type: string
minLength: 1
maxLength: 12
pattern: ^[0-9]{0,12}
example: "887779"
fullName:
type: string
description: Name of the customer whom is debited the payment
example: LA GLORIA MA SA DE CV
customerSegment:
type: string
description: It is assigned according to the type of Client, it can be Business,
Corporate or SME Segment
example: Corporate
payrollFilesInfo:
type: array
items:
$ref: '#/definitions/PayrollFileInfo'
PayrollFileInfo:
type: object
properties:
productName:
type: string
description: Service or product contracted and operated by the Client
example: Payroll B2B
channelName:
type: string
description: Name of the channel who send the file
example: BNE
fileSource:
type: string
description: Entity where the payment file comes from
example: C
accountNumber:
type: string
description: payer account number used to send any funds from transactions.
example: "3150256026"
legalRepresentativeId:
type: string
description: Identifier of the Representative who authorized the payroll files.
example: "05"
sequenceNumber:
type: integer
format: int32
description: Sequential number of the payment file
example: 1
fileSentDate:
type: string
format: date-time
description: Date and time when the payment file was sent by the user
example: "2020-04-11T23:20:23.15Z"
fileReceivedDate:
type: string
format: date-time
description: Date and time when the payment file was received on payment hub
example: "2020-04-11T23:20:50.52Z"
fileStatus:
type: string
description: Description of the status of the processed file
example: Applied
fileId:
type: string
description: unique file identifier assigned by the payments engine
example: 0000009301198213
fileName:
type: string
description: Name of the payment file
example: 2019-11-05_09-32-29.302_27414s01.10.051119.000000013898.002.pgm_sol_Req.xml
fileDescription:
type: string
description: Description of payroll file.
example: PAYROLL
processingStartDate:
type: string
format: date-time
description: Start date and time when the payment file was processed
example: "2020-04-11T23:20:15.52Z"
processingEndDate:
type: string
format: date-time
description: End date and time when the payment file was processed
example: "2020-04-11T23:20:50.52Z"
currency:
type: string
description: Currency description
example: Mexican Peso
fileReferenceNumber:
type: string
description: Reference Number of file from the backend
example: "003123232"
payrollFileId:
type: string
maxLength: 16
description: Unique identifier for the payment payroll file
example: J0B593229HQW0X0P
transactionSummary:
type: array
items:
$ref: '#/definitions/TransactionSummary'
PayrollFileTransactionResponse:
type: object
properties:
totalTransactionCount:
type: integer
format: int64
description: Number of elements in the query
example: 10
default: 0
pageCount:
type: integer
format: int32
description: Total number of pages in the query
example: 2
default: 0
agents:
type: array
items:
$ref: '#/definitions/Agent'
payrollFileTransactions:
type: array
items:
$ref: '#/definitions/Transaction'
transactionSummary:
type: array
items:
$ref: '#/definitions/TransactionSummary'
required:
- totalTransactionCount
- pageCount
Agent:
type: object
properties:
departmentId:
type: string
description: User's cost center identifier
example: "2052"
agentId:
type: string
description: Identifier of the agent who updates the operation.
example: MD98745
agentType:
type: string
description: Defines the user type. User Type is decided/ given based on Role
or function. For example Maker, Checker or Supervisor
example: Maker
Transaction:
type: object
properties:
transactionType:
type: string
description: Refers to the type of transaction
example: Charge
transactionStatus:
type: string
description: Description of the status of the processed transaction
example: Applied
transactionAmount:
type: number
format: double
description: Amount used in a single transaction.
example: 22.120000
transactionId:
type: string
description: Transaction ID refers to an identifier or code which uniquely
identifies a specific Transaction
example: L082I1228RF91U0B
authorizationCode:
type: string
description: transaction authorization number
example: "00000017"
remittanceInformation:
type: string
description: Drafting made by the Originator for the Beneficiary to identify
the transaction
example: PAYROLL UAT SC12
transactionSequenceNumber:
type: string
description: Refers to the sequence number of the transaction in the file
example: "00000003"
settlementDate:
type: string
format: date-time
description: Date and time when the transaction was processed
example: "2017-07-21T17:32:28Z"
retryCount:
type: integer
format: int32
description: Retries count of the payroll files transactions.
example: 5
nonSufficientFundsRetryCount:
type: integer
format: int32
description: Retries count when there are non sufficient funds in the payer
account
example: 2
errorCode:
type: string
description: Transaction error code that denotes a fail in process
example: "1198"
errorDescription:
type: string
description: Description of error of the transaction
example: NON ACTIVE CREDIT ACCOUNT
account:
$ref: '#/definitions/Account'
Account:
type: object
properties:
accountNumber:
type: string
description: Payee account number used to receive any funds from transactions.
example: "70126468855"
branchId:
type: string
description: Unique identifier for the branch
example: 0982
accountingTellerId:
type: string
description: It is the accounting box that is affected. Register the accounting
movements of an account.
example: "76"
accountingDate:
type: string
format: date-time
description: Date when the movement was applied
example: "2020-04-11T23:20:23.15Z"
productCode:
type: string
description: Product hired by the customer
example: "01"
accountingBranchId:
type: string
description: Bank Branch ID of the accounting box
example: "0340"
PendingPayrollFileRequest:
type: object
properties:
customerId:
description: Numeric Id with is that the Client is identified within the bank
type: string
minLength: 1
maxLength: 12
pattern: ^[0-9]{0,12}
example: "887779"
pageId:
type: integer
format: int32
description: Number of the page to show
example: 8
rowLimit:
type: integer
format: int32
description: Quantity of rows to show on the page indicated
example: 25
pendingPayrollFile:
$ref: '#/definitions/PayrollFileDetail'
required:
- customerId
- pendingPayrollFile
PayrollFileDetail:
type: object
properties:
queryStartDate:
description: Start date of the payments file.Date in ISO 8601, YYYY-MM-DD
format
type: string
format: date
pattern: ([12]\d{3}-(0[1-9]|1[0-2])-(0[1-9]|[12]\d|3[01]))
example: "2019-11-05"
queryEndDate:
description: End date of the payments file.Date in ISO 8601, YYYY-MM-DD format
type: string
format: date
pattern: ([12]\d{3}-(0[1-9]|1[0-2])-(0[1-9]|[12]\d|3[01]))
example: "2019-11-05"
fileSource:
description: Entity where the payment files comes from (customer or system)
type: string
example: C
sequenceNumber:
description: Sequential number of the payment file
type: integer
format: int32
example: 10
required:
- queryStartDate
- queryEndDate
- fileSource
PendingPayrollFileResponse:
type: object
properties:
totalTransactionCount:
type: integer
format: int64
description: Number of elements in the query
example: 10
default: 0
pageCount:
type: integer
format: int32
description: Total number of pages in the query
example: 2
default: 0
customer:
$ref: '#/definitions/CustomerDetail'
required:
- pageCount
CustomerDetail:
type: object
properties:
customerId:
description: Numeric Id with is that the Client is identified within the bank
type: string
minLength: 1
maxLength: 12
pattern: ^[0-9]{0,12}
example: "887779"
fullName:
type: string
description: Name of the customer whom is debited the payment
example: LA GLORIA MA SA DE CV
productName:
type: string
description: Service or product contracted and operated by the Client
example: Payroll B2B
customerSegment:
type: string
description: It is assigned according to the type of Client, it can be Business,
Corporate or SME Segment
example: Corporate
pendingPayrollFileInformation:
type: array
items:
$ref: '#/definitions/PayrollFileInformation'
PayrollFileInformation:
type: object
properties:
legalRepresentativeId:
type: string
description: Identifier of the Representative who authorized the payroll files.
example: "05"
fileSource:
description: Entity where the payment files comes from (customer or system)
type: string
example: C
fileDescription:
type: string
description: Description of payroll file.
example: PAYROLL
sequenceNumber:
description: Sequential number of the payment file
type: integer
format: int32
example: 10
fileSentDate:
type: string
format: date-time
description: Date and time when the payment file was sended by the user
example: "2020-04-11T23:20:23.15Z"
fileStatus:
description: Description of the status of the processed file
type: string
example: Wating for remote authorization
currency:
type: string
description: Currency description
example: Mexican Peso
transactionSummaryDetail:
type: array
items:
$ref: '#/definitions/TransactionSummaryDetail'
TransactionSummaryDetail:
type: object
properties:
totaltransactionCount:
type: integer
format: int32
description: Total records (debit records or credit records or refound records)
example: 2
totalTransactionAmount:
type: number
format: double
description: Total amount of all records (debit records)
example: 22.040000
transactionType:
description: Describe operation type of the payment (DEBIT,CREDIT,REFUND)
type: string
example: DEBIT
TransactionSummary:
type: object
properties:
totaltransactionCount:
type: integer
format: int32
description: Total records (debit records or credit records or refound records)
example: 2
totalTransactionAmount:
type: number
format: double
description: Total amount of all records (debit records)
example: 22.040000
transactionType:
description: Describe operation type of the payment (DEBIT,CREDIT,REFUND)
type: string
example: DEBIT
transactionStatus:
description: Describe operation type of the payment (APPLIED,CREDIT,REFUND)
type: string
example: APPLIED
ErrorResponse:
type: object
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:
type: string
description: Error code which qualifies the error
details:
type: string
description: Human readable explanation specific to the occurrence of the
problem
location:
type: string
description: The name of the field that resulted in the error
moreInfo:
type: string
description: More Info can be used to pass any additional details
uuid:
type: string
description: 128 bit UUID that you generate for every request
timestamp:
type: string
description: Timestamp of the error
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://sit.api.banamex.com/mx-gcgapi/sit/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://sit.api.banamex.com/mx-gcgapi/sit
description: Custom Gateway API Endpoint
type:
- production
- development
...