Payments
payments
Methods
This API allows clients to inquire details of their transactions for both Incoming and Outgoing payments based on various significant parameters.
Content-Type : Supports application/json and format PSRJ03 :
Authorization : The OAuth Token prefixed with ?Bearer? and space in between. :
This field holds the Citi bank Corporate Client's account number
This field represents Citi Transaction reference number for the transaction as displayed in account statements. Ex - MT940 (Account Servicing institution reference)
This field holds the Citi bank Corporate Client's Bank Branch BIC code. Example - CITISGSGXXX. If the BIC code contains less than 11 digits then it will be treated an invalid request and rejected.
This field holds the Citi bank Corporate Client's account Branch code. Only a valid Internal Bank Branch code should be provided containing 3/4 digits.
Unique identification assigned by the initiating party to clearly identify the transaction. This Identification is passed on, unchanged, throughout the entire end-to-end chain.
This field represents Sender name, if transaction_flow_indicator = CR, and
Beneficairy name, if transaction_flow_indicator = DR. If clients want to search for a particular Remitter or Beneficiary name, then Account number and BIC / Branch code should be provided mandatorily. If not the request will be treated as invalid and rejected
This field page number, user can input specfic page number based on the search results. The clients will be informed how many transactions the total result contains and along with the page number, If there are more results for their initial search which is not reported back on the first initial response.
This field can be inputed with any payment details information, for ex - Payment Invoice numbers, etc. This field represents Service Type identifier.
This field represents the from Date at which the initiating party requests the clearing agent to process the payment. Format YYYY-MM-DD
This field represents the To Date at which the initiating party requests the clearing agent to process the payment. Format YYYY-MM-DD
This value indicates whether the transaction is a Credit or debit with the values CR or DR respectively. For Debit Transaction inquiry, this input is not required as by default Sytem will consider the query to be Debit. However for Credit Transaction inquiry this must be inputted as CR. Debit account number should be specified for outgoing transaction.Credit account number should be specified for incoming transaction
This field represents the payment received date & time at Citi range starting from. It must be always specified in UTC format YYYY-MM-DDThh:mm:ss.sTZD. The ?transaction received date from? should not be greater than 90 days from the present business date
This field represents the payment received date & time at Citi range ending to. It must be always specified in UTC format YYYY-MM-DDThh:mm:ss.sTZD. The ?transaction received date to? should not be less than 90 days from the present business date.
Input UETR number. Unique EndtoEnd Transaction Reference identification assigned by the initiating party or payment processing bank to uniquely identify the transaction. 36 characters, made up to 32 hexadecimal characters, shown in five parts divided by hyphens/dashes as follows - xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx
A virtual account number assigned to any particular Citi bank corporate Client's account number.It Should be Virtual account number or payer id.This will be applicable only for Credit / Incoming transactions. This must be provided only when Transaction Indicatory = CR.If this is provided when the Transaction Indicatory = DR, then it will be an invalid request.
Payment initiation
This service allows you to initiate new payments by accommodating different data attributes for all the available payment methods. After the initial API request call, user receive a response that denotes whether the payment has passed the basic validations.
Initiating a payment using the Payment Initiation API involves making a well-formed POST request to the CitiConnect API.
Supported ISO formats under Payment Initiation API
|Payment Nature| ISO XML format||--|--||Outgoing Payment| pain.001.001.03||Direct Debit Payment| pain.008.001.02|
How to initiate CitiConnect Payment
1. Authenticate to CitiConnect API (Go To Link)
2. Make an API call by specifying the Payment Initiation service URL.
3. Specify your request headers. (See Appendix D: Payment Initiation API Reference for sample requests.)
4. Specify all mandatory values in the ISOXML file at the minimum and encode the XML file with Base64 to place it in the
5. Review further status using ?Payment Status Inquiry? API.
https://tts.{env_name1}.apib2b.citi.com/citiconnect/{env_name2}/paymentservices/v1/payment/initiation?client_id={client_id}
Parameters
Headers
i.Content-Type( required)
ii.PayloadType(required)
iii.Authorization (required)
Body
Specify all mandatory values in the ISOXML V3 (pain.001.001.03) file at the minimum and encode the XML file with Base64 to place it in the
Response Types
This API allows you to initiate reconfirm/reject FI payments in JSON and XML format.
This API allows you to initiate stop/recall FI payments in JSON and XML format.
Domain types
Inquiry
payments.inquiry
Methods
Payment Status inquiry
This service allows you to access the status of your payments where it generates payment details with status of the payment transaction.
How to initiate to Payment Status Inquiry
To initiate status inquiry to CitiConnect API, you must perform the following tasks in your source code:
1. Authenticate to CitiConnect API (go To link)
2. Make an API call by specifying the Payment Status Inquiry service URL.
3. Specify your request headers.
4. Specify all mandatory values in the XML file at the minimum. Then sign and encrypt the payload in the body of the request with mandatory header values.
5. Review further status using ?Payment Status Inquiry? API.
https://tts.{env_name1}.apib2b.citi.com/citiconnect/{env_name2}/paymentservices/v1/payment/inquiry?client_id={client_id}
Parameters
Headers
i.Content-Type( required)
ii.Authorization ( required)
Body
i.EndToEndId( required):
Unique identification assigned by the initiating party to clearly identify the transaction. This Identification is passed on, unchanged, throughout the entire end-to-end chain.ii.CreDt:
Date when the payment initiation started. The date format is: YYYY-MM-DD.iii.InstdAmt, Ccy :
Amount of money transferred between the debtor and the creditor before any deduction of charges is made. This is expressed in the currency that is specified by the initiating party.iv. ReqdExctnDt :
Date that the initiating party requests that the clearing agent process the payment.Response Types
Payment Status inquiry- GET
This service allows you to access the status of your payments in an innovative way where it generates payment details with status of the payment transaction.
How to initiate to Payment Status Inquiry
To initiate status inquiry to CitiConnect API, you must perform the following tasks in your source code:
1. Authenticate to CitiConnect API
2. Make an API call by specifying the Payment Status Inquiry service (GET Verb) URL.
3. Specify your request headers.
4. Specify all mandatory values in the XML file at the minimum. Then sign and encrypt the payload in the body of the request with mandatory header values.
_5_. Review further status using ?Payment Status Inquiry(GET Verb)? API.
https://tts.{env_name1}.apib2b.citi.com/citiconnect/{env_name2}/paymentservices/v1/payment/inquiry?client_id={client_id}
Parameters
Headers
i.Content-Type( required)
ii.Authorization ( required)