Appearance
Dummy Payment
This Endpoint is only working and intended for Staging Environment only!
Simulate your payment and produce callback to your endpoint easily without real money testing and without any of our staff to help you, anytime.
For NOBU this feature only support for Dynamic QR.
##JSON Attributes
Name | Data Type | Required | Details |
---|---|---|---|
transaction_id | String | Yes | MCP Transaction ID |
external_id | String(64) | Yes | Unique string from merchant, used in signature |
order_id | String(255) | Yes | Only allow '-' for special characters, not unique, may be duplicated |
payment_method | String | Yes | Fixed value: wallet |
payment_channel | String | Yes | Fixed value: SHOPEEPAY, LINKAJA, DANA, NOBU, VIRGO |
##Information
Hostname | https://api-stage.ifortepay.id |
---|---|
Path | /ewallet/v2/dummy-payment |
HTTP Method | POST |
##Headers
Key | Format | Required | Value |
---|---|---|---|
Content-Type | application/json | Yes | (leave blank or set to application/json) |
Authorization | String | Yes | { Authorization } (your auth token) |
x-req-signature | String | Yes | { x-req-signature } (signature string) |
x-version | String | Yes | v3 |
##Example
Body raw
json
{
"transaction_id": "{{mcp_transaction_id}}",
"external_id": "{{merchant_external_id}}",
"order_id": "{{order_id}}",
"payment_channel": "{{channel_name: SHOPEEPAY / NOBU / DANA / LINKAJA / VIRGO}}",
"payment_method": "wallet"
}
Example Request
shell
curl --location 'https://api-stage.ifortepay.id/ewallet/v2/dummy-payment' \
--header 'Authorization: {{Authorization}}' \
--header 'x-req-signature: {{x-req-signature}}' \
--header 'Content-Type: application/json' \
--header 'x-version: v3' \
--data '{
"transaction_id": "{{mcp_transaction_id}}",
"external_id": "{{merchant_external_id}}",
"order_id": "{{order_id}}",
"payment_channel": "{{channel_name: SHOPEEPAY/NOBU/ DANA / LINKAJA / VIRGO}}",
"payment_method": "wallet"
}'
go
package main
import (
"fmt"
"strings"
"net/http"
"io/ioutil"
)
func main() {
url := "https://api-stage.ifortepay.id/ewallet/v2/dummy-payment"
method := "POST"
payload := strings.NewReader(`{
"transaction_id": "{{mcp_transaction_id}}",
"external_id": "{{merchant_external_id}}",
"order_id": "{{order_id}}",
"payment_channel": "{{channel_name: SHOPEEPAY/NOBU/ DANA / LINKAJA / VIRGO}}",
"payment_method": "wallet"
}`)
client := &http.Client {
}
req, err := http.NewRequest(method, url, payload)
if err != nil {
fmt.Println(err)
return
}
req.Header.Add("Authorization", "{{Authorization}}")
req.Header.Add("x-req-signature", "{{x-req-signature}}")
req.Header.Add("Content-Type", "application/json")
req.Header.Add("x-version", "v3")
res, err := client.Do(req)
if err != nil {
fmt.Println(err)
return
}
defer res.Body.Close()
body, err := ioutil.ReadAll(res.Body)
if err != nil {
fmt.Println(err)
return
}
fmt.Println(string(body))
}
js
var axios = require('axios');
var data = JSON.stringify({
"transaction_id": "{{mcp_transaction_id}}",
"external_id": "{{merchant_external_id}}",
"order_id": "{{order_id}}",
"payment_channel": "{{channel_name: SHOPEEPAY/NOBU/ DANA / LINKAJA / VIRGO}}",
"payment_method": "wallet"
});
var config = {
method: 'post',
maxBodyLength: Infinity,
url: 'https://api-stage.ifortepay.id/ewallet/v2/dummy-payment',
headers: {
'Authorization': '{{Authorization}}',
'x-req-signature': '{{x-req-signature}}',
'Content-Type': 'application/json',
'x-version': 'v3'
},
data : data
};
axios(config)
.then(function (response) {
console.log(JSON.stringify(response.data));
})
.catch(function (error) {
console.log(error);
});
php
use GuzzleHttp\Client;
$client = new Client();
$headers = [
'Authorization' => '{{Authorization}}',
'x-req-signature' => '{{x-req-signature}}',
'Content-Type' => 'application/json',
'x-version' => 'v3'
];
$body = '{
"transaction_id": "{{mcp_transaction_id}}",
"external_id": "{{merchant_external_id}}",
"order_id": "{{order_id}}",
"payment_channel": "{{channel_name: SHOPEEPAY/NOBU/ DANA / LINKAJA / VIRGO}}",
"payment_method": "wallet"
}';
$request = new Request('POST', 'https://api-stage.ifortepay.id/ewallet/v2/dummy-payment', $headers, $body);
$res = $client->sendAsync($request)->wait();
echo $res->getBody();
Example Response
json
{
"external_id": "123456",
"order_id": "123456",
"transaction_status": "PAID",
"paid_time": "2021-07-15T10:37:36.069+07:00",
"reference_id": "TEST-1234",
"response_code": "00"
}