POST api/transaction/savings/externaltransfer

Fund transfer between two accounts of the different customers.

Requires Authorisation

The api request must supply authenticated token in a custom variable in the request header. The custom variable name is configured in web.config. The default name of the custom variable is “X-Fern-Token”.

Requires Api License and User Access

The api requires license and user permission for API ID, POSTapi/transaction/savings/externaltransfer. The user permission can be defined on User Settings screen in Abacus. For license, please contact Fern manager.

Request Information

URI Parameters

None.

Body Parameters

Receipt transaction data.

ReceiptCustomerTransferDto
NameDescriptionTypeAdditional information
ToAccountID

Unique identifier of the account to which the fund should be transferred.

integer Required.
ToAccountNumber

Account number of the account to which the amount to be transfered. It is used when ToAccountID is not known. Otherwise it is optional.

string
ToReceiptNo

Receipt number of the transfer-out receipt.

integer Read-Only.
FeeID

Unique identifier of Fee which should be charged when withdraw happens.

integer optional - Abacus User can give FeeID if a fee to be charged while withdrawal.
FeeAmount

Fee Amount which should be charged while withdrawal.

decimal number optional - Abacus User can give either FeeAmount if the fee type is variable. For other fee Type Abacus itself will calculate the Amount.
PayFee

Pay Fee represents an identifier for pay fee.

boolean optional - Abacus User can decide whether to pay the fee or not.
CUAccountID

Unique identifier of an account. Either CUAccountID or AccountNumber id required for receipt adjustment.

integer Required. If it is not available, account number is required.
AccountNumber

Account number represent customer's account. Either CUAccountID or AccountNumber id required for receipt adjustment.

string Required. If it is not available, CUAccountID is required.
Amount

Transaction amount. Amount is not required for receipt adjustment.

decimal number Required.
Notes

Transaction notes which will be added as a reference.

string Optional. It will be mandtory for adjustments as per system settings.
TransactionOverrides

Transaction Override details.

Collection of TransactionOverrideDto Read-Only.
ReceiptNo

Unique identifier of a receipt.

integer Required for reversal and adjustments not for other transactions.
ExternalRefNo

Transaction refernce number for identify external transactions.

string Optional.It contains null for all internal transactions
OverrideUserName

User's name who authorize the transaction if the transaction requires override authorization.

string Required if there is an override. Optional otherwise.
OverridePassword

Password of the user who authorize the transaction if the transaction requires override authorization.

string Required if there is an override. Optional otherwise.

Request Formats

application/json, text/json

Sample:
{
  "toAccountID": 1,
  "toAccountNumber": "sample string 1",
  "toReceiptNo": 1,
  "feeID": 1,
  "feeAmount": 1.0,
  "payFee": true,
  "cuAccountID": 1,
  "accountNumber": "sample string 2",
  "amount": 1.0,
  "notes": "sample string 3",
  "transactionOverrides": [
    {
      "cuTransactionOverrideID": 1,
      "receiptNo": 1,
      "cuAccountID": 1,
      "overrideType": 64,
      "userId": 1,
      "terminalID": 1,
      "accountInfo": "sample string 1",
      "currencyID": 1,
      "amount": 1.0,
      "description": "sample string 2",
      "splitHeaderID": 1,
      "message": "sample string 3",
      "overrideTypeText": "sample string 4",
      "userName": "sample string 5",
      "terminalName": "sample string 6",
      "password": "sample string 7",
      "checked": true,
      "authorised": true
    },
    {
      "cuTransactionOverrideID": 1,
      "receiptNo": 1,
      "cuAccountID": 1,
      "overrideType": 64,
      "userId": 1,
      "terminalID": 1,
      "accountInfo": "sample string 1",
      "currencyID": 1,
      "amount": 1.0,
      "description": "sample string 2",
      "splitHeaderID": 1,
      "message": "sample string 3",
      "overrideTypeText": "sample string 4",
      "userName": "sample string 5",
      "terminalName": "sample string 6",
      "password": "sample string 7",
      "checked": true,
      "authorised": true
    }
  ],
  "receiptNo": 1,
  "hasOverride": true,
  "externalRefNo": "sample string 4",
  "overrideUserName": "sample string 5",
  "overridePassword": "sample string 6"
}

