Delete a transfer
Permanently delete a transfer that has not yet been sent to the bank. Once a transfer has been sent (sent: true), it cannot be deleted.
API Credentials
Request Parametersโ
Required - 1 fieldRequired Parameters
`id`STRING(required)
Transfer ID (e.g., trsf_test_...). Provided in the URL path.
Responsesโ
200
Successful transactionTransfer deleted successfully. Returns confirmation with deleted: true.
Response structure:
object- "transfer"id- ID of the deleted transferdeleted- true (confirms deletion)
400
Bad requestTransfer cannot be deleted.
Common causes:
- Transfer already sent to bank (
sent: true) - Transfer already paid (
paid: true) - Transfer already failed
401
UnauthorizedAuthentication failed. Invalid or missing API key.
Common causes:
- Missing Authorization header
- Invalid secret key
- Using public key instead of secret key
- Incorrect HTTP Basic Auth format
404
Not foundTransfer not found.
Common causes:
- Invalid transfer ID
- Transfer does not belong to your account
- Transfer already deleted
- Mixing test and live mode IDs
Code samplesโ
- cURL
- Ruby
- Python
- Node.js
- PHP
- Java
- C#
- Go
curl https://api.omise.co/transfers/trsf_test_5xuy4w91xqz7d1w9u0t \
-X DELETE \
-u skey_test_5xuy4w91xqz7d1w9u0t:
require 'omise'
Omise.api_key = 'skey_test_5xuy4w91xqz7d1w9u0t'
transfer = Omise::Transfer.retrieve('trsf_test_5xuy4w91xqz7d1w9u0t')
transfer.destroy
import omise
omise.api_secret = 'skey_test_5xuy4w91xqz7d1w9u0t'
transfer = omise.Transfer.retrieve('trsf_test_5xuy4w91xqz7d1w9u0t')
transfer.destroy()
const omise = require('omise')({
secretKey: 'skey_test_5xuy4w91xqz7d1w9u0t'
});
await omise.transfers.destroy('trsf_test_5xuy4w91xqz7d1w9u0t');
<?php
define('OMISE_SECRET_KEY', 'skey_test_5xuy4w91xqz7d1w9u0t');
$transfer = OmiseTransfer::retrieve('trsf_test_5xuy4w91xqz7d1w9u0t');
$transfer->destroy();
Client client = new Client.Builder()
.secretKey("skey_test_5xuy4w91xqz7d1w9u0t")
.build();
client.transfers().destroy("trsf_test_5xuy4w91xqz7d1w9u0t");
var client = new Client("skey_test_5xuy4w91xqz7d1w9u0t");
await client.Transfers.Delete("trsf_test_5xuy4w91xqz7d1w9u0t");
client, _ := omise.NewClient(
"pkey_test_5xuy4w91xqz7d1w9u0t",
"skey_test_5xuy4w91xqz7d1w9u0t",
)
transfer, _ := client.Transfers().Destroy("trsf_test_5xuy4w91xqz7d1w9u0t")
Important notesโ
- Only transfers that have not been sent (
sent: false) can be deleted - Deleted transfers cannot be recovered
- Once deleted, the transfer ID cannot be reused
- Funds from deleted transfers remain in your available balance
Try it outโ
Required - 1 fields