Project

General

Profile

Specification » History » Revision 12

Revision 11 (Soh Keong, 05/29/2024 12:39 PM) → Revision 12/71 (Soh Keong, 05/29/2024 03:28 PM)

{{toc}} 

 h1. Specification 

 h1. Programming Guide 

 h2. Jar version  

 |_. version |_. Description                                  | 
 | 1.0         | Init                                           | 

 h2. Jar File Download 

 "Jar": 
 "Properties": 

 h3. Classes 

 * *my.aisino.einvoice.bean*  
 * *my.aisino.einvoice.bean.transaction*  
 * *my.aisino.einvoice.constant*  
 * *my.aisino.einvoice.service*  
 * *my.aisino.einvoice.util*  

 h3. properties file 

 * *service.properties* 

 # *merchant.id*         - 

 h2. Aisino Service 

 <pre> 
 my.aisino.einvoice.service.TransactionService service = new my.aisino.einvoice.service.TransactionService(); 
 </pre> 

 h3. submitEInvoice 

 <pre> 
 InvoiceSubmissionResponseBean responseBean = service.submitEInvoice(Connection conn, InvoiceSubmissionRequestBean bean); 
 </pre> 

 <pre> 
 CommonConstant = my.aisino.einvoice.constant.CommonConstant 
 </pre> 

 # *conn*             - Database connection. 
 # *bean*             - Object. 
 > * *orderId* 
 > * *orderDate*       - Format(yyyy-MM-dd) 
 > * *orderTime*       - Format(HH:mm:ssZ) 
 > * *orderTypeCode* - CommonConstant.INVOICE_TYPE_CODE_* (https://sdk.myinvois.hasil.gov.my/codes/e-invoice-types/) 
 > * *currencyCode*    - CommonConstant.CURRENCY_CODE_* (https://sdk.myinvois.hasil.gov.my/codes/currencies/) 
 > * *totalExcludingTax*  
 > * *totalIncludingTax*  
 > * *totalPayableAmount*  

 > * *buyerBean*  
 > ** *address*  
 > *** *country*    - CommonConstant.COUNTRY_* (https://sdk.myinvois.hasil.gov.my/codes/countries/) 
 > *** *state*      - CommonConstant.STATE_* (https://sdk.myinvois.hasil.gov.my/codes/state-codes/) 
 > *** *city*       - Max length : 50 
 > *** *address1* - Max length : 150 
 > *** *address2* - Max length : 150 
 > *** *address3* - Max length : 150 
 > ** *contactNumber* - Max length : 20 
 > ** *name*            - Max length : 300 
 > ** *registrationList* 
 > *** *brn*        (Optional) 
 > *** *tin*        (Optional) 
 > *** *nric*       (Optional) 
 > *** *passport* (Optional) 
 > *** *army*       (Optional) 
 > *** *sst*        (Optional) 

 > * *productList* 
 > ** *productName*          - Max length : 300 
 > ** *productCode*          - Max length :    18 
 > ** *measurement*          - CommonConstant.MEASUREMENT_* (https://sdk.myinvois.hasil.gov.my/codes/unit-types/) 
 > ** *quantity*    (Optional)  
 > ** *totalExcludingTax* 
 > ** *unitPrice* 
 > ** *subtotal* 
 > ** *classificationList*  
 > *** *code*                - CommonConstant.CLASSIFICATION_CODE_* (https://sdk.myinvois.hasil.gov.my/codes/classification-codes/) 
 > *** *group*               - CommonConstant.CLASSIFICATION_GROUP_*  
 > ** *taxTotalBean* 
 > *** *totalTaxAmount* 
 > *** *taxSubTotalList* 
 > **** *taxType*            - CommonConstant.TAX_TYPE_* (https://sdk.myinvois.hasil.gov.my/codes/tax-types/) 
 > **** *percent*            (Optional) 
 > **** *perUnitAmount*      (Optional) 
 > **** *baseUnitMeasure*    (Optional) - CommonConstant.MEASUREMENT_* (https://sdk.myinvois.hasil.gov.my/codes/unit-types/) 
 > **** *netAmount*          (Optional) 
 > **** *tax* 

 > * *taxTotalBean* 
 > ** *totalTaxAmount* 
 > ** *taxSubTotalList* 
 > *** *taxType* 
 > *** *percent* 
 > *** *perUnitAmount* 
 > *** *baseUnitMeasure* 
 > *** *netAmount* 
 > *** *tax* 

   3. *responseBean* 

 > * *submissionUid* 
 > * *acceptedDocumentList* 
 > ** *orderId* 
 > ** *uuid* 
 > * *rejectedDocumentList* 
 > ** *orderId* 
 > ** *errorList* 
 > *** *code* 
 > *** *message* 


 h3. queryEInvoice 

 <pre> 
 InvoiceInquiryResponseBean responseBean = service.queryEInvoice(Connection conn, InvoiceInquiryRequestBean bean); 
 </pre> 

 # *conn*             - Database connection. 
 # *bean*             - Object. 
 > * *documentNum* 
 > * *submissionUid* 
 > * *invoiceUuid* 
 > * *invoiceTypeCode* 
 > * *buyerTin* 
 > * *buyerName* 
 > * *totalAmountFrom* 
 > * *totalAmountTo* 
 > * *invoiceStatus* 
 > * *confirmStatusCode* 
 > * *issuedDateFrom* 
 > * *issuedDateTo* 
 > * *pageIndex* (Mandatory) 
 > * *pageSize* (Mandatory) 

   3. *responseBean* 

 > * *page* 
 > ** *pageCount* 
 > ** *pageNo* 
 > ** *pageSize* 
 > ** *totalSize* 

 > * *recordList* 
 > ** *buyerTin* 
 > ** *confirmStatusCode* 
 > ** *currency* 
 > ** *description* 
 > ** *documentNum* 
 > ** *excludingTaxAmount* 
 > ** *includingTaxAmount* 
 > ** *invoiceId* 
 > ** *invoiceStatus* 
 > ** *invoiceTypeCode* 
 > ** *invoiceUuid* 
 > ** *issuedDate* 
 > ** *nowTime* 
 > ** *operationDate* 
 > ** *operator* 
 > ** *pageIndex* 
 > ** *pageNo* 
 > ** *pageSize* 
 > ** *submissionUid* 
 > ** *transactionId* 

 h3. cancelEInvoice 

 <pre> 
 InvoiceCancelResponseBean responseBean = service.cancelEInvoice(InvoiceCancelRequestBean bean); 
 </pre> 

 # *conn*             - Database connection. 
 # *bean*             - Object. 
 > * *cancelCode*     - CommonConstant.CANCEL_CODE_*  
 
 > * *cancelReason* - (Mandatory for CommonConstant.CANCEL_CODE_OTHERS)  
 
 > * *invoiceIds* - List of Integer 

   3. *responseBean* 

 > * *success* - true / false