Now liveThe Skillselion MCP - thousands of ranked skills, loaded into your agent mid-task. No install.Get it →
skills-il avatar

Israeli Payment Orchestrator

  • 62 installs
  • 29 repo stars
  • Updated August 3, 2026
  • skills-il/tax-and-finance

Israeli Payment Orchestrator is an agent skill that encodes Israeli card gateway credit-type and installment rules for correct payment API payloads.

About

Israeli Payment Orchestrator is an agent skill for solo builders shipping checkout in Israel who must map Shva and acquirer-specific credit types, installment products, and gateway payloads correctly. It consolidates Hebrew-labeled credit semantics—immediate charge, Isracredit, merchant-financed installments, and interest-bearing credit—so you do not ship wrong `cred_type` values that fail certification or confuse reconciliation. Use it while integrating Tranzila-class APIs, ActiveMerchant adapters, or custom orchestration layers for SaaS and e-commerce. The skill is reference-heavy with sourced claim snippets, making it suitable for agent-assisted implementation and code review of payment flows before you hand off to accountants or PCI-aware deploy steps.

  • Documents Shva CreditType (סוג אשראי) codes 1–9 including credit (6) vs Isracredit (2) and club installments (9)
  • Separates regular installments (תשלומים), credit installments (קרדיט), and club (מועדון) merchant vs bank interest model
  • Grounds claims in gateway matrix references for Israeli orchestration and Tranzila-style parameters
  • Helps agents pick correct cred_type and installment caps (often up to 36 payments) per gateway rules

Israeli Payment Orchestrator by the numbers

  • 62 all-time installs (skills.sh)
  • Ranked #3,145 of 4,347 Backend & APIs skills by installs in the Skillselion catalog
  • Security screen: MEDIUM risk (skills.sh audit)
  • Data as of Aug 4, 2026 (Skillselion catalog sync)
npx skills add https://github.com/skills-il/tax-and-finance --skill israeli-payment-orchestrator

Add your badge

Show developers this skill is listed on Skillselion. Paste this into your README.

Listed on Skillselion
Installs62
repo stars29
Security audit2 / 3 scanners passed
Last updatedAugust 3, 2026
Repositoryskills-il/tax-and-finance

What it does

Implement Israeli card acquiring, installment semantics, and gateway-specific fields without mixing Shva CreditType codes or installment programs.

Who is it for?

Best when you're building Israeli B2C checkout, billing portals, or marketplace payouts that must speak local acquirer dialects.

Skip if: US/EU-only Stripe-only stacks with no Israeli acquirer, or pure tax filing without payment capture.

When should I use this skill?

Implementing or reviewing Israeli payment capture, installments, or gateway-specific credit type fields.

What you get

After the skill runs, orchestration code and agent-generated handlers use the right Shva-style codes, installment modes, and gateway matrix fields for Israeli checkout.

  • Correct cred_type and installment mapping in orchestration code
  • Gateway matrix-aligned parameter checklist for Israeli checkout

By the numbers

  • Shva CreditType enum distinguishes codes 1, 2, 3, 4, 5, 6, 8, and 9 for Israeli credit products
  • Maximum installments typically 36 on referenced Israeli gateway patterns

Files

SKILL.mdMarkdownGitHub ↗

Israeli Payment Orchestrator

Instructions

Step 1: Assess Payment Requirements

Ask the user about their payment needs:

RequirementHebrewDescriptionImpact on Gateway Choice
Installments (tashlumim)תשלומיםSplit payment into monthly installmentsNot all gateways support all installment types
Recurring billingחיוב חוזרSubscription / standing orderRequires token storage and Shva approval
Multi-currencyרב-מטבעיAccept NIS + foreign currenciesLimited gateway support for dual currency
Iframe / redirectדף סליקהHosted payment page vs embeddedAffects PCI scope
Bit / Apple Payביט / אפל פייAlternative payment methodsGateway-specific integrations
High volumeנפח גבוהOver 1,000 transactions/dayNeed SLA guarantees and fallback

