This client library integrates with AndDone's secure APIs.
Please see our developer documentation & API Explorer, linked below, for detailed instructions on how to integrate this into your systems.
Secure API .NET Client
This .NET SDK is an auto-generated client for the AndDone Secure API, built using the OpenAPI Generator. This .NET SDK targets both .Net 8 and NetStandard 2.0 for client consumption. Based on the client's target framework, the appropriate Nuget package will be pulled when referenced.
- API version: 2.3
- Package version: 1.0.3
- Generator version: 7.9.0
- Build package:
org.openapitools.codegen.languages.CSharpClientCodegen - Developer Documentation: DevDocs
- API Explorer: AndDone API Explorer
- Requirements
- Installation
- Configuration
- Quickstart
- API Endpoints
- Models
- Authorization
- Including library
- Support & Versioning
- .NET 6.0+ (supports .NET Core and .NET Framework)
- Access to AndDone Merchant Portal for API keys.
Dependencies are managed through NuGet:
- RestSharp 112.0.0+
- Newtonsoft.Json 13.0.2+
- JsonSubTypes 1.8.0+
- System.ComponentModel.Annotations 5.0.0+
Install dependencies via NuGet:
Install-Package RestSharp
Install-Package Newtonsoft.Json
Install-Package JsonSubTypes
Install-Package System.ComponentModel.AnnotationsThen include the DLLs or reference the project, and import the namespaces:
using Org.OpenAPITools.Api;
using Org.OpenAPITools.Client;
using Org.OpenAPITools.Model;-
Retrieve Developer Credentials:
-
Log in to AndDone Merchant Portal:
- UAT: https://portal.uat.anddone.com
- Production: https://portal.anddone.com
-
Go to Developer → API Keys in the left menu.
-
Copy:
xApiKey(API Key)xAppKey(App Key)
-
-
Determine Your Origin: The
originis your public IP address. Find it by searching "what's my IP" in Google or visiting https://www.whatsmyip.org.- Contact AndDone support to ensure your origin IP is registered.
- Email: integrations@anddone.com
-
Optional: Create a Configuration File: Rename
config.example.jsontoconfig.jsonand fill it with your values:{ "xApiKey": "YOUR_API_KEY", "xAppKey": "YOUR_APP_KEY", "xVersion": "2.3", "origin": "YOUR_IP_ADDRESS" }
Here’s a minimal working example to call the Secure Create Payment Intent API:
using System;
using Newtonsoft.Json;
using Newtonsoft.Json.Linq;
using Org.OpenAPITools.Api;
using Org.OpenAPITools.Client;
using Org.OpenAPITools.Model;
var config = new Configuration
{
BasePath = "https://api.uat.anddone.com"
};
var apiInstance = new SecurePaymentIntentApi(config);
// Required headers
string xApiKey = "YOUR_API_KEY";
string xAppKey = "YOUR_APP_KEY";
float xVersion = 2.3F;
string origin = "YOUR_ORIGIN";
var request = @"{
""saveForFuture"": true,
""amount"": 10000,
""title"": ""test title 001a"",
""shortDescription"": ""shortDescription"",
""paymentDescription"": ""paymentDescription"",
""invoiceNumber"": ""postman"",
""expiresIn"": ""300000"",
""intent"": {
""paymentTypes"": [
""CreditCard"",
""ACH""
]
},
""enablePremiumFinance"": true,
""splits"": null,
""additionalDetailsPreference"": ""NoAdditionalDetails""
}";
JObject data = JObject.Parse(request);
PaymentIntentRequest postBody = JsonConvert.DeserializeObject<PaymentIntentRequest>(data.ToString());
try
{
var response = apiInstance.SecurePaymentintentsPostWithHttpInfo(xApiKey, xAppKey, xVersion, origin, postBody);
Debug.Write("Status Code: " + response.StatusCode);
Debug.Write("Response Headers: " + response.Headers);
Debug.Write("Response Body: " + response.Data);
}
catch (ApiException e)
{
Debug.WriteLine("Exception when calling SecurePaymentIntentApi: " + e.Message);
}All URIs are relative to:
- UAT:
https://api.uat.anddone.com - Production:
https://api.anddone.com
Click to view all endpoints
| Class | Method | HTTP request | Description |
|---|---|---|---|
| SecureEmbeddedPremiumFinanceApi | SecureEpfMerchantsQuotesPolicyPut | PUT /secure/epf/merchants/quotes/policy | This API is will update the policy number |
| SecureEmbeddedPremiumFinanceApi | SecureEpfQuotesBookingPut | PUT /secure/epf/quotes/booking | This API will update PFA to book a quote. |
| SecureEmbeddedPremiumFinanceApi | SecureEpfQuotesCaptureesignPut | PUT /secure/epf/quotes/captureesign | This API will eSign the pfa with insured name. |
| SecureEmbeddedPremiumFinanceApi | SecureEpfQuotesGeneratePost | POST /secure/epf/quotes/generate | This API is used to Generate Quotes |
| SecureEmbeddedPremiumFinanceApi | SecureEpfQuotesIntentPost | POST /secure/epf/quotes/intent | This API will return quotes created againsts a payment intent. |
| SecureEmbeddedPremiumFinanceApi | SecureEpfQuotesPost | POST /secure/epf/quotes | This API will return quote by QuoteKey. |
| SecureEmbeddedPremiumFinanceApi | SecureEpfRetrievepfaPost | POST /secure/epf/retrievepfa | This API will return PFA for given quoteKey. |
| SecureEmbeddedPremiumFinanceEndorsementsApi | SecureEpfEndorsementsPost | POST /secure/epf/endorsements | This API will do a check of eligibility of account |
| SecureEmbeddedPremiumFinanceEndorsementsApi | SecureEpfQuoteEndorsementBookingPut | PUT /secure/epf/quote/endorsement/booking | This API will update PFA to book a endorsement quote. |
| SecureEmbeddedPremiumFinanceEndorsementsApi | SecureEpfQuoteEndorsementPost | POST /secure/epf/quote/endorsement | This API will do return a quote for an existing policy or new policy for an existing account |
| SecureOrumApi | SecureBankaccountsDetailsPost | POST /secure/bankaccounts/details | This API will request for verified bank account. |
| SecureOrumApi | SecureBankaccountsVerifyPost | POST /secure/bankaccounts/verify | This API will request for account verification. |
| SecureOutboundPaymentsApi | VendorapiSecureOutboundPaymentsTimelinesPost | POST /vendorapi/secure/outboundPayments/timelines | This API gets outbound payment timelines |
| SecureOutboundPaymentsApi | VendorapiSecureOutboundpaymentsCancelPost | POST /vendorapi/secure/outboundpayments/cancel | This API cancel outbound payment request |
| SecureOutboundPaymentsApi | VendorapiSecureOutboundpaymentsDetailPost | POST /vendorapi/secure/outboundpayments/detail | This API fetch outbound payment by paymentId |
| SecureOutboundPaymentsApi | VendorapiSecureOutboundpaymentsPost | POST /vendorapi/secure/outboundpayments | This API creates outbound payment request |
| SecureOutboundPaymentsApi | VendorapiSecureOutboundpaymentsSearchPost | POST /vendorapi/secure/outboundpayments/search | This API gets all outbound payment |
| SecurePaymentBatchingApi | SecureBatchesDetailsPost | POST /secure/batches/details | This API is used for getting Secure Payment Batch Details |
| SecurePaymentBatchingApi | SecureBatchesExecutePost | POST /secure/batches/execute | This API execute on-demand batch transaction. |
| SecurePaymentBatchingApi | SecureBatchesPost | POST /secure/batches | This API is used for getting Secure Payment Batches |
| SecurePaymentBatchingApi | SecureBatchesTimelinesPost | POST /secure/batches/timelines | This API will returns batch timeline. |
| SecurePaymentBatchingApi | SecureBatchesTransactionsCancelPost | POST /secure/batches/transactions/cancel | This API cancels transactions from an active batch. |
| SecurePaymentIntentApi | SecurePaymentintentsExpirationsPost | POST /secure/paymentintents/expirations | This API expires the payment Intent or link. |
| SecurePaymentIntentApi | SecurePaymentintentsPost | POST /secure/paymentintents | This API is use to create Secure payment Intent. |
| SecurePaymentLinksApi | SecurePaymentlinksDetailsPost | POST /secure/paymentlinks/details | This API is used for getting Payment Links by PaymentLink ID |
| SecurePaymentLinksApi | SecurePaymentlinksExpirationsPost | POST /secure/paymentlinks/expirations | This API is used for to set expired payment link |
| SecurePaymentLinksApi | SecurePaymentlinksIdPut | PUT /secure/paymentlinks/{id} | This API is used to update Payment Links |
| SecurePaymentLinksApi | SecurePaymentlinksPost | POST /secure/paymentlinks | This API is used to create Payment Links |
| SecurePaymentsApi | SecurePaymentsExportPost | POST /secure/payments/export | This API gets Secure payment by search criteria for the merchant. |
| SecurePaymentsApi | SecurePaymentsPost | POST /secure/payments | This API posts new Secure payment request for the merchant. |
| SecurePaymentsApi | SecurePaymentsSearchPost | POST /secure/payments/search | This API gets Secure payment by search criteria for the merchant. |
| SecurePaymentsApi | SecurePaymentsdetailsPost | POST /secure/paymentsdetails | This API is used for getting details of Payments |
| SecurePremiumFinanceLiteApi | SecureEpfliteQuotesGeneratePost | POST /secure/epflite/quotes/generate | This API is used to generate the quote from the provider. |
| SecurePremiumFinanceLiteApi | SecureEpfliteQuotesLinkPost | POST /secure/epflite/quotes/link | This API will return quotes created againsts a payment link. |
| SecurePremiumFinanceLiteApi | SecureEpfliteQuotesPaymentlinksPost | POST /secure/epflite/quotes/paymentlinks | This API is used to create Payment Links |
| SecureRefundsApi | SecureRefundsEligibilityPost | POST /secure/refunds/eligibility | This API return refund eligibility of a transaction. |
| SecureRefundsApi | SecureRefundsPost | POST /secure/refunds | This API will refund a transaction which has been settled by the processor. |
| SecureReportsApi | SecureReportsDownloadsPost | POST /secure/reports/downloads | This API will add system report. |
| SecureTokenLinksApi | SecureTokenlinksDetailsPost | POST /secure/tokenlinks/details | This API is used for getting Token Links by TokenLink ID |
| SecureTokenLinksApi | SecureTokenlinksExpirationsPost | POST /secure/tokenlinks/expirations | This API expires the token link. |
| SecureTokenLinksApi | SecureTokenlinksListPost | POST /secure/tokenlinks/list | This API is used for getting all Token Links for Merchant |
| SecureTokenLinksApi | SecureTokenlinksPost | POST /secure/tokenlinks | This API is use to create Secure Token Links |
| SecureTokenLinksApi | SecureTokenlinksPut | PUT /secure/tokenlinks | This API will update the expireIn and paymentType of Token Link. |
| SecureTokenManagementApi | SecureTokensActivationsDelete | DELETE /secure/tokens/activations | This API is used for deactivating merchant token securely |
| SecureTokenManagementApi | SecureTokensDetailsPost | POST /secure/tokens/details | This API is used for getting details of Merchant Token by Token link. |
| SecureVendorManagementApi | VendorapiSecureMerchantsVendorsDeletePost | POST /vendorapi/secure/merchants/vendors/delete | This API deletes vendor into system |
| SecureVendorManagementApi | VendorapiSecureMerchantsVendorsDetailsPost | POST /vendorapi/secure/merchants/vendors/details | This API gets details of particular vendor |
| SecureVendorManagementApi | VendorapiSecureMerchantsVendorsEditPost | POST /vendorapi/secure/merchants/vendors/edit | This API Updates the existing vendor |
| SecureVendorManagementApi | VendorapiSecureMerchantsVendorsPost | POST /vendorapi/secure/merchants/vendors | This API creates vendor into system |
| SecureVendorManagementApi | VendorapiSecureMerchantsVendorsSearchPost | POST /vendorapi/secure/merchants/vendors/search | This API returns list of all the Vendors of Merchant |
| SecureVendorManagementApi | VendorapiSecureMerchantsVendorsSuspendPost | POST /vendorapi/secure/merchants/vendors/suspend | This API suspends vendor into system |
| SecureVendorManagementApi | VendorapiSecureMerchantsVendorsTimelinePost | POST /vendorapi/secure/merchants/vendors/timeline | This API gets timeline of particular vendor |
| SecureVendorManagementApi | VendorapiSecureMerchantsVendorsUnsuspendPost | POST /vendorapi/secure/merchants/vendors/unsuspend | This API unsuspends vendor into system |
| SecureVoidsApi | SecureCancellationsPost | POST /secure/cancellations | This API cancel a transaction. |
Click to view all models
- Model.BankDetailDto
- Model.CancelPaymentRequestDTO
- Model.DataDto
- Model.GetQuoteKeyRequest
- Model.GetQuoteRequest
- Model.HeadingDto
- Model.MerchantTransactionEntityResponse
- Model.MerchantTransactionEntityResponseDataInner
- Model.OutboundPaymentTimelineResponseDTOInner
- Model.PFCheckEndorsementsRequest
- Model.PFCheckEndorsementsResponse
- Model.PFCheckEndorsementsResponseItem
- Model.PFCheckEndorsementsResponseItemPoliciesInner
- Model.PFEndorsementRequest
- Model.PFEndorsementRequestQuote
- Model.PFEndorsementRequestQuoteAgent
- Model.PFEndorsementRequestQuoteAgentAddress
- Model.PFEndorsementRequestQuoteCommunication
- Model.PFEndorsementRequestQuoteDetails
- Model.PFEndorsementRequestQuoteDetailsRecurringACH
- Model.PFEndorsementRequestQuoteInsured
- Model.PFEndorsementRequestQuoteInsuredAddress
- Model.PFEndorsementRequestQuotePoliciesInner
- Model.PFEndorsementRequestQuotePoliciesInnerCompany
- Model.PFEndorsementRequestQuotePoliciesInnerGa
- Model.PFEndorsementRequestQuotePoliciesInnerPolicyFeeInner
- Model.PFEndorsementRequestQuotePoliciesInnerTotalPayFundingInner
- Model.PFEndorsementResponse
- Model.PFEndorsementResponseItem
- Model.PFEndorsementResponseItemPaymentIntent
- Model.PFEndorsementResponseItemPaymentIntentIntent
- Model.PFEndorsementResponseItemQuote
- Model.PFEndorsementResponseItemQuoteESignResult
- Model.PFGenerateQuoteResponse
- Model.PFGenerateQuoteResponseItem
- Model.PFGenerateQuoteResponseItemESignResult
- Model.PFLiteGenerateQuoteResponse
- Model.PFLiteGenerateQuoteResponseItem
- Model.PFLiteGenerateQuoteResponseItemESignResult
- Model.PFLiteGetQuoteRequest
- Model.PFLitePaymentLinkRequest
- Model.PFLitePaymentLinkRequestCallbackParameters
- Model.PFLitePaymentLinkRequestCustomersInner
- Model.PFLitePaymentLinkRequestCustomersInnerAddress
- Model.PFLitePaymentLinkRequestReferenceDataListInner
- Model.PFLitePaymentLinkRequestSettings
- Model.PFLiteQuoteByPaymentLinkResponse
- Model.PFLiteQuoteByPaymentLinkResponsePoliciesInner
- Model.PFLiteQuoteByPaymentLinkResponsePoliciesInnerCarrier
- Model.PFLiteSecureQuoteRequest
- Model.PFLiteSecureQuoteRequestInsured
- Model.PFLiteSecureQuoteRequestInsuredAddress
- Model.PFLiteSecureQuoteRequestMerchant
- Model.PFLiteSecureQuoteRequestPoliciesInner
- Model.PFLiteSecureQuoteRequestPoliciesInnerCarrier
- Model.PFLiteSecureQuoteRequestProgram
- Model.PFPolicyUpdateRequestDTO
- Model.PFPolicyUpdateResponse
- Model.PFQuoteBookingRequest
- Model.PFQuoteEsignRequest
- Model.PFRetrievePFARequest
- Model.PFRetrievePFARequestDTO
- Model.PFUpdatePFARequestDTO
- Model.PFUpdatePFAResponse
- Model.PagePaymentListResponseDTO
- Model.PagePaymentListResponseDTODataInner
- Model.PageVendorResponseDTO
- Model.PageVendorResponseDTODataInner
- Model.PaymentBatchCancellationRequest
- Model.PaymentBatchDetailsResponse
- Model.PaymentBatchDetailsResponseTransactionDetailsInner
- Model.PaymentBatchEventLogResponse
- Model.PaymentBatchResponse
- Model.PaymentBatchResponseDataInner
- Model.PaymentDetailResponseDTO
- Model.PaymentIntentExpiresResponse
- Model.PaymentIntentRequest
- Model.PaymentIntentRequestCustomersInner
- Model.PaymentIntentRequestIntent
- Model.PaymentIntentRequestPfr
- Model.PaymentIntentRequestReferenceDataListInner
- Model.PaymentIntentRequestSplitsInner
- Model.PaymentIntentResponse
- Model.PaymentIntentResponseCustomersInner
- Model.PaymentLinkExpiresResponse
- Model.PaymentLinkRequest
- Model.PaymentLinkRequestSettings
- Model.PaymentLinkRequestSettingsIntent
- Model.PaymentLinkResponse
- Model.PaymentLinkResponseCallbackParameters
- Model.PaymentLinkResponseCustomersInner
- Model.PaymentLinkResponseCustomersInnerAccountsInner
- Model.PaymentLinkResponseDisplaySettings
- Model.PaymentLinkResponseDisplaySettingsIntent
- Model.PaymentLinkResponseLineItemsInner
- Model.PaymentLinkResponsePaymentsInner
- Model.PaymentLinkResponseReferenceDataListInner
- Model.PaymentListResponseDTO
- Model.PaymentRequest
- Model.PaymentRequestDetailDTO
- Model.PaymentRequestDto
- Model.PaymentRequestDtoData
- Model.PaymentRequestDtoDataRemittanceData
- Model.PaymentRequestTenderInfo
- Model.PaymentResponseDto
- Model.PaymentTimeLineRequestDto
- Model.QuoteRequest
- Model.QuoteRequestAgent
- Model.QuoteRequestAgentAddress
- Model.QuoteRequestDetails
- Model.QuoteRequestInsured
- Model.QuoteRequestInsuredAddress
- Model.QuoteRequestPoliciesInner
- Model.QuoteRequestPoliciesInnerCompany
- Model.QuoteRequestPoliciesInnerGa
- Model.QuoteRequestPoliciesInnerGaAddress
- Model.QuoteResponse
- Model.RefundEligibility
- Model.RemittanceDataDto
- Model.ReportDownloadRequest
- Model.RowDto
- Model.SecureBatchExecuteRequest
- Model.SecureCancelledTransactionResponse
- Model.SecureMerchantTokenShortResponse
- Model.SecurePaymentBatchDetailsRequest
- Model.SecurePaymentDetailsRequest
- Model.SecurePaymentLinkRequest
- Model.SecureTokenLinkByIdResponse
- Model.SecureTokenLinkByIdResponseAccountToken
- Model.SecureTokenLinkByIdResponseTimeLineInner
- Model.SecureTokenLinkExpiredResponse
- Model.SecureTokenLinkRequest
- Model.SecureTokenLinkResponse
- Model.SecureTokenLinkResponseCustomersInner
- Model.SecureTokenLinkResponseIntent
- Model.SecureTokenLinkUpdateRequest
- Model.SecureTransactionCancelRequest
- Model.SecureTransactionDetailDTO
- Model.SecureTransactionDetailDTOTenderInfo
- Model.SecureTransactionRefundRequest
- Model.SecureUpdatePaymentLinkRequest
- Model.SecureUpdatePaymentLinkRequestSettings
- Model.SecureUpdatePaymentLinkRequestSettingsIntent
- Model.SecureVendorRequestDTO
- Model.SecureVendorResponseDTO
- Model.SecureVendorResponseDTORemittanceAddress
- Model.SecureVendorStatusRequestDTO
- Model.SecureVendorTimelineRequestDTO
- Model.SecureVendorUpdateRequestDTO
- Model.SecureVendorUpdateRequestDTORemittanceAddress
- Model.TokenLinkResponse
- Model.TokenLinkResponseDataInner
- Model.TokenLinkSecureRequest
- Model.TokenLinkSecureRequestCustomersInner
- Model.TokenLinkSecureRequestIntent
- Model.TokenRequest
- Model.TransactionDetailResponse
- Model.TransactionDetailResponseSplitsInner
- Model.TransactionDetailResponseTenderInfo
- Model.TransactionPaymentResponse
- Model.TransactionPaymentResponseAchTenderInfo
- Model.TransactionPaymentResponseBillingContact
- Model.TransactionPaymentResponseBillingContactAddress
- Model.TransactionPaymentResponseBillingContactName
- Model.TransactionPaymentResponseCcTenderInfo
- Model.TransactionPaymentResponseRefundTransactions
- Model.TransactionPaymentResponseRefundTransactionsDataInner
- Model.TransactionPaymentResponseTransactionEntitySplitResponsesInner
- Model.TransactionPaymentResponseTransactionResult
- Model.TransactionRefundEligibilityRequest
- Model.UpdateIntentRequest
- Model.VendorRequestDTO
- Model.VendorRequestDTOPhysicalAddress
- Model.VendorRequestDTORemittanceAddress
- Model.VendorResponseDTO
- Model.VendorResponseDTORemittanceAddress
- Model.VendorResponseDTOTemplate
- Model.VendorResponseDTOVerificationResultsInner
- Model.VendorTimelineResponseListInner
- Model.VerificationEntityRequest
- Model.VerifyBankAccountRequest
- Model.VerifyBankAccountRequestBankAccountEntity
- Model.VerifyBankAccountResponse
- Model.VerifyBankAccountResponseHttpResponse
You can include this AndDone's DotNet client library in your project manually or within Visual Studio. Note that the first time you include the library, you may be prompted to enter your GitHub credentials.
- Add the package source reference to the local machine by running the following in Powershell:
dotnet nuget add source --name githubanddone "https://nuget.pkg.github.com/AndDone-kit/index.json"- In your .csproj file, add a package reference to:
<PackageReference Include="AndDoneSecureClientLibrary" Version="1.0.0" />To include the AndDone's DotNet client library in your project, a nuget.config file is included at the solution level to reference the package library.
Authentication is handled via API keys in HTTP headers:
| Key | Location | Description |
|---|---|---|
| x-api-key | Header | Your API key |
| x-app-key | Header | Your App key |
| x-version | Header | API version (e.g., 2.3) |
| origin | Header | Your public IP address |
- API Environments: Use UAT for testing; switch to Production only after validation.
- Issues: Report bugs or request features via the GitHub Issues page.