Interface transaction standards - Canada Education Savings Program

Disclaimer: RESP promoters

The information contained on this page is technical in nature and is intended for Registered Education Savings Plan (RESP) and Canada Education Savings Program (CESP) promoters. For general information, visit the RESP section.

On this page

Alternate formats

Large print, braille, MP3 (audio), e-text and DAISY formats are available on demand by ordering online or calling 1 800 O-Canada (1-800-622-6232). If you use a teletypewriter (TTY), call 1-800-926-9105.

List of acronyms

AIP
Accumulated Income Payment
BCTESG
British Columbia Training and Education Savings Grant
BN
Business Number
CESG
Canada Education Savings Grant
CESP
Canada Education Savings Program
CLB
Canada Learning Bond
CRA
Canada Revenue Agency
EAP
Educational assistance payment
EOF
End of file
ESDC
Employment and Social Development Canada
ITS
Interface Transaction Standards
NCB
National Child Benefit Supplement
PCG
Primary caregiver
PSE
Post-secondary education
RESP
Registered Education Savings Plan
SAGES
Saskatchewan Advantage Grant for Education Savings
SIN
Social Insurance Number
SIR
Social Insurance Registry

Versions

  • ITS version number: 5.9
  • Version date: March 1, 2023
  • Latest update: March 1, 2023
  • Version: 1.0
    • Date: May 15, 1998
    • Description: initial draft to serve in initial discussions and to inform business partners of the data that this system could be expecting. Much of the field specific information was still undetermined (such as field width, mandatory fields, and validations performed)
  • Version: 1.1
    • Date: July 4, 1998
    • Description: draft version still to be used in initial discussions and to inform business partners of the data required by the Canada Education Savings Program (CESP) system. Data fields were defined and cross-referenced to the Mutual Fund Data Standard (MFDS)
  • Version: 1.2
    • Date: July 29, 1998
    • Description: draft update following internal review. This version was submitted for review by the Electronic Standards Group at FundSERV
  • Version: 1.3
    • Date: July 31, 1998
    • Description: changes applied following review with CESP at FundSERV
  • Version: 1.4
    • Date: September 14, 1998
    • Description: various changes resulting from review by industry. Change bars were left on to make these changes visible to the reader. Clarification and corrections
  • Version: 1.5
    • Date: March 25, 1999
    • Description: clarification and corrections, additional appendices, validation rules, legends, changes to record type 500
  • Version: 1.5.1
    • Date: May 31, 1999
    • Description: interim updates and clarifications in response to promoter suggestions
  • Version: 1.5.2
    • Date: September 30, 1999
    • Description: version to coincide with release 2.1
  • Version: 1.5.2a
    • Date: October 15, 1999
    • Description: minor change to Appendix C - Social Insurance Number (SIN) validation
  • Version: 3.0
    • Date: April 17, 2000
    • Description: aligned with release 3.0 user requirements. Discontinued record types 300, 500, and 910
  • Version: 3.0.1
    • Date: June 30, 2000
    • Description: clarification and corrections were made further to promoter information sessions
  • Version: 4.0
    • Date: September 27, 2004
    • Description: changes that include new initiatives, the Canada Learning Bond (CLB) and the Additional Canada Education Savings Grant (CESG), as announced in Budget 2004, and including the Alberta Centennial Education Savings (Alberta P-Grant) Plan, a provincial bond from Alberta
  • Version: 4.2
    • Date: April 26, 2005
    • Description: update following internal review, regulations and comments from March 2005 information sessions
  • Version: 4.3
    • Date: December 16, 2005
    • Description: update following completion of business review. New transaction 511-12 and new error codes and transaction origins
  • Version: 4.4
    • Date: March 1, 2007
    • Description: added Alberta legislative changes which included a new refusal reason of K and the removal of error code 7038

      Changed definition of refusal reason 4 and added 2 new refusal reasons (l and m)

      Changed the definition of error code 5032 for clarification purposes
  • Version: 4.5
    • Date: July 1, 2010
    • Description: added 300 series SIN for beneficiary and subscriber.

      Added Primary caregiver (PCG) SINs that begin with 0. Modified the definition of the 3 year rule

      Added record type 920 and refusal reason N

      Removed the reference to resolving transfers

  • Version: 5.0
    • Date: January 15, 2013
    • Description: added the new Saskatchewan Advantage Grant for Education Savings (SAGES) initiative which includes 2 new record types, new error codes, and refusal reasons
  • Version: 5.5
    • Date: October 1, 2014
    • Description: added the British Columbia Training and Education Savings Grant (BCTESG) initiative that includes 2 new record types, error codes, and refusal reasons
  • Version: 5.6
    • Date: July 1, 2015
    • Description: removed all references to Alberta Grant and discontinued any related fields as part of the Alberta Centennial Education Savings (ACES) Plan closure
  • Version: 5.7
    • Date: July 1, 2016
    • Description: finalized the updates due to the Alberta Centennial Education Savings (ACES) Plan closure and updated an error code for the British Columbia Training and Education Savings Grant (BCTESG) change
  • Version: 5.8
    • Date: October 1, 2017
    • Description: added updates related to the education savings referral service and spousal requests for education savings incentives initiatives. Added a new record type 960 and a new refusal reason of p
  • Version: 5.8
    • Date: August 1, 2019
    • Description: added information relating to incentive repayments. Updates to align with promoter training material. Added information relating to the regulations amending the Canada Education Savings Regulations
  • Version: 5.8
    • Date: July 1, 2021
    • Description: added clarification when requesting Canada Learning Branch (CLB) for beneficiaries who are 18 or older. Added clarification related to contract registration and the processing of beneficiary information
  • Version: 5.9
    • Date: March 1, 2023
    • Description: Gender/SAGES closure
    • Removed all references to Saskatchewan Grant and discontinued any related fields as part of the SAGES) cancellation
    • Added updates to the gender field to include a third gender option as well as to allow the gender to be left blank

Comments and questions regarding this document may be addressed to:

Employment and Social Development Canada – ESDC
Electronic Services Section
Phase IV, Mailstop Bag 4
140 Promenade du Portage
Gatineau QC  K1A 0J9
Telephone: 1-888-276-3624
E-mail: cesp-pcee@hrsdc-rhdsc.gc.ca

1.0 Background to the Interface Transaction Standards

The Canada Education Savings Program (CESP), Interface Transaction Standards (ITS), outlines the procedures for formatting and submitting transactions electronically to the CESP.

2.0 Foreword

The Canada Education Savings Program (CESP), Interface Transaction Standards (ITS), outlines the procedures for formatting and submitting transactions electronically to the CESP. This foreword provides additional information about the requirements in the ITS and explains how the CESP validates, and processes transactions reported.

The CESP has used the word “sender” throughout this document to mean the organisation sending information electronically to the CESP and receiving the Canada Education Savings Grant (CESG), Additional CESG, Canada Learning Bond (CLB) and British Columbia Training and Education Savings Grant (BCTESG) payments from the CESP. This organisation must be the trustee of the Registered Education Savings Plan (RESP) or an administrative agent for the RESP trustee. When the RESP trustee has appointed an agent to fulfill these duties, the agent may be the RESP promoter or can be another organisation, provided there is only 1 agent per RESP specimen plan. However, the CESP does not consider a service provider who purely facilitates the electronic transmission to be the sending organisation on behalf of the RESP trustee.

When reference is made to the “RESP promoter”, this is the organisation ultimately responsible for the administration of the RESP and, specifically, the organisation that has secured approval for the RESP specimen plan from the Canada Revenue Agency (CRA).

When reference is made to the “RESP trustee”, this means the organisation authorised to offer its services to the public as a trustee, has been identified as the trustee for a particular specimen plan, and has signed an agreement with Employment and Social Development Canada (ESDC).

Although the CESP validates certain information received electronically prior to making grant and bond payments, RESP promoters are reminded that all grants and bonds are paid on the condition that the RESP complies with all relevant legislative requirements. This includes the RESP registration rules described in section 146.1 of the Income Tax Act and the conditions relating to the CESP found in the Canada Education Savings Act and related Canada Education Savings Regulations.

3.0 File submission

In this section

Senders submit 2 types of files to the CESP at the end of each reporting period. The transaction file contains transactions reporting all relevant activity against RESPs during the reporting period. The summary reporting file contains the market value of each RESP contract as of the last day of the previous reporting period.

When submitting electronic files to the CESP, each sender must use its own CESP business number (BN). This BN is a 15 character, alphanumeric field. The first 9 digits are the registration number assigned by the CRA when they enter into business. The remaining 6 characters are a suffix assigned by the CESP.

The full 15 character BN uniquely identifies each financial institution conducting business with the CESP. The BN of the sender appears in the transaction file name and in the header and trailer records of the file. The BN of the promoter appears in each of the transactions supplied in the file.

It is mandatory that the sender pass industry testing with a score of 90 per cent or greater before submitting files for processing. If a service provider is sending files on behalf of different senders, each 1 of those senders must pass industry testing using their own data. Although a service provider may be submitting files on a sender’s behalf, the promoter’s BN must appear on all transactions.

3.1 File format overview

Senders can submit 1 or more files for processing in a reporting period. The file name is structured to allow several files to be reported on 1 day. In addition to the sender BN and the date, a file number is added for further distinction. The file number need not be in any specific order. It exists solely to make multiple file names unique for files sent on the same day.

The file itself must conform to a specific structure. A file must consist of a header record (record type 001) followed by the transaction(s) formatted as specified by the ITS, with a trailer record (record type 999) at the end. Failure to follow this structure will result in rejection of the file.

Any files the CESP receives from a sender after the data delivery cut-off date will be held and processed in the next reporting period, unless otherwise notified. The sender is responsible for ensuring that files arrive in a timely manner to be processed within a particular processing period.

3.2 Record format overview

Once all certification requirements are met, it is necessary for the sender to inform the CESP of all relevant RESP activity. Contract activity must be reported to the CESP electronically as follows:

  • contract information informing the CESP of the non-financial aspects of the RESP, such as subscriber and beneficiary information (personal information) and contract information (details of the contract)
  • financial transactions informing the CESP of contributions, post-secondary education (PSE) withdrawals, educational assistance payments (EAP), repayment transactions, transfers, termination adjustments, requests for CLB payments, requests for BCTESG payments and reversals of these transactions. In the case of BCTESG, a cancel request is used in place of a reversal

Transactions submitted to the CESP are categorised by record type and transaction type. For example, contract information is reported using a record type 100, while beneficiary and subscriber information is reported using a record type 200. All financial transactions fall into record types 400 and 411. Within each record type are 1 or more transaction types.

When the CESP receives a file for processing, the format and content of each transaction is validated (please see each record type as described in this document for layout format and validation rules). If transactions are not submitted within the guidelines outlined, the transactions may be rejected and the sender will be responsible for performing the necessary corrections and resubmitting the data. The sender will receive confirmation of acceptance in the processing reports that the CESP sends back to the sender. If any transaction was rejected, it will appear in the error report or the severe error report, depending on the nature of the error. For RESP contracts that have a 60-day "cooling-off" period, transactions should not be forwarded to the CESP until after this period has expired.

3.3 Transaction reporting sequence

Transactions must be submitted in a logical sequence. A beneficiary record must be processed before the CESP system can process financial transactions for that beneficiary. Senders must register contracts before submitting financial transactions for those contracts. Since the CESP system processes transactions in that sequence, contract, beneficiary, and financial transactions can be reported in the same transaction file.

3.4 Transaction date

Each transaction is reported with a transaction date. This date refers to the date on which the transaction occurred between the subscriber and the promoter. For example, the date on a contract transaction would be the date on which the subscriber entered into the contract. For a contribution transaction, the transaction date is the date the contribution was made by the subscriber to the RESP contract.

3.5 Late transaction processing

The CESP expects senders to report all transactions in the reporting period following the period in which the transaction occurred.

Financial transactions requesting grant or bond money, such as transactions 400-11, 400-24 and 411-40 with a transaction date earlier than 3 years, when compared to the date sent in the header record (001) of the file, will not receive payment due to the tardiness of the transaction.

3.6 Reporting period cut-off date

The CESP processes files and pays grant/bond on a monthly basis. Schedules with processing dates (transaction periods, file submission cut-off and grant/bond payment dates) are sent out to the sender via ListServ (an electronic notice) on a periodic basis. Reporting periods extend from the first day of the month to the last day of the same month. Senders are given 4 business days after the reporting period ends to finalize their file(s) to be sent for processing. Senders are not to include any transactions that occurred after the last day of the reporting period.

3.7 Transaction information

As can be seen in the detailed description of the record types, some record types are used for more than 1 purpose. Record type 200 is used to report both beneficiary and subscriber information and record type 400 or 411 is used for reporting several different types of financial transactions. In each case, the specific use of the record is indicated by the transaction type. The information requirements of the various transaction types within a record may differ, resulting in fields that are not required in some transactions but are mandatory in others.

Where fields reported in a transaction are unnecessary for that transaction, like an educational institution reported in a contribution transaction, it could lead to a question as to the intent of the sender. Did the sender mean to report a contribution and inadvertently added an educational institution or did the sender mean to report an EAP and accidentally miscoded the transaction? Senders are advised that inadvertently reporting unnecessary information in a transaction may not result in the rejection of that transaction. In all types of transactions, only information pertinent to that particular record type will be involved in processing, all unnecessary information will be ignored.

4.0 Logical record types

In this section

4.1 Record type 100 - Contract information

Senders must submit a contract information transaction (record type 100, transaction type 01) in order to establish the contract in the CESP system and to register the contract. The CESP collects the information required to register an RESP with the CRA under the Income Tax Act and acknowledges eligibility of registration of the contract on behalf of the CRA.

Before registration of a contract can occur, the sender must also submit transactions that provide the CESP with information on the beneficiary (record type 200, transaction type 03) and the subscriber (record type 200, transaction type 04).

In addition to the record type 900 acknowledging receipt of the contract information transactions, a .reg processing report (contract registration report type 950) is sent to the sender to indicate that all the contract information, subscriber information and beneficiary information transactions have been successfully processed and should meet the conditions for registration at the CRA. The beneficiary does not have to pass Social Insurance Registry (SIR) validation in order to be considered processed.

Promoters should note that a rejected contract information transaction needs to be revised or corrected and re-sent to the CESP.

Additional CESG, CLB and BCTESG request transactions must be on an individual/sibling only contract to attract grant or bond payment. Promoters must submit new record type 100 contract information transactions with the individual/sibling only designation for all existing contracts in order for these contracts to be eligible to receive Additional CESG, CLB or BCTESG.

4.2 Record type 200, transaction type 03 - Beneficiary information

Senders must submit sufficient information to register a contract including a beneficiary information transaction (record type 200, transaction type 03) prior to sending financial transactions associated with the beneficiary. Refer to section 5.5 which states the transactions required to register a contract.