Step 2: Compare Gateways

Use scripts/compare_gateways.py to generate a comparison matrix, or reference the table below:

GatewayAPI StyleInstallmentsRecurringHosted PageBit SupportTypical Fee
CardcomREST JSONFull (regular, credit, club)YesYes (iframe)No0.6-0.8%
TranzilaREST/Form POSTRegular, creditYesYes (redirect)No0.5-0.7%
PayMeREST JSONRegular, creditYesYes (iframe)Yes0.7-1.0%
Meshulammultipart/form-dataRegularYesYes (iframe + redirect)Yes0.6-0.9%
iCreditREST JSONRegular, creditYesYes (redirect)No0.5-0.8%
PelecardREST JSONRegular, credit, clubYesYes (iframe)No0.5-0.7%

Fee notes: Rates are indicative. Actual rates depend on business volume, industry, and negotiation.

Step 3: Design the Orchestration Layer

Build a unified payment abstraction:

# Unified payment interface pattern
class PaymentRequest:
    amount: float            # סכום - in agorot (NIS cents)
    currency: str            # מטבע - "ILS" default
    installments: int        # תשלומים - 1 = regular, 2-36 = installments
    installment_type: str    # סוג תשלומים - "regular", "credit", "club"
    card_token: str          # טוקן כרטיס - for recurring
    description: str         # תיאור עסקה
    customer_id: str         # מזהה לקוח
    idempotency_key: str     # מפתח אידמפוטנטי - prevent duplicates

class PaymentResult:
    success: bool
    gateway_used: str        # שער תשלום שנבחר
    transaction_id: str      # מזהה עסקה
    approval_number: str     # מספר אישור
    shva_reference: str      # מספר שב"א
    installment_details: dict

Step 4: Implement Gateway Routing

Define routing rules for selecting the optimal gateway:

RulePriorityLogicExample
Cost optimizationMediumRoute to cheapest gateway for transaction typeSmall payments to lowest-fee gateway
Feature matchHighRoute based on required featuresClub installments only to Cardcom/Pelecard
AvailabilityCriticalRoute away from failed/degraded gatewaysIf Tranzila is down, failover to Cardcom
Volume balancingLowDistribute load across gateways60/40 split between primary and secondary
Card typeHighSome gateways handle specific cards betterDiners Club routing

Routing logic:

def select_gateway(request: PaymentRequest, gateways: list) -> str:
    # 1. Filter by feature support (tashlumim type, Bit, etc.)
    eligible = [g for g in gateways if g.supports(request)]
    # 2. Remove unhealthy gateways
    healthy = [g for g in eligible if g.is_healthy()]
    # 3. Sort by cost for this transaction type
    ranked = sorted(healthy, key=lambda g: g.fee_for(request))
    # 4. Return best match (or raise if none available)
    return ranked[0] if ranked else raise NoGatewayAvailable()

Step 5: Handle Installments (Tashlumim)

Israeli installment types have specific Shva network rules. The numbers below are the Shva CreditType (סוג אשראי) values, a field distinct from the transaction type (סוג עסקה). The canonical CreditType enum is: 1=regular/immediate, 2=Isracredit/30+, 3=immediate debit, 4=club credit, 5=Leumi special, 6=credit (קרדיט), 8=installments (תשלומים), 9=club installments.

TypeHebrewCreditTypeHow It WorksWho Pays Interest
Regular installmentsתשלומים רגילים8Merchant gets full amount upfront, bank collects from customer monthlyCustomer (no interest by default)
Credit installmentsקרדיט6Customer pays bank in installments with interest, merchant gets full amountCustomer pays interest to bank
Club installmentsמועדון9Issuer-specific program (Isracard, CAL, Max); club credit is 4Varies by program
"Payments without interest"תשלומים ללא ריבית8Merchant subsidizes interest costMerchant absorbs cost

