Drupal Commerce
Integroi Cost+ Drupal Commerce -kauppaasi virallisen maksuporttimoduulin avulla

Integroi Cost+ maksutavaksi Drupal Commerce -kauppaasi. Virallinen NoPayn Payment Gateway -moduuli käyttää isännöidyn maksusivun kulkua, joten korttitiedot eivät koskaan kosketa palvelintasi — täysin PCI DSS -yhteensopiva.
Edellytykset
- Aktiivinen Cost+-kauppiastili
- Drupal 10 tai 11
- Drupal Commerce 3.x
- PHP 8.1 tai uudempi
- Ylläpitäjän pääsy Drupal-sivustoosi
Tuetut maksutavat
- Credit / Debit Card — Visa, Mastercard ja muut
- Apple Pay
- Google Pay
- Vipps / MobilePay
1. Asenna moduuli
Kopioi commerce_nopayn-moduuli Drupal-asennukseesi ja ota se käyttöön:
cp -r commerce_nopayn /path/to/drupal/web/modules/custom/
drush en commerce_nopayn -y
drush crVoit myös ladata moduulin suoraan GitHub-tietovarastosta.
2. Lisää maksuportti
- Siirry kohtaan Commerce → Configuration → Payment gateways (
/admin/commerce/config/payment-gateways) - Napsauta Add payment gateway
- Valitse lisäosaksi NoPayn Payment Gateway
3. Määritä portti
Syötä seuraavat asetukset:
- NoPayn API Key — Kauppias-API-avaimesi kauppiasportaalista
- Payment Methods — Ota käyttöön tai poista käytöstä Credit Card, Apple Pay, Google Pay, Vipps MobilePay
- Mode — Aseta tilaan Test käytettäessä sandbox-verkkosivuston API-avainta, tai Live käytettäessä tuotantosivuston avainta
Ota käyttöön vain ne maksutavat, jotka on hyväksytty ja joista olet saanut vahvistuksen.
Valinnaiset asetukset
- Manual Capture — Valtuuta luottokorttimaksut ilman välitöntä veloitusta (varat varataan ja veloitetaan tilauksen toimittamisen yhteydessä)
- Debug Logging — Ota käyttöön kaikkien API-pyyntöjen ja -vastausten kirjaaminen Drupal-lokiin vianmääritystä varten
Napsauta Save kun valmis.
4. Maksukulku
Kun asetukset on tehty, maksukulku toimii seuraavasti:
- Asiakas lisää tuotteita ostoskoriin ja siirtyy kassalle
- Maksuvaiheessa käyttöön otetut Cost+-tavat näytetään radiopainikkeina
- Asiakas valitsee tavan ja vahvistaa tilauksen
- Moduuli luo tilauksen Cost+ API:n kautta ja ohjaa isännöidylle maksusivulle
- Asiakas suorittaa maksun Cost+-sivulla
- Asiakas palaa kauppaan — maksu vahvistetaan API:n kautta
- Cost+:n webhook vahvistaa asynkronisesti maksun tuloksen
Maksuistunnot vanhenevat 5 minuutin kuluttua Cost+-standardien mukaisesti. Moduuli lähettää myös eritellyt tilausrivit (tuotteet ja toimitus) Cost+:lle yksityiskohtaista tapahtumatietojen kirjausta varten.
5. Webhook-asetukset
Webhook-URL luodaan automaattisesti Drupal Commercen toimesta:
https://your-store.com/payment/notify/{gateway_machine_name}Esimerkiksi: https://your-store.com/payment/notify/nopayn
Tämän URL:n on oltava käytettävissä internetistä ilman todennusta. Moduuli vahvistaa aina maksun tilan API:n kautta — se ei koskaan luota pelkästään webhook-dataan.
Manuaalinen veloitus
Kun manuaalinen veloitus on käytössä luottokorteille:
- Asiakkaan kortti valtuutetaan (varat varataan) kassan aikana
- Veloitus tapahtuu automaattisesti, kun tilaus siirtyy tilaan Fulfilled
- Jos tilaus peruutetaan, valtuutus mitätöidään webhookin kautta
Käytä manuaalista veloitusta, jos haluat veloittaa asiakkaita vasta tilauksen lähettämisen yhteydessä. Tämä on hyödyllistä kauppiaille, joilla on pidempi toimitusaika.
Palautukset
Palautukset voidaan käsitellä suoraan Commerce-hallintapaneelista. Sekä täydet että osittaiset palautukset ovat tuettuja.
Tietokantataulut
Moduuli luo kaksi taulua seurantaa varten:
| Taulu | Tarkoitus |
|---|---|
nopayn_transactions | Seuraa Cost+ API:lla luotuja maksutilauksia |
nopayn_refunds | Tallentaa palautusoperaatiot auditointia varten |
Asennuksen poisto
drush pmu commerce_nopayn -y
drush crModuulin poistaminen poistaa nopayn_transactions- ja nopayn_refunds-taulut. Varmista, että viet tarvitsemasi tiedot ennen asennuksen poistoa.
Testaa ja julkaise
Tee muutama testitapahtuma varmistaaksesi, että kaikki toimii sujuvasti. Aseta portin Mode-asetukseksi Test ja varmista sekä onnistuneet että epäonnistuneet maksut ennen Live-tilaan siirtymistä.
Tuki
Tarvitsetko apua? Ota yhteyttä tukitiimiimme osoitteessa support@costplus.io.