diff --git a/README.md b/README.md index 99b00ad..2775362 100644 --- a/README.md +++ b/README.md @@ -25,6 +25,12 @@ cd src/ php examples/create_disbursement_example.php "CUSTOM_ID_1" 30000 "BCA" "Rizky" "1234567890" ``` +# Create Disbursement With Idempotency Key Example : # +``` +cd src/ +php examples/create_disbursement_with_idempotency_key_example.php "CUSTOM_ID_1" 30000 "BCA" "Rizky" "1234567890" "idempotencykeytest123" +``` + # GET Disbursement Example : # ``` cd src/ diff --git a/src/XenditPHPClient.php b/src/XenditPHPClient.php index c79a51d..913f883 100644 --- a/src/XenditPHPClient.php +++ b/src/XenditPHPClient.php @@ -37,12 +37,16 @@ function createInvoice ($external_id, $amount, $payer_email, $description) { return $responseObject; } - function createDisbursement ($external_id, $amount, $bank_code, $account_holder_name, $account_number) { + function createDisbursement ($external_id, $amount, $bank_code, $account_holder_name, $account_number, $disbursement_options = null) { $curl = curl_init(); $headers = array(); $headers[] = 'Content-Type: application/json'; + if (!empty($disbursement_options['X-IDEMPOTENCY-KEY'])) { + array_push($headers, 'X-IDEMPOTENCY-KEY: '.$disbursement_options['X-IDEMPOTENCY-KEY']); + } + $end_point = $this->server_domain.'/disbursements'; $data['external_id'] = $external_id; diff --git a/src/examples/create_disbursement_with_idempotency_key_example.php b/src/examples/create_disbursement_with_idempotency_key_example.php new file mode 100644 index 0000000..90fcc10 --- /dev/null +++ b/src/examples/create_disbursement_with_idempotency_key_example.php @@ -0,0 +1,18 @@ +createDisbursement($external_id, $amount, $bank_code, $account_holder_name, $account_number, $disbursement_options); + print_r($response); +?>