Implementation notes:

  • Maximum installments: typically 36, some gateways limit to 12 or 24
  • Minimum per-installment: Shva may enforce minimum amounts per installment
  • Installment approval: some installment counts require issuer pre-approval

Step 6: Implement Fallback and Retry Logic

Design resilient payment processing:

# Fallback strategy
GATEWAY_PRIORITY = ["cardcom", "tranzila", "payme"]

async def process_with_fallback(request: PaymentRequest) -> PaymentResult:
    last_error = None
    for gateway_name in GATEWAY_PRIORITY:
        gateway = get_gateway(gateway_name)
        if not gateway.is_healthy():
            continue  # דלג על שער לא זמין
        try:
            result = await gateway.charge(request)
            if result.success:
                return result
            # Declined by bank -- do NOT retry with another gateway
            if result.is_bank_decline():
                return result
        except GatewayTimeoutError:
            last_error = f"{gateway_name} timeout"
            continue  # נסה שער הבא
        except GatewayError as e:
            last_error = str(e)
            continue
    raise AllGatewaysFailedError(last_error)

Important: Never retry a bank decline (customer insufficient funds, stolen card, etc.) with a different gateway. Only retry on gateway technical errors.

Step 7: Ensure Regulatory Compliance

Comply with Bank of Israel and Shva regulations:

RegulationHebrewRequirementImpact
Transaction data retentionשמירת נתוני עסקאותTransaction data retention, reportingStore all transaction details 7 years
PCI DSSתקן PCICard data securityUse tokenization, never store full card numbers
Shva regulationsתקנות שב"אClearing and settlement rulesAdhere to clearing windows and dispute timelines
Consumer Protectionהגנת הצרכןRefund rights, clear pricingDisplay installment terms clearly
Anti-fraudמניעת הונאה3D Secure, velocity checksImplement 3DS2 for CNP transactions

Examples

Example 1: Multi-Gateway Setup

User says: "I need to accept payments with installments, with fallback if one gateway goes down" Actions: 1. Assess: Need installments (regular + credit) and high availability 2. Compare: Cardcom (primary, full installment support) + Tranzila (fallback) 3. Design: Unified PaymentRequest with installment_type field 4. Implement: Route installment payments to Cardcom, failover to Tranzila 5. Run python scripts/compare_gateways.py --features installments,recurring Result: Orchestration layer with primary/fallback routing and installment handling

Example 2: Gateway Migration

User says: "We use Tranzila but want to add PayMe for Bit payments" Actions: 1. Assess: Current Tranzila setup + need Bit support 2. Design: Add PayMe as secondary gateway for Bit-eligible transactions 3. Route: Bit payments to PayMe, card payments to Tranzila 4. Implement: Unified response mapping between both gateway formats Result: Dual-gateway setup with feature-based routing

Example 3: Cost Optimization

User says: "Which gateway is cheapest for our 500 daily transactions averaging 200 NIS?" Actions: 1. Calculate: Monthly volume = 500 30 200 = 3,000,000 NIS 2. Compare: Run python scripts/compare_gateways.py --volume 500 --avg-amount 200 3. Factor: Installment mix, chargeback rates, settlement timing 4. Recommend: Based on total cost of ownership including integration effort Result: Cost comparison with recommendation based on business profile

Example 4: Installment Configuration

User says: "Customer wants to pay 5,000 NIS in 10 interest-free installments" Actions: 1. Identify: Regular installments (tashlumim regilim), 10 payments of 500 NIS 2. Check: Gateway support for 10 installments (all major gateways support this) 3. Note: Merchant absorbs interest cost for "interest-free" installments 4. Calculate: Merchant cost = typically 1-3% of transaction for interest subsidy 5. Implement: Set installments=10, installment_type="regular" in PaymentRequest Result: Installment payment configured with cost breakdown for merchant

Bundled Resources

Scripts

  • scripts/compare_gateways.py -- Generates comparison matrix of Israeli payment gateways based on features, fees, and volume. Run: python scripts/compare_gateways.py --help

