Sample code for 30+ languages & platforms
PowerBuilder

MyInvois Malaysia Validate Taxpayer TIN

See more Malaysia MyInvois Examples

Validate specific Tax Identification Number (TIN) before adding this number to an invoice and issuing the invoice.

Chilkat PowerBuilder Downloads

PowerBuilder
integer li_rc
integer li_Success
oleobject loo_Http
oleobject loo_QueryParams
oleobject loo_Resp

li_Success = 0

// This example assumes the Chilkat API to have been previously unlocked.
// See Global Unlock Sample for sample code.

loo_Http = create oleobject
li_rc = loo_Http.ConnectToNewObject("Chilkat.Http")
if li_rc < 0 then
    destroy loo_Http
    MessageBox("Error","Connecting to COM object failed")
    return
end if

// Implements the following CURL command:

// curl -X GET https://preprod-api.myinvois.hasil.gov.my/api/v1.0/taxpayer/validate/C1234567890 \
//   -d "idType=BRN" \
//   -d "idValue=200001009999" \
//   -H "Authorization: Bearer <access_token>"

// Use the following online tool to generate HTTP code from a CURL command
// Convert a cURL Command to HTTP Source Code

loo_QueryParams = create oleobject
li_rc = loo_QueryParams.ConnectToNewObject("Chilkat.JsonObject")

loo_QueryParams.UpdateString("idType","BRN")
loo_QueryParams.UpdateString("idValue","200001009999")

// Adds the "Authorization: Bearer <access_token>" header.
loo_Http.AuthToken = "<access_token>"

// Note: The access token is valid for a short amount of time.  Perhaps 1 hour.
// The access token is used in the "Authorization: Bearer <access_token>" header in subsequent requests until it expires.
// Your application would then need to get a new access token, and so on..
// To get an access token, see How to Get a MyInvois Access Token

loo_Resp = create oleobject
li_rc = loo_Resp.ConnectToNewObject("Chilkat.HttpResponse")

li_Success = loo_Http.HttpParams("GET","https://preprod-api.myinvois.hasil.gov.my/api/v1.0/taxpayer/validate/C1234567890",loo_QueryParams,loo_Resp)
if li_Success = 0 then
    Write-Debug loo_Http.LastErrorText
    destroy loo_Http
    destroy loo_QueryParams
    destroy loo_Resp
    return
end if

Write-Debug string(loo_Resp.StatusCode)
Write-Debug loo_Resp.BodyStr


destroy loo_Http
destroy loo_QueryParams
destroy loo_Resp