// 1. Prepare CSV file
var csv = new StringBuilder();
csv.AppendLine("MerchantReference,Amount,Currency,CardNumber,ExpirationMonth,ExpirationYear");
csv.AppendLine("ORDER-001,100.00,USD,4111111111111111,12,2025");
csv.AppendLine("ORDER-002,50.00,USD,5555555555554444,06,2026");
// 2. Upload file
var content = new MultipartFormDataContent();
content.Add(new StringContent(csv.ToString()), "file", "transactions.csv");
var response = await client.PostAsync(
$"/api/adm/import",
content);
var importResult = await response.Content.ReadAsAsync<ImportResponse>();
// 3. Poll for completion
while (importResult.Status == "Processing")
{
await Task.Delay(5000);
var statusResponse = await client.GetAsync(
$"/api/adm/import/{importResult.BatchId}");
importResult = await statusResponse.Content.ReadAsAsync<ImportResponse>();
}