application/xml, text/xml

Sample:
<ReceiptCustomerTransferDto xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/Fern.Abacus.ObjectModel.Dto.CU">
  <AccountNumber xmlns="http://schemas.datacontract.org/2004/07/Fern.Abacus.ObjectModel.Dto">sample string 2</AccountNumber>
  <Amount xmlns="http://schemas.datacontract.org/2004/07/Fern.Abacus.ObjectModel.Dto">1</Amount>
  <CUAccountID xmlns="http://schemas.datacontract.org/2004/07/Fern.Abacus.ObjectModel.Dto">1</CUAccountID>
  <ExternalRefNo xmlns="http://schemas.datacontract.org/2004/07/Fern.Abacus.ObjectModel.Dto">sample string 4</ExternalRefNo>
  <Notes xmlns="http://schemas.datacontract.org/2004/07/Fern.Abacus.ObjectModel.Dto">sample string 3</Notes>
  <OverridePassword xmlns="http://schemas.datacontract.org/2004/07/Fern.Abacus.ObjectModel.Dto">sample string 6</OverridePassword>
  <OverrideUserName xmlns="http://schemas.datacontract.org/2004/07/Fern.Abacus.ObjectModel.Dto">sample string 5</OverrideUserName>
  <ReceiptNo xmlns="http://schemas.datacontract.org/2004/07/Fern.Abacus.ObjectModel.Dto">1</ReceiptNo>
  <TransactionOverrides xmlns="http://schemas.datacontract.org/2004/07/Fern.Abacus.ObjectModel.Dto">
    <TransactionOverrideDto>
      <AccountInfo>sample string 1</AccountInfo>
      <Amount>1</Amount>
      <Authorised>true</Authorised>
      <CUAccountID>1</CUAccountID>
      <CUTransactionOverrideID>1</CUTransactionOverrideID>
      <Checked>true</Checked>
      <CurrencyID>1</CurrencyID>
      <Description>sample string 2</Description>
      <Message>sample string 3</Message>
      <OverrideType>64</OverrideType>
      <OverrideTypeText>sample string 4</OverrideTypeText>
      <Password>sample string 7</Password>
      <ReceiptNo>1</ReceiptNo>
      <SplitHeaderID>1</SplitHeaderID>
      <TerminalID>1</TerminalID>
      <TerminalName>sample string 6</TerminalName>
      <UserId>1</UserId>
      <UserName>sample string 5</UserName>
    </TransactionOverrideDto>
    <TransactionOverrideDto>
      <AccountInfo>sample string 1</AccountInfo>
      <Amount>1</Amount>
      <Authorised>true</Authorised>
      <CUAccountID>1</CUAccountID>
      <CUTransactionOverrideID>1</CUTransactionOverrideID>
      <Checked>true</Checked>
      <CurrencyID>1</CurrencyID>
      <Description>sample string 2</Description>
      <Message>sample string 3</Message>
      <OverrideType>64</OverrideType>
      <OverrideTypeText>sample string 4</OverrideTypeText>
      <Password>sample string 7</Password>
      <ReceiptNo>1</ReceiptNo>
      <SplitHeaderID>1</SplitHeaderID>
      <TerminalID>1</TerminalID>
      <TerminalName>sample string 6</TerminalName>
      <UserId>1</UserId>
      <UserName>sample string 5</UserName>
    </TransactionOverrideDto>
  </TransactionOverrides>
  <FeeAmount>1</FeeAmount>
  <FeeID>1</FeeID>
  <PayFee>true</PayFee>
  <ToAccountID>1</ToAccountID>
  <ToAccountNumber>sample string 1</ToAccountNumber>
  <ToReceiptNo>1</ToReceiptNo>
