Signature

Setiap request harus dilengkapi signature untuk divalidasi. Client akan diberikan Secret Key di dokumentasi terpisah dari document ini. Key tersebut akan diolah untuk menjadi signature dengan langkah-langkah sebagai berikut :

Parameter yang digunakan :

  • Request UUID
  • Request Datetime
  • Community Code
  • Key
  • Service Name

Step 1 :

Gabungkan parameter-parameter yang digunakan dengan urutan sebagai berikut :

##Request UUID##Request Datetime##Community Code##Key##Service Name ##

Contoh :

Request UUID : 123ABC-DEF456
Request Datetime : 2017-08-08 09:17:45
Community Code : MYCOMMCODE
Key : S3cr317kEY
Service Name : SendInvoice

Sehingga akan menjadi rangkaian string sebagai berikut :

Result = ##123ABC-DEF456##2017-08-08 09:17:45##MYCOMMCODE##S3cr317kEY##SendInvoice##

Step 2 :

Hasil dari Step 1 di uppercase menjadi seperti ini:

##123ABC-DEF456##2017-08-08 09:17:45##MYCOMMCODE##S3CR317KEY##SENDINVOICE##

Step 3 :

Hash hasil dari Step 2 dengan menggunakan sha256 :

$sha256 = hash(sha256, '##123ABC-DEF456##2017-08-08 09:17:45##MYCOMMCODE##S3CR317KEY##SENDINVOICE##')

Result = 638f5fd9f590ce81b15570d32edaec03dab1498aa2525947411be6d6e2aa7a2d

Hasil dari Step 3 inilah yang akan digunakan sebagai value dari parameter signature.