Loading
Salesforce-bestillingsbehandling
Konfigurere en betalingsgateway for bestilling på vegne av (bare B2C)

Konfigurere en betalingsgateway for bestilling på vegne av (bare B2C)

Hvis du ikke bruker Salesforce-betalinger, kan du konfigurere en betalingsgateway for å behandle betalinger. Betalingspakker for enkelte leverandører er tilgjengelig på AppExchange.

Nødvendige utgaver

Viktig
Viktig Hvis du bruker OOBO, er trinn 1-4 allerede konfigurert under implementeringen av Bestillingsbehandling. Gå direkte til trinn 5.

  1. Opprett en betalingsgatewayadapterklasse med Salesforce Apex.
    For å hjelpe deg i gang kan du se disse referanseklassene.
  2. Opprett en betalingsgatewayleverandørpost som peker til adapterklassen du opprettet.
  3. Definer en navngitt legitimasjon som inneholder gatewayleverandørens godkjennings- og påloggingsinformasjon, i Oppsett. Definisjonen for oppkall av adapterklasse kaller opp den navngitte legitimasjonen.
  4. Koble til betalingsgatewayleverandørposten og den navngitte legitimasjonen ved å opprette en betalingsgatewaypost.
  5. Knytt betalingsgatewayen til butikkposten.
Eksempel
Eksempel

Bruk et skript som dette til å knytte betalingsgatewayen til butikkposten

// Script to add a connection between the webstore and the payment gateway for B2C Commerce stores
String webStoreName = 'SiteGenesis';
String paymentGatewayName = 'SalesforceAdapter';

// obtain webstoreid
List<WebStore> webstores = [SELECT Id, Name FROM WebStore WHERE Name = :webStoreName];
System.debug('Webstores: ' + webstores);
if(webstores.isEmpty()){
    System.debug('Error obtaining webstore with name ' + webStoreName);
}
String webStoreId = webstores[0].Id;
System.debug('WebStoreId: ' + webStoreId);

// obtain payment gateway id from the payment gateway name
List<PaymentGateway> paymentGateways = [SELECT Id, PaymentGatewayName FROM PaymentGateway WHERE PaymentGatewayName = :paymentGatewayName];
System.debug('paymentGateways: ' + paymentGateways);
if(paymentGateways.isEmpty()){
    System.debug('Error obtaining payment gateway with name ' + paymentGatewayName);
}
String paymentGatewayId = paymentGateways[0].Id;
System.debug('paymentGatewayId: ' + paymentGatewayId);

// If a StoreIntegratedService already exists for Payment on the WebStore then update the Integration field with the paymentGatewayId
List<StoreIntegratedService> storeServices = [SELECT Id FROM StoreIntegratedService WHERE StoreId = :webStoreId AND ServiceProviderType ='Payment' ];
System.debug('storeServices: ' + storeServices);
if(storeServices.isEmpty()){
    StoreIntegratedService storeService = new StoreIntegratedService(
        StoreId = webStoreId,
        Integration = paymentGatewayId,
        ServiceProviderType ='Payment');
    insert storeService;
} else {
    StoreIntegratedService existingStoreService = storeServices[0];
    existingStoreService.Integration = paymentGatewayId;
    update existingStoreService;
}
 
Laster
Salesforce Help | Article