</ReceiptCustomerTransferDto>

application/x-www-form-urlencoded

Sample:

Sample not available.

Response Information

Response Codes

Success Status:

  • Created (201), please see resource description below.

Failed Status(es):

Resource Description

Returns created receipt.

ReceiptCustomerTransferDto
NameDescriptionTypeAdditional information
ToAccountID

Unique identifier of the account to which the fund should be transferred.

integer Required.
ToAccountNumber

Account number of the account to which the amount to be transfered. It is used when ToAccountID is not known. Otherwise it is optional.

string
ToReceiptNo

Receipt number of the transfer-out receipt.

integer Read-Only.
FeeID

Unique identifier of Fee which should be charged when withdraw happens.

integer optional - Abacus User can give FeeID if a fee to be charged while withdrawal.
FeeAmount

Fee Amount which should be charged while withdrawal.

decimal number optional - Abacus User can give either FeeAmount if the fee type is variable. For other fee Type Abacus itself will calculate the Amount.
PayFee

Pay Fee represents an identifier for pay fee.

boolean optional - Abacus User can decide whether to pay the fee or not.
CUAccountID

Unique identifier of an account. Either CUAccountID or AccountNumber id required for receipt adjustment.

integer Required. If it is not available, account number is required.
AccountNumber

Account number represent customer's account. Either CUAccountID or AccountNumber id required for receipt adjustment.

string Required. If it is not available, CUAccountID is required.
Amount

Transaction amount. Amount is not required for receipt adjustment.

decimal number Required.
Notes

Transaction notes which will be added as a reference.

string Optional. It will be mandtory for adjustments as per system settings.
TransactionOverrides

Transaction Override details.

Collection of TransactionOverrideDto Read-Only.
ReceiptNo

Unique identifier of a receipt.

integer Required for reversal and adjustments not for other transactions.
HasOverride

Whether receipt is failed due to override required.

boolean Read-Only. If it is true find the override info using TransactionOverrides property.
ExternalRefNo

Transaction refernce number for identify external transactions.

string Optional.It contains null for all internal transactions
OverrideUserName

User's name who authorize the transaction if the transaction requires override authorization.

string Required if there is an override. Optional otherwise.
OverridePassword

Password of the user who authorize the transaction if the transaction requires override authorization.

string Required if there is an override. Optional otherwise.

Response Formats

application/json, text/json

Sample:
{
  "toAccountID": 1,
  "toAccountNumber": "sample string 1",
  "toReceiptNo": 1,
  "feeID": 1,
  "feeAmount": 1.0,
  "payFee": true,
  "cuAccountID": 1,
  "accountNumber": "sample string 2",
  "amount": 1.0,
  "notes": "sample string 3",
  "transactionOverrides": [
    {
      "cuTransactionOverrideID": 1,
      "receiptNo": 1,
      "cuAccountID": 1,
      "overrideType": 64,
      "userId": 1,
      "terminalID": 1,
      "accountInfo": "sample string 1",
      "currencyID": 1,
      "amount": 1.0,
      "description": "sample string 2",
      "splitHeaderID": 1,
      "message": "sample string 3",
      "overrideTypeText": "sample string 4",
      "userName": "sample string 5",
      "terminalName": "sample string 6",
      "password": "sample string 7",
      "checked": true,
      "authorised": true
    },
    {
      "cuTransactionOverrideID": 1,
      "receiptNo": 1,
      "cuAccountID": 1,
      "overrideType": 64,
      "userId": 1,
      "terminalID": 1,
      "accountInfo": "sample string 1",
      "currencyID": 1,
      "amount": 1.0,
      "description": "sample string 2",
      "splitHeaderID": 1,
      "message": "sample string 3",
      "overrideTypeText": "sample string 4",
      "userName": "sample string 5",
      "terminalName": "sample string 6",
      "password": "sample string 7",
      "checked": true,
      "authorised": true
    }
  ],
  "receiptNo": 1,
  "hasOverride": true,
  "externalRefNo": "sample string 4",
  "overrideUserName": "sample string 5",
  "overridePassword": "sample string 6"
}

