Sample code for 30+ languages & platforms
React Native Requires Chilkat v11.0.0+

Datev - Upload File (Transfer a file to DATEV data center)

See more Datev Examples

Demonstrates how to transfer a file to the DATEV data center.

Chilkat React Native Downloads

React Native
import { BinData, Http, HttpResponse } from '@chilkat/react-native'

async function chilkatExample() {
  // This example assumes the Chilkat API to have been previously unlocked.
  // See Global Unlock Sample for sample code.

  const http = new Http();

  // Implements the following CURL command:

  // curl --request POST \
  //   --url "https://accounting-extf-files.api.datev.de/platform-sandbox/v3/clients/REPLACE_CLIENT-ID/extf-files/import" \
  //   --header "Authorization: Bearer REPLACE_BEARER_TOKEN" \
  //   --header "X-Datev-Client-ID: clientId" \
  //   --header "accept: application/json;charset=utf-8" \
  //   --header "content-type: application/octet-stream" \
  //   --header "Filename: EXTF_BS_20200101_1.csv" \
  //   --header "Reference-Id: Buchungsstapel_Verkäufe_2020_01_Nr_001" \
  //   --header "Client-Application-Version: 2.0c" \
  //   --data-binary "@REPLACE_BODY"

  // Use the following online tool to generate HTTP code from a CURL command
  // Convert a cURL Command to HTTP Source Code

  const bdRequestBody = new BinData();
  try {
    bdRequestBody.loadFile('c:/temp/EXTF_BS_20200101_1.csv');
  } catch {
    console.log('Failed to load the csv file.');
    return;
  }

  http.setRequestHeader('accept', 'application/json;charset=utf-8');
  http.setRequestHeader('X-Datev-Client-ID', 'clientId');
  http.setRequestHeader('Client-Application-Version', '2.0c');
  http.setRequestHeader('Filename', 'EXTF_BS_20200101_1.csv');
  http.setRequestHeader('Reference-Id', 'Buchungsstapel_Verkäufe_2020_01_Nr_001');
  // Adds the "Authorization: Bearer REPLACE_BEARER_TOKEN" header.
  http.authToken = 'REPLACE_BEARER_TOKEN';

  const resp = new HttpResponse();
  const url = 'https://accounting-extf-files.api.datev.de/platform-sandbox/v3/clients/DATEV_USER_ID/extf-files/import';
  try {
    await http.httpBdAsync('POST', url, bdRequestBody, 'application/octet-stream', resp);
  } catch {
    console.log(http.lastErrorText);
    return;
  }

  console.log(resp.statusCode);
  console.log(resp.bodyStr);
}