POST api/transaction/savings/withdraw

Withdraw from Savings Account.

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/withdraw. 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.

ReceiptWithdrawalDto
NameDescriptionTypeAdditional information
TargetTellerAccountID

Unique identifier of teller account(GL account) which should be debited when withdraw happens.

integer optional - Abacus User can give either teller account id or teller account number.
TargetCreditAccountNumber

Teller account number which should be debited when withdraw happens.

string optional - Abacus User can give either teller account id or teller account number.
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:
{
  "targetTellerAccountID": 1,
  "targetCreditAccountNumber": "sample string 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:
<ReceiptWithdrawalDto xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/Fern.Abacus.ObjectModel.Dto">
  <AccountNumber>sample string 2</AccountNumber>
  <Amount>1</Amount>
  <CUAccountID>1</CUAccountID>
  <ExternalRefNo>sample string 4</ExternalRefNo>
  <Notes>sample string 3</Notes>
  <OverridePassword>sample string 6</OverridePassword>
  <OverrideUserName>sample string 5</OverrideUserName>
  <ReceiptNo>1</ReceiptNo>
  <TransactionOverrides>
    <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>
  <TargetCreditAccountNumber>sample string 1</TargetCreditAccountNumber>
  <TargetTellerAccountID>1</TargetTellerAccountID>
</ReceiptWithdrawalDto>

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 with the list of posted transactions.

ReceiptWithdrawalDto
NameDescriptionTypeAdditional information
TargetTellerAccountID

Unique identifier of teller account(GL account) which should be debited when withdraw happens.

integer optional - Abacus User can give either teller account id or teller account number.
TargetCreditAccountNumber

Teller account number which should be debited when withdraw happens.

string optional - Abacus User can give either teller account id or teller account number.
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:
{
  "targetTellerAccountID": 1,
  "targetCreditAccountNumber": "sample string 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:
<ReceiptWithdrawalDto xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/Fern.Abacus.ObjectModel.Dto">
  <AccountNumber>sample string 2</AccountNumber>
  <Amount>1</Amount>
  <CUAccountID>1</CUAccountID>
  <ExternalRefNo>sample string 4</ExternalRefNo>
  <Notes>sample string 3</Notes>
  <OverridePassword>sample string 6</OverridePassword>
  <OverrideUserName>sample string 5</OverrideUserName>
  <ReceiptNo>1</ReceiptNo>
  <TransactionOverrides>
    <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>
  <TargetCreditAccountNumber>sample string 1</TargetCreditAccountNumber>
  <TargetTellerAccountID>1</TargetTellerAccountID>
</ReceiptWithdrawalDto>