Skip to content

Sage 200 Online Bank Transfer XML

Bank transfers are used to record the movement of money between two bank accounts. It will result in a pair of transactions being created in Sage, a bank payment and bank receipt. Further information can be found on the Sage 200 Online Bank Transfer API Documentation.

Tasks

Identifiers

external_id

Optional (recommended)
To prevent duplicate bank transfers being imported into Sage 200 we would recommend to always set the external_id field to a unique id from the source system. When the field is provided it will be stored within Zynk's internal database along with the URN assigned by Sage 200.

Type Example XML
string(255) 12345 <external_id>12345</external_id>

Fields for Download and Upload

bank_from_id

Dependant (see bank_from)
The unique id of the bank the payment will transfer from. Can also be looked up based on the bank code, see bank_from.

Type Example XML
integer(int64) 27006 <bank_from_id>27006</bank_from_id>

bank_from

Dependant (see bank_from_id)
Performs a lookup for the ID of the bank based on the code specified. Only takes effect when bank_from_id is not specified.

Type Example XML
integer(int64) 1200 <bank_from><code>1200</code></bank_from>

bank_to_id

Dependant (see bank_to)
The unique id of the bank the payment will transfer to. Can also be looked up based on the bank code, see bank_to.

Type Example XML
integer(int64) 27008 <bank_to_id>27008</bank_to_id>

bank_to

Dependant (see bank_to_id)
Performs a lookup for the ID of the bank based on the code specified. Only takes effect when bank_to_id is not specified.

Type Example XML
integer(int64) 1201 <bank_to><code>1201</code></bank_to>

payment_value

Required
The amount to transfer.

Type Example XML
number(decimal 2dp) 120 <payment_value>120</payment_value>

narrative

Optional
The narrative for the bank transfer.

Type Example XML
string(6000) Transfer of £120 from 1200 to 1201 <narrative>Transfer of £120 from 1200 to 1201</narrative>

reference

Optional
The reference for the bank transfer.

Type Example XML
string(20) Web Sales <reference>Web Sales</reference>

second_reference

Optional
A second reference for the bank transfer.

Type Example XML
string(20) Order #12345 <second_reference>Order #12345</second_reference>

transaction_date

Optional
The date of the bank transfer. Should be specified in the ISO 8601 date format.

Type Example XML
datetime 2020-01-01T00:00:00 <transaction_date>2020-01-01T00:00:00</transaction_date>

receipt_value

Optional
The receipt value of the bank transfer. This is only applicable if either of the bank accounts specified are not in the base currency.

Type Example XML
number(decimal 2dp) 120 <receipt_value>120</receipt_value>

exchange_rate

Optional
The exchange rate used for the bank transfer. This is only applicable if either of the bank accounts specified are not in the base currency.

Type Example XML
number(decimal 6dp) 1.000000 <exchange_rate>1.000000</exchange_rate>

commission_value

Optional
The amount of commission associated with the bank transfer. This is only applicable if either of the bank accounts specified are not in the base currency.

Type Example XML
number(decimal 2dp) 120 <commission_value>120</commission_value>

commission_code

Optional
The nominal account code for commission. This is only applicable if either of the bank accounts specified are not in the base currency.

Type Example XML
string(8) 4000 <commission_code>4000</commission_code>

commission_cost_centre

Optional
The cost centre for commission. If specified must correspond to the nominal code. This is only applicable if either of the bank accounts specified are not in the base currency.

Type Example XML
string(3) 020 <commission_cost_centre>020</commission_cost_centre>

commission_department

Optional
The department for commission. If specified must correspond to the nominal code. This is only applicable if either of the bank accounts specified are not in the base currency.

Type Example XML
string(3) SAL <commission_department>SAL</commission_department>

commission_payer

Optional
Who will pay the commission on the bank transfer. The accepted values are PaymentBank or ReceiptBank. This is only applicable if either of the bank accounts specified are not in the base currency.

Type Example XML
enum PaymentBank <commission_payer>PaymentBank</commission_payer>

payment_to_base_exchange_rate

Optional
The exchange rate to convert from the payment_value currency to the base currency. This is only applicable if either of the bank accounts specified are not in the base currency.

Type Example XML
number(decimal 6dp) 1.000000 <payment_to_base_exchange_rate>1.000000</payment_to_base_exchange_rate>

receipt_to_base_exchange_rate

Optional
The exchange rate to convert from the receipt_value currency to the base currency. This is only applicable if either of the bank accounts specified are not in the base currency.

Type Example XML
number(decimal 6dp) 1.000000 <receipt_to_base_exchange_rate>1.000000</receipt_to_base_exchange_rate>

exchange_difference_code

Optional
The nominal account code for the exchange difference. This is only applicable if either of payment_to_base_exchange_rate or receipt_to_base_exchange_rate are changed.

Type Example XML
string(8) 4000 <exchange_difference_code>4000</exchange_difference_code>

exchange_difference_cost_centre

Optional
The cost centre for the exchange difference. If specified must correspond to the nominal code. This is only applicable if either of payment_to_base_exchange_rate or receipt_to_base_exchange_rate are changed.

Type Example XML
string(3) 020 <exchange_difference_cost_centre>020</exchange_difference_cost_centre>

exchange_difference_department

Optional
The department for the exchange difference. If specified must correspond to the nominal code. This is only applicable if either of payment_to_base_exchange_rate or receipt_to_base_exchange_rate are changed.

Type Example XML
string(3) SAL <exchange_difference_department>SAL</exchange_difference_department>

Example XML

Minimal Example

<?xml version="1.0" encoding="utf-8"?>
<BankTransfers>
  <BankTransfer>
    <bank_from>
      <code>1200</code>
    </bank_from>
    <bank_to>
      <code>1201</code>
    </bank_to>
    <payment_value>120</payment_value>
  </BankTransfer>
</BankTransfers>

Full Example

<?xml version="1.0" encoding="utf-8"?>
<BankTransfers>
  <BankTransfer>
    <external_id>1241245</external_id>
    <bank_from_id>27006</bank_from_id>
    <bank_from>
      <code>1200</code>
    </bank_from>
    <bank_to_id>27008</bank_to_id>
    <bank_to>
      <code>1201</code>
    </bank_to>
    <payment_value>120</payment_value>
    <narrative>Transfer of £120 from 1200 to 1201</narrative>
    <reference>Web Sales</reference>
    <second_reference>Order #12345</second_reference>
    <transaction_date>2020-01-01T00:00:00</transaction_date>
    <receipt_value>120</receipt_value>
    <exchange_rate>1.000000</exchange_rate>
    <commission_value>120</commission_value>
    <commission_code>4000</commission_code>
    <commission_cost_centre>020</commission_cost_centre>
    <commission_department>SAL</commission_department>
    <commission_payer>PaymentBank</commission_payer>
    <payment_to_base_exchange_rate>1.000000</payment_to_base_exchange_rate>
    <receipt_to_base_exchange_rate>1.000000</receipt_to_base_exchange_rate>
    <exchange_difference_code>4000</exchange_difference_code>
    <exchange_difference_cost_centre>020</exchange_difference_cost_centre>
    <exchange_difference_department>SAL</exchange_difference_department>
  </BankTransfer>
</BankTransfers>