Add Bill Pay & Vendor Management API support with tests#173
Add Bill Pay & Vendor Management API support with tests#173mdunnpexcard wants to merge 3 commits intomasterfrom
Conversation
Comprehensive SDK update: adds enums, models, and client methods for PEX Bill Pay and Vendor Management APIs, including vendor and bill CRUD, approval, payment processing, and document handling. Includes a full end-to-end integration test and configuration support for secure, environment-specific testing. Also updates token model for richer authentication context.
Code Review SummaryThis is a comprehensive PR that adds Bill Pay & Vendor Management API support. The implementation follows existing SDK patterns well, and the integration test serves as excellent living documentation. However, I've identified several issues that should be addressed before merging. Critical Issues1. Enum Serialization Concern
Please confirm the API expects numeric enum values in request bodies. If the API expects string values (e.g., 2. Query Parameter Casing Inconsistency
This inconsistency suggests at least one of these is incorrect. Please verify against the API documentation. 3. Decimal ToString() Without Culture Specification requestUriQueryParams.Add("AmountFrom", request.AmountFrom.Value.ToString());
requestUriQueryParams.Add("AmountTo", request.AmountTo.Value.ToString());This will produce incorrect values in locales that use commas as decimal separators (e.g., Security Concerns4. Missing .gitignore Entry 5. Bank Account Data in Logs Backwards Compatibility6. Interface Breaking Change
7. TokenDataModel Change (Minor) Code Quality8. Property Naming Inconsistency
9. Use of Test Concerns10. Integration Test Configuration
Minor Suggestions
Overall, this is solid work. The main blockers are the enum serialization verification, query param casing consistency, and the decimal culture issue. The interface breaking change should also be discussed with the team regarding versioning strategy. |
Updated query parameter names to PascalCase for API consistency. Switched "AmountFrom" and "AmountTo" to use invariant culture formatting. Added System.Globalization import for support.
|
Devin AI review comments have been addressed in second commit. |
| @@ -0,0 +1,6 @@ | |||
| { | |||
| "PexApi": { | |||
| "BaseUrl": "https://sand-coreapi.pexcard.com", | |||
There was a problem hiding this comment.
ok updated to sandbox
Changed the PexApi BaseUrl in appsettings.json from sand-coreapi.pexcard.com to sandbox-coreapi.pexcard.com to use the correct sandbox environment.
Comprehensive SDK update: adds enums, models, and client methods for PEX Bill Pay and Vendor Management APIs, including vendor and bill CRUD, approval, payment processing, and document handling. Includes a full end-to-end integration test and configuration support for secure, environment-specific testing. Also updates token model for richer authentication context.