Import Batch Payments
Import Batch Payments
Import batch payment order functionality allows external systems to import only 1 batch of single payment orders per request.
In one call 1 to 1000 single payment orders of different types can be imported.
Payment Order Attribute Formats
Attribute format defines allowed character set and maximal number of characters in the attribute value.
Exclamation mark (!) means that value should contain exactly the specified number of characters; e.g.:
- '22!S' – value should contain exactly 22 characters that correspond to 'S' charset;
- '22S' – value can contain up to 22 characters that correspond to 'S' charset;
- '13n.2n' – digits and decimal point: up to 13 digits before point and up to 2 digits after the point.
Format Code | Allowed Charset |
---|---|
n | Digits: 0123456789 |
A | Capital letters of the Latin alphabet: ABCDEFGHIJKLMNOPQRSTUVWXYZ |
S | Capital letters of the Latin alphabet: ABCDEFGHIJKLMNOPQRSTUVWXYZ Digits: 0123456789 Characters: / - ? : ( ) . , ` + _ * < > & SPACE |
R | Georgian (Unicode, UTF-8) letters: აბგდევზთიკლმნოპჟრსტუფქღყშჩცძწჭხჯჰ Lower case letters of the Latin alphabet: abcdefghijklmnopqrstuvwxyz Capital letters of the Latin alphabet: ABCDEFGHIJKLMNOPQRSTUVWXYZ Digits: 0123456789 Characters: / - ? : ( ) . , ' + space |
Characters < > & must be represented as:
Characters must be represented: "<" as < ">" as > "&"as &
List Of Request Attributes In ImportpatchPaymentOrders Web Service
Attribute | Type | Description |
---|---|---|
batchPaymentRequestId | Long 19n | payment request ID. This attribute is optional; when specified, system will check whether there is already imported batch payment order with the same request ID for the same client and if yes – then the import will fail. |
debitAccountIdentification | AccountIdentificationIo | Debit account identification (account from which all payments in this batch will be made see section AccountIdentificationIo object ) |
batchName | String | Name of batch |
paymentOrder | PaymentOrderIo | List of payment orders to be processed (can be various types. see section Available payment order types) |
AccountIdentificationIo Object
Attribute | Type | Comment |
---|---|---|
accountNumber | String 34S – for creditAccount in transfer to other bank in foreign currency; 22!S – for all other cases. | Account number in IBAN format (creditAccount in transfer to other bank in foreign currency can have different format) |
accountCurrencyCode | String 3!A | Account currency code. For debitAccount element this is MANDATORY |
ImportBatchPaymentOrder Method
If the external system needs to import more than 1 batch it has to call the WS multiple times.
Method | Description | Returns |
---|---|---|
ImportBatchPaymentOrder | List of payment orders (can be various types) | Returns imported batch payment ID |
Available Payment Order Types
Available payment order types and their XSD element equivalents:
Payment order type | xsd element name |
---|---|
Transfer to own account - debit and credit accounts have same currency or have different currencies (currency exchange) | TransferToOwnAccountPaymentOrderIo |
Transfer within TBC Bank | TransferWithinBankPaymentOrderIo |
Transfer to Other Bank in National Currency | TransferToOtherBankNationalCurrencyPaymentOrderIo |
Transfer to Other Bank in Foreign Currency | TransferToOtherBankForeignCurrencyPaymentOrderIo |
Treasury Transfer | TreasuryTransferPaymentOrderIo |
Treasury Transfer for other person or company | TreasuryTransferPaymentOrderIo |
List of request attributes in Import Single Payment
NOTE
To be able to import batch payments user must be granted appropriate rights.
Example 13: Import Batch Payment Order
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:myg="http://www.mygemini.com/schemas/mygemini" xmlns:wsse="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<soapenv:Header>
<wsse:Security>
<wsse:UsernameToken>
<wsse:Username>USERNAME</wsse:Username>
<wsse:Password>PASSWORD</wsse:Password>
<wsse:Nonce>1111</wsse:Nonce>
</wsse:UsernameToken>
</wsse:Security>
</soapenv:Header>
<soapenv:Body>
<myg:ImportBatchPaymentOrderRequestIo>
<!--optional
<myg:batchPaymentRequestId>1602114232243</myg:batchPaymentRequestId>-->
<myg:debitAccountIdentification>
<myg:accountNumber>GE48TB7044436080100017</myg:accountNumber>
<myg:accountCurrencyCode>GEL</myg:accountCurrencyCode>
</myg:debitAccountIdentification>
<myg:batchName>Batch import example</myg:batchName>
<myg:paymentOrder xsi:type="myg:TransferToOwnAccountPaymentOrderIo">
<myg:creditAccount>
<myg:accountNumber>GE34TB0600000016467345</myg:accountNumber>
<myg:accountCurrencyCode>GEL</myg:accountCurrencyCode>
</myg:creditAccount>
<myg:documentNumber>300000</myg:documentNumber>
<myg:amount>
<myg:amount>2</myg:amount>
<myg:currency>GEL</myg:currency>
</myg:amount>
<myg:position>1</myg:position>
<myg:description>Transfer to Own Account</myg:description>
</myg:paymentOrder>
<myg:paymentOrder xsi:type="myg:TransferToOwnAccountPaymentOrderIo">
<myg:creditAccount>
<myg:accountNumber>GE50TB0500000051070890</myg:accountNumber>
<myg:accountCurrencyCode>USD</myg:accountCurrencyCode>
</myg:creditAccount>
<myg:documentNumber>300001</myg:documentNumber>
<myg:amount>
<myg:amount>2</myg:amount>
<myg:currency>USD</myg:currency>
</myg:amount>
<myg:position>2</myg:position>
<myg:description>Currency Exchange</myg:description>
</myg:paymentOrder>
<myg:paymentOrder xsi:type="myg:TransferWithinBankPaymentOrderIo">
<myg:creditAccount>
<myg:accountNumber>GE72TB7630636010100004</myg:accountNumber>
</myg:creditAccount>
<myg:documentNumber>300002</myg:documentNumber>
<myg:amount>
<myg:amount>2</myg:amount>
<myg:currency>GEL</myg:currency>
</myg:amount>
<myg:position>3</myg:position>
<myg:additionalDescription>Transfer within TBC Bank Example</myg:additionalDescription>
<myg:description>Transfer within TBC Bank</myg:description>
<myg:beneficiaryName>Some Company Ltd</myg:beneficiaryName>
</myg:paymentOrder>
<myg:paymentOrder xsi:type="myg:TransferToOtherBankNationalCurrencyPaymentOrderIo">
<myg:creditAccount>
<myg:accountNumber>GE33BG0000000263255500</myg:accountNumber>
</myg:creditAccount>
<myg:documentNumber>300003</myg:documentNumber>
<myg:amount>
<myg:amount>2</myg:amount>
<myg:currency>GEL</myg:currency>
</myg:amount>
<myg:position>4</myg:position>
<myg:additionalDescription>Transfer to Other Bank in NC Example</myg:additionalDescription>
<myg:description>Transfer to Other Bank in National Currency</myg:description>
<myg:beneficiaryName>Some Company Ltd</myg:beneficiaryName>
<myg:beneficiaryTaxCode>100200300</myg:beneficiaryTaxCode>
</myg:paymentOrder>
<myg:paymentOrder xsi:type="myg:TreasuryTransferPaymentOrderIo">
<myg:documentNumber>300005</myg:documentNumber>
<myg:amount>
<myg:amount>2</myg:amount>
<myg:currency>GEL</myg:currency>
</myg:amount>
<myg:position>6</myg:position>
<myg:additionalDescription>Treasury Transfer Example</myg:additionalDescription>
<myg:treasuryCode>100071003</myg:treasuryCode>
</myg:paymentOrder>
<myg:paymentOrder xsi:type="myg:TreasuryTransferPaymentOrderIo">
<myg:documentNumber>300006</myg:documentNumber>
<myg:amount>
<myg:amount>2</myg:amount>
<myg:currency>GEL</myg:currency>
</myg:amount>
<myg:position>7</myg:position>
<myg:additionalDescription>Treasury Transfer for other Example</myg:additionalDescription>
<myg:taxpayerCode>100200300</myg:taxpayerCode>
<myg:taxpayerName>Other Company Ltd</myg:taxpayerName>
<myg:treasuryCode>100071003</myg:treasuryCode>
</myg:paymentOrder>
<myg:paymentOrder xsi:type="myg:TransferToOtherBankForeignCurrencyPaymentOrderIo">
<myg:creditAccount>
<myg:accountNumber>CZ6508000000192000145399</myg:accountNumber>
</myg:creditAccount>
<myg:documentNumber>200004</myg:documentNumber>
<myg:amount>
<myg:amount>2</myg:amount>
<myg:currency>USD</myg:currency>
</myg:amount>
<myg:position>5</myg:position>
<myg:additionalDescription>TRANSFER TO OTHER BANK IN FC EXAMPLE</myg:additionalDescription>
<myg:description>TRANSFER TO OTHER BANK IN FC</myg:description>
<myg:beneficiaryName>SOME COMPANY LTD</myg:beneficiaryName>
<myg:beneficiaryAddress>COUNTRY</myg:beneficiaryAddress>
<myg:beneficiaryBankCode>MYBANKCODE</myg:beneficiaryBankCode>
<myg:beneficiaryBankName>MY SPECIAL BANK NAME</myg:beneficiaryBankName>
<myg:intermediaryBankCode>BDLEIT21300</myg:intermediaryBankCode>
<myg:intermediaryBankName></myg:intermediaryBankName>
<myg:chargeDetails>SHA</myg:chargeDetails>
</myg:paymentOrder>
</myg:ImportBatchPaymentOrderRequestIo>
</soapenv:Body>
</soapenv:Envelope>
List Of Response Attributes In ImportpatchPaymentOrders Web Service
Attribute | Type | Comment |
---|---|---|
mygeminiBatchId | Long | Internal ID of batch assigned by Bank's digital channels (Internet/Mobile banking; DBI integration service) |
Example 14: Success Response For ImportpatchPaymentOrders
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ns2="http://www.mygemini.com/schemas/mygemini"> <SOAP-ENV:Header/> <SOAP-ENV:Body> <ns2:ImportBatchPaymentOrderResponseIo xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema"> <ns2:mygeminiBatchId>75</ns2:mygeminiBatchId> </ns2:ImportBatchPaymentOrderResponseIo> </SOAP-ENV:Body> </SOAP-ENV:Envelope>
Example 15: Error When There Is Already Imported Batch Payment Order With The Same Request ID
<s:Envelope xmlns:s="http://schemas.xmlsoap.org/soap/envelope/"> <s:Header/> <s:Body> <s:Fault> <faultcode xmlns:a="http://www.mygemini.com/schemas/mygemini">a:DUPLICATED_BATCH_PAYMENT_REQUEST </faultcode> <faultstring xml:lang="en">There is already imported batch payment order with the same request ID ('1602114232243') for the same client.</faultstring> </s:Fault> </s:Body> </s:Envelope>
Updated 10 months ago