The return of a processing report (.pro) or an error report (.err) will confirm the acceptance or rejection of the beneficiary record. A beneficiary information transaction may be rejected for the following reasons:

  • the beneficiary social insurance number (SIN) must be present and valid. The CESP validates the SIN, given name, surname, date of birth and gender of all beneficiaries with the Social Insurance Registry (SIR). If a beneficiary fails validation at SIR, the transaction is rejected and a beneficiary account is not created in the CESP system. In order for a beneficiary account to be created, senders must resubmit the beneficiary information transaction with the correct information. To minimise errors, the beneficiary’s given name and surname should be submitted to the CESP exactly as they appear on the SIN documentation
  • the custodial parent's name is mandatory information on a beneficiary information transaction only if the beneficiary is under the age of 19
  • other mandatory information missing from the beneficiary information transaction will also cause the transaction to reject. Again, the transaction must be corrected and resubmitted to the CESP before financial transactions, such as contributions, can be processed and grant/bond can be paid. Any rejections appear in the error report that the CESP returns to the sender

Once the contract has been established and registered and a beneficiary is processed by the CESP system, senders must report financial activities pertaining to that beneficiary and contract.

Note: The beneficiary does not have to pass SIR validation in order for the contract to be registered.

New beneficiaries or replacement beneficiaries added to already existing contracts must be submitted using a new beneficiary information transaction. Promoters do not report the removal of either subscribers or beneficiaries from contracts. The successful processing of each of these transactions is reported in record type 900.

4.3 Record type 200, transaction type 04 - Subscriber information

A subscriber information transaction (record type 200, transaction type 04) may be rejected for missing or invalid information that is mandatory for processing. If a subscriber information transaction is rejected, the corresponding contract cannot be registered. Any rejection appears in the error report (transaction error report type 800) which the CESP returns to the sender. The correction and resubmission of the transaction is required before the contract can be registered.

Contracts created before January 1, 1999 do not require a subscriber SIN. For contracts created on or after January 1, 1999, a subscriber SIN must be provided. The subscriber SIN must be numerically valid. In order to keep contract information updated on successfully processed beneficiary or subscriber information transactions (such as change of address), senders should submit a new beneficiary/subscriber information transaction with the updated information.

4.4 Record type 400 - Financial transaction

To ensure the proper payment of the CESG, Additional CESG and CLB, senders must report to the CESP the financial transactions for all beneficiaries and contracts. Financial transactions include all movements of funds in and out of an RESP, but not the growth or investment activities. The CESP bases the payment of requested monies on the reported transactions. A contract must be registered through the CESP before senders can submit any of the following transactions:

  • contributions/Additional CESG
  • educational assistance payments
  • Post-Secondary Education (PSE) withdrawals
  • grant repayment, including contract terminations
  • transfers
  • termination adjustments
  • Canada Learning Bond requests

Transaction type 11 - Contribution

Senders must provide the details of all contributions made to an RESP after 1997. The CESP processes these contributions in the beneficiary record and updates beneficiary limits accordingly.

Grant room is calculated on a first come, first served basis within a reporting period. If, for example, a beneficiary has 2 RESPs at 2 different promoters, and both promoters submit a contribution transaction in the same reporting period, the CESP awards grant to the contribution with the earlier transaction date.

In the case of CESG and Additional CESG, if not all of the grant room is used up on the first contribution, then the second contribution may receive grant as well. If the transaction date of both contributions is the same, the grant is prorated across the 2 contributions.

In all cases, if a payment request was processed and received monies in an earlier reporting period and a new contribution is received in a later reporting period, but with an earlier transaction date than the first contribution, then the grant awarded to the first is not re-calculated.

A request for the Additional CESG is denoted by the inclusion of the PCG or cohabiting spouse or common-law partner (further referred to as spouse) information in the contribution transaction. Upon receipt of this information, the eligibility of the beneficiary to receive Additional CESG is reviewed and the match rate is determined. The CESP examines all existing information for beneficiaries as of January 1, 2005, to determine eligibility for the Additional CESG.

The CESP system validates grant requests against the 16/17 year-old rule. Any grant requests deemed ineligible for grants based on the 16/17 rule are processed but not awarded grant with a refusal reason of 7 (Fail 16/17 rule) in the record type 900, transaction processing report. As well, contributions with a transaction date earlier than 3 years, when compared to the date sent in the header record (001) of the file, are processed but no grant is awarded

Note: spouse means the cohabiting spouse or common-law partner of the primary caregiver, consistent with the meaning assigned in section 122.6 of the Income Tax Act, who has not been separated from the primary caregiver for more than 90 days because of a breakdown in the relationship.

Transaction type 13 - Educational assistance payment

Senders must report to the CESP the amount of CESG, Additional CESG, CLB or BCTESG paid to the beneficiary as part of the EAP as well as the total amount of the EAP. Senders must also supply supporting information, such as the beneficiary’s educational institution postal code, the academic year start date and the academic year length for the beneficiary.

Transaction type 14 - PSE contribution withdrawal

A PSE withdrawal is a contribution refund to the subscriber when the beneficiary is qualified for, but not necessarily receiving an EAP. When a PSE contribution withdrawal is reported, the sender must also report the academic year start date, the academic year length, PSE amount and the postal code of the educational institution.

Transaction type 19 and 23 - Contract transfer

Transfer transactions are reported when a subscriber transfers some or all of the funds in an RESP to another RESP (either between or within a financial institution). Both the originating and the receiving sender must submit a transfer transaction to the CESP. The transfer transaction reports the transfer of the grant/bond notional amount only. The CESP will return a confirmation to both senders and adjust the promoters' grant/bond accounts accordingly.

The transfer transactions require that each promoter supply their own specimen plan identifier and the other promoter’s specimen plan identifier and other promoter’s contract ID as well as matching amounts for each amount of: CESG, CLB and BCTESG.

The originating, or relinquishing promoter sends a transaction type 23 (transfer out) and put its specimen plan and contract ID as well as the CESG, CLB and/or BCTESG amounts into the appropriate fields and the other, or receiving promoter’s specimen plan and contract ID into the fields labeled “other specimen plan ID” and “other contract ID”.

The receiving promoter sends a transaction type 19 (transfer in) to the CESP and put its specimen plan, contract ID and respective CESG, CLB and BCTESG amounts into the fields labeled “specimen plan ID”, “contract ID”, “grant amount”, “CLB amount” and “BCTESG amount” and the other, or relinquishing, promoter’s specimen plan and contract ID into the fields labeled “other specimen plan ID” and “other contract ID”.

Transaction type 21 – CESG, CLB and BCTESG repayments

There are various financial transactions included in the grant and bond repayment transaction (record type 400, transaction type 21). Repayment reasons are as follows:

  • contribution withdrawals
  • accumulated income payments (AIPs)
  • contract termination
  • ineligible transfer
  • ineligible beneficiary replacement
  • payment to an education institution
  • contract revocation
  • ceases to meet “individual/sibling only” condition
  • deceased
  • overcontribution withdrawal
  • other
  • non-resident

Any and all repayment transactions that occur within the RESP must be reported, regardless of whether there is a positive amount in the dollar field, or if the amount is $0.

Contribution withdrawals must be reported to the CESP when the subscriber withdraws all or part of their contributions from the RESP. Contribution withdrawals must come out of assisted contributions first (meaning contributions that have received grant), requiring that the grant paid on those contributions be repaid. Senders must report only the amount of grant being repaid as a result of the withdrawal, not the contribution withdrawal amount itself.

All beneficiaries named on a contract are considered ineligible for Additional CESG when a grant repayment is made for reason of “contribution withdrawal” having a transaction date that is later than March 22, 2004 and a grant amount greater than 0. The period of Additional CESG ineligibility starts from the transaction date of the repayment (inclusive) until December 31 of the second year following the year of the repayment transaction date.

When the promoter makes an accumulated income payment to the subscriber, the grant/bond remaining in the account must be repaid to the CESP.

When a RESP is terminated, the grant/bond remaining in the account must be repaid to the CESP.

An ineligible transfer occurs when the required conditions governing a transfer are not met. The grant/bond in the originating RESP prior to the transfer must be repaid.

An ineligible beneficiary replacement occurs when the regulatory conditions for replacement of a beneficiary are not met. When this occurs, grant/bond is to be repaid to the CESP.

Where the promoter makes a payment to a designated educational institution, the grant/bond remaining in the RESP must be repaid to the CESP.

If for any reason, the RESP fails to comply with legislative requirements, the registration of the contract may be revoked by the CRA. In that case, the grant/bond remaining in the RESP at the date of revocation must be repaid.

The amount of CESG, CLB and BCTESG being repaid can be communicated back to the sender in a single repayment transaction.

Transaction type 22 – Termination adjustments

Termination adjustment transactions should be used only to report the amount of incentives to the CESP system that cannot be repaid due to investment losses when an RESP is terminated. The promoter repays the grant or bond that is available and sends a termination adjustment transaction to inform the CESP of the shortfall. Promoters should apply the losses in the order specified below. In step 3, any remaining loss will be apportioned proportionally among the CESG, CLB and provincial incentives.

  1. Earnings
  2. Contributions
  3. CESG, CLB and provincial incentives proportionally

The CESP expects to receive a repayment transaction for reason of contract termination (transaction type 21) for each termination adjustment transaction. Adjustments to promoter grant or bond liability for the reason described above require that the contract be terminated, which must be reported to the CESP in each case.

Transaction type 24 - Request for Canada Learning Bond payment

To ensure payment of the Canada Learning Bond, senders must provide the RESP details of a beneficiary born after December 31, 2003 on a transaction type 24 – request for Canada Learning Bond payment. The transactions are processed and accounts updated for all eligible beneficiaries. The Canada Learning Bond is paid on a first come, first served basis with respect to both transaction date and processing date.

If 2 promoters submit a CLB request transaction for the same beneficiary in the same reporting period, the entire annual CLB amount is awarded to the transaction with the earlier transaction date. If in a subsequent processing period, a promoter submits a 400-24 CLB request transaction for the same beneficiary with an earlier transaction date than the transaction processed and awarded bond in the previous period, then the CLB awarded to the first promoter is not re-calculated. Hence, in this instance, CLB is awarded by processing date. If 2 promoters submit 400-24 transactions for the same beneficiary with the same processing date, the first transaction processed is awarded the CLB.

The CLB, once paid, will continue to be paid automatically in subsequent years upon verification of National Child Benefit Supplement (NCB) information from the CRA. If a subscriber no longer wishes to receive the CLB, then the “no” option can be selected in the “grant requested” field (value of 0) of the transaction type 24 – request for CLB payments. This will prevent any further payments of the Canada Learning Bond for the specified contract. If the subscriber wishes to receive the CLB in the future, then a new transaction type 24 with the grant requested option of “yes” (value of 1) will result in a continuation of the CLB from the transaction date of the transaction. Hence, if the “CLB stop payment” option was chosen in a previous year, and a new request for CLB payments is chosen in a subsequent year, the CLB payment is resumed as of the transaction date resulting in a CLB payment for the current year and subsequent years in accordance with CLB eligibility rules.

CLB requests will not receive payment if they have a transaction date earlier than 3 years when compared to the date sent in the header record (001) of the file due to the tardiness of the transaction.

Corrections to record type 400 - Financial transactions

The CESP supports corrections of financial transactions. This is accomplished by reversing the original transaction and submitting the correct information in a new transaction.

It is not necessary to report to the CESP any financial transaction changes that occurred as a result of movement of funds inside the RESP contract. For example, if contributions that have already received grant/bond are withdrawn from 1 mutual fund investment and reinvested in another mutual fund, a reversal should not be performed. The contribution remains the same and, therefore, the grant/bond attracted by that contribution does not change.

If, on the other hand, financial transactions are reported inaccurately to the CESP, senders are responsible for submitting the necessary corrections. For example, a reversal is performed if a contribution of $100 should have been reported as a contribution of $1000.

To submit a correction, a sender must first submit a reversal transaction followed by a transaction with the corrected amount(s). Reversals indicate that the transaction and amounts reported did not actually occur as reported. This process provides an auditable source record of all changes to financial records. The reversal transaction must always reference the original financial transaction being reversed. Referring to the promoter business number and transaction ID that appear on the original financial transaction does this. Upon matching the original and reversal transactions, the CESP “undoes” the effect of the original transaction. Senders may then report the corrected transaction to the CESP by submitting a new financial transaction with the corrected fields.

When senders submit the corrected transaction to the CESP, the promoter transaction ID on the original transaction may not be reused, it must be a new and unique identifier. Since the corrected transaction cannot be distinguished from other new transactions, the CESP processes the corrected transaction in the same manner as new transactions.

4.5 Record type 411 – BCTESG transaction

Transaction type 40 – BCTESG request

Senders must provide the RESP details of a beneficiary on a transaction type 40 – request for BCTES grant payment. Transactions are processed on a first come, first served basis.

BCTESG requests do not receive payment if they have a transaction date earlier than 3 years when compared to the date sent in the header record (001) of the file.

Transaction type 41 – Cancel BCTESG request

Use transaction 411-41 to cancel a previously paid transaction requesting BCTESG.

4.6 Record type 511 - PCG/spouse information transaction

During promoter consultation sessions, a requirement was identified that would allow promoters to submit PCG/spouse information for previously processed CESG request transactions. Rather than reversing the original 400-11 contribution transaction and submitting a new 400-11 contribution transaction containing the missing or erroneous PCG/spouse information, promoters can submit this information via the 511-12 transaction. This record type can be used for RESP contributions made on or after January 1, 2005 where the original transaction was missing PCG/spouse information, or the information submitted was incorrect and thus did not receive the Additional CESG.

4.7 Record type 700 - Summary reporting

As part of its mandate, the CESP must report on its success in meeting its goals to various organisations within the federal government. Since the primary goal of the CESP is to encourage Canadians to save for their children's post-secondary education, the growth in the total assets available to those beneficiaries for post-secondary education is a good measure of the success of the CESP.

Senders must send records of type 700 to the CESP once per reporting period giving the market value of each RESP contract under their management as of the last business day of the month. Record type 700 can be submitted to the CESP anytime within the following month. The summary transactions are sent in a separate file containing only records of type 700 (as well as the header and trailer, of course).

5.0 Reports

In this section

Regardless of how many files a sender submits to the CESP in 1 reporting period, the CESP will send 1 of each of the following report types:

  • the error report, containing record type 800
  • the severe error report, containing record type 850
  • the transaction processing report, containing record types 900 and 911
  • the contract registration report, containing record type 950

5.1 Record type 800 - Transaction error report

This document details the format for each transaction type, and provides the sender with the validation rules for those types. If transactions are not submitted within the guidelines outlined in this document, the transactions are subject to rejection. It is the responsibility of the sender to perform the necessary corrections and resubmit the data.

Each transaction error, whether due to problems in format or invalid data, is reported back to the sender for correction and resubmission. This is done electronically via the transaction error report.

The error report contains the transactions submitted to the CESP by a sender that have not been accepted due to the following reasons:

  • failure to correctly format the transaction
  • failure to supply the necessary information for mandatory fields, or
  • failure to comply with business rules

The complete list of error codes is outlined in the section on transaction error codes in Appendix A.

