swagger: '2.0'
info:
title: Payment Refund
description: >-
The Payment Refund endpoint allows you as an initiating party (or debtor) to
initiate a refund request with the receiving party (or creditor) of a
payment that was previously executed. This service is currently available
only in Singapore and India. The request follows the ISO XML pain.007.001.09
format in which you specify at least the mandatory elements of the XML
message and encode it in Base64, encrypt and sign it before placing it in
the request specifying the header elements and then invoke the endpoint.
CitiConnect will respond with a pain.002.001.03 Refund Initiation
acknowledgement. This endpoint is available 24X7. The customer reference
number, value date, branch code, the payment amount, value date (date on
which funds were credited to the receiving party?s account), the receiving
party?s account number of the ORIGINAL TRANSACTION must be specified in the
request of this message along with the ISO reversal reason code and the
creation date of the reversal request. Optionally you may also send the UETR
which may be retrieved using the Enhanced Payment Status Inquiry endpoint.
The Original Message ID (OrgnlMsgId), Original Message Name (OrgnlMsgNmId),
Original Payment Information (OrgnlPmtInfId), Original Financial Institution
ID (FinInstnId > Nm) and the Debtor Account (DbtrAcct > Other > Id) fields
are mandated by the schema definition but not required by Citi. We recommend
that you send hardcoded values in them.
Download our SDKs:
* [Python
SDK](https://developer.citi.com/sandboxApi/admin/v1/downloadZipFile?language=python&apiTitle=all&isClientSecReq=true)
* [Java
SDK](https://developer.citi.com/sandboxApi/admin/v1/downloadZipFile?language=java&apiTitle=all&isClientSecReq=true)
* [.Net
SDK](https://developer.citi.com/sandboxApi/admin/v1/downloadZipFile?language=dotnet&apiTitle=all&isClientSecReq=true)
* [Ruby
SDK](https://developer.citi.com/sandboxApi/admin/v1/downloadZipFile?language=ruby&apiTitle=all&isClientSecReq=true)
* [NodeJS
SDK](https://developer.citi.com/sandboxApi/admin/v1/downloadZipFile?language=nodejs&apiTitle=all&isClientSecReq=true)
* [Go
SDK](https://developer.citi.com/sandboxApi/admin/v1/downloadZipFile?language=go&apiTitle=all&isClientSecReq=true)
* [CLI Tool
SDK](https://developer.citi.com/sandboxApi/admin/v1/downloadZipFile?language=ccapi-cli&apiTitle=all&isClientSecReq=true)
Note: You must be logged in to download the SDKs.
version: 2.0.0
x-ibm-name: paymentservices
security:
- clientCredentials: []
Client ID: []
servers:
- url: https://tts.apib2b.citi.com/citiconnect/prod/paymentservices/v3
description: production gateway URL
- url: https://tts.apib2b.citi.com/citiconnect/sb/paymentservices/v3
description: sandbox URL
x-ibm-configuration:
enforced: true
phase: realized
testable: true
cors:
enabled: true
properties:
PaymentInitiationECS:
value: >-
https://ccapi-proxy-dev-168554.nam.nsroot.net/ecs-proxy/paymentservices/v2/payment/initiation
description: ''
encoded: false
InstantPaymentInquiryCloudEndpoint:
value: >-
https://instant-payment-inquiry-ms-icg-tts-168554.namoserut01u.nam.nsroot.net/paymentInquiry
description: ''
encoded: false
InstantPaymentCloudEndpoint:
value: >-
https://instant-payments-ms-icg-tts-168554.namicggtd01d.nam.nsroot.net/instantPayments
description: ''
encoded: false
InstantPaymentCCEndpoint:
value: >-
https://sit5citiconnectbeservices.nam.nsroot.net/citi-connect-war/citidirect/instantPayments
description: ''
encoded: false
PSIGETGREENEndPt:
value: >-
https://sit5cdbeservices.nam.nsroot.net/payment-inquiry-ms/citidirect/payments
description: ''
encoded: false
PSIGETEndPt:
value: >-
https://sit5cdbeservices.nam.nsroot.net/payment-inquiry-ms/citidirect/payments
description: ''
encoded: false
RESTEndpt:
value: >-
https://sit2citiconnectbeservices.nam.nsroot.net/citi-connect-war/citidirect/payments
description: ''
encoded: false
BE-Services:
description: ''
encoded: false
value: >-
https://sit2citiconnectbeservices.nam.nsroot.net/citi-connect-war/services/CitiConnectService
BE-EnquiriesService:
description: ''
encoded: false
value: >-
https://ccapi-proxy-pte-168554.cloudgsl.nam.nsroot.net/ecs-proxy/paymentservices/v2/payment/inquiry
EnhancedEnquiriesServiceECS:
description: ''
encoded: false
value: >-
https://payment-inquiry-ms-168554.namicggtd10d.nam.nsroot.net/paymentservices/v2/payment/enhancedinquiry
catalogs:
UAT1:
properties:
RESTEndpt: >-
https://uat1citiconnectbeservices.nam.nsroot.net/citi-connect-war/citidirect/payments
BE-EnquiriesService: >-
https://ccapi-proxy-uat-168554.nam.nsroot.net/ecs-proxy/paymentservices/v2/payment/inquiry
BE-Services: >-
https://uat1citiconnectbeservices.nam.nsroot.net/citi-connect-war/services/CitiConnectService
PSIGETEndPt: >-
https://uat1cdbeservices.nam.nsroot.net/payment-inquiry-ms/citidirect/payments
PSIGETGREENEndPt: >-
https://uat1cdbeservices.nam.nsroot.net/payment-inquiry-ms/citidirect/payments
InstantPaymentCCEndpoint: >-
https://uat1citiconnectbeservices.nam.nsroot.net/citi-connect-war/citidirect/instantPayments
InstantPaymentCloudEndpoint: >-
https://inst-pymt-ms-uat-168554.namicgswd11u.nam.nsroot.net/instantPayments/v2/paymentInitiation
InstantPaymentInquiryCloudEndpoint: >-
https://inst-pymt-inquiry-ms-uat-168554.namicgswd11u.nam.nsroot.net/paymentInquiry
EnhancedEnquiriesServiceECS: >-
https://payment-inquiry-ms-uat-168554.namicgswd11u.nam.nsroot.net/paymentservices/v2/payment/enhancedinquiry
PaymentInitiationECS: >-
https://ccapi-proxy-uat-168554.nam.nsroot.net/ecs-proxy/paymentservices/v2/payment/initiation
SIT5:
properties:
BE-Services: >-
https://sit5citiconnectbeservices.nam.nsroot.net/citi-connect-war/services/CitiConnectService
BE-EnquiriesService: >-
https://ccapi-proxy-dev-168554.nam.nsroot.net/ecs-proxy/paymentservices/v2/payment/inquiry
RESTEndpt: >-
https://citiconnectbeservices.wlb2.nam.nsroot.net/citi-connect-war/citidirect/payments
PSIGETEndPt: >-
https://sit5cdbeservices.nam.nsroot.net/payment-inquiry-ms/citidirect/payments
PSIGETGREENEndPt: >-
https://sit5cdbeservices.nam.nsroot.net/payment-inquiry-ms/citidirect/payments
InstantPaymentCloudEndpoint: >-
https://instant-payments-ms-icg-tts-168554.namicggtd01d.nam.nsroot.net/instantPayments
InstantPaymentCCEndpoint: >-
https://sit5citiconnectbeservices.nam.nsroot.net/citi-connect-war/citidirect/instantPayments
InstantPaymentInquiryCloudEndpoint: >-
https://instant-payment-inquiry-ms-icg-tts-168554.namicggtd01d.nam.nsroot.net/paymentInquiry
EnhancedEnquiriesServiceECS: >-
https://payment-inquiry-ms-168554.namicggtd10d.nam.nsroot.net/paymentservices/v2/payment/enhancedinquiry
PaymentInitiationECS: >-
https://ccapi-proxy-dev-168554.nam.nsroot.net/ecs-proxy/paymentservices/v2/payment/initiation
UAT2:
properties:
BE-Services: >-
https://uat2citiconnectbeservices.nam.nsroot.net/citi-connect-war/services/CitiConnectService
BE-EnquiriesService: >-
https://ccapi-proxy-uat-168554.nam.nsroot.net/ecs-proxy/paymentservices/v2/payment/inquiry
PSIGETEndPt: >-
https://uat2cdbeservices.nam.nsroot.net/payment-inquiry-ms/citidirect/payments
RESTEndpt: >-
https://uat2citiconnectbeservices.nam.nsroot.net/citi-connect-war/citidirect/payments
PSIGETGREENEndPt: >-
https://uat2cdbeservices.nam.nsroot.net/payment-inquiry-ms/citidirect/payments
InstantPaymentCCEndpoint: >-
https://uat2citiconnectbeservices.nam.nsroot.net/citi-connect-war/citidirect/instantPayments
InstantPaymentCloudEndpoint: >-
https://inst-pymt-ms-uat-168554.namicgswd11u.nam.nsroot.net/instantPayments/v2/paymentInitiation
InstantPaymentInquiryCloudEndpoint: >-
https://inst-pymt-inquiry-ms-uat-168554.namicgswd11u.nam.nsroot.net/paymentInquiry
EnhancedEnquiriesServiceECS: >-
https://payment-inquiry-ms-168554.namicggtd10d.nam.nsroot.net/paymentservices/v2/payment/enhancedinquiry
SIT2:
properties:
PSIGETEndPt: >-
https://sit2cdbeservices.nam.nsroot.net/payment-inquiry-ms/citidirect/payments
RESTEndpt: >-
https://sit2citiconnectbeservices.nam.nsroot.net/citi-connect-war/citidirect/payments
BE-Services: >-
https://sit2citiconnectbeservices.nam.nsroot.net/citi-connect-war/services/CitiConnectService
BE-EnquiriesService: >-
https://ccapi-proxy-dev-168554.nam.nsroot.net/ecs-proxy/paymentservices/v2/payment/inquiry
PSIGETGREENEndPt: >-
https://sit2cdbeservices.nam.nsroot.net/payment-inquiry-ms/citidirect/payments
PTE:
properties:
RESTEndpt: >-
https://pteciticonnectbeservices.nam.nsroot.net/citi-connect-war/citidirect/payments
BE-EnquiriesService: >-
https://ccapi-proxy-pte-168554.nam.nsroot.net/ecs-proxy/paymentservices/v2/payment/inquiry
BE-Services: >-
https://pteciticonnectbeservices.nam.nsroot.net/citi-connect-war/services/CitiConnectService
PSIGETEndPt: >-
https://ptecdbeservices.nam.nsroot.net/payment-inquiry-ms/citidirect/payments
PSIGETGREENEndPt: >-
https://ptecdbeservices.nam.nsroot.net/payment-inquiry-ms/citidirect/payments
InstantPaymentCCEndpoint: >-
https://pteciticonnectbeservices.nam.nsroot.net/citi-connect-war/citidirect/instantPayments
InstantPaymentCloudEndpoint: >-
https://instant-payments-ms-pte-168554.namicgswd12u.nam.nsroot.net/instantPayments/v2/paymentInitiation
InstantPaymentInquiryCloudEndpoint: >-
https://instant-payments-ms-pte-168554.namicgswd12u.nam.nsroot.net/paymentInquiry
EnhancedEnquiriesServiceECS: >-
https://payment-inquiry-ms-pte-168554.namicgswd12u.nam.nsroot.net/paymentservices/v2/payment/enhancedinquiry
PaymentInitiationECS: >-
https://ccapi-proxy-pte-168554.nam.nsroot.net/ecs-proxy/paymentservices/v2/payment/initiation
DIT:
properties:
RESTEndpt: >-
http://citi-connect-ci-linux.nam.nsroot.net:32120/citi-connect-war/citidirect/payments
BE-Services: >-
http://citi-connect-ci-linux.nam.nsroot.net:32120/citi-connect-war/services/CitiConnectService
BE-EnquiriesService: >-
https://ccapi-proxy-dev-168554.nam.nsroot.net/ecs-proxy/paymentservices/v2/payment/inquiry
PSIGETEndPt: >-
https://sit5cdbeservices.nam.nsroot.net/payment-inquiry-ms/citidirect/payments
PSIGETGREENEndPt: >-
https://sit5cdbeservices.nam.nsroot.net/payment-inquiry-ms/citidirect/payments
PROD:
properties:
PSIGETEndPt: >-
https://microservices.wlb3.nam.nsroot.net/payment-inquiry-ms/citidirect/payments
RESTEndpt: >-
https://citiconnectbeservices.wlb2.nam.nsroot.net/citi-connect-war/citidirect/payments
BE-Services: >-
https://citiconnectbeservices.wlb2.nam.nsroot.net/citi-connect-war/services/CitiConnectService
BE-EnquiriesService: >-
https://ccapi-proxy-168554.cloudgsl.nam.nsroot.net/ecs-proxy/paymentservices/v2/payment/inquiry
BE-AttachmentService: >-
https://citiconnectbeservices.wlb2.nam.nsroot.net/citi-connect-war/services//CitiConnectAttachmentsService
PSIGETGREENEndPt: >-
https://microservices.wlb3.nam.nsroot.net/payment-inquiry-ms/citidirect/payments
InstantPaymentCCEndpoint: >-
https://citiconnectbeservices.wlb2.nam.nsroot.net/citi-connect-war/citidirect/instantPayments
InstantPaymentCloudEndpoint: >-
https://instant-payments-ms-168554.cloudgsl.nam.nsroot.net/instantPayments/v2/paymentInitiation
EnhancedEnquiriesServiceECS: >-
https://payment-inquiry-legacy-168554.cloudgsl.nam.nsroot.net/paymentservices/v2/payment/enhancedinquiry
PaymentInitiationECS: >-
https://ccapi-proxy-168554.cloudgsl.nam.nsroot.net/ecs-proxy/paymentservices/v2/payment/initiation
UAT:
properties:
PSIGETEndPt: >-
https://uat1cdbeservices.nam.nsroot.net/payment-inquiry-ms/citidirect/payments
RESTEndpt: >-
https://uat1citiconnectbeservices.nam.nsroot.net/citi-connect-war/citidirect/payments
BE-Services: >-
https://uat1citiconnectbeservices.nam.nsroot.net/citi-connect-war/services/CitiConnectService
BE-EnquiriesService: >-
https://uat1citiconnectbeservices.nam.nsroot.net/citi-connect-war/services/CitiConnectInquiriesService
PSIGETGREENEndPt: >-
https://uat1cdbeservices.nam.nsroot.net/payment-inquiry-ms/citidirect/payments
InstantPaymentCloudEndpoint: >-
https://inst-pymt-ms-uat-168554.namicgswd11u.nam.nsroot.net/instantPayments
InstantPaymentInquiryCloudEndpoint: >-
https://inst-pymt-inquiry-ms-uat-168554.namicgswd11u.nam.nsroot.net/paymentInquiry
Sandbox:
properties:
InstantPaymentCCEndpoint: >-
https://cteciticonnectbeservices.nam.nsroot.net/citi-connect-war/citidirect/instantPayments
InstantPaymentCloudEndpoint: >-
https://instant-payments-ms-icg-tts-168554.namoserut01u.nam.nsroot.net/instantPayments
PSIGETGREENEndPt: >-
https://ctecdbeservices.nam.nsroot.net/payment-inquiry-ms/citidirect/payments
PSIGETEndPt: >-
https://ctecdbeservices.nam.nsroot.net/payment-inquiry-ms/citidirect/payments
RESTEndpt: >-
https://cteciticonnectbeservices.nam.nsroot.net/citi-connect-war/citidirect/payments
BE-Services: >-
https://cteciticonnectbeservices.nam.nsroot.net/citi-connect-war/services/CitiConnectService
BE-EnquiriesService: >-
https://ccapi-proxy-cte-168554.cloudgsl.nam.nsroot.net/ecs-proxy/paymentservices/v2/payment/inquiry
InstantPaymentInquiryCloudEndpoint: >-
https://instant-payment-inquiry-ms-icg-tts-168554.namoserut01u.nam.nsroot.net/paymentInquiry
EnhancedEnquiriesServiceECS: >-
https://payment-inquiry-ms-168554.namicggtd10d.nam.nsroot.net/paymentservices/v2/payment/enhancedinquiry
PaymentInitiationECS: >-
https://ccapi-proxy-cte-168554.cloudgsl.nam.nsroot.net/ecs-proxy/paymentservices/v2/payment/initiation
externalDocs: []
attachments: []
gateway: datapower-gateway
assembly:
execute:
- operation-switch:
title: operation-switch
case:
- operations:
- verb: post
path: /txrefund
execute:
- switch:
title: switch
case:
- condition: >-
((apim.getvariable('message.headers.content-type')).includes('xml'))
execute:
- proxy:
title: proxy
timeout: 60
verb: keep
cache-response: protocol
cache-ttl: 900
version: 1.0.0
tls-profile: citiconnect-ssl-profile
target-url: $(BE-Services)
- condition: >-
((apim.getvariable('message.headers.content-type')).includes('json'))
execute:
- proxy:
title: proxy
timeout: 60
verb: keep
cache-response: protocol
cache-ttl: 900
version: 1.0.0
tls-profile: citiconnect-ssl-profile
target-url: $(RESTEndpt)
version: 1.0.0
- activity-log:
title: activity-log
content: header
error-content: header
version: 1.0.0
catch: []
categories:
- 'operation: Enhanced Payment Status Inquiry'
- 'operation: Payment Status Inquiry'
- 'operation: Payment Initiation'
definitions:
ErrorResponse:
description: Object representing response for error scenario
properties:
correlationId:
description: input request tracking unique id
type: string
xml:
name: correlationId
message:
description: message providing information about error
type: string
xml:
name: message
status:
description: error status code
type: string
xml:
name: status
type: object
xml:
name: response
InstantPaymentRequest:
description: Object representing instant payment initiation request
properties:
paymentBase64:
description: Base64 encoded string of ISO XML payment initiation input xml
format: byte
type: string
xml:
name: paymentBase64
required:
- paymentBase64
type: object
xml:
name: Request
InstantPaymentResponse:
description: Object representing payment initiation response
properties:
paymentBase64:
description: Base64 encoded string of ISO XML payment initiation input xml
format: byte
type: string
xml:
name: paymentBase64
required:
- paymentBase64
type: object
xml:
name: Response
securityDefinitions:
Client ID:
description: ''
in: query
name: client_id
type: apiKey
clientCredentials:
type: oauth2
flow: application
tokenUrl: /authenticationservices/v1/oauth/token
description: >-
All CitiConnect APIs use the oAuth2 authentication scheme, which requires
a bearer token to authenticate your API call. The Token URL includes the
version of authentication used by this API. See the Citi Authentication
API Reference for information on requesting a token.
x-scopeValidate:
tls-profile: citi-direct-ssl-profile
paths:
/txrefund:
summary: Payment Refund
post:
requestBody:
content:
application/xml:
example: >-
CITIBANK/20200617-PSR/17272375002020-06-17T07:27:08CITIUS33GBP161114694869pain.001.001.032017-06-02T10:17:5511PDNG14017498
Fund Transfer
DomesticPA2018201912PDNGPayment
validation is
in-progress1.002019-08-20URGPTRFCITIBANK
E-BUSINESS EUR DUM
DEMO12345678fakebicGBfakebic8010643122X
XXXXXXXXXXXXX XXXWDW 3 INVESTMENTS
LIMITED12345678
required: true
responses:
'200':
description: 200 OK
content:
application/xml:
example: >-
CITIBANK/20191211-PSR/9414161772019-12-11T06:24:52CITIUS33MsgIdffghpain.007.001.092019-12-11T12:00:001456879620191209CITISGS0BRT2101630ACTC
'400':
description: Bad Request
'401':
description: Unauthorized; OAuth header decryption failed
'405':
description: Method Not Allowed
'412':
description: Precondition Failed
'415':
description: Unsupported Media Type
'429':
description: Too Many Requests
'500':
description: Internal Server Error
'503':
description: Service Unavailable
'504':
description: Gateway Timeout
host: $(catalog.host)