The RETURN value of a stored procedure is kinda reserved for the error status. 0 means no error, any other number means an error occurred. Check the stored procedure for an OUTPUT variable or result set.
Incidentally, you can load your variables in a single statement rather than reading the same table (and row) three times:
SELECT
@dpNumber = CONVERT(NVARCHAR,bintDriver),
@amounttobepaid = CONVERT(NVARCHAR,decAmountPaid),
@paymentdate = CONVERT(VARCHAR,dtDeliveryDate,101)
FROM tblDeliveryListAmount
WHERE bintDriver = @bintDriver
AND bintShipment = @bintShipment
For fast, accurate and documented assistance in answering your questions, please read this article.
Understanding and using APPLY, (I) and (II) Paul White
Hidden RBAR: Triangular Joins / The "Numbers" or "Tally" Table: What it is and how it replaces a loop Jeff Moden