Validation is always done first on the format of the transaction (please see each record type in the ITS for validation rules), then on the transaction's compliance with the business rules. If a transaction is rejected for format problems, a compliance validation is not performed on the transaction. Therefore, a transaction rejected for format may also contain a business compliance error not specified in the error report.

Errors are reported individually for each field in each record whenever they are detected. The field name and an error code describing the error encountered for that field identify each error. Many error messages can be generated for a single record if it contains many formatting errors.

Transactions that conflict with the business rules are also identified and reported. Only a single business error is reported per transaction. For business errors the transaction error code describes the error. Business rules are not validated for transactions that contain data format errors.

When senders receive an error report, it is their responsibility to correct the transaction and resubmit it for processing. When resubmitting, the promoter transaction ID must not be reused. A new identifier is required.

5.2 Record type 850 - Severe error report

A severe error report contains transactions that have been previously sent to the CESP (the BN and the promoter transaction ID already exist in the CESP system) or contain an invalid record type. Rejection will also occur if the BN is not 15 characters long or the promoter transaction ID is not provided on the transaction.

When senders receive a severe error report, it is their responsibility to correct the transaction and resubmit it for processing. When resubmitting, the promoter transaction ID must not be reused. A new identifier is required.

5.3 Record types 900 and 911 - Transaction processing report

At the end of each processing period, the CESP sends a transaction processing report to the sender with a record for every successfully processed transaction. This report contains 2 record types: a record type 900 and a record type 911 for BCTESG information. Each record provides detailed results of the processing of financial transactions submitted (such as how much grant was attracted by each contribution, CLB or BCTESG request, or how much grant, bond or BCTESG was repaid). The report is the CESP’s confirmation to the sender that the submitted transactions were correctly formatted, contained all the mandatory information and passed all the necessary business rules. The transaction processing report also lists all contract, beneficiary, and subscriber information that was successfully processed.

The processing of a sender’s file(s) results in a series of grant/bond payments and repayments. Repayments are netted out from the payments, generally resulting in a payment to the sender. The payment will be automatically deposited into the sender’s account according to the banking information supplied to the CESP. Senders are to use the transaction processing report to update their own contract notional accounts.

The record type 900 indicates the effect the transaction had on the payment received by the sender. The payment requisitioned flag tells the sender if the 900 record is a payment or repayment of grant, or CLB to or from the CESP. In this case the payment requisitioned flag would be set to “yes”, signifying that this transaction affects the amount paid to the sender. In the case of an EAP, PSE contribution withdrawal, transfer or termination adjustment, there is no money moving between the promoter and the CESP so the payment requisitioned flag would be set to “no” signifying that this transaction does not affect the amount paid to the sender.

In the case of the record type 911, the payment requisition flag is set to “yes” if the 911 record is for a payment or repayment of BCTESG or a cancellation of BCTESG. When the 911 record is for the BCTESG portion of an EAP, transfer or termination adjustment, there is no money moving between the promoter and the CESP so the payment requisitioned flag would be set to “no”. The promoter can then reconcile all transactions with the flag set against the payment received from the CESP.

Financial transactions confirmed by record type 900

  • Contributions
  • Educational assistance payments
  • Post-Secondary Education (PSE) withdrawals
  • Grant repayments
  • Transfers
  • Termination adjustments
  • Canada Learning Bond requests
  • Reversals of the above financial transactions

Financial transactions confirmed by record type 911

  • BCTESG requests
  • Cancel BCTESG requests
  • BCTESG portion of educational assistance payments
  • BCTESG portion of grant repayments
  • BCTESG portion of transfers
  • BCTESG portion of termination adjustments

Note: A single record type 911 is used to confirm a BCTESG request or cancel BCTESG request. 1 record type 900 and 1 record type 911 are reported together for the same financial transaction for cases where the BCTESG EAP amount or BCTESG amount is greater than 0.

5.4 Record type 920 – SIN validation report

As part of the CESP’s ongoing efforts to improve program integrity, CESP will verify its beneficiary SIN information with the SIR on a monthly basis. As a result of this monthly SIN validation, certain beneficiary SINs will be identified (flagged) by SIR as not useable. In order to help RESP promoters identify the “not useable” SINs, the CESP sends a SIN validation report (svr) each month. This file will contain a new record type called the SIN validation report record (920).

5.5 Record type 950 - Contract registration report

The CESP acknowledges every contract eligible for registration in the contract registration report for the reporting period. This indicates whether or not all the contract information, subscriber information and beneficiary information transactions have been successfully processed and met the conditions for registration at the CRA.

5.6 Record type 960 - Referral report

Promoters participating in the education savings referral service will receive a referral report on a daily basis (including weekends and holidays) from the CESP. The referral report could contain 1 or more Referral Report records (960) which will contain the information for an individual who is interested in acquiring more information about RESPs, the CESG and the CLB, in order to consider opening an RESP for their child and applying for the education savings incentives. Multiple births, for example twins, would result in a referral report record for each child.

Note: promoters will receive a referral report every day whether or not there are referral report records (960) to send. An empty referral report will contain just the header and trailer records.

5.7 Mergers

Corporate purchases, amalgamations, realignments and other such business transactions occur frequently within the financial services and RESP industry. These changes are typically accompanied by revisions to the relevant business information, such as a new business number (BN), changes to the types of specimen plans offered, change of trustee, or company name changes, etc.

The CESP needs to be made aware of these corporate changes as early as possible. This is necessary to allow sufficient time to determine if a new CESP promoter or trustee agreement is required and, to make the required updates to the CESP system to ensure grant and bond payments continue uninterrupted.

6.0 Technical specifications

In this section

This document is the ESDC, CESP, Interface Transaction Standards (ITS). This document contains the detailed data format for electronically exchanging financial and contract transactions with the CESP.

6.1 Scope

This document describes the data interface for the exchange of information between the CESP and financial service organisations applying for the CESG, Additional CESG, CLB and BCTESG. This specification is intended for use in support of system development to implement data interchange with the CESP system.

This document is the standard by which information is exchanged with the financial services industry for the application and administration of the CESG, Additional CESG, CLB and BCTESG. Data integrity rules are described in detail in this document. Descriptions of the business and general rules under which data is processed within the CESP system are described in the foreword of this document.

Operational aspects of the movement of data and functions used to manage the movement of data files are not part of this specification and are found in Data Interface Operations and Connectivity. Operational functionality includes the following:

  • logging of files
  • authentication of sender
  • transmission verification
  • transmission mechanisms

Detailed operational instructions concerning reporting schedules and methods of transfer of information may be obtained from:

Employment and Social Development Canada – ESDC
Electronic Services Section
Phase IV, Mailstop: Bag 4
140 Promenade du Portage
Gatineau QC  K1A 0J9
Telephone: 1-888-276-3624

6.2 CESP transaction processing record format overview

This specification describes a data interface that is based on the exchange of bulk data files. Senders are required to conform to the record formats and rules specified in the ITS as well as other data interchange rules described in the Data Interface Operations and Connectivity.

The ITS consists of both input and output data record formats. Input records are used to record contract information, record beneficiary information and report financial transactions. Output records report the status of reported data in the form of transaction processing reports and error reports on a record by record basis.

6.3 Logical record types

Source transactions are identified by a record type code as outlined in the following table.

Table 1: Logical record types
Record Type Description
001 Header record (source of transaction)
002 Sub-header record (used for processing report)
003 Files processed
100 Contract information
200
  • Beneficiary information
  • Subscriber information
300 Remove subscriber / beneficiary (discontinued)
400 Financial transaction
  • Contributions
  • EAP
  • PSE contribution withdrawals
  • Grant repayment
  • Contract transfers
  • Termination adjustments
  • Request for CLB
411 BCTESG transaction
  • BCTESG request
  • Cancel BCTESG request
500 Transfer transaction (discontinued)
511 PCG/spouse information transaction
700 Summary reporting
800 Transaction error report
850 Severe error report
900 and 911 Transaction processing report
920 SIN validation report
950 Contract registration report
960 Referral report
999 Trailer record (control count)

6.4 File/record structure

All transaction files have a header record containing standard identification details. Files have a trailer record containing a control count of the number of records in the file including the header and trailer records.

Files contain a mix of transactions, identified by a numeric record type code. This has been set at 3 digits to allow for possible future expansion.

Source input files contain fixed length records, with record types being padded as necessary to meet a consistent standard. This enables different record types to be included on the same file.

6.5 Data formats

The ISO-8859-1 Latin 1 Character Set is the official Treasury Board of Canada, Information Technology Standard (TBITS) for data interchange. All data is provided in ISO-8859-1 format (numeric values are stored in their character representation) as shown in Appendix B.

All fields are fixed length and occupy fixed positions within a record.

Character data is left justified and padded with trailing spaces except for business number. If character data is received right justified, the CESP system will convert it to left justify and transaction reports will show the data left justified. A business number cannot be padded with spaces. If a record type 001 contains a space character (ASCII value 32) the file is rejected, and if any other record contains a space in the sender BN field the record is rejected.

Numeric data is right justified with leading zeroes.

Most amount fields are standardised at 9 digits with 2 implied decimal places (up to a maximum of $9,999,999.99); negative amounts contain a minus sign "-" as the first character in the field. The amount field in record type 002 is longer than other amount fields allowing a maximum value of 12 characters $9,999,999,999.99.

List-type data fields use code tables whenever practical (such as province codes and error codes).

All record types 100, 200, 400, 411 and 511 include a transaction type code. Separate codes are used with each type of transaction in order to identify the specific processing requirements.

6.6 Record separators

Records within files must be separated by a record separator character(s). Record separator characters vary depending on the operating system of the originating system. The CESP transfer process replaces the carriage return (CR, decimal value 13) record separator character with the UNIX new line character (NL, decimal value 10).

Only the new line and carriage return characters are acceptable as record separators. No other record separator characters may be used.

6.7 End of file

The CESP system rejects files that do not conform to CESG end of file format. The following rules apply to end of file format:

  • files must have a record type 999 record as the last record
  • the record type 999 must have a record separator character following it

If the end of file (EOF) character is provided, the following rules apply:

  • the CESP system accepts any single character as an EOF character following the record type 999 record
  • no characters may follow the EOF character

6.8 File processing notes

The CESP transaction processing design supports the following file processing features.

A physical file may include records relating to the following:

  • a trustee and 1 or more promoters (if the sender is the trustee)
  • a single promoter (if a promoter or other agent is acting on behalf of a trustee)

Physical files are rejected if 1 of the following conditions applies:

  • the CESP system cannot read either the file or the header record
  • the header record contains invalid data, is missing, or appears more than once
  • a duplicate header (the same promoter BN + date sent + file number) is already recorded in the CESP system
  • the data version number is incorrect
  • the filename does not match header record
  • the trailer record contains invalid data, is missing, or appears more than once
  • the sender BN is not authorised to send files
  • the record count in trailer record is incorrect
  • the filename does not follow the naming convention
  • the header record is not the first record in the file
  • the date sent in the file name or the header contains a date later than the current date

In all other cases the incoming file records are read into the CESP system. Transactions are validated and incomplete or invalid transactions reported back to the sender, along with appropriate error codes.

Transactions are processed during the reporting periods defined by CESP operations. All transactions with a transaction date on or before the reporting period end dates are processed during that period unless the transaction date is more than 3 years earlier than the processing date. In this instance the transaction will be processed but no grant or bond will be awarded.

Files are processed during the reporting periods as outlined in Data Interface Operations and Connectivity. All files with the same sender BN are processed in date-sent order. If the date sent is the same for more than 1 file in a reporting period, the files are processed by file number.

6.9 Record table terms

The following terms and abbreviations are used in the record format tables in section 3.

Discontinued

A field no longer required. Discontinued fields may be filled with any characters. Discontinued fields are not validated or recorded by the CESP and are treated as filler.

Ref.

Refer to section indicated.

Trxn. posn.

Transaction position

Unassigned

Unassigned transaction types are previously allowed field values that are no longer supported.

6.10 File naming standards

The physical naming of files is described as follows:

  • to CESP: File type + sender BN +date sent + sender file number
  • from CESP: File type + sender BN + date processed + CESG file number + extension

The filename must be 26 characters long, or the file is rejected.

The following definitions apply to the components of the file naming standard.

Table 2: File naming components
Component Format
File type
  • A single uppercase character indicates the file type. The file type character indicates whether the file is a production file, a test file or a summary reporting file.
  • P = Production data file
  • S = Summary reporting file
  • T = Test data file
  • Z = Test summary reporting file
Sender BN 15 character business number
Date sent 8 numeric character date YYYYMMDD
File number
  • 2 digit file number
  • Must be between 01 and 99
  • Generated by CESP for .pro, .err, .ser, .svr, .reg and .ref files.
. . (period)
Extension The file extension is 1 of:
  • pro = processing report from the CESP to sender
  • err = error report from the CESP to sender
  • reg = contract registration report from the CESP to sender
  • ser = severe error report from the CESP to sender
  • svr = SIN validation report from the CESP to the sender
  • ref = referral report from the CESP to the promoter

6.10.1 File type

Files beginning with "T" are used strictly for industry testing and are never a part of a production file group. Files beginning with "Z" are used to test the summary reporting file and are never a part of a production file group. The procedures for industry testing are outlined in Data Interface Operations and Connectivity.

6.10.2 File number

There may be occasions when a sender wishes to send more than 1 file in a single day. In order to be able to give each file a unique name, the file name contains a file number. If the sender sends 1 file in a day, a file number must be provided, though it can be any 2-digit value.

The ordering of the file numbers will not be enforced. The file number is used purely to distinguish files sent on the same day. This differs from previous releases of the interface specification, where the files would be rejected if the file number did not follow a strict sequence.

6.10.3 File extension

Files returned to the sender have the same file type and BN but have the CESP processing date and CESP file number in the prefix. In each reporting period a .pro, .err, .ser, and .reg file is returned to the sender. The SIN validation report, a .svr file, is returned to the sender each month only if 1 or more record type 920 transactions were created. The following is an example of a filename group:

Input files

P123456789RC00011998113098

P123456789RC00011998113099

Output files

P123456789RC00011998121501.ser

P123456789RC00011998121501.err

P123456789RC00011998121501.reg

P123456789RC00011998121501.pro

P123456789RC00011998121501.svr

All file names are in uppercase except file extensions.

6.10.4 Header and trailer record

The header record (adhering to the file identification standard) is the first record in the file and the trailer record, providing a control count of the records in the file, is the last.

The trailer record sent by the CESP contains the unique file number assigned by the CESP and the date when the CESP processing occurred.

6.11 Source data definition standard

Transaction format and content is defined in this document using a common (COBOL) standard, with the following symbols for data attributes.

Table 3: Source data definition standard
Symbol Description
A Alphabetic data. Only the characters A through Z (upper and lowercase) are allowed in a field with this description. It is very rarely used due to the limitations imposed on it (no numbers, punctuation or special characters). The alphanumeric descriptor (X) is usually used in its place due to its broader flexibility.
X Any printable alphanumeric character (includes numbers, letters, punctuation marks, spaces and other special characters). The entire field contains spaces if not used. If larger than 1 character, the contents are left justified with trailing spaces. For example: the letter A in a 3 character alphanumeric field is stored as "A". The number 5 in a character alphanumeric field is stored as "5".
9 Any number. The entire field contains 0 if unused (blanks are not allowed). If larger than 1 digit, the contents are right justified with leading 0. For example: the number 5 in a 3 character numeric field is stored as "005".