References

  • references/gateway-matrix.md -- Detailed feature comparison of Israeli payment gateways: API formats, installment support, recurring billing, hosted pages, settlement timelines, and fee structures. Consult when evaluating or switching gateways.

Reference Links

SourceURLWhat to Check
Cardcomhttps://www.cardcom.co.il/Current API surface, pricing, supported card types
Tranzila Documentationhttps://docs.tranzila.com/Form-encoded API parameters, supplier code (terminalname) flows
PayMe Developer Docshttps://www.payme.io/developersBearer-token REST JSON API, Bit/Apple Pay support
Meshulam (Grow) Referencehttps://grow-il.readme.io/reference/overviewProduction base = secure.meshulam.co.il (do NOT use sandbox.meshulam.co.il in prod)
iCredithttps://icredit.rivhit.co.il/Group private token + credentials auth scheme
Bank of Israel: Payment Systems Oversighthttps://www.boi.org.il/en/economic-roles/supervision-and-regulation/payment-systems-oversight/BOI oversight of Shva and controlled payment systems (banks + credit-card companies). Non-bank payment-service providers are regulated by the ISA under the Regulation of Payment Services and Payment Initiation Law 5783-2023

Gotchas

  • Each Israeli payment gateway in this skill (Cardcom, Tranzila, PayMe, Meshulam, iCredit, Pelecard) has a completely different API format: Cardcom uses JSON, Tranzila uses form-encoded key-value pairs, Meshulam uses multipart/form-data with a separate page-code parameter, and PayMe uses bearer-token JSON. Agents may apply one gateway's format to another.
  • Israeli payment processing requires Israeli business registration (osek murshe/patur). Agents may suggest setting up payment processing before verifying the business has proper registration with the Tax Authority.
  • PCI DSS compliance requirements in Israel follow the same international standard, but Israeli acquirers (Isracard, Visa CAL) may have additional local requirements. Agents may generate PCI-compliant code that misses Israeli acquirer-specific fields.
  • Bit (Israel's dominant mobile payment) refunds use a different API endpoint than credit card refunds on most gateways. Agents may use the credit card refund endpoint for Bit transactions.

Troubleshooting

Error: "Installment type not supported"

Cause: Requested installment type (credit/club) not available on selected gateway Solution: Check gateway capabilities in Step 2 table. Club installments only available on Cardcom and Pelecard. Route to appropriate gateway.

Error: "Shva clearing rejected"

Cause: Transaction violates Shva network rules (invalid installment count, amount below minimum) Solution: Verify installment count is within allowed range. Check minimum per-installment amount. Ensure transaction currency is ILS for domestic cards.

Error: "Gateway timeout on fallback"

Cause: All configured gateways are experiencing issues Solution: Implement circuit breaker pattern with health checks. Consider adding a third gateway. Monitor gateway status endpoints and alert on degradation.

Error: "Duplicate transaction detected"

Cause: Retry logic sent same payment to multiple gateways Solution: Always use idempotency keys. Check transaction status before retrying. Never retry bank declines -- only retry gateway technical errors.

Related skills

How it compares

Use alongside generic payment skills when you need Israel-specific cred_type truth tables, not a global Stripe wrapper.

FAQ

Who is israeli-payment-orchestrator for?

Developers and small teams implementing Israeli card payments, installments, and gateway-specific fields in web or mobile commerce backends.

When should I use israeli-payment-orchestrator?

Use it in Build → integrations while designing checkout APIs, mapping Tranzila/Shva parameters, or reviewing agent-generated payment code before staging certification.

Is israeli-payment-orchestrator safe to install?

Payment skills touch money movement—check the Security Audits panel on this page, never paste live API secrets into chats, and validate against your acquirer’s current PDF spec.

Backend & APIspaymentsecommerce

This week in AI coding

Five minutes, every Monday - the tools, releases and tactics for developers.

unsubscribe anytime.