finish exchange backend