Note: Negative amounts are preceded by a minus sign "-" as the first character in the field.
() Indicates a recurrence of the preceding data type, with the number of occurrences stored inside of the parenthesis. For example: 9(6) means a number up to 6 digits long, X(6) means 6 consecutive characters of alphanumeric data.
V
  • Implied decimal point. A character (byte) is not used in the storage of a decimal point but its existence and position is implied. When the field is printed and used in a calculation, an implied decimal point is inserted at the point where the V appears. For example: a field defined as 9V9 is interpreted as 9.9 but is stored as 99.
  • Example:
  • 9(7)V9(3) = 9(7)V999 = 9999999V999 = 9999999V9(3)
  • In all cases, the field is stored as 0123456789 but is interpreted as 0123456.789

6.12 Standard data formats

The following table outlines standard formatting rules for common data field types.

Table 4: Standard data formats
Type Standard format Format
Record type 9(3) 001 to 999
Transaction date 9(8) Valid date formatted YYYYMMDD.
Transaction type 9(2) Codes vary according to transaction.
Promoter BN X(15) The promoter's business number, any 15 characters.
Specimen plan ID 9(10) Unique specimen plan identifier assigned by the CRA.
Contract ID X(15) Assigned by the promoter, any string of characters.
SIN 9(9) Social Insurance Number
Amount fields 9(9)V99 or - 9(8)V99 Up to maximum of $999,999,999.99. Decimals are implied. For example, a contribution of $1,000.00 is reported as 100000 with the appropriate number of leading 0 for padding the field to the correct length (00000100000).

Minus $1000.00 is -0000100000
Name fields X(20) Given name, surname.
Province A(2) Refer to Appendix A
Country A(3) CAN, USA, OTH
Valid date 9(8) All dates must be formatted YYYYMMDD, numerals only, without delimiters such as spaces or punctuation.
Filler X(n-500) Unused field. Must contain the specified number of spaces, or optional comments and is ignored regardless of its contents.
Error code X(4) Refer to Appendix A

All record types follow a standard layout, with the same fields occurring in the same positions to the extent possible.

6.13 Transaction sequence

Transactions must be submitted in a logical sequence.

Once the contract has been established and registered and a beneficiary is processed by the CESP system, senders must report financial activities pertaining to that beneficiary and contract. The beneficiary does not have to pass SIR validation in order to be considered processed.

Record type 400 and 411 records may be sent in the same files as the record type 100 and 200, or in subsequent files.

7.0. Transaction formats

In this section

This section contains detailed descriptions of all transaction record formats.

If any record is rejected, at least 1 record of the error is written into the error report (filename.err) except in the case of severe error. A record of severe error is written into the severe error report (filename.ser) if, in any transaction record, the promoter business number or transaction identifier is blank, the combination of promoter business number and transaction identifier is not unique, or the record type is invalid.

If any field designated mandatory is blank, an error message is generated with an error code of 7005.

7.1 Record type 001 - Header record

Purpose: to identify the source of a transaction file.

Requirements: none.

Table 5: Record type 001 – Header record
Data element name Type size Trxn posn Description Notes
Record type 9(3) 1 to 3 001 - header record n/a
Sender BN X(15) 4 to 18 n/a n/a
Date sent 9(8) 19 to 26 Date on which file sent to the CESP. n/a
File number 9(2) 27 to 28 Number to distinguish files sent on the same day. Range 01 to 99 n/a
Data version 9(2)V9 29 to 31

Version of the CESP data interface standard currently in use.

040, 050, 055, 058 or 059

n/a
Filler X(469) 32 to 500 Spaces n/a

7.1.1 Record type 001 validation rules

The header record, record type 001, is validated and error codes are generated for failures as outlined in the following table and notes.

Table 6: Record type 001 validation rules
Field Rule Error code(s)
Record type There must be a header. 6003
Record type The first record in every file must be record type 001. 6016
Record type No other record can be record type 001. 6005
Sender BN Mandatory field. 7005
Sender BN The sender BN must match the sender BN in the filename. 6000
Sender BN The sender BN must exist in the CESP system. 7001
Sender BN The sender BN must be identified in the CESP system as authorised to send files. 6006
Date sent Mandatory field. 7005
Date sent The date sent must match the date in the filename. 6000
Date sent The date sent must precede or match the current date. 7000
Date sent The date sent must not precede January 1, 1998. 7000
File number Mandatory field. 7005
File number The file number must match the file number in the filename. 6000
Data version Mandatory field. 7005
Data version The data version must be either 040, 050, 055, 058 or 059. 6014
Filler Not validated. n/a

If the filename is not 26 characters long, and formatted as outlined in section 2.6, an error record type 6001 is generated. The combination of business number, date sent, and file number must be unique. If the same combination has already been received and processed by the CESP system, the file is rejected and an error record type 6002 is generated. A file number can be repeated only if the date sent is different as outlined in section 2.6.

7.2 Record type 002 - Sub-header record (transaction processing report)

The record type 002 is included in the transaction processing report.

Purpose: the sub-header records supply reporting period information for each promoter in the transaction processing report.

Requirements: this record is generated by the CESP system and occurs as the second record type in the transaction processing report.

Table 7: Record type 002 - Sub-header record (transaction processing report)
Data element name Type size Trxn posn Description Notes
Record type 9(3) 1 to 3 002 - sub-header record n/a
Promoter BN X(15) 4 to 18 Business number of the promoter. n/a
Start date of reporting period 9(8) 19 to 26 Valid date. n/a
End date of the reporting period 9(8) 27 to 34 Valid date. n/a
Summary amount 9(10)V99 35 to 46 Sum of grant and bond payment less the sum of repayment for a promoter in this reporting period. Positive if grant plus bond disbursed by CESG exceeds the repayment by the promoter.
Payment amount 9(10)V99 47 to 58 Grant and bond money paid to sender in this reporting period. $0 if net repayment of grant or bond.
Payment requisition ID 9(10) 59 to 68 n/a Generated by CESP system.
Filler X(432) 69 to 500 n/a n/a

7.2.1 Record type 002 validation rules

Because record type 002 is generated by the CESP, validation rules are not applicable.

7.3 Record type 003 - Files processed record (transaction processing report)

The record type 003 is included in the transaction processing report.

Purpose: the files processed record gives the name of a production file sent by the sender that was processed by the CESP during the production run. 1 record is generated for each production file sent and processed.

Requirements: this record is generated by the CESP system and occurs as the third record type in the transaction processing report.

Table 8: Record type 003 - Files processed record (transaction processing report)
Data element name Type size Trxn posn Description Notes
Record type 9(3) 1 to 3 003 - files processed record n/a
Sender BN X(15) 4 to 18 Business number of the sender. n/a
Date sent 9(8) 19 to 26 Date sender sent the file to the CESP. n/a
File number 9(2) 27 to 28 File number generated by the sender. n/a
Filler X(472) 29 to 500 n/a n/a

7.3.1 Record type 003 validation rules

Because record type 003 is generated by the CESP, validation rules are not applicable.

7.4 Record type 100 - Contract information

Record type 100 is used to provide contract information or request registration of a contract.

Purpose: to provide contract information necessary to request registration of a new contract or update an existing contract.

Requirements: corresponding records type 200 for a beneficiary and subscriber must be submitted to complete contract registration.

Table 9: Record type 100 – Contract information
Data element name Type size Trxn posn Description Notes
Record type 9(3) 1 to 3 100 - contract information n/a
Transaction date 9(8) 4 to 11 Contract creation date if initial submission. Current date if update transaction. n/a
Promoter transaction ID X(15) 12 to 26 Unique identifier assigned to each transaction by the promoter. Promoter transaction identifier must not be reused to submit corrections.
Promoter BN X(15) 27 to 41 Business number n/a
Transaction type 9(2) 42 to 43 1 - contract information n/a
Specimen plan ID 9(10) 44 to 53 Specimen plan approval number. Assigned by the CRA.
Contract ID X(15) 54 to 68 n/a n/a
Contract term date X(8) 69 to 76 n/a Discontinued
Contract term reason X(1) 77 n/a Discontinued
Balance capital account X(9) 78 to 86 n/a Discontinued
Reversal flag X(1) 87 n/a Discontinued
Originating promoter transaction ID X(15) 88 to 102 n/a Discontinued
Individual/sibling only 9(1) 103
  • 0 - no
  • 1 - yes
  • Blank is interpreted as ‘no’.
  • Must be a value of 1 to attract Additional CESG, CLB or BCTESG.
Filler X(397) 104 to 500 n/a n/a

7.4.1 Record type 100 validation rules

The contract information record, record type 100, is validated and error codes are generated for failures as outlined in the following table and notes.

Table 10: Record type 100 validation rules
Field Rule Error code(s)
Record type Mandatory field. .ser file
Transaction date Mandatory field. 7005
Transaction date Valid date. 7000
Transaction date The Transaction Date must be on or before the current reporting period end date set by the CESP. 1004
Promoter transaction ID Mandatory field. .ser
Promoter transaction ID The promoter transaction identifier must be unique for each promoter. .ser
Promoter BN Mandatory field. .ser
Promoter BN Must be 15 characters. .ser
Promoter BN The promoter business number must exist in the CESP system. 7001
Transaction type Mandatory field. 7005
Transaction type The Transaction Type must be valid for the record type. 7002
Specimen plan ID Mandatory field. 7005
Specimen plan ID Must be numerals only. 7001
Specimen plan ID Specimen plan must exist in the CESP system. 1005
Specimen plan ID The promoter must be associated with the specimen plan identified in the specimen plan ID field. 7008
Specimen plan ID The sender BN specified in the header record must be authorised to send data for the specimen plan. 7030
Contract ID Mandatory field. 7005
Contract term date n/a Discontinued
Contract term reason n/a Discontinued
Balance capital account n/a Discontinued
Reversal flag n/a Discontinued
Originating promoter transaction ID n/a Discontinued
Individual/sibling only Must 0 or 1. 7001
Filler Not validated. n/a

7.5 Record type 200 - Beneficiary/subscriber information

Record type 200 is used to submit beneficiary and subscriber information both for contract registration, and creating or updating beneficiary records.

Purpose: To provide the CESP system with :

  1. beneficiary information, and
  2. subscriber information

Requirements: subscriber SIN/BN must be provided for all contracts created after December 31, 1998.

Table 11: Record type 200 - Beneficiary/subscriber information
Data element name Type size Trxn posn Description Notes
Record type 9(3) 1 to 3 200 - beneficiary/subscriber information n/a
Transaction date 9(8) 4 to 11 Date beneficiary or subscriber is added to the contract. Use current date if beneficiary or subscriber information is being updated.
Promoter transaction ID X(15) 12 to 26 Unique identifier assigned to each transaction by the promoter. Promoter transaction identifier must not be reused to submit corrections.
Promoter BN X(15) 27 to 41 n/a n/a
Transaction type 9(2) 42 to 43
  • 3- beneficiary info
  • 4- subscriber info
Transaction types 5, 6, 7, and 8 are unassigned.
Specimen plan ID 9(10) 44 to 53 Specimen plan approval number. Assigned by the CRA.
Contract ID X(15) 54 to 68 n/a n/a
SIN 9(9) 69 to 77 Beneficiary or subscriber SIN or 9 digit portion of BN if subscriber is an agency n/a
Given name X(20) 78 to 97 n/a
  • If subscriber is an agency, begin entering the agency name in the given name field and continue in the surname field.
  • If the beneficiary or subscriber only has 1 name this field can be left blank or populated with a period ( . ), hyphen ( - ) or underscore ( _ ).
Surname X(20) 98 to 117 n/a As the surname field is mandatory, if an agency name is less than 21 characters and does not continue in the surname field, a character must be entered in this field or the record will be in error.
Birth date 9(8) 118 to 125 n/a n/a
Gender 9(1) 126 1- female
2- male
3- another gender
4- not provided
n/a
Relationship type 9(1) 127
  • Relationship of subscriber to beneficiary
  • 1- parent
  • 2- grandparent
  • 3- aunt/uncle
  • 4- sibling
  • 5- not related
  • 6- other
  • 7- agency
n/a
Address line 1 X(40) 128 to 167 Street name, number, and apartment. n/a
Address line 2 X(40) 168 to 207 Province or equivalent if country not CAN. n/a
Address line 3 X(40) 208 to 247 Country if country = OTH n/a
City X(30) 248 to 277 n/a n/a
Province A(2) 278 to 279 Refer to Appendix A. If country not CAN, province ignored.
Country A(3) 280 to 282 CAN, USA or OTH. If OTH, address line 3 contains the full name of the country.
Postal code X(10) 283 to 292 Postal code if country CAN n/a
Telephone X(10) 293 to 302 n/a Discontinued.
Fax X(10) 303 to 312 n/a Discontinued.
E-mail X(40) 313 to 352 n/a Discontinued.
Old ben SIN X(9) 353 to 361 n/a Discontinued.
Old ben given name X(20) 362 to 381 n/a Discontinued.
Old ben surname X(20) 382 to 401 n/a Discontinued.
Old ben birth date X(8) 402 to 409 n/a Discontinued.
Language 9(1) 410
  • 1- English
  • 2- French
Type 3 is unassigned.
Custodial parent name X(30) 411 to 440 Custodial parent name in free form text. Given name + space + surname
Lifetime contribution X(9) 441 to 449 n/a Discontinued.
Reversal flag X(1) 450 n/a Discontinued.
Original promoter transaction ID X(15) 451 to 465 n/a Discontinued.
Filler X(35) 466 to 500 n/a n/a

7.5.1 Record type 200 validation rules

The subscriber/beneficiary information record, record type 200, is validated and error codes are generated for failures as outlined in the following table and notes.

