---
swagger: "2.0"
info:
description: 'This API is used for Citi Business customers to process multiple payment
requests for Adhoc payees. In case authorization is required, this API will throw
mfa Requried error. Prerequisite: Retrieve the applicable payment types, eligible
source accounts from RetrievePaymentInitiationTransactionBulkSourceAccountAndPayeeEligibility
API'
version: 1.0.0
x-ibm-name: ExecutePaymentInitiationTransactionAdhocMultipleTransferAsync
title: ExecutePaymentInitiationTransactionAdhocMultipleTransferAsync
host: 127.0.0.1
schemes:
- https
basePath: /api
produces:
- application/json
paths:
/v1/paymentInitiation/adhoc/multipleTransfers/async:
post:
summary: Execute Multiple Transfers for Adhoc Payees
description: 'This API is used for Citi Business customers to process multiple
payment requests for Adhoc payees. In case authorization is required, this
API will throw mfa Requried error. Prerequisite: Retrieve the applicable payment
types, eligible source accounts from RetrievePaymentInitiationTransactionBulkSourceAccountAndPayeeEligibility
API'
operationId: ExecutePaymentInitiationTransactionAdhocMultipleTransferAsync
tags:
- Payment
parameters:
- name: Authorization
in: header
description: 'The most recent Authorization token. This will have the format
Bearer + {space} + {accessToken}. Example: Bearer KGNsaWVudF9pZDpjbGllbnRfc2VjcmV0KQ==.'
type: string
required: true
- name: uuid
in: header
description: 128 bit random UUID generated uniquely for every request.
type: string
required: true
- name: Accept
in: header
description: Content-Type that are acceptable for the response.
type: string
required: true
- name: client_id
in: header
description: Client ID generated during application registration.
required: true
type: string
- name: Content-Type
in: header
description: application/json
required: true
type: string
- name: clientDetails
in: header
description: This field is used to capture device,browser and network information.
Refer the developer portal for more information.These are the fields which
will be passed as part of the header devicePrint,deviceTokenCookie,userIpAddress,userAgent,hardwareId,simId,deviceModel,deviceName,deviceOsName,deviceOsVersion,multitaskingSupportFlag,languageSupport,wifiMacAddress,cellTowerId,locationAreaCode,rsaApplicationKey,wapClientId,mobileCarrierCode,mobileCountryCode,osId,geoLongitude,geoLatitude,geoHorizontalAccuracy,geoAltitude,geoAltitudeAccuracy,geoSpeed,geoTimestamp,geoStatus,basicServiceSetId,signalStrength,wifiChannel,serviceSetId
type: string
required: false
- name: nextStartIndex
in: query
description: In some cases there is more data than what can be returned in
a single response. If there is additional data available a nextStartIndex
will be returned. Pass the nextStartIndex in your next request to retrieve
the next set of data.
type: string
required: false
- name: ExecutePaymentInitiationTransactionAdhocMultipleTransferAsyncRequest
in: body
description: ExecutePaymentInitiationTransactionAdhocMultipleTransferAsyncRequest
required: true
schema:
$ref: '#/definitions/ExecutePaymentInitiationTransactionAdhocMultipleTransferAsyncRequest'
responses:
200:
description: Successful operation.
schema:
$ref: '#/definitions/ExecutePaymentInitiationTransactionAdhocMultipleTransferAsyncResponse'
201:
description:
Type | Code | Details |
|
Created | Created | Created |
schema:
$ref: '#/definitions/ErrorResponse'
400:
description: error | InvalidRequest | Missing
or invalid Parameters |
error | InvalidRequest | Invalid
source account |
error | InvalidRequest | Invalid
payee id |
errorĀ | transactionDenied | Transaction
is denied |
schema:
$ref: '#/definitions/ErrorResponse'
401:
description: error | unAuthorized | Authorization
credentials are missing or invalid |
schema:
$ref: '#/definitions/ErrorResponse'
403:
description: error | accessNotConfigured | The
request operation is not configured to access this resource |
errorĀ | mfaRequired | MFA
is required |
schema:
$ref: '#/definitions/ErrorResponse'
404:
description: Type | Code | Details |
error | resourceNotFound | Empty
resource/resource not found |
schema:
$ref: '#/definitions/ErrorResponse'
422:
description: Type | Code | Details |
error | businessValidationsFailed | Business
validations failed |
schema:
$ref: '#/definitions/ErrorResponse'
500:
description: fatal | serverUnavailable | The
request failed due to an internal error |
fatal | serverUnavailable | The
request failed due to an internal error |
schema:
$ref: '#/definitions/ErrorResponse'
definitions:
ExecutePaymentInitiationTransactionAdhocMultipleTransferAsyncRequest:
properties:
bundleId:
description: This is bundle id or unique identifier for bulk transfers
type: string
example: 89789789
totalTransferAmount:
description: This is total transfer amount
type: number
format: double
example: 100
transferType:
description: This is type of transfers
type: string
example: INTERNAL
internalDomesticDetails:
$ref: '#/definitions/InternalDomesticDetails'
externalDomesticDetails:
$ref: '#/definitions/ExternalDomesticDetails'
crossBorderDetails:
$ref: '#/definitions/CrossBorderDetails'
sepa:
$ref: '#/definitions/Sepa'
required:
- bundleId
- totalTransferAmount
InternalDomesticDetails:
properties:
sourceAccountId:
description: The source account identifier in encrypted format.
type: string
example: 29a3eb92-5195-42fa-9817-ccf2617f4888
transferCurrencyIndicator:
description: The indicator to determine if transfer is to be settled in source
of benefciary currency
type: string
example: SOURCE_ACCOUNT_CURRENCY
transactionAmount:
description: The transaction amount
type: number
format: double
example: 10
payeeMiniAccountDetails:
$ref: '#/definitions/PayeeMiniAccountDetails'
remarks:
type: array
items:
$ref: '#/definitions/Remarks'
paymentScheduleType:
description: The payment schedule type. This is a reference data. Please use
/v1/apac/utilities/referenceData/{paymentScheduleType} resource to get valid
value of this field.
type: string
example: if Blank is coming for EMEA, throw invalid Request
required:
- sourceAccountId
- transferCurrencyIndicator
- transactionAmount
- paymentScheduleType
PayeeMiniAccountDetails:
properties:
payeeAccountNumber:
description: This is beneficiairyAccountNumber
type: string
example: 558877744
payeeName:
description: This is payeeName
type: string
example: MarkJacobs
payeeNickName:
description: This is beneficiaryNickName,applicable for UK
type: string
example: Mark
required:
- payeeAccountNumber
Remarks:
properties:
remarks:
description: Payment notes. Free text from screen
$ref: '#/definitions/Remarks'
ExternalDomesticDetails:
properties:
sourceAccountId:
description: The source account identifier in encrypted format.
type: string
example: 29a3eb92-5195-42fa-9817-ccf2617f4888
transferCurrencyIndicator:
description: The indicator to determine if transfer is to be settled in source
of benefciary currency
type: string
example: SOURCE_ACCOUNT_CURRENCY
chargeBearer:
description: Field to identify charge bearer.The acceptable forms of remittance
for a given payments and transfer transaction.This is a reference data field.
Please use /v1/utilities/referenceData/{chargeBearer} resource to get valid
value of this field with description.
type: string
example: BENEFICIARY
paymentMethod:
description: The acceptable forms of remittance for a given payments and transfer
transaction.This is a reference data field. Please use /v1/utilities/referenceData/{paymentMethod}
resource to get valid value of this field with description.
type: string
example: GIRO
transactionAmount:
description: The transaction amount
type: number
format: double
example: 4500.250000
paymentType:
description: The payment type.This is a reference data field. Please use /v1/utilities/referenceData/{paymentType}
resource to get valid value of this field with description.
type: string
example: EXTERNAL
foreignExchangeReferenceNumber:
description: Fx deal reference number
type: string
example: 12345678
paymentScheduleType:
description: The payment schedule type. This is a reference data. Please use
/v1/utilities/referenceData/{paymentScheduleType} resource to get valid
value of this field.
type: string
example: IMMEDIATE
payeeAccountDetails:
$ref: '#/definitions/PayeeAccountDetails'
remarks:
type: array
items:
$ref: '#/definitions/Remarks'
transferPurpose:
description: Purpose of transfer. Applicable if paymentMethod is GIRO, FAST.
This is a reference data field.This is a reference data field. Please use
/v1/utilities/referenceData/{transferPurpose} resource to get valid value
of this field with description.
type: string
example: CASH_DISBURSEMENT
required:
- sourceAccountId
- chargeBearer
- paymentMethod
- transactionAmount
- paymentScheduleType
PayeeAccountDetails:
properties:
payeeAccountNumber:
description: This is beneficiairyAccountNumber
type: string
example: 558877744
payeeName:
description: This is payeeName
type: string
example: MarkJacobs
payeeNickName:
description: This is beneficiaryNickName,applicable for UK
type: string
example: Mark
payeeAddress:
$ref: '#/definitions/PayeeAddress'
bankDetails:
$ref: '#/definitions/BankDetails'
payeeCurrencyCode:
description: The currency code of the destination account in ISO 4217 format
type: string
example: SGD
required:
- payeeAccountNumber
- payeeCurrencyCode
PayeeAddress:
properties:
addressLine1:
description: This is payees address line 1
type: string
example: 40A Orchard Road
addressLine2:
description: This is payees address line 2
type: string
example: ~
addressLine3:
description: This is payees address line 3
type: string
example: POLAND-510121
required:
- addressLine1
BankDetails:
properties:
bankCode:
description: Bank Code of the payee.
type: string
example: 671900000017
payeeBankAddress:
$ref: '#/definitions/PayeeBankAddress'
required:
- bankCode
PayeeBankAddress:
properties:
addressLine1:
description: Address line 1
type: string
example: 40A Orchard Road
addressLine2:
description: Address line 2
type: string
example: ~
addressLine3:
description: Address line 3
type: string
example: POLAND-510121
countryName:
description: This field is to indicate the name of the country. This is a
reference data field. Please use \/v1\/utilities\/referenceData\/{countryName}
resource to get valid value of this field with description.
type: string
example: POLAND
required:
- addressLine1
CrossBorderDetails:
properties:
sourceAccountId:
description: The source account identifier in encrypted format.Typically,
this is not displayed to the customer.
type: string
example: 29a3eb92-5195-42fa-9817-ccf2617f4888
transferCurrencyIndicator:
description: The indicator to determine if transfer is to be settled in source
of benefciary currency
type: string
example: SOURCE_ACCOUNT_CURRENCY
chargeBearer:
description: Specifies which party(ies) will pay charges due for processing
of the instruction. Please use /v1/utilities/referenceData/{chargeBearer}
resource to get valid value of this field with description.
type: string
example: BENEFICIARY
transactionAmount:
description: The transaction amount
type: number
format: double
example: 4500.250000
paymentType:
description: The payment type.This is a reference data field. Please use /v1/utilities/referenceData/{paymentType}
resource to get valid value of this field with description.
type: string
example: EXTERNAL
foreignExchangeReferenceNumber:
description: Fx deal reference number
type: string
example: 12345678
paymentScheduleType:
description: The payment schedule type. This is a reference data. Please use
/v1/utilities/referenceData/{paymentScheduleType} resource to get valid
value of this field.
type: string
example: IMMEDIATE
payeeAccountDetail:
$ref: '#/definitions/PayeeAccountDetail'
remarks:
type: array
items:
$ref: '#/definitions/Remarks'
required:
- sourceAccountId
- chargeBearer
- transactionAmount
- paymentScheduleType
PayeeAccountDetail:
properties:
payeeAccountNumber:
description: This is beneficiairyAccountNumber
type: string
example: 558877744
accountIbanFlag:
description: This field is to indicate whether the account number is IBAN
or not
type: boolean
example: true
payeeName:
description: This is payeeName
type: string
example: MarkJacobs
payeeNickName:
description: This is beneficiaryNickName,applicable for UK
type: string
example: Mark
payeeCurrencyCode:
description: The currency code of the destination account in ISO 4217 format
type: string
example: SGD
payeeAddress:
$ref: '#/definitions/PayeeAddress'
payeeBankDetails:
$ref: '#/definitions/PayeeBankDetails'
required:
- payeeAccountNumber
- payeeCurrencyCode
PayeeBankDetails:
properties:
swiftCode:
description: This field is to indicate the SWIFT code(Society for Worldwide
Interbank Financial Telecommunication code). An internationally-recognized
identification code for banks around the world.
type: string
example: HKBAAU2SBNE
payeeBankAddress:
$ref: '#/definitions/PayeeBankAddress'
payeeBankName:
description: Name of the bank
type: string
example: HSBC Bank
required:
- swiftCode
Sepa:
properties:
sourceAccountId:
description: The source account identifier in encrypted format.Typically,
this is not displayed to the customer.
type: string
example: 3255613852316f2b4d4d796c344e38756339654972776f663745446e6d4c32486f455a4165374a476858343d
transactionCurrencyCode:
description: This is an indicator if transfer is to be done in source or destination
currency, this is CVT field transferCurrencyIndicator
type: string
example: PLN
transactionAmount:
description: Transaction Amount
type: number
format: double
example: 4500.210000
payeeAccountInfo:
$ref: '#/definitions/PayeeAccountInfo'
remarks:
type: array
items:
$ref: '#/definitions/Remarks'
required:
- sourceAccountId
- transactionCurrencyCode
PayeeAccountInfo:
properties:
payeeAccountNumber:
description: The account number of the destination account
type: string
example: 251212582364
payeeName:
description: Name of the payee
type: string
example: MARC
payeeNickName:
description: The nick name of the payee assigned by the customer.
type: string
example: MarcJ
payeeAddress:
$ref: '#/definitions/PayeeAddress'
payeeBankMiniDetail:
$ref: '#/definitions/PayeeBankMiniDetail'
required:
- payeeAccountNumber
- payeeName
PayeeBankMiniDetail:
properties:
swiftCode:
description: This field is to indicate the SWIFT code(Society for Worldwide
Interbank Financial Telecommunication code). An internationally-recognized
identification code for banks around the world.
type: string
example: HKBAAU2SBNE
countryName:
description: This field is to indicate the name of the country. This is a
reference data field. Please use /v1/utilities/referenceData/{countryName}
resource to get valid value of this field with description.
type: string
example: SINGAPORE
required:
- swiftCode
ExecutePaymentInitiationTransactionAdhocMultipleTransferAsyncResponse:
properties:
transactionStatus:
description: This is transaction status
type: string
bundleId:
description: This is bundle/ bulk id of the transactions from TPP
type: string
citiBundleId:
description: This is bundle/ bulk id of the transactions from Citi
type: string
totalTransactionCount:
description: This is total number of transactions
type: string
controlFlowId:
description: This is control flow id
type: string
ErrorResponse:
properties:
type:
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
type: string
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: URI to human readable documentation of the error
type: object
required:
- type
- code
x-ibm-configuration:
enforced: true
testable: true
phase: realized
securityDefinitions:
API Key (Query):
type: apiKey
description: ""
in: query
name: client_id
API Key:
type: apiKey
description: ""
in: header
name: X-IBM-Client-Id
security:
- API Key: []
- API Key (Query): []
x-ibm-endpoints:
- endpointUrl: https://emea.sit.api.citi.com/gcb
description: Custom Gateway API Endpoint
type:
- production
- development
...