Configuration Guide¶
Complete reference for configuring the CibPay .NET SDK.
Basic Configuration¶
using CibPay.Http.Configuration;
var options = new SdkOptions
{
// Required
Username = "your-username",
Password = "your-password",
BaseUrl = "https://api-preprod.cibpay.co",
CertificatePath = "Certificate/api-cibpay.p12",
CertificatePassword = "your-certificate-password",
};
Required Parameters¶
Authentication Parameters¶
Parameter | Type | Description |
---|---|---|
Username |
string |
Your CibPay merchant username |
Password |
string |
Your CibPay merchant password |
CertificatePath |
string |
Path to your .p12 certificate file |
CertificatePassword |
string |
Password for the certificate file |
Service Parameters¶
Parameter | Type | Description |
---|---|---|
BaseUrl |
string |
CibPay API base URL |
Environment URLs:
- Staging/Testing: https://api-preprod.cibpay.co
- Production: Contact CibPay for production URL
ASP.NET Core Integration¶
appsettings.json¶
{
"CibPay": {
"Username": "your-username",
"Password": "your-password",
"BaseUrl": "https://api-preprod.cibpay.co",
"CertificatePath": "Certificate/api-cibpay.p12",
"CertificatePassword": "your-cert-password",
"ReturnUrl": "https://yoursite.com/payment/return"
}
}
Service Registration¶
builder.Services.AddSingleton<CibPayClient>(provider =>
{
var config = provider.GetRequiredService<IConfiguration>();
var options = new SdkOptions
{
Username = config["CibPay:Username"]!,
Password = config["CibPay:Password"]!,
BaseUrl = config["CibPay:BaseUrl"]!,
CertificatePath = config["CibPay:CertificatePath"]!,
CertificatePassword = config["CibPay:CertificatePassword"]!,
};
return CibPayClientFactory.Create(options);
});
Certificate Management¶
Project Setup¶
<Project Sdk="Microsoft.NET.Sdk">
<ItemGroup>
<None Update="Certificate\*.p12">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
</ItemGroup>
</Project>
Security Best Practices¶
- Never commit certificates to version control
- Use environment variables for sensitive data
- Store certificates securely in production
- Monitor certificate expiration dates
Environment Variables¶
For production, use environment variables:
var options = new SdkOptions
{
Username = Environment.GetEnvironmentVariable("CIBPAY_USERNAME")!,
Password = Environment.GetEnvironmentVariable("CIBPAY_PASSWORD")!,
BaseUrl = Environment.GetEnvironmentVariable("CIBPAY_BASE_URL")!,
CertificatePath = Environment.GetEnvironmentVariable("CIBPAY_CERT_PATH")!,
CertificatePassword = Environment.GetEnvironmentVariable("CIBPAY_CERT_PASSWORD")!
};
Common Errors¶
Error | Solution |
---|---|
Username cannot be null or empty |
Set Username property |
Certificate file not found |
Check file path and existence |
BaseUrl must be a valid absolute URI |
Use complete URL with protocol |