Table 12: Record type 200 validation rules
Field Rule Error code(s)
Record type Mandatory field. .ser file
Transaction date Mandatory field. 7005
Transaction date Valid date. 7000
Transaction date Transaction date must be on or before the current reporting period end date set by the CESP. 1004
Transaction date Transaction date must be on or after the beneficiary birth date if transaction type 3. 2027
Promoter transaction ID Mandatory field. .ser
Promoter transaction ID Promoter transaction identifier must be unique for each promoter. .ser
Promoter BN Mandatory field. .ser
Promoter BN Must be 15 characters. .ser
Promoter BN Promoter BN must exist in the CESP system. 7001
Transaction type Mandatory field. 7005
Transaction type Transaction must be valid for the record type. 7002
Specimen plan ID Mandatory field. 7005
Specimen plan ID Must be numeric. 7001
Specimen plan ID Specimen plan must exist in the CESP system. 1005
Specimen plan ID The promoter must be associated with the specimen plan identified in the specimen plan ID field. 7008
Contract ID Mandatory field. 7005
SIN Mandatory field. 7005
SIN Numerals (9) only. 7001
SIN If transaction type 4 and relationship type not 7, must be numerically valid. 7006
SIN If transaction type 3, must pass SIR validation as outlined in Appendix C. 7006
SIN If transaction type 4 and relationship type = 7, agency, must be numerically valid. 7033
Given name If transaction type 3, must pass SIR validation as outlined in Appendix C. 7006
Surname Mandatory field. 7005
Surname If transaction type 3, must pass SIR validation as outlined in Appendix C. 7006
Birth date Mandatory if transaction type 3. 7005
Birth date Valid date. 7000
Birth date If transaction type 3, must pass SIR validation as outlined in Appendix C. 7006
Gender Mandatory if transaction type 3. 7005
Gender Must be a valid gender. 7001
Gender If transaction type 3, must pass SIR validation as outlined in Appendix C. 7006
Relationship type Mandatory if transaction type 4. 7005
Relationship type Must be a valid relationship type. 7001
Address line 1 Mandatory field. 7005
Address line 2 Not validated. n/a
Address line 3 Not validated. n/a
City Mandatory field. 7005
Province Mandatory if country CAN. 7005
Province If country CAN, must match code in Appendix A, province Codes. 7001
Country Mandatory field. 7005
Country Must be a valid country code. 7001
Postal code Mandatory if country CAN. 7005
Telephone n/a Discontinued.
Fax n/a Discontinued.
E-mail n/a Discontinued.
Old ben SIN n/a Discontinued.
Old ben given name n/a Discontinued.
Old ben surname n/a Discontinued.
Old ben birth date n/a Discontinued.
Language Mandatory if transaction type 3. 7005
Custodial parent name Mandatory if transaction type 3, and beneficiary is under 19 years of age. 7005
Lifetime contribution n/a Discontinued.
Reversal flag n/a Discontinued.
Original promoter transaction ID n/a Discontinued.
Filler Not validated. n/a

7.6 Record type 400 - Financial transaction

Financial transaction, record type 400, is used to report financial activity on an RESP contract.

Requirements: a contract must be registered before any financial transactions are reported and the beneficiary record must be processed by the CESP system. The beneficiary does not have to pass SIR validation in order to be considered processed.

Table 13: Record type 400 – Financial transaction
Data element name Type size Trxn posn Description Notes
Record type 9(3) 1 to 3 400 - financial transaction n/a
Transaction date 9(8) 4 to 11 The date on which the subscriber conducted the financial business with the promoter.
  • Transaction date must be on or after January 1, 2005 for an Additional CESG request
  • Effective January 1, 2008, grant or bond is not awarded on transactions with a transaction date earlier than 3 years when compared to the date sent in the header record (001) of the file they were submitted in.
Promoter transaction ID X(15) 12 to 26 Unique identifier assigned to each transaction by the promoter. Promoter transaction identifier must not be reused.
Promoter BN X(15) 27 to 41 n/a n/a
Transaction type 9(2) 42 to 43
  • 11 - contribution
  • 13 - EAP
  • 14 - PSE contribution withdrawal
  • 19 - transfer in
  • 21 - grant repayment
  • 22 - termination adjustment
  • 23 - transfer out
  • 24 - request for CLB payment
  • Type 12, 15, and 16 are unassigned
  • Type 25 is discontinued.
Specimen plan ID 9(10) 44 to 53 Specimen plan approval number. Assigned by the CRA.
Contract ID X(15) 54 to 68 n/a Must be an individual/sibling only contract if transaction type is 24.
Subscriber SIN 9(9) 69 to 77 n/a In case of agency subscriber, use 9 digit portion of agency BN.
Beneficiary SIN 9(9) 78 to 86 n/a n/a
Contribution amount 9(7)V99 87 to 95 The amount of the contribution. n/a
Grant requested 9(1) 96

0 - no

1 - yes

  • If the grant requested flag is not 1, no grant/bond is awarded on the transaction.
  • For transaction type 24 a value of 0 indicates a stop of CLB, 1 indicates a legitimate CLB request.
Institution code X(4) 97 to 100 Replaced by new field. Discontinued.
Academic year start date 9(8) 101 to 108 The date of the start of the current academic year of study. Default day to 01.
Academic year length 9(3) 109 to 111 Contiguous number of weeks the beneficiary is enrolled in post-secondary education in the current academic year. n/a
Contract term date X(8) 112 to 119 n/a Discontinued.
Contract term reason X(1) 120 n/a Discontinued.
Reversal flag 9(1) 121
  • 1 - normal
  • 2 - reversal
n/a
Original promoter transaction ID X(15) 122 to 136 Transaction ID of the transaction to be reversed, if reversal flag is 2. n/a
Original promoter BN X(15) 137 to 151 Promoter BN reported on the transaction to be reversed, if reversal flag is 2. n/a
Grant amount 9(7)V99 152 to 160 The grant amount being transferred, adjusted or repaid to the CESP. n/a
EAP grant amount 9(7)V99 161 to 169 The CESG and Additional CESG portion of an EAP. n/a
EAP amount 9(7)V99 170 to 178 The total amount of the EAP, including earnings, CESG, Additional CESG, CLB and BCTESG. n/a
PSE amount 9(7)V99 179 to 187 The contribution withdrawn while the beneficiary is enrolled in post-secondary education. n/a
Other specimen plan ID 9(10) 188 to 197 Used in transfer transactions (type 19 and 23) to report the other specimen plan ID used by the other transferring promoter. n/a
Other contract ID X(15) 198 to 212 Used in transfer transactions (type 19 and 23) to report the other contract ID used by the other transferring promoter. n/a
Repayment reason 9(2) 213 to 214
  • 01 - contribution withdrawal
  • 02 - AIP
  • 03 - contract termination
  • 04 - ineligible transfer
  • 05 - ineligible beneficiary replacement
  • 06 - payment to educational institution
  • 07 - revocation
  • 08 - ceases to meet sibling only condition
  • 09 - deceased
  • 10 - overcontribution withdrawal
  • 11 - other
  • 12 - non-resident
n/a
PSE program length 9(1) 215
  • Length of the degree or diploma program, in years.
  • 0 - less than 1 year
  • 1 - 1 year
  • 2 - 2 years
  • .
  • .
  • .
  • 8 - 8 years
  • 9 - 9 or more years
n/a
PSE program type 9(2) 216 to 217
  • 01 - university
  • 02 - community college or CEGEP
  • 03 - private trade, vocational or career college
  • 04 - other
n/a
Educational institution postal code X(10) 218 to 227 Postal code of the post-secondary educational institution attended by beneficiary. If the institution does not have a postal code or a zip code, the country name should be used. n/a
PSE program year 9(1) 228
  • Year of the current program of studies in which beneficiary is enrolled.
  • 1 - first year
  • 2 - second year
  • 3 - third year
  • .
  • .
  • .
  • 8 - eighth year
  • 9 - ninth or later year
n/a
PCG/spouse X(15) 229 to 243 May contain either the primary caregiver's SIN number, spouse’s SIN number or primary caregiver's BN.
  • For transaction type 11, if this field is populated then it will indicate a request for Additional CESG.
  • Mandatory for transaction type 24 and on the date of the transaction, the beneficiary is less than 18 years of age.
PCG/spouse given name X(20) 244 to 263 n/a n/a
PCG/spouse surname X(20) 264 to 283 n/a n/a
PCG/spouse type 9(1) 284
  • Indicates whether the PCG/spouse SIN or PCG BN is being used.
  • 1 - PCG/spouse SIN
  • 2 - PCG BN
This information is required for Additional CESG payment on a transaction type 11 that includes the PCG/spouse information, such as an Additional CESG transaction.
CLB amount 9(7)V99 285 to 293 CLB amount being adjusted transferred or repaid to the CESP. Used when transaction type = 19, 21, 22 or 23.
CLB EAP amount 9(7)V99 294 to 302 The CLB portion of an EAP. Used when transaction type = 13.
Alberta grant amount 9(7)V99 303 to 311 n/a Discontinued.
Alberta grant EAP amount 9(7)V99 312 to 320 n/a Discontinued.
Alberta grant province A(2) 321 to 322 n/a Discontinued.
SAGES amount 9(7)V99 323 to 331 n/a Discontinued
SAGES EAP amount 9(7)V99 332 to 340 n/a Discontinued
BCTESG amount 9(7)V99 341 to 349 The BCTESG amount being transferred, adjusted, or repaid to the CESP. Used when transaction type = 19, 21, 22 or 23.
BCTESG EAP amount 9(7)V99 350 to 358 The BCTESG portion of the EAP. Used when transaction type = 13.
Filler X(142) 359 to 500 n/a n/a

7.6.1 Record type 400 validation rules

The financial transaction record, record type 400, is validated and error codes are generated for failures as outlined in the following table and notes.

Table 14: Record type 400 validation rules
Field Rule Error code(s)
Record type Mandatory field. .ser file
Transaction date Mandatory field. 7005
Transaction date Valid date. 7000
Transaction date Transaction date must be on or before the current reporting period end date set by the CESP. 1004
Transaction date Transaction date must be on or after beneficiary birth date, if transaction type 11, 13, 14 and 24. 2027
Transaction date Transaction date must be on or after beneficiary birth date if transaction type is 21 and the CLB amount is greater than 0. 2027
Transaction date Transaction date must be before beneficiary's 21st first birthday if transaction type is 24. 2033
Transaction date Transaction date must be on or after January 1, 1998 if transaction type 11, 13, 14, 19, 21, 22 and 23. 7017
Transaction date Transaction date must be on or after January 1, 2004, if transaction type is 24. Transaction date must be on or after January 1, 2004 if transaction type is 19, 21, 22 or 23 and CLB amount is greater than 0. Transaction date must be on or after January 1, 2004 if transaction type is 13 and CLB EAP amount is greater than 0. 7034
Transaction date Transaction date must be on or after original transaction date if reversal flag = 2. 7018
Transaction date Transaction date must be on or after August 15, 2015 if transaction type is 19, 21, 22 or 23 and BCTESG amount is greater than 0. Transaction date must be on or after August 15, 2015 if transaction type is 13 and BCTESG EAP amount is greater than $0. 7041
Promoter transaction ID Mandatory field. .ser
Promoter transaction ID Promoter Transaction Identifier must be unique. .ser
Promoter transaction ID Original transaction and its reversal were found in the same processing period. 7021
Promoter BN Mandatory field. .ser
Promoter BN Must be 15 characters. .ser
Promoter BN Promoter BN must exist in the CESP system. 7001
Transaction type Mandatory field. 7005
Transaction type The transaction type must be valid for the record type. 7002
Transaction type Sender must be authorized to submit transactions with CESG content if transaction type is 11 or 14. 1011
Transaction type Sender must be authorized to submit transactions with CLB content if transaction type is 24. 1012
Transaction type Sender must be authorized to submit transactions with Alberta grant content if transaction type is 25. 1013
Specimen plan ID Mandatory field. 7005
Specimen plan ID Must be numeric. 7001
Specimen plan ID Specimen plan must exist in the CESP system. 1005
Specimen plan ID The promoter must be associated with the specimen plan identified in the specimen plan ID field. 7008
Specimen plan ID The sender BN specified in the header record must be authorised to send data for the specimen plan. 7030
Specimen plan ID The beneficiary must be associated with the specimen identified in the specimen plan ID field if transaction type is 11, 13, 14 or 24. The beneficiary must be associated with the specimen identified in the specimen plan ID field if transaction type is 21 and the CLB amount is greater than 0. 7031
Specimen plan ID Specimen plan must be approved for CESG if transaction type is 11 or 14. Specimen plan must be approved for CESG if transaction type is 13 and EAP grant amount is greater than 0. The specimen plan must be approved for CESG if transaction type is 19, 21, 22, 23 and grant amount is greater than 0. 1007
Specimen plan ID Specimen plan must be approved for CLB if transaction type is 13 and EAP CLB amount is greater than 0. The specimen plan must be approved for CLB if transaction type is 19, 21, 22, 23 and CLB amount is greater than 0. 1008
Specimen plan ID Specimen plan must be approved for CLB if transaction type is 24. 1008
Specimen plan ID Specimen plan must be approved for BCTESG if transaction type is 13 and BCTESG EAP amount is greater than 0. The specimen plan must be approved for BCTESG if transaction type is 19, 21, 22 or 23 and BCTESG amount is greater than 0. 1018
Contract ID Mandatory Field. 7005
Contract ID Must be an individual/sibling only contract if transaction type = 24. 1010
Beneficiary SIN Mandatory if transaction type is 11, 13, 14, 24. Mandatory if transaction type is 21 and CLB amount is greater than 0. 7005
Beneficiary SIN The beneficiary SIN must exist in the CESP system. 7001
Beneficiary SIN Beneficiary birth date must be on or after January 1, 2004 if transaction type is 24. 7037
Contribution amount Mandatory if transaction type is 11. 7005
Contribution amount Numerals only. 7001
Contribution amount Value must be 0.01 to 9,999,999.99 3006
Grant requested Mandatory if transaction type 11 or 24. 7005
Grant requested If transaction type 11 or 24 then value must be 0 or 1. 7001
Institution code n/a Discontinued.
Academic year start date Mandatory if transaction type 13 or 14. 7005
Academic year start date Valid Date. 7000
Academic year length Mandatory if transaction type 13 or 14. 7005
Academic year length Numerals only. 7001
Contract term date n/a Discontinued.
Contract term reason n/a Discontinued.
Reversal flag Mandatory field. 7005
Reversal flag Must be 1 or 2. 7001
Original promoter transaction ID Mandatory if reversal flag is 2. 7005
Original promoter transaction ID Cannot process if original transaction is in error. 7020
Original promoter transaction ID Must exist in the CESP system for field original promoter BN. 7022
Original promoter transaction ID Original transaction must not have been reversed. 7023
Original promoter BN Mandatory if reversal flag = 2 7005
Original promoter BN Original Promoter BN must exist in CESP system. 7001
Grant amount Mandatory if transaction type is 19, 21, 22 or 23. 7005
Grant amount Numerals only. 7001
Grant amount Dollar value must be 0.00 to 9,999,999.99 3099
Grant amount Sender must be authorized to submit transactions with CESG content if transaction type is 19, 21, 22, 23 grant amount > 0. 1011
EAP grant amount Mandatory if the transaction type is 13. 7005
EAP grant amount Numerals only. 7001
EAP grant amount Dollar value must be 0.00 to 9,999,999.99 3099
EAP grant amount Sender must be authorized to submit transactions with CESG content if transaction type is 13 and EAP grant amount > 0. 1011
Total EAP amount Mandatory if the transaction type is 13. 7005
Total EAP amount Numerals only. 7001
Total EAP amount Value must be 0.01 to 9,999,999.99 3006
PSE amount Mandatory if the transaction type is 14. 7005
PSE amount Numerals only. 7001
PSE amount Value must be 0.01 to 9,999,999.99 3006
Other specimen plan ID Mandatory if transaction type 19 or 23. 7005
Other specimen plan ID Must be numeric. 7001
Other specimen plan ID Must exist in CESP system if transaction type 19 or 23. 1005
Other contract ID Mandatory if transaction type 19 or 23. 7005
Repayment reason Mandatory if transaction type 21. 7005
PSE program length Must be numeric. 7001
PSE program length Mandatory if transaction type 13 or 14. 7005
PSE program type Mandatory if transaction type 13 or 14. 7005
PSE program type Must be numeric. 7001
PSE program type Must be a valid program type. 7001
Educational institution postal code Mandatory if transaction type 13 or 14. 7005
PSE program year Must be numeric. 7001
PSE program year Mandatory if transaction type 13 or 14. 7005
PSE program year Must be a valid program year. 7001
PCG/spouse 9 digit SIN must be numerically valid, if the transaction type is 24 and PCG/spouse type = 1 PCG/spouse SIN. 7033
PCG/spouse First 9 digits must be numerically valid if transaction type is 24 and PCG/spouse type is 2 - PCG BN. 7033
PCG/spouse Mandatory if transaction type 24 and on the date of the transaction, the beneficiary is less than 18 years of age. 7005
PCG/spouse Sender must be authorized to submit transactions with Additional CESG content if transaction type is 11 and PCG/spouse is present. 1014
PCG/spouse given name Mandatory if PCG/spouse is present, PCG type = 1 and the transaction type is 24. 7005
PCG/spouse given name Sender must be authorized to submit transactions with Additional CESG content if transaction type is 11 and PCG/spouse given name is present. 1014
PCG/spouse surname Mandatory if PCG/spouse is present, PCG/spouse type = 1 and transaction type is 24. 7005
PCG/spouse surname Sender must be authorized to submit transactions with Additional CESG content if transaction type is 11 and PCG/spouse surname is present. 1014
PCG/spouse type Mandatory if PCG/spouse is present and transaction type = 24 7005
PCG/spouse type Value must be either 1 or 2 if transaction type is 24. 7001
PCG/spouse type Sender must be authorized to submit transactions with Additional CESG content if transaction type is 11 and PCG/spouse type is present 1014
CLB amount Numerals only. 7001
CLB amount Must be 0 or blank if transaction type is 21 and repayment reason = 1. 7036
CLB amount If an amount is entered, dollar value must be 0.00 to 20,000 if transaction type = 19 or 23. 3099
CLB amount If an amount is entered, dollar value must be 0.00 to 5,000.00 if transaction type = 21 3099
CLB amount Beneficiary must have a CLB account if transaction type is 21 and amount is greater than 0. 7032
CLB amount If an amount is entered, dollar value must be 0.00 to 20,000 if transaction type = 22. 3099
CLB amount Sender must be authorized to submit transactions with CLB content if transaction type is 19, 21, 22, 23 and CLB amount > 0. 1012
CLB EAP amount Numerals only. 7001
CLB EAP amount If an amount is entered, dollar value must be 0.00 to 5,000.00 if transaction type = 13. 3099
CLB EAP amount Beneficiary must have a CLB account if transaction type = 13 and amount is greater than 0. 7032
CLB EAP amount Sender must be authorized to submit transactions with CLB content if transaction type is 13 and CLB EAP amount > 0. 1012
Alberta grant amount n/a Discontinued
Alberta grant EAP amount n/a Discontinued
Alberta grant province n/a Discontinued
SAGES amount n/a Discontinued
SAGES amount n/a Discontinued
SAGES amount n/a Discontinued
SAGES EAP amount n/a Discontinued
SAGES EAP amount n/a Discontinued
SAGES EAP amount n/a Discontinued
BCTESG amount Numerals only. 7001
BCTESG amount If an amount is entered, dollar value must be 0.00 to 9,999,999.99 3099
BCTESG amount Sender must be authorized to submit transactions with BCTESG content if transaction type is 19, 21, 22, 23 and BCTESG amount > 0. 1017
BCTESG amount Must be 0 or blank if transaction type is 21 and repayment reason = 1. 7036
BCTESG EAP amount Numerals only. 7001
BCTESG EAP amount Dollar value must be 0.00 to 9,999,999.99 3099
BCTESG EAP amount Sender must be authorized to submit transactions with BCTESG content if transaction type is 13 and BCTESG EAP amount > 0. 1017
Filler Not validated. n/a

