{"id":23448534,"url":"https://github.com/mondido/net-sdk","last_synced_at":"2025-04-13T17:33:06.104Z","repository":{"id":19395203,"uuid":"22636603","full_name":"Mondido/net-sdk","owner":"Mondido","description":"Mondido Payments SDK for .NET ","archived":false,"fork":false,"pushed_at":"2018-07-24T09:54:51.000Z","size":8166,"stargazers_count":4,"open_issues_count":4,"forks_count":3,"subscribers_count":5,"default_branch":"master","last_synced_at":"2025-04-12T02:24:01.256Z","etag":null,"topics":["betalningar","csharp","dotnet","e-commerce","mono","nuget","payments","pci-dss"],"latest_commit_sha":null,"homepage":"https://mondido.com","language":"C#","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Mondido.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2014-08-05T08:40:51.000Z","updated_at":"2018-07-24T09:54:53.000Z","dependencies_parsed_at":"2022-09-11T15:31:50.699Z","dependency_job_id":null,"html_url":"https://github.com/Mondido/net-sdk","commit_stats":null,"previous_names":[],"tags_count":3,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Mondido%2Fnet-sdk","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Mondido%2Fnet-sdk/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Mondido%2Fnet-sdk/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Mondido%2Fnet-sdk/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Mondido","download_url":"https://codeload.github.com/Mondido/net-sdk/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248752614,"owners_count":21156125,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["betalningar","csharp","dotnet","e-commerce","mono","nuget","payments","pci-dss"],"created_at":"2024-12-23T22:16:58.713Z","updated_at":"2025-04-13T17:33:06.069Z","avatar_url":"https://github.com/Mondido.png","language":"C#","funding_links":[],"categories":[],"sub_categories":[],"readme":".NET SDK for Mondido Payments\n=======\n\nVersion 2.3\n\nParsing of returned object in error case\n\nVersion 2.2\n\nUpdated error handling, that adds a property 'ApiError' which contain any error messages or HTTP codes.\n\n\nVersion 2.1\n\n.NET version 4.5\n\nThe SDK provides developers with a easy-to-use library to make payments in their .NET Server or Windows Phone / Xamarin application. \nOpen the included unit tests and see how it works.\n\nCHANGELOG\n---\n2017-08-14\n- Added RestSharp \n\n2017-01-31\n- Added support for items, metadata, auth and capture for Transaction\n- Added Subscriptions, Plans, Customers\n\nExample, preparing a payment for Hosted Window:\n``` csharp\n\n//prepare a payment\nvar payment_ref = DateTimeOffset.Now.Ticks.ToString();\nvar customer_ref = \"MyCustomer123\";\nvar currency = \"eur\";\nvar test = \"true\";\nvar postData = new List\u003cKeyValuePair\u003cstring, string\u003e\u003e();\nvar process = \"false\"\n\npostData.Add(new KeyValuePair\u003cstring, string\u003e(\"amount\", \"10.00\"));\npostData.Add(new KeyValuePair\u003cstring, string\u003e(\"payment_ref\", payment_ref));\npostData.Add(new KeyValuePair\u003cstring, string\u003e(\"customer_ref\", customer_ref));\npostData.Add(new KeyValuePair\u003cstring, string\u003e(\"test\", test));\npostData.Add(new KeyValuePair\u003cstring, string\u003e(\"currency\", currency));\npostData.Add(new KeyValuePair\u003cstring, string\u003e(\"locale\", \"en\"));\npostData.Add(new KeyValuePair\u003cstring, string\u003e(\"hash\", (Settings.ApiUsername + payment_ref + customer_ref + \"10.00\" + currency + (test.Equals(\"true\") ? \"test\" : \"\" ) + Settings.ApiSecret).ToMD5()));\npostData.Add(new KeyValuePair\u003cstring, string\u003e(\"process\", process)); // We don't want to process, but only get the URL for later card/invoice/other collecting.\n\nvar newTransaction = Mondido.Payment.Transaction.Create(postData);\nvar redirect_the_customer_to_this_url = newTransaction.Href;\n//it will look like this: https://pay.mondido.com/v1/form/Wcxn78Ow5EkxsAS4rIdx5w\n\n```\n\nExample card payment:\n``` csharp\n//get one transaction   \nvar transaction = Mondido.Payment.Transaction.Get(1);\n\n//get three, from the top   \nvar transactions = Mondido.Payment.Transaction.List(3,0);\n\n//create a payment using encrypted card number\nvar payment_ref = DateTimeOffset.Now.Ticks.ToString();\nvar customer_ref = \"Customer Reference Test\";\nvar currency = \"sek\";\nvar test = \"true\";\nvar postData = new List\u003cKeyValuePair\u003cstring, string\u003e\u003e();\nvar encryptedCard = \"4111111111111111\".RSAEncrypt();//DO NOT COLLECT CARD NUMBERS OR SEND CARD NUMBERS IN CLEAR TEXT. \n//You should set encryptedCard to a tokenized card number and use it as recurring.\n\npostData.Add(new KeyValuePair\u003cstring, string\u003e(\"amount\", \"10.00\"));\npostData.Add(new KeyValuePair\u003cstring, string\u003e(\"payment_ref\", payment_ref));\npostData.Add(new KeyValuePair\u003cstring, string\u003e(\"customer_ref\", customer_ref));\npostData.Add(new KeyValuePair\u003cstring, string\u003e(\"card_expiry\", \"0116\"));\npostData.Add(new KeyValuePair\u003cstring, string\u003e(\"card_holder\", \".net sdk\"));\npostData.Add(new KeyValuePair\u003cstring, string\u003e(\"test\", test));\npostData.Add(new KeyValuePair\u003cstring, string\u003e(\"card_cvv\", \"200\"));\npostData.Add(new KeyValuePair\u003cstring, string\u003e(\"card_number\", encryptedCard));\npostData.Add(new KeyValuePair\u003cstring, string\u003e(\"card_type\", \"VISA\"));\npostData.Add(new KeyValuePair\u003cstring, string\u003e(\"currency\", currency));\npostData.Add(new KeyValuePair\u003cstring, string\u003e(\"locale\", \"en\"));\npostData.Add(new KeyValuePair\u003cstring, string\u003e(\"hash\", (Settings.ApiUsername + payment_ref + customer_ref + \"10.00\" + currency + (test.Equals(\"true\") ? \"test\" : \"\" ) + Settings.ApiSecret).ToMD5()));\npostData.Add(new KeyValuePair\u003cstring, string\u003e(\"encrypted\", \"card_number\"));\n\nvar newTransaction = Mondido.Payment.Transaction.Create(postData);\n```\n\nRead more at https://mondido.com/documentation\n\nIMPORTANT: \n---\nMondido is a certified payment provider compliant to Payment Card Industry Data Security Standard (PCI DSS) to provide a secure transaction for merchants and their customers.\nPCI compliance for merchants is required for any business accepting cardholder data. \n     \nWe strongly recommend NOT sending card numbers unencrypted to and from your server.\nLet Mondido capture this sensitive information using one of our hosted window or .js solutions to avoid PCI compliance issues.   \nhttps://www.mondido.com/documentation/hosted   \nhttps://www.mondido.com/documentation/mondidojs   \n\n\n3D-SECURE:\n---\nSince many card transactions require 3D-Secure it is highly recommend that this SDK is implented to prepare payments and refunds, but collecting card data should be done in a Hosted Window environment so that 3D-Secure can be handled by Mondido.\n\n\n\nCONFIGURATION:\n---\nFirst sign up and create your merchant account at: https://www.mondido.com/registrera\n\n#### Settings\n\n##### Api BaseUrl\n\nhttps://api.mondido.com/v1\n\n##### Api Username\n\nThe merchant id found at: https://www.mondido.com/en/settings#api after you have logged in and created a merchant account\n\n##### Api Password\n\nThe merchant password that you have set at: https://www.mondido.com/en/settings#api after you have logged in and created a merchant account\n\n##### Api Secret\n\nThe merchant secret that you can find at: https://www.mondido.com/en/settings#api after you have logged in and created a merchant account\n\n##### RSAKey\n\nThe merchant RSA public key that you can find at: https://www.mondido.com/en/settings#api after you have logged in and created a merchant account\n\n===========\n\n\nDEPENDENCIES:\n---\nThis SDK require:   \nNewtonsoft JSON.NET (https://www.nuget.org/packages/Newtonsoft.Json/)   \nBouncy Castle (https://www.nuget.org/packages/BouncyCastle/)   \n\n# Mondido Payments Documentation\n\nOur focus is to make it as smooth as possible for you to implement Mondido and start accepting payments, regardless of whether you are implementing from scratch or already have an existing payment service in place.\n\nRead more\n* https://doc.mondido.com/\n\n## Supported Card Types\nDefault card types that you will have access to are VISA and Mastercard, but the other such as AMEX, JCB and Diners are on separate contracts. Contact support for more information about card types.\n\n* https://doc.mondido.com/api#cardtypes\n\n## Test Cards\nTo create test transactions you need to send in a test card number, and also a CVV code that can simulate different responses\n\n* https://doc.mondido.com/api#testcards\n\n## Error messages\nWe aim to send as many insightful and helpful error messages to you as possible, both in numeric, data and human readable.\n\n* https://doc.mondido.com/api#errors\n\n# Help\n\n* FAQ (Swedish) - http://help.mondido.com/\n\n# PCI DSS\n\nMondido is a certified payment provider compliant to Level 1 Payment Card Industry Data Security Standard (PCI DSS) version 3.1 to provide a secure transaction for merchants and their customers. PCI compliance for merchants is required for any business accepting cardholder data. Let Mondido capture this sensitive information using one of our Hosted Window or mondido.js solutions to avoid PCI compliance issues.\n\n* Payment Card Industry Data Security Standard (PCI DSS) - https://www.pcicomplianceguide.org/pci-faqs-2/#5\n* Payment security educational resources - https://www.pcisecuritystandards.org/pci_security/educational_resources\n* Hosted Window - https://doc.mondido.com/hosted\n\n# 3D-Secure\n\nMondido understands the need to incorporate best business practices in security. That's why we've made it easy for merchants to implement 3D Secure or “3 Domain Secure” as the industry standard identity check solution to minimize chargebacks from fraudulent credit cards, all included in our simple pricing. 3D-Secure refers to second authentication factor products such as Verified by Visa, MastercardⓇSecureCode™, American Express SafekeyⓇ, and JCB J/Secure™.\n\nNOTE: While you can create your own payment experience, We strongly recommend using our Hosted Window or Mondido.js solution to save time in implementing 3D-Secure and client side encryption to your checkout procedure.\n\n* Verified by Visa - http://www.visaeurope.com/making-payments/verified-by-visa/\n* MastercardⓇSecureCode™ - https://www.mastercard.us/en-us/merchants/safety-security.html\n* American Express SafekeyⓇ  - https://www.americanexpress.com/uk/content/safekey-information.html?linknav=uk-securitycentre-home-safekey-learn\n* JCB J/Secure™ - http://www.global.jcb/en/\n\n# SSL\n\nSecure Socket Layer is required to securely transfer cardholder data and payment information to Mondido. It is recommended that you purchase a SSL certificate directly through a recognized certification authority such as TrustwaveⓇ, HTTPS.SE or purchase a custom SSL certificate through your current e-commerce solution.\n\n* TrustwaveⓇ - https://ssl.trustwave.com/buy-ssl-certificate?___s=1\n* HTTPS.SE - https://https.se/\n\n# Follow us on\n* GitHub - https://github.com/Mondido\n* Facebook - https://www.facebook.com/mondidopayments\n* Twitter https://twitter.com/mondidopay\n* LinkedIn  - https://www.linkedin.com/company/mondido\n* Instagram - https://www.instagram.com/mondidopay/\n\n\nDo not hesitate to contact support@mondido.com for any questions!\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmondido%2Fnet-sdk","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmondido%2Fnet-sdk","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmondido%2Fnet-sdk/lists"}