BillingNote
4 tools
CreateBillingNote
Creates a billing note (ใบวางบิล) in PEAK Account to consolidate multiple invoices into a single payment request for a customer. Use this when you want to send one combined bill instead of multiple invoices. Provide transactions array with the invoice codes/IDs to combine. Returns a billing note with the combined total and a shareable link.
0 required · 27 optional
CreateBillingNote
Creates a billing note (ใบวางบิล) in PEAK Account to consolidate multiple invoices into a single payment request for a customer. Use this when you want to send one combined bill instead of multiple invoices. Provide transactions array with the invoice codes/IDs to combine. Returns a billing note with the combined total and a shareable link.
| Parameter | Type | Description | |||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
| transactions | array[BillingNoteTransaction] | optional | The object array containing data of the documents to be invoicedarray[BillingNoteTransaction] fields
|
||||||||
| code | string | optional | The code of the document for which a billing note is to be issued | ||||||||
| issuedDate | string | optional | Document issuance date | ||||||||
| dueDate | string | optional | Document due date, which must be after the document issuance date | ||||||||
| contactId | string | optional | Unique Identifier of the contact associated with the document | ||||||||
| contactCode | string | optional | Code of the contact associated with the document (If contactId has been assigned a value, contactCode is not required) | ||||||||
| remark | string | optional | Additional remarks or notes | ||||||||
| tags | array[String] | optional | Label attached to someone or something for the purpose of identification or to give other information | ||||||||
| paymentDate | string | optional | Payment date in the format yyyyMMdd | ||||||||
| withHoldingTaxAmount | string | optional | Withholding tax amount for the payment | ||||||||
| paymentAmount | number? | optional | Payment amount | ||||||||
| paymentMethodId | string | optional | The Unique Identifier of the payment method | ||||||||
| paymentMethodCode | string | optional | Code of the payment method (If paymentMethodId has been assigned a value, paymentMethodCode is not required) | ||||||||
| accountCode | string | optional | Account code to be used for recording financial transactions | ||||||||
| accountSubId | string | optional | Sub account Unique Identifier to be used for recording financial transactions | ||||||||
| accountSubCode | string | optional | Sub account code to be used for recording financial transactions | ||||||||
| paymentNote | string | optional | Additional remarks or notes for that specific payment received | ||||||||
| isCheque | integer? | optional | Whether this payment is made by Cheque (0 = No, 1 = Yes) | ||||||||
| chequeAccountNo | string | optional | Bank account number | ||||||||
| chequeBranchNo | string | optional | Bank branch number | ||||||||
| chequeNo | string | optional | Cheque number | ||||||||
| chequeAmount | number? | optional | Amount specified in the Cheque | ||||||||
| chequeDate | string | optional | Cheque issuance date in the format yyyyMMdd | ||||||||
| chequeBankId | integer? | optional | The numerical code that indicates a financial institution (If type is 2, bankId is required) | ||||||||
| chequePaymentMethodId | string | optional | The Unique Identifier of the payment method used to record the Cheque payment | ||||||||
| chequePaymentMethodCode | string | optional | The Code of the payment method used to record the Cheque payment | ||||||||
| getResult | integer? | optional | Numeric code used to reduce the amount of response data received |
Response
{
"PeakBillingNotes": {
"resCode": "200",
"resDesc": "PeakBillingNotes have Completed",
"billingNotes": [{
"id": "faa7a1d3-71af-48d0-bdd2-8c262bb15331",
"code": "BAAN01A00039",
"issuedDate": "20211209",
"dueDate": "20211216",
"contactId": "129c968f-23e9-4ee9-9dc7-3f799b47c029",
"contactCode": "C00003",
"transactions": [{ "id": "guid", "code": "IVTZ202112028", "amount": 260 }],
"preTaxAmount": 242.99,
"netAmount": 260,
"vatAmount": 17.01,
"whtAmount": 0,
"paymentAmount": 0,
"remainAmount": 260,
"remainWhtAmount": 0,
"documentLink": "https://...",
"onlineViewLink": "https://...",
"resCode": "200",
"resDesc": "Success"
}]
}
}
CreateBillingNoteExpense
Creates a billing note expense in Peak Account. Returns the created billing note expense details.
0 required · 27 optional
CreateBillingNoteExpense
Creates a billing note expense in Peak Account. Returns the created billing note expense details.
| Parameter | Type | Description | |||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
| transactions | array[BillingNoteTransaction] | optional | The object array containing data of the documents to be invoicedarray[BillingNoteTransaction] fields
|
||||||||
| code | string | optional | The code of the document for which a billing note is to be issued | ||||||||
| issuedDate | string | optional | Document issuance date | ||||||||
| dueDate | string | optional | Document due date, which must be after the document issuance date | ||||||||
| contactId | string | optional | Unique Identifier of the contact associated with the document | ||||||||
| contactCode | string | optional | Code of the contact associated with the document (If contactId has been assigned a value, contactCode is not required) | ||||||||
| remark | string | optional | Additional remarks or notes | ||||||||
| tags | array[String] | optional | Label attached to someone or something for the purpose of identification or to give other information | ||||||||
| paymentDate | string | optional | Payment date in the format yyyyMMdd | ||||||||
| withHoldingTaxAmount | string | optional | Withholding tax amount for the payment | ||||||||
| paymentAmount | number? | optional | Payment amount | ||||||||
| paymentMethodId | string | optional | The Unique Identifier of the payment method | ||||||||
| paymentMethodCode | string | optional | Code of the payment method (If paymentMethodId has been assigned a value, paymentMethodCode is not required) | ||||||||
| accountCode | string | optional | Account code to be used for recording financial transactions | ||||||||
| accountSubId | string | optional | Sub account Unique Identifier to be used for recording financial transactions | ||||||||
| accountSubCode | string | optional | Sub account code to be used for recording financial transactions | ||||||||
| paymentNote | string | optional | Additional remarks or notes for that specific payment received | ||||||||
| isCheque | integer? | optional | Whether this payment is made by Cheque (0 = No, 1 = Yes) | ||||||||
| chequeAccountNo | string | optional | Bank account number | ||||||||
| chequeBranchNo | string | optional | Bank branch number | ||||||||
| chequeNo | string | optional | Cheque number | ||||||||
| chequeAmount | number? | optional | Amount specified in the Cheque | ||||||||
| chequeDate | string | optional | Cheque issuance date in the format yyyyMMdd | ||||||||
| chequeBankId | integer? | optional | The numerical code that indicates a financial institution (If type is 2, bankId is required) | ||||||||
| chequePaymentMethodId | string | optional | The Unique Identifier of the payment method used to record the Cheque payment | ||||||||
| chequePaymentMethodCode | string | optional | The Code of the payment method used to record the Cheque payment | ||||||||
| getResult | integer? | optional | Numeric code used to reduce the amount of response data received |
Response
{
"PeakBillingNotesExpenses": {
"resCode": "200",
"resDesc": "PeakBillingNotesExpenses have Completed",
"billingNotesExpenses": [{
"id": "faa7a1d3-71af-48d0-bdd2-8c262bb15331",
"code": "BNX01A00039",
"issuedDate": "20211209",
"dueDate": "20211216",
"contactId": "129c968f-23e9-4ee9-9dc7-3f799b47c029",
"contactCode": "C00003",
"transactions": [{ "id": "guid", "code": "IVTZ202112028", "amount": 260 }],
"preTaxAmount": 242.99,
"netAmount": 260,
"vatAmount": 17.01,
"whtAmount": 0,
"paymentAmount": 0,
"remainAmount": 260,
"remainWhtAmount": 0,
"documentLink": "https://...",
"onlineViewLink": "https://...",
"resCode": "200",
"resDesc": "Success"
}]
}
}
GetBillingNoteExpense
Gets billing note expenses from Peak Account. Filter by date range, status, or search text. Returns a list of billing note expenses with pagination.
0 required · 6 optional
GetBillingNoteExpense
Gets billing note expenses from Peak Account. Filter by date range, status, or search text. Returns a list of billing note expenses with pagination.
| Parameter | Type | Description | |
|---|---|---|---|
| dateStart | string | optional | Start date for filtering billing note expenses (format yyyyMMdd). |
| dateEnd | string | optional | End date for filtering billing note expenses (format yyyyMMdd). |
| status | integer? | optional | Status of the billing note expense for filtering. (0 = None, 1 = Voided, 2 = Draft, 3 = AwaitApproval, 4 = Outstanding, 5 = Overdue, 6 = PaidOrAwaitReceipt) |
| searchText | string | optional | Text to search for in billing note expenses. |
| limit | integer? | optional | Maximum number of entries to retrieve. |
| page | integer? | optional | Page number for displaying data, where each page will show 10 entries. |
Response
{
"PeakBillingNotesExpenses": {
"resCode": "200",
"resDesc": "PeakBillingNotesExpenses have Completed",
"totalBillingNoteExpense": 3,
"billingNotesExpenses": [{
"code": "BNX0600027",
"issuedDate": "20230612",
"contactId": "079fa9e4-de10-4020-b290-eae29cdbc1ca",
"contactCode": "C00002",
"netAmount": 10,
"documentLink": "https://...",
"onlineViewLink": "https://...",
"resCode": "200",
"resDesc": "Success"
}]
}
}
GetBillingNote
Gets billing notes from Peak Account. Filter by date range, status, or search text. Returns a list of billing notes with pagination.
0 required · 6 optional
GetBillingNote
Gets billing notes from Peak Account. Filter by date range, status, or search text. Returns a list of billing notes with pagination.
| Parameter | Type | Description | |
|---|---|---|---|
| dateStart | string | optional | Start date for filtering billing notes (format yyyyMMdd). |
| dateEnd | string | optional | End date for filtering billing notes (format yyyyMMdd). |
| status | integer? | optional | Status of the billing note for filtering. (0 = None, 1 = Voided, 2 = Draft, 3 = AwaitApproval, 4 = Outstanding, 5 = Overdue, 6 = PaidOrAwaitReceipt) |
| searchText | string | optional | Text to search for in billing notes. |
| limit | integer? | optional | Maximum number of entries to retrieve. |
| page | integer? | optional | Page number for displaying data, where each page will show 10 entries. |
Response
{
"PeakBillingNotes": {
"resCode": "200",
"resDesc": "PeakBillingNotes have Completed",
"totalBillingNote": 3,
"billingNotes": [{
"code": "BN0600027",
"issuedDate": "20230612",
"contactId": "079fa9e4-de10-4020-b290-eae29cdbc1ca",
"contactCode": "C00002",
"netAmount": 10,
"documentLink": "https://...",
"onlineViewLink": "https://...",
"resCode": "200",
"resDesc": "Success"
}]
}
}
Classification
3 tools
GetClassificationGroup
Retrieve all Classification Groups configured in this PEAK account. Classifications are user-defined labels that let businesses tag documents by department, project, branch, cost center, or any other dimension — each business defines its own groups. Call this tool first before using CreateTransactionClassification — you need the classificationGroup number and the classificationItem number to tag a transaction correctly.
no params
GetClassificationGroup
Retrieve all Classification Groups configured in this PEAK account. Classifications are user-defined labels that let businesses tag documents by department, project, branch, cost center, or any other dimension — each business defines its own groups. Call this tool first before using CreateTransactionClassification — you need the classificationGroup number and the classificationItem number to tag a transaction correctly.
No parameters required.
Response
{
"peakClassification": {
"classificationGroup": [
{
"resCode": "string",
"resDesc": "string",
"number": "string",
"name": "string",
"description": "string",
"classificationDocumentFinanceType": 0,
"classificationItemList": [
{
"number": "string",
"name": "string",
"description": "string"
}
]
}
],
"resDesc": "string",
"resCode": "string"
}
}
GetTransactionClassification
Get Transaction Classification from Peak Account.
0 required · 3 optional
GetTransactionClassification
Get Transaction Classification from Peak Account.
| Parameter | Type | Description | |
|---|---|---|---|
| transactionId | string | optional | The Unique Identifier of the transaction |
| transactionCode | string | optional | The code of the transaction |
| transactionType | integer? | optional | The numerical code indicating the type of transaction (0 = None, 1 = Quotation, 2 = Invoice, 3 = Receipt, 4 = TaxInvoice, 5 = CreditNote, 6 = BillingNote, 7 = DebitNote, 11 = Dailyjournal) |
Response
{
"peakClassification": {
"transactionCode": "string",
"transactionType": 0,
"classifications": [
{
"classificationGroupCode": "string",
"classificationItemList": [
{
"number": "string",
"percent": 0.0
}
]
}
],
"resDesc": "string",
"resCode": "string"
}
}
CreateTransactionClassification
Tag an existing transaction (Invoice, Expense, Receipt, etc.) with a Classification label — such as a department, project, or branch — as defined in the business's Classification Groups. Prerequisites: 1. The transaction must already exist (e.g., call CreateInvoice first to get the transactionId) 2. classificationGroup number and classificationItem number — call GetClassificationGroup to retrieve valid values for this account
0 required · 5 optional
CreateTransactionClassification
Tag an existing transaction (Invoice, Expense, Receipt, etc.) with a Classification label — such as a department, project, or branch — as defined in the business's Classification Groups. Prerequisites: 1. The transaction must already exist (e.g., call CreateInvoice first to get the transactionId) 2. classificationGroup number and classificationItem number — call GetClassificationGroup to retrieve valid values for this account
| Parameter | Type | Description | |||||||
|---|---|---|---|---|---|---|---|---|---|
| transactionId | string | optional | The Unique Identifier of the transaction | ||||||
| transactionCode | string | optional | The code of the transaction | ||||||
| transactionType | integer? | optional | The numerical code indicating the type of transaction (0 = None, 1 = Quotation, 2 = Invoice, 3 = Receipt, 4 = TaxInvoice, 5 = CreditNote, 6 = BillingNote, 7 = DebitNote, 11 = Dailyjournal) | ||||||
| classificationGroupCode | string | optional | The code of the classification group | ||||||
| classificationItemList | array[TransactionClassificationItemEntry] | optional | A list of classification itemsarray[TransactionClassificationItemEntry] fields
|
Response
{
"resCode": "200",
"resDesc": "Success"
}
Contact
2 tools
SearchContacts
Searches for existing customers and vendors (contacts) in PEAK Account. Always call this tool first before creating any document (Invoice, Expense, etc.) to check if the contact already exists and get their contactId. Returns contactId and contactCode needed for document creation tools. If no contact is found, use CreateContact to add them first.
0 required · 5 optional
SearchContacts
Searches for existing customers and vendors (contacts) in PEAK Account. Always call this tool first before creating any document (Invoice, Expense, etc.) to check if the contact already exists and get their contactId. Returns contactId and contactCode needed for document creation tools. If no contact is found, use CreateContact to add them first.
| Parameter | Type | Description | |
|---|---|---|---|
| status | integer? | optional | Filter by contact status (0 = All, 1 = Active, 2 = Inactive) |
| groupId | string | optional | Filter by group ID. |
| searchText | string | optional | Search keyword for contact name or related data. Use searchText to search by company name, contact name, or tax number. |
| limit | integer? | optional | Maximum number of contacts to retrieve. |
| page | integer? | optional | Page number (each page shows 10 entries). |
Response
{
"PeakContacts": {
"resCode": "200",
"resDesc": "PeakContacts have Completed",
"totalContact": 25,
"contacts": [{
"id": "guid",
"code": "C001",
"name": "Company Name",
"type": 1,
"taxNumber": "0123456789012",
"branchCode": "00000",
"email": "[email protected]",
"address": "123 Main St",
"subDistrict": "...",
"district": "...",
"province": "Bangkok",
"postCode": "10110",
"resCode": "200",
"resDesc": "Success"
}]
}
}
CreateContact
Creates a new customer or vendor (contact) in PEAK Account. Call this tool when SearchContacts returns no results for a person or company. To link bank account for payment: include bankId, bankAccountNo, bankAccountName. For account tracking: set purchaseAccount (if vendor) or sellAccount (if customer). Returns contactId and contactCode to use in document creation tools.
1 required · 29 optional
CreateContact
Creates a new customer or vendor (contact) in PEAK Account. Call this tool when SearchContacts returns no results for a person or company. To link bank account for payment: include bankId, bankAccountNo, bankAccountName. For account tracking: set purchaseAccount (if vendor) or sellAccount (if customer). Returns contactId and contactCode to use in document creation tools.
| Parameter | Type | Description | |
|---|---|---|---|
| name | string | required | Contact name |
| type | integer | optional | Type of contact (0 = None, 1 = LimitedLiabilityPartnership, 2 = CompanyLimited, 3 = PublicCompanyLimited, 4 = Shop, 5 = OrdinaryPerson, 6 = BodyOfPersons, 7 = Others, 8 = OrdinaryPartnership, 9 = Foundation, 10 = Association, 11 = JointVenture) |
| prefixNameType | integer? | optional | If the value of "type" is 5 (Individual/Person), the "prefixNameType" field is a required variable that indicates the prefix of the contact's name (0 = None, 1 = Sir, 2 = Mr, 3 = Mrs, 4 = Ms, 5 = Other) |
| prefixNameOther | string | optional | If the value of "prefixNameType" is 6 (Other), the "prefixNameOther" field is a required variable that indicates the custom prefix for the contact's name |
| taxNumber | string | optional | Tax Identification Number (TIN) |
| branchCode | string | optional | The 5-digit number that identifies the branch of your contact's business |
| address | string | optional | The address registered for the branch. |
| subDistrict | string | optional | Sub-district of the contact's address |
| district | string | optional | District of the contact's address |
| province | string | optional | Province of the contact's address |
| country | string | optional | Country of the contact's address |
| postCode | string | optional | Post code of the contact's address |
| callCenterNumber | string | optional | Call center number. |
| faxNumber | string | optional | Fax number. |
| string | optional | Email address of the contact | |
| website | string | optional | Website URL. |
| contactFirstName | string | optional | First name of the contactable person |
| contactLastName | string | optional | Last name of the contactable person |
| contactNickName | string | optional | Nickname of the contactable person |
| contactPosition | string | optional | Position of the contactable person |
| contactPhoneNumber | string | optional | Phone number of the contactable person |
| contactEmail | string | optional | Email of the contactable person |
| purchaseAccount | string | optional | If the contact is a seller, PEAK will record the transaction in this account |
| sellAccount | string | optional | If the contact is a buyer, PEAK will record the transaction in this account |
| bankId | integer? | optional | Bank ID for bank account. |
| bankBranch | string | optional | Bank branch name. |
| bankAccountNo | string | optional | Bank account number. |
| bankAccountName | string | optional | Bank account name. |
| id | string | optional | The Unique Identifier will generated by PEAK for referencing the contacts |
| code | string | optional | Code of the contact that will be displayed in PEAK |
Response
{
"PeakContacts": {
"resCode": "200",
"resDesc": "PeakContacts have Completed",
"contacts": [{
"id": "917c3e8f-b315-4968-b8cc-08e2220d8682",
"code": "C01401",
"name": "Company Name",
"type": 2,
"taxNumber": "0105557083391",
"branchCode": "00000",
"address": "...",
"subDistrict": "...",
"district": "...",
"province": "กรุงเทพมหานคร",
"country": "Thailand",
"postCode": "10220",
"email": "",
"purchaseAccount": "212101",
"sellAccount": "113101",
"resCode": "200",
"resDesc": "Success"
}]
}
}
CreditNote
4 tools
CreateCreditNote
Creates a credit note (ใบลดหนี้) in PEAK Account to reduce the amount owed on a previously issued invoice or tax invoice. Use this when: goods are returned, price was incorrect, or discount is granted after invoicing. Returns the credit note which will reduce the customer's outstanding balance.
1 required · 45 optional
CreateCreditNote
Creates a credit note (ใบลดหนี้) in PEAK Account to reduce the amount owed on a previously issued invoice or tax invoice. Use this when: goods are returned, price was incorrect, or discount is granted after invoicing. Returns the credit note which will reduce the customer's outstanding balance.
| Parameter | Type | Description | |||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| products | array[InvoiceProduct] | required | An array of objects that will contain various data for the list of products or servicesarray[InvoiceProduct] fields
|
||||||||||||||||||||||||||||
| transactionType | integer? | optional | The numerical code indicating the type of document for issuing a credit note (0 = None, 1 = Quotation, 2 = Invoice, 3 = Receipt, 4 = TaxInvoice, 5 = CreditNote, 6 = BillingNote, 7 = DebitNote, 11 = Dailyjournal) | ||||||||||||||||||||||||||||
| transactionId | string | optional | The Unique Identifier of the document for which a credit note is to be issued | ||||||||||||||||||||||||||||
| transactionCode | string | optional | The code of the document for which a credit note is to be issued | ||||||||||||||||||||||||||||
| reasonType | integer? | optional | The numerical code indicating the reason for issuing a credit note (0 = None, 1 = PromotionAndMarketing, 2 = OfficeUse, 3 = ProductionUse, 4 = ServiceUse, 5 = Donation, 6 = DamageOrLoss, 7 = Others) | ||||||||||||||||||||||||||||
| creditNoteStyleType | integer? | optional | The numerical code indicating the type of credit note display (0 = General, 1 = ThaiPopular) | ||||||||||||||||||||||||||||
| reasonDescription | string | optional | The description of reason for issuing a credit note | ||||||||||||||||||||||||||||
| goodsReturn | integer? | optional | Whether this credit note involves a product return (0 = No, 1 = Yes) | ||||||||||||||||||||||||||||
| code | string | optional | The code displayed in the PEAK. If no value is provided, PEAK will generate it automatically | ||||||||||||||||||||||||||||
| issuedDate | string | optional | Document issuance date | ||||||||||||||||||||||||||||
| dueDate | string | optional | Document due date, which must be after the document issuance date | ||||||||||||||||||||||||||||
| contactId | string | optional | Unique Identifier of the contact associated with the document | ||||||||||||||||||||||||||||
| contactCode | string | optional | Code of the contact associated with the document (If contactId has been assigned a value, contactCode is not required) | ||||||||||||||||||||||||||||
| reference | string | optional | Reference information of the document | ||||||||||||||||||||||||||||
| remark | string | optional | Additional remarks or notes | ||||||||||||||||||||||||||||
| taxStatus | integer? | optional | Specify the tax status of the document to indicate whether the price includes tax or the tax is separate (0 = ExcludeTax, 1 = IncludeTax, 2 = NonTax) | ||||||||||||||||||||||||||||
| discountTotal | string | optional | The total discount should not exceed the net total of the document or be greater than 100%. Additionally, it can only be applied when the tax type of each item is the same | ||||||||||||||||||||||||||||
| isTaxInvoice | integer? | optional | Whether the document can be used as a tax invoice (0 = No, 1 = Yes) | ||||||||||||||||||||||||||||
| tags | array[String] | optional | Label attached to someone or something for the purpose of identification or to give other information | ||||||||||||||||||||||||||||
| status | string | optional | Status of the document, which can have multiple states such as Draft, Approve, Voided, etc | ||||||||||||||||||||||||||||
| preTaxAmount | number? | optional | Amount before tax is applied (If value is null, PEAK will calculate it automatically) | ||||||||||||||||||||||||||||
| vatAmount | number? | optional | Tax collected from the increased value of products or services (If value is null, PEAK will calculate it automatically) | ||||||||||||||||||||||||||||
| netAmount | number? | optional | Total value of the document after tax and discounts have been applied (If value is null, PEAK will calculate it automatically) | ||||||||||||||||||||||||||||
| paymentMethodCode | string | optional | Payment method code. Required to record a paid credit note. | ||||||||||||||||||||||||||||
| paymentMethodId | string | optional | The Unique Identifier of the payment method | ||||||||||||||||||||||||||||
| paymentAmount | number? | optional | Payment amount | ||||||||||||||||||||||||||||
| paymentDate | string | optional | Payment date in the format yyyyMMdd | ||||||||||||||||||||||||||||
| paymentAccountCode | string | optional | Account code to be used for recording financial transactions | ||||||||||||||||||||||||||||
| paymentAccountSubId | string | optional | Sub account Unique Identifier to be used for recording financial transactions | ||||||||||||||||||||||||||||
| paymentAccountSubCode | string | optional | Sub account code to be used for recording financial transactions | ||||||||||||||||||||||||||||
| paymentNote | string | optional | Additional remarks or notes for that specific payment received | ||||||||||||||||||||||||||||
| isCheque | integer? | optional | Whether this payment is made by Cheque (0 = No, 1 = Yes) | ||||||||||||||||||||||||||||
| paidPaymentsWithHoldingTaxAmount | string | optional | Withholding tax amount for the payment | ||||||||||||||||||||||||||||
| currencyId | integer? | optional | Currency ID for foreign currency transactions | ||||||||||||||||||||||||||||
| exchangeRate | number? | optional | Exchange rate for foreign currency transactions | ||||||||||||||||||||||||||||
| returnPaymentMethodCode | string | optional | Payment method code for return payment | ||||||||||||||||||||||||||||
| returnPaymentMethodId | string | optional | The Unique Identifier of the return payment method | ||||||||||||||||||||||||||||
| returnPaymentAmount | number? | optional | Return payment amount | ||||||||||||||||||||||||||||
| returnPaymentDate | string | optional | Return payment date in the format yyyyMMdd | ||||||||||||||||||||||||||||
| returnPaymentAccountCode | string | optional | Account code to be used for recording return payment transactions | ||||||||||||||||||||||||||||
| returnPaymentAccountSubId | string | optional | Sub account Unique Identifier to be used for recording return payment transactions | ||||||||||||||||||||||||||||
| returnPaymentAccountSubCode | string | optional | Sub account code to be used for recording return payment transactions | ||||||||||||||||||||||||||||
| returnPaymentNote | string | optional | Additional remarks or notes for the return payment | ||||||||||||||||||||||||||||
| returnPaymentIsCheque | integer? | optional | Whether the return payment is made by Cheque (0 = No, 1 = Yes) | ||||||||||||||||||||||||||||
| returnPaymentWithHoldingTaxAmount | string | optional | Withholding tax amount for the return payment | ||||||||||||||||||||||||||||
| getResult | integer? | optional | Numeric code used to reduce the amount of response data received |
Response
{
"PeakCreditNotes": {
"resCode": "200",
"resDesc": "PeakCreditNotes have Completed",
"creditNotes": [{
"transactionId": "6efe1b39-c944-4412-ba81-209a6933bac7",
"transactionType": 102,
"creditNoteStyleType": 1,
"reasonType": 1,
"reasonDescription": "...",
"goodsReturn": 1,
"transactions": {
"id": "5c707ff3-bea4-4475-8595-8d91a592403a",
"code": "CNT0800124",
"issuedDate": "20230815",
"products": [{ "id": "guid", "productCode": "PP20180917", "accountCode": "410101", "description": "...", "quantity": 21, "price": 220, "vatType": 2 }],
"resCode": "200",
"resDesc": "Success"
},
"preTaxAmount": 5140,
"netAmount": 5140,
"vatAmount": 0,
"whtAmount": 154.2,
"resCode": "200",
"resDesc": "Success"
}]
}
}
CreateCreditNoteExpense
Creates a credit note expense in Peak Account. Returns the created credit note expense details.
1 required · 45 optional
CreateCreditNoteExpense
Creates a credit note expense in Peak Account. Returns the created credit note expense details.
| Parameter | Type | Description | |||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| products | array[InvoiceProduct] | required | An array of objects that will contain various data for the list of products or servicesarray[InvoiceProduct] fields
|
||||||||||||||||||||||||||||
| transactionType | integer? | optional | The numerical code indicating the type of document for issuing a credit note (0 = None, 1 = Quotation, 2 = Invoice, 3 = Receipt, 4 = TaxInvoice, 5 = CreditNote, 6 = BillingNote, 7 = DebitNote, 11 = Dailyjournal) | ||||||||||||||||||||||||||||
| transactionId | string | optional | The Unique Identifier of the document for which a credit note is to be issued | ||||||||||||||||||||||||||||
| transactionCode | string | optional | The code of the document for which a credit note is to be issued | ||||||||||||||||||||||||||||
| reasonType | integer? | optional | The numerical code indicating the reason for issuing a credit note (0 = None, 1 = PromotionAndMarketing, 2 = OfficeUse, 3 = ProductionUse, 4 = ServiceUse, 5 = Donation, 6 = DamageOrLoss, 7 = Others) | ||||||||||||||||||||||||||||
| creditNoteStyleType | integer? | optional | The numerical code indicating the type of credit note display (0 = General, 1 = ThaiPopular) | ||||||||||||||||||||||||||||
| reasonDescription | string | optional | The description of reason for issuing a credit note | ||||||||||||||||||||||||||||
| goodsReturn | integer? | optional | Whether this credit note involves a product return (0 = No, 1 = Yes) | ||||||||||||||||||||||||||||
| code | string | optional | The code displayed in the PEAK. If no value is provided, PEAK will generate it automatically | ||||||||||||||||||||||||||||
| issuedDate | string | optional | Document issuance date | ||||||||||||||||||||||||||||
| dueDate | string | optional | Document due date, which must be after the document issuance date | ||||||||||||||||||||||||||||
| contactId | string | optional | Unique Identifier of the contact associated with the document | ||||||||||||||||||||||||||||
| contactCode | string | optional | Code of the contact associated with the document (If contactId has been assigned a value, contactCode is not required) | ||||||||||||||||||||||||||||
| reference | string | optional | Reference information of the document | ||||||||||||||||||||||||||||
| remark | string | optional | Additional remarks or notes | ||||||||||||||||||||||||||||
| taxStatus | integer? | optional | Specify the tax status of the document to indicate whether the price includes tax or the tax is separate (0 = ExcludeTax, 1 = IncludeTax, 2 = NonTax) | ||||||||||||||||||||||||||||
| discountTotal | string | optional | The total discount should not exceed the net total of the document or be greater than 100%. Additionally, it can only be applied when the tax type of each item is the same | ||||||||||||||||||||||||||||
| isTaxInvoice | integer? | optional | Whether the document can be used as a tax invoice (0 = No, 1 = Yes) | ||||||||||||||||||||||||||||
| tags | array[String] | optional | Label attached to someone or something for the purpose of identification or to give other information | ||||||||||||||||||||||||||||
| status | string | optional | Status of the document, which can have multiple states such as Draft, Approve, Voided, etc | ||||||||||||||||||||||||||||
| preTaxAmount | number? | optional | Amount before tax is applied (If value is null, PEAK will calculate it automatically) | ||||||||||||||||||||||||||||
| vatAmount | number? | optional | Tax collected from the increased value of products or services (If value is null, PEAK will calculate it automatically) | ||||||||||||||||||||||||||||
| netAmount | number? | optional | Total value of the document after tax and discounts have been applied (If value is null, PEAK will calculate it automatically) | ||||||||||||||||||||||||||||
| paymentMethodCode | string | optional | Payment method code. Required to record a paid credit note expense. | ||||||||||||||||||||||||||||
| paymentMethodId | string | optional | The Unique Identifier of the payment method | ||||||||||||||||||||||||||||
| paymentAmount | number? | optional | Payment amount | ||||||||||||||||||||||||||||
| paymentDate | string | optional | Payment date in the format yyyyMMdd | ||||||||||||||||||||||||||||
| paymentAccountCode | string | optional | Account code to be used for recording financial transactions | ||||||||||||||||||||||||||||
| paymentAccountSubId | string | optional | Sub account Unique Identifier to be used for recording financial transactions | ||||||||||||||||||||||||||||
| paymentAccountSubCode | string | optional | Sub account code to be used for recording financial transactions | ||||||||||||||||||||||||||||
| paymentNote | string | optional | Additional remarks or notes for that specific payment received | ||||||||||||||||||||||||||||
| isCheque | integer? | optional | Whether this payment is made by Cheque (0 = No, 1 = Yes) | ||||||||||||||||||||||||||||
| paidPaymentsWithHoldingTaxAmount | string | optional | Withholding tax amount for the payment | ||||||||||||||||||||||||||||
| currencyId | integer? | optional | Currency ID for foreign currency transactions | ||||||||||||||||||||||||||||
| exchangeRate | number? | optional | Exchange rate for foreign currency transactions | ||||||||||||||||||||||||||||
| returnPaymentMethodCode | string | optional | Payment method code for return payment | ||||||||||||||||||||||||||||
| returnPaymentMethodId | string | optional | The Unique Identifier of the return payment method | ||||||||||||||||||||||||||||
| returnPaymentAmount | number? | optional | Return payment amount | ||||||||||||||||||||||||||||
| returnPaymentDate | string | optional | Return payment date in the format yyyyMMdd | ||||||||||||||||||||||||||||
| returnPaymentAccountCode | string | optional | Account code to be used for recording return payment transactions | ||||||||||||||||||||||||||||
| returnPaymentAccountSubId | string | optional | Sub account Unique Identifier to be used for recording return payment transactions | ||||||||||||||||||||||||||||
| returnPaymentAccountSubCode | string | optional | Sub account code to be used for recording return payment transactions | ||||||||||||||||||||||||||||
| returnPaymentNote | string | optional | Additional remarks or notes for the return payment | ||||||||||||||||||||||||||||
| returnPaymentIsCheque | integer? | optional | Whether the return payment is made by Cheque (0 = No, 1 = Yes) | ||||||||||||||||||||||||||||
| returnPaymentWithHoldingTaxAmount | string | optional | Withholding tax amount for the return payment | ||||||||||||||||||||||||||||
| getResult | integer? | optional | Numeric code used to reduce the amount of response data received |
Response
{
"PeakCreditNotesExpenses": {
"resCode": "200",
"resDesc": "PeakCreditNotesExpenses have Completed",
"creditNotesExpenses": [{
"transactionId": "6efe1b39-c944-4412-ba81-209a6933bac7",
"transactionType": 102,
"creditNoteStyleType": 1,
"reasonType": 1,
"reasonDescription": "...",
"goodsReturn": 1,
"transactions": {
"id": "5c707ff3-bea4-4475-8595-8d91a592403a",
"code": "CNX0800124",
"issuedDate": "20230815",
"products": [{ "id": "guid", "productCode": "PP20180917", "accountCode": "410101", "description": "...", "quantity": 21, "price": 220, "vatType": 2 }],
"resCode": "200",
"resDesc": "Success"
},
"preTaxAmount": 5140,
"netAmount": 5140,
"vatAmount": 0,
"whtAmount": 154.2,
"resCode": "200",
"resDesc": "Success"
}]
}
}
GetCreditNoteExpense
Gets credit note expenses from Peak Account. Filter by date range, status, or search text. Returns a list of credit note expenses with pagination.
0 required · 6 optional
GetCreditNoteExpense
Gets credit note expenses from Peak Account. Filter by date range, status, or search text. Returns a list of credit note expenses with pagination.
| Parameter | Type | Description | |
|---|---|---|---|
| dateStart | string | optional | Start date for filtering credit note expenses (format yyyyMMdd). |
| dateEnd | string | optional | End date for filtering credit note expenses (format yyyyMMdd). |
| status | integer? | optional | Filter by document status (0 = None, 1 = Voided, 2 = Draft, 3 = AwaitApproval, 4 = Outstanding, 5 = Overdue, 6 = PaidOrAwaitReceipt) |
| searchText | string | optional | Text to search for in credit note expenses. |
| limit | integer? | optional | Maximum number of entries to retrieve. |
| page | integer? | optional | Page number for displaying data, where each page will show 10 entries. |
Response
{
"PeakCreditNotesExpenses": {
"creditNotesExpenses": [
{
"code": "CNX0600027",
"issuedDate": "20230612",
"contactId": "079fa9e4-de10-4020-b290-eae29cdbc1ca",
"contactCode": "C00002",
"netAmount": 10,
"documentLink": "https://...",
"onlineViewLink": "https://...",
"resCode": "200",
"resDesc": "Success"
}
],
"totalCreditNoteExpense": 1,
"resDesc": "PeakCreditNotesExpenses have Completed",
"resCode": "200"
}
}
GetCreditNote
Gets credit notes from Peak Account. Filter by date range, status, or search text. Returns a list of credit notes with pagination.
0 required · 6 optional
GetCreditNote
Gets credit notes from Peak Account. Filter by date range, status, or search text. Returns a list of credit notes with pagination.
| Parameter | Type | Description | |
|---|---|---|---|
| dateStart | string | optional | Start date for filtering credit notes (format yyyyMMdd). |
| dateEnd | string | optional | End date for filtering credit notes (format yyyyMMdd). |
| status | integer? | optional | Filter by document status (0 = None, 1 = Voided, 2 = Draft, 3 = AwaitApproval, 4 = Outstanding, 5 = Overdue, 6 = PaidOrAwaitReceipt) |
| searchText | string | optional | Text to search for in credit notes. |
| limit | integer? | optional | Maximum number of entries to retrieve. |
| page | integer? | optional | Page number for displaying data, where each page will show 10 entries. |
Response
{
"PeakCreditNotes": {
"creditNotes": [
{
"code": "CNT0600027",
"issuedDate": "20230612",
"contactId": "079fa9e4-de10-4020-b290-eae29cdbc1ca",
"contactCode": "C00002",
"netAmount": 10,
"documentLink": "https://...",
"onlineViewLink": "https://...",
"resCode": "200",
"resDesc": "Success"
}
],
"totalCreditNote": 1,
"resDesc": "PeakCreditNotes have Completed",
"resCode": "200"
}
}
DailyJournal
1 tool
GetAccountCodes
Retrieves all chart of accounts (ผังบัญชี) configured in PEAK Account. Call this tool to find the correct accountCode before creating documents, especially when the product/service doesn't have a default account set. Common account codes: - 410101 = รายได้จากการขาย (Sales from product) - 114102 = สินค้าสำเร็จรูป (Finished goods) - 212101 = เจ้าหนี้การค้า (Accounts Payable) - 113101 = ลูกหนี้การค้า (Accounts Receivable)Returns id, code, name, and type for each account.
no params
GetAccountCodes
Retrieves all chart of accounts (ผังบัญชี) configured in PEAK Account. Call this tool to find the correct accountCode before creating documents, especially when the product/service doesn't have a default account set. Common account codes: - 410101 = รายได้จากการขาย (Sales from product) - 114102 = สินค้าสำเร็จรูป (Finished goods) - 212101 = เจ้าหนี้การค้า (Accounts Payable) - 113101 = ลูกหนี้การค้า (Accounts Receivable)Returns id, code, name, and type for each account.
No parameters required.
Response
{
"PeakAccountCode": {
"resCode": "200",
"resDesc": "Success",
"data": [{
"id": "guid",
"code": "11000",
"name": "Cash / เงินสด",
"type": "..."
}]
}
}
Expense
2 tools
CreateExpense
Creates an expense record in PEAK Account for tracking money paid out (รายจ่าย). Use this for: vendor bills, operating costs, purchases from suppliers. IMPORTANT: Before calling this tool: 1. contactId or contactCode — the vendor/supplier (use SearchContacts or CreateContact) 2. At least one product/service in the products array (use SearchProducts or accountCode to find) To record payment in the same call, include paymentMethodCode and paymentAmount. For withholding tax: include withHoldingTaxAmount at the document level.
1 required · 29 optional
CreateExpense
Creates an expense record in PEAK Account for tracking money paid out (รายจ่าย). Use this for: vendor bills, operating costs, purchases from suppliers. IMPORTANT: Before calling this tool: 1. contactId or contactCode — the vendor/supplier (use SearchContacts or CreateContact) 2. At least one product/service in the products array (use SearchProducts or accountCode to find) To record payment in the same call, include paymentMethodCode and paymentAmount. For withholding tax: include withHoldingTaxAmount at the document level.
| Parameter | Type | Description | |||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| products | array[InvoiceProduct] | required | List of products/services. Each item: productCode, accountCode, description, price, quantity, vatType.array[InvoiceProduct] fields
|
||||||||||||||||||||||||||||
| contactCode | string | optional | Contact code of the vendor/supplier (e.g. 'C001'). Use SearchContacts if unknown. | ||||||||||||||||||||||||||||
| contactId | string | optional | Contact ID of the vendor/supplier. | ||||||||||||||||||||||||||||
| status | string | optional | Document status: 'Draft' or 'Approve'. Default is 'Draft'. | ||||||||||||||||||||||||||||
| code | string | optional | Expense document code. Peak will auto-generate if omitted. | ||||||||||||||||||||||||||||
| issuedDate | string | optional | Document issuance date (yyyyMMdd). Defaults to today. | ||||||||||||||||||||||||||||
| dueDate | string | optional | Document due date (yyyyMMdd). Must be after issuedDate. Defaults to 7 days from today. | ||||||||||||||||||||||||||||
| reference | string | optional | Reference information for the document. | ||||||||||||||||||||||||||||
| remark | string | optional | Additional remarks or notes. | ||||||||||||||||||||||||||||
| taxStatus | integer? | optional | Tax status indicating whether price includes tax or tax is separate. (0 = ExcludeTax, 1 = IncludeTax, 2 = NonTax) | ||||||||||||||||||||||||||||
| discountTotal | string | optional | Total discount. Cannot exceed net total and only applies when all items have the same tax type. | ||||||||||||||||||||||||||||
| isTaxInvoice | integer? | optional | Whether the document can be used as a tax invoice (0 = No, 1 = Yes) | ||||||||||||||||||||||||||||
| tags | array[String] | optional | Labels/tags attached to the document. | ||||||||||||||||||||||||||||
| withHoldingTaxAmount | string | optional | Withholding tax amount for the document. | ||||||||||||||||||||||||||||
| preTaxAmount | number? | optional | Amount before tax. PEAK calculates automatically if omitted. | ||||||||||||||||||||||||||||
| vatAmount | number? | optional | VAT amount. PEAK calculates automatically if omitted. | ||||||||||||||||||||||||||||
| netAmount | number? | optional | Net amount after tax and discounts. PEAK calculates automatically if omitted. | ||||||||||||||||||||||||||||
| paymentMethodCode | string | optional | Payment method code (e.g. 'CSH260'). Required to record a paid expense. | ||||||||||||||||||||||||||||
| paymentMethodId | string | optional | Payment method ID. Use instead of paymentMethodCode if available. | ||||||||||||||||||||||||||||
| paymentAmount | number? | optional | Payment amount. | ||||||||||||||||||||||||||||
| paymentDate | string | optional | Payment date (yyyyMMdd). Defaults to today if paying. | ||||||||||||||||||||||||||||
| paymentAccountCode | string | optional | Payment account code. | ||||||||||||||||||||||||||||
| paymentAccountSubId | string | optional | Payment sub-account ID. | ||||||||||||||||||||||||||||
| paymentAccountSubCode | string | optional | Payment sub-account code. | ||||||||||||||||||||||||||||
| paymentNote | string | optional | Payment note. | ||||||||||||||||||||||||||||
| isCheque | integer? | optional | Whether payment is by cheque (0 = No, 1 = Yes) | ||||||||||||||||||||||||||||
| paidPaymentsWithHoldingTaxAmount | string | optional | Withholding tax amount for the payment. | ||||||||||||||||||||||||||||
| currencyId | integer? | optional | Currency ID for foreign currency transactions. | ||||||||||||||||||||||||||||
| exchangeRate | number? | optional | Exchange rate for foreign currency transactions. | ||||||||||||||||||||||||||||
| getResult | integer? | optional | Numeric code to reduce response data. |
Response
{
"PeakExpenses": {
"resCode": "200",
"resDesc": "Success",
"data": [{
"id": "guid",
"code": "EXP20240001",
"status": "Draft",
"issuedDate": "20240101",
"dueDate": "20240108",
"preTaxAmount": 1000.00,
"vatAmount": 70.00,
"netAmount": 1070.00
}]
}
}
GetExpense
Retrieve one or more Expenses by ID, document code, or reference number. Lookup options (use at least one): id, code (e.g. "EXP-2024-00321"), or reference. Use limit + page to paginate multiple results. Common use cases: - Check remainAmount - Verify Approved status before making payment
0 required · 6 optional
GetExpense
Retrieve one or more Expenses by ID, document code, or reference number. Lookup options (use at least one): id, code (e.g. "EXP-2024-00321"), or reference. Use limit + page to paginate multiple results. Common use cases: - Check remainAmount - Verify Approved status before making payment
| Parameter | Type | Description | |
|---|---|---|---|
| code | string | optional | Document code to search for (e.g. 'EXP2023080003'). |
| id | string | optional | Unique identifier of the expense. |
| reference | string | optional | Reference value to search for linked documents. |
| limit | integer? | optional | Maximum number of entries to retrieve. |
| page | integer? | optional | Page number (each page shows 10 entries). |
| getResult | integer? | optional | Numeric code to reduce the amount of response data received. |
Response
{
"PeakExpenses": {
"resCode": "200",
"resDesc": "Success",
"data": [{
"id": "guid",
"code": "EXP20240001",
"status": "Draft",
"issuedDate": "20240101",
"dueDate": "20240108",
"preTaxAmount": 1000.00,
"vatAmount": 70.00,
"netAmount": 1070.00
}]
}
}
Invoice
2 tools
CreateInvoice
Creates a sales invoice in PEAK Account for billing a customer. IMPORTANT: Before calling this tool, make sure you have: 1. contactId or contactCode — use SearchContacts first if unknown 2. At least one product/service in the products array (use SearchProducts or accountCode to find) To record payment in the same call, include paymentMethodCode and paymentAmount.
1 required · 29 optional
CreateInvoice
Creates a sales invoice in PEAK Account for billing a customer. IMPORTANT: Before calling this tool, make sure you have: 1. contactId or contactCode — use SearchContacts first if unknown 2. At least one product/service in the products array (use SearchProducts or accountCode to find) To record payment in the same call, include paymentMethodCode and paymentAmount.
| Parameter | Type | Description | |||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| products | array[InvoiceProduct] | required | List of products/services. Each item: productCode, accountCode, description, price, quantity, vatType.array[InvoiceProduct] fields
|
||||||||||||||||||||||||||||
| contactCode | string | optional | Contact code of the customer (e.g. 'C001'). Use SearchContacts if unknown. | ||||||||||||||||||||||||||||
| contactId | string | optional | Contact ID of the customer. | ||||||||||||||||||||||||||||
| status | string | optional | Document status: 'Draft' or 'Approve'. Default is 'Draft'. | ||||||||||||||||||||||||||||
| code | string | optional | Invoice document code. Peak will auto-generate if omitted. | ||||||||||||||||||||||||||||
| issuedDate | string | optional | Document issuance date (yyyyMMdd). Defaults to today. | ||||||||||||||||||||||||||||
| dueDate | string | optional | Document due date (yyyyMMdd). Must be after issuedDate. Defaults to 7 days from today. | ||||||||||||||||||||||||||||
| reference | string | optional | Reference information for the document. | ||||||||||||||||||||||||||||
| remark | string | optional | Additional remarks or notes. | ||||||||||||||||||||||||||||
| taxStatus | integer? | optional | Tax status indicating whether price includes tax or tax is separate. (0 = ExcludeTax, 1 = IncludeTax, 2 = NonTax) | ||||||||||||||||||||||||||||
| discountTotal | string | optional | Total discount. Cannot exceed net total and only applies when all items have the same tax type. | ||||||||||||||||||||||||||||
| isTaxInvoice | integer? | optional | Whether the document can be used as a tax invoice (0 = No, 1 = Yes) | ||||||||||||||||||||||||||||
| tags | array[String] | optional | Labels/tags attached to the document. | ||||||||||||||||||||||||||||
| withHoldingTaxAmount | string | optional | Withholding tax amount for the document. | ||||||||||||||||||||||||||||
| preTaxAmount | number? | optional | Amount before tax. PEAK calculates automatically if omitted. | ||||||||||||||||||||||||||||
| vatAmount | number? | optional | VAT amount. PEAK calculates automatically if omitted. | ||||||||||||||||||||||||||||
| netAmount | number? | optional | Net amount after tax and discounts. PEAK calculates automatically if omitted. | ||||||||||||||||||||||||||||
| paymentMethodCode | string | optional | Payment method code (e.g. 'CSH260'). Required to record a paid invoice. | ||||||||||||||||||||||||||||
| paymentMethodId | string | optional | Payment method ID. Use instead of paymentMethodCode if available. | ||||||||||||||||||||||||||||
| paymentAmount | number? | optional | Payment amount. | ||||||||||||||||||||||||||||
| paymentDate | string | optional | Payment date (yyyyMMdd). Defaults to today if paying. | ||||||||||||||||||||||||||||
| paymentAccountCode | string | optional | Payment account code. | ||||||||||||||||||||||||||||
| paymentAccountSubId | string | optional | Payment sub-account ID. | ||||||||||||||||||||||||||||
| paymentAccountSubCode | string | optional | Payment sub-account code. | ||||||||||||||||||||||||||||
| paymentNote | string | optional | Payment note. | ||||||||||||||||||||||||||||
| isCheque | integer? | optional | Whether payment is by cheque (0 = No, 1 = Yes) | ||||||||||||||||||||||||||||
| paidPaymentsWithHoldingTaxAmount | string | optional | Withholding tax amount for the payment. | ||||||||||||||||||||||||||||
| currencyId | integer? | optional | Currency ID for foreign currency transactions. | ||||||||||||||||||||||||||||
| exchangeRate | number? | optional | Exchange rate for foreign currency transactions. | ||||||||||||||||||||||||||||
| getResult | integer? | optional | Numeric code to reduce the amount of response data received. |
Response
{
"PeakInvoices": {
"resCode": "200",
"resDesc": "Success",
"data": [{
"id": "guid",
"code": "INV20240001",
"status": "Draft",
"issuedDate": "20240101",
"dueDate": "20240108",
"preTaxAmount": 1000.00,
"vatAmount": 70.00,
"netAmount": 1070.00
}]
}
}
GetInvoice
Retrieve one or more Invoices by ID, document code, or reference number. Lookup options (use at least one): id, code (e.g. "INV202412005"), or reference. Use limit + page to paginate multiple results. Common use cases: - Check remainAmount - Verify Approved status before issuing a Receipt
0 required · 6 optional
GetInvoice
Retrieve one or more Invoices by ID, document code, or reference number. Lookup options (use at least one): id, code (e.g. "INV202412005"), or reference. Use limit + page to paginate multiple results. Common use cases: - Check remainAmount - Verify Approved status before issuing a Receipt
| Parameter | Type | Description | |
|---|---|---|---|
| reference | string | optional | If a document has references or is created based on other documents, you can use the value "Reference" to indicate the field that allows searching for that document. This field can be used to link or retrieve the document by its reference value. |
| code | string | optional | Document code to search for (e.g. 'IVS202308020'). |
| id | string | optional | The Unique Identifier generated by PEAK to identify data. |
| limit | integer? | optional | Maximum number of entries to retrieve. |
| page | integer? | optional | Page number for displaying data, where each page will show 10 entries. |
| getResult | integer? | optional | Numeric code used to reduce the amount of response data received. |
Response
{
"PeakInvoices": {
"resCode": "200",
"resDesc": "PeakInvoices have Completed",
"invoices": [{
"id": "77dd1ceb-a0f6-44bb-ae9c-525cc8026b34",
"code": "IVS202308020",
"issuedDate": "20230815",
"dueDate": "20230822",
"contactId": "guid",
"contactCode": "C01401",
"status": "Approve",
"isTaxInvoice": 0,
"preTaxAmount": 300,
"vatAmount": 21,
"netAmount": 321,
"whtAmount": 0,
"paymentAmount": 321,
"remainAmount": 0,
"documentLink": "https://...",
"onlineViewLink": "https://...",
"remark": "...",
"taxStatus": 0,
"products": [{ "id": "guid", "productCode": "P001", "accountCode": "410101", "description": "...", "quantity": 1, "price": 300, "vatType": 3 }],
"paidPayments": [{ "paymentDate": "20230815", "paymentTotal": 321, "payments": [{ "paymentMethodCode": "CSH260", "amount": 321 }], "journals": [{ "id": "guid", "code": "RV-..." }] }],
"journals": [{ "id": "guid", "code": "SV-..." }]
}]
}
}
PaymentMethod
2 tools
GetPaymentMethod
Gets payment methods from Peak Account. Returns payment methods matching the given filters.
0 required · 5 optional
GetPaymentMethod
Gets payment methods from Peak Account. Returns payment methods matching the given filters.
| Parameter | Type | Description | |
|---|---|---|---|
| code | string | optional | Filter by payment method code |
| id | string | optional | Filter by payment method unique identifier |
| limit | integer? | optional | Maximum number of records to retrieve |
| page | integer? | optional | Page number for pagination |
| getResult | integer? | optional | Numeric code used to reduce the amount of response data received |
Response
{
"PeakPaymentMethods": {
"paymentMethods": [
{
"id": "c7fb1bae-ff40-4856-9214-b4e30719f233",
"code": "BSV015",
"name": "TEST GS BANK",
"type": 2,
"memo": "test quick add",
"carringBalanceValue": 5000,
"bankId": 18,
"bankName": "ธนาคารออมสิน",
"accountType": 2,
"accountNumber": "888-999-450",
"isHaveCheque": 1,
"resCode": "200",
"resDesc": "Success"
}
],
"totalPaymentMethod": 973,
"resDesc": "PeakPaymentMethods have Completed",
"resCode": "200"
}
}
CreatePaymentMethod
Creates payment methods in Peak Account. Returns the result of each payment method creation.
0 required · 13 optional
CreatePaymentMethod
Creates payment methods in Peak Account. Returns the result of each payment method creation.
| Parameter | Type | Description | |
|---|---|---|---|
| id | string | optional | The Unique Identifier generated by PEAK to identify data |
| code | string | optional | The code displayed in the PEAK |
| name | string | optional | Payment method name |
| type | integer? | optional | Type of payment method (0 = Others, 1 = Cash, 2 = BankAccount, 3 = CreditCard, 4 = EWallet) |
| memo | string | optional | Additional notes or remarks about the product or service |
| carringBalanceValue | integer? | optional | Carrying balance value |
| bankId | integer? | optional | The numerical code that indicates a financial institution (If type is 2, bankId is required) |
| eWalletId | integer? | optional | E-Wallet account number or identifier (If type is 4, accountCode is required) |
| bankName | string | optional | Name of the bank not available in the system (If type is 0, bankName is required) |
| accountType | integer? | optional | Type of bank account (1 = Current, 2 = Savings, 3 = FixedDeposit) |
| accountNumber | string | optional | Bank account number |
| isHaveCheque | integer? | optional | Whether this bank account can issue cheques (0 = No, 1 = Yes) |
| accountCode | string | optional | Account to record transactions from the E-Wallet (If type is 4, accountCode is required) |
Response
{
"PeakPaymentMethods": {
"paymentMethods": [
{
"id": "9c6a2aab-0d03-4e65-92fe-fdad517daa69",
"code": "BSV290",
"name": "Payment method's name",
"type": 2,
"carringBalanceValue": 125632,
"bankId": 10,
"bankName": "ธนาคารทิสโก้ จำกัด (มหาชน)",
"accountType": 2,
"accountNumber": "3011199912123",
"isHaveCheque": 1,
"resCode": "200",
"resDesc": "Success"
}
],
"resDesc": "PeakPaymentMethods have Completed",
"resCode": "200"
}
}
Product
2 tools
SearchProducts
Searches for products in Peak Account. Returns products matching the given filters. Returns: productId, productCode, name, price, vatType, unit — use productId when referencing items in other tools.
0 required · 4 optional
SearchProducts
Searches for products in Peak Account. Returns products matching the given filters. Returns: productId, productCode, name, price, vatType, unit — use productId when referencing items in other tools.
| Parameter | Type | Description | |
|---|---|---|---|
| year | string | optional | Filter by year (e.g. '2024'). |
| searchText | string | optional | Search keyword for product name or related data. |
| limit | integer? | optional | Maximum number of products to retrieve. |
| page | integer? | optional | Page number (each page shows 10 entries). |
Response
{
"PeakProducts": {
"resCode": "200",
"resDesc": "Success",
"data": [{
"id": "guid",
"code": "P001",
"name": "Product Name",
"type": 1,
"sellValue": 100.00,
"sellVatType": 3,
"purchaseValue": 80.00,
"purchaseVatType": 3
}]
}
}
CreateProduct
Creates a new product or service in Peak Account. Returns the created product details. Use this tool when the desired item does not yet exist in the system — call SearchProduct first to avoid creating duplicates. Returns: productId — save this to use as a line item reference in CreateInvoice, CreateExpense, CreatePurchaseOrder, etc.
1 required · 16 optional
CreateProduct
Creates a new product or service in Peak Account. Returns the created product details. Use this tool when the desired item does not yet exist in the system — call SearchProduct first to avoid creating duplicates. Returns: productId — save this to use as a line item reference in CreateInvoice, CreateExpense, CreatePurchaseOrder, etc.
| Parameter | Type | Description | |
|---|---|---|---|
| name | string | required | Product/service name. |
| type | integer | optional | Product/service type (1 = Product, 2 = Service). Default is 1. |
| code | string | optional | Product code displayed in PEAK. Peak will auto-generate if omitted. |
| description | string | optional | Additional description of the product/service. |
| sellValue | number | optional | Selling price per unit. |
| sellVatType | integer | optional | Selling tax rate (VAT Type). Default is 3. (1 = None, 2 = ZeroPercent, 3 = SevenPercent) |
| sellAccount | string | optional | Account code for selling transactions (e.g. '410101'). |
| purchaseValue | number? | optional | Purchase price per unit. |
| purchaseVatType | integer? | optional | Purchase tax rate (VAT Type). (1 = None, 2 = ZeroPercent, 3 = SevenPercent) |
| purchaseAccount | string | optional | Account code for purchase transactions (e.g. '114102'). |
| carryingBalanceValue | number? | optional | Carrying balance value. |
| carryingBalanceAmount | number? | optional | Carrying balance amount. |
| unitId | string | optional | Unit ID. |
| unitCode | string | optional | Unit code. |
| unitNameTh | string | optional | Unit name in Thai. |
| unitNameEn | string | optional | Unit name in English. |
| id | string | optional | Existing product ID (for referencing an existing product). |
Response
{
"PeakProducts": {
"resCode": "200",
"resDesc": "Success",
"data": [{
"id": "guid",
"code": "P001",
"name": "Product Name",
"type": 1
}]
}
}
PurchaseOrder
2 tools
CreatePurchaseOrder
Create a Purchase Order (PO) to formally request goods or services from a vendor. A PO captures the vendor, expected items, quantities, and prices before the actual expense is incurred. Workflow: PO → (convert to) Expense → Expense Payment Returns: purchaseOrderId and code — save these to pass into CreateExpense when converting the PO into an actual expense.
1 required · 28 optional
CreatePurchaseOrder
Create a Purchase Order (PO) to formally request goods or services from a vendor. A PO captures the vendor, expected items, quantities, and prices before the actual expense is incurred. Workflow: PO → (convert to) Expense → Expense Payment Returns: purchaseOrderId and code — save these to pass into CreateExpense when converting the PO into an actual expense.
| Parameter | Type | Description | |||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| products | array[InvoiceProduct] | required | An array of objects that will contain various data for the list of products or servicesarray[InvoiceProduct] fields
|
||||||||||||||||||||||||||||
| code | string | optional | The code displayed in the PEAK. If no value is provided, PEAK will generate it automatically | ||||||||||||||||||||||||||||
| issuedDate | string | optional | Document issuance date | ||||||||||||||||||||||||||||
| dueDate | string | optional | Document due date, which must be after the document issuance date | ||||||||||||||||||||||||||||
| contactId | string | optional | Unique Identifier of the contact associated with the document | ||||||||||||||||||||||||||||
| contactCode | string | optional | Code of the contact associated with the document (If contactId has been assigned a value, contactCode is not required) | ||||||||||||||||||||||||||||
| reference | string | optional | Reference information of the document | ||||||||||||||||||||||||||||
| remark | string | optional | Additional remarks or notes | ||||||||||||||||||||||||||||
| taxStatus | integer? | optional | Specify the tax status of the document to indicate whether the price includes tax or the tax is separate (0 = ExcludeTax, 1 = IncludeTax, 2 = NonTax) | ||||||||||||||||||||||||||||
| discountTotal | string | optional | The total discount should not exceed the net total of the document or be greater than 100%. Additionally, it can only be applied when the tax type of each item is the same | ||||||||||||||||||||||||||||
| isTaxInvoice | integer? | optional | Whether the document can be used as a tax invoice (0 = No, 1 = Yes) | ||||||||||||||||||||||||||||
| tags | array[String] | optional | Label attached to someone or something for the purpose of identification or to give other information | ||||||||||||||||||||||||||||
| status | string | optional | Status of the document, which can have multiple states such as Draft, Approve, Voided, etc | ||||||||||||||||||||||||||||
| preTaxAmount | number? | optional | Amount before tax is applied (If value is null, PEAK will calculate it automatically) | ||||||||||||||||||||||||||||
| vatAmount | number? | optional | Tax collected from the increased value of products or services (If value is null, PEAK will calculate it automatically) | ||||||||||||||||||||||||||||
| netAmount | number? | optional | Total value of the document after tax and discounts have been applied (If value is null, PEAK will calculate it automatically) | ||||||||||||||||||||||||||||
| paymentMethodCode | string | optional | Payment method code. Required to record a paid purchase order. | ||||||||||||||||||||||||||||
| paymentMethodId | string | optional | The Unique Identifier of the payment method | ||||||||||||||||||||||||||||
| paymentAmount | number? | optional | Payment amount | ||||||||||||||||||||||||||||
| paymentDate | string | optional | Payment date in the format yyyyMMdd | ||||||||||||||||||||||||||||
| paymentAccountCode | string | optional | Account code to be used for recording financial transactions | ||||||||||||||||||||||||||||
| paymentAccountSubId | string | optional | Sub account Unique Identifier to be used for recording financial transactions | ||||||||||||||||||||||||||||
| paymentAccountSubCode | string | optional | Sub account code to be used for recording financial transactions | ||||||||||||||||||||||||||||
| paymentNote | string | optional | Additional remarks or notes for that specific payment received | ||||||||||||||||||||||||||||
| isCheque | integer? | optional | Whether this payment is made by Cheque (0 = No, 1 = Yes) | ||||||||||||||||||||||||||||
| paidPaymentsWithHoldingTaxAmount | string | optional | Withholding tax amount for the payment | ||||||||||||||||||||||||||||
| currencyId | integer? | optional | Currency ID for foreign currency transactions | ||||||||||||||||||||||||||||
| exchangeRate | number? | optional | Exchange rate for foreign currency transactions | ||||||||||||||||||||||||||||
| getResult | integer? | optional | Numeric code used to reduce the amount of response data received |
Response
{
"PeakPurchaseOrders": {
"resCode": "200",
"resDesc": "PeakPurchaseOrders have Completed",
"purchaseOrders": [{
"id": "b6dbb6d7-b38e-4e2b-ac44-f321f38b4a3a",
"code": "PO-2023010004",
"issuedDate": "20230817",
"dueDate": "20230818",
"contactId": "917c3e8f-b315-4968-b8cc-08e2220d8682",
"contactCode": "C01401",
"status": "Approve",
"isTaxInvoice": 0,
"preTaxAmount": 200,
"vatAmount": 0,
"netAmount": 200,
"whtAmount": 0,
"taxStatus": 0,
"products": [{ "id": "guid", "accountCode": "114102", "description": "Design by Peak", "quantity": 1, "price": 200, "vatType": 1 }],
"resCode": "200",
"resDesc": "Success"
}]
}
}
GetPurchaseOrder
Retrieve the full details of a single Purchase Order by its ID, including status, line items, linked expenses, payment history, and remaining balance. Common use cases: - Check PO status (Draft / Approved / Partially Received / Closed) before taking next action - Confirm remaining balance before createExpense - Retrieve associated expenseId or journalId for downstream workflows
0 required · 6 optional
GetPurchaseOrder
Retrieve the full details of a single Purchase Order by its ID, including status, line items, linked expenses, payment history, and remaining balance. Common use cases: - Check PO status (Draft / Approved / Partially Received / Closed) before taking next action - Confirm remaining balance before createExpense - Retrieve associated expenseId or journalId for downstream workflows
| Parameter | Type | Description | |
|---|---|---|---|
| dateStart | string | optional | Start date for filtering purchase orders (format yyyyMMdd). |
| dateEnd | string | optional | End date for filtering purchase orders (format yyyyMMdd). |
| status | integer? | optional | Filter by document status (0 = None, 1 = Voided, 2 = Draft, 3 = AwaitApproval, 4 = Outstanding, 5 = Overdue, 6 = PaidOrAwaitReceipt) |
| searchText | string | optional | Text to search for in purchase orders. |
| limit | integer? | optional | Maximum number of entries to retrieve. |
| page | integer? | optional | Page number for displaying data, where each page will show 10 entries. |
Response
{
"PeakPurchaseOrders": {
"purchaseOrders": [
{
"code": "PO2023080002",
"issuedDate": "20230809",
"contactId": "bced4f76-8dbf-4518-ab75-c92437471f08",
"contactCode": "572608351",
"netAmount": 107,
"documentLink": "https://...",
"onlineViewLink": "https://...",
"resCode": "200",
"resDesc": "Success"
}
],
"totalPurchaseOrder": 1,
"resDesc": "Success",
"resCode": "200"
}
}
Quotation
2 tools
CreateQuotation
Creates a sales quotation (ใบเสนอราคา) in PEAK Account to send to a potential customer. Use this as the first step in the sales workflow: Quotation -> Invoice -> Receipt. IMPORTANT: Before calling this tool: 1. contactId or contactCode — the vendor/supplier (use SearchContacts or CreateContact) 2. At least one product/service in the products array (use SearchProducts or accountCode to find)
1 required · 28 optional
CreateQuotation
Creates a sales quotation (ใบเสนอราคา) in PEAK Account to send to a potential customer. Use this as the first step in the sales workflow: Quotation -> Invoice -> Receipt. IMPORTANT: Before calling this tool: 1. contactId or contactCode — the vendor/supplier (use SearchContacts or CreateContact) 2. At least one product/service in the products array (use SearchProducts or accountCode to find)
| Parameter | Type | Description | |||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| products | array[InvoiceProduct] | required | An array of objects that will contain various data for the list of products or servicesarray[InvoiceProduct] fields
|
||||||||||||||||||||||||||||
| code | string | optional | The code displayed in the PEAK. If no value is provided, PEAK will generate it automatically | ||||||||||||||||||||||||||||
| issuedDate | string | optional | Document issuance date | ||||||||||||||||||||||||||||
| dueDate | string | optional | Document due date, which must be after the document issuance date | ||||||||||||||||||||||||||||
| contactId | string | optional | Unique Identifier of the contact associated with the document | ||||||||||||||||||||||||||||
| contactCode | string | optional | Code of the contact associated with the document (If contactId has been assigned a value, contactCode is not required) | ||||||||||||||||||||||||||||
| reference | string | optional | Reference information of the document | ||||||||||||||||||||||||||||
| remark | string | optional | Additional remarks or notes | ||||||||||||||||||||||||||||
| taxStatus | integer? | optional | Specify the tax status of the document to indicate whether the price includes tax or the tax is separate (0 = ExcludeTax, 1 = IncludeTax, 2 = NonTax) | ||||||||||||||||||||||||||||
| discountTotal | string | optional | The total discount should not exceed the net total of the document or be greater than 100%. Additionally, it can only be applied when the tax type of each item is the same | ||||||||||||||||||||||||||||
| isTaxInvoice | integer? | optional | Whether the document can be used as a tax invoice (0 = No, 1 = Yes) | ||||||||||||||||||||||||||||
| tags | array[String] | optional | Label attached to someone or something for the purpose of identification or to give other information | ||||||||||||||||||||||||||||
| status | string | optional | Status of the document, which can have multiple states such as Draft, Approve, Voided, etc (Default: Draft) | ||||||||||||||||||||||||||||
| preTaxAmount | number? | optional | Amount before tax is applied (If value is null, PEAK will calculate it automatically) | ||||||||||||||||||||||||||||
| vatAmount | number? | optional | Tax collected from the increased value of products or services (If value is null, PEAK will calculate it automatically) | ||||||||||||||||||||||||||||
| netAmount | number? | optional | Total value of the document after tax and discounts have been applied (If value is null, PEAK will calculate it automatically) | ||||||||||||||||||||||||||||
| paymentMethodCode | string | optional | Payment method code. Required to record a paid quotation. | ||||||||||||||||||||||||||||
| paymentMethodId | string | optional | The Unique Identifier of the payment method | ||||||||||||||||||||||||||||
| paymentAmount | number? | optional | Payment amount | ||||||||||||||||||||||||||||
| paymentDate | string | optional | Payment date in the format yyyyMMdd | ||||||||||||||||||||||||||||
| paymentAccountCode | string | optional | Account code to be used for recording financial transactions | ||||||||||||||||||||||||||||
| paymentAccountSubId | string | optional | Sub account Unique Identifier to be used for recording financial transactions | ||||||||||||||||||||||||||||
| paymentAccountSubCode | string | optional | Sub account code to be used for recording financial transactions | ||||||||||||||||||||||||||||
| paymentNote | string | optional | Additional remarks or notes for that specific payment received | ||||||||||||||||||||||||||||
| isCheque | integer? | optional | Whether this payment is made by Cheque (0 = No, 1 = Yes) | ||||||||||||||||||||||||||||
| paidPaymentsWithHoldingTaxAmount | string | optional | Withholding tax amount for the payment | ||||||||||||||||||||||||||||
| currencyId | integer? | optional | Currency ID for foreign currency transactions | ||||||||||||||||||||||||||||
| exchangeRate | number? | optional | Exchange rate for foreign currency transactions | ||||||||||||||||||||||||||||
| getResult | integer? | optional | Numeric code used to reduce the amount of response data received |
Response
{
"PeakQuotations": {
"resCode": "200",
"resDesc": "PeakQuotations have Completed",
"quotations": [{
"id": "b6dbb6d7-b38e-4e2b-ac44-f321f38b4a3a",
"code": "QOU-230817000000012",
"issuedDate": "20230817",
"dueDate": "20230818",
"contactId": "917c3e8f-b315-4968-b8cc-08e2220d8682",
"contactCode": "C01401",
"status": "Approve",
"isTaxInvoice": 0,
"preTaxAmount": 200,
"vatAmount": 0,
"netAmount": 200,
"whtAmount": 0,
"taxStatus": 0,
"products": [{ "id": "guid", "accountCode": "114102", "description": "Design by Peak", "quantity": 1, "price": 200, "vatType": 1 }],
"resCode": "200",
"resDesc": "Success"
}]
}
}
GetQuotation
Retrieve one or more Quotations by ID, document code, or reference number. Lookup options (use at least one): id, code (e.g. "QT202412005"), or reference. Use limit + page to paginate multiple results. Common use cases: - Check status (Draft/Approved/Void) before converting to Invoice
0 required · 6 optional
GetQuotation
Retrieve one or more Quotations by ID, document code, or reference number. Lookup options (use at least one): id, code (e.g. "QT202412005"), or reference. Use limit + page to paginate multiple results. Common use cases: - Check status (Draft/Approved/Void) before converting to Invoice
| Parameter | Type | Description | |
|---|---|---|---|
| reference | string | optional | If a document has references or is created based on other documents, you can use the value "Reference" to indicate the field that allows searching for that document. |
| code | string | optional | Document code to search for (e.g. 'QOU-230118000000000'). |
| id | string | optional | The Unique Identifier generated by PEAK to identify data. |
| limit | integer? | optional | Maximum number of entries to retrieve. |
| page | integer? | optional | Page number for displaying data, where each page will show 10 entries. |
| getResult | integer? | optional | Numeric code used to reduce the amount of response data received. |
Response
{
"PeakQuotations": {
"resCode": "200",
"resDesc": "PeakQuotations have Completed",
"quotations": [{
"id": "c4311f2f-e2eb-474c-b32a-4db1ce49d974",
"code": "QOU-230118000000000",
"issuedDate": "20230118",
"dueDate": "20230125",
"contactId": "5106bf55-8939-409f-a2d5-ef84f9c4bc9d",
"contactCode": "C00006",
"status": "Draft",
"isTaxInvoice": 0,
"preTaxAmount": 220,
"vatAmount": 7.7,
"netAmount": 227.7,
"whtAmount": 0,
"documentLink": "https://...",
"onlineViewLink": "https://...",
"remark": "...",
"taxStatus": 0,
"products": [{ "id": "guid", "productCode": "P00002", "accountCode": "410101", "description": "...", "quantity": 1, "price": 110, "vatType": 1 }],
"resCode": "200",
"resDesc": "Success"
}]
}
}
Receipt
2 tools
GetReceipt
Retrieve one or more Receipts by ID, document code, or reference number. Lookup options (use at least one): id, code (e.g. "RT202605001"), or reference. Use limit + page to paginate multiple results. Common use cases: - Confirm receipt was issued successfully
0 required · 6 optional
GetReceipt
Retrieve one or more Receipts by ID, document code, or reference number. Lookup options (use at least one): id, code (e.g. "RT202605001"), or reference. Use limit + page to paginate multiple results. Common use cases: - Confirm receipt was issued successfully
| Parameter | Type | Description | |
|---|---|---|---|
| dateStart | string | optional | Filter by document start date |
| dateEnd | string | optional | Filter by document end date |
| status | integer? | optional | Filter by document status (0 = None, 1 = Voided, 2 = Draft, 3 = AwaitApproval, 4 = Outstanding, 5 = Overdue, 6 = PaidOrAwaitReceipt) |
| searchText | string | optional | Search keyword for receipt data |
| limit | integer? | optional | Maximum number of records to retrieve |
| page | integer? | optional | Page number for pagination |
Response
{
"PeakReceipts": {
"receipts": [
{
"code": "RTZ202308008",
"issuedDate": "20230807",
"contactId": "5b37fe57-aa7d-49ed-ba8b-a01bf2aeee37",
"contactCode": "C02974",
"isTaxInvoice": 0,
"netAmount": 278.2,
"remainAmount": 0,
"documentLink": "https://...",
"onlineViewLink": "https://...",
"resCode": "200",
"resDesc": "Success"
}
],
"totalReceipt": 3,
"resDesc": "PeakReceipts have Completed",
"resCode": "200"
}
}
CreateReceipt
Creates a receipt in Peak Account. Returns the created receipt details.
1 required · 28 optional
CreateReceipt
Creates a receipt in Peak Account. Returns the created receipt details.
| Parameter | Type | Description | |||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| products | array[InvoiceProduct] | required | An array of objects that will contain various data for the list of products or services. Each item: productCode, accountCode, description, price, quantity, vatType.array[InvoiceProduct] fields
|
||||||||||||||||||||||||||||
| contactCode | string | optional | Code of the contact associated with the document. Use SearchContacts if unknown. | ||||||||||||||||||||||||||||
| contactId | string | optional | Unique Identifier of the contact associated with the document. If contactId has been assigned a value, contactCode is not required. | ||||||||||||||||||||||||||||
| status | string | optional | Status of the document, which can have multiple states such as Draft, Approve, Voided, etc. Default is 'Draft'. | ||||||||||||||||||||||||||||
| code | string | optional | The code displayed in PEAK. If no value is provided, PEAK will generate it automatically. | ||||||||||||||||||||||||||||
| issuedDate | string | optional | Document issuance date (yyyyMMdd). Defaults to today. | ||||||||||||||||||||||||||||
| dueDate | string | optional | Document due date (yyyyMMdd), which must be after the document issuance date. Defaults to 7 days from today. | ||||||||||||||||||||||||||||
| reference | string | optional | Reference information of the document. | ||||||||||||||||||||||||||||
| remark | string | optional | Additional remarks or notes. | ||||||||||||||||||||||||||||
| taxStatus | integer? | optional | Specify the tax status of the document to indicate whether the price includes tax or the tax is separate. (0 = ExcludeTax, 1 = IncludeTax, 2 = NonTax) | ||||||||||||||||||||||||||||
| discountTotal | string | optional | The total discount should not exceed the net total of the document or be greater than 100%. Additionally, it can only be applied when the tax type of each item is the same. | ||||||||||||||||||||||||||||
| isTaxInvoice | integer? | optional | Whether the document can be used as a tax invoice (0 = No, 1 = Yes) | ||||||||||||||||||||||||||||
| tags | array[String] | optional | Label attached to someone or something for the purpose of identification or to give other information. | ||||||||||||||||||||||||||||
| preTaxAmount | number? | optional | Amount before tax is applied. If value is null, PEAK will calculate it automatically. | ||||||||||||||||||||||||||||
| vatAmount | number? | optional | Tax collected from the increased value of products or services. If value is null, PEAK will calculate it automatically. | ||||||||||||||||||||||||||||
| netAmount | number? | optional | Total value of the document after tax and discounts have been applied. If value is null, PEAK will calculate it automatically. | ||||||||||||||||||||||||||||
| paymentMethodCode | string | optional | Code of the payment method. If paymentMethodId has been assigned a value, paymentMethodCode is not required. | ||||||||||||||||||||||||||||
| paymentMethodId | string | optional | The Unique Identifier of the payment method. | ||||||||||||||||||||||||||||
| paymentAmount | number? | optional | Payment amount. | ||||||||||||||||||||||||||||
| paymentDate | string | optional | Payment date in the format yyyyMMdd. Defaults to today if paying. | ||||||||||||||||||||||||||||
| paymentAccountCode | string | optional | Account code to be used for recording financial transactions. | ||||||||||||||||||||||||||||
| paymentAccountSubId | string | optional | Sub account Unique Identifier to be used for recording financial transactions. | ||||||||||||||||||||||||||||
| paymentAccountSubCode | string | optional | Sub account code to be used for recording financial transactions. | ||||||||||||||||||||||||||||
| paymentNote | string | optional | Additional remarks or notes for that specific payment received. | ||||||||||||||||||||||||||||
| isCheque | integer? | optional | Whether this payment is made by Cheque (0 = No, 1 = Yes) | ||||||||||||||||||||||||||||
| paidPaymentsWithHoldingTaxAmount | string | optional | Withholding tax amount for the payment. | ||||||||||||||||||||||||||||
| currencyId | integer? | optional | Currency ID for foreign currency transactions. | ||||||||||||||||||||||||||||
| exchangeRate | number? | optional | Exchange rate for foreign currency transactions. | ||||||||||||||||||||||||||||
| getResult | integer? | optional | Numeric code used to reduce the amount of response data received. |
Response
{
"PeakReceipts": {
"resCode": "200",
"resDesc": "PeakReceipts have Completed",
"receipts": [{
"id": "77dd1ceb-a0f6-44bb-ae9c-525cc8026b34",
"code": "RTZ202308020",
"issuedDate": "20230815",
"dueDate": "20230822",
"contactId": "guid",
"contactCode": "C01401",
"status": "Approve",
"isTaxInvoice": 0,
"preTaxAmount": 300,
"vatAmount": 21,
"netAmount": 321,
"whtAmount": 0,
"paymentAmount": 321,
"remainAmount": 0,
"documentLink": "https://...",
"onlineViewLink": "https://...",
"taxStatus": 0,
"products": [{ "id": "guid", "productCode": "P001", "accountCode": "410101", "description": "...", "quantity": 1, "price": 300, "vatType": 3 }],
"paidPayments": [{ "paymentDate": "20230815", "paymentTotal": 321, "payments": [{ "paymentMethodCode": "CSH260", "amount": 321 }], "journals": [{ "id": "guid", "code": "RV-..." }] }],
"journals": [{ "id": "guid", "code": "SV-..." }],
"resCode": "200",
"resDesc": "Success"
}]
}
}
Service
2 tools
CreateService
Create a new service item in the PEAK catalog. Services represent billable work or fees (e.g., consulting, maintenance, subscription) — they are not tracked as inventory and have no stock quantity. Both purchase price (cost) and sell price (revenue) can be set with separate VAT types and GL account codes. Returns: serviceId — use this as a line item reference in Invoice, Expense, or PO documents.
0 required · 17 optional
CreateService
Create a new service item in the PEAK catalog. Services represent billable work or fees (e.g., consulting, maintenance, subscription) — they are not tracked as inventory and have no stock quantity. Both purchase price (cost) and sell price (revenue) can be set with separate VAT types and GL account codes. Returns: serviceId — use this as a line item reference in Invoice, Expense, or PO documents.
| Parameter | Type | Description | |
|---|---|---|---|
| id | string | optional | The Unique Identifier generated by PEAK to identify data |
| name | string | optional | Product/Service name |
| type | integer? | optional | Numeric code indicate whether it is a product or a service (0 = None, 1 = Product, 2 = Service) |
| code | string | optional | The code displayed in the PEAK |
| purchaseValue | number? | optional | Purchase price per unit |
| purchaseVatType | integer? | optional | Purchase tax rate (1 = None, 2 = ZeroPercent, 3 = SevenPercent) |
| purchaseAccount | string | optional | Account used to record purchase transactions |
| sellValue | number? | optional | Selling price per unit |
| sellVatType | integer? | optional | Selling tax rate (1 = None, 2 = ZeroPercent, 3 = SevenPercent) |
| sellAccount | string | optional | Account used to record selling transactions |
| description | string | optional | Additional description of the product/service |
| carryingBalanceValue | number? | optional | Carrying balance value |
| carryingBalanceAmount | number? | optional | Carrying balance amount |
| unitId | string | optional | Unit ID |
| unitCode | string | optional | Unit code |
| unitNameTh | string | optional | Unit name in Thai |
| unitNameEn | string | optional | Unit name in English |
Response
{
"PeakServices": {
"resCode": "200",
"resDesc": "PeakServices have Completed",
"services": [{
"id": "09b31e2e-33e0-488c-89a4-a48b8b131475",
"name": "Create Service Example 1",
"code": "P00001",
"type": 1,
"purchaseValue": 10,
"purchaseVatType": 3,
"purchaseAccount": "114102",
"sellValue": 100,
"sellVatType": 3,
"sellAccount": "410101",
"description": "Design by PEAK",
"carryingBalanceValue": 20,
"carryingBalanceAmount": 15,
"remainingBalanceAmount": 20,
"resCode": "200",
"resDesc": "Success"
}]
}
}
GetService
Search the service catalog by keyword (name or code) and return a paginated list of services with their IDs, prices, VAT types, and account codes. Use this before creating any document that includes service line items to look up the correct serviceId and serviceCode. Returns: serviceId, name, code, sellValue, sellVatType, purchaseValue, purchaseVatType, unit.
0 required · 4 optional
GetService
Search the service catalog by keyword (name or code) and return a paginated list of services with their IDs, prices, VAT types, and account codes. Use this before creating any document that includes service line items to look up the correct serviceId and serviceCode. Returns: serviceId, name, code, sellValue, sellVatType, purchaseValue, purchaseVatType, unit.
| Parameter | Type | Description | |
|---|---|---|---|
| year | string | optional | Filter by year (e.g. '2024'). |
| searchText | string | optional | Search keyword for service name or related data. |
| limit | integer? | optional | Maximum number of entries to retrieve. |
| page | integer? | optional | Page number for displaying data, where each page will show 10 entries. |
Response
{
"PeakServices": {
"resCode": "200",
"resDesc": "PeakServices have Completed",
"totalService": 2650,
"services": [{
"id": "b0d31e48-a519-49b5-9750-29e9671299d3",
"name": "Service Example 1",
"code": "P00001",
"type": 1,
"resCode": "200",
"resDesc": "Success"
}]
}
}
Tag
2 tools
InsertTag
Adds tags (labels) to one or more PEAK documents for categorization and filtering. Use this to organize documents by period, project, department, or any custom label. Example: tag all Q1 expenses with 'Q1-2025', or mark documents for 'Project-ABC'.
1 param
InsertTag
Adds tags (labels) to one or more PEAK documents for categorization and filtering. Use this to organize documents by period, project, department, or any custom label. Example: tag all Q1 expenses with 'Q1-2025', or mark documents for 'Project-ABC'.
| Parameter | Type | Description | |||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| peakTags | array[PeakTagItem] | required | An array of PeakTagItem objects. Each object identifies one document and the tags to insert. Example: [{"transactionId":"123","transactionTypeId":106,"tags":["expense","Q1"]}]array[PeakTagItem] fields
|
Response
{
"PeakTags": [
{
"transactionTypeId": 106,
"resCode": "200",
"resDesc": "Success"
}
]
}
RemoveTag
Remove tags from documents in Peak Account. Returns the result of each tag removal.
1 param
RemoveTag
Remove tags from documents in Peak Account. Returns the result of each tag removal.
| Parameter | Type | Description | |||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| peakTags | array[PeakTagItem] | required | An array of PeakTagItem objects. Each object identifies one document and the tags to remove. Example: [{"transactionId":"123","transactionTypeId":106,"tags":["expense","Q1"]}]array[PeakTagItem] fields
|
Response
{
"PeakTags": [
{
"transactionTypeId": 106,
"resCode": "200",
"resDesc": "Success"
}
]
}
Enum Reference
All integer enum values used across tools
ContactEnum values for contact parameters
Contact
Enum values for contact parameters
| Parameter | Value | Name |
|---|---|---|
| type | 0 | None |
| 1 | LimitedLiabilityPartnership | |
| 2 | CompanyLimited | |
| 3 | PublicCompanyLimited | |
| 4 | Shop | |
| 5 | OrdinaryPerson | |
| 6 | BodyOfPersons | |
| 7 | Others | |
| 8 | OrdinaryPartnership | |
| 9 | Foundation | |
| 10 | Association | |
| 11 | JointVenture | |
| status | 0 | All |
| 1 | Active | |
| 2 | Inactive | |
| prefixNameType required when type=5 | 0 | None |
| 1 | Sir | |
| 2 | Mr | |
| 3 | Mrs | |
| 4 | Ms | |
| 5 | Other |
Product / ServiceEnum values for product and service parameters
Product / Service
Enum values for product and service parameters
| Parameter | Value | Name |
|---|---|---|
| type | 0 | None |
| 1 | Product | |
| 2 | Service | |
| sellVatType purchaseVatType | 1 | None |
| 2 | ZeroPercent | |
| 3 | SevenPercent |
Document (shared)Enum values shared across Invoice, Expense, Receipt, Quotation, PurchaseOrder, BillingNote, CreditNote
Document (shared)
Enum values shared across Invoice, Expense, Receipt, Quotation, PurchaseOrder, BillingNote, CreditNote
| Parameter | Value | Name |
|---|---|---|
| taxStatus | 0 | ExcludeTax |
| 1 | IncludeTax | |
| 2 | NonTax | |
| isTaxInvoice | 0 | No |
| 1 | Yes | |
| isCheque returnPaymentIsCheque | 0 | No |
| 1 | Yes | |
| status filter in Get methods | 0 | None |
| 1 | Voided | |
| 2 | Draft | |
| 3 | AwaitApproval | |
| 4 | Outstanding | |
| 5 | Overdue | |
| 6 | PaidOrAwaitReceipt |
Transaction TypetransactionType — used in CreditNote and Classification tools
Transaction Type
transactionType — used in CreditNote and Classification tools
| Parameter | Value | Name |
|---|---|---|
| transactionType | 0 | None |
| 1 | Quotation | |
| 2 | Invoice | |
| 3 | Receipt | |
| 4 | TaxInvoice | |
| 5 | CreditNote | |
| 6 | BillingNote | |
| 7 | DebitNote | |
| 11 | Dailyjournal |
Credit NoteEnum values specific to credit note parameters
Credit Note
Enum values specific to credit note parameters
| Parameter | Value | Name |
|---|---|---|
| reasonType | 0 | None |
| 1 | PromotionAndMarketing | |
| 2 | OfficeUse | |
| 3 | ProductionUse | |
| 4 | ServiceUse | |
| 5 | Donation | |
| 6 | DamageOrLoss | |
| 7 | Others | |
| creditNoteStyleType | 0 | General |
| 1 | ThaiPopular | |
| goodsReturn | 0 | No |
| 1 | Yes |
Payment MethodEnum values for payment method parameters
Payment Method
Enum values for payment method parameters
| Parameter | Value | Name |
|---|---|---|
| type | 0 | Others (bankName required) |
| 1 | Cash | |
| 2 | BankAccount (bankId required) | |
| 3 | CreditCard | |
| 4 | EWallet (accountCode & eWalletId required) | |
| accountType | 1 | Current |
| 2 | Savings | |
| 3 | FixedDeposit | |
| isHaveCheque | 0 | No |
| 1 | Yes |