7.7 Record type 411 – BCTESG transaction

BCTESG transaction, record type 411, is used to report BCTESG activity on a RESP contract. There are 2 BCTESG transactions types reported: 40 – BCTESG request and 41 - Cancel BCTESG request.

Requirements: a contract must be registered before any financial transactions are reported and the beneficiary record must be processed by the CESP system. The beneficiary does not have to pass SIR validation in order to be considered processed.  

7.7.1 Transaction type 40 - BCTESG request

Purpose: the 411-40 transaction is used by promoters to request BCTESG.

Table 15: Transaction type 40 – BCTESG request
Data element name Type size Trxn posn Description Notes
Record type 9(3) 1 to 3 411 – BCTESG transaction n/a
Transaction date 9(8) 4 to 11 The BCTESG application form date Transaction date must be on or after August 15, 2015.
Promoter transaction ID X(15) 12 to 26 Unique identifier assigned to each transaction by the promoter. Promoter transaction identifier must not be reused.
Promoter BN X(15) 27 to 41 Business number n/a
Transaction type 9(2) 42 to 43 40 – BCTESG request n/a
Specimen plan ID 9(10) 44 to 53 Specimen plan approval number. Assigned by the CRA.
Contract ID X(15) 54 to 68 Promoter’s contract number associated to a beneficiary Must be an individual/sibling only contract.
Beneficiary SIN 9(9) 69 to 77 n/a n/a
Filler X(423) 78 to 500 n/a n/a
7.7.1.1 Transaction 411-40 validation rules

The BCTESG request transaction record is validated and error codes are generated for failures as outlined in the following table and notes.

Table 16: Transaction 411-40 validation rules
Field Rule Error code(s)
Record type Mandatory field. .ser file
Transaction date Mandatory field. 7005
Transaction date Valid date. 7000
Transaction date Transaction date must be on or before the current reporting period end date set by the CESP. 1004
Transaction date Transaction date must be on or after August 15, 2015. 7041
Transaction date Transaction date must be on or after beneficiary birth date. 2027
Promoter transaction ID Mandatory field. .ser file
Promoter transaction ID Promoter transaction identifier must be unique. .ser file
Promoter BN Mandatory field. .ser file
Promoter BN Must be 15 characters. .ser file
Promoter BN Promoter BN must exist in the CESP system. 7001
Transaction type Mandatory field. 7005
Transaction type The transaction type must be valid for the record type. 7002
Transaction type Sender must be authorized to submit transactions with BCTESG content. 1017
Specimen plan ID Mandatory field. 7005
Specimen plan ID Must be numeric. 7001
Specimen plan ID Specimen plan must exist in the CESP system. 1005
Specimen plan ID The promoter must be associated with the specimen plan identified in the specimen plan ID field. 7008
Specimen plan ID The sender BN specified in the header record must be authorized to send data for the specimen plan. 7030
Specimen plan ID The beneficiary must be associated with the specimen plan identified in the specimen plan ID field. 7031
Specimen plan ID Specimen plan must be approved for BCTESG. 1018
Contract ID Mandatory field. 7005
Contract ID Must be an individual/sibling only contract. 1010
Beneficiary SIN Mandatory field. 7005
Beneficiary SIN Must exist in CESP system. 7001
Beneficiary SIN Beneficiary date of birth must be on or after January 1, 2006. 7042

7.7.2 Transaction type 41 – Cancel BCTESG request

Purpose: the 411-41 transaction is used by promoters to cancel a BCTESG request.

Table 17: Transaction type 41 – Cancel BCTESG request
Data element name Type size Trxn posn Description Notes
Record type 9(3) 1 to 3 411 – BCTESG transaction n/a
Transaction date 9(8) 4 to 11 Date the subscriber requested the cancellation of BCTESG via the promoter. Transaction date must be on or after August 15, 2015.
Promoter transaction ID X(15) 12 to 26 Unique identifier assigned to each transaction by the promoter. Promoter transaction identifier must not be reused.
Promoter BN X(15) 27 to 41 Business number n/a
Transaction type 9(2) 42 to 43 41 – cancel BCTESG request n/a
Specimen plan ID 9(10) 44 to 53 Specimen plan approval number. Assigned by the CRA.
Contract ID X(15) 54 to 68 Promoter’s contract number associated to a beneficiary n/a
Original promoter transaction ID X(15) 69 to 83 Unique identifier of the BCTESG request being cancelled. n/a
Original promoter BN X(15) 84 to 98 Promoter BN of the BCTESG request being cancelled. n/a
Filler X(402) 99 to 500 n/a n/a
7.7.2.1 Transaction 411-41 validation rules

The cancel BCTESG request transaction record is validated and error codes are generated for failures as outlined in the following table and notes.

Table 18: Transaction 411-41 validation rules
Field Rule Error code(s)
Record type Mandatory field. .ser file
Transaction date Mandatory field. 7005
Transaction date Valid date. 7000
Transaction date Transaction date must be on or before the current reporting period end date set by the CESP. 1004
Transaction date Transaction date must be on or after August 15, 2015. 7041
Transaction date Transaction date must be on or after beneficiary birth date. 2027
Promoter transaction ID Mandatory field. .ser file
Promoter transaction ID Promoter transaction identifier must be unique. .ser file
Promoter transaction ID Original transaction and its reversal were found in the same processing period. 7021
Promoter BN Mandatory field. .ser file
Promoter BN Must be 15 characters. .ser file
Promoter BN Promoter BN must exist in the CESP system. 7001
Transaction type Mandatory field. 7005
Transaction type The transaction type must be valid for the record type. 7002
Transaction type Sender must be authorized to submit transactions with BCTESG content. 1017
Specimen plan ID Mandatory field. 7005
Specimen plan ID Must be numeric. 7001
Specimen plan ID Specimen plan must exist in the CESP system. 1005
Specimen plan ID The promoter must be associated with the specimen plan identified in the specimen plan ID field. 7008
Specimen plan ID The sender BN specified in the header record must be authorized to send data for the specimen plan. 7030
Specimen plan ID The beneficiary must be associated with the specimen plan identified in the specimen plan ID field. 7031
Specimen plan ID Specimen plan must be approved for BCTESG. 1018
Contract ID Mandatory field. 7005
Original promoter transaction ID Mandatory field. 7005
Original promoter transaction ID Cannot process if original transaction is in error. 7020
Original promoter transaction ID Must exist in the CESP system for field original promoter BN. 7022
Original promoter transaction ID Original transaction must not have been reversed. 7023
Original promoter BN Mandatory field. 7005
Original promoter BN Original promoter BN must exist in CESP system. 7001

7.8 Record type 511 – PCG/spouse information transaction

Purpose: the 511-12 transaction can be used to provide PCG/spouse information not reported on the original 400-11 transaction, or to replace inaccurate PCG/spouse information reported on the original 400-11 transaction.

Table 19: Record type 511 – PCG/spouse information transaction
Data element name Type size Trxn posn Description Notes
Record type 9(3) 1 to 3 511 n/a
Transaction date 9(8) 4 to 11 Date Additional CESG was requested. This date must be on or after the 400-11 transaction date.
Promoter transaction ID X(15) 12 to 26 Unique identifier assigned to each transaction by the promoter. Promoter transaction identifier must not be reused to submit corrections.
Promoter BN X(15) 27 to 41 Business number n/a
Transaction type 9(2) 42 to 43 12-PCG/spouse information transaction n/a
Specimen plan ID 9(10) 44 to 53 Specimen plan approval number. Assigned by the CRA.
Contract ID X(15) 54 to 68 n/a n/a
Contribution promoter transaction ID X(15) 69 to 83 Unique identifier of the contribution transaction to be reprocessed. n/a
Contribution promoter BN X(15) 84 to 98 Promoter BN of the contribution transaction to be reprocessed. n/a
PCG/spouse X(15) 99 to 113 May contain either the primary caregiver's SIN, spouse's SIN or primary caregiver's BN. Information submitted in 1 of the 4 PCG/spouse fields must be different from information submitted in the 400-11 transaction being amended.
PCG/spouse given name X(20) 114 to 133 If the name of an agency is long, start filling the given name field and finish entering the agency name in the surname field. If PCG is agency, put agency name.
PCG/spouse surname X(20) 134 to 153 n/a If PCG is agency, use agency name.
PCG/spouse type 9(1) 154
  • Indicates whether the PCG/spouse SIN or PCG BN is being used.
  • 1- PCG/spouse SIN
  • 2- PCG BN
n/a
Filler X(346) 155 to 500 n/a n/a

7.8.1 Record type 511 validation rules

The PCG/spouse transaction information record, record type 511, is validated and error codes are generated for failures as outlined in the following table and notes.

Table 20: Record type 511 validation rules
Field Rule Error code(s)
Record type Mandatory field. .ser file
Transaction date Mandatory field. 7005
Transaction date Valid date. 7000
Transaction date Transaction date must be on or before the current reporting period end date set by the CESP. 1004
Transaction date Transaction date must be on or after beneficiary birth date. 2027
Transaction date Transaction date must be on or after January 1, 2005. 7035
Transaction date Transaction date is earlier than contribution transaction date. 7039
Transaction date A more recent PCG/spouse information transaction is already associated to the contribution. 5032
Promoter transaction ID Mandatory field. .ser file
Promoter transaction ID Promoter transaction identifier must be unique. .ser file
Promoter BN Mandatory field. .ser file
Promoter BN Must be 15 characters. .ser file
Promoter BN Promoter BN must be in the CESG system. 7001
Transaction type Mandatory field. 7005
Transaction type The transaction type must be valid for the record type. 7002
Transaction type Sender must be authorized to submit transactions with Additional CESG content if transaction type is 12. 1014
Specimen plan ID Mandatory field. 7005
Specimen plan ID Must be numeric. 7001
Specimen plan ID Specimen plan must exist in the CESG system. 1005
Specimen plan ID The promoter must be associated with the specimen plan identified in the specimen plan ID field. 7008
Specimen plan ID The sender BN specified in the header record must be authorized to send data for the specimen plan. 7030
Specimen plan ID The beneficiary must be associated with the specimen plan identified in the specimen plan ID field. 7031
Specimen plan ID Specimen plan must be approved for CESG. 1007
Specimen plan ID Contribution transaction date is later than specimen plan eligibility end date. 5031
Contract ID Mandatory field. 7005
Contract ID Must be individual/sibling only. 1010
Contribution promoter transaction ID Mandatory field. 7005
Contribution promoter transaction ID Contribution transaction has been reversed - invalid status. 5025
Contribution promoter transaction ID Error in contribution transaction, current transaction cannot be processed. 5026
Contribution promoter transaction ID Unable to locate contribution transaction. 5027
Contribution promoter transaction ID Date of contribution transaction must be later than December 31, 2004. 5028
Contribution promoter transaction ID Contribution transaction did not request grant. 5030
Contribution promoter transaction ID Beneficiary on contribution transaction is invalid. 7006
Contribution promoter transaction ID Late contribution transaction. 5033
Contribution promoter BN Mandatory field. 7005
Contribution promoter BN Contribution promoter BN must exist in CESG system. 7001
PCG/spouse Mandatory field. 7005
PCG/spouse First 9 digits must be numerically valid, if PCG/spouse type = 1 or PCG type = 2. 7033
PCG/spouse PCG/spouse information is same as in contribution transaction received in the same period - no processing performed. 5029
PCG/spouse given name Mandatory if PCG/spouse type = 1. 7005
PCG/spouse surname Mandatory if PCG/spouse type = 1. 7005
PCG/spouse type Mandatory field. 7005
PCG/spouse type Value must be either 1 or 2. 7001
Filler Not validated. n/a

