Right now the Donation Service API only accepts the Designation ID when submitting a donation. Since this is a GUID it is extremely inefficient as a query needs to be run to match the designation with and identifier that a donor would know.
At the very least the API could be expanded to include a Designation Service that could get this info and custom code would no longer be needed.