Skip to content

Sage 200 Online Bank Payment XML

Bank payments are used to record the money being paid out from a bank account. Further information can be found on the Sage 200 Online Bank Payment API Documentation.

Tasks

Identifiers

external_id

Optional (recommended)
To prevent duplicate bank payments 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_id

Dependant (see bank)
The unique id of the bank that the payment is for. If the bank account does not have the same currency as the base currency, then additional properties can be set for the currency and exchange rate. Can also be looked up based on the bank code, see bank.

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

bank

Dependant (see bank_id)
Performs a lookup for the ID of the bank that the payment is for, based on the code specified. If the bank account does not have the same currency as the base currency, then additional properties can be set for the currency and exchange rate. Only takes effect when bank_id is not specified.

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

nominal_analysis_items

Required
The nominal analysis lines that relate to the payment. The <nominal_analysis_items> node is a collection of <nominal_analysis_item> nodes that allow you analyze the value of the payment to specific nominal codes. See full example XML below.

Field Type Example XML
code string(8) 4000 <code>4000</code>
cost_centre string(3) 020 <cost_centre>020</cost_centre>
department string(3) SAL <department>SAL</department>
narrative string(6000) 4000 <narrative>Received £120 into 1200</narrative>
gross_value number(decimal 2dp) 120 <gross_value>120</gross_value>
goods_value number(decimal 2dp) 100 <goods_value>100</goods_value>
tax_code_id integer(int64) 26245 <tax_code_id>26245</tax_code_id>
tax_code/code integer(int16) 1 <tax_code><code>1</code></tax_code>
tax_value number(decimal 2dp) 20 <tax_value>20</tax_value>
transaction_date datetime 2020-01-01T00:00:00 <transaction_date>2020-01-01T00:00:00</transaction_date>
reference string(20) SL23415 <reference>SL23415</reference>

transaction_date

Optional
The date of the transaction. Should be specified in the ISO 8601 date format. Will default to the system date if not specified.

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

reference

Optional
The reference for the bank payment (can be the cheque number).

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

second_reference

Optional
A second reference for the bank payment.

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

tax_registration_number

Optional
The tax registration number of the person the money has been received from (Sage 200 Education Online Only).

Type Example XML
string(30) GB123456789 <tax_registration_number>GB123456789</tax_registration_number>

narrative

Optional
The default description that is used on each nominal analysis item. Can be overridden for each individual nominal analysis item via the nominal_analysis_items collection.

Type Example XML
string(6000) Received £120 into 1200 <narrative>Received £120 into 1200</narrative>

exchange_rate

Optional
The exchange rate between the bank account and the system. This is only applicable if the bank account currency specified is different to the base currency. Defaults to the bank currency exchange rate if not specified.

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

cheque_currency_id

Optional
The currency ID of the bank payment. This is only applicable if the bank account currency specified is different to the base currency. Can also be looked up based on the currency ISO code, see cheque_currency. Defaults to the bank account currency if not specified.

Type Example XML
integer(int64) 351235 <cheque_currency_id>351235</cheque_currency_id>

cheque_currency

Optional
Performs a lookup for the currency ID of the bank payment based on the ISO code specified. Only takes effect when cheque_currency_id is not specified. Defaults to the bank account currency if not specified.

Type Example XML
integer(int64) GBP <cheque_currency><currency_iso_code><code>GBP</code></currency_iso_code></cheque_currency>

cheque_exchange_rate

Optional
The exchange rate between the cheque and the bank account. This is only applicable if the bank account currency specified is different to the base currency. Defaults to the cheque currency exchange rate if not specified.

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

tax_code_id

Optional
The tax code ID for the bank payment. This is only applicable if the bank account currency specified is different to the base currency. Can also be looked up based on the tax code, see tax_code. Defaults to the default tax code if not specified.

Type Example XML
integer(int64) 658747 <tax_code_id>658747</tax_code_id>

tax_code

Optional
Performs a lookup for the tax code ID for the bank payment based on the code specified. Only takes effect when tax_code_id is not specified. Defaults to the default tax code if not specified.

Type Example XML
integer(int64) 1 <tax_code><code>1</code></tax_code>

cheque_value

Required
The value of the payment. This is only applicable if the bank account currency specified is different to the base currency.

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

cheque_goods_value

Required
The net value of the payment. This is only applicable if the bank account currency specified is different to the base currency.

Type Example XML
number(decimal 2dp) 100 <cheque_goods_value>100</cheque_goods_value>

cheque_tax_value

Required
The tax element of the payment. This is only applicable if the bank account currency specified is different to the base currency.

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

bank_charges

Required
The nominal analysis items which relate to bank charges for the payment. This is only applicable if the bank account currency specified is different to the base currency. The <bank_charges> node is a collection of <bank_charge> nodes that allow you analyze the value of the bank charges to specific nominal codes. See full example XML below.

Field Type Example XML
code string(8) 4000 <code>4000</code>
cost_centre string(3) 020 <cost_centre>020</cost_centre>
department string(3) SAL <department>SAL</department>
value number(decimal 2dp) 120 <value>120</value>

Example XML

Minimal Example

<?xml version="1.0" encoding="utf-8"?>
<BankPayments>
  <BankPayment>
    <bank>
      <code>1200</code>
    </bank>
    <nominal_analysis_items>
      <nominal_analysis_item>
        <code>4000</code>
        <gross_value>120</gross_value>
      </nominal_analysis_item>
    </nominal_analysis_items>
  </BankPayment>
</BankPayments>

Full Example

<?xml version="1.0" encoding="utf-8"?>
<BankPayments>
  <BankPayment>
    <external_id>12345</external_id>
    <bank_from_id>27006</bank_from_id>
    <bank>
      <code>1200</code>
    </bank>
    <nominal_analysis_items>
      <nominal_analysis_item>
        <code>4000</code>
        <cost_centre>020</cost_centre>
        <department>SAL</department>
        <narrative>Received £120 into 1200</narrative>
        <gross_value>120</gross_value>
        <goods_value>100</goods_value>
        <tax_code_id>26245</tax_code_id>
        <tax_code>
          <code>1</code>
        </tax_code>
        <tax_value>20</tax_value>
        <transaction_date>2020-01-01T00:00:00</transaction_date>
        <reference>SL23415</reference>
      </nominal_analysis_item>
    </nominal_analysis_items>
    <transaction_date>2020-01-01T00:00:00</transaction_date>
    <reference>4634621</reference>
    <second_reference>Order #12345</second_reference>
    <tax_registration_number>GB123456789</tax_registration_number>
    <narrative>Received £120 into 1200</narrative>
    <exchange_rate>1.000000</exchange_rate>
    <cheque_currency_id>351235</cheque_currency_id>
    <cheque_currency>
      <currency_iso_code>
        <code>GBP</code>
      </currency_iso_code>
    </cheque_currency>
    <cheque_exchange_rate>1.000000</cheque_exchange_rate>
    <tax_code_id>658747</tax_code_id>
    <tax_code>
      <code>1</code>
    </tax_code>
    <cheque_value>120</cheque_value>
    <cheque_goods_value>100</cheque_goods_value>
    <cheque_tax_value>120</cheque_tax_value>
    <bank_charges>
      <bank_charge>
        <code>4000</code>
        <cost_centre>020</cost_centre>
        <department>SAL</department>
        <value>120</value>
      </bank_charge>
    </bank_charges>
  </BankPayment>
</BankPayments>