7.9 Record type 700 – Summary report transaction

Record type 700 is used to provide the CESP with the total assets in each RESP with a promoter. This record type is reported in its own file (see section 2.6), which has the same structure as the transaction file.

The summary report consists of:

  • a header record – record type 001
  • a series of summary reporting records - record type 700
  • a trailer record – record type 999

Purpose: as part of its mandate, the CESP must report on its success in meeting its goals to various organisations within the federal government. Since the primary goal of the CESP is to encourage Canadians to save for their children’s post-secondary education, the growth in the total assets available to those beneficiaries for post-secondary education is a good measure of the success of the CESP.

Table 21: Record type 700 – Summary report transaction
Data element name Type size Trxn posn Description Notes
Record type 9(3) 1 to 3 700 - summary report transaction n/a
Transaction date 9(8) 4 to 11 Evaluation date (last business day of the month). n/a
Promoter BN X(15) 12 to 26 n/a n/a
Specimen plan ID 9(10) 27 to 36 Specimen plan approval number. Assigned by the CRA.
Contract ID X(15) 37 to 51 Contract information n/a
Total RESP assets 9(7)V99 52 to 60 Market value of the RESP as of the last business day of the month. Includes contributions, grant/bond and earnings.
Filler X(440) 61 to 500 n/a n/a

7.9.1 Record type 700 validation rules

There are no validation rules for this record type.

7.10 Record type 800 - Transaction error report

Transaction error reports advise the sender that an error is present in a transaction record or that a record or file is rejected and must be corrected and resubmitted. If an error is detected, a type 800 transaction error record is created and added to the transaction error report.

The error report consists of:

  • a header record - record type 001
  • a series of error report records - record type 800
  • a trailer record- record type 999

Purpose: Report transactions containing errors identified during processing, which allows the originators to correct and resubmit. Transaction errors are reported in report files referencing the promoter transaction identifier, along with the name of the field in error. The error report file is only sent by the CESP to senders. The file is always sent back to a sender whether or not there are errors.

The report records data format errors and business rule errors.

Requirements: based on CESP transaction records received.

Table 22: Record type 800 – Transaction error report
Data element name Type size Trxn posn Description Notes
Record type 9(3) 1 to 3 800 - error report n/a
Transaction date 9(8) 4 to 11 n/a n/a
Promoter transaction ID X(15) 12 to 26 Mandatory for transaction error, not for file error. n/a
Promoter BN X(15) 27 to 41 Mandatory for transaction error, not for file error. n/a
Field name X(30) 42 to 71 Any valid field name (mandatory for data errors, optional for business errors). n/a
Error code 9(4) 72 to 75 Refer to Appendix A, error codes n/a
SIN X(1) 76
  • Blank if SIN is not numerically valid.
  • Flag indicating results of SIR validation.
  • 0 - failed SIR validation
  • 1 - passed SIR validation
7006 errors on beneficiary transactions
Given name X(1) 77
  • Blank if SIN is not numerically valid.
  • Flag indicating results of SIR validation.
  • 0 - failed SIR validation
  • 1 - passed SIR validation
7006 errors on beneficiary transactions
Surname X(1) 78
  • Blank if SIN is not numerically valid.
  • Flag indicating results of SIR validation.
  • 0 - failed SIR validation
  • 1 - passed SIR validation
7006 errors on beneficiary transactions
Birth date X(1) 79
  • Blank if SIN is not numerically valid.
  • Flag indicating results of SIR validation.
  • 0 - failed SIR validation
  • 1 - exact match
  • 2 - failed - exact year and month matched.
  • 3 - failed - exact year and day matched.
7006 errors on beneficiary transactions.
Gender X(1) 80
  • Blank if SIN is not numerically valid.
  • Flag indicating results of SIR validation.
  • 0 - failed SIR validation
  • 1 - passed SIR validation
7006 errors on beneficiary transactions
Filler X(420) 81 to 500 n/a n/a

7.10.1 Record type 800 validation rules

Because record type 800 is generated by the CESP system, validation rules are not applicable.

7.11 Record type 850 - Severe error report

Severe error reports advise the sender that a severe error is present in a transaction, that the record is rejected and must be corrected and resubmitted.

The severe error report consists of:

  • a header record - record type 001
  • a series of error report records - record type 850
  • a trailer record - record type 999

Purpose: Transactions containing severe errors that cannot have regular error messages applied to them are reported in the severe error report. These errors include the inability to identify the incoming record type or duplicate promoter transaction identifiers. This file reports an error type and contains the rest of the data record.

Requirements: based on CESP transaction records received.

Table 23: Record type 850 – Severe error report
Data element name Type size Trxn posn Description Notes
Record type 9(3) 1 to 3 850 - severe error report n/a
Error type 9(4) 4 to 7
  • 1 - Duplicate promoter transaction identifier
  • 2 - Invalid or discontinued record type
  • 3 - Promoter transaction ID not provided
  • 4 - Promoter BN not 15 characters
n/a
Transaction data X(493) 8 to 500 Original record as received by the CESP. Also filler

7.11.1 Record type 850 validation rules

Because record type 850 is generated by the CESP system, validation rules are not applicable.

7.12 Record types 900 and 911 – Transaction processing report

Each transaction processed by the CESP system is acknowledged by either a type 900 record a record type 911 for BCTESG transactions in the transaction processing report.

The transaction processing report consists of:

  • a header record - record type 001
  • 1 or more sub-header records - record type 002
  • 1 or more file processed records - record type 003
  • a series of transaction processing report records - record type 900
  • a series of BCTESG transaction processing report records – record type 911
  • a trailer record - record type 999

Purpose: to create a list of transaction details for each sender.

Requirements: none.

Table 24: Record type 900 – Transaction processing report
Data element name Type size Trxn posn   Description Notes
Record type 9(3) 1 to 3 900 - financial transaction n/a
AC amount 9(9)V99 4 to 14 n/a Discontinued.
UC amount 9(9)V99 15 to 25 n/a Discontinued.
Grant amount 9(9)V99 26 to 36 Gives the amount by which the CESG balance changed due to successful processing of a financial transaction. 0 filled for no grant change or non-financial transaction.
Promoter BN X(15) 37 to 51 BN of the current promoter of the specimen plan ID n/a
Promoter transaction ID X(15) 52 to 66 n/a ID number assigned by CESP if transaction origin = 2.
Refusal reason X(1) 67
  • Indicates why full grant or CLB amount not paid.
  • 1- annual limit exceeded
  • 2- lifetime contribution limit exceeded
  • 3- age of beneficiary
  • 4- PCG/spouse or beneficiary information not matched with CRA information
  • 5- specimen plan not eligible
  • 6- transaction requested no grant
  • 7- failed 16/17 year rule
  • 8- CLB will not be paid for this benefit year
  • 9- other
  • A - specimen plan not approved for CLB
  • B - invalid beneficiary
  • C - request not designated to attract CLB for the beneficiary
  • D - late transaction
  • E - lifetime limit exceeded
  • J - contract is not an individual/sibling only contract
  • L - PCG/spouse SIN or agency BN not matched by the CRA
  • M - PCG custody not confirmed by the CRA
  • N - SIN has been flagged by SIR
  • P - spouse not in an active relationship
  • If full grant, CLB is paid, the refusal reason field is 0.
  • Blank if not a contribution, or a CLB request.
  • Effective Jan. 1, 2008, CESG contribution transactions, or CLB requests with a transaction date earlier than 3 years when compared to the date sent in the header record (001) of the file they were submitted in will receive a refusal reason of D – late transaction.
Transaction origin X(1) 68
  • Indicates origin of transaction.
  • 0 - promoter initiated
  • 1 - re-adjudication
  • 2 - CESG initiated
  • 4 - re-adjudication due to CRA reassessment (Additional CESG and CLB)
  • 5 - linked SIN
  • 6 - CLB installment for new benefit year
  • 7 - payment of CLB entitlement
  • 8 - re-adjudication due to PCG/spouse information
  • 9 - inactive CLB request
  • Occasions may arise where CESP will create a transaction for processing and report the results back to a promoter.
  • This will be a very rare case. In the event that it does happen, the CESP will indicate the type of transaction in the transaction origin field as "CESP initiated".
  • Other values that this flag can assume are "Promoter initiated" for transactions received from promoters, "Re-adjudication" where the CESP re-adjudicates a transaction and must report the results to the promoter.
Original promoter BN X(15) 69 to 83 Promoter BN under which the promoter transaction ID was reported. n/a
Payment requisitioned X(1) 84
  • Indicates whether payment amount is affected.
  • 1 - yes
  • 2 - no
n/a
Specimen plan ID 9(10) 85 to 94 Specimen plan approval number. Assigned by the CRA.
Contract ID X(15) 95 to 109 n/a Filled only when transaction origin = 2.
CESP transaction date 9(8) 110 to 117 Date on which the CESP initiated a transaction (transaction origin = 2, 6 or 7). 0 filled if transaction origin = 0, 1, 3, 4, 5, 8 or 9.
SIN 9(9) 118 to 126 Beneficiary SIN 0 filled if transaction origin = 0, 1, 3, 4, 6, 7, 8 or 9.
CLB amount 9(7)V99 127 to 135 Gives the amount by which the CLB balance changed due to successful processing of a financial transaction. n/a
Additional CESG amount 9(7)V99 136 to 144 Amount of Additional CESG paid on this transaction. n/a
CLB fee 9(7)V99 145 to 153 n/a n/a
Alberta grant amount 9(7)V99 154 to 162 n/a Discontinued.
Alberta grant province A(2) 163 to 164 n/a Discontinued.
Assisted contribution amount 9(7)V99 165 to 173 n/a n/a
Additional CESG refusal reason X(1) 174
  • Indicates why full Additional CESG amount not paid on a contribution.
  • 1 - annual limit exceeded
  • 2 - lifetime contribution limit exceeded
  • 3 - age of beneficiary
  • 4 - PCG, spouse or beneficiary information not matched with CRA information
  • 5 - specimen plan not eligible
  • 6 - transaction requested no grant
  • 7 - failed 16/17 year rule
  • 9 - other
  • B - invalid beneficiary
  • D - late transaction
  • E - lifetime limit exceeded
  • F - anti-churning rule violation
  • G - contribution transaction date earlier than January 1, 2005
  • H - PCG/spouse information is missing
  • I - PCG/spouse SIN is not numerically valid
  • J - contract is not an individual/sibling only contract
  • L - PCG/spouse SIN or agency BN not matched by the CRA
  • M - PCG custody not confirmed by the CRA
  • N - SIN has been flagged by SIR
  • P - spouse not in an active relationship
  • If full Additional CESG is paid, the refusal reason code is 0.
  • Effective Jan. 1, 2008, Additional CESG contribution transactions with a transaction date earlier than 3 years when compared to the date sent in the header record (001) of the file they were submitted in will receive a refusal reason of D - late transaction.
Filler X(326) 175 to 500 n/a n/a
Table 25: Record type 911 - Transaction processing report
Data element name Type size Trxn posn Description Notes
Record type 9(3) 1 to 3 911 – BCTESG transaction n/a
BCTESG amount 9(9)V99 4 to 14 Gives the amount by which the BCTESG balance changed due to successful processing of a financial transaction. n/a
Promoter BN X(15) 15 to 29 BN of the current promoter of the specimen plan ID. n/a
Promoter transaction ID X(15) 30 to 44 n/a ID number assigned by CESP if transaction origin = 2.
Refusal reason X(1) 45
  • Indicates why full grant amount not paid.
  • 3 – age of beneficiary
  • 5 – specimen plan not eligible
  • D – late transaction.
  • E – lifetime limit exceeded.
  • N – SIN has been flagged by SIR
If full BCTESG amount is paid, the refusal reason field is 0.
Transaction origin X(1) 46
  • Indicates origin of transaction.
  • 0 – promoter initiated
  • 2 – CESP initiated
  • 5 – linked SIN
  • Occasions may arise where CESP will create a transaction for processing and report the results back to a promoter.
  • This will be a very rare case. In the event that it does happen, the CESP will indicate the type of transaction in the transaction origin field as "CESP initiated".
  • Other values that this flag can assume are "Promoter initiated" for transactions received from promoters, "Re-adjudication" where the CESP re-adjudicates a transaction and must report the results to the promoter.
Original promoter BN X(15) 47 to 61 Promoter BN under which the promoter transaction ID was reported. n/a
Specimen plan ID 9(10) 62 to 71 Specimen plan approval number. Assigned by the CRA.
Contract ID X(15) 72 to 86 n/a Filled only when transaction origin = 2.
CESP transaction date 9(8) 87 to 94 Date on which the CESP initiated a transaction (transaction origin = 2). 0 filled if transaction origin = 0 or 5.
SIN 9(9) 95 to 103 Beneficiary SIN 0 filled if transaction origin = 0 or 5.
Payment requisitioned X(1) 104
  • Indicates whether payment amount is affected.
  • 1 – yes
  • 2 – no
n/a
Filler X(396) 105 to 500 n/a n/a

7.12.1 Record type 900 and 911 validation rules

Because record types 900 and 911 are generated by the CESP system, validation rules are not applicable.

7.13 Record type 920 – SIN validation report

The SIN validation report consists of:

  • a header record – record type 001
  • a series of SIN validation report records – record type 920
  • a trailer record – record type 999

Purpose: the record type 920 reports SIN validation activity to the sender.

Requirements: none.

Table 26: Record type 920 – SIN validation report
Data element name Type size Trxn posn Description Notes
Record type 9(3) 1 to 3 920 - SIN validation report n/a
Promoter BN X(15) 4 to 18 BN of the current promoter of the specimen plan ID. n/a
Specimen plan ID 9(10) 19 to 28 Specimen plan approval number. Assigned by the CRA.
Transaction date 9(8) 29 to 36 Date the record was written to this file. n/a
Beneficiary SIN 9(9) 37 to 45 Beneficiary SIN n/a
SIN issue X(1) 46
  • 1 - SIN is not useable
  • 2 - SIN is useable
  • 3 - linked SIN
n/a

7.13.1 Record type 920 validation rules

Because record type 920 is generated by the CESP system, validation rules are not applicable.

7.14 Record type 950 - Contract registration report

Contract registration record, type 950, reports contracts which have submitted all information elements required to register a contract as of the current reporting period as well as contracts that have not yet met registration requirements during that specific reporting period. Please note that this report does not denote contracts as registered but rather contracts that are eligible to be registered by the CRA. The CRA will forward documentation to the promoter directly when informing them when contracts have been registered.