application/xml, text/xml

Sample:
<ReceiptCustomerTransferDto xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/Fern.Abacus.ObjectModel.Dto.CU">
  <AccountNumber xmlns="http://schemas.datacontract.org/2004/07/Fern.Abacus.ObjectModel.Dto">sample string 2</AccountNumber>
  <Amount xmlns="http://schemas.datacontract.org/2004/07/Fern.Abacus.ObjectModel.Dto">1</Amount>
  <CUAccountID xmlns="http://schemas.datacontract.org/2004/07/Fern.Abacus.ObjectModel.Dto">1</CUAccountID>
  <ExternalRefNo xmlns="http://schemas.datacontract.org/2004/07/Fern.Abacus.ObjectModel.Dto">sample string 4</ExternalRefNo>
  <Notes xmlns="http://schemas.datacontract.org/2004/07/Fern.Abacus.ObjectModel.Dto">sample string 3</Notes>
  <OverridePassword xmlns="http://schemas.datacontract.org/2004/07/Fern.Abacus.ObjectModel.Dto">sample string 6</OverridePassword>
  <OverrideUserName xmlns="http://schemas.datacontract.org/2004/07/Fern.Abacus.ObjectModel.Dto">sample string 5</OverrideUserName>
  <ReceiptNo xmlns="http://schemas.datacontract.org/2004/07/Fern.Abacus.ObjectModel.Dto">1</ReceiptNo>
  <TransactionOverrides xmlns="http://schemas.datacontract.org/2004/07/Fern.Abacus.ObjectModel.Dto">
    <TransactionOverrideDto>
      <AccountInfo>sample string 1</AccountInfo>
      <Amount>1</Amount>
      <Authorised>true</Authorised>
      <CUAccountID>1</CUAccountID>
      <CUTransactionOverrideID>1</CUTransactionOverrideID>
      <Checked>true</Checked>
      <CurrencyID>1</CurrencyID>
      <Description>sample string 2</Description>
      <Message>sample string 3</Message>
      <OverrideType>64</OverrideType>
      <OverrideTypeText>sample string 4</OverrideTypeText>
      <Password>sample string 7</Password>
      <ReceiptNo>1</ReceiptNo>
      <SplitHeaderID>1</SplitHeaderID>
      <TerminalID>1</TerminalID>
      <TerminalName>sample string 6</TerminalName>
      <UserId>1</UserId>
      <UserName>sample string 5</UserName>
    </TransactionOverrideDto>
    <TransactionOverrideDto>
      <AccountInfo>sample string 1</AccountInfo>
      <Amount>1</Amount>
      <Authorised>true</Authorised>
      <CUAccountID>1</CUAccountID>
      <CUTransactionOverrideID>1</CUTransactionOverrideID>
      <Checked>true</Checked>
      <CurrencyID>1</CurrencyID>
      <Description>sample string 2</Description>
      <Message>sample string 3</Message>
      <OverrideType>64</OverrideType>
      <OverrideTypeText>sample string 4</OverrideTypeText>
      <Password>sample string 7</Password>
      <ReceiptNo>1</ReceiptNo>
      <SplitHeaderID>1</SplitHeaderID>
      <TerminalID>1</TerminalID>
      <TerminalName>sample string 6</TerminalName>
      <UserId>1</UserId>
      <UserName>sample string 5</UserName>
    </TransactionOverrideDto>
  </TransactionOverrides>
  <FeeAmount>1</FeeAmount>
  <FeeID>1</FeeID>
  <PayFee>true</PayFee>
  <ToAccountID>1</ToAccountID>
  <ToAccountNumber>sample string 1</ToAccountNumber>
  <ToReceiptNo>1</ToReceiptNo>
</ReceiptCustomerTransferDto>