The contract registration report consists of:

  • a header record – record type 001
  • a series of contract registration report records – record type 950
  • a trailer record – record type 999

Purpose: the record type 950 reports to the sender that a contract is registered.

Requirements: none.

Table 27: Record type 950 – Contract registration report
Data element name Type size Trxn posn Description Notes
Record type 9(3) 1 to 3 950 - contract registration report n/a
Promoter BN X(15) 4 to 18 n/a n/a
Specimen plan ID 9(10) 19 to 28 Specimen plan approval number. Assigned by the CRA.
Contract ID X(15) 29 to 43 n/a n/a
Processing date 9(8) 44 to 51 n/a n/a
Registration status 9(1) 52
  • 1- registerable
  • 2- not registerable
n/a
Reason for registration failure 9(1) 53
  • Gives the reason for the failure to register a contract.
  • 1- missing subscriber information
  • 2- missing beneficiary information
  • 3- missing both subscriber and beneficiary information
  • 4- rejected contract transaction
n/a
Filler X(447) 54 to 500 n/a n/a

7.14.1 Record type 950 validation rules

Because record type 950 is generated by the CESP system, validation rules are not applicable.

7.15 Record type 960 – Referral report

Referral record, type 960, reports referral transactions to RESP promoters participating in the Education Savings Referral Service that are received by the CESP from Service Ontario.

The referral report consists of:

  • a header record – record type 001
  • a series of referral report records – record type 960
  • a trailer record – record type 999

Purpose: the record type 960 reports a referral transaction to the RESP promoter.

Requirements: none.

Table 28: Record type 960 – Referral report
Data element name Type size Trxn posn Description Notes
Record type 9(3) 1 to 3 960 – referral report n/a
Received date 9(8) 4 to 11 Date the consent was provided by the parent on the Service Ontario website. n/a
Parent surname X(50) 12 to 61 n/a n/a
Parent given name X(100) 62 to 161 n/a n/a
Postal code, zip code or equivalent X(10) 162 to 171 n/a n/a
Country X(20) 172 to 191 n/a n/a
Telephone number primary 9(11) 192 to 202 n/a May be 0 filled if preferred method of contact is email.
Telephone number primary teletypewriter (TTY) 9(1) 203
  • 0 – no
  • 1 – yes
n/a
Extension primary 9(8) 204 to 211 n/a May be 0 filled.
Telephone number secondary 9(11) 212 to 222 n/a May be 0 filled.
Telephone number secondary teletypewriter (TTY) 9(1) 223
  • 0 – no
  • 1 – yes
May be 0 filled.
Extension secondary 9(8) 224 to 231 n/a n/a
Email address X(100) 232 to 331 n/a May be blank if preferred method of contact is telephone.
Preferred method of contact 9(1) 332
  • 1 – telephone
  • 2 – email
n/a
Preferred time of day to be contacted 9(1) 333
  • 1 – morning
  • 2 – afternoon
  • 3 – morning or afternoon
n/a
Preferred language of contact 9(1) 334
  • 1 – English
  • 2 – French
n/a

7.15.1 Record type 960 validation rules

Because record type 960 is generated by the CESP system, validation rules are not applicable.

7.16 Record type 999 - Trailer record (transaction control count)

Record type 999 is the last record in every file sent to or by the CESP.

Note: If a record type 999 record is rejected, the file is rejected and a record of the error is written into the error report (filename.err).

Purpose: to provide the CESP and promoter systems with a control count of the number of records in a file.

Requirements: the record type 999 must be the last record in each file and contain an accurate control count or the file is rejected.

Table 29: Record type 999 – Trailer record (transaction control count)
Data element name Type size Trxn posn Description Notes
Record type 9(3) 1 to 3 999 - trailer record n/a
Sender BN X(15) 4 to 18 n/a n/a
Date 9(8) 19 to 26 Date file sent to CESP if file sent by sender. Date of transaction processing if file sent by CESP. n/a
File number 9(2) 27 to 28 Range 01-99 n/a
Record count 9(9) 29 to 37 Total number of records in the file. (Total transactions in file including header, sub-header, and trailer record counts.) n/a
Filler X(463) 38 to 500 n/a n/a

7.16.1 Record type 999 validation rules

The trailer record, record type 999, is validated and error codes are generated for failures as outlined in the following table and notes.

Table 30: Record type 999 validation rules
Field Rule Error code(s)
Record type The trailer record is mandatory. 6012
Record type The record type 999 record must be the last record in the file. 6015
Record type No other record may be record type 999. 6011
Sender BN Not validated. n/a
Date sent Not validated. n/a
File number Not validated. n/a
Record count Mandatory field. 7005
Record count Must correspond with record count. 6010
Filler Not validated. n/a

Appendix A – Standard code tables

In this section

This section contains lists of codes used by the CESP system.

Transaction error codes

Transaction error codes are used to identify errors or discrepancies found in processing the various record types. Error codes are common across all transaction types, so that the same error generates the same code for all transaction record types.

Table 31: Transaction error codes
Code Description
1004 Transaction is for a future reporting period.
1005 Specimen plan does not exist.
1007 Specimen plan is not approved for CESG.
1008 Specimen plan is not approved for CLB.
1010 Contract is not individual/sibling only.
1011 Sender is not authorized to submit transactions with CESG content.
1012 Sender is not authorized to submit transactions with CLB content.
1013 Sender is not authorized to submit transactions with Alberta grant content.
1014 Sender is not authorized to submit transactions with Additional CESG content.
1015 Sender is not authorized to submit transactions with SAGES content.
1017 Sender is not authorized to submit transactions with BCTESG content.
1018 Specimen plan is not approved for BCTESG.
2027 Transaction date precedes beneficiary birth date.
2033 Transaction date must be before beneficiary's 21st birthday.
3006 Amount must be greater than 0.
3099 Amount is out of range.
5025 Contribution transaction has been reversed - invalid status.
5026 Error in contribution transaction, current transaction cannot be processed.
5027 Unable to locate the contribution transaction.
5028 Date of contribution transaction must be later than December 31, 2004.
5029 PCG/spouse information is same as in contribution transaction received in the same period - no processing performed.
5030 Contribution transaction did not request grant.
5031 Contribution transaction date is later than specimen plan eligibility end date.
5032 A more recent PCG/spouse information transaction is already associated to the contribution.
5033 Late contribution transaction.
5034 Date of contribution transaction must be on or after January 1, 2013.
5036 Valid cancel request already processed for the contribution.
6000 Physical file name does not correspond to file name in header record.
6001 Incorrect format of physical file name.
6002 Duplicate record with same file name found in the system.
6003 No header record.
6005 Too many header records in file.
6006 This BN is not authorized to send files.
6010 Record count does not match the number of records in file.
6011 Too many trailer records in file.
6012 No trailer records in file.
6014 The data version in header does not match the current version.
6015 Trailer record not last in file.
6016 Header record not the first record in the file.
7000 Invalid date.
7001 Invalid value.
7002 Invalid transaction type.
7005 Data is missing from field
7006 Invalid SIN.
7008 Promoter is not associated with the specimen plan.
7017 Date of financial transaction must be later than December 31, 1997.
7018 Date is earlier than original transaction date.
7020 Error in original transaction, current transaction cannot be processed.
7021 Original transaction and its reversal were found in the same processing period, no processing performed.
7022 Unable to locate the original transaction.
7023 The status of the original transaction is invalid.
7030 Sender not authorized to send data for the specimen plan.
7031 Beneficiary is not associated with the specimen plan.
7032 Beneficiary is not associated to a CLB account.
7033 The SIN or BN is not numerically valid.
7034 Transaction date must be on or after January 1, 2004.
7035 Transaction date must be on or after January 1, 2005.
7036 Must be 0 or blank if transaction type 21 and repayment reason is 1.
7037 Date of birth is prior to January 1, 2004.
7039 Transaction date is earlier than contribution transaction date.
7041 Transaction date must be on or after August 15, 2015.
7042 Beneficiary date of birth must be on or after January 1, 2006.

Refusal reasons

Refusal reasons are used to tell why a contribution or request transaction which met all formatting rules did not receive any grant or bond payment. Refusal reasons are found in 2 locations in the 900 record type and 1 location in the 911 record type.

Table 32: Refusal reasons
Record type 900 and 911 CESG, Additional CESG, CLB or BCTESG refusal reason
1 Annual limit exceeded.
2 Lifetime contribution limit exceeded.
3 Age of beneficiary.
4 PCG, spouse or beneficiary information not matched with CRA information.
5 Specimen plan not eligible.
6 Transaction requested no grant/bond.
7 Failed 16/17 year rule.
8 CLB will not be paid for this benefit year.
9 Other.
A Specimen plan not approved for CLB.
B Invalid beneficiary.
C Request not designated to attract CLB for the beneficiary.
D Late transaction.
E Lifetime limit exceeded.
F Anti-churning rule violation.
G Contribution transaction date earlier than January 1, 2005.
H PCG/spouse information is missing.
I PCG/spouse SIN is not numerically valid.
J Contract is not individual/sibling only.
L PCG/spouse SIN or agency BN not matched by the CRA.
M PCG/spouse custody not confirmed by the CRA.
N SIN has been flagged by SIR.
P Spouse not in an active relationship.

Severe error codes

Severe error reports advise the sender that a severe error is present in a transaction, that the record is rejected and must be corrected and resubmitted.

Table 33: Severe error codes
Record type 850 Severe errors
1 Duplicate promoter transaction ID.
2 Invalid or discontinued record type.
3 Promoter transaction ID not provided.
4 Promoter BN not 15 characters.

Province codes

Province codes are based on the Canada Post standard.

Table 34: Province codes
Code Canadian province
AB Alberta
BC British Columbia
MB Manitoba
NB New Brunswick
NL Newfoundland and Labrador (CESG will continue to accept NF)
NS Nova Scotia
NT Northwest Territories
NU Nunavut
ON Ontario
PE Prince Edward Island
QC Quebec (CESG will continue to accept PQ)
SK Saskatchewan
YT Yukon

Appendix B - ISO-8859-1 Latin 1 character set

Note: The CESP system allows the New Line (NL) character, decimal value 10, and Carriage Return (CR) character, decimal value 13. All other characters must fall between decimal values 32 and 255. Other characters between 0 and 31 inclusive are not used.

Appendix C - SIN/BN validation

In this section

SIR validation

Senders must confirm with the subscribers that the basic information provided by the subscriber is exactly the same as the information recorded in the SIR. Confirmation can be made by referring to the beneficiary's SIN documentation.

The beneficiary SIN is electronically validated against the ESDC SIR database in the following manner:

  • every beneficiary information transaction is validated with the ESDC SIR to ensure that the SIN, given name, surname, birth date and gender reported on the transaction correspond with SIR
  • if SIR reports that the information provided in the transaction does not match the records in the SIR, then the CESP rejects the transaction and reports the error to the promoter in the error report
  • the SIR check is performed as part of the validation of each beneficiary transaction received

In an attempt to raise the quality of our data with regards to the use of the SIN, please be advised that we will be systematically blocking all transactions submitted using known misused SINs.

In 2003, the SIR implemented new regulations to enhance SIN integrity resulting in a change in the CESP business process. 9 hundred series (900-series) SINs are assigned to people who are neither Canadian citizens nor permanent residents. Under the change, a 900-series SIN receives an expiry date correlated with the person’s authorized stay in Canada: 900-series SINs without an expiry date became invalid as of April 03, 2004. All SINs included on 200-03 transactions will be sent to SIR for validation including scrutiny for the existence of a ‘not useable’ flag. In addition to the increased scrutiny for new beneficiary transactions, all beneficiary SINs in the CESP system will be sent to SIR on a monthly basis for validation. A beneficiary SIN returned from SIR with a not useable flag will result in a not useable status in the CESP system and a suspension of grant/bond payments until the issue is resolved.

The SIR has asked the CESP to inform all SIN users that the misuse of a SIN number is a federal offence under the Employment Insurance (EI) legislation.

Appendix D - Record type 400 data elements

Listed below is a complete breakdown of the record type 400 data elements. Noted with a 'yes' are those elements that are retrieved by the CESP system, depending on the transaction type on which they are reported, from the sender files and stored in the system.

Table 35: Record type 400 – Data elements
Data element name Contribution (11) EAP (13) PSE (14) Trans. in (19) Trans. out (23) Repayment (21) Adjustment (22) CLB request (24)
Trans. date yes yes yes yes yes yes yes yes
Prom trans. ID yes yes yes yes yes yes yes yes
Prom BN yes yes yes yes yes yes yes yes
Trans. type yes yes yes yes yes yes yes yes
Spec plan ID yes yes yes yes yes yes yes yes
Contract ID yes yes yes yes yes yes yes yes
Subscriber SIN yes yes yes yes yes yes yes yes
Ben SIN yes yes yes n/a n/a yes n/a yes
Contribution amount yes n/a n/a n/a n/a n/a n/a yes
Grant requested yes n/a n/a n/a n/a n/a n/a yes
Academic year start date n/a yes yes n/a n/a n/a n/a n/a
Academic year length n/a yes yes n/a n/a n/a n/a n/a
Reversal flag yes yes yes yes yes yes yes yes
Original prom. trans. ID yes (reversal only) yes (reversal only) yes (reversal only) yes (reversal only) yes (reversal only) yes (reversal only) yes (reversal only) yes (reversal only)
Original prom BN yes (reversal only) yes (reversal only) yes (reversal only) yes (reversal only) yes (reversal only) yes (reversal only) yes (reversal only) yes (reversal only)
Grant amount n/a n/a n/a yes yes yes yes n/a
EAP grant amount n/a yes n/a n/a n/a n/a n/a n/a
EAP amount n/a yes n/a n/a n/a n/a n/a n/a
PSE amount n/a n/a yes n/a n/a n/a n/a n/a
Other spec plan ID n/a n/a n/a yes yes n/a n/a n/a
Other contract ID n/a n/a n/a yes yes n/a n/a n/a
Repayment reason n/a n/a n/a n/a n/a yes n/a n/a
PSE program length n/a yes yes n/a n/a n/a n/a n/a
PSE program type n/a yes yes n/a n/a n/a n/a n/a
Education inst. postal code n/a yes yes n/a n/a n/a n/a n/a
PSE program year n/a yes yes n/a n/a n/a n/a n/a
PCG/spouse yes n/a n/a n/a n/a n/a n/a yes
PCG/spouse type yes n/a n/a n/a n/a n/a n/a yes
PCG/spouse given name yes (if SIN PCG/spouse) n/a n/a n/a n/a n/a n/a yes
PCG/spouse surname yes (if SIN PCG/spouse) n/a n/a n/a n/a n/a n/a yes
EAP CLB amount n/a yes n/a n/a n/a n/a n/a n/a
CLB amount n/a n/a n/a yes yes yes yes n/a
BCTESG amount n/a n/a n/a yes yes yes yes n/a
BCTESG EAP amount n/a yes n/a n/a n/a n/a n/a n/a